[Bug 657343] [patch] small changes to mpegtsmux

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Aug 14 04:20:30 PDT 2013


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

--- Comment #39 from Edward Hervey <bilboed at gmail.com> 2013-08-14 11:20:25 UTC ---
(In reply to comment #16)
> It seems there is some confusion in the pesparser code of
> tsdemux plugin... I don't know what this part was supposed
> to do at all:
> ---
>       flags = *data++;
>       /* Only valid if stream_id_extension_flag == 0x0 */
>       if (!(flags & 0x80)) {
>         res->stream_id_extension = flags & 0x7f;
> ---
> If bit 7 is not set (!(flags & 0x80)), there is no use of
> doing flags & 0x7f on the next line, is it?

  Correct, fixed that locally.

  The usage of PES_extension_field_length was also still a bit weird. The docs
are a bit conflicting (the field description says it's the number of bytes
after *that* field, but the PES packet table (2-21) is stating something else).

> Moreover, I failed to track that to the description of the
> pes header format, and in fact mpegtsmux can write different
> values there: 0x60, 0x71, 0x80 and 0x82 to specify the media
> type, so the 0x7f mask cannot be applied.

  mpegtsmux is doing something wrong if it's setting a stream_id_extension with
the highest bit set. That needs fixing. tsdemux/pesparse is doing the expected
thing.

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