FFmpeg文章目录

2019-12-17 11:58:55

参考地址 这是一个介绍很好的ffmpeg简述号

这个简述号,大家可以关注,可以看下,他写的几个ffmpeg有图有真相,还是比较好懂的。

Upate to 20190331

专题

seek

ffmpeg # How to seek in mp4/mkv/ts/flv
ffmpeg # flags &= ~AVSEEK_FLAG_BACKWARD
ffmpeg # AVSEEK_FLAG

concat

ffmpeg # concat 连接两个视频
ffmpeg # -f concat -i mylist.txt
ffmpeg # concat详解+音画同步策略

截图

ffmpeg # 截图

文字

ffmpeg # 为视频添加文字drawtext
ffmpeg # drawtext 进阶
ffmpeg # macOS 添加drawtext支持

音频

ffmpeg # 音频那些事

画中画

ffmpeg # 画中画中的视频进行循环

time_base

ffmpeg # 各种封装格式的time_base
ffmpeg # time_base转换函数av_rescale_q
ffmpeg # 几个关键结构体的dts和pts的time_base

转封装

ffmpeg # 转封装命令行
ffmpeg # -c copy 拷贝所有的流
ffmpeg # 转封装 函数
ffmpeg # 怎么控制只是转封装而不需要转码
ffmpeg # h264_mp4toannexb

编码 转码

ffmpeg # 转码 process_input() & reap_filters()
ffmpeg编码后的.264数据长啥样
使用ffmpeg进行H264编码如何不包含B帧
Transcoding with ffmpeg
ffmpeg # CUDA/CUVID/NVDEC # 完全硬件转码 vs 部分硬件转码
ffmpeg # 使用x264/x265参数
ffmpeg # -strict -2

常用命令和使用技巧

ffmpeg 命令行 常用示例
ffmpeg # Linux # 利用2>&1将输出结果到文件
ffmpeg # 将.texi格式的文档转换为html
ffmpeg # 利用loglevel控制打印日志的信息
ffmpeg 常用命令 02

重要结构体

ffmpeg核心结构体AVPacket/AVFrame
ffmpeg # AVRational
ffmpeg # AV_TIME_BASE units
ffmpeg # 判断AVFrame是否为关键帧
ffmpeg # 判断AVPacket是否为关键帧
ffmpeg 中 结构体初始化 的那些花样

重要函数

ffmpeg # avformat_find_stream_info
ffmpeg # avcodec_send_xxx & avcodec_receive_xxx

常用参数

ffmpeg # -ss
ffmpeg # -fflags +genpts
ffmpeg # 视频同步参数 -vsync & -aresample
ffmpeg # probesize & analyzeduration
ffmepg # pix_fmts & out_range
ffmpeg # copyts

filters

ffmpeg中的scale和crop参数
ffmpeg将tile拼成完整的视频
ffmepg中的filter处理的是decoded frames
ffmpeg中filter的3个层次
ffmpeg # 为视频添加文字drawtext

编译

linux下Intel-FFmpeg-Plugin遇到libmfx not found using pkg-config问题
centos下编译x265
linux # x264编译
build ffmpeg with CUDA
mac # eclipse 编译调试ffmpeg
ffmpeg # /lib64/libva.so.1: version `VA_API_0.34.0' not found
ffmpeg # centos # build with libfdk_aac
ffmpeg # macOS 调试x264

流媒体协议

Mac下安装支持rtmp协议的ffmpeg



作者:FlyingPenguin
链接:https://www.jianshu.com/p/8280760c15e4
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


  • 2021-01-21 13:52:36

    node.js使用Nodemailer发送邮件

    常常看到一些网站有邮箱获取验证码验证注册或者修改密码等,今天也来了解一下在nodejs + express怎么发送电子邮件。使用模块Nodemailer。这里以qq邮箱举例子。

  • 2021-01-21 13:55:53

    Mongodb字段更新$unset操作符

    当使用$操作符匹配任何数组元素,$unset替换指定的元素为null而不是删除掉指定的元素,此行为保持数组大小和位置一直;

  • 2021-01-22 08:30:02

    Android IO简化之Okio库

    如果之前有使用过Okhttp,那么你一定知道底层的IO读取是由square公司开发的Okio库。它补充了Java.io和java.nio的不足,以便能够更加方便,快速的访问、存储和处理你的数据。而在一般的开发中,我们也可以使用Okio来做IO读写,非常方便深得我心

  • 2021-01-22 21:56:48

    emcc生成wasm,wast,bc文件的方法

    Emscripten实现把C/C++文件转成wasm,wast(wasm的可读形式),llvm字节码(bc格式),ll格式(llvm字节码的可读形式)的步骤。

  • 2021-01-22 21:59:34

    emcc编译与部分重要参数选取

    C/C++代码通过emcc编译为字节码,然后根据不同的目标编译为asm.js或wasm。emcc和gcc编译选项类似,例如-s OPTIONS=VALUE、-O等。另外为了适应Web环境,emcc增加了一些特有的选项,如–pre-js 、–post-js 等。

  • 2021-01-22 22:01:19

    Emscripten Compiler Frontend (emcc)

    The Emscripten Compiler Frontend (emcc) is used to call the Emscripten compiler from the command line. It is effectively a drop-in replacement for a standard compiler like gcc or clang.

  • 2021-01-22 22:21:41

    emcc编译命令介绍

    这个输入文件file,既可以是clang可以编译的C/C++语言,也可以是二进制形式的llvm bitcode或者人类可读形式的llvm assembly文件。