[libav-bugs] [Bug 403] New: Some comments about standard compliant MPEG-TS
bugzilla-daemon at aruru.libav.org
bugzilla-daemon at aruru.libav.org
Tue Dec 18 17:15:06 CET 2012
http://bugzilla.libav.org/show_bug.cgi?id=403
Summary: Some comments about standard compliant MPEG-TS
Product: Libav
Version: git HEAD
Platform: All
OS/Version: All
Status: NEW
Severity: enhancement
Priority: Normal
Component: libavformat
AssignedTo: bugzilla at libav.org
ReportedBy: kierank at ob-encoder.com
It is fair to say that most uses of lavf's MPEG-TS mux are for streaming to
portable devices (and in the future throughout the web). Apple uses hacked
out-of-spec MPEGTS files to reduce overhead and almost all other streaming
devices follow suit. At this point lavf for most (all?) streaming applications
of MPEG-TS works acceptably (though inefficiently). I have been told that
strictly compatible muxes break streaming in spite of passing all professional
analysis tools. It is also the case that MPEGTS would require a DTS/PTS that is
not the same as the user's input timestamps (DTS and PTS depends on VBV and all
other timestamps are shifted to compensate) - VFR + VBV/HRD is also very
complicated and only works in a few edge cases in AVC. MPEGTS also requires the
input is VBV encoded and appropriate information in the stream or via external
means to signal VBV parameters. However, most streaming applications aren't
fussed about strict VBV and most users are accustomed to think they can remux
any file to MPEG-TS, which isn't strictly allowed. It would be very time
consuming and tedious to rewrite the mux to pass both strict requirements for
professional uses and for streaming requirements, perhaps even two separate
codepaths.
The mux is in a strange state where it is acceptable for most uses because of
the heuristics streaming devices have. For UDP/RTP output of live encoded
MPEG-TS libavformat (or avconv/user applications?) would also need to manage an
encoder side buffer (i.e buffering one VBV) so that output packets can be
released smoothly.
--
Configure bugmail: http://bugzilla.libav.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
More information about the libav-bugs
mailing list