[Bug 636279] REGRESSION: Video often freezes during playback of mpeg2 files

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Jun 20 03:06:21 PDT 2011


https://bugzilla.gnome.org/show_bug.cgi?id=636279
  GStreamer | gst-plugins-bad | git

--- Comment #29 from Vladimir Eremeev <wl2776 at gmail.com> 2011-06-20 10:06:15 UTC ---
> Who is reconstructing correct timestamps? 
FFmpeg, or, more exactly, functions from its libraries libavformat, libavutil,
etc.

> The stream is not a TS anymore, so
Right, but FFmpeg stores every access unit (a video frame or a batch of audio
samples) in a separate structure AVPacket, which also carries all necessary
information.

Its demuxing function av_read_frame() calls low-level functions that parse
MPEG-2 TS, read PTS and DTS from TS headers, assemble PES packets from the
transport packets and store their data bytes, timestamps, and all other
information in the AVPacket exemplars.

These AVPackets are presented to the calling application. 
I have developed that application and it simply subtracts a constant from all
timestamps to make them start from near 0.

High-level muxing functions (av_write_frame and av_interleaved_write_frame) use
information, stored in the AVPacket to correctly mux packets they receive.

> reconstructing correct timestamps now is not possible anymore if the
> information is not saved in the GOP headers.

So, all timing information is stored and used, and everything is possible.
GOP headers are left intact, right.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list