自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

itisyang

——大道至简

  • 博客(27)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 ffmpeg源码精读2,视频编码

ffmpeg视频编码例子,解析主要流程。

2022-03-18 16:33:42 2464

原创 ffmpeg vs2017的一种编译方式

ffmpeg Windows vs2017编译,下载yasm,安装msys2,编译x264,编译zlib,编译fdk-aac

2022-03-04 14:55:53 3669 2

原创 ffmpeg源码精读2,视频解码

ffmpeg视频解码例子:https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/doc/examples/decode_video.c从main函数入手,核心接口:avcodec_find_decoder、av_parser_init、avcodec_alloc_context3、avcodec_open2、av_parser_parse2、avcodec_send_packet、avcodec_receive_frame程序流程:查找解码器初始化

2022-02-09 16:45:46 1185

原创 ffmpeg源码精读1,音视频处理概述

一个视频包含封装+视频+音频。简单来说,要处理一个视频分两步。第一步是解封装(demux)这一步能获取视频信息,如:编码器、帧率、pts起始值、时长、帧数、像素格式、音频采样格式、码率、宽高、色彩空间、色域、通道、采样率……获取到了这些视频信息后,就能依据这些信息对视频数据包进行对应的解码操作。第二步逐帧解码(decode)通过循环读取视频数据包,根据编码器类型进行解码,会得到图像采样数据(YUV)或音频采样数据(PCM),后续再进行渲染或其他处理(如添加数据、保存等)...

2022-01-25 13:46:29 2352

原创 ffmpeg example decode_video 升级方案

以 MPEG-1 为例的视频解码例子,不含封装,只解析裸流流程:视频数据包初始化,av_packet_alloc查找 MPEG-1 解码器, avcodec_find_decoder数据解析器初始化,av_parser_init解码结构初始化,avcodec_alloc_context3打开解码器,avcodec_open2打开视频文件,fopen解码视频帧初始化,av_frame_alloc循环读文件,fread解析数据包,av_parser_pars

2020-07-03 15:09:29 502 3

翻译 CFFI - ABI模式与API模式

CFFI可以在四种模式中使用:“ABI”和“API”级别,每种模式都有 in-line 或 out- line 准备(或编译)ABI模式从二进制级别访问库,而更快的API模式通过C编译器访问库在 in-line 模式中,每次导入Python代码时都会设置所有内容 在 out- line 模式中,有一个单独的准备步骤(可能还有C编译),它生成一个模块,主程序可以导入该模块简单例子...

2018-08-26 11:32:02 1494

翻译 CFFI - 简单使用

使用CFFI作为已经编译好的C库的接口。库譬如 piapprox.dll (Windows) 或 libpiapprox.so (Linux and others) 或者 libpiapprox.dylib (OS X)库里面有个函数 float pi_approx(int n)| 版权声明:itisyang,未经博主允许不得转载。https://blog.csdn.net/itisy...

2018-08-26 10:14:19 2449

翻译 CFFI - 简介

CFFI可以通过Python调用C的功能接口,基于一种类C声明,基本可以直接和任何C代码交互。(类C声明通常直接拷贝头文件即可)CFFI接口基于LuaJIT’s FFI,遵循下面几条原则:目标是在不学习第三种语言的情况下从Python调用C代码。现有的替代方法要求用户学习特定语言(Cython、SWIG)或API (ctypes)。CFFI设计只要求用户知道C和Python,尽量减少需要...

2018-08-07 22:36:56 5352

原创 pip缓慢或失败

原因:pip官方服务器访问慢公司内网过滤处理方法pypi换源,推荐阿里云镜像 pip国内的一些镜像阿里云 https://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣(douban) https://pypi.douban.com/si...

2018-08-05 14:52:30 3381

原创 树莓派教程-连接ssh

ssh默认连接:ip:22 pi raspberry最新的Raspbian 有可能默认关闭了ssh,同时串口可能没有数据输出(或乱码) 在没有屏幕的时候将很难连接树莓派。 解决办法: 在SD卡中烧录好Raspbian 系统之后,在内存卡的根目录创建一个名为ssh的空文件夹三种ssh连接树莓派的方法 1. 有路由器的情况 - 通过网线连接路由器,查看路由器下的设备...

2018-04-19 19:25:42 6714 1

原创 树莓派教程-命令行连接wifi

原文链接:https://blog.csdn.net/itisyang/article/details/79980517sudo iwlist wlan0 scan列出所有可连接wifisudo vi /etc/wpa_supplicant/wpa_supplicant.conf在文件的底部添加下面内容:network={ ssid="Your_wifi_ssif" ...

2018-04-17 20:44:45 17959 3

原创 树莓派教程-串口调试

原文链接:https://blog.csdn.net/itisyang/article/details/79968592最新的Raspbian串口连接没有数据输出使用ssh连接树莓派之后 - sudo raspi-config - Interfacing Options - Serial 打开串口登录树莓派正常情况串口四根线连接:VCC-5VGND-GNDTX...

2018-04-16 23:41:20 6759

原创 树莓派教程-搭建文件下载服务器二

原文链接:http://blog.csdn.net/itisyang/article/details/69802893 本文使用原生的nginx,相对于使用openresty少了编译过程,并且更加轻量化 - 树莓派3 - nginx安装nginxsudo apt-get install nginx配置sudo vim /etc/nginx/nginx.conf...

2017-04-09 10:57:44 3536 1

原创 树莓派教程-Samba服务器简易配置

原文链接:http://blog.csdn.net/itisyang/article/details/69574094samba安装sudo apt-get install sambasmb.conf配置,此处配置了两个目录分别是用户home目录和tftp目录[global] workgroup = WORKGROUP server string = Samba Ser...

2017-04-07 17:36:28 10718

原创 树莓派教程-搭建文件下载服务器一

原文链接:http://blog.csdn.net/itisyang/article/details/69569553树莓派3openresty下载openresty及编译下载 前往官网 https://openresty.org 下载最新的openresty安装依赖 sudo apt install libreadline-dev libncurses5-de...

2017-04-07 17:16:35 14203 5

原创 Python使用CFFI调用C动态库

原文链接 https://blog.csdn.net/itisyang/article/details/54426631初始化from cffi import FFIffi = FFI()加载C动态库lib_IOTCAPIs = ffi.dlopen("./tutk_lib/libIOTCAPIs.so")这种方法加载动态库若是多个库之间有交错调用,则会报错...

2017-01-14 14:37:30 16515

原创 超轻JSON解析器

超轻JSON解析器

2016-11-16 19:52:13 3118

原创 C语言获取命令行输出

C语言获取命令行输出

2016-11-16 19:35:35 15658

原创 APUE3学习笔记-第二章-UNIX标准及实现

——上善若水,大道至简环境:Ubuntu 1604 LTS编辑器:Vim编译器:gcc材料:UNIX环境高级编程第三版 Advanced Programming in the UNIX® Environment, Third Edition原文链接:http://blog.csdn.net/itisyang/article/details/52207303UNIX标准化ISO C此标

2016-08-14 23:28:36 3006

原创 APUE3学习笔记-第一章-UNIX基础知识

——上善若水,大道至简环境:Ubuntu 1604 LTS编辑器:Vim编译器:gcc材料:UNIX环境高级编程第三版 Advanced Programming in the UNIX® Environment, Third Edition原文链接:http://blog.csdn.net/itisyang/article/details/52139493UNIX体系结构登录在/et

2016-08-06 23:43:31 3665

原创 Qt for Android

总结一下Qt的Android配置:1.下载安装 Qt for Android2.下载安装 jdk3.下载安装android-sdk4.下载解压ndk5.下载解压ant6.打开Qt Creator,选择工具-选项-android,配置刚刚安装的几个文件路径7.以管理员权限运行android-sdk目录下的SDK Manager.exe,安装适用于自己的工具及api(一开始

2016-04-13 13:43:59 2991

原创 Linux获取进程pid

-/proc是系统中当前运行的所有进程的对应目录,以进程的 PID号为目录名,可用来获取进程信息。-/proc/pid/comm是对应pid号的进程名。

2016-03-16 19:08:24 4613

原创 标准输入、标准输出、标准出错:

标准输入、标准输出、标准出错

2016-01-26 16:54:40 3046

原创 extern 用法

在一个c文件A中定义了全局变量,在另一个c文件B中定义同名全局变量,对A和B分别编译,都可以正常通过编译,但是进行链接的时候,却出现了错误。在编译阶段,各个文件中定义的全局变量相互是不透明的,编译A时觉察不到B中也定义了该全局变量,同理B也一样。在链接阶段,要将各个文件的内容“合为一体”,因此,如果某些文件中定义的全局变量名相同的话,在这个时候就会出现重复定义的错误。exter

2015-12-30 16:35:03 3026

原创 C语言指针操作

int numbers[5] = {1,2,3,4,5};int *ptr1 = numbers;//numbers表示第一个元素的地址 int *ptr2 = &numbers[0];//把第一个元素的地址赋值给指针ptr2int *ptr3 = numbers + 0;   //指针运算,对 numbers 做加减运算,是对地址的运算,数组(或指针)初始化为

2015-10-08 15:45:34 3014

原创 socket机制详解

我另外一片博客中详细解析了Linux下tcp socket通信的过程,下面是我对socket机制更深一层的学习。服务器和客户端创建过程简单描述如下:服务器端  一、创建服务器套接字(CREATE)。  二、服务器套接字进行信息绑定(BIND),并开始监听连接(LISTEN)。  三、接受来自客户端的连接请求(ACCEPT),并创建接收进程。  四、开始数据传输(

2015-09-08 21:58:28 3299

原创 Linux TCP/IP通讯建立

服务器建立:采用了多线程方式,可连接多个客户端,每连接一个客户端就创建一个输入线程和一个接受线程,使得输入和接收互不干扰

2015-09-04 15:04:09 1620

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除