[Bug 774136] New: mpegtsmux: PES payload size overflow for unbounded video streams bigger than 65K per frame
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Wed Nov 9 09:53:00 UTC 2016
https://bugzilla.gnome.org/show_bug.cgi?id=774136
Bug ID: 774136
Summary: mpegtsmux: PES payload size overflow for unbounded
video streams bigger than 65K per frame
Classification: Platform
Product: GStreamer
Version: git master
OS: Mac OS
Status: NEW
Severity: major
Priority: Normal
Component: gst-plugins-bad
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: milos.seleceni at comprimato.com
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created attachment 339372
--> https://bugzilla.gnome.org/attachment.cgi?id=339372&action=edit
PES payload size overflow for unbounded video streams 65K per frame
Hi, In mpegtsmux when dealing an unbounded video streams the PES packet payload
size should be 0. Every frame should be stored in single PES packet. Which is
also mentioned in tsmuxstream.c:tsmux_stream_consume()
In tsmuxstream.c:tsmux_stream_initialize_pes_packet()
at the beginning there is copy of the current PES payload size from 32bit
integer into 16 bit integer. When single video exceed 65K per frame the frame
size is lost due to overflow of cur_pes_payload_size variable, which is wrong.
Later the cur_pes_payload_size is used in loop for creating the PES packets
stream->cur_pes_payload_size = stream->bytes_avail;
bytes_avail correspond to the buffer size or the video frame size, and it
should be 32 bit instead of 16
--
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