summaryrefslogtreecommitdiffstats
path: root/gst/matroska/matroska-ids.h
Commit message (Collapse)AuthorAgeFilesLines
* matroska: add kate subtitle support to matroska muxer and demuxerVincent Penquerc'h2009-08-081-0/+1
| | | | See #525743.
* matroska: and the new headers tooWim Taymans2009-06-231-2/+2
|
* matroskademux: Populate a GstIndex that is set on matroskademuxSebastian Dröge2009-05-221-0/+2
|
* matroskademux: Recognise PGS subpicture streams - the bluray format.Jan Schmidt2009-05-211-0/+1
| | | | | Recognise and apply appropriate caps to PGS (Presentation Graphic Stream) subpicture streams.
* matroskademux: Improve/optimize seekingSebastian Dröge2009-05-111-0/+2
| | | | | | | | | First of all a keyframe seek should be done to the keyframe right before the requested position and not to the keyframe that is nearest to the requested position. Use per track index arrays and use our new binary search function from core to speed up the search.
* Add initial support for muxing/demuxing Speex audioSebastian Dröge2009-04-131-0/+7
| | | | | Note: This is not in the Matroska spec yet Fixes bug #578310.
* gst/matroska/: Make mkvdemux aware of E-AC3.Edward Hervey2008-11-161-0/+1
| | | | | | | Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_audio_caps): * gst/matroska/matroska-ids.h: Make mkvdemux aware of E-AC3.
* gst/matroska/: Implement Dirac muxing into Matroska comforming to the spec, ↵Sebastian Dröge2008-11-051-0/+2
| | | | | | | | | | | | | | | i.e. put all Dirac packages up to a pictu... Original commit message from CVS: * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_pad_free), (gst_matroska_mux_handle_dirac_packet), (gst_matroska_mux_write_data): Implement Dirac muxing into Matroska comforming to the spec, i.e. put all Dirac packages up to a picture into a Matroska block. TODO: Implement writing of the ReferenceBlock Matroska elements, currently the Dirac muxing is only 100% correct if Matroska version 2 is selected for muxing.
* Build depend on core CVS for the attachment tag.Sebastian Dröge2008-08-021-6/+0
| | | | | | | | Original commit message from CVS: * configure.ac: * gst/matroska/matroska-ids.c: (gst_matroska_register_tags): * gst/matroska/matroska-ids.h: Build depend on core CVS for the attachment tag.
* Decode the codec private data and following ContentEncoding if necessary.Sebastian Dröge2008-08-021-0/+13
| | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * configure.ac: * gst/matroska/Makefile.am: * gst/matroska/lzo.c: (get_byte), (get_len), (copy), (copy_backptr), (lzo1x_decode), (main): * gst/matroska/lzo.h: * gst/matroska/matroska-demux.c: (gst_matroska_demux_read_track_encoding), (gst_matroska_decompress_data), (gst_matroska_decode_data), (gst_matroska_decode_buffer), (gst_matroska_decode_content_encodings), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_demux_parse_blockgroup_or_simpleblock): * gst/matroska/matroska-ids.h: Decode the codec private data and following ContentEncoding if necessary. Support bzip2, lzo and header stripped compression. For lzo use the ffmpeg lzo implementation as liblzo is GPL licensed. Fix zlib decompression.
* gst/matroska/: Fix demuxing of WavPack files. Muxing is still broken.Sebastian Dröge2008-06-191-0/+2
| | | | | | | | | Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_wvpk_header), (gst_matroska_demux_audio_caps): * gst/matroska/matroska-ids.h: Fix demuxing of WavPack files. Muxing is still broken.
* gst/matroska/: Add a "vfunc" to the track context for postprocessing frames ↵Sebastian Dröge2008-06-191-2/+12
| | | | | | | | | | | | | | | | | | | | | and convert the wavpack and subtitle post... Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_track_free), (gst_matroska_demux_add_mpeg_seq_header), (gst_matroska_demux_add_wvpk_header), (gst_matroska_demux_check_subtitle_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.h: Add a "vfunc" to the track context for postprocessing frames and convert the wavpack and subtitle postprocessing to this vfunc. Copy buffer flags in those functions to the new buffers too. Parse CodecState elements of Blocks. Add a postprocessing function for MPEG video that adds the sequence header from the codec private data or codec state to the frames if it's not already there.
* gst/matroska/matroska-demux.c: Improve debug output everywhere and fix the ↵Sebastian Dröge2008-06-181-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EOS logic. Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_reset), (gst_matroska_demux_stream_from_num), (gst_matroska_demux_encoding_cmp), (gst_matroska_demux_encoding_order_unique), (gst_matroska_demux_read_track_encoding), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_tracknumber_unique), (gst_matroska_demux_add_stream), (gst_matroska_demux_init_stream), (gst_matroska_demux_parse_tracks), (gst_matroska_demux_parse_index_cuetrack), (gst_matroska_demux_parse_index_pointentry), (gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info), (gst_matroska_demux_parse_metadata_id_simple_tag), (gst_matroska_demux_parse_metadata_id_tag), (gst_matroska_demux_parse_metadata), (gst_matroska_demux_parse_attached_file), (gst_matroska_demux_parse_attachments), (gst_matroska_demux_parse_chapters), (gst_matroska_demux_sync_streams), (gst_matroska_decode_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_parse_cluster), (gst_matroska_demux_parse_contents_seekentry), (gst_matroska_demux_parse_contents), (gst_matroska_demux_loop_stream_parse_id), (gst_matroska_demux_loop): Improve debug output everywhere and fix the EOS logic. Check the values of the ContentEncoding elements more strictly and don't use tracks for which it's invalid. Check that the track number is unique for this stream. Check that seek positions are below G_MAXINT64 as our seeks are int64-based and overflows will fail badly. After seeks also don't push SimpleBlocks until the first one containing a keyframe is found. Before this was done only for normal Blocks. Update some FIXME/TODOs. * gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes), (gst_ebml_read_utf8), (gst_ebml_read_header): Improve debug output. * gst/matroska/matroska-ids.c: (gst_matroska_track_init_video_context): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): Remove eye mode and don't parse it anymore. We can't use that information in GStreamer yet so it's useless.
* gst/matroska/: Parse Attachments and post them as GST_TAG_IMAGE if we detect ↵Sebastian Dröge2008-06-161-0/+8
| | | | | | | | | | | | | | | | | | | it as image and otherwise as GST_TAG_ATT... Original commit message from CVS: * gst/matroska/Makefile.am: * gst/matroska/matroska-demux.c: (gst_matroska_demux_reset), (gst_matroska_demux_parse_attached_file), (gst_matroska_demux_parse_attachments), (gst_matroska_demux_parse_contents_seekentry), (gst_matroska_demux_loop_stream_parse_id): * gst/matroska/matroska-demux.h: * gst/matroska/matroska-ids.c: (gst_matroska_register_tags): * gst/matroska/matroska-ids.h: * gst/matroska/matroska.c: (plugin_init): Parse Attachments and post them as GST_TAG_IMAGE if we detect it as image and otherwise as GST_TAG_ATTACHMENT. Include filename and description of the attachments in the caps. Fixes bug #537622.
* gst/matroska/: Use a GArray for storing the Cue (i.e. seek) information, ↵Sebastian Dröge2008-06-151-3/+4
| | | | | | | | | | | | | | | | | | | | store the CueTrackPositions for every track,... Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_reset), (gst_matroskademux_do_index_seek), (gst_matroska_demux_parse_index_cuetrack), (gst_matroska_demux_parse_index_pointentry), (gst_matroska_index_compare), (gst_matroska_demux_parse_index), (gst_matroska_demux_parse_metadata): * gst/matroska/matroska-demux.h: * gst/matroska/matroska-ids.h: Use a GArray for storing the Cue (i.e. seek) information, store the CueTrackPositions for every track, store the block number and optimize searching in the array by sorting it after the last element was added. Fix a small memory leak when trying to parse a tags element that was already parsed.
* gst/matroska/: Add some more tags, improve debugging a bit and make sure thatSebastian Dröge2008-06-111-15/+13
| | | | | | | | | | | Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_metadata_id_simple_tag): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag): Add some more tags, improve debugging a bit and make sure that GValue transformation has succeeded before using the result as a tag.
* gst/matroska/ebml-write.c: Use GDOUBLE_TO_BE() instead of (probably slower) ↵Sebastian Dröge2008-06-101-142/+347
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | custom code. Original commit message from CVS: * gst/matroska/ebml-write.c: (gst_ebml_write_float): Use GDOUBLE_TO_BE() instead of (probably slower) custom code. * gst/matroska/matroska-demux.c: (gst_matroska_demux_base_init), (gst_matroska_demux_class_init), (gst_matroska_demux_init), (gst_matroska_track_free), (gst_matroska_demux_encoding_cmp), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_demux_handle_src_query), (gst_matroska_demux_init_stream), (gst_matroska_demux_parse_index_cuetrack), (gst_matroska_demux_parse_index_pointentry), (gst_matroska_demux_parse_info), (gst_matroska_demux_parse_metadata_id_simple_tag), (gst_matroska_demux_parse_metadata), (gst_matroska_demux_add_wvpk_header), (gst_matroska_decode_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_parse_cluster), (gst_matroska_demux_parse_contents_seekentry), (gst_matroska_demux_loop_stream_parse_id), (gst_matroska_demux_loop), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-demux.h: * gst/matroska/matroska-ids.c: (gst_matroska_track_init_subtitle_context): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init), (gst_matroska_mux_class_init), (gst_matroska_mux_init), (gst_matroska_mux_create_uid), (gst_matroska_mux_reset), (gst_matroska_mux_video_pad_setcaps), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_subtitle_pad_setcaps), (gst_matroska_mux_request_new_pad), (gst_matroska_mux_track_header), (gst_matroska_mux_start), (gst_matroska_mux_write_simple_tag), (gst_matroska_mux_finish), (gst_matroska_mux_write_data), (gst_matroska_mux_collected), (gst_matroska_mux_set_property): Add many FIXMEs/TODOs all over the matroska muxer and demuxer elements, do some checks for valid values in the demuxer, handle tracktimecodescale in the demuxer, set correct default values for all settings in the demuxer, review and add all missing matroska IDs and some more raw YUV formats, and some trivial cleanup.
* gst/matroska/: Handle return values from pull_range in a more granular way ↵Wim Taymans2008-03-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to properly shut down on seeks. Original commit message from CVS: * gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes), (gst_ebml_read_pull_bytes), (gst_ebml_read_element_id), (gst_ebml_read_element_length), (gst_ebml_peek_id), (gst_ebml_read_skip), (gst_ebml_read_buffer), (gst_ebml_read_bytes), (gst_ebml_read_uint), (gst_ebml_read_sint), (gst_ebml_read_float), (gst_ebml_read_ascii), (gst_ebml_read_utf8), (gst_ebml_read_date), (gst_ebml_read_master), (gst_ebml_read_binary), (gst_ebml_read_header): * gst/matroska/ebml-read.h: * gst/matroska/matroska-demux.c: (gst_matroska_demux_combine_flows), (gst_matroska_demux_reset), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_demux_handle_src_query), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_init_stream), (gst_matroska_demux_parse_tracks), (gst_matroska_demux_parse_index_cuetrack), (gst_matroska_demux_parse_index_pointentry), (gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info), (gst_matroska_demux_parse_metadata_id_simple_tag), (gst_matroska_demux_parse_metadata_id_tag), (gst_matroska_demux_parse_metadata), (gst_matroska_demux_sync_streams), (gst_matroska_demux_push_hdr_buf), (gst_matroska_demux_push_flac_codec_priv_data), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_add_wvpk_header), (gst_matroska_demux_check_subtitle_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_parse_cluster), (gst_matroska_demux_parse_contents_seekentry), (gst_matroska_demux_parse_contents), (gst_matroska_demux_loop_stream_parse_id), (gst_matroska_demux_loop_stream), (gst_matroska_demux_loop): * gst/matroska/matroska-demux.h: * gst/matroska/matroska-ids.h: Handle return values from pull_range in a more granular way to properly shut down on seeks. Combine return values from push. Implement proper error handling. Prepare for handling seeking correctly.
* gst/matroska/: Fix Dirac mapping. I had previously added a VfW-type ↵David Schleef2008-02-291-0/+1
| | | | | | | | | | | | mapping, but it looks like Dirac will get a nati... Original commit message from CVS: * gst/matroska/matroska-demux.c: * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: Fix Dirac mapping. I had previously added a VfW-type mapping, but it looks like Dirac will get a native Matroska mapping, and this is the most likely method.
* gst/matroska/: Extract palette data for dvd subpicture streams and send it ↵Mark Nauwelaerts2007-11-131-0/+5
| | | | | | | | | | | | | | downstream as custom gstreamer dvd event (... Original commit message from CVS: Patch by: Mark Nauwelaerts <manauw skynet be> * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_dvd_clut_change_event), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.h: Extract palette data for dvd subpicture streams and send it downstream as custom gstreamer dvd event (fixes #453417).
* gst/matroska/: Try harder to extract the framerate for video tracks ↵Tim-Philipp Müller2006-12-111-2/+3
| | | | | | | | | | | | | | | correctly and save it directly instead of convert... Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_video_caps): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_video_context): * gst/matroska/matroska-ids.h: Try harder to extract the framerate for video tracks correctly and save it directly instead of converting it back and forth a few times. Mostly makes a difference for very small framerates (<1). Fixes #380199.
* gst/matroska/: Add support for VOBSUB subtitle tracks and zlib-compressed ↵Frédéric Riss2006-09-041-0/+30
| | | | | | | | | | | | | | | | tracks. Make sure we start on a keyframe af... Original commit message from CVS: Patch by: Frédéric Riss <frederic.riss at gmail dot com> * gst/matroska/matroska-demux.c: (gst_matroska_track_free), (gst_matroska_demux_reset), (gst_matroska_demux_read_track_encodings), (gst_matroska_demux_add_stream), (gst_matroska_decode_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.h: Add support for VOBSUB subtitle tracks and zlib-compressed tracks. Make sure we start on a keyframe after a seek. (#343348)
* gst/matroska/: not perfect yet though, needs some tweaking in flacdec; also, ↵Tim-Philipp Müller2006-09-041-0/+6
| | | | | | | | | | | | | | | | seeking could be better. Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_hdr_buf), (gst_matroska_demux_push_flac_codec_priv_data), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps): * gst/matroska/matroska-ids.h: Add basic FLAC support (#311586), not perfect yet though, needs some tweaking in flacdec; also, seeking could be better. Do better bounds checking when deserialising vorbis stream headers to make sure we don't read beyond the end of the buffer on bad input.
* gst/matroska/: Send tag event after newsegment event.Tim-Philipp Müller2006-06-291-0/+3
| | | | | | | | | Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_send_event), (gst_matroska_demux_loop_stream_parse_id): * gst/matroska/matroska-ids.h: Send tag event after newsegment event.
* gst/matroska/: Try to fix up broken matroska files containing subtitle ↵Tim-Philipp Müller2006-06-221-1/+2
| | | | | | | | | | | | | | | | | | | streams with non-UTF8 character encodings (cou... Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_check_subtitle_buffer), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_subtitle_caps): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_subtitle_context): * gst/matroska/matroska-ids.h: Try to fix up broken matroska files containing subtitle streams with non-UTF8 character encodings (courtesy of mkvmerge) using either the encoding specified in the GST_SUBTITLE_ENCODING environment variable or the current locale's character set if it is non-UTF8. Fixes #337076.
* gst/matroska/: Add support for muxing/demuxing theora video (#342448; too ↵Tim-Philipp Müller2006-05-231-5/+10
| | | | | | | | | | | | | | | | | | | | | | | bad none of the usual linux players can act... Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_push_xiph_codec_priv_data), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init), (gst_matroska_mux_video_pad_setcaps), (xiph3_streamheader_to_codecdata), (vorbis_streamheader_to_codecdata), (theora_streamheader_to_codecdata), (gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_write_data): Add support for muxing/demuxing theora video (#342448; too bad none of the usual linux players can actually play this). Playback in GStreamer will require additional changes to theoradec in -base. Refactor streamheaders <=> CodecPrivateData code a bit; some small cleanups.
* gst/matroska/: Handle case where the TrackType ebml chunk does not come ↵Tim-Philipp Müller2006-04-251-0/+7
| | | | | | | | | | | | | | | | | | before the Original commit message from CVS: * gst/matroska/Makefile.am: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_handle_src_event): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_video_context), (gst_matroska_track_init_audio_context), (gst_matroska_track_init_subtitle_context), (gst_matroska_track_init_complex_context): * gst/matroska/matroska-ids.h: Handle case where the TrackType ebml chunk does not come before the TrackInfoAudio or TrackInfoVideo ebml chunk (#339446). Ignore QoS events.
* gst/matroska/: Set DISCONT flag on first buffer after a discontinuity.Tim-Philipp Müller2006-04-201-0/+2
| | | | | | | | | | | | | | | Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroskademux_do_index_seek), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_parse_blockgroup_or_simpleblock): * gst/matroska/matroska-ids.h: Set DISCONT flag on first buffer after a discontinuity. Fix newsegment events sent when seeking and honour KEY_UNIT seek flag. Create pad with bogus caps if we don't recognise the stream codec id. * gst/matroska/matroska-demux.h: Fix GObject macros.
* gst/matroska/: Recognise SSA/ASS and USF subtitle formats and set proper ↵Tim-Philipp Müller2006-02-181-0/+3
| | | | | | | | | | | | caps when they are found. Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_subtitle_caps), (gst_matroska_demux_plugin_init): * gst/matroska/matroska-ids.h: Recognise SSA/ASS and USF subtitle formats and set proper caps when they are found.
* gst/matroska/: Added recognition of Real Audio and Video streams in matroska ↵Edward Hervey2006-01-231-2/+13
| | | | | | | | | | demuxer. Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps), (gst_matroska_demux_plugin_init): * gst/matroska/matroska-ids.h: Added recognition of Real Audio and Video streams in matroska demuxer.
* expand tabsThomas Vander Stichele2005-12-061-2/+2
| | | | | Original commit message from CVS: expand tabs
* gst/matroska/: Add SimpleBlock support to matroska demuxer and muxer (part ofTim-Philipp Müller2005-10-281-0/+1
| | | | | | | | | | | | | | | | | | Original commit message from CVS: Reviewed by: Tim-Philipp Müller <tim at centricular dot net> * gst/matroska/matroska-demux.c: (gst_matroska_demux_init_stream), (gst_matroska_demux_parse_info), (gst_matroska_demux_parse_blockgroup_or_simpleblock), (gst_matroska_demux_parse_cluster): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init), (gst_matroska_mux_init), (gst_matroska_mux_start), (gst_matroska_mux_create_buffer_header), (gst_matroska_mux_write_data), (gst_matroska_mux_set_property), (gst_matroska_mux_get_property): * gst/matroska/matroska-mux.h: Add SimpleBlock support to matroska demuxer and muxer (part of Matroska v2). (#319731)
* Port matroska muxer to 0.9 (#318847).Tim-Philipp Müller2005-10-141-0/+15
| | | | | | | | | | | | | | | Original commit message from CVS: Reviewed by: Tim-Philipp Müller <tim at centricular dot net> * configure.ac: * gst/matroska/Makefile.am: * gst/matroska/ebml-ids.h: * gst/matroska/ebml-write.c: * gst/matroska/ebml-write.h: * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: * gst/matroska/matroska-mux.h: * gst/matroska/matroska.c: (plugin_init): Port matroska muxer to 0.9 (#318847).
* OGM text support, Matroska UTF-8 text support, deadlock fixes all over the ↵Ronald S. Bultje2005-01-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | place, subtitle awareness in decodebin/pla... Original commit message from CVS: * configure.ac: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_new): * ext/ogg/gstogmparse.c: (gst_ogm_text_parse_get_type), (gst_ogm_text_parse_base_init), (gst_ogm_text_parse_init), (gst_ogm_parse_get_sink_querytypes), (gst_ogm_parse_sink_convert), (gst_ogm_parse_sink_query), (gst_ogm_parse_chain), (gst_ogm_parse_plugin_init): * ext/pango/gsttextoverlay.c: (gst_textoverlay_linkedpads), (gst_textoverlay_link), (gst_textoverlay_getcaps), (gst_textoverlay_event), (gst_textoverlay_video_chain), (gst_textoverlay_loop), (gst_textoverlay_init), (plugin_init): * ext/pango/gsttextoverlay.h: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_handle_seek_event), (gst_matroska_demux_sync_streams), (gst_matroska_demux_parse_blockgroup), (gst_matroska_demux_subtitle_caps), (gst_matroska_demux_plugin_init): * gst/matroska/matroska-ids.h: * gst/playback/gstdecodebin.c: (close_pad_link): * gst/playback/gstplaybasebin.c: (gst_play_base_bin_init), (gen_preroll_element), (remove_groups), (add_stream), (new_decoded_pad), (setup_subtitles), (gen_source_element), (setup_source): * gst/playback/gstplaybasebin.h: * gst/playback/gstplaybin.c: (gen_text_element), (setup_sinks): * gst/subparse/Makefile.am: * gst/subparse/gstsubparse.c: (gst_subparse_get_type), (gst_subparse_base_init), (gst_subparse_class_init), (gst_subparse_init), (gst_subparse_formats), (gst_subparse_eventmask), (gst_subparse_event), (gst_subparse_handle_event), (convert_encoding), (get_next_line), (parse_mdvdsub), (parse_mdvdsub_init), (parse_subrip), (parse_subrip_deinit), (parse_subrip_init), (parse_mpsub), (parse_mpsub_deinit), (parse_mpsub_init), (gst_subparse_buffer_format_autodetect), (gst_subparse_format_autodetect), (gst_subparse_loop), (gst_subparse_change_state), (gst_subparse_type_find), (plugin_init): * gst/subparse/gstsubparse.h: * gst/typefind/gsttypefindfunctions.c: (ogmtext_type_find), (plugin_init): Add subtitle support, .sub parser (supports SRT and MPsub), OGM text support, Matroska UTF-8 text support, deadlock fixes all over the place, subtitle awareness in decodebin/playbin and some fixes to textoverlay to handle subtitles in a stream correctly. Fixes #100931.
* Ooops, fix previous commit. Never trust file names I guess...Maciej Katafiasz2004-12-281-0/+5
| | | | | Original commit message from CVS: Ooops, fix previous commit. Never trust file names I guess...
* Write track and segment UIDs, write muxing date, write TRACKDEFAULTDURATION ↵Arwed v. Merkatz2004-09-011-0/+1
| | | | | | | for TTA audio, write BLOCKDURATION if known. Original commit message from CVS: Write track and segment UIDs, write muxing date, write TRACKDEFAULTDURATION for TTA audio, write BLOCKDURATION if known.
* Interpret BLOCKDURATION and set buffer duration accordingly, enable demuxing ↵Arwed v. Merkatz2004-08-251-0/+1
| | | | | | | | of TTA audio from matroska, fixes bugs #... Original commit message from CVS: Interpret BLOCKDURATION and set buffer duration accordingly, enable demuxing of TTA audio from matroska, fixes bugs #148950 and #148951.
* make log less verboseThomas Vander Stichele2004-07-181-0/+1
| | | | | Original commit message from CVS: make log less verbose
* gst/matroska/: Basic tag reading support.Ronald S. Bultje2004-05-011-1/+22
| | | | | | | | Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_metadata): * gst/matroska/matroska-ids.h: Basic tag reading support.
* *.h: Revert indentingJohan Dahlin2004-03-151-51/+41
| | | | | Original commit message from CVS: * *.h: Revert indenting
* gst-indentThomas Vander Stichele2004-03-141-41/+51
| | | | | Original commit message from CVS: gst-indent
* gst/matroska/: Add getcaps() function to fix capsnego...Ronald S. Bultje2004-01-031-0/+1
| | | | | | | | | | Original commit message from CVS: 2004-01-04 Ronald Bultje <rbultje@ronald.bitfreak.net> * gst/matroska/matroska-demux.c: (gst_matroska_demux_src_getcaps), (gst_matroska_demux_add_stream): * gst/matroska/matroska-ids.h: Add getcaps() function to fix capsnego...
* Riff, EBML, fourcc etc. work. Not fully finished, but better than what we ↵Ronald S. Bultje2003-12-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | used to have and definately worth a first b... Original commit message from CVS: Riff, EBML, fourcc etc. work. Not fully finished, but better than what we used to have and definately worth a first broad testing. I've revived rifflib. Rifflib used to be a bytestream-for-riff, which just dup'ed bytestream. I've rewritten rifflib to be a modern riff- chunk parser that uses bytestream fully, plus adds some extra functions so that riff file parsing becomes extremely easy. It also contains some small usability functions for strh/strf and metadata parsing. Note that it doesn't use the new tagging yet, that's a TODO. Avidemux has been rewritten to use this. I think we all agreed that avidemux was pretty much a big mess, which is because it used all sort of bytestream magic all around the place. It was just ugly. This is a lot nicer, very complete and safe. I think this is far more robust than what the old avidemux could ever have been. Of course, it might contain bugs, please let me know. EBML writing has also been implemented. This is useful for matroska. I'm intending to modify avidemux (with a riffwriter) similarly. Maybe I'll change wavparse/-enc too to use rifflib. Lastly, several plugins have been modified to use rifflib's fourcc parsing instead of their own. this puts fourcc parsing in one central place, which should make it a lot simpler to add new fourccs. We might want to move this to its own lib instead of rifflib. Enjoy!
* Add C-based local matroska/EBML plugin, remove libmatroska/libebml c++ oneRonald S. Bultje2003-11-211-0/+237
Original commit message from CVS: Add C-based local matroska/EBML plugin, remove libmatroska/libebml c++ one