Commit graph

1194 commits

Author SHA1 Message Date
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
Christian Schaller
1c484d3485 remove kio from spec
Original commit message from CVS:
remove kio from spec
2004-09-28 11:01:10 +00:00
Christian Schaller
eaebacec1d Remove non-working ugly kioplugin Markey has new and much improved one in Amarok which he will send upstream
Original commit message from CVS:
Remove non-working ugly kioplugin Markey has new and much improved one in Amarok which he will send upstream
2004-09-28 10:59:02 +00:00
Wim Taymans
b8b7209850 gst/tcp/gstmultifdsink.*: Make syncing to keyframes actually work for new clients and lagging clients.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_add),
(gst_multifdsink_remove), (gst_multifdsink_remove_client_link),
(is_sync_frame), (gst_multifdsink_client_queue_buffer),
(gst_multifdsink_new_client),
(gst_multifdsink_handle_client_write),
(gst_multifdsink_recover_client), (gst_multifdsink_queue_buffer),
(gst_multifdsink_handle_clients):
* gst/tcp/gstmultifdsink.h:
Make syncing to keyframes actually work for new clients and lagging
clients.
2004-09-27 15:09:34 +00:00
Iain Holmes
4b0f6eeab6 Implement event compression for new-media discont events
Original commit message from CVS:
Implement event compression for new-media discont events
2004-09-26 21:32:20 +00:00
Benjamin Otte
1592bec3c4 gst/debug/gstnavigationtest.*: make navigationtest display button-press and button-release events
Original commit message from CVS:
* gst/debug/gstnavigationtest.c: (gst_navigationtest_class_init),
(gst_navigationtest_handle_src_event), (draw_box_planar411),
(gst_navigationtest_planar411), (gst_navigationtest_change_state):
* gst/debug/gstnavigationtest.h:
make navigationtest display button-press and button-release events
2004-09-26 16:53:52 +00:00
Iain Holmes
1dc1e50ea0 Company's wisdom:
Original commit message from CVS:
Company's wisdom:
Events should be passed on using the sinkpad's default handler not the src
Seek events only go upstream, so send a discont downstream instead.
2004-09-26 15:06:35 +00:00
Christian Schaller
aedb2eb2bc remove changelog conflict indicators
Original commit message from CVS:
remove changelog conflict indicators
2004-09-25 14:54:01 +00:00
Christian Schaller
037cc62fc6 update spec to work with thomas and freshrpms rpms. Fix bug that hindered totem in building with it. Add new plugins
Original commit message from CVS:
update spec to work with thomas and freshrpms rpms. Fix bug that hindered totem in building with it. Add new plugins
2004-09-25 14:52:29 +00:00
Wim Taymans
17da09e8e5 gst/playback/gstplaybasebin.c: Only signal the no_more_pads signal when we have added the stream to our list.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (new_decoded_pad):
Only signal the no_more_pads signal when we have
added the stream to our list.
2004-09-24 17:33:00 +00:00
Wim Taymans
e213d1524c gst/playback/: Don't try to preroll or decode more than one audio/video track.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (remove_prerolls),
(new_decoded_pad):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (setup_sinks):
Don't try to preroll or decode more than one audio/video
track.
2004-09-24 16:38:28 +00:00
Ronald S. Bultje
ddea8bd02b gst/playback/gstplaybasebin.c: Throw error if we failed to find a suitable output. This should throw an error if we s...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_change_state):
Throw error if we failed to find a suitable output. This should
throw an error if we successfully set up a pipeline (e.g. because
we recognized a media file) but found no decodable streams in it
(e.g. because it contains only media stream types for which we
have no decoders, or because it's not a media type).
2004-09-24 16:01:45 +00:00
Ronald S. Bultje
0771c17fed ext/dirac/: Do something. Don't actually know if this works because I don't 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.
2004-09-23 14:59:22 +00:00
Zaheer Abbas Merali
18c8223577 testsuite/multifilesink/Makefile.am: fix typo
Original commit message from CVS:
2004-09-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* testsuite/multifilesink/Makefile.am:
fix typo
2004-09-23 12:11:15 +00:00
Julien Moutte
7041f651c9 sys/: Fix mistakes from thaytan's patches.
Original commit message from CVS:
2004-09-22  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_destroy):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls): Fix
mistakes from thaytan's patches.
2004-09-22 15:59:56 +00:00
Jan Schmidt
4e8b3cdb16 sys/ximage/ximagesink.c: For completeness, XSync in the destroy function as xvimage does.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_destroy):
For completeness, XSync in the destroy function as xvimage does.
2004-09-22 15:32:39 +00:00
Jan Schmidt
517b5e5951 ext/gdk_pixbuf/pixbufscale.c: Correct caps negotiation
Original commit message from CVS:
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_getcaps):
Correct caps negotiation
* gst/volume/gstvolume.c: (volume_chain_float),
(volume_chain_int16):
Modify debug output to be little more informative
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_destroy):
Add XSync calls after detaching from the shared memory segment to
avoid a crash.
2004-09-22 15:03:07 +00:00
Zaheer Abbas Merali
245fb79909 ext/: remove explicit newmedia support from oggmux and vorbisenc add debug category to vorbisenc
Original commit message from CVS:
2004-09-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* ext/ogg/gstoggmux.c: (gst_ogg_mux_init),
(gst_ogg_mux_next_buffer), (gst_ogg_mux_loop):
* ext/vorbis/vorbis.c: (plugin_init):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_init),
(gst_vorbisenc_chain):
* ext/vorbis/vorbisenc.h:
remove explicit newmedia support from oggmux and vorbisenc
add debug category to vorbisenc
* gst/multifilesink/gstmultifilesink.c:
(gst_multifilesink_class_init), (gst_multifilesink_init),
(gst_multifilesink_dispose), (gst_multifilesink_set_location),
(gst_multifilesink_set_property), (gst_multifilesink_next_file),
(gst_multifilesink_handle_event), (gst_multifilesink_chain),
(plugin_init):
* gst/multifilesink/gstmultifilesink.h:
add support for streamheader in multifilesink
2004-09-22 14:35:13 +00:00
Ronald S. Bultje
9242b3f2e7 gst/asfdemux/gstasfdemux.c: Prevent infinite loops. More correct error reporting.
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (_read_var_length), (_read_guid),
(gst_asf_demux_process_segment), (gst_asf_demux_handle_data),
(gst_asf_demux_process_chunk), (gst_asf_demux_handle_sink_event):
Prevent infinite loops. More correct error reporting.
* gst/auparse/gstauparse.c: (gst_auparse_chain):
Error out if negotiation fails.
* gst/playback/gstplaybasebin.c: (setup_source),
(gst_play_base_bin_change_state), (gst_play_base_bin_error),
(gst_play_base_bin_found_tag):
Error/tag forwarding. Pre-roll fixes for source errors on state
changes (e.g. "file does not exist") to prevent hangs.
2004-09-22 07:55:36 +00:00
Zaheer Abbas Merali
eaad31d7e6 testsuite/multifilesink/: New media tests
Original commit message from CVS:
2004-09-21  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* testsuite/multifilesink/Makefile.am:
* testsuite/multifilesink/lame_test.c: (gst_newmedia_base_init),
(gst_newmedia_class_init), (gst_newmedia_init),
(gst_newmedia_chain), (gst_newmedia_trigger), (test_format),
(newfile_signal), (test_signal), (main):
* testsuite/multifilesink/multifilesrc_test.c: (main):
* testsuite/multifilesink/oggtheora_test.c:
(gst_newmedia_base_init), (gst_newmedia_class_init),
(gst_newmedia_init), (gst_newmedia_chain), (gst_newmedia_trigger),
(test_format), (newfile_signal), (test_signal), (main):
* testsuite/multifilesink/oggvorbis_test.c:
(gst_newmedia_base_init), (gst_newmedia_class_init),
(gst_newmedia_init), (gst_newmedia_chain), (gst_newmedia_trigger),
(test_format), (newfile_signal), (test_signal), (main):
* testsuite/multifilesink/wavenc_test.c: (gst_newmedia_base_init),
(gst_newmedia_class_init), (gst_newmedia_init),
(gst_newmedia_chain), (gst_newmedia_trigger), (test_format),
(newfile_signal), (test_signal), (main):
New media tests
2004-09-21 18:41:15 +00:00
Christian Schaller
19f5e1f3a0 fix license information
Original commit message from CVS:
fix license information
2004-09-20 14:25:08 +00:00
Ronald S. Bultje
e138796b88 ext/mad/gstmad.c: Allow for mp3 rate/channels changes. However, only very conservatively. Reason that we *have* to en...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset),
(gst_mad_change_state):
Allow for mp3 rate/channels changes. However, only very
conservatively. Reason that we *have* to enable this is smiply
because the mad find_sync() function is not good enough, it will
regularly sync on random data as valid frames and therefore make
us provide random caps as *final* caps of the stream. The best fix
I could think of is to simply require several of the same stream
changes in a row before we change caps.
The actual testcase that works now is #
* ext/ogg/Makefile.am:
* ext/ogg/gstogg.c: (plugin_init):
* ext/ogg/gstogmparse.c:
OGM support (video only for now; I need an audio sample file).
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_base_init),
(gst_asf_demux_process_stream), (gst_asf_demux_video_caps),
(gst_asf_demux_add_video_stream):
WMV extradata.
* gst/playback/gstplaybasebin.c: (unknown_type):
Don't error out on single unknown-types after all. It's wrong.
If we found type of video and audio but not of a subtitle stream,
it will still error out (which is unwanted). Will find a better fix
later on.
* gst/typefind/gsttypefindfunctions.c: (ogmvideo_type_find),
(ogmaudio_type_find), (plugin_init):
OGM support.
2004-09-20 12:40:40 +00:00
Johan Dahlin
d56ae2abd1 ext/jpeg/gstjpegdec.c (gst_jpegdec_chain): Allocate the buffer after setting caps. Fixes mysterious segfault. Blessed...
Original commit message from CVS:
* ext/jpeg/gstjpegdec.c (gst_jpegdec_chain): Allocate the buffer
after setting caps. Fixes mysterious segfault. Blessed by Wim.
2004-09-20 09:58:34 +00:00
Zaheer Abbas Merali
11de7cdb8c gst/wavenc/gstwavenc.*: Added newmedia support to wavenc
Original commit message from CVS:
2004-09-19  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* gst/wavenc/gstwavenc.c: (gst_wavenc_init), (gst_wavenc_chain):
* gst/wavenc/gstwavenc.h:
Added newmedia support to wavenc
2004-09-19 17:55:04 +00:00
Wim Taymans
c79de85d57 gst/tcp/: Small cleanups in fdset.c
Original commit message from CVS:
* gst/tcp/gstfdset.c: (gst_fdset_fd_has_closed),
(gst_fdset_fd_has_error), (gst_fdset_fd_can_read),
(gst_fdset_fd_can_write), (gst_fdset_wait):
* gst/tcp/gstmultifdsink.c: (gst_client_status_get_type),
(gst_multifdsink_init), (gst_multifdsink_add),
(gst_multifdsink_remove), (gst_multifdsink_get_stats),
(gst_multifdsink_remove_client_link),
(gst_multifdsink_client_queue_buffer),
(gst_multifdsink_handle_client_write),
(gst_multifdsink_recover_client), (gst_multifdsink_handle_clients),
(gst_multifdsink_close), (gst_multifdsink_change_state):
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcpserversink.c: (gst_tcpserversink_class_init),
(gst_tcpserversink_removed):
Small cleanups in fdset.c
Use a hastable to map fd to the client structure for faster
lookup in _remove and get_stats.
Added virtual function to close the fds.
Handle clients even when the select/poll call was unblocked because
of a command.
Implement syncing to keyframe in the recovery procedure.
2004-09-17 10:06:52 +00:00
Iain Holmes
a0317b4feb Free the caps used for the try
Original commit message from CVS:
Free the caps used for the try
2004-09-16 11:34:50 +00:00
Ronald S. Bultje
e167cdeaf1 gst/mpegstream/gstdvddemux.c: Caps are only set if the type of the stream is unknown, but this is initialized in ->in...
Original commit message from CVS:
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_get_audio_stream):
Caps are only set if the type of the stream is unknown, but this
is initialized in ->init_stream(), so set to UNKNOWN after calling
->init_stream() so that capsnego starts.
2004-09-15 21:43:05 +00:00
Ronald S. Bultje
b465cd10f1 gst/avi/gstavidemux.c: Just hardcode for raw audio then. AVI audio sucks.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query),
(gst_avi_demux_stream_data):
Just hardcode for raw audio then. AVI audio sucks.
2004-09-15 20:06:15 +00:00
Arwed v. Merkatz
bf5574d94a use audio/x-ttafile and audio/x-tta for tta instead of audio/x-tta and audio/x-raw-tta
Original commit message from CVS:
use audio/x-ttafile and audio/x-tta for tta instead of audio/x-tta and audio/x-raw-tta
2004-09-15 19:43:37 +00:00
Ronald S. Bultje
1bb35c3fa4 gst/avi/gstavidemux.c: Try to fix a/v sync issues.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query),
(gst_avi_demux_stream_data):
Try to fix a/v sync issues.
2004-09-15 19:31:47 +00:00
David Schleef
bbccf23eed configure.ac: remove NASM check, since we don't use it. Update dirac check to 0.4
Original commit message from CVS:
* configure.ac: remove NASM check, since we don't use it.  Update
dirac check to 0.4
* ext/dirac/gstdiracdec.cc: update to current 0.4 API
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link):
Initialized variables.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header), (qtdemux_parse), (qtdemux_parse_trak),
(gst_qtdemux_handle_esds), (qtdemux_audio_caps): Fix seeking, add
SVQ3 format
2004-09-15 19:29:24 +00:00
Ronald S. Bultje
9ce02e0a6c gst/avi/gstavidemux.*: Fix for compressed audio (mp3) timestamp generation. How did this ever work?
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query),
(gst_avi_demux_add_stream), (gst_avi_demux_stream_data):
* gst/avi/gstavidemux.h:
Fix for compressed audio (mp3) timestamp generation. How did this
ever work?
2004-09-15 17:14:34 +00:00
Ronald S. Bultje
63887ed630 gst/playback/gstplaybin.c: Volume is a double not a float.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_get_property):
Volume is a double not a float.
2004-09-15 16:48:43 +00:00
Wim Taymans
1fc7835095 gst/tcp/gstmultifdsink.c: Don't close the fd in multifdsink as we didn't open it in the first place. Some cleanups.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_remove_client_link),
(gst_multifdsink_handle_clients), (gst_multifdsink_change_state):
Don't close the fd in multifdsink as we didn't open it in the
first place. Some cleanups.
2004-09-15 16:03:14 +00:00
Wim Taymans
678795eedf ext/ogg/: Fix the case where the muxer would mark pages as delta frames when they are not (vorbis only ogg).
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_push):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_next_buffer),
(gst_ogg_mux_send_headers), (gst_ogg_mux_loop):
Fix the case where the muxer would mark pages as delta
frames when they are not (vorbis only ogg).
2004-09-15 15:37:35 +00:00
Ronald S. Bultje
7ab41eba04 gst/playback/gstplaybasebin.c: Handle the case where we failed to setup a clear pipeline. This will throw an error (o...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (state_change), (setup_source),
(gst_play_base_bin_change_state):
Handle the case where we failed to setup a clear pipeline. This
will throw an error (or EOS, another nice case) and if you don't
catch that, the app will wait for the signal forever (and thus
hang).
2004-09-15 08:35:17 +00:00
Ronald S. Bultje
cfe43f5cb7 ext/gnomevfs/: Use _uri_new() instead of _open(), so it doesn't take as long and
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssink.c:
(gst_gnomevfssink_uri_get_protocols):
* ext/gnomevfs/gstgnomevfssrc.c:
(gst_gnomevfssrc_uri_get_protocols):
* ext/gnomevfs/gstgnomevfsuri.c: (gst_gnomevfs_get_supported_uris):
* ext/gnomevfs/gstgnomevfsuri.h:
Use _uri_new() instead of _open(), so it doesn't take as long and
Christophe's computer won't hang.
* gst/playback/gstplaybasebin.c: (unknown_type):
Throw error on unknown media type, so apps actually display it.
2004-09-15 06:33:43 +00:00
Brian Cameron
818fb5f797 2004-09-14 Brian Cameron <brian.cameron@sun.com
Original commit message from CVS:
2004-09-14  Brian Cameron  <brian.cameron@sun.com

* tools/gst-launch-ext-m.m:  Changed ~ to $ENV{HOME} to allow
this script to work on Solaris since bash shell handles echo
differenly than bash.
2004-09-14 19:30:07 +00:00
Wim Taymans
4de7bdb3ba gst/playback/: Some more work on making sure seeking pauses the pipeline and that changing the uri actually does some...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (queue_overrun), (no_more_pads),
(setup_source), (gst_play_base_bin_set_property),
(gst_play_base_bin_add_element):
* gst/playback/gstplaybin.c: (gst_play_bin_send_event):
Some more work on making sure seeking pauses the pipeline and
that changing the uri actually does something.
2004-09-14 16:54:14 +00:00
Wim Taymans
167ec6f8fd gst/tcp/: Be a bit more paranoid when freeing memory.
Original commit message from CVS:
* gst/tcp/gstfdset.c: (gst_fdset_wait):
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_close):
* gst/tcp/gsttcpserversink.c: (gst_tcpserversink_init_send),
(gst_tcpserversink_close):
Be a bit more paranoid when freeing memory.
2004-09-14 14:03:14 +00:00
Ronald S. Bultje
84f449bd4b gst/qtdemux/qtdemux.c: Don't crash by dividing by zero (see sample movie in #126922).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Don't crash by dividing by zero (see sample movie in #126922).
2004-09-13 20:13:32 +00:00
Ronald S. Bultje
fe20ee4218 gst/qtdemux/qtdemux.c: Don't touch non-existing data (fixes crash on file in #140147).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Don't touch non-existing data (fixes crash on file in #140147).
2004-09-13 19:38:42 +00:00
Stéphane Loeuillet
e24bb3990d gst/mpegstream/gstmpegparse.c: fix synchronistation for streams recorded from digital PCR fixes bug #119376
Original commit message from CVS:
* gst/mpegstream/gstmpegparse.c:
fix synchronistation for streams recorded from digital PCR
fixes bug #119376
2004-09-13 18:56:32 +00:00
Ronald S. Bultje
fb76e59415 gst/playback/gstplaybasebin.c: Handle double disposals, and proper change of URIs.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
(gst_play_base_bin_dispose), (gst_play_base_bin_set_property):
Handle double disposals, and proper change of URIs.
2004-09-13 18:23:49 +00:00
Ronald S. Bultje
81ca2b2719 ext/gnomevfs/: Add URI support to Gnome-VFS plugins. Tries to load a fixed list of fake URIs to see which this versio...
Original commit message from CVS:
* ext/gnomevfs/Makefile.am:
* ext/gnomevfs/gstgnomevfs.c: (plugin_init):
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnomevfssink_get_type),
(gst_gnomevfssink_dispose), (gst_gnomevfssink_init),
(gst_gnomevfssink_uri_get_type),
(gst_gnomevfssink_uri_get_protocols),
(gst_gnomevfssink_uri_get_uri), (gst_gnomevfssink_uri_set_uri),
(gst_gnomevfssink_uri_handler_init),
(gst_gnomevfssink_set_property), (gst_gnomevfssink_get_property),
(gst_gnomevfssink_open_file), (gst_gnomevfssink_close_file):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_get_type),
(gst_gnomevfssrc_init), (gst_gnomevfssrc_dispose),
(gst_gnomevfssrc_uri_get_type),
(gst_gnomevfssrc_uri_get_protocols), (gst_gnomevfssrc_uri_get_uri),
(gst_gnomevfssrc_uri_set_uri), (gst_gnomevfssrc_uri_handler_init),
(gst_gnomevfssrc_set_property), (gst_gnomevfssrc_get_property),
(gst_gnomevfssrc_open_file), (gst_gnomevfssrc_close_file):
* ext/gnomevfs/gstgnomevfsuri.c: (gst_gnomevfs_get_supported_uris):
* ext/gnomevfs/gstgnomevfsuri.h:
Add URI support to Gnome-VFS plugins. Tries to load a fixed list
of fake URIs to see which this version of Gnome-VFS likes, and
uses that for the Gst-URI interface. Makes playbin support http://
streams. Also fix up some stupid behaviour in gnomevfssrc.
2004-09-13 17:33:18 +00:00
Ronald S. Bultje
56319357ff ext/alsa/gstalsamixer.c: Update mixer (to sync with other sessions) if we try to obtain a new value. This makes alsam...
Original commit message from CVS:
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_update),
(gst_alsa_mixer_get_volume), (gst_alsa_mixer_set_volume),
(gst_alsa_mixer_set_mute), (gst_alsa_mixer_set_record),
(gst_alsa_mixer_set_option), (gst_alsa_mixer_get_option):
Update mixer (to sync with other sessions) if we try to obtain
a new value. This makes alsamixer work accross applications.
* ext/alsa/gstalsasink.c: (gst_alsa_sink_get_time):
Only call sync functions if we're running, else alsalib asserts.
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query):
Sometimes fails to compile. Possibly a gcc bug.
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_audio_element):
Add a reference to an application-provided object, because we lose
this same reference if we add it to the bin. If we don't do this,
we can only use this object once and thus crash if we go from
ready to playing, back to ready and back to playing again.
Also add an audioscale element because several cheap soundcards -
like mine - don't support all samplerates.
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get),
(gst_ximagesink_xcontext_clear), (gst_ximagesink_change_state):
Fix wrong order or PAR calls. Makes automatically obtained PAR
from the X server atually being used.
2004-09-13 09:24:00 +00:00
David Schleef
e77b1b0e38 Fixes: #151879, #151881, #151882, #151883, #151884, #151886, #151887, #152102, #152247.
Original commit message from CVS:
Fixes: #151879, #151881, #151882, #151883, #151884, #151886,
#151887, #152102, #152247.
* examples/indexing/indexmpeg.c: 64-bit warning fixes.
* examples/seeking/cdparanoia.c: same
* examples/seeking/cdplayer.c: same
* examples/seeking/seek.c: same
* examples/seeking/spider_seek.c: same
* examples/seeking/vorbisfile.c: same
* examples/stats/mp2ogg.c: same
* ext/esd/esdsink.c: (gst_esdsink_class_init),
(gst_esdsink_dispose): Dispose of element properly.
* ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_seek): 64-bit warning
fixes.
* ext/nas/nassink.c: (gst_nassink_class_init),
(gst_nassink_dispose): Dispose of element correctly.
* gst/wavenc/gstwavenc.c: (gst_wavenc_chain): Fix leak.
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls),
(gst_ximagesink_ximage_new), (gst_ximagesink_ximage_destroy):
Fix 64-bit warning.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_new), (gst_xvimagesink_xvimage_destroy):
Fix 64-bit warning.
2004-09-12 22:57:26 +00:00
Stéphane Loeuillet
2e89acbcea configure.ac: change speex detection as 1.1.6 now uses .pc/pkg-config and they changed their headers location.
Original commit message from CVS:
* configure.ac : change speex detection as 1.1.6 now uses
.pc/pkg-config and they changed their headers location.
2004-09-12 13:35:52 +00:00
Arwed v. Merkatz
514350e827 Write meta-seek information (seek heads).
Original commit message from CVS:
Write meta-seek information (seek heads).
2004-09-09 17:54:26 +00:00
Arwed v. Merkatz
0cc752a8ac Write multiple blocks/frames per cluster.
Original commit message from CVS:
Write multiple blocks/frames per cluster.
2004-09-09 15:40:06 +00:00
Scott Wheeler
49656f5fad Added a volume element to the gstplaybin pipeline and an element for setting it.
Original commit message from CVS:
Added a volume element to the gstplaybin pipeline and an element for setting
it.
2004-09-09 15:28:20 +00:00
Wim Taymans
53aaed648c gst/videomixer/videomixer.c: Copy timestamps from the master pad to the output buffers.
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_blend_buffers):
Copy timestamps from the master pad to the output buffers.
2004-09-07 13:40:52 +00:00