Opened 5 years ago

Closed 5 years ago

#4074 closed defect (fixed)

option canvas_size has no effect on dvb_subtitles

Reported by: malakudi Owned by:
Priority: important Component: ffmpeg
Version: git-master Keywords: dvbsub regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
After commit http://git.videolan.org/?p=ffmpeg.git;a=commit;h=921d5ae3bcff07acb88d2e2767047c6b942c31bc , option -canvas_size has no effect on the rendering of dvb_subtitles in mpeg-ts files.
How to reproduce:

ffmpeg -canvas_size 720x576  -f mpegts -i 'udp:127.0.0.1:5550?fifo_size=160000&buffer_size=2097152&overrun_nonfatal=1' -filter_complex '[#0x102]scale=1280:720:flags=bicublin[sub];[#0x100]scale=1280:720:flags=bicublin[video];[video][sub]overlay[v]' -map [v] -map '#0x101' -f null nul

ffmpeg version 2.4.2 - also tried with 2.4.3

ffmpeg-2.4.2 -canvas_size 720x576 -f mpegts -i 'udp:127.0.0.1:5550?fifo_size=160000&buffer_size=2097152&overrun_nonfatal=1' -filter_complex '[#0x102]scale=1280:720:flags=bicublin[sub];[#0x100]scale=1280:720:flags=bicublin[video];[video][sub]overlay[v]' -map [v] -map '#0x101' -f null nul
ffmpeg version 2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
  built on Oct 21 2014 11:32:09 with gcc 4.8 (Debian 4.8.3-11)
  configuration: --prefix=/usr/src/ffmpeg/ffmpeg_build --extra-cflags=-I/usr/src/ffmpeg/ffmpeg_build/include --extra-ldflags=-L/usr/src/ffmpeg/ffmpeg_build/lib --bindir=/usr/src/ffmpeg/bin --extra-libs=-static --enable-gpl --enable-version3 --enable-static --disable-shared --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-libx264 --enable-libopenjpeg --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-gray --enable-libtheora --enable-libopus --enable-fontconfig --enable-libass --enable-libfaac --enable-libfdk-aac --enable-libzvbi --enable-nonfree --disable-ffserver --cc=gcc-4.8
  libavutil      54.  7.100 / 54.  7.100
  libavcodec     56.  1.100 / 56.  1.100
  libavformat    56.  4.101 / 56.  4.101
  libavdevice    56.  0.100 / 56.  0.100
  libavfilter     5.  1.100 /  5.  1.100
  libswscale      3.  0.100 /  3.  0.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  0.100 / 53.  0.100
Input #0, mpegts, from 'udp:127.0.0.1:5550?fifo_size=160000&buffer_size=2097152&overrun_nonfatal=1':
  Duration: N/A, start: 18047.828667, bitrate: 185 kb/s
  Program 2011
    Metadata:
      service_name    : Test01
      service_provider: Test
    Stream #0:0[0x100]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x101](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 185 kb/s
    Stream #0:2[0x102](eng): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006), 720x576
[mpegts @ 0x2829880] sub2video: using 1920x1080 canvas
Output #0, null, to 'nul':
  Metadata:
    encoder         : Lavf56.4.101
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 50 fps, 50 tbn, 50 tbc (default)
    Metadata:
      encoder         : Lavc56.1.100 rawvideo
    Stream #0:1(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
    Metadata:
      encoder         : Lavc56.1.100 pcm_s16le
Stream mapping:
  Stream #0:0 (h264) -> yadif (graph 0)
  Stream #0:2 (dvbsub) -> scale (graph 0)
  overlay (graph 0) -> Stream #0:0 (rawvideo)
  Stream #0:1 -> #0:1 (mp2 (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help

As can be seen in the log, -canvas_size sets dvb_subtitle resolution correctly but sub2video still uses video resolution (1920*1080) to render subtitles.

Change History (5)

comment:1 Changed 5 years ago by cehoyos

  • Keywords dvbsub regression added; canvas_size sub2video dvb_subtitle removed
  • Priority changed from normal to important
  • Version changed from 2.4.3 to git-master

comment:2 Changed 5 years ago by cehoyos

For future tickets: Please always test current FFmpeg git head before reporting issues.

comment:3 Changed 5 years ago by cehoyos

  • Reproduced by developer set

Could you upload a few seconds (showing an actual subtitle) of your input sample?
One possibility to save the stream is using mplayer -dumpstream.

comment:4 Changed 5 years ago by malakudi

Yes I can, where can I upload it? I made a 10MB ts file.

edit: I uploaded to upload.ffmpeg.org, filename is mpegts_with_dvbsubs.ts

Last edited 5 years ago by malakudi (previous) (diff)

comment:5 Changed 5 years ago by michael

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.