summaryrefslogtreecommitdiffstats
path: root/gst
AgeCommit message (Collapse)AuthorFilesLines
2009-01-31Generate an index table for essence streamsSebastian Dröge11-183/+272
Generate an index table for essence streams during playback and make sure that only the correct essence elements are used for played tracks. Make it possible to have one essence stream used in multiple playback tracks. Fix some minor bugs.
2009-01-31Don't complain if the preface has no primary package setSebastian Dröge1-6/+8
2009-01-31Allow index table segments without primer packSebastian Dröge2-11/+13
When parsing an index table segment without a valid primer pack in this partition only parse the static local tags and ignore all dynamic ones. This allows us to use index table segments in some broken files.
2009-01-31Add essence track abstractionSebastian Dröge2-247/+460
Add an abstraction to represent essence tracks and use this everywhere. This will later be used to keep track of positions and to generate/handle seek tables. Some random cleanup and renaming.
2009-01-31Fix parsing of index table segmentsSebastian Dröge1-4/+6
Allocate memory for the pos tables and slice offsets of the index entries separately to a) fix alignment in weird cases and b) to actually have something to free() in the index table segment reset function.
2009-01-31Improve detection of the end of the header metadataSebastian Dröge2-12/+20
Header metadata is finished after partition.header_byte_count bytes after the first byte of the primer pack are handled. After this there can only be index table segments, filler packets, essence or the start of the next partition. This fixes playback of some files that have non-standard metadata packets in the header metadata.
2009-01-30Unref event if we don't forward it, unref pads when done with them.Michael Smith1-0/+5
2009-01-30Fix compilation on Forte.Jan Schmidt1-2/+2
Dereference the pointer to the passed socket to check the actual fd when closing them. Cast an assignment to kill a warning.
2009-01-30Fix the return value of the default parse_frame function.Jan Schmidt2-6/+6
Fix the return value of the default parse_frame function in both copies of GstBaseParse
2009-01-28mpegdemux: do not skip pes packets that we think are encryptedJosep Torra1-12/+1
pes packets that claim to be encrypted may not be so, so treat as normal. Just log the flags.
2009-01-28Additional media type support in qtmux (and friends).Mark Nauwelaerts4-9/+77
Support AMR and H263 for both qtmux and gppmux, and add extensions in sample table description.
2009-01-28Revert "mpegdemux: do not skip pes packets that we think are encrypted"Zaheer Merali1-2/+13
This reverts commit d3e4e5598f6c3db444d0014597d383ed35a02998.
2009-01-28mpegdemux: do not skip pes packets that we think are encryptedJosep Torra1-13/+2
pes packets that claim to be encrypted may not be so, so treat as normal. Just log the flags.
2009-01-24Build the modplug plugin against the modplug library and remove our copyHans de Goede43-22254/+0
Always build the modplug plugin against the system modplug library and remove our own copy. Using the system version has advantages if security issues or other critical bugs are found in libmodplug and our own copy wasn't really maintained anyway. Also our copy only contained some patches to use GLib types and functions. Fixes bug #568837.
2009-01-23Make RGB masks unsigned in rawvideoparseJan Schmidt1-4/+4
Allow the full range of 32 bit masks for RGBA/RGB data by making sure the mask properties are unsigned.
2009-01-23Log aac details found in codec_data.Stefan Kost1-0/+3
2009-01-23Rename audioresample files and types to legacyresampleSebastian Dröge14-198/+201
Finish the move/rename of audioresample to legacyresample to prevent any confusion.
2009-01-23Remove speexresample from -bad, it's in -baseSebastian Dröge11-3379/+0
2009-01-23Send BYE packets immediatly for small sessionsWim Taymans1-0/+4
When the number of participants is less than 50, the RFC allows for sending the BYE packet immediatly instead of using the regular BYE timeout. Fixes #567828.
2009-01-23Link modplug plugin with -lm. Fixes bug #568483.Brian Cameron1-1/+1
2009-01-23Fix build on Solaris. Fixes bug #568480.Brian Cameron1-4/+0
Fix linking on Solaris by checking for the nsl and socket libraries which are needed for socket() and gethostbyname(). Don't initialize some fields of struct mh to NULL/0, they're already set to NULL/0 by a memset(). Also this fields don't exist on Solaris.
2009-01-23Store all partitions & primer packs in memory for faster accessSebastian Dröge4-128/+213
Store all partitions & primer packs in memory for faster access. This is later needed for fast seeking. Pre-fill the list of partitions with the content of the random index pack. Don't parse metadata of an partition twice.
2009-01-22Add support for ECMA arrays in script tags. Fixes bug #567965.Jan Urbanski1-0/+23
Add support for ECMA arrays in script tags. This fixes seeking on some files that have the seek table stored inside an ECMA array instead of the normal array.
2009-01-22Unlock the jitterbuffer before pushing out the packet-lost events.Wim Taymans1-5/+8
Move some code before we do the unlock to make the jitterbuffer state consistent while we are unlocked.
2009-01-22Fix UL for DTS and MPEG2 layer 1Sebastian Dröge1-2/+2
2009-01-22Add support for AAC audioSebastian Dröge1-0/+10
2009-01-22Store MXF metadata in a hash table, keyed by UIDSebastian Dröge7-835/+819
Store the MXF metadata in a hash table, keyed by the instance UID. This simplifies resolval of the metadata and makes looping over all metadata sets unnecessary in most cases. Additionally parse metadata always. If we already have a metadata set with the same UID replace it only if the new metadata set is from a later offset. This fixes metadata parsing of files where following partitions don't have a complete copy of the previous metadata.
2009-01-22Build the random index pack while parsingSebastian Dröge2-10/+40
If the file contains no random index pack or just an invalid one build the random index pack while parsing.
2009-01-22Update copyrights for 2009Sebastian Dröge25-25/+25
2009-01-22Simplify parsing of UL/UUID arraysSebastian Dröge6-1138/+640
Simplify parsing of UL/UUID arrays by abstracting it into a separate function.
2009-01-22Implement parsing of DMS1 (SMPTE S380M)Sebastian Dröge12-187/+7261
2009-01-09gst/mpegdemux/gstmpegtsdemux.c: Don't forward duration requests in BYTES, ↵David Schleef1-0/+15
since the returned value doesn't mean anyth... Original commit message from CVS: * gst/mpegdemux/gstmpegtsdemux.c: Don't forward duration requests in BYTES, since the returned value doesn't mean anything. Fixes #566959
2009-01-09gst/qtmux/gstqtmuxmap.c: Add video/x-qt-part and video/x-m4-part to caps so ↵David Schleef1-2/+4
schroenc/schroparse can use it. Fixes #5... Original commit message from CVS: * gst/qtmux/gstqtmuxmap.c: Add video/x-qt-part and video/x-m4-part to caps so schroenc/schroparse can use it. Fixes #566958
2009-01-05gst/mpegdemux/mpegtspacketizer.c: Guard interval is 4 if descriptor part ↵Zaheer Abbas Merali1-2/+2
shows binary 11 (3 not 4). Original commit message from CVS: * gst/mpegdemux/mpegtspacketizer.c: Guard interval is 4 if descriptor part shows binary 11 (3 not 4).
2009-01-05gst/mpegdemux/gstmpegdesc.h: Fix up satellite delivery subsystem defs.Zaheer Abbas Merali1-1/+1
Original commit message from CVS: * gst/mpegdemux/gstmpegdesc.h: Fix up satellite delivery subsystem defs.
2009-01-05gst/mpegdemux/gstmpegdesc.h: Fix up terrestrial delivery system descriptor defs.Zaheer Abbas Merali1-7/+7
Original commit message from CVS: * gst/mpegdemux/gstmpegdesc.h: Fix up terrestrial delivery system descriptor defs. They should be shifted otherwise wrong values are seen.
2009-01-05gst/mxf/: "Generation UID" and "This Generation UID" are different so handle ↵Sebastian Dröge4-21/+133
them different. Also both are not part o... Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: (mxf_metadata_handle_tag), (mxf_metadata_preface_handle_tag), (mxf_metadata_identification_handle_tag), (mxf_metadata_content_storage_handle_tag), (mxf_metadata_essence_container_data_handle_tag), (mxf_metadata_generic_package_handle_tag), (mxf_metadata_track_handle_tag), (mxf_metadata_sequence_handle_tag), (mxf_metadata_structural_component_handle_tag), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_locator_handle_tag), (mxf_metadata_locator_class_init): * gst/mxf/mxfmetadata.h: "Generation UID" and "This Generation UID" are different so handle them different. Also both are not part of every metadata type.
2009-01-05gst/bayer/gstbayer2rgb.c: Fix color offset calculation for 24bpp. Fixes bug ↵Sascha Hauer1-12/+15
#566613. Original commit message from CVS: Patch by: Sascha Hauer <s dot hauer at pengutronix dot de> Luotao Fu <l dot fu at pengutronix dot de> * gst/bayer/gstbayer2rgb.c: (get_pix_offset), (gst_bayer2rgb_set_caps): Fix color offset calculation for 24bpp. Fixes bug #566613.
2009-01-05gst/mpegtsmux/: Improve muxing of AC3/h264 streams a bit. Fixes bug #550613.vanista4-6/+177
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.
2009-01-05gst/mxf/mxfdemux.c: Don't allow negative or zero edit rates to prevent ↵Sebastian Dröge1-8/+21
division by zero and we support negative edit ... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_pad_next_component): Don't allow negative or zero edit rates to prevent division by zero and we support negative edit rates anyway.
2009-01-05gst/mxf/: Fix compilation with debugging disabled.Sebastian Dröge4-16/+66
Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag), (mxf_bwf_create_caps): * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_klv_packet): * gst/mxf/mxfmetadata.c: (mxf_metadata_handle_tag), (mxf_metadata_preface_handle_tag), (mxf_metadata_identification_handle_tag), (mxf_metadata_content_storage_handle_tag), (mxf_metadata_essence_container_data_handle_tag), (mxf_metadata_generic_package_handle_tag), (mxf_metadata_source_package_handle_tag), (mxf_metadata_track_handle_tag), (mxf_metadata_sequence_handle_tag), (mxf_metadata_structural_component_handle_tag), (mxf_metadata_source_clip_handle_tag), (mxf_metadata_dm_segment_handle_tag), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_file_descriptor_handle_tag), (mxf_metadata_generic_picture_essence_descriptor_handle_tag), (mxf_metadata_generic_sound_essence_descriptor_handle_tag), (mxf_metadata_generic_data_essence_descriptor_handle_tag), (mxf_metadata_multiple_descriptor_handle_tag): * gst/mxf/mxfparse.c: (mxf_partition_pack_parse), (mxf_index_table_segment_parse), (mxf_primer_pack_parse), (mxf_local_tag_add_to_hash_table): Fix compilation with debugging disabled.
2009-01-02gst/rtpmanager/: When an SSRC is found on the caps of the sender RTP, use ↵Olivier Crete2-0/+28
this as the internal SSRC. Fixes #565910. Original commit message from CVS: Patch by: Olivier Crete <tester at tester dot ca> * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_setcaps_send_rtp), (create_send_rtp_sink): * gst/rtpmanager/rtpsession.c: (rtp_session_set_internal_ssrc): When an SSRC is found on the caps of the sender RTP, use this as the internal SSRC. Fixes #565910.
2009-01-02gst/rtpmanager/: Rename a method to better reflect what it really does.Wim Taymans3-19/+9
Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_getcaps_send_rtp): * gst/rtpmanager/rtpsession.c: (check_collision), (rtp_session_schedule_bye_locked), (rtp_session_schedule_bye): * gst/rtpmanager/rtpsession.h: Rename a method to better reflect what it really does.
2009-01-02gst/mpegdemux/gstmpegdemux.c: Initialize scr_rate_n and scr_rate_d in order ↵Alessandro Decina1-0/+3
to fix compiler warnings. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: Initialize scr_rate_n and scr_rate_d in order to fix compiler warnings.
2008-12-31Implement support for OP2a/b/c and OP3a/b/c, i.e. tracks with more than a ↵Sebastian Dröge11-116/+320
single component. This currently only works... Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_bwf_handle_essence_element), (mxf_aes3_handle_essence_element): * gst/mxf/mxfalaw.c: (mxf_alaw_handle_essence_element): * gst/mxf/mxfd10.c: (mxf_d10_picture_handle_essence_element), (mxf_d10_sound_handle_essence_element): * gst/mxf/mxfdemux.c: (gst_mxf_demux_pad_init), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_pad_next_component), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_parse_footer_metadata), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_src_query): * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_handle_essence_element): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_handle_essence_element): * gst/mxf/mxfmetadata.c: (mxf_metadata_sequence_init), (mxf_metadata_structural_component_init), (mxf_metadata_generic_picture_essence_descriptor_init): * gst/mxf/mxfmpeg.c: (mxf_mpeg_video_handle_essence_element), (mxf_mpeg_audio_handle_essence_element): * gst/mxf/mxfparse.h: * gst/mxf/mxfup.c: (mxf_up_handle_essence_element): * gst/mxf/mxfvc3.c: (mxf_vc3_handle_essence_element): * tests/check/elements/mxfdemux.c: (_sink_chain): Implement support for OP2a/b/c and OP3a/b/c, i.e. tracks with more than a single component. This currently only works for the case where the components are stored in playback order in the file. Set some more default/distinguished values for the structural metadata. Make some types more strict by choosing the correct subclasses. Set DISCONT flag on buffers after a component switch. Take the last partition from the random index pack for the footer partition of the header partition doesn't reference the footer partition. This gives us the final structural metadata for some more files in the beginning.
2008-12-29gst/mpegdemux/gstmpegdemux.c: Use the adjusted SCR for calculating the mux rate.Wim Taymans1-6/+18
Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query), (gst_flups_demux_parse_pack_start): Use the adjusted SCR for calculating the mux rate. Don't update the rate estimation after a discont.
2008-12-29gst/mpegdemux/gstmpegdemux.*: The position member in the newsegment event ↵Wim Taymans2-4/+7
corresponds to the stream_time of the segme... Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): * gst/mpegdemux/gstmpegdemux.h: The position member in the newsegment event corresponds to the stream_time of the segment start position.
2008-12-29gst/mpegdemux/gstmpegdemux.c: Converting from time to bytes operates on the ↵Robin Stocker1-3/+2
stream_time, not the SCR timeline. Original commit message from CVS: Patch by: Robin Stocker <robin at nibor dot org> * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query): Converting from time to bytes operates on the stream_time, not the SCR timeline. The position reporting should happen in stream_time, not the segment timestamp range. See #557161.
2008-12-29gst/mpegdemux/mpegtspacketizer.c: Fix memleak. Fixes #565614.Sebastian Pölsterl1-0/+1
Original commit message from CVS: Patch by: Sebastian Pölsterl <sebp at k-d-w dot org> * gst/mpegdemux/mpegtspacketizer.c: (mpegts_packetizer_parse_eit): Fix memleak. Fixes #565614.
2008-12-29gst/mpegdemux/mpegtspacketizer.c: Add a scrambled field to the service ↵Sebastian Pölsterl1-4/+5
structures retrieved from SDT to determine if ... Original commit message from CVS: Patch by: Sebastian Pölsterl <sebp at k-d-w dot org> * gst/mpegdemux/mpegtspacketizer.c: (mpegts_packetizer_parse_sdt): Add a scrambled field to the service structures retrieved from SDT to determine if a channel is scrambled. Fixes #565613.