[FFmpeg-user] Converting 4:2:2 pro-res to 4:2:0 for AVC encoding

Moritz Barsnick barsnick at gmx.net
Wed Apr 5 12:26:32 EEST 2017


On Wed, Apr 05, 2017 at 14:21:44 +0530, Pradeep Ramachandran wrote:
> Hi all,

Your e-mail is very confusing (to me), it's not quite clear what you're
trying to achieve.

> Subject: [FFmpeg-user] Converting 4:2:2 pro-res to 4:2:0 for AVC encoding
> I would like to encode these to 10-bit 4:2:0 using x265.

x265 does not encode AVC, it encodes HEVC. x264 is for AVC.

> Since mov doesn't support 4:2:0

It doesn't? Or it does't support yuv420p10? And if it doesn't, why are
you using mov at all, if your target is to encode yuv420p10?

> I am not able to convert these prior to encoding. The other option
> is to convert to 4:2:0 and pipe to x265 binary using mpeg4yuv pipe, but
> that would mean inter-process communication between ffmpeg and x265.

Why would you pipe to the binary, instead of using ffmpeg's integration
of libx265? The only reasons I can think of is:
- your ffmpeg isn't compiled with libx265;
- your ffmpeg's libx265 doesn't support 10-bit video (I can only guess,
  because mine from Zeranoe doesn't seem to).

> Is there any way that I can convert from yuv 4:2:2 10-bit to yuv 4:2:0
> 10-bit and pass to libx265 on the fly without going through inter-process
> communication?

Normally, you would simply use:
$ ffmpeg -i inputfile -pix_fmt yuv420p10 -c:v libx265 -c:a copy outputfile

ffmpeg will then tell you whether libx265 cannot handle yuv420p10.


More information about the ffmpeg-user mailing list