[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