打算记录两个最简单的FFmpeg进行内存读写的例子。之前的所有有关FFmpeg的例子都是对文件进行操作的。例如《最简单的基于FFmpeg+SDL的视频播放器》播放的是一个视频的文件。而《最简单的基于FFmpeg的转码器》也是将一个视频文件转换为另一个视频文件。《最简单的基于FFmpeg的视频编码器(YUV编码为H.264)》也是最后编码得到一个H.264视频文件。实际上,并不是所有视频的编码,解码...
分类:
其他好文 时间:
2014-10-05 13:29:28
阅读次数:
189
本文介绍一个最简单的基于FFMPEG的视频编码器。该编码器实现了YUV420P的像素数据编码为H.264的压缩编码数据。编码器代码十分简单,可是每一行代码都非常重要,适合好好研究一下。弄清楚了本代码也就基本弄清楚了FFMPEG的编码流程。眼下我尽管已经调通了程序,可是还是有些地方没有全然搞明确,须要...
分类:
其他好文 时间:
2014-10-04 16:47:36
阅读次数:
625
前一阵子做过一个基于FFmpeg的视频编码器的例子:最简单的基于FFMPEG的视频编码器(YUV编码为H.264)在该例子中,可以将YUV像素数据(YUV420P)编码为H.264码流。因为如今FFmpeg已经实现了对libx265的支持,因此对上述编码H.264的例子进行了升级,使之变成编码H.265(HEVC)的例子。比较早的FFmpeg的类库(大约几个月以前的版本,我这里编译时间是2014....
分类:
其他好文 时间:
2014-10-04 15:41:25
阅读次数:
594
一、什么是视频格式?视频格式是一种封装格式,就是把编码后的比特流进行封装,不同的视频格式封装方法不同。目前视频都是由音频流+视频流组成。格式只是封装容器,例如rmvb,mkv,MP4,mpg,ts等等。常见的视频流有MPEG2,MPEG4,H264,VC1等等,MPEG2是比较老式的视频编码,压缩率...
分类:
其他好文 时间:
2014-09-30 16:40:59
阅读次数:
743
最近忙于编译x264开源框架进行视频编码,百度了很多方法没有实现。很多方法都过时了。根本不能成功。因为在xcode5以后,编译器不在默认为gcc,而是Apple自带的clang编译器。本人试了很多方法。终于在Github找了一个脚步。很简单大家只要按操作就可以编译lib264.a文件。并且在i386...
分类:
其他好文 时间:
2014-09-23 01:13:23
阅读次数:
247
FFmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、DivX、MPEG4、AC3、DV、FLV等40多种编码,AVI、MPEG、OGG、Matroska、ASF等9...
分类:
其他好文 时间:
2014-09-23 00:53:53
阅读次数:
364
1. H.264
H.264亦称为A
2. 结构...
分类:
其他好文 时间:
2014-09-22 20:34:53
阅读次数:
338
简介HTML5的标签已经被目前大多数主流浏览器所支持,包括还未正式发布的IE9也声明将支持标签,利用浏览器原生特性嵌入视频有很多好处,所以很多开发者想尽快用上,但是真正使用前还有些问题要考虑,尤其是 Opera/Firefox 和IE/Safari浏览器所支持的视频编码不同的问题,Google几个月...
分类:
Web程序 时间:
2014-09-10 17:28:40
阅读次数:
345
简介HTML5的标签已经被目前大多数主流浏览器所支持,包括还未正式发布的IE9也声明将支持标签,利用浏览器原生特性嵌入视频有很多好处,所以很多开发者想尽快用上,但是真正使用前还有些问题要考虑,尤其是 Opera/Firefox 和IE/Safari浏览器所支持的视频编码不同的问题,Google几个月...
分类:
Web程序 时间:
2014-09-04 18:47:49
阅读次数:
273
上篇文章简单翻译了MSU实验室做的X264的Option(即编码选项,后文称其英文名)分析报告《x264 Codec Strong and Weak Points》的前面部分。前面部分部分比较基础,而其后的内容相对来说要复杂许多。本文继续上篇文章的内容,简单记录接下来的内容。
前文通过“彩云图”的方法分析了X264的Preset。“彩云图”这种方式的优点是一目了然,可以清晰地看出各种Option取不同的值对视频的质量和编码速度的影响。但“彩云图”这种分析是有局限性的。关键在于它对X264的Option只能定...
分类:
其他好文 时间:
2014-09-03 11:15:26
阅读次数:
308