Commit graph

24 commits

Author SHA1 Message Date
Sebastian Dröge
713f6ca8d5 cddabasesrc: Allow to specify the device name in the URI
The allowed URI scheme is now:
cdda://(device#)?track

Also allow every combination of uppercase and lowercase
characters for the protocol part.

Fixes bug #321532.
2009-08-06 06:43:34 +02:00
Bastien Nocera
9c508ba458 cddabasesrc: Remove copy of sha1 digest
Remove our copy of sha1 digest now that we depend on glib 2.16.
Fixes #536313
2009-05-26 11:11:03 +02:00
Tim-Philipp Müller
8efe6108c4 cddabasesrc: fix posting of discid tags after MERGE_MODE_REPLACE_ALL changes in core
Don't use REPLACE_ALL merge mode when that's not really what we want,
as now that REPLACE_ALL actually does what it's supposed to do in
core, we drop tags we wanted to keep, such as the various disc id
tags. Add unit test for this as well. Fixes #579463.
2009-04-19 18:15:28 +01:00
Sebastian Dröge
ba03cb6080 gst-libs/gst/cdda/gstcddabasesrc.*: Make the GType of GstCDDABaseSrcMode public for bindings.
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
* gst-libs/gst/cdda/gstcddabasesrc.h:
Make the GType of GstCDDABaseSrcMode public for bindings.
Fixes bug #566837.
2009-01-07 10:50:15 +00:00
Edward Hervey
c5ae184910 gst-libs/gst/cdda/gstcddabasesrc.c: Remove erroneous gst_buffer_ref().
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_handle_event):
Remove erroneous gst_buffer_ref().
* tests/check/libs/rtp.c: (GST_START_TEST):
Don't forget to unref the buffer once you're done with it.
2008-12-12 19:41:28 +00:00
Wim Taymans
2855fb48ad gst-libs/gst/cdda/gstcddabasesrc.c: Fix EOS condition and track addition check, the track.end sector is included in t...
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_add_track), (gst_cdda_base_src_create):
Fix EOS condition and track addition check, the track.end sector is
included in the track. Fixes #533265.
2008-05-28 15:48:33 +00:00
Sebastian Dröge
49467c4a63 gst-libs/gst/cdda/: Use GLib's base64 implementation instead of our own.
Original commit message from CVS:
* gst-libs/gst/cdda/Makefile.am:
* gst-libs/gst/cdda/base64.c:
* gst-libs/gst/cdda/base64.h:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cddabasesrc_calculate_musicbrainz_discid):
Use GLib's base64 implementation instead of our own.
2008-04-03 06:39:27 +00:00
Sebastian Dröge
49deb0c05d Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u...
Original commit message from CVS:
* configure.ac:
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_class_init):
* ext/alsa/gstalsasink.c: (gst_alsasink_class_init):
* ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init):
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_src_class_init):
* ext/gio/gstgiosink.c: (gst_gio_sink_class_init):
* ext/gio/gstgiosrc.c: (gst_gio_src_class_init):
* ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init):
* ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init):
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init):
* ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init):
* ext/pango/gsttextrender.c: (gst_text_render_class_init):
* ext/theora/theoradec.c: (gst_theora_dec_class_init):
* ext/theora/theoraenc.c: (gst_theora_enc_class_init):
* ext/theora/theoraparse.c: (gst_theora_parse_class_init):
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_class_init):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_class_init):
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_class_init):
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_class_init):
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init):
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audio_test_src_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(preroll_unlinked):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/playback/gstplaybin2.c: (gst_play_bin_class_init):
* gst/playback/gstplaysink.c: (gst_play_sink_class_init):
* gst/playback/gstqueue2.c: (gst_queue_class_init):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init):
* gst/playback/gststreamselector.c: (gst_selector_pad_class_init),
(gst_stream_selector_class_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init):
* gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init):
* gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init):
* gst/videorate/gstvideorate.c: (gst_video_rate_class_init):
* gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init):
* gst/volume/gstvolume.c: (gst_volume_class_init):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init):
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init):
* sys/ximage/ximagesink.c: (gst_ximagesink_class_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init):
Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use
static strings (i.e. all). This gives us less memory usage,
fewer allocations and thus less memory defragmentation. Depend
on core CVS for this. Fixes bug #523806.
2008-03-22 15:00:53 +00:00
Tim-Philipp Müller
aa47d077c1 gst-libs/gst/: Turn a few g_assert_not_reached() into g_return_val_if_reached() to avoid compiler warnings (#503930).
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_do_seek),
(gst_cdda_base_src_handle_track_seek), (gst_cdda_base_src_create):
* gst-libs/gst/pbutils/install-plugins.c:
(gst_install_plugins_spawn_child), (gst_install_plugins_supported):
* gst-libs/gst/pbutils/missing-plugins.c:
(gst_missing_plugin_message_get_installer_detail),
(gst_missing_encoder_installer_detail_new):
* gst-libs/gst/rtsp/gstrtspconnection.c: (gst_rtsp_connection_send):
* gst-libs/gst/rtsp/gstrtspmessage.c: (gst_rtsp_message_unset):
Turn a few g_assert_not_reached() into g_return_val_if_reached() to
avoid compiler warnings (#503930).
2007-12-16 23:52:58 +00:00
Tim-Philipp Müller
4f0e7a9ef9 gst-libs/gst/cdda/gstcddabasesrc.c: Fix it so that it (a) makes sense and (b) doesn't break everything cdda-related i...
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_add_track):
Fix it so that it (a) makes sense and (b) doesn't break
everything cdda-related including the unit test.
2007-05-04 09:06:38 +00:00
Stefan Kost
57301524fb gst-libs/gst/cdda/gstcddabasesrc.c: Fix build when disabling asserts.
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_add_track):
Fix build when disabling asserts.
2007-05-04 08:46:59 +00:00
Jens Granseuer
595217e840 Declare variables at the beginning of a block. Fixes #383195.
Original commit message from CVS:
Patch by: Jens Granseuer <jensgr at gmx net>
* gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create):
* gst-libs/gst/rtp/gstbasertpaudiopayload.c:
(gst_base_rtp_audio_payload_handle_frame_based_buffer),
(gst_base_rtp_audio_payload_handle_sample_based_buffer):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_fixate):
Declare variables at the beginning of a block. Fixes #383195.
2006-12-09 15:12:38 +00:00
Josep Torre Valles
4de10dacb6 ext/gnomevfs/: Fix URI interface implementation return type.
Original commit message from CVS:
2006-10-10  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

Patch by: Josep Torre Valles <josep@fluendo.com>

* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
Fix URI interface implementation return type.
* ext/pango/gsttextoverlay.c: (gst_text_overlay_set_property):
Fix what looks like a copy/paste issue when assigning values.
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_get_type):
Cast to prevent Forte warnings.
* gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create):
Fix URI interface implementation return type.
gst_pad_query_position requires a signed integer pointer as
3rd parameter, GstClockTime is unsigned.
* gst/audioconvert/audioconvert.c:
Fix integer overflow when treated as signed.
* gst/audioresample/resample.c: (resample_add_input_data):
Cast to prevent warnings on Forte.
* gst/ffmpegcolorspace/imgconvert.c: (build_rgb_palette):
Fix integer overflow when treated as signed.
* gst/ffmpegcolorspace/imgconvert_template.h:
Fix integer overflow when treated as signed. RGBA_OUT shifts bits.
* gst/playback/gstdecodebin.c: (queue_filled_cb),
(cleanup_decodebin):
Who initialises a guint to -1!
Cast function pointers to prevent warnings on Forte.
* gst/playback/gstplaybasebin.c: (queue_deadlock_check),
(queue_threshold_reached):
Cast function pointers correctly to prevent warnings on Forte.
* gst/playback/gststreaminfo.c: (gst_stream_info_dispose):
Cast function pointers correctly to prevent warnings on Forte.
* gst/subparse/gstssaparse.c: (gst_ssa_parse_setcaps):
Obvious change to unsigned, 0xEF > max signed char.
* gst/tcp/gstmultifdsink.c: (get_buffers_max), (count_burst_unit):
GstClockTime is unsigned, initialise correctly.
* gst/tcp/gsttcp.c: (gst_tcp_socket_write):
Cast so pointer arithemetic doesn't cause warnings on Forte.
* gst/videorate/gstvideorate.c:
Use correct return value.
* tests/examples/seek/scrubby.c:
GstClockTime is unsigned, initialise correctly.
2006-10-10 12:49:03 +00:00
Tim-Philipp Müller
9e107d670a Printf format fixes.
Original commit message from CVS:
* ext/alsa/gstalsadeviceprobe.c:
(gst_alsa_device_property_probe_get_values):
* ext/alsa/gstalsasink.c: (set_hwparams):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_elem_pad),
(gst_ogg_chain_new_stream), (gst_ogg_demux_read_chain):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_send_headers),
(gst_ogg_mux_process_best_pad):
* ext/ogg/gstoggparse.c: (gst_ogg_parse_new_stream),
(gst_ogg_parse_chain):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header):
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_setup),
(gst_vorbis_enc_buffer_check_discontinuous):
* ext/vorbis/vorbisparse.c: (vorbis_parse_src_query):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_handle_track_seek):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_push_full):
* gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push):
* gst/audioresample/resample.c: (resample_input_pushthrough):
* gst/playback/gstplaybasebin.c: (queue_out_of_data):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_clients):
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset),
(wavpack_type_find):
* gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new):
* tests/check/elements/volume.c: (GST_START_TEST):
Printf format fixes.
2006-10-05 15:55:21 +00:00
Tim-Philipp Müller
ae45b7d755 Move GST_TAG_CDDA_* tags into libgsttag and make libgstcddabasesrc depend on libgsttag. This is required so we can ex...
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/cdda/Makefile.am:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_base_init):
* gst-libs/gst/cdda/gstcddabasesrc.h:
* gst-libs/gst/tag/tag.h:
* gst-libs/gst/tag/tags.c: (gst_tag_register_tags_internal),
(gst_tag_register_musicbrainz_tags):
Move GST_TAG_CDDA_* tags into libgsttag and make libgstcddabasesrc
depend on libgsttag. This is required so we can extract/read tags like
DISCID without depending on libgstcddabasesrc (which used to register
them).
* gst-libs/gst/tag/gstvorbistag.c:
Add vorbiscomment mapping for CDDB_DISCID and MUSICBRAINZ_DISCID
tags (also see #347848).
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_metadata_set1):
Log vorbis comments we are actually writing. Const-ify array.
2006-09-23 13:21:07 +00:00
Tim-Philipp Müller
75ecc060b1 gst-libs/gst/cdda/gstcddabasesrc.c: Make buffer durations add up (duration should be next_ts-ts for perfect streams)....
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create):
Make buffer durations add up (duration should be next_ts-ts for
perfect streams). Fixes CD ripping to Ogg/Vorbis with vorbisenc
from CVS.
* tests/check/libs/cddabasesrc.c: (gst_cd_foo_src_close),
(test_buffer_timestamps), (cddabasesrc_suite):
Add unit test for the above.
* tests/check/Makefile.am:
Don't know why cddabasesrc test was in VALGRIND_TO_FIX, remove
to see what happens.
2006-08-17 10:00:00 +00:00
Tim-Philipp Müller
d8965c30fb Const-ify GEnumValue and GFlagsValue arrays. Use
Original commit message from CVS:
* ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type),
(gst_text_overlay_halign_get_type),
(gst_text_overlay_wrap_mode_get_type):
* ext/theora/theoradec.c: (theora_handle_type_packet),
(theora_handle_data_packet):
* ext/theora/theoraenc.c: (gst_border_mode_get_type),
(theora_enc_sink_setcaps), (theora_enc_chain):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_mode_get_type):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type):
* gst/tcp/gstfdset.c: (gst_fdset_mode_get_type):
* gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type),
(gst_sync_method_get_type), (gst_unit_type_get_type),
(gst_client_status_get_type):
* gst/videoscale/gstvideoscale.c:
(gst_video_scale_method_get_type):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_pattern_get_type):
* gst/videotestsrc/videotestsrc.c: (paint_setup_I420),
(paint_setup_YV12), (paint_setup_YUY2), (paint_setup_UYVY),
(paint_setup_YVYU), (paint_setup_IYU2), (paint_setup_Y41B),
(paint_setup_Y42B), (paint_setup_Y800), (paint_setup_YVU9),
(paint_setup_YUV9), (paint_setup_RGB888), (paint_setup_BGR888),
(paint_setup_RGB565), (paint_setup_xRGB1555):
Const-ify GEnumValue and GFlagsValue arrays. Use
GST_ROUND_UP_* macros instead of home-made ones.
2006-05-09 19:24:46 +00:00
Thomas Vander Stichele
6e3506b116 gst-libs/gst/cdda/gstcddabasesrc.c: compile fix; strtol() needs <stdlib.h>
Original commit message from CVS:

* gst-libs/gst/cdda/gstcddabasesrc.c:
compile fix; strtol() needs <stdlib.h>
2006-04-29 01:10:34 +00:00
Tim-Philipp Müller
c4ae62d634 docs/plugins/: Add cdparanoiasrc to docs.
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
Add cdparanoiasrc to docs.
* gst-libs/gst/cdda/gstcddabasesrc.c:
More GstCddaBaseSrc docs.
2006-03-12 14:56:31 +00:00
Tim-Philipp Müller
c60b2b46b2 gst-libs/gst/cdda/gstcddabasesrc.c: No need to push an EOS event here, GstBaseSrc will do that for us when we return ...
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create):
No need to push an EOS event here, GstBaseSrc will do that for us
when we return FLOW_UNEXPECTED.
2006-02-13 15:17:34 +00:00
Tim-Philipp Müller
51ce1f6179 gst/: Pass unhandled queries to the parent class's query function.
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_query),
(gst_cdda_base_src_handle_event):
* gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_query):
Pass unhandled queries to the parent class's query function.
2006-02-01 11:59:47 +00:00
Tim-Philipp Müller
c0b087e4b7 gst-libs/gst/cdda/gstcddabasesrc.c: No need to post a tag message on the bus when seeking within the same track, only...
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_handle_track_seek):
No need to post a tag message on the bus when seeking
within the same track, only post it when the current
track changes.
2006-01-12 14:56:11 +00:00
Tim-Philipp Müller
1068588993 gst-libs/gst/cdda/gstcddabasesrc.c: An integer is not a string. Fix access to uninitialised variable.
Original commit message from CVS:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_update_duration),
(gst_cdda_base_src_calculate_cddb_id):
An integer is not a string. Fix access to uninitialised variable.
* tests/check/Makefile.am:
Add cddabasesrc unit test; also actually enable the vorbis test.
* tests/check/generic/states.c:
Blacklist new cd audio elements as well.
* tests/check/libs/cddabasesrc.c:
Unit test for GstCddaBaseSrc (discid calculation mostly).
2005-12-29 11:49:11 +00:00
Tim-Philipp Müller
d129bea2be Add new libgstcdda with GstCddaBaseSrc class.
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/cdda/Makefile.am:
* gst-libs/gst/cdda/base64.c:
* gst-libs/gst/cdda/base64.h:
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_mode_get_type), (gst_cdda_base_src_base_init),
(gst_cdda_base_src_class_init), (gst_cdda_base_src_init),
(gst_cdda_base_src_finalize), (gst_cdda_base_src_set_property),
(gst_cdda_base_src_get_property),
(gst_cdda_base_src_get_track_from_sector),
(gst_cdda_base_src_get_query_types), (gst_cdda_base_src_convert),
(gst_cdda_base_src_query), (gst_cdda_base_src_is_seekable),
(gst_cdda_base_src_do_seek), (gst_cdda_base_src_handle_track_seek),
(gst_cdda_base_src_handle_event), (gst_cdda_base_src_uri_get_type),
(gst_cdda_base_src_uri_get_protocols),
(gst_cdda_base_src_uri_get_uri), (gst_cdda_base_src_uri_set_uri),
(gst_cdda_base_src_uri_handler_init),
(gst_cdda_base_src_setup_interfaces),
(gst_cdda_base_src_add_track), (gst_cdda_base_src_update_duration),
(cddb_sum), (gst_cddabasesrc_calculate_musicbrainz_discid),
(lba_to_msf), (gst_cdda_base_src_calculate_cddb_id),
(gst_cdda_base_src_add_tags),
(gst_cdda_base_src_add_index_associations),
(gst_cdda_base_src_set_index), (gst_cdda_base_src_get_index),
(gst_cdda_base_src_track_sort_func), (gst_cdda_base_src_start),
(gst_cdda_base_src_clear_tracks), (gst_cdda_base_src_stop),
(gst_cdda_base_src_create):
* gst-libs/gst/cdda/gstcddabasesrc.h:
* gst-libs/gst/cdda/sha1.c:
* gst-libs/gst/cdda/sha1.h:
Add new libgstcdda with GstCddaBaseSrc class.
2005-12-28 18:06:50 +00:00