[FFmpeg-trac] #4904(undetermined:new): Broken vp9 decoding after failed seek in webm file
FFmpeg
trac at avcodec.org
Sat Oct 3 23:20:06 CEST 2015
#4904: Broken vp9 decoding after failed seek in webm file
-------------------------------------+-------------------------------------
Reporter: cehoyos | Owner:
Type: defect | Status: new
Priority: normal | Component:
Version: git- | undetermined
master | Keywords: mkv vp9
Blocked By: | seek
Reproduced by developer: 0 | Blocking:
| Analyzed by developer: 0
-------------------------------------+-------------------------------------
(Sample from videolan ticket 15433)
A vlc user has uploaded a webm vp9 sample that does not allow seeking with
ffplay. If I try to seek forward ten seconds immediately after starting
playback, the file continues to play for 66 seconds, then video gets
broken and does not recover. I was unable to reproduce with {{{ffmpeg}}}.
{{{
$ ffplay TestClip\ webm.webm.webm
ffplay version N-75722-g32a6d37 Copyright (c) 2003-2015 the FFmpeg
developers
built with gcc 4.7 (SUSE Linux)
configuration: --enable-gpl
libavutil 55. 2.100 / 55. 2.100
libavcodec 57. 4.101 / 57. 4.101
libavformat 57. 2.102 / 57. 2.102
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 9.101 / 6. 9.101
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
libpostproc 54. 0.100 / 54. 0.100
Input #0, matroska,webm, from 'TestClip webm.webm.webm': 0B f=0/0
Metadata:
encoder : Lavf56.40.101
Duration: 00:03:01.29, start: 0.007000, bitrate: 1722 kb/s
Stream #0:0: Video: vp9 (Profile 0), yuv420p(tv), 1920x1080, SAR 1:1
DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc (default)
Stream #0:1(eng): Audio: opus, 48000 Hz, 5.1, fltp (default)
Stream #0:2(eng): Subtitle: webvtt (default)
[matroska,webm @ 0x7fd45c000920] seek_frame_generic failed as this stream
seems to contain no keyframes after the target timestamp, 1002 non
keyframes found
[matroska,webm @ 0x7fd45c000920] seek_frame_generic failed as this stream
seems to contain no keyframes after the target timestamp, 1002 non
keyframes found
TestClip webm.webm.webm: error while seeking
40.38 A-V: 0.006 fd= 1 aq= 3148KB vq=12213KB sq= 0B
}}}
The timecounter shows that FFplay seeks back after playing for 66 seconds
which fails badly.
With a different configure line, the issue gets much easier to reproduce:
Seeking forward produces nearly immediately broken video:
{{{
$ ffplay TestClip\ webm.webm.webm
ffplay version N-75722-g32a6d37 Copyright (c) 2003-2015 the FFmpeg
developers
built with gcc 4.7 (SUSE Linux)
configuration: --disable-everything --disable-vdpau --disable-network
--enable-protocol=file --enable-demuxer=matroska --enable-libopus
--enable-decoder='vp9,opus' --enable-parser=vp9 --enable-filter=aresample
libavutil 55. 2.100 / 55. 2.100
libavcodec 57. 4.100 / 57. 4.100
libavformat 57. 2.102 / 57. 2.102
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 9.101 / 6. 9.101
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
Input #0, matroska,webm, from 'TestClip webm.webm.webm': 0B f=0/0
Metadata:
encoder : Lavf56.40.101
Duration: 00:03:01.29, start: 0.007000, bitrate: 1722 kb/s
Stream #0:0: Video: vp9 (Profile 0), yuv420p(tv), 1920x1080, SAR 1:1
DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc (default)
Stream #0:1(eng): Audio: opus, 48000 Hz, 5.1, fltp (default)
Stream #0:2(eng): Subtitle: webvtt (default)
No codec could be found with id 96265
[matroska,webm @ 0x7fb258000920] seek_frame_generic failed as this stream
seems to contain no keyframes after the target timestamp, 1002 non
keyframes found
[matroska,webm @ 0x7fb258000920] seek_frame_generic failed as this stream
seems to contain no keyframes after the target timestamp, 1002 non
keyframes found
TestClip webm.webm.webm: error while seeking
40.12 A-V: -0.001 fd= 1 aq= 69KB vq= 188KB sq= 0B
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4904>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list