Opened 11 years ago

Closed 11 years ago

#2454 closed defect (fixed)

h264 frame-mt performance regression

Reported by: Hendrik Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: h264 regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

The performance of the H264 decoder in frame multi-threading mode on certain interlaced files has gone down significantly since 644092c8e8892f4f7e44a01b83487b398cafeb5a.

Latest git-head produces ~40 fps on my box, reverting the mentioned commit brings me back to ~55 fps.

With git-head:

% ffmpeg -i E:\Downloads\Taylor.Swift.BRIT.Awards.2013.1080i50.H264.422.44Mbps.ts -f null -

ffmpeg version N-51697-g1043cb8 Copyright (c) 2000-2013 the FFmpeg developers
  built on Apr  9 2013 22:28:47 with gcc 4.7.2 (GCC)
  configuration: --enable-gpl
  libavutil      52. 25.100 / 52. 25.100
  libavcodec     55.  2.100 / 55.  2.100
  libavformat    55.  1.100 / 55.  1.100
  libavdevice    55.  0.100 / 55.  0.100
  libavfilter     3. 49.101 /  3. 49.101
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
Input #0, mpegts, from 'E:\Downloads\Taylor.Swift.BRIT.Awards.2013.1080i50.H264.422.44Mbps.ts':
  Duration: 00:00:17.13, start: 27251.076611, bitrate: 43898 kb/s
  Program 1
    Stream #0:0[0x134]: Video: h264 (High 4:2:2) ([27][0][0][0] / 0x001B), yuv422p, 1920x1080 [SAR 1:1 DAR 16:9], 25 fps
, 50 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x100](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf55.1.100
    Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 90k tbn,
25 tbc
    Stream #0:1(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (h264 -> rawvideo)
  Stream #0:1 -> #0:1 (mp2 -> pcm_s16le)
Press [q] to stop, [?] for help
[null @ 05E589C0] Encoder did not produce proper pts, making some up.
PES packet size mismatch0 size=N/A time=00:00:16.68 bitrate=N/A dup=12 drop=0
[mp2 @ 032B84C0] incomplete frame
Error while decoding stream #0:1: Invalid data found when processing input
[h264 @ 05D1B5A0] error while decoding MB 100 8, bytestream (td)
frame=  425 fps= 39 q=0.0 Lsize=N/A time=00:00:17.00 bitrate=N/A dup=12 drop=0
video:27kB audio:3096kB subtitle:0 global headers:0kB muxing overhead -100.000688%

And with 644092c reverted, just the relevant line for breviety:

frame=  425 fps= 54 q=0.0 Lsize=N/A time=00:00:17.00 bitrate=N/A dup=12 drop=0

A change from 39 to 54 fps in this run.

The sample used in this test can be found here:
http://files.1f0.de/samples/Taylor.Swift.BRIT.Awards.2013.1080i50.H264.422.44Mbps.ts

Change History (2)

comment:1 by Carl Eugen Hoyos, 11 years ago

Keywords: regression added
Priority: normalimportant

comment:2 by Michael Niedermayer, 11 years ago

Reproduced by developer: set
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.