OSDN Git Service

Inform the user if a pix_fmt != yuv420p was chosen for x264 encoding.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Mon, 18 Mar 2013 23:43:01 +0000 (00:43 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Tue, 19 Mar 2013 00:16:37 +0000 (01:16 +0100)
ffmpeg.c

index 17a7eab..67e2de1 100644 (file)
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2341,6 +2341,13 @@ static int transcode_init(void)
                     ost->frame_aspect_ratio ? // overridden by the -aspect cli option
                     av_d2q(ost->frame_aspect_ratio * codec->height/codec->width, 255) :
                     ost->filter->filter->inputs[0]->sample_aspect_ratio;
+                if (!strncmp(ost->enc->name, "libx264", 7) &&
+                    codec->pix_fmt == AV_PIX_FMT_NONE &&
+                    ost->filter->filter->inputs[0]->format != AV_PIX_FMT_YUV420P)
+                    av_log(NULL, AV_LOG_INFO,
+                           "No pixel format specified, %s for H.264 encoding chosen.\n"
+                           "Use -pix_fmt yuv420p for compatibility with outdated media players.\n",
+                           av_get_pix_fmt_name(ost->filter->filter->inputs[0]->format));
                 codec->pix_fmt = ost->filter->filter->inputs[0]->format;
 
                 if (!icodec ||