ffmpeg
书弋江山
和光同尘,与时舒卷;戢鳞潜翼,思属风云,漆黑如夜,孑然踽行
展开
-
FFmpeg 解码
//注册所支持的所有的文件(容器)格式及其对应的CODEC av_register_all() /* av_register_all该函数注册支持的所有的文件格式(容器)及其对应的CODEC,只需要调用一次,故一般放在main函数中。也可以注册某个特定的容器格式,但通常来说不需要这么做 */ av_register_all(); AVFormatContex原创 2017-11-06 14:55:59 · 466 阅读 · 0 评论 -
ffmpeg 对图像数据格式以及图片缩放
利用ffmpeg进行图像数据格式的转换以及图片的缩放应用中,主要用到了swscale.h文件中的三个函数,分别是: struct SwsContext *sws_getContext(int srcW, int srcH, enum AVPixelFormat srcFormat, int dstW, int dstH,转载 2017-11-08 15:37:43 · 1997 阅读 · 0 评论 -
VistualStudio2017配置ffmpeg库
使用vs配置ffmpeg库,终于搞定了,中间一个小插曲,突然报错无法打开exe Link 1168,实话第一次使用vs 之前mac 上编程c++ 主要是使用clion 和 xcode,这个错误莫名奇妙,将文件从c盘移动到D盘,就好了,不想编译ffmpeg 源码x86版本了,之前编译了android和IOS 的ARM版本,那是因为ffmpeg官网实在没现成的,而且说实话,windows 配置编译环境原创 2017-12-16 01:07:29 · 2387 阅读 · 1 评论 -
IOS 硬件GPU解码
导入框架和头文件#import <VideoToolbox/VideoToolbox.h>{//声明的全局变量 NSData *spsData ; NSData *ppsData; uint8_t pFrameData[BUFFER_SIZE]; CMVideoFormatDescriptionRef videoFormatDescription ; VTDec原创 2017-12-05 18:57:45 · 927 阅读 · 0 评论 -
ffmpeg YUV420P视频帧旋转
//逆时针旋转90 度-(void)frame_rotate_90WithSorrce:(AVFrame *)src des:(AVFrame*)des{ int n = 0; int hw = src->width>>1; int hh = src->height>>1; int size = src->width * src->height; int转载 2017-12-05 18:47:02 · 1794 阅读 · 0 评论 -
FFmpeg 解码视频流实现yuv播放
参考文章雷神文章 FFMPEG–裸码流解码AVCodec 最简单的基于FFmpeg的libswscale的示例(YUV转RGB) 初始化解码器相关变量-(void)initDecoder{ if (decodeFrame) { return; } int codec_id = AV_CODEC_ID_H264; pCodec = avcodec_原创 2017-12-01 18:18:03 · 1944 阅读 · 0 评论 -
Tutk P2P的原理和常见的实现方式
最近在做tutk P2p相关公司的IP摄像头项目,然后看了一下实现原理,然后改一了一篇文章来记录一下,天下文章一大抄,天下代码也是一样的,下面就是TUTK 的Demo tutk实现的Demo1.简介 当今互联网到处存在着一些中间件(MIddleBoxes),如NAT和防火墙,导致两个(不在同一内网)中的客户端无法直接通信。这些问题即便是到了IPV6时代也会存在,因为即使不需要NAT,但还有原创 2017-12-12 09:25:11 · 22386 阅读 · 1 评论 -
ffmpeg 编解码流程
去年最流行的非视频直播莫属,出现了几百家的直播平台,毕竟自己也是在直播平台做开发的,然后就写一篇关于直播的文章。这里只说流程,具体的实现就不说了,应付面试应该还是可以的。 先上一张简单的流程图: 上面这张图就是视频直播的流程图,想要开发一款自己的视频直播软件不麻烦,现在有好多直播sdk,比如腾讯视频云,金山视频云,易视云,7牛视频云,等等,使用它们的sdk能很快的...转载 2018-01-19 16:28:15 · 1092 阅读 · 0 评论