summaryrefslogtreecommitdiffstats
path: root/gst/mpegtsmux/tsmux/tsmux.c
diff options
context:
space:
mode:
authorvanista <vanista@gmail.com>2009-01-05 11:28:49 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2009-01-05 11:28:49 +0000
commit751555b5c3839b19274565ef65c6189c494a6924 (patch)
tree05653635b4e46e7eef4c9b89658df007a57c7c54 /gst/mpegtsmux/tsmux/tsmux.c
parentcaa83490672d4acfd8569d876b4f134c5f72afaa (diff)
downloadgst-plugins-bad-751555b5c3839b19274565ef65c6189c494a6924.tar.gz
gst-plugins-bad-751555b5c3839b19274565ef65c6189c494a6924.tar.bz2
gst-plugins-bad-751555b5c3839b19274565ef65c6189c494a6924.zip
gst/mpegtsmux/: Improve muxing of AC3/h264 streams a bit. Fixes bug #550613.
Original commit message from CVS: Patch by: vanista <vanista at gmail dot com> * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_create_stream): * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_write_pmt): * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new), (tsmux_stream_write_pes_header), (tsmux_stream_get_es_descrs): * gst/mpegtsmux/tsmux/tsmuxstream.h: Improve muxing of AC3/h264 streams a bit. Fixes bug #550613.
Diffstat (limited to 'gst/mpegtsmux/tsmux/tsmux.c')
-rw-r--r--gst/mpegtsmux/tsmux/tsmux.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/gst/mpegtsmux/tsmux/tsmux.c b/gst/mpegtsmux/tsmux/tsmux.c
index 1283f9a8..70ad3dcd 100644
--- a/gst/mpegtsmux/tsmux/tsmux.c
+++ b/gst/mpegtsmux/tsmux/tsmux.c
@@ -1000,9 +1000,14 @@ tsmux_write_pmt (TsMux * mux, TsMuxProgram * program)
else
tsmux_put16 (&pos, 0xE000 | tsmux_stream_get_pid (program->pcr_stream));
- /* FIXME: Write program descriptors if needed, for now write a
- * length of 0 */
- tsmux_put16 (&pos, 0xF000);
+ /* 4 bits reserved, 12 bits program_info_length, descriptor : HDMV */
+ tsmux_put16 (&pos, 0xF00C);
+ tsmux_put16 (&pos, 0x0504);
+ tsmux_put16 (&pos, 0x4844);
+ tsmux_put16 (&pos, 0x4D56);
+ tsmux_put16 (&pos, 0x8804);
+ tsmux_put16 (&pos, 0x0FFF);
+ tsmux_put16 (&pos, 0xFCFC);
/* Write out the entries */
for (i = 0; i < program->nb_streams; i++) {