Opened 7 years ago

Closed 7 years ago

#3750 closed defect (fixed)

Transcoding to mpeg2video when scaling produces incorrect aspect ratio with WMP

Reported by: Carl Eugen Hoyos Owned by:
Priority: important Component: avfilter
Version: git-master Keywords: regression
Cc: lists.davep@gmail.com Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: yes

Description

http://thread.gmane.org/gmane.comp.video.ffmpeg.user/52608

A user provided a sample that is played in 16:9 by ffplay (and vlc and MPlayer).
When transcoded with the following command line, the output file is played in 2.37:1 by WMP since 66f4891 if the scaler was used.

$ ffmpeg -i FVP241-4sec_cut.mov -vf scale=1920x1080 -qscale 2 -mbd 2 -t 0.83 out.ts
ffmpeg version N-64325-g9efa7f8 Copyright (c) 2000-2014 the FFmpeg developers
  built on Jun 30 2014 22:23:02 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      52. 90.101 / 52. 90.101
  libavcodec     55. 68.100 / 55. 68.100
  libavformat    55. 44.100 / 55. 44.100
  libavdevice    55. 13.101 / 55. 13.101
  libavfilter     4.  9.100 /  4.  9.100
  libswscale      2.  6.100 /  2.  6.100
  libswresample   0. 19.100 /  0. 19.100
  libpostproc    52.  3.100 / 52.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'FVP241-4sec_cut.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 512
    compatible_brands: qt
    encoder         : Lavf55.44.100
  Duration: 00:00:04.04, start: 0.000000, bitrate: 5071 kb/s
    Stream #0:0(eng): Video: mpeg2video (Main) (hdv2 / 0x32766468), yuv420p(tv, bt709), 1440x1080 [SAR 4:3 DAR 16:9], 23992 kb/s, 29.97 fps, 29.97 tbr, 11988 tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : HDV 1080i60
      timecode        : 01:00:00;00
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default)
    Metadata:
      handler_name    : DataHandler
    Stream #0:2(eng): Data: none (tmcd / 0x64636D74), 0 kb/s
    Metadata:
      handler_name    : DataHandler
      timecode        : 01:00:00;00
Please use -q:a or -q:v, -qscale is ambiguous
[mpegts @ 0x3086f00] Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated. Set AVStream.time_base instead.
    Last message repeated 1 times
Output #0, mpegts, to 'out.ts':
  Metadata:
    major_brand     : qt
    minor_version   : 512
    compatible_brands: qt
    encoder         : Lavf55.44.100
    Stream #0:0(eng): Video: mpeg2video, yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 fps, 90k tbn, 29.97 tbc (default)
    Metadata:
      handler_name    : DataHandler
      timecode        : 01:00:00;00
      encoder         : Lavc55.68.100 mpeg2video
    Stream #0:1(eng): Audio: mp2, 48000 Hz, stereo, s16, 384 kb/s (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc55.68.100 mp2
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> mpeg2video (native))
  Stream #0:1 -> #0:1 (pcm_s16le (native) -> mp2 (native))
Press [q] to stop, [?] for help
frame=   25 fps=0.0 q=2.0 Lsize=    2266kB time=00:00:00.82 bitrate=22363.1kbits/s
video:2057kB audio:39kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 8.081009%

The output file plays correctly with WMP if no scaling gets applied.

Attachments (1)

FVP241-4sec_cut.mov (2.4 MB ) - added by Carl Eugen Hoyos 7 years ago.

Change History (4)

by Carl Eugen Hoyos, 7 years ago

Attachment: FVP241-4sec_cut.mov added

comment:1 by Dave P., 7 years ago

Cc: lists.davep@gmail.com added

comment:2 by Carl Eugen Hoyos, 7 years ago

Analyzed by developer: set
Component: undeterminedavfilter
Reproduced by developer: set
Status: newopen

Marton was able to analyze the issue, the cause is that various filters (including the scale filter) can change the resolution but do not update the AVPanScan information.

comment:3 by Carl Eugen Hoyos, 7 years ago

Resolution: fixed
Status: openclosed

Fixed in 788cf6f0

Note: See TracTickets for help on using tickets.