summaryrefslogtreecommitdiffstats
path: root/gst/matroska/ebml-read.c
Commit message (Collapse)AuthorAgeFilesLines
* gst/wavparse/gstwavparse.c: add ATRAC3 to STATIC CAPS to fix a warningStéphane Loeuillet2004-10-061-1/+1
| | | | | | | | | | Original commit message from CVS: * gst/wavparse/gstwavparse.c: add ATRAC3 to STATIC CAPS to fix a warning * gst/matroska/ebml-read.c: * gst-libs/gst/riff/riff-read.c: fix typos
* ext/dvdread/dvdreadsrc.c: Fix. Don't do one big huge loop around the whole ↵Ronald S. Bultje2004-10-011-50/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DVD, that will cache all data and thus eat... Original commit message from CVS: * ext/dvdread/dvdreadsrc.c: (dvdreadsrc_class_init), (dvdreadsrc_init), (dvdreadsrc_dispose), (dvdreadsrc_set_property), (dvdreadsrc_get_property), (_open), (_seek), (_read), (dvdreadsrc_get), (dvdreadsrc_open_file), (dvdreadsrc_change_state): Fix. Don't do one big huge loop around the whole DVD, that will cache all data and thus eat sizeof(dvd) (several GB) before we see something. * gst-libs/gst/riff/riff-read.c: (gst_riff_read_seek): Actually NULL'ify event after using it. * gst/matroska/ebml-read.c: (gst_ebml_read_use_event), (gst_ebml_read_handle_event), (gst_ebml_read_element_id), (gst_ebml_read_element_length), (gst_ebml_read_element_data), (gst_ebml_read_seek), (gst_ebml_read_skip): Handle events. * gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_base_init), (gst_dvd_demux_init), (gst_dvd_demux_get_audio_stream), (gst_dvd_demux_get_subpicture_stream), (gst_dvd_demux_plugin_init): Fix timing (this will probably break if I seek using menus, but I didn't get there yet). VOBs and normal DVDs should now work. Add a mpeg2-only pad with high rank so this get autoplugged for MPEG-2 movies. * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_base_init), (gst_mpeg_demux_class_init), (gst_mpeg_demux_init), (gst_mpeg_demux_new_output_pad), (gst_mpeg_demux_get_video_stream), (gst_mpeg_demux_get_audio_stream), (gst_mpeg_demux_get_private_stream), (gst_mpeg_demux_parse_packet), (gst_mpeg_demux_parse_pes), (gst_mpeg_demux_plugin_init): Use this as second rank for MPEG-1 and MPEG-2. Still use this for MPEG-1 but use dvddemux for MPEG-2. * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_class_init), (gst_mpeg_parse_init), (gst_mpeg_parse_new_pad), (gst_mpeg_parse_parse_packhead): Timing. Only add pad template if it exists. Add sink template from class and not from ourselves. This means we will always use the correct sink template even if it is not the one defined in this file.
* ext/dirac/: Do something. Don't actually know if this works because I don't ↵Ronald S. Bultje2004-09-231-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | have a demuxer yet. Original commit message from CVS: * ext/dirac/Makefile.am: * ext/dirac/gstdirac.cc: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracdec.h: Do something. Don't actually know if this works because I don't have a demuxer yet. * ext/gsm/gstgsmdec.c: (gst_gsmdec_getcaps): Add channels=1 to caps returned from _getcaps(). * ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_get_type), (gst_ogm_video_parse_get_type), (gst_ogm_audio_parse_base_init), (gst_ogm_video_parse_base_init), (gst_ogm_parse_init), (gst_ogm_audio_parse_init), (gst_ogm_video_parse_init), (gst_ogm_parse_sink_convert), (gst_ogm_parse_chain), (gst_ogm_parse_change_state): Separate between audio/video so ogmaudioparse actually uses the audio pad templates. Both audio and video work now, including autoplugging. Also use sometimes-srcpad hack. * gst-libs/gst/riff/riff-read.c: (gst_riff_read_seek): Handle events better. Don't hang on infinite loops. * gst/avi/gstavidemux.c: (gst_avi_demux_class_init), (gst_avi_demux_init), (gst_avi_demux_reset), (gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query), (gst_avi_demux_stream_header), (gst_avi_demux_stream_data), (gst_avi_demux_change_state): * gst/avi/gstavidemux.h: Improve A/V sync. Still not perfect. * gst/matroska/ebml-read.c: (gst_ebml_read_seek), (gst_ebml_read_skip): Handle events better. * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event), (gst_qtdemux_loop_header), (qtdemux_parse_trak), (qtdemux_audio_caps): Add IMA4. Improve event handling. Save offset after a seek when the headers are at the end of the file so that we don't end up in an infinite loop. * gst/typefind/gsttypefindfunctions.c: (qt_type_find): Add low-priority typefind support for files with no length.
* Write track and segment UIDs, write muxing date, write TRACKDEFAULTDURATION ↵Arwed v. Merkatz2004-09-011-2/+7
| | | | | | | 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.
* Handle EOS correctly.Arwed v. Merkatz2004-08-271-2/+6
| | | | | Original commit message from CVS: Handle EOS correctly.
* don't mix tabs and spacesThomas Vander Stichele2004-03-151-77/+77
| | | | | Original commit message from CVS: don't mix tabs and spaces
* gst-indentThomas Vander Stichele2004-03-141-136/+117
| | | | | Original commit message from CVS: gst-indent
* change NULL to (NULL) for GST_ELEMENT_ERRORThomas Vander Stichele2004-02-021-13/+13
| | | | | | Original commit message from CVS: change NULL to (NULL) for GST_ELEMENT_ERROR Make sure errors end with "."
* gst/: Fix event handling.Ronald S. Bultje2004-01-301-16/+20
| | | | | | | | | | | Original commit message from CVS: 2004-01-30 Ronald Bultje <rbultje@ronald.bitfreak.net> * gst-libs/gst/riff/riff-read.c: (gst_riff_peek_head), (gst_riff_read_seek): * gst/matroska/ebml-read.c: (gst_ebml_read_element_id), (gst_ebml_read_seek): Fix event handling.
* GST_ELEMENT_ERRORThomas Vander Stichele2004-01-291-14/+14
| | | | | Original commit message from CVS: GST_ELEMENT_ERROR
* use new error signal and classificationThomas Vander Stichele2004-01-181-39/+34
| | | | | Original commit message from CVS: use new error signal and classification
* gst/matroska/: fix signed integer reading/writing.Ronald S. Bultje2004-01-021-5/+10
| | | | | | | | | Original commit message from CVS: 2004-01-02 Ronald Bultje <rbultje@ronald.bitfreak.net> * gst/matroska/ebml-read.c: (gst_ebml_read_sint): * gst/matroska/ebml-write.c: (gst_ebml_write_sint): fix signed integer reading/writing.
* Riff, EBML, fourcc etc. work. Not fully finished, but better than what we ↵Ronald S. Bultje2003-12-071-26/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/+702
Original commit message from CVS: Add C-based local matroska/EBML plugin, remove libmatroska/libebml c++ one