[FFmpeg-trac] #5093(ffmpeg:open): Accurate seek not possible with MPEG program stream and transport sream
FFmpeg
trac at avcodec.org
Sat Dec 19 11:33:38 CET 2015
#5093: Accurate seek not possible with MPEG program stream and transport sream
------------------------------------+----------------------------------
Reporter: pkerling | Owner:
Type: defect | Status: open
Priority: normal | Component: ffmpeg
Version: git-master | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
------------------------------------+----------------------------------
Changes (by Cigaes):
* status: reopened => open
* type: enhancement => defect
* version: unspecified => git-master
* component: undetermined => ffmpeg
Comment:
I think your explanation is on the right track but misses part of the
problem.
In order to achieve frame-accurate fast-ish seek, ffmpeg fast-seeks to the
requested position or before it. Then it slow-seeks to the requested
position over non-keyframes.
Unfortunately, when "16b0c92 avconv: Add loop option." was merged as
b994788, the setting for seeking backwards was lost.
You can probably get things working again by editing {{{ffmpeg.c}}} and
adding {{{AVSEEK_FLAG_BACKWARD}}} to the {{{av_seek_frame()}}} call.
You can also test fcfb66b to see if it works for you. If it does, and I
suspect it will, then this issue is a regression.
To really fix things, all the work that was done on seeking beyond the
fork needs to be ported to the new location: see the
{{{avformat_seek_file()}}} call in {{{ffmpeg_opt.c}}} and the commits
b684f744 and b0322e4a.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/5093#comment:5>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list