ffmpeg+x264推送high422 10bit码流

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ffmpeg+x264推送high422 10bit码流相关的知识,希望对你有一定的参考价值。

一、目的

推送一条rtmp流,视频码流采用h264 high422 10bit编码

二、环境

1、linux系统:Red Hat Enterprise Linux Server release 5.8

2、ffmpeg:3.1.4

3、x264:git下来的最新代码(2016-10-21)

三、编译x264+ffmpeg

1、编译x264

./configure --enable_static --bit-depth=10
make
make install

默认安装库和头文件到/usr/local/下面

2、编译ffmpeg

./configure --enable-static --enable-libx264 --enable-gpl
make -j8

四、运行

./ffmpeg -i rtmp://private-host/live/src -c:v libx264 -b:v 1000k -pix_fmt yuv422p10le -s 1920x1080 -x264-params profile=high422:input-depth=10:input-csp=i422:output-csp=i422 -c:a copy -f flv rtmp://private-host/live/dst

1、-pix_fmt=yuv422p10le 表示输入x264编码器的是yuv422p10le格式的yuv序列

2、yuv422p10le 表示yuv格式是平面422格式,每个分量像素用10bit表示(存储在16bit中),每个像素2个字节以小端模式存储

以上是关于ffmpeg+x264推送high422 10bit码流的主要内容,如果未能解决你的问题,请参考以下文章

图解YUV444、YUV422、YUV420

ffmpeg推送rtsp码流到rtmp服务器

FFmpeg查看媒体文件信息

linux 编译ffmpeg 支持x264, x265

FFmpeg基础知识之————H264编码profile & level控制

Windows下 ffmpeg+X264 编译,解决“libx264 not found”问题