New submission from Aleksey Vasenev <[email protected]>:

sample code:

AVFormatContext *pFormatContext;
AVPacket packet;

av_open_input_file(&pFormatContext, "mkv_seek_bug.mkv", NULL, 0, NULL)
av_seek_frame(pFormatContext, -1, 0, AVSEEK_FLAG_BACKWARD)
av_init_packet(&packet);
int res = av_read_frame(pFormatContext, &packet);

results: res == -32
output: [matroska,webm @ 008f8080] Invalid EBML number size tag 0x01 at 
pos 508 (0x1fc)

after matroska_read_seek we point to cluster id
but MatroskaDemuxContext::current_id has old value
and matroska_read_packet think that MatroskaDemuxContext::current_id 
already read

sample attached, but valid for all mkv files
File 'mkv_seek_bug.mkv' not attached - you can download it from 
https://roundup.ffmpeg.org/file1104.

----------
files: mkv_seek_bug.mkv
messages: 12077
priority: normal
status: new
substatus: new
title: av_seek_frame for matroska don't work correctly
type: bug

________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2256>
________________________________________________

Reply via email to