Commit graph

1145 commits

Author SHA1 Message Date
Wim Taymans
4f3ac6ff1e ext/cdparanoia/gstcdparanoia.*: Added reworked patch from #154903 from milosz derezynski. This adds the cdda://<track...
Original commit message from CVS:
* ext/cdparanoia/gstcdparanoia.c: (_do_init),
(cdparanoia_base_init), (cdparanoia_class_init), (cdparanoia_init),
(cdparanoia_dispose), (cdparanoia_get), (cdparanoia_change_state),
(cdparanoia_convert), (cdparanoia_uri_get_type),
(cdparanoia_uri_get_protocols), (cdparanoia_uri_get_uri),
(cdparanoia_uri_set_uri), (cdparanoia_uri_handler_init):
* ext/cdparanoia/gstcdparanoia.h:
Added reworked patch from #154903 from milosz derezynski. This
adds the cdda://<tracknum> uri.
2004-10-08 17:02:51 +00:00
Wim Taymans
ac2150000e gst/playback/: Reuse the audio and video bins.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (find_compatibles), (close_pad_link),
(try_to_link_1), (no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(unknown_type), (gst_play_base_bin_remove_element),
(gst_play_base_bin_link_stream):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_init),
(gst_play_bin_set_property), (gen_video_element),
(gen_audio_element), (setup_sinks):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type),
(gst_stream_info_get_type), (gst_stream_info_class_init),
(gst_stream_info_init), (gst_stream_info_new),
(gst_stream_info_dispose), (stream_info_mute_pad),
(gst_stream_info_set_property), (gst_stream_info_get_property):
* gst/playback/gststreaminfo.h:
Reuse the audio and video bins.
Some internal cleanups in the stream selection code.
2004-10-08 11:30:32 +00:00
Julien Moutte
4b6fdb2fb0 sys/: Reverting Ronald's changes as the issue is not coming from those elements. Moreover these elements should not k...
Original commit message from CVS:
2004-10-08  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_sink_link),
(gst_ximagesink_set_xwindow_id), (gst_ximagesink_init):
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_sink_link),
(gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_init):
* sys/xvimage/xvimagesink.h: Reverting Ronald's changes as the issue is
not coming from those elements. Moreover these elements should not keep
the xid they have been given when in NULL state.
2004-10-08 11:26:48 +00:00
Ronald S. Bultje
7c36c4329a sys/: Actually only create a new toplevel window if we're not gonna embed it right after.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_sink_link),
(gst_ximagesink_set_xwindow_id), (gst_ximagesink_init):
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_sink_link),
(gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_init):
* sys/xvimage/xvimagesink.h:
Actually only create a new toplevel window if we're not gonna
embed it right after.
2004-10-07 16:22:30 +00:00
Wim Taymans
73a2119f9b gst/playback/: Implement muting/unmuting of streams, mute streams that are not used.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (play_base_bin_mute_pad),
(gst_play_base_bin_mute_stream), (gst_play_base_bin_link_stream):
* gst/playback/gstplaybin.c: (setup_sinks):
Implement muting/unmuting of streams, mute streams that are not
used.
2004-10-07 11:14:46 +00:00
Wim Taymans
4c403e5286 gst/typefind/gsttypefindfunctions.c: Added lame audio/x-ac3 typefind function.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (ac3_type_find),
(plugin_init):
Added lame audio/x-ac3 typefind function.
2004-10-07 09:56:43 +00:00
Thomas Vander Stichele
587b540373 bump nano to cvs
Original commit message from CVS:
bump nano to cvs
2004-10-06 17:10:48 +00:00
Thomas Vander Stichele
930d008b73 releasing
Original commit message from CVS:
releasing
2004-10-06 17:02:14 +00:00
Wim Taymans
4933cf0bd0 gst/playback/: Do not signal the no_more_pads after the first pad when we are plugging a non dynamic element with mul...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(find_compatibles), (close_pad_link), (try_to_link_1), (new_pad),
(no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (new_decoded_pad):
* gst/playback/gstplaybin.c: (gen_video_element):
Do not signal the no_more_pads after the first pad when
we are plugging a non dynamic element with multiple
output pads (like swfdec, dvdec, ...).
2004-10-06 16:33:05 +00:00
Thomas Vander Stichele
c5fe016f32 bump for prerelease
Original commit message from CVS:
bump for prerelease
2004-10-06 15:56:04 +00:00
Stéphane Loeuillet
c26602d02d gst/wavparse/gstwavparse.c: add ATRAC3 to STATIC CAPS to fix a warning
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
2004-10-06 15:12:08 +00:00
Stéphane Loeuillet
b425777f9e gst-libs/gst/riff/riff-media.c: generate caps for ATRAC3 audio streams
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
generate caps for ATRAC3 audio streams

* gst/realmedia/rmdemux.c:
generate caps for ATRAC3 audio streams
2004-10-06 14:18:13 +00:00
Stéphane Loeuillet
01d9422a71 gst/wavparse/Makefile.am gst/wavparse/riff.h gst/wavparse/wavparse.vcproj riff.h removal (unused and duplication with...
Original commit message from CVS:
* gst/wavparse/Makefile.am
* gst/wavparse/riff.h
* gst/wavparse/wavparse.vcproj
riff.h removal (unused and duplication with riff-ids.h)
2004-10-06 14:15:25 +00:00
Stéphane Loeuillet
5948a7f2f0 gst/wavparse/gstwavparse.h remove duplicated defines for audio codec codes gst-libs/gst/riff/riff-ids.h
Original commit message from CVS:
* gst/wavparse/gstwavparse.h
remove duplicated defines for audio codec codes

* gst-libs/gst/riff/riff-ids.h
* gst/wavenc/riff.h:
add "4CC" code for ATRAC3 audio streams
add "4CC" code for ITU_G721_ADPCM (unused for now)
2004-10-06 14:11:56 +00:00
Wim Taymans
a18ff866aa gst/flx/gstflxdec.c: Actually _do_ negotiation. Pass gdouble as arg instead of guint64 for the framerate.
Original commit message from CVS:
* gst/flx/gstflxdec.c: (gst_flxdec_init), (gst_flxdec_loop):
Actually _do_ negotiation. Pass gdouble as arg instead
of guint64 for the framerate.
2004-10-06 13:56:07 +00:00
Wim Taymans
623cb0cc6a gst/playback/: Set state on newly added element to READY so that negotiation can happen ASAP.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(find_compatibles), (close_pad_link), (try_to_link_1),
(no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (new_decoded_pad):
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_audio_element):
Set state on newly added element to READY so that negotiation
can happen ASAP.
Addes some more debug info.
Do not try to plug pads with multiple caps structures or ANY
because it is too dangerous since we do not do dynamic
replugging.
2004-10-06 09:51:36 +00:00
Thomas Vander Stichele
71bd26a0bd add Oriya translation, yippee
Original commit message from CVS:
add Oriya translation, yippee
2004-10-06 09:16:19 +00:00
Ronald S. Bultje
84cbeb45ac gst/avi/gstavidemux.c: Prevent overwrite of size member. Makes audio sound crappy.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_massage_index):
Prevent overwrite of size member. Makes audio sound crappy.
2004-10-05 15:28:08 +00:00
Stéphane Loeuillet
8d8550a219 - add .rmvb to the list of RealMedia known file extensions
Original commit message from CVS:
- add .rmvb to the list of RealMedia known file extensions
2004-10-05 13:07:08 +00:00
Wim Taymans
423ff66a04 ext/libmng/gstmngdec.c: Set the framerate correctly.
Original commit message from CVS:
* ext/libmng/gstmngdec.c: (gst_mngdec_loop), (mngdec_error),
(mngdec_openstream), (mngdec_closestream),
(mngdec_handle_sink_event), (mngdec_readdata),
(mngdec_gettickcount), (mngdec_settimer), (mngdec_processheader),
(mngdec_getcanvasline), (mngdec_refresh),
(gst_mngdec_change_state):
Set the framerate correctly.
2004-10-05 10:41:08 +00:00
Ronald S. Bultje
05a888f62e gst/avi/gstavidemux.c: There was something wrong with the index massaging.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_massage_index):
There was something wrong with the index massaging.
2004-10-04 17:29:27 +00:00
Wim Taymans
e09c7e64bf ext/jpeg/: Updated smoke, new bitstream, allows embedding in ogg.
Original commit message from CVS:
* ext/jpeg/gstjpeg.c: (smoke_type_find), (plugin_init):
* ext/jpeg/gstsmokedec.c: (gst_smokedec_init),
(gst_smokedec_chain):
* ext/jpeg/gstsmokedec.h:
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_class_init),
(gst_smokeenc_init), (gst_smokeenc_resync), (gst_smokeenc_chain):
* ext/jpeg/gstsmokeenc.h:
* ext/jpeg/smokecodec.c: (smokecodec_encode_new),
(smokecodec_decode_new), (smokecodec_info_free),
(smokecodec_set_quality), (smokecodec_get_quality),
(smokecodec_set_threshold), (smokecodec_get_threshold),
(smokecodec_set_bitrate), (smokecodec_get_bitrate),
(find_best_size), (abs_diff), (put), (smokecodec_encode_id),
(smokecodec_encode), (smokecodec_parse_id),
(smokecodec_parse_header), (smokecodec_decode):
* ext/jpeg/smokecodec.h:
* ext/jpeg/smokeformat.h:
Updated smoke, new bitstream, allows embedding in ogg.
2004-10-04 16:53:48 +00:00
Ronald S. Bultje
3f89c5462c gst/avi/gstavidemux.c: Fix seeking in some files. All this code is no longer needed (and actually breaks stuff) becau...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event):
Fix seeking in some files. All this code is no longer needed (and
actually breaks stuff) because we now synchronize the full index
right when reading the header.
2004-10-04 16:48:25 +00:00
Wim Taymans
7977b5531f configure.ac: configure update for libmng.
Original commit message from CVS:
* configure.ac:
configure update for libmng.
2004-10-04 16:38:45 +00:00
Wim Taymans
a861cd2bf9 ext/libmng/: Added basic MNG decoder. Needs more work. The encoder does not work yet.
Original commit message from CVS:
* ext/libmng/Makefile.am:
* ext/libmng/gstmng.c: (plugin_init):
* ext/libmng/gstmng.h:
* ext/libmng/gstmngdec.c: (gst_mngdec_get_type),
(gst_mngdec_base_init), (gst_mngdec_class_init),
(gst_mngdec_sinklink), (gst_mngdec_init), (gst_mngdec_src_getcaps),
(gst_mngdec_loop), (gst_mngdec_get_property),
(gst_mngdec_set_property), (mngdec_error), (mngdec_openstream),
(mngdec_closestream), (mngdec_handle_sink_event),
(mngdec_readdata), (mngdec_gettickcount), (mngdec_settimer),
(mngdec_processheader), (mngdec_getcanvasline), (mngdec_refresh),
(gst_mngdec_change_state):
* ext/libmng/gstmngdec.h:
* ext/libmng/gstmngenc.c: (gst_mngenc_get_type),
(mng_caps_factory), (raw_caps_factory), (gst_mngenc_base_init),
(gst_mngenc_class_init), (gst_mngenc_sinklink), (gst_mngenc_init),
(gst_mngenc_chain), (gst_mngenc_get_property),
(gst_mngenc_set_property):
* ext/libmng/gstmngenc.h:
Added basic MNG decoder. Needs more work. The encoder does
not work yet.
2004-10-04 16:37:06 +00:00
Ronald S. Bultje
a8df7eeb1e gst/realmedia/rmdemux.c: Don't hang on length=0 chunks. Some negotiation fixes. Signal no-more-pads.
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_handle_sink_event),
(gst_rmdemux_loop), (gst_rmdemux_add_stream),
(gst_rmdemux_parse_mdpr), (gst_rmdemux_dump_mdpr):
Don't hang on length=0 chunks. Some negotiation fixes. Signal
no-more-pads.
2004-10-04 16:10:40 +00:00
Thomas Vander Stichele
351a87672c you need 1.0.4 of speex
Original commit message from CVS:
you need 1.0.4 of speex
2004-10-04 15:11:49 +00:00
Iain Holmes
df1685e907 Revert the changes to the speex include file locations.
Original commit message from CVS:
Revert the changes to the speex include file locations.
2004-10-04 14:54:49 +00:00
Ronald S. Bultje
20adaa3836 gst/realmedia/rmdemux.c: Use debug category, fix EOS handling. filesrc ! rmdemux now works.
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_class_init),
(gst_rmdemux_init), (gst_rmdemux_handle_sink_event),
(gst_rmdemux_loop), (gst_rmdemux_add_stream), (re_hexdump_bytes),
(re_dump_pascal_string), (gst_rmdemux_dump__rmf),
(gst_rmdemux_dump_prop), (gst_rmdemux_parse_mdpr),
(gst_rmdemux_dump_mdpr), (gst_rmdemux_dump_indx),
(gst_rmdemux_dump_data):
Use debug category, fix EOS handling. filesrc ! rmdemux now
works.
2004-10-04 14:43:22 +00:00
Ronald S. Bultje
0b9b57bd41 gst/avi/gstavidemux.c: Improve allocation, cutting and sorting of the index. How takes a few seconds instead of minutes.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_index),
(gst_avi_demux_stream_scan), (sort), (gst_avi_demux_massage_index),
(gst_avi_demux_stream_header), (gst_avi_demux_stream_data):
Improve allocation, cutting and sorting of the index. How takes a
few seconds instead of minutes.
2004-10-04 13:32:20 +00:00
Christophe Fergeau
b1226d35eb gst/realmedia/rmdemux.c: fixed compilation
Original commit message from CVS:
2004-10-03  Christophe Fergeau  <teuf@gnome.org>

* gst/realmedia/rmdemux.c: (gst_rmdemux_parse_mdpr):
fixed compilation
2004-10-03 17:14:14 +00:00
Ronald S. Bultje
36979491f1 gst-libs/gst/riff/riff-media.c: Add wing commander format mimetype/fourccs.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_template_caps):
Add wing commander format mimetype/fourccs.
* gst/avi/gstavidemux.c: (gst_avi_demux_massage_index):
Don't crash if some value is 0.
2004-10-02 20:27:03 +00:00
Ronald S. Bultje
da9c830916 gst-libs/gst/riff/riff-media.c: Add DIB fourcc (raw, palettized 8-bit RGB).
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_template_caps):
Add DIB fourcc (raw, palettized 8-bit RGB).
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data):
Oops, fix strf_data reading bug.
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Use a non-NULL tag.
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Time for hacks. Sorry Dave. At least one quicktime movie (a
trailer) that I've encountered contains multiple video tracks.
One of those is the actual video track, the other are one-frame
tracks (images). Unfortunately, the number of frames according
to the trak header is 1 for each, so that doesn't help. So
instead, I look at the duration and discard tracks with a
duration shorter than 20% of the length of the stream. Better
than nothing.
2004-10-02 14:10:19 +00:00
Phil Blundell
0d554c4a89 commiting patch from Phil Blundell
Original commit message from CVS:
commiting patch from Phil Blundell
2004-10-01 17:01:48 +00:00
Wim Taymans
5e3b24d34b ext/speex/gstspeexdec.c: Small cleanups.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (gst_speex_dec_class_init),
(speex_dec_get_formats), (speex_dec_convert),
(speex_dec_src_query), (speex_dec_src_event), (speex_dec_event),
(speex_dec_chain), (gst_speexdec_get_property),
(gst_speexdec_set_property):
Small cleanups.
2004-10-01 16:15:23 +00:00
Wim Taymans
d68a6c54e0 gst/wavparse/gstwavparse.*: Added some more debugging info.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (gst_wavparse_class_init),
(gst_wavparse_stream_init), (gst_wavparse_fmt),
(gst_wavparse_other), (gst_wavparse_loop),
(gst_wavparse_pad_convert), (gst_wavparse_pad_query),
(gst_wavparse_srcpad_event):
* gst/wavparse/gstwavparse.h:
Added some more debugging info.
Fix the case where the length of the file is 0.
Make sure we seek to sample borders.
2004-10-01 16:01:51 +00:00
Wim Taymans
1862dfd750 gst/playback/: Add some debug info to decodebin, update README
Original commit message from CVS:
* gst/playback/README:
* gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter),
(gst_decode_bin_init), (find_compatibles), (close_pad_link),
(try_to_link_1), (no_more_pads), (close_link), (type_found):
Add some debug info to decodebin, update README
2004-10-01 15:57:53 +00:00
Ronald S. Bultje
48e9b40dde ext/dvdnav/dvdnavsrc.c: Don't use g_print(); use GST_DEBUG().
Original commit message from CVS:
* ext/dvdnav/dvdnavsrc.c: (dvdnav_handle_navigation_event):
Don't use g_print(); use GST_DEBUG().
2004-10-01 13:30:09 +00:00
Ronald S. Bultje
173b142887 ext/ogg/gstoggmux.c: Handle EOS properly.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_next_buffer),
(gst_ogg_mux_queue_pads):
Handle EOS properly.
2004-10-01 13:28:29 +00:00
Ronald S. Bultje
cebbba83a9 ext/faad/gstfaad.*: Allow playback of raw (unframed) MPEG AAC files (#148993).
Original commit message from CVS:
Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_sinkconnect),
(gst_faad_chain), (gst_faad_change_state):
* ext/faad/gstfaad.h:
Allow playback of raw (unframed) MPEG AAC files (#148993).
2004-10-01 13:00:41 +00:00
Ronald S. Bultje
060ae9b59b gst/wavparse/gstwavparse.c: Throw error if we didn't recognize the stream. Fixes #152289.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/wavparse/gstwavparse.c: (gst_wavparse_fmt):
Throw error if we didn't recognize the stream. Fixes #152289.
2004-10-01 12:39:08 +00:00
Ronald S. Bultje
ff21ac1453 gst/videoscale/gstvideoscale.c: Fix negotiation.
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c: (gst_videoscale_link):
Fix negotiation.
2004-10-01 12:32:25 +00:00
Ronald S. Bultje
1364d7cbee gst/wavparse/gstwavparse.c: Fix memleak.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/wavparse/gstwavparse.c: (gst_wavparse_fmt):
Fix memleak.
2004-10-01 11:53:19 +00:00
Ronald S. Bultje
e2513e5415 sys/sunaudio/gstsunaudio.c: Solve #152805.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* sys/sunaudio/gstsunaudio.c: (gst_sunaudiosink_setparams):
Solve #152805.
* sys/sunaudio/gstsunmixer.c: (gst_sunaudiomixer_set_mute):
Solve 152806.
2004-10-01 11:44:22 +00:00
Ronald S. Bultje
1b6c3e0efa gst-libs/gst/riff/riff-media.c: Add codec_data handling (like asfdemux used to do).
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_audio_caps_with_data):
Add codec_data handling (like asfdemux used to do).
* gst/asfdemux/gstasf.c: (plugin_init):
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_base_init),
(gst_asf_demux_add_audio_stream), (gst_asf_demux_add_video_stream):
Use riff-media for caps creation instead of our own (mostly
broken) copy of its functions.
2004-10-01 10:50:57 +00:00
Ronald S. Bultje
18d9e0f874 sys/v4l/v4lsrc_calls.c: Don't actually error out if we get another return value than
Original commit message from CVS:
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_try_capture):
Don't actually error out if we get another return value than
-EINVAL. Opposite to what I first thought, drivers have random
return values for this, although -EINVAL is the expected return
value. Since this is not fatal, we shouldn't use
GST_ELEMENT_ERROR() but just GST_ERROR_OBJECT().
2004-10-01 10:02:42 +00:00
Ronald S. Bultje
f6aebbe1a3 ext/dvdread/dvdreadsrc.c: Fix. Don't do one big huge loop around the whole 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.
2004-10-01 08:42:56 +00:00
Wim Taymans
afee4ebf35 gst/mpegstream/: Fix playback of mpeg again, timestamps where screwed up by patch 1.61.
Original commit message from CVS:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_packet),
(gst_mpeg_demux_parse_pes):
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_parse_packhead):
Fix playback of mpeg again, timestamps where screwed up by
patch 1.61.
2004-09-29 19:09:25 +00:00
Ronald S. Bultje
2b6b70f42c ext/flac/gstflacdec.c: Only return true if we actually filled something in. Prevents player applications from showing...
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flacdec_src_query):
Only return true if we actually filled something in. Prevents
player applications from showing a random length for flac files.
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_class_init),
(gst_riff_read_use_event), (gst_riff_read_handle_event),
(gst_riff_read_seek), (gst_riff_read_skip), (gst_riff_read_strh),
(gst_riff_read_strf_vids_with_data),
(gst_riff_read_strf_auds_with_data), (gst_riff_read_strf_iavs):
OK, ok, so I implemented event handling. Apparently it's normal
that we receive random events at random points without asking
for it.
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query),
(gst_avi_demux_handle_src_event), (gst_avi_demux_stream_index),
(gst_avi_demux_sync), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index), (gst_avi_demux_stream_header),
(gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry),
(gst_avi_demux_stream_data), (gst_avi_demux_loop):
* gst/avi/gstavidemux.h:
Implement non-lineair chunk handling and subchunk processing.
The first solves playback of AVI files where the audio and video
data of individual buffers that we read are not synchronized.
This should not happen according to the wonderful AVI specs, but
of course it does happen in reality. It is also a prerequisite for
the second. Subchunk processing allows us to cut chunks in small
pieces and process each of these pieces separately. This is
required because I've seen several AVI files with incredibly large
audio chunks, even some files with only one audio chunk for the
whole file. This allows for proper playback including seeking.
This patch is supposed to fix all AVI A/V sync issues.
* gst/flx/gstflxdec.c: (gst_flxdec_class_init),
(flx_decode_chunks), (flx_decode_color), (gst_flxdec_loop):
Work.
* gst/modplug/gstmodplug.cc:
Proper return value setting for the query() function.
* gst/playback/gstplaybasebin.c: (setup_source):
Being in non-playing state (after, e.g., EOS) is not necessarily
a bad thing. Allow for that. This fixes playback of short files.
They don't actually playback fully now, because the clock already
runs. This means that small files (<500kB) with a small length
(<2sec) will still not or barely play. Other files, such as mod
or flx, will work correctly, however.
2004-09-29 09:45:40 +00:00
Wim Taymans
c609bdf5cb ext/speex/: Rewrote speex encoder, make sure it can be embedded in ogg.
Original commit message from CVS:
* ext/speex/gstspeex.c: (plugin_init):
* ext/speex/gstspeexdec.c: (gst_speex_dec_base_init),
(gst_speex_dec_class_init), (speex_dec_get_formats),
(speex_get_event_masks), (speex_get_query_types),
(gst_speex_dec_init), (speex_dec_convert), (speex_dec_src_query),
(speex_dec_src_event), (speex_dec_event), (speex_dec_chain),
(gst_speexdec_get_property), (gst_speexdec_set_property),
(speex_dec_change_state):
* ext/speex/gstspeexdec.h:
* ext/speex/gstspeexenc.c: (gst_speexenc_get_formats),
(gst_speexenc_get_type), (speex_caps_factory), (raw_caps_factory),
(gst_speexenc_base_init), (gst_speexenc_class_init),
(gst_speexenc_sinkconnect), (gst_speexenc_convert_src),
(gst_speexenc_convert_sink), (gst_speexenc_get_query_types),
(gst_speexenc_src_query), (gst_speexenc_init),
(gst_speexenc_get_tag_value), (comment_init), (comment_add),
(gst_speexenc_metadata_set1), (gst_speexenc_set_metadata),
(gst_speexenc_setup), (gst_speexenc_buffer_from_data),
(gst_speexenc_push_buffer), (gst_speexenc_set_header_on_caps),
(gst_speexenc_chain), (gst_speexenc_get_property),
(gst_speexenc_set_property), (gst_speexenc_change_state):
* ext/speex/gstspeexenc.h:
Rewrote speex encoder, make sure it can be embedded in ogg.
Implemented speex decoder.
2004-09-28 16:44:12 +00:00