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> ________________________________________________
