gxf muxer only accepts pal or ntsc resolutions currently, so fail if resolution is...
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Wed, 1 Sep 2010 00:04:47 +0000 (00:04 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Wed, 1 Sep 2010 00:04:47 +0000 (00:04 +0000)
Originally committed as revision 25014 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/gxfenc.c

index b20a842..55bba21 100644 (file)
@@ -678,12 +678,16 @@ static int gxf_write_header(AVFormatContext *s)
                 sc->sample_rate = 60;
                 gxf->flags |= 0x00000080;
                 gxf->time_base = (AVRational){ 1001, 60000 };
-            } else { /* assume PAL */
+            } else if (st->codec->height == 576 || st->codec->height == 608) { /* PAL or PAL+VBI */
                 sc->frame_rate_index = 6;
                 sc->media_type++;
                 sc->sample_rate = 50;
                 gxf->flags |= 0x00000040;
                 gxf->time_base = (AVRational){ 1, 50 };
+            } else {
+                av_log(s, AV_LOG_ERROR, "unsupported video resolution, "
+                       "gxf muxer only accepts PAL or NTSC resolutions currently\n");
+                return -1;
             }
             av_set_pts_info(st, 64, gxf->time_base.num, gxf->time_base.den);
             if (gxf_find_lines_index(st) < 0)