Commit graph

262 commits

Author SHA1 Message Date
Stefan Kost
131fb86b4b Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
Original commit message from CVS:
* ext/alsa/gstalsamixerelement.h:
* ext/alsa/gstalsamixeroptions.h:
* ext/alsa/gstalsamixertrack.h:
* ext/gnomevfs/gstgnomevfssink.h:
* ext/gnomevfs/gstgnomevfssrc.h:
* ext/theora/gsttheoradec.h:
* ext/theora/gsttheoraenc.h:
* ext/theora/gsttheoraparse.h:
* ext/vorbis/vorbisparse.h:
* gst-libs/gst/audio/gstaudioclock.h:
* gst-libs/gst/audio/gstaudiofilter.h:
* gst-libs/gst/rtp/gstbasertpaudiopayload.h:
* gst/audioconvert/gstaudioconvert.h:
* gst/audioresample/gstaudioresample.h:
* gst/audiotestsrc/gstaudiotestsrc.h:
* gst/ffmpegcolorspace/gstffmpegcolorspace.h:
* gst/playback/gststreamselector.h:
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcpclientsink.h:
* gst/tcp/gsttcpclientsrc.h:
* gst/tcp/gsttcpserversink.h:
* gst/tcp/gsttcpserversrc.h:
* gst/videorate/gstvideorate.h:
* gst/videoscale/gstvideoscale.h:
* gst/videotestsrc/gstvideotestsrc.h:
* gst/volume/gstvolume.h:
* sys/v4l/gstv4ljpegsrc.h:
* sys/v4l/gstv4lmjpegsink.h:
* sys/v4l/gstv4lmjpegsrc.h:
* sys/v4l/gstv4lsrc.h:
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.h:
* tests/old/testsuite/alsa/sinesrc.h:
Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
2006-06-01 19:19:51 +00:00
Michael Smith
d2ddf5eba5 ext/vorbis/vorbisenc.*: Multi-channel caps negotiation, so we can do proper multichannel vorbis encoding, negotiated ...
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (raw_caps_factory),
(gst_vorbis_enc_class_init), (gst_vorbis_enc_dispose),
(gst_vorbis_enc_generate_sink_caps), (gst_vorbis_enc_sink_getcaps),
(gst_vorbis_enc_init), (gst_vorbis_enc_buffer_from_header_packet),
(gst_vorbis_enc_chain), (gst_vorbis_enc_change_state):
* ext/vorbis/vorbisenc.h:
Multi-channel caps negotiation, so we can do proper multichannel
vorbis encoding, negotiated through audioconvert.
2006-05-30 13:22:58 +00:00
Wim Taymans
696dd6e320 ext/vorbis/vorbisdec.c: Small cleanups.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_src_event), (vorbis_dec_sink_event), (vorbis_do_clip),
(vorbis_dec_push), (vorbis_handle_data_packet), (vorbis_dec_chain),
(vorbis_dec_change_state):
Small cleanups.
Add some FIXMEs
Clip output samples to segment boundaries.
2006-05-26 15:52:23 +00:00
Wim Taymans
97e943f681 ext/theora/theoradec.c: Cleanups, add some G_LIKELY.
Original commit message from CVS:
* ext/theora/theoradec.c: (gst_theora_dec_reset),
(theora_dec_src_query), (theora_dec_src_event),
(theora_dec_sink_event), (theora_handle_comment_packet),
(theora_handle_data_packet), (theora_dec_change_state):
Cleanups, add some G_LIKELY.
Use segment helpers instead of our own wrong code.
Clear queued buffers on seek and READY.
* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset),
(vorbis_dec_convert), (vorbis_dec_src_query),
(vorbis_dec_src_event), (vorbis_dec_sink_event),
(vorbis_handle_comment_packet), (vorbis_dec_push),
(vorbis_handle_data_packet), (vorbis_dec_chain),
(vorbis_dec_change_state):
* ext/vorbis/vorbisdec.h:
Remove old useless packetno variable.
Do position query properly.
Add some G_LIKELY.
Do cleanup of queued buffers in new helper function
and use it.
2006-05-15 17:42:19 +00:00
Wim Taymans
ddf3ac792c ext/vorbis/vorbisdec.c: Cleanups. Use refcounting and DEBUG_OBJECT.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_get_query_types),
(vorbis_dec_convert), (vorbis_dec_src_query),
(vorbis_dec_sink_query), (vorbis_dec_src_event),
(vorbis_dec_sink_event), (vorbis_handle_identification_packet),
(vorbis_dec_clean_queued), (vorbis_dec_push),
(vorbis_handle_data_packet), (vorbis_dec_change_state):
Cleanups. Use refcounting and DEBUG_OBJECT.
Reset segment on flush, use code methods instead of our
own wrong version.
Fix potential memleak.
2006-05-15 16:49:31 +00:00
Andy Wingo
aa64df8ffd ext/theora/theoraparse.c (gst_theora_parse_init) ext/vorbis/vorbisparse.c (gst_vorbis_parse_init)
Original commit message from CVS:
2006-05-05  Andy Wingo  <wingo@pobox.com>

* ext/theora/theoraparse.c (gst_theora_parse_init)
(theora_parse_src_convert, theora_parse_src_query):
* ext/vorbis/vorbisparse.c (gst_vorbis_parse_init)
(vorbis_parse_convert, vorbis_parse_src_query): Add convert and
query functions on the source pads of the theora and vorbis parse
elements. Fixes position querying when doing a remux.
2006-05-05 16:34:15 +00:00
Wim Taymans
cab3cb22e5 ext/vorbis/vorbisdec.c: Still produce an error when we receive an empty packet.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_dec_push), (vorbis_dec_chain):
Still produce an error when we receive an empty packet.
2006-05-03 15:52:46 +00:00
Wim Taymans
9e6ae51849 ext/ogg/gstoggdemux.c: Mark buffers with DISCONT after seek and after activating new chains.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer),
(gst_ogg_chain_mark_discont), (gst_ogg_chain_new_stream),
(gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek):
Mark buffers with DISCONT after seek and after activating new
chains.
* ext/theora/gsttheoradec.h:
* ext/theora/theoradec.c: (gst_theora_dec_reset),
(theora_get_query_types), (theora_dec_sink_event),
(theora_dec_push), (theora_handle_data_packet), (theora_dec_chain),
(theora_dec_change_state):
Fix frame counter.
Detect and mark DISCONT buffers.
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_event), (vorbis_dec_push), (vorbis_dec_chain),
(vorbis_dec_change_state):
* ext/vorbis/vorbisdec.h:
Use GstSegment.
Detect and mark DISCONT buffers.
Don't crash on 0 sized buffers.
2006-05-03 15:34:48 +00:00
Stefan Kost
e972defd3e make GstElementDetails const
Original commit message from CVS:
* ext/alsa/gstalsamixerelement.c:
* ext/alsa/gstalsasrc.c:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c:
* ext/ogg/gstogmparse.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiorate/gstaudiorate.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
* gst/subparse/gstsubparse.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
* gst/typefind/gsttypefindfunctions.c: (plugin_init):
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/v4l/gstv4ljpegsrc.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* sys/v4l/gstv4lsrc.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
* tests/check/libs/cddabasesrc.c:
make GstElementDetails const
2006-04-28 19:46:37 +00:00
Michael Smith
38525b4333 ext/vorbis/vorbisenc.c: Remove leaks from vorbisenc.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_set_header_on_caps),
(gst_vorbis_enc_chain):
Remove leaks from vorbisenc.
Mostly minor changes, the only significant one is that now the
buffers we set as 'streamheader' on the caps are copies of the
original buffers, to avoid circular refcounting problems.
2006-04-07 13:24:54 +00:00
Tim-Philipp Müller
e330b2ed88 ext/vorbis/: Remove left-over 0.8 cruft; use GST_DEBUG_FUNCPTR; make vorbisenc adhere to the official nomenclature; u...
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_class_init),
(gst_vorbis_dec_init), (vorbis_dec_finalize):
* ext/vorbis/vorbisdec.h:
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_add_interfaces),
(gst_vorbis_enc_base_init), (gst_vorbis_enc_class_init),
(gst_vorbis_enc_sink_setcaps), (gst_vorbis_enc_convert_src),
(gst_vorbis_enc_convert_sink), (gst_vorbis_enc_get_query_types),
(gst_vorbis_enc_src_query), (gst_vorbis_enc_sink_query),
(gst_vorbis_enc_init), (gst_vorbis_enc_get_tag_value),
(gst_vorbis_enc_metadata_set1), (gst_vorbis_enc_set_metadata),
(gst_vorbis_enc_setup), (gst_vorbis_enc_clear),
(gst_vorbis_enc_buffer_from_packet),
(gst_vorbis_enc_buffer_from_header_packet),
(gst_vorbis_enc_push_buffer), (gst_vorbis_enc_push_packet),
(gst_vorbis_enc_set_header_on_caps), (gst_vorbis_enc_sink_event),
(gst_vorbis_enc_chain), (gst_vorbis_enc_output_buffers),
(gst_vorbis_enc_get_property), (gst_vorbis_enc_set_property),
(gst_vorbis_enc_change_state):
* ext/vorbis/vorbisenc.h:
Remove left-over 0.8 cruft; use GST_DEBUG_FUNCPTR; make
vorbisenc adhere to the official nomenclature; use boilerplate
macro.
2006-04-05 13:05:25 +00:00
Andy Wingo
4f29a7eae5 ext/vorbis/vorbisparse.c: Add some docs and a copyright.
Original commit message from CVS:
2006-04-03  Andy Wingo  <wingo@pobox.com>

* ext/vorbis/vorbisparse.c: Add some docs and a copyright.
2006-04-03 08:28:58 +00:00
Andy Wingo
8698d64a47 ext/vorbis/vorbisparse.c (vorbis_parse_sink_event): Fix uninitialized variable return that would happen.
Original commit message from CVS:
2006-03-31  Andy Wingo  <wingo@pobox.com>

* ext/vorbis/vorbisparse.c (vorbis_parse_sink_event): Fix
uninitialized variable return that would happen.
2006-03-31 17:08:41 +00:00
Andy Wingo
eb91cbd480 ext/vorbis/vorbisparse.c (vorbis_parse_drain_queue): Fix uninitialized variable return that would never happen.
Original commit message from CVS:
2006-03-31  Andy Wingo  <wingo@pobox.com>

* ext/vorbis/vorbisparse.c (vorbis_parse_drain_queue): Fix
uninitialized variable return that would never happen.
2006-03-31 16:57:47 +00:00
Andy Wingo
cca414a9b5 ext/vorbis/vorbisparse.c (gst_vorbis_parse_init)
Original commit message from CVS:
2006-03-31  Andy Wingo  <wingo@pobox.com>

* ext/vorbis/vorbisparse.c (gst_vorbis_parse_init)
(vorbis_parse_sink_event): Add an event function to flush our
state on a seek, and to drain buffers on a premature EOS.
(vorbis_parse_push_headers, vorbis_parse_clear_queue)
(vorbis_parse_push_buffer, vorbis_parse_drain_queue_prematurely)
(vorbis_parse_chain, vorbis_parse_queue_buffer)
(vorbis_parse_drain_queue): Queue up buffers until we can set
their timestamps and granulepos values.

* ext/vorbis/vorbisparse.h: Include the vorbis decoder headers,
and keep track of data needed for deriving granulepos and
timestamps for buffers.
2006-03-31 16:43:43 +00:00
j^
08047f5cfe better/unified long descriptions
Original commit message from CVS:
Patch by: j^ <j at bootlab dot org>
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_class_init):
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init):
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/subparse/gstsubparse.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
better/unified long descriptions
Fixes #336477
2006-03-29 14:00:08 +00:00
Stefan Kost
2d826700fa Add docs for adder, use GST_ELEMENT_DETAILS macro, define GstElementDetails at the top
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_base_init),
(gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_base_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_base_init):
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c: (gst_ogg_parse_base_init):
* ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init),
(gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init):
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
(gst_audio_filter_base_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_base_init):
* gst/adder/gstadder.c: (gst_adder_get_type):
* gst/adder/gstadder.h:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init),
(gst_audio_test_src_create):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
(gst_stream_selector_base_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_base_init):
* gst/volume/gstvolume.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* tests/check/libs/cddabasesrc.c:
* tests/old/examples/gob/gst-identity2.gob:
Add docs for adder, use GST_ELEMENT_DETAILS macro,
define GstElementDetails at the top
2006-03-24 10:42:11 +00:00
Christophe Fergeau
8e6d3a5c03 Don't leak references returned by gst_pad_get_parent()
Original commit message from CVS:
* ext/libvisual/visual.c: (gst_visual_getcaps),
(gst_visual_src_setcaps), (gst_visual_sink_setcaps):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_sinkconnect):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_src),
(gst_vorbisenc_convert_sink):
* gst-libs/gst/audio/audio.c: (gst_audio_frame_byte_size),
(gst_audio_duration_from_pad_buffer):
* gst-libs/gst/audio/gstaudiofilter.c: (gst_audio_filter_link),
(gst_audio_filter_chain):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_setcaps):
* gst-libs/gst/video/video.c: (gst_video_frame_rate),
(gst_video_get_size):
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_setcaps):
Don't leak references returned by gst_pad_get_parent()
(#333663, based on patch by: Christophe Fergeau).
2006-03-07 12:49:03 +00:00
Thomas Vander Stichele
c9bc7a4844 ogg muxing of vorbis and theora now has pages ordered correctly again, even with delays.
Original commit message from CVS:
ogg muxing of vorbis and theora now has pages ordered correctly again,
even with delays.

* ext/ogg/README:
updated with some examples
* ext/theora/theoraenc.c: (granulepos_to_timestamp),
(granulepos_add), (theora_buffer_from_packet):
* ext/vorbis/vorbisenc.c: (granulepos_to_timestamp_offset),
(granulepos_to_timestamp), (gst_vorbisenc_buffer_from_packet),
(gst_vorbisenc_chain):
implement strategy from ext/ogg/README
* ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page),
(gst_ogg_mux_push_buffer), (gst_ogg_mux_dequeue_page),
(gst_ogg_mux_pad_queue_page), (gst_ogg_mux_compare_pads),
(gst_ogg_mux_queue_pads), (gst_ogg_mux_collected):
Fix muxer so that oggz-validate is happy with all streams;
except for no eos mark, and the BOS page ordering
* tests/check/pipelines/theoraenc.c: (check_buffer_is_header),
(check_buffer_granulepos):
* tests/check/pipelines/vorbisenc.c: (check_buffer_granulepos):
update tests to check for OFFSET being set as requested
fixed type of granulepos, it's not a ClockTime
2006-03-05 22:57:58 +00:00
Wim Taymans
8011ea8e2d Fix some more docs.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/gnomevfs/gstgnomevfssink.h:
* ext/gnomevfs/gstgnomevfssrc.h:
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
* ext/vorbis/vorbisdec.h:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_sink):
* ext/vorbis/vorbisenc.h:
* ext/vorbis/vorbisparse.c: (vorbis_parse_set_header_on_caps),
(vorbis_parse_chain), (vorbis_parse_change_state):
* ext/vorbis/vorbisparse.h:
* gst/audioconvert/gstaudioconvert.h:
* gst/tcp/gsttcpserversink.h:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/videotestsrc/gstvideotestsrc.h:
* gst/volume/gstvolume.c:
* gst/volume/gstvolume.h:
Fix some more docs.
Added docs for vorbisdec and vorbisparse.
Fix vorbisparse.
2006-03-01 17:39:28 +00:00
Wim Taymans
9a55cf386e ext/vorbis/vorbisenc.c: Use some more scaling functions.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_convert_src),
(gst_vorbisenc_convert_sink):
Use some more scaling functions.
2006-02-17 19:31:12 +00:00
Tim-Philipp Müller
46a95c1243 ext/vorbis/vorbis.c: Register musicbrainz tags, so apps don't have to.
Original commit message from CVS:
* ext/vorbis/vorbis.c: (plugin_init):
Register musicbrainz tags, so apps don't have to.
2006-02-07 18:32:00 +00:00
Jan Schmidt
5109622dd0 Add a finalize method to ensure we clean up state even if someone omitted the state change back to NULL.
Original commit message from CVS:
(theora_enc_finalize), (theora_enc_sink_setcaps):
Add a finalize method to ensure we clean up state even if
someone omitted the state change back to NULL.

* ext/vorbis/vorbisenc.c: (gst_vorbisenc_metadata_set1),
(gst_vorbisenc_chain):
Free some more leaked bits.

* tests/check/pipelines/theoraenc.c: (start_pipeline),
(stop_pipeline):
Wait for state changes to happen if they're ASYNC.

This ought to teach those fancy pants buildbots a lesson.
2006-02-05 23:31:05 +00:00
Jan Schmidt
409b9b220d ext/vorbis/vorbisenc.c: Don't leak tag names.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_metadata_set1):
Don't leak tag names.
2006-02-05 22:44:55 +00:00
Tim-Philipp Müller
41e4f03f9b Pass unhandled queries upstream instead of just dropping them (#326447). Also, fix supported query types list for som...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_query_types),
(gst_ogg_pad_src_query):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_sink_query):
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_query):
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_query):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_src_query),
(gst_vorbisenc_sink_query):
* gst/adder/gstadder.c: (gst_adder_query):
Pass unhandled queries upstream instead of just
dropping them (#326447). Also, fix supported
query types list for some elements.
2006-02-01 11:56:11 +00:00
Wim Taymans
5ef4c13fb1 ext/vorbis/vorbisdec.c: Use scale_int when we can, add some more scaling.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_dec_convert),
(vorbis_handle_header_packet), (vorbis_dec_push),
(vorbis_handle_data_packet):
Use scale_int when we can, add some more scaling.
Check packettype before parsing it.
2006-01-31 19:25:10 +00:00
Andy Wingo
0ad84fae5d tests/check/Makefile.am (check_vorbis): Add pipelines/vorbisenc.
Original commit message from CVS:
2006-01-30  Andy Wingo  <wingo@pobox.com>

* tests/check/Makefile.am (check_vorbis): Add pipelines/vorbisenc.

* ext/vorbis/vorbisenc.c (gst_vorbisenc_buffer_from_packet): Logic
updated to timestamp from the first sample, not the last.
(gst_vorbisenc_buffer_from_header_packet): New function, takes
special care of granulepos and timestamp for header packets.
(gst_vorbisenc_chain): Reflow, fix some leaks, and handle the case
when the first buffer has a nonzero timestamp.

* ext/vorbis/vorbisenc.h (GstVorbisEnc.granulepos_offset)
(GstVorbisEnc.subgranule_offset): New members. Take care of the
case when the first audio buffer we get has a nonzero timestamp.
(GstVorbisEnc.next_ts): Renamed from prev_ts, because now we
properly timestamp vorbis buffers with the time of the first
sample, not the last.

* ext/vorbis/vorbisenc.c (granulepos_to_clocktime): Renamed from
vorbis_granule_time_copy -- now it takes the granule/subgranule
offset into account.

* tests/check/pipelines/vorbisenc.c: New test for correctness of
timestamps, durations, and granulepos on buffers produced by
vorbisenc.
2006-01-30 15:01:28 +00:00
Thomas Vander Stichele
325e713953 ext/vorbis/vorbisdec.c: Fix #327216 (null dereference in vorbisdec)
Original commit message from CVS:

* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query):
Fix #327216 (null dereference in vorbisdec)
2006-01-16 15:31:14 +00:00
Tim-Philipp Müller
2d15397f29 ext/theora/theoradec.c: Post taglist actually on bus instead of just freeing it (fixes #327114 and totem bug #327080).
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_handle_comment_packet):
Post taglist actually on bus instead of just freeing it
(fixes #327114 and totem bug #327080).
* ext/vorbis/vorbisdec.c: (vorbis_handle_comment_packet):
Use gst_element_found_tags_for_pad(), so that the tags
are sent downstream as an event as well.
2006-01-16 15:19:55 +00:00
Thomas Vander Stichele
5f83aa7dfa expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:42:02 +00:00
Andy Wingo
1ecddd21ea Update for alloc_buffer changes.
Original commit message from CVS:
2005-12-05  Andy Wingo  <wingo@pobox.com>

* ext/libvisual/visual.c: (get_buffer):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer):
* ext/pango/gsttextrender.c: (gst_text_render_chain):
* ext/theora/theoradec.c: (theora_handle_data_packet):
* ext/theora/theoraenc.c: (theora_buffer_from_packet),
(theora_enc_chain):
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
* gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create):
Update for alloc_buffer changes.
2005-12-05 13:02:12 +00:00
Wim Taymans
bd713d06ed ext/vorbis/vorbisdec.c: Small cleanups.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
Small cleanups.
2005-12-02 10:47:55 +00:00
Thomas Vander Stichele
aa454b5383 remove sinesrc some more
Original commit message from CVS:
remove sinesrc some more
2005-11-23 15:36:58 +00:00
Andy Wingo
6e05471956 Update for gst_tag_setter API changes.
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* Update for gst_tag_setter API changes.
2005-11-22 12:34:27 +00:00
Andy Wingo
20b31b4153 ext/ogg/gstoggdemux.c (gst_ogg_pad_submit_packet)
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* ext/ogg/gstoggdemux.c (gst_ogg_pad_submit_packet)
(gst_ogg_demux_perform_seek):
* ext/theora/theoradec.c (theora_dec_sink_event):
* ext/vorbis/vorbisdec.c (vorbis_dec_sink_event): Run
update-funcnames.
2005-11-22 11:51:24 +00:00
Tim-Philipp Müller
c90f75526a Rename libgsttagedit to libgsttag (#322117).
Original commit message from CVS:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst-libs/gst/tag/Makefile.am:
* gst-plugins-base.spec.in:
Rename libgsttagedit to libgsttag (#322117).
2005-11-22 11:33:07 +00:00
Andy Wingo
137c23468e Don't take stream lock.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* ext/vorbis/vorbisdec.c (vorbis_dec_sink_event):
* gst/videorate/gstvideorate.c (gst_videorate_event):
* ext/theora/theoradec.c (theora_dec_sink_event):
* ext/theora/theoraenc.c (theora_enc_sink_event): Don't take
stream lock.

* gst/subparse/gstsubparse.c (gst_subparse_src_event):
* ext/ogg/gstoggdemux.c (gst_ogg_demux_perform_seek): Update for
stream lock changes.
2005-11-21 17:29:00 +00:00
Michael Smith
afa20a78b2 ext/vorbis/vorbisenc.c: Minimal fix for bug #320200: set the min/max bitrate in the correct units. A better fix would...
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_setup):
Minimal fix for bug #320200: set the min/max bitrate in the correct
units. A better fix would be to upgrade to the RATEMANAGE2
interface, rather than using the deprecated interface used here, but
that would require an update in our libvorbis dependency (to 1.1),
which is probably undesirable.
2005-11-21 15:16:29 +00:00
Alessandro Dessina
6483710419 ext/ogg/gstoggmux.c (gst_ogg_mux_set_header_on_caps): ext/ogg/gstoggparse.c (gst_ogg_parse_append_header)
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

patch by: Alessandro Dessina <alessandro nnva org>

* ext/ogg/gstoggmux.c (gst_ogg_mux_set_header_on_caps):
* ext/ogg/gstoggparse.c (gst_ogg_parse_append_header)
(gst_ogg_parse_chain):
* ext/theora/theoraenc.c (theora_set_header_on_caps):
* ext/vorbis/vorbisenc.c (gst_vorbisenc_set_header_on_caps):
* ext/vorbis/vorbisparse.c (vorbis_parse_set_header_on_caps): Fix
gst_value_list calls on arrays. Fixes #321962.
2005-11-21 12:36:22 +00:00
Michael Smith
035f96fe88 ext/vorbis/vorbisenc.c: Properly handle pad_push return values.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_clear),
(gst_vorbisenc_chain), (gst_vorbisenc_output_buffers):
Properly handle pad_push return values.
2005-11-21 10:09:16 +00:00
Wim Taymans
679918cbf6 ext/vorbis/vorbisenc.c: GST_PAD_IS_USABLE is gone, use the return value of the push or pad_alloc_buffer instead.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_push_buffer),
(gst_vorbisenc_push_packet):
GST_PAD_IS_USABLE is gone, use the return value of
the push or pad_alloc_buffer instead.
2005-11-20 14:09:40 +00:00
Thomas Vander Stichele
44ae8114e6 Fix a whole set of pad template leaks
Original commit message from CVS:
Fix a whole set of pad template leaks
2005-11-16 18:21:46 +00:00
Thomas Vander Stichele
83b5dc6e8a revert unrefs, they don't pass make check
Original commit message from CVS:
revert unrefs, they don't pass make check
2005-11-16 00:11:36 +00:00
Johan Dahlin
e29263ef06 Yes, I know I should use gst_object_unref
Original commit message from CVS:
Yes, I know I should use gst_object_unref
2005-11-15 19:38:14 +00:00
Johan Dahlin
4f08d8649d Plug leaks.
Original commit message from CVS:
Plug leaks.
2005-11-15 19:34:39 +00:00
Michael Smith
84d7f7462e ext/: Fix a small memory leak in vorbisenc.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_clear), (gst_ogg_mux_init),
(gst_ogg_mux_sinkconnect), (gst_ogg_mux_request_new_pad),
(gst_ogg_mux_push_buffer), (gst_ogg_mux_dequeue_page),
(gst_ogg_mux_pad_queue_page), (gst_ogg_mux_queue_pads),
(gst_ogg_mux_set_header_on_caps), (gst_ogg_mux_collected),
(gst_ogg_mux_clear_collectpads), (gst_ogg_mux_change_state):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_buffer_from_packet),
(gst_vorbisenc_change_state):
Fix a small memory leak in vorbisenc.
Fix large memory leaks in oggmux, also fix lots of state change
bugs in oggmux.
2005-11-14 16:11:53 +00:00
Michael Smith
4427a67754 ext/vorbis/vorbisenc.*: Set duration on encoded buffers. This allows oggmux's max_page_delay parameter to actually work.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_setup),
(gst_vorbisenc_buffer_from_packet):
* ext/vorbis/vorbisenc.h:
Set duration on encoded buffers. This allows oggmux's
max_page_delay parameter to actually work.
2005-11-11 16:35:39 +00:00
Wim Taymans
323ba80ff3 ext/: Take proper locks when handling events.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_event):
* ext/theora/theoraenc.c: (theora_enc_sink_event),
(theora_enc_change_state):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_init),
(gst_vorbisenc_sink_event), (gst_vorbisenc_change_state):
Take proper locks when handling events.
2005-10-27 11:33:09 +00:00
Wim Taymans
37c0c43425 ext/vorbis/vorbisdec.c: Correctly flush decoder samples even if we could not copy them to an output buffer. Fixes #31...
Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
Correctly flush decoder samples even if we could not
copy them to an output buffer. Fixes #319618.
2005-10-24 17:40:37 +00:00
Wim Taymans
7879080357 ext/: Fix old naming.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_event):
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_event), (vorbis_handle_identification_packet),
(vorbis_handle_data_packet):
* ext/vorbis/vorbisdec.h:
Fix old naming.

* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Don't try to sync on buffers without a timestamp.
2005-10-21 15:14:36 +00:00