Opened 4 years ago

Closed 4 years ago

#4596 closed defect (fixed)

Blocks when decoding H.264 containing reference B-Frames encoded by Elemental

Reported by: dprestegard 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

When using recent Elemental software, enabling reference B-Frames results in block artifacts when decoding with ffplay and other software decoders using libavcodec like VLC.

Hardware decoders do not exhibit the issue, and neither does Elecard StreamEye?.

elemental_bref_blocking.mp4 uploaded to the FTP for review.

Attachments (1)

test_bref-short.mp4 (2.4 MB) - added by heleppkes 4 years ago.
Slightly shortened version of the test file

Change History (7)

comment:1 Changed 4 years ago by cehoyos

  • Keywords h264 added

Please upload a sample that actually works with your hardware decoder: I believe the sample you uploaded cannot be played with any software:

$ ls -l
total 3688
-rw-r--r-- 1 cehoyos users 3775669 Jun  6 00:46 elemental_bref_blocking.mp4
$ md5sum elemental_bref_blocking.mp4
1220f62e9c184d3583bbb7ae2c1405ed  elemental_bref_blocking.mp4

comment:2 Changed 4 years ago by dprestegard

Huh, that's odd. Not sure what happened.

test_bref_elemental.mp4

md5: f569d07736fde456a8c98db0fc58a96a

comment:3 Changed 4 years ago by cehoyos

Could you upload again?
Or upload to http://www.datafilehost.com/

Changed 4 years ago by heleppkes

Slightly shortened version of the test file

comment:4 Changed 4 years ago by cehoyos

  • Keywords regression added
  • Priority changed from normal to important
  • Reproduced by developer set
  • Status changed from new to open
  • Version changed from unspecified to git-master

For future tickets: Please always provide a sample command that allows to reproduce the issue together with the complete, uncut console output.

Only reproducible on x86-32 and x86-64, not reproducible with -cpuflags -ssse3, regression since 98fe09df

$ ffmpeg -i test_bref-short.mp4 -qscale 2 out.avi
ffmpeg version N-72694-g272f87f Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      54. 27.100 / 54. 27.100
  libavcodec     56. 41.101 / 56. 41.101
  libavformat    56. 34.100 / 56. 34.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 16.101 /  5. 16.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.100 /  1.  2.100
  libpostproc    53.  3.100 / 53.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test_bref-short.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.32.100
  Duration: 00:00:10.03, start: 0.023000, bitrate: 1977 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1972 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc (default)
    Metadata:
      handler_name    : VideoHandler
Please use -q:a or -q:v, -qscale is ambiguous
Output #0, avi, to 'out.avi':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    ISFT            : Lavf56.34.100
    Stream #0:0(und): Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 59.94 fps, 59.94 tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : Lavc56.41.101 mpeg4
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> mpeg4 (native))
Press [q] to stop, [?] for help
frame=  601 fps=546 q=2.0 Lsize=   11835kB time=00:00:10.02 bitrate=9669.1kbits/s
video:11815kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.169389%
Last edited 4 years ago by cehoyos (previous) (diff)

comment:5 Changed 4 years ago by dprestegard

I did upload a new file. See the new file name in my previous comment.

So far reproducible on x86_64 via just running ffplay.

Originally detected in VLC on x86 so I'm pretty sure it's not just x86_64.

comment:6 Changed 4 years ago by michael

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