Commit graph

2065 commits

Author SHA1 Message Date
Wim Taymans
349b97c161 ext/dvdread/dvdreadsrc.c: Move errors out of the normal code flow.
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_start),
(gst_dvd_read_src_goto_title), (gst_dvd_read_src_read),
(gst_dvd_read_src_create), (gst_dvd_read_src_goto_sector):
Move errors out of the normal code flow.
Don't send eos, basesrc will do that for us when needed.
2006-04-21 11:17:08 +00:00
Wim Taymans
502fabd67b gst/mpegstream/: Do state changes correctly
Original commit message from CVS:
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_change_state):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_change_state):
* gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_change_state):
Do state changes correctly
2006-04-21 10:50:17 +00:00
Tim-Philipp Müller
8a3cf8eb23 ext/mpeg2dec/gstmpeg2dec.c: Can't use gst_pad_alloc_buffer*() when we are going to crop the image before sending it o...
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_alloc_sized_buf),
(gst_mpeg2dec_alloc_buffer):
Can't use gst_pad_alloc_buffer*() when we are going to crop
the image before sending it out. Downstream basetransform-based
elements will complain about the wrong unit size otherwise
(when not operating in passthrough-mode at least).
Const-ify some static variables and do some minor clean-ups.
Use I420 macros for size/offsets (not really necessary in this
particular context, but this kind of code gets copy'n'pasted).
2006-04-13 19:08:20 +00:00
Tim-Philipp Müller
7780db0401 gst/mpegstream/gstmpegpacketize.*: g_malloc() can't fail, we don't need to handle this. Same for gst_buffer_new_and_a...
Original commit message from CVS:
* gst/mpegstream/gstmpegpacketize.c: (gst_mpeg_packetize_put),
(read_cache):
* gst/mpegstream/gstmpegpacketize.h:
g_malloc() can't fail, we don't need to handle this. Same for
gst_buffer_new_and_alloc().
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_chain):
klass->send_buffer() should have the same semantics as
gst_pad_push(), ie. ownership of the buffer is transfered,
so we never have to unref the buffer no matter what the flow
return value was.
2006-04-13 18:21:08 +00:00
Thomas Vander Stichele
566525df79 add test for amrnbenc, enable test infrastructure, and fix a leak
Original commit message from CVS:
add test for amrnbenc, enable test infrastructure, and fix a leak


* common/check.mak:
allow for specifying more than one suppressions file in SUPPRESSIONS
* Makefile.am:
* tests/Makefile.am:
* tests/check/.cvsignore:
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* configure.ac:
add tests/check
* tests/check/gst-plugins-ugly.supp:
add suppressions for libs used by -ugly
* tests/check/elements/amrnbenc.c: (buffer_new), (buffer_unref),
(setup_amrnbenc), (cleanup_amrnbenc), (push_data),
(GST_START_TEST), (amrnbenc_suite), (main):
add a simple test for encoding amr
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_init):
fix pad template leaks
2006-04-10 14:47:11 +00:00
Michael Smith
c201d235e0 ext/amrnb/amrnbenc.c: Plug big leak in AMR encoder.
Original commit message from CVS:
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_chain):
Plug big leak in AMR encoder.
2006-04-10 11:48:29 +00:00
Sébastien Moutte
800c1bf33c ext/mad/gstmad.c: move GstIndexEntry *entry variable declaration before the first instruction
Original commit message from CVS:
* ext/mad/gstmad.c: (index_seek):
move GstIndexEntry *entry variable declaration before
the first instruction
* ext/mad/gstmad.c:
remove debug macros with variable number of parameter by using
GST_DEBUG for WIN32
* gst/dvdsub/gstdvdsubdec.c: (gst_dvd_sub_dec_parse_subpic):
use gst_guint64_to_gdouble for conversions
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_sync_stream_to_time):
replace __FUNCTION__ which is not supported by MSVC by the current function name
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_reset):
remove LL suffix by using G_GINT64_CONSTANT
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_parse_packhead),(gst_mpeg_parse_get_rate):
use gst_guint64_to_gdouble for conversions
* gst/mpegstream/gstmpegparse.h:
remove LL suffix by using G_GINT64_CONSTANT
* win32/vs6:
add project files for tagac3parse, asfdemux, dvdlpcmdec, dvdsub, iec958, lame,
mad, mpegaudioparse, mpegstream, realmedia, synaesthesia
2006-04-09 18:09:40 +00:00
Stefan Kost
d398763d01 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_class_init):
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_class_init):
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_class_init):
* ext/mad/gstmad.c: (gst_mad_class_init):
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_class_init):
* gst/ac3parse/gstac3parse.c: (gst_ac3parse_class_init):
* gst/asfdemux/gstasfmux.c: (gst_asfmux_class_init):
* gst/dvdlpcmdec/gstdvdlpcmdec.c: (gst_dvdlpcmdec_class_init):
* gst/iec958/ac3iec.c: (ac3iec_class_init):
* gst/mpegaudioparse/gstmpegaudioparse.c:
(gst_mp3parse_class_init):
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_class_init):
* gst/mpegstream/gstmpegclock.c: (gst_mpeg_clock_class_init):
* gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_class_init):
* gst/realmedia/rmdemux.c: (gst_rmdemux_class_init):
* gst/synaesthesia/gstsynaesthesia.c:
(gst_synaesthesia_class_init):
Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2006-04-08 21:42:19 +00:00
Fabrizio Gennari
7a8e48e17c gst/asfdemux/gstasfdemux.c: Send newsegment event only once per pad, fixes #336550.
Original commit message from CVS:
Patch by: Fabrizio Gennari  <fabrizio dot ge at tiscali dot it>
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_sink_event),
(gst_asf_demux_push_buffer):
Send newsegment event only once per pad, fixes #336550.
2006-04-07 09:14:26 +00:00
Thomas Vander Stichele
d35a1249a6 docs/plugins/: add siddec
Original commit message from CVS:

* docs/plugins/gst-plugins-ugly-plugins-docs.sgml:
* docs/plugins/inspect/plugin-siddec.xml:
add siddec
* ext/dvdnav/dvdnavsrc.c:
doc fixes
2006-04-01 15:43:46 +00:00
Thomas Vander Stichele
23f496bebc configure.ac: rework similarly to other modules
Original commit message from CVS:

* configure.ac:
rework similarly to other modules
* ext/a52dec/gsta52dec.c:
* ext/amrnb/amrnb.c:
* ext/dvdnav/dvdnavsrc.c:
* ext/dvdread/dvdreadsrc.c:
* ext/lame/gstlame.c:
* ext/mad/gstid3tag.c:
* ext/mpeg2dec/gstmpeg2dec.c:
* ext/sidplay/gstsiddec.cc:
* gst/asfdemux/gstasf.c:
* gst/dvdlpcmdec/gstdvdlpcmdec.c:
* gst/dvdsub/gstdvdsubdec.c:
* gst/iec958/ac3iec.c:
* gst/mpegaudioparse/gstmpegaudioparse.c:
* gst/mpegstream/gstmpegstream.c:
* gst/realmedia/rmdemux.c: (plugin_init):
use the correct defines
2006-04-01 09:54:39 +00:00
Thomas Vander Stichele
27d61071fa back to HEAD
Original commit message from CVS:
back to HEAD
2006-03-31 11:13:50 +00:00
Thomas Vander Stichele
927ec677c0 releasing 0.10.3
Original commit message from CVS:
releasing 0.10.3
2006-03-31 11:10:46 +00:00
Tim-Philipp Müller
698b9ab2ae gst/mpegstream/gstmpegparse.c: Don't unref event unconditionally after giving away ownership (gst_pad_push_event(), g...
Original commit message from CVS:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_handle_src_event):
Don't unref event unconditionally after giving away ownership
(gst_pad_push_event(), gst_pad_send_event() and
gst_pad_event_default() take ownership of the event
passed to them). Fixes warnings/crashes caused by
navigation events.
2006-03-29 11:31:55 +00:00
Tim-Philipp Müller
def240435e gst/mpegstream/gstmpegdemux.c: Don't ref NULL caps (private streams have NULL caps) (#336387); also, no need to set c...
Original commit message from CVS:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_send_subbuffer):
Don't ref NULL caps (private streams have NULL caps) (#336387);
also, no need to set caps on the same buffer twice.
2006-03-28 20:19:31 +00:00
Tim-Philipp Müller
bd5026cbea gst/mpegstream/: Don't leak element and pad names in error messages, use
Original commit message from CVS:
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_process_event),
(gst_dvd_demux_handle_dvd_event), (gst_dvd_demux_get_audio_stream),
(gst_dvd_demux_get_subpicture_stream):
* gst/mpegstream/gstmpegdemux.c:
(gst_mpeg_demux_sync_stream_to_time):
Don't leak element and pad names in error messages, use
GST_DEBUG_PAD_NAME instead. Add some more debug code.
2006-03-28 19:44:51 +00:00
Tim-Philipp Müller
f8c4950863 ext/dvdread/dvdreadsrc.c: Name the structure in the custom event with the language codes for the audio and subtitle s...
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_init),
(gst_dvd_read_src_goto_title), (gst_dvd_read_src_read):
Name the structure in the custom event with the
language codes for the audio and subtitle streams
actually like dvddemux expects it to be named.
Set caps on source pad and outgoing buffers.
2006-03-28 19:29:39 +00:00
Tim-Philipp Müller
dfdac6c84c ext/lame/gstlame.*: Make xingheader property non-functional, it's broken anyway after all (use xingmux instead).
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_init), (gst_lame_set_property),
(gst_lame_get_property), (gst_lame_setup):
* ext/lame/gstlame.h:
Make xingheader property non-functional, it's broken anyway
after all (use xingmux instead).
2006-03-28 16:06:05 +00:00
Tim-Philipp Müller
6b67aca635 ext/lame/gstlame.c: On EOS, flush encoder and send remaining data. Fix return value handling in sink event function.
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_sink_event):
On EOS, flush encoder and send remaining data. Fix
return value handling in sink event function.
2006-03-28 15:10:18 +00:00
Jürg Billeter
fdfeed3459 ext/dvdread/dvdreadsrc.c: Fix wrong check for started flag when setting the 'device' property.
Original commit message from CVS:
Patch by: Jürg Billeter  <j at bitron dot ch>
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_set_property):
Fix wrong check for started flag when setting the 'device' property.
We want to allow it when the source is NOT started yet and ignore it
when the source is running.
2006-03-27 14:04:08 +00:00
Fabrizio Gennari
08c4bd4168 gst/asfdemux/gstasfdemux.*: Subtract first timestamp from timestamps, so that stream starts from 0; makes live stream...
Original commit message from CVS:
Patch by: Fabrizio Gennari  <fabrizio dot ge at tiscali dot it>
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_setup_pad),
(gst_asf_demux_process_chunk):
* gst/asfdemux/gstasfdemux.h:
Subtract first timestamp from timestamps, so that
stream starts from 0; makes live streams that don't
start at 0 work again (fixes #317310, #336097).
2006-03-27 10:39:03 +00:00
Christian Kirbach
4f7b8f0d3a configure.ac: Remove CXX tag from AS_LIBTOOL_TAGS, just like we did for
Original commit message from CVS:
Patch by: Christian Kirbach
* configure.ac:
Remove CXX tag from AS_LIBTOOL_TAGS, just like we did for
-good. Fixes build on some systems (#331838).
2006-03-27 10:09:43 +00:00
Tim-Philipp Müller
22ce98cee3 gst/realmedia/rmdemux.c: Extract more tags and also post codec name tag on the bus so this shows up in totem and naut...
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream),
(gst_rmdemux_parse_cont):
Extract more tags and also post codec name tag on the
bus so this shows up in totem and nautilus.
2006-03-24 19:47:37 +00:00
Tim-Philipp Müller
decc9ce593 gst/realmedia/rmdemux.c: Extra data usually goes into the caps as 'codec_data', not as first buffer into the stream.
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream),
(gst_rmdemux_fill_audio_packet), (gst_rmdemux_parse_packet):
Extra data usually goes into the caps as 'codec_data', not
as first buffer into the stream.
Need to byte swap AC3 content in realmedia files for some
reason (fixes #331588).
2006-03-24 19:06:41 +00:00
Tim-Philipp Müller
a72efd63cd gst/realmedia/rmdemux.c: When operating in pull mode, post an error message on the bus when all source pads are unlin...
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_init),
(gst_rmdemux_validate_offset), (gst_rmdemux_loop),
(gst_rmdemux_parse_mdpr), (gst_rmdemux_parse_packet):
When operating in pull mode, post an error message on the
bus when all source pads are unlinked or some other fatal
error occured (#323023). Regrade some recurring debug messages
to LOG level. Convert c++-style comments into C-style ones.
2006-03-24 12:08:39 +00:00
Tim-Philipp Müller
30f6da8abc gst/realmedia/rmdemux.*: Handle unlinked source pads properly and stop if all source pads are unlinked (#323023).
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_perform_seek),
(gst_rmdemux_loop), (gst_rmdemux_chain), (gst_rmdemux_send_event),
(gst_rmdemux_all_source_pads_unlinked),
(gst_rmdemux_at_least_one_stream_flowok), (gst_rmdemux_add_stream),
(gst_rmdemux_parse_packet):
* gst/realmedia/rmdemux.h:
Handle unlinked source pads properly and stop if all source pads
are unlinked (#323023).
2006-03-24 11:42:31 +00:00
Michal Benes
39531423c5 gst/mpegstream/: Timestamps in mpeg stream are 32-bit numbers. Therefore, with a clock_freq of 90kHz this timestamp o...
Original commit message from CVS:
Patch by: Michal Benes <michal dot benes at xeris dot cz>
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_init),
(gst_mpeg_demux_parse_packet), (gst_mpeg_demux_parse_pes),
(gst_mpeg_demux_send_subbuffer), (gst_mpeg_demux_reset):
* gst/mpegstream/gstmpegdemux.h:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_parse_packhead):
Timestamps in mpeg stream are 32-bit numbers. Therefore, with a
clock_freq of 90kHz this timestamp overflows every ~13 hours. This
situation really happens when grabbing DVB streams. Current
mpegdemuxer can not handle this situation correctly and it
restarts counting gstreamer timestamps from zero.
Fixes #326598.
2006-03-23 18:17:34 +00:00
Michael Smith
c2a98834b6 ext/a52dec/gsta52dec.*: Fix #334550: failure to play raw AC3 files due to segment problems.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_sink_event),
(gst_a52dec_chain_raw), (gst_a52dec_change_state):
* ext/a52dec/gsta52dec.h:
Fix #334550: failure to play raw AC3 files due to segment problems.
2006-03-15 22:01:40 +00:00
Christophe Fergeau
f3fd9afefd ext/lame/gstlame.c: use GST_DEBUG_FUNCPTR more often.
Original commit message from CVS:
Patch by: Christophe Fergeau  <teuf gnome org>
* ext/lame/gstlame.c: (gst_lame_release_memory),
(gst_lame_finalize), (gst_lame_class_init),
(gst_lame_sink_setcaps), (gst_lame_init), (gst_lame_sink_event),
(gst_lame_change_state):
Fix some memory leaks (#333345), use GST_DEBUG_FUNCPTR more often.
2006-03-15 13:43:42 +00:00
Tim-Philipp Müller
5ed66b9e38 ext/mad/gstmad.c: Include AUDIO_CODEC tag with tags posted if input is not framed (#334258). Use _scale() util functi...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_convert_sink), (gst_mad_update_info),
(gst_mad_sink_event), (gst_mad_change_state):
Include AUDIO_CODEC tag with tags posted if input is not
framed (#334258). Use _scale() util functions in more places.
2006-03-14 19:41:17 +00:00
Christophe Fergeau
6b069c0c1e ext/lame/gstlame.c: mark the xing-header property as BROKEN (see http://bugzilla.gnome.org/show_bug.cgi?id=330317#c19...
Original commit message from CVS:
2006-03-12  Christophe Fergeau  <teuf@gnome.org>

Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>

* ext/lame/gstlame.c: (gst_lame_class_init): mark the xing-header
property as BROKEN (see
http://bugzilla.gnome.org/show_bug.cgi?id=330317#c19 for an
explanation why it's broken).
2006-03-12 11:00:33 +00:00
Alex Lancaster
267d257bb6 ext/mad/gstid3tag.c: Add support for writing the GST_TAG_ALBUM_VOLUME_NUMBER
Original commit message from CVS:
* ext/mad/gstid3tag.c: (tag_list_to_id3_tag_foreach):
Add support for writing the GST_TAG_ALBUM_VOLUME_NUMBER
tag (#333683, patch by: Alex Lancaster).
2006-03-07 11:19:55 +00:00
Wim Taymans
0e71a39449 ext/amrnb/: Further fancyfication.
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_init),
(gst_amrnbdec_setcaps), (gst_amrnbdec_chain),
(gst_amrnbdec_state_change):
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_init),
(gst_amrnbenc_setcaps), (gst_amrnbenc_chain),
(gst_amrnbenc_state_change):
* ext/amrnb/amrnbenc.h:
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_init),
(gst_amrnbparse_query):
Further fancyfication.
Use _take to get writable data from the adapter.
Precalc packet duration.
Handle disconts.
Forward _push to upstream.
Post error messages when something goes wrong.
Remove old code in amrnbparse.
Don't ignore query results from upstream.
2006-03-02 20:03:00 +00:00
Michael Smith
bc79caeb27 ext/amrnb/amrnbenc.c: The AMR encoder writes into the audio buffers it processes, so use gst_buffer_make_writable() o...
Original commit message from CVS:
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_chain):
The AMR encoder writes into the audio buffers it processes, so
use gst_buffer_make_writable() on buffers we might (they go through
an adapter, so there can be copying going on later anyway) be
encoding.
2006-03-02 18:45:40 +00:00
Jens Granseuer
b06e084912 gst/mpegstream/gstmpegparse.c: Declare variables at the beginning of a block and make
Original commit message from CVS:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_pad_added),
(gst_mpeg_parse_handle_src_query):
Declare variables at the beginning of a block and make
gcc-2.9x happy (fixes #328957; patch by: Jens Granseuer).
2006-03-01 12:35:09 +00:00
Fabrizio
3de20e5147 gst/asfdemux/gstasfdemux.c: Read packet size, sequence and padsize in right order again
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_handle_data):
Read packet size, sequence and padsize in right order again
(fixes #332796; patch by: Fabrizio Gennari).
2006-03-01 09:55:49 +00:00
Edward Hervey
66ea4f8f5d gst/iec958/ac3iec.c: Set a proper klass (Codec/Muxer/Audio) for the ElementDetails.
Original commit message from CVS:
* gst/iec958/ac3iec.c:
Set a proper klass (Codec/Muxer/Audio) for the ElementDetails.
2006-02-28 13:50:02 +00:00
Jan Schmidt
2c348dfdc5 configure.ac: Make the id3tag and mad checks check for both a header and the appropriate library if the pkg-config is...
Original commit message from CVS:
* configure.ac:
Make the id3tag and mad checks check for both a header and the
appropriate library if the pkg-config is missing. (Closes #331842)
Split the id3tag and mad checks into 2 pieces. Sometime soon I might
do the same for the plugins themselves.
2006-02-27 18:37:47 +00:00
Tim-Philipp Müller
6438094695 ext/mpeg2dec/gstmpeg2dec.*: Don't treat STATE_INVALID as fatal error; throw an error only after five consecutive deco...
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_init),
(gst_mpeg2dec_reset), (gst_mpeg2dec_chain):
* ext/mpeg2dec/gstmpeg2dec.h:
Don't treat STATE_INVALID as fatal error; throw an error
only after five consecutive decoding errors. Makes decoding
mpeg streams more robust and fixes playback of joined clips
(#300682).
2006-02-27 14:49:05 +00:00
Tim-Philipp Müller
9d6d85d89d ext/dvdnav/dvdnavsrc.h: Oops. forgot to add this one.
Original commit message from CVS:
* ext/dvdnav/dvdnavsrc.h:
Oops. forgot to add this one.
2006-02-26 22:33:33 +00:00
Julien Moutte
37299ea486 ext/Makefile.am: Fix dist-check.
Original commit message from CVS:
2006-02-26  Julien MOUTTE  <julien@moutte.net>

* ext/Makefile.am: Fix dist-check.
2006-02-26 21:25:01 +00:00
Tim-Philipp Müller
237953af4e configure.ac: Disable dvdnavsrc for now.
Original commit message from CVS:
* configure.ac:
Disable dvdnavsrc for now.
2006-02-26 18:01:15 +00:00
Tim-Philipp Müller
57d8b3a5fc dvdnavsrc ported to 0.10, for the most part at least. Not quite ready for prime time yet though.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/dvdnav/Makefile.am:
* ext/dvdnav/dvdnavsrc.c: (gst_dvd_nav_src_base_init),
(gst_dvd_nav_src_class_init), (gst_dvd_nav_src_check_get_range),
(gst_dvd_nav_src_init), (gst_dvd_nav_src_finalize),
(gst_dvd_nav_src_is_open), (gst_dvd_nav_src_set_property),
(gst_dvd_nav_src_get_property), (gst_dvd_nav_src_set_clock),
(gst_dvd_nav_src_tca_seek), (gst_dvd_nav_src_update_streaminfo),
(gst_dvd_nav_src_set_domain), (gst_dvd_nav_src_update_highlight),
(gst_dvd_nav_src_user_op), (dvdnav_get_event_name),
(dvdnav_get_read_domain_name), (gst_dvd_nav_src_print_event),
(gst_dvd_nav_src_make_dvd_event),
(gst_dvd_nav_src_structure_set_uint64),
(gst_dvd_nav_src_push_dvd_nav_packet_event),
(gst_dvd_nav_src_push_clut_change_event), (read_vts_info),
(gst_dvd_nav_src_push_titlelang_event),
(gst_dvd_nav_src_process_next_block), (gst_dvd_nav_src_create),
(gst_dvd_nav_src_start), (gst_dvd_nav_src_stop),
(gst_dvd_nav_src_handle_navigation_event),
(gst_dvd_nav_src_handle_seek_event), (gst_dvd_nav_src_src_event),
(gst_dvd_nav_src_query_position), (gst_dvd_nav_src_query_duration),
(gst_dvd_nav_src_query), (gst_dvd_nav_src_uri_get_type),
(gst_dvd_nav_src_uri_get_protocols), (gst_dvd_nav_src_uri_get_uri),
(gst_dvd_nav_src_uri_set_uri), (gst_dvd_nav_src_uri_handler_init),
(gst_dvd_nav_src_do_init), (plugin_init):
dvdnavsrc ported to 0.10, for the most part at least. Not quite
ready for prime time yet though.
2006-02-26 17:55:05 +00:00
Tim-Philipp Müller
56f0cea8e6 Port dvdsubdec to 0.10
Original commit message from CVS:
* configure.ac:
* gst/dvdsub/Makefile.am:
* gst/dvdsub/gstdvdsubdec.c: (gst_dvd_sub_dec_base_init),
(gst_dvd_sub_dec_class_init), (gst_dvd_sub_dec_init),
(gst_dvd_sub_dec_finalize), (gst_dvd_sub_dec_src_event),
(gst_dvd_sub_dec_get_event_delay), (gst_dvd_sub_dec_parse_subpic),
(gst_get_nibble), (gst_setup_palette), (gst_get_rle_code),
(gst_draw_rle_line), (gst_dvd_sub_dec_merge_title),
(gst_send_empty_fill), (gst_send_subtitle_frame),
(gst_dvd_sub_dec_advance_time), (gst_dvd_sub_dec_chain),
(gst_dvd_sub_dec_sink_event), (gst_dvd_sub_dec_handle_dvd_event),
(plugin_init):
* gst/dvdsub/gstdvdsubdec.h:
Port dvdsubdec to 0.10
2006-02-22 14:54:54 +00:00
Jan Schmidt
1d66c5e4e9 gst/mpegstream/gstdvddemux.c: Push the rank up to SECONDARY+1 so that dvddemux is preferred over mpegdemux for MPEG-2...
Original commit message from CVS:
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_plugin_init):
Push the rank up to SECONDARY+1 so that dvddemux is preferred over
mpegdemux for MPEG-2 video streams.
2006-02-21 16:24:10 +00:00
Jan Schmidt
60af430c7f configure.ac: Bump nano back to CVS
Original commit message from CVS:

* configure.ac:
Bump nano back to CVS
2006-02-20 19:16:10 +00:00
Jan Schmidt
e844665960 configure.ac: releasing 0.10.2, "Season to Taste"
Original commit message from CVS:
* configure.ac:
releasing 0.10.2, "Season to Taste"
2006-02-20 19:13:54 +00:00
Jan Schmidt
0bb0050443 configure.ac: releasing 0.10.1.3 prelease for 0.10.2
Original commit message from CVS:
* configure.ac:
releasing 0.10.1.3 prelease for 0.10.2
2006-02-19 23:45:34 +00:00
Tim-Philipp Müller
7858b15ed2 gst/asfdemux/gstasfdemux.c: In sink event handler, release object lock again _before_ sending EOS event downstream (#...
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_sink_event):
In sink event handler, release object lock again
_before_ sending EOS event downstream (#313838).
2006-02-17 17:58:44 +00:00
Christian Schaller
97b5add7e6 fix rank of asfdemux
Original commit message from CVS:
fix rank of asfdemux
2006-02-17 17:54:37 +00:00
Jan Schmidt
11291dda9d configure.ac: releasing 0.10.1.2 prelease for 0.10.2
Original commit message from CVS:
* configure.ac:
releasing 0.10.1.2 prelease for 0.10.2
2006-02-17 15:08:28 +00:00
Tim-Philipp Müller
c6ca130b97 ext/mpeg2dec/gstmpeg2dec.c: When we need to crop the output buffer, make sure we create a buffer of the right size an...
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (crop_copy_i420_buffer),
(crop_copy_i422_buffer), (crop_buffer):
When we need to crop the output buffer, make sure we
create a buffer of the right size and respect the implicit
striding used for I420 elsewhere in GStreamer (#331301).
2006-02-17 11:51:12 +00:00
Edward Hervey
d2445ecbf4 gst/asfdemux/gstasfdemux.c: Do not error out on non-recognized streams. Ignore them and allow playback of the other s...
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_stream):
Do not error out on non-recognized streams. Ignore them and allow
playback of the other streams.
2006-02-17 10:24:56 +00:00
Jan Schmidt
1f14799cea gst/dvdlpcmdec/gstdvdlpcmdec.c: Add a small sanity check for LPCM reading.
Original commit message from CVS:
* gst/dvdlpcmdec/gstdvdlpcmdec.c: (gst_dvdlpcmdec_chain_dvd):
Add a small sanity check for LPCM reading.
2006-02-17 10:10:40 +00:00
Edward Hervey
821effe791 gst/asfdemux/gstasfdemux.c: Take into account the file properties preroll value for timestamping/newsegment. It's wei...
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_file):
Take into account the file properties preroll value for
timestamping/newsegment. It's weird this value was commented out.
2006-02-17 09:54:43 +00:00
Wim Taymans
8d08722f55 gst/asfdemux/Makefile.am: More asf makefile fixing.
Original commit message from CVS:
* gst/asfdemux/Makefile.am:
More asf makefile fixing.
2006-02-16 17:57:59 +00:00
Wim Taymans
92f24f4395 ext/lame/gstlame.c: Fix up lame a bit.
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_init), (gst_lame_chain),
(gst_lame_change_state):
Fix up lame a bit.
Apply patch #319782 by Gautier Portet.
2006-02-16 17:16:06 +00:00
Edward Hervey
1d4e8c977e gst/asfdemux/Makefile.am: But we do need to link against the riff libraryr.
Original commit message from CVS:
* gst/asfdemux/Makefile.am:
But we do need to link against the riff libraryr.
2006-02-16 11:14:11 +00:00
Edward Hervey
ec51d1f77e gst/asfdemux/Makefile.am: We don't want asfmux.c yet.
Original commit message from CVS:
* gst/asfdemux/Makefile.am:
We don't want asfmux.c yet.
2006-02-16 11:08:51 +00:00
Jon Trowbridge
a2ac615910 ext/mad/gstmad.c: Port fixes for bugs 314771, 308772, 140237, and 302625
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_init), (scale), (gst_mad_update_info),
(gst_mad_sink_event), (gst_mad_check_caps_reset), (gst_mad_chain),
(gst_mad_change_state):
Port fixes for bugs 314771, 308772, 140237, and 302625
from 0.8 (Patch by Jonathan Matthew, Fixes #329575)
Use GST_EVENT_FLUSH_STOP to clear data from the current input
buffer, to avoid using it for any future decoding.
2006-02-16 09:50:43 +00:00
Tim-Philipp Müller
366b006b7d asfdemux ported to 0.10. Does still need a bit of work (seems like there's something funky going on when timestamping...
Original commit message from CVS:
* configure.ac:
* gst/asfdemux/asfheaders.c: (gst_asf_identify_guid),
(gst_asf_get_guid_nick):
* gst/asfdemux/asfheaders.h:
* gst/asfdemux/gstasf.c: (plugin_init):
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_base_init),
(gst_asf_demux_class_init), (gst_asf_demux_init),
(gst_asf_demux_sink_event), (gst_asf_demux_handle_seek_event),
(gst_asf_demux_handle_src_event),
(gst_asf_demux_get_current_offset), (gst_asf_demux_chain),
(gst_asf_demux_skip_bytes), (gst_asf_demux_identify_guid),
(gst_asf_demux_get_uint8), (gst_asf_demux_get_uint16),
(gst_asf_demux_get_uint32), (gst_asf_demux_get_uint64),
(gst_asf_demux_get_var_length), (gst_asf_demux_get_buffer),
(gst_asf_demux_get_bytes), (gst_asf_demux_get_string),
(gst_asf_demux_get_guid), (gst_asf_demux_get_obj_file),
(gst_asf_demux_get_bitrate_record),
(gst_asf_demux_get_obj_comment), (gst_asf_demux_get_obj_header),
(gst_asf_demux_get_obj_header_ext), (gst_asf_demux_get_obj_stream),
(gst_asf_demux_get_replicated_data), (gst_asf_demux_get_obj_data),
(gst_asf_demux_get_obj_data_correction),
(gst_asf_demux_get_stream_audio),
(gst_asf_demux_get_stream_correction),
(gst_asf_demux_get_stream_video),
(gst_asf_demux_get_stream_video_format),
(gst_asf_demux_get_stream), (gst_asf_demux_setup_pad),
(gst_asf_demux_add_audio_stream), (gst_asf_demux_add_video_stream),
(gst_asf_demux_process_stream),
(gst_asf_demux_get_gst_tag_from_tag_name),
(gst_asf_demux_commit_taglist),
(gst_asf_demux_process_ext_content_desc),
(gst_asf_demux_get_object_header), (gst_asf_demux_process_data),
(gst_asf_demux_process_header), (gst_asf_demux_process_file),
(gst_asf_demux_process_comment),
(gst_asf_demux_process_bitrate_props_object),
(gst_asf_demux_process_header_ext), (gst_asf_demux_process_object),
(gst_asf_demux_descramble_segment),
(gst_asf_demux_element_send_event),
(gst_asf_demux_send_event_unlocked), (gst_asf_demux_push_buffer),
(gst_asf_demux_process_chunk), (gst_asf_demux_process_segment),
(gst_asf_demux_handle_data), (gst_asf_demux_parse_data),
(gst_asf_demux_get_src_query_types),
(gst_asf_demux_handle_src_query), (gst_asf_demux_change_state):
* gst/asfdemux/gstasfdemux.h:
asfdemux ported to 0.10. Does still need a bit of work (seems like
there's something funky going on when timestamping video frames).
The seeking code is likely to make Wim cry, but hey, at least it
compiles.
2006-02-15 15:48:07 +00:00
Wim Taymans
2c813b4b21 ext/amrnb/amrnbdec.c: Some more comments.
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_setcaps),
(gst_amrnbdec_chain), (gst_amrnbdec_state_change):
Some more comments.

* ext/mpeg2dec/gstmpeg2dec.c: (crop_buffer), (handle_slice):
Applied patch from Fabrizio Gennari, fixes #330844.
2006-02-15 10:18:39 +00:00
Tim-Philipp Müller
7e9d336ceb ext/dvdread/dvdreadsrc.*: Let's try to play the title the user set via the URI handler or via properties instead of a...
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_init),
(gst_dvd_read_src_class_init), (gst_dvd_read_src_start),
(gst_dvd_read_src_stop), (gst_dvd_read_src_goto_title),
(gst_dvd_read_src_set_property), (gst_dvd_read_src_get_property),
(gst_dvd_read_src_uri_get_uri), (gst_dvd_read_src_uri_set_uri):
* ext/dvdread/dvdreadsrc.h:
Let's try to play the title the user set via the URI handler or
via properties instead of always playing the first title. Also,
Also, count title/chapter/angle number in URI and properties
from 1 rather than 0.
2006-02-14 14:57:18 +00:00
Tim-Philipp Müller
024b052249 ext/dvdread/dvdreadsrc.c: Don't implement GstBaseSrc::get_size or GstBaseSrc::is_seekable, otherwise GstBaseSrc will ...
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_class_init),
(gst_dvd_read_src_get_size), (gst_dvd_read_src_do_seek),
(gst_dvd_read_src_do_duration_query):
Don't implement GstBaseSrc::get_size or GstBaseSrc::is_seekable,
otherwise GstBaseSrc will think we can operate pull_range based,
which we don't really, and typefinding will fail miserably.
Also, make seeking work somewhat (only works with flumpegdemux
at the moment, mpegstream needs fixing for that first).
2006-02-13 14:09:26 +00:00
Tim-Philipp Müller
0904aa12c9 ext/dvdread/dvdreadsrc.c: Only allocate buffer once we know exactly how much we need, rather than gratuitously alloca...
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_read),
(gst_dvd_read_src_create), (gst_dvd_read_src_src_event):
Only allocate buffer once we know exactly how much we need,
rather than gratuitously allocating 2MB-buffers all the time
even if we usually need much less than that. Also, demote
a debug message from DEBUG to LOG level.
2006-02-13 14:00:35 +00:00
Tim-Philipp Müller
50a7874949 ext/dvdread/dvdreadsrc.c: Add some more debugging and fix duration query in BYTES.
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_class_init),
(gst_dvd_read_src_seekable), (gst_dvd_read_src_get_size),
(gst_dvd_read_src_do_seek), (gst_dvd_read_src_do_duration_query),
(gst_dvd_read_src_do_position_query):
Add some more debugging and fix duration query in BYTES.
2006-02-10 12:40:54 +00:00
Tim-Philipp Müller
50501c07be Half-baked port to 0.10. Needs some love in the seeking department, but at least it does something.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/dvdread/Makefile.am:
* ext/dvdread/dvdreadsrc.c:
* ext/dvdread/dvdreadsrc.h:
Half-baked port to 0.10. Needs some love
in the seeking department, but at least
it does something.
* ext/dvdread/stream_labels.c:
* ext/dvdread/stream_labels.h:
Remove these (we use ISO-639 language codes internally; applications
that want to translate those into language names for display to the
user should rely on the iso-codes package for that).
2006-02-09 17:27:57 +00:00
Wim Taymans
b34a106764 ext/amrnb/amrnbdec.*: Fix amrnbdec, handle events, take copy from adapter since the decoder apparently writes in the ...
Original commit message from CVS:
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_init),
(gst_amrnbdec_setcaps), (gst_amrnbdec_event), (gst_amrnbdec_chain),
(gst_amrnbdec_state_change):
* ext/amrnb/amrnbdec.h:
Fix amrnbdec, handle events, take copy from adapter since the decoder
apparently writes in the source data.
Use some _scale_int, and precalc duration.
Fix some leaks, post ERROR messages.
2006-02-06 15:55:28 +00:00
Tim-Philipp Müller
d7075170d8 gst/realmedia/rmdemux.c: One source pad not being linked is not an error condition when we're still parsing the heade...
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
One source pad not being linked is not an error condition when we're
still parsing the header. In this case (e.g. where we don't have a
suitable decoder installed) just pretend everything is fine, so that
the demuxer will actually go on to signal no-more-pads when done
parsing the header, otherwise  decodebin/playbin will never post the
appropriate error message if decoders are not available.
2006-02-04 15:22:02 +00:00
Edgard Lima
a82a14f75d Just make it compile with --disable-gst-debug.
Original commit message from CVS:
Just make it compile with --disable-gst-debug.
2006-02-03 18:24:54 +00:00
Radoslaw Szkodzinski
bcd611761c ext/mad/gstmad.c: Merge patch from Radoslaw Szkodzinski (bug 326734)
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_convert_src), (scale),
(gst_mad_check_caps_reset), (gst_mad_chain):
Merge patch from Radoslaw Szkodzinski (bug 326734)
2006-01-31 22:03:30 +00:00
Stefan Kost
aef0f9cfb1 ext/mad/gstid3tag.c: fixing Gdate handling enabling mux/demux mode switching adding better debug output
Original commit message from CVS:
* ext/mad/gstid3tag.c: (tag_list_to_id3_tag_foreach),
(gst_id3_tag_get_tag_to_render), (gst_id3_tag_sink_event),
(gst_id3_tag_src_link), (gst_id3_tag_send_tag_event),
(gst_id3_tag_chain):
fixing Gdate handling
enabling mux/demux mode switching
adding better debug output
2006-01-30 22:00:18 +00:00
Tim-Philipp Müller
279475a917 gst/mpegstream/gstmpegparse.c: If we haven't set caps on a source pad yet, the caps on the pad are NULL, not un-fixed...
Original commit message from CVS:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_send_buffer):
If we haven't set caps on a source pad yet, the caps on the
pad are NULL, not un-fixed. Set caps on outgoing buffers.
2006-01-30 18:57:45 +00:00
Tim-Philipp Müller
f0e3a8e101 ext/lame/gstlame.*: Contrary to what the const char in the lame API might suggest, lame expects us to keep the string...
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_finalize), (gst_lame_class_init),
(gst_lame_init), (add_one_tag), (gst_lame_set_metadata):
* ext/lame/gstlame.h:
Contrary to what the const char in the lame API might suggest,
lame expects us to keep the strings we pass to id3tag_set_foo()
around; it doesn't free them either though, so we have to store
them somewhere and free them later when we can be sure lame
doesn't need them any longer.
2006-01-23 18:37:16 +00:00
Tim-Philipp Müller
9b224309a2 ext/lame/gstlame.c: don't pass an uninitialised string pointer to lame if we don't know how to handle the tag type, a...
Original commit message from CVS:
* ext/lame/gstlame.c: (add_one_tag):
Fix handling of GST_TAG_DATE (#311679), don't pass an
uninitialised string pointer to lame if we don't know
how to handle the tag type, and fix minor memory leak.
2006-01-23 15:02:04 +00:00
Tim-Philipp Müller
0560526695 ext/mad/gstmad.c: Fix debug message.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
Fix debug message.
2006-01-23 10:15:27 +00:00
Martin Soto
ba4f177426 gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_process_event): Erase spurious call to gst_segment_set_newsegment.
Original commit message from CVS:
2006-01-22  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_process_event):
Erase spurious call to gst_segment_set_newsegment.
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_process_event): Call
the superclass method when handling NEWSEGMENT events.
(gst_dvd_demux_handle_dvd_event): Get rid of dvd-audio-shutdown
and dvd-audio-restart event handling. There are currently less
hackish ways of handling the sparse audio stream problem.
2006-01-22 12:00:46 +00:00
Thomas Vander Stichele
e8805d7869 fix up error domains, error strings, and use of translation
Original commit message from CVS:
2006-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>

* ext/dvdnav/dvdnavsrc.c: (if):
* ext/dvdread/stream_labels.c:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_segment):
* gst/realmedia/rmdemux.c: (gst_rmdemux_loop):
fix up error domains, error strings, and use of translation
* po/POTFILES.in:
fix up this file, even though none of them are actually marked
for build yet.
2006-01-20 14:18:20 +00:00
Martin Soto
b34e7d995b gst/mpegstream/gstmpegparse.h (struct _GstMPEGParse): gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_reset) (gst_mpeg_...
Original commit message from CVS:
2006-01-19  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParse):
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_reset)
(gst_mpeg_parse_process_event, gst_mpeg_parse_parse_packhead)
(gst_mpeg_parse_change_state):
Make timestamp adjustment somewhat milder. Actual timestamps are
now sent unmodified unless an actual gap is found in the
stream. This should fix time display when playing most MPEG
files.
2006-01-19 21:32:05 +00:00
Edward Hervey
33a5dff9bb gst/mpegstream/gstmpegdemux.c: tss tss... always set caps on outgoing buffer.
Original commit message from CVS:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_send_subbuffer):
tss tss... always set caps on outgoing buffer.
2006-01-18 09:30:00 +00:00
Thomas Vander Stichele
9715945ef3 back to HEAD
Original commit message from CVS:
back to HEAD
2006-01-13 19:30:31 +00:00
Thomas Vander Stichele
ee93779012 releasing 0.10.1
Original commit message from CVS:
releasing 0.10.1
2006-01-13 19:25:42 +00:00
Thomas Vander Stichele
a75ebe24c8 prerelease
Original commit message from CVS:
prerelease
2006-01-11 11:44:02 +00:00
Tim-Philipp Müller
9828b301eb Pass unhandled queries upstream (useful e.g. for SEEKING query)
Original commit message from CVS:
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_query):
* ext/mad/gstid3tag.c: (gst_id3_tag_src_query):
* ext/mad/gstmad.c: (gst_mad_src_query):
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_src_query):
* ext/sidplay/gstsiddec.cc:
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_handle_src_query):
* gst/realmedia/rmdemux.c: (gst_rmdemux_src_query):
Pass unhandled queries upstream (useful e.g. for SEEKING query)
(fixes #325652; based on patch by: Philippe); make rmdemux return
FALSE for position queries, instead of setting -1 as value and
returning TRUE.
2006-01-10 11:43:37 +00:00
Martin Soto
216917d0b1 gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_adjust_ts)
Original commit message from CVS:
2006-01-05  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_adjust_ts)
(gst_mpeg_parse_process_event, gst_mpeg_parse_pad_added): Don't
rewrite timestamps in the case segments are being set from
upstream, but use timestamps unmodified. Also send proper position
values. This allows for correct time display and makes queries
work in sink elements.

* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_init)
(gst_dvd_demux_handle_dvd_event, gst_dvd_demux_send_subbuffer):
Rename flush_filter to segment_filter, which is better represents
what the arreibute does.

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_process_event):
Activate segment filtering when a timestamp discontinuity is seen.
2006-01-05 21:36:49 +00:00
Tim-Philipp Müller
b528f778d0 ext/mad/gstmad.c: Don't forget that we need to send out a newsegment event after a restart even if we don't have enou...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
Don't forget that we need to send out a newsegment event after a
restart even if we don't have enough data to decode a frame right
now.
2006-01-04 15:17:15 +00:00
Martin Soto
4252e5c174 gst/mpegstream/gstdvddemux.c (gst_dvd_demux_handle_dvd_event): Use the new "audio-shutdown" and "audio-restart" DVD e...
Original commit message from CVS:
2005-12-31  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_handle_dvd_event):
Use the new "audio-shutdown" and "audio-restart" DVD events
instead of the "spu-still-frame" event to shutdown and restart
the audio pipeline.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_adjust_ts):
Check for cases where the segment-based adjustment calculation
would produce negative values (which result in an overflow) and
return GST_CLOCK_TIME_NONE instead.

* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_init)
(gst_dvd_demux_process_event, gst_dvd_demux_send_subbuffer):
Add a mechanism to discard audio buffers with timestamps outside
the currently set segment. This was causing (sometimes serious)
synchronization problems after seeking in DVDs with LPCM audio,
since VOBUs usually contain audio material that lies outside the
timestamp range specified by the header.
2005-12-30 23:51:46 +00:00
Jan Schmidt
f8ccb04412 ext/mad/gstid3tag.c: Remove lingering reference to GstID3Demux
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_get_type):
Remove lingering reference to GstID3Demux

* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_pes):
Don't output debug saying padding streams are unknown type,
because they're not
2005-12-30 16:25:05 +00:00
Martin Soto
3d13141529 gst/mpegstream/gstdvddemux.c (AUDIO_CAPS)
Original commit message from CVS:
2005-12-27  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/mpegstream/gstdvddemux.c (AUDIO_CAPS)
(gst_dvd_demux_get_audio_stream): Use audio/x-lpcm as mimetype for
LPCM.

* gstmpegdemux.h:
* gstmpegdemux.c (gst_mpeg_demux_get_video_stream)
(gst_mpeg_demux_get_audio_stream):
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_get_video_stream)
(gst_dvd_demux_get_audio_stream)
(gst_dvd_demux_get_subpicture_stream)
(gst_dvd_demux_send_subbuffer):
Send current* pad buffers with appropriate caps.
2005-12-27 19:06:08 +00:00
Martin Soto
f2d10b0927 gst/iec958/ac3iec.*: (NORMAL_CAPS_DEF, RAW_AUDIO_CAPS_DEF, ac3iec_class_init)
Original commit message from CVS:
2005-12-26  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/iec958/ac3iec.h:
* gst/iec958/ac3iec.c:
(NORMAL_CAPS_DEF, RAW_AUDIO_CAPS_DEF, ac3iec_class_init)
(ac3iec_init, ac3iec_set_property, ac3iec_get_property): Add a
raw-audio property to ac3iec958 that allows setting the source pad
caps to raw audio instead of audio/x-iec958. This makes it
possible to use ac3iec958 together with the normal alsasink
element to drive an external receiver that autodetects AC3
content.
2005-12-26 17:48:32 +00:00
Michael Smith
96b959fc53 gst/iec958/ac3iec.*: Accept audio/x-ac3 and audio/ac3 to ac3iec958 element.
Original commit message from CVS:
* gst/iec958/ac3iec.c: (ac3iec_init), (ac3iec_setcaps),
(ac3iec_chain_dvd):
* gst/iec958/ac3iec.h:
Accept audio/x-ac3 and audio/ac3 to ac3iec958 element.
2005-12-23 15:48:04 +00:00
Tim-Philipp Müller
9c580660a8 ext/mpeg2dec/gstmpeg2dec.c: When getting a seek event, first check if the upstream element can handle it and only do ...
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_src_event):
When getting a seek event, first check if the upstream element
can handle it and only do our own seek stuff when it can't
(should fix #322856).
2005-12-21 10:25:34 +00:00
Tim-Philipp Müller
eb7ad77b4b ext/mpeg2dec/gstmpeg2dec.c: Really convert to BYTES format when we want to convert to bytes (use right variable; fixe...
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* ext/mpeg2dec/gstmpeg2dec.c: (normal_seek):
Really convert to BYTES format when we want to convert
to bytes (use right variable; fixes #322856).
2005-12-21 09:58:43 +00:00
Martin Soto
4c81add3e6 Big mpegparse clean up, second round:
Original commit message from CVS:
2005-12-19  Martin Soto  <martinsoto@users.sourceforge.net>

Big mpegparse clean up, second round:

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_handle_dvd_event):
Send and EOS event down the audio pipeline when an still frame
event arrives. This prevents the pipeline from locking when a
still menu comes directly after a flush.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_reset):
Don't send a newsegment in reset.
(gst_mpeg_parse_adjust_ts): Check for invalid timestamps.
(gst_mpeg_parse_handle_newsegment, gst_mpeg_parse_process_event):
Move the code of handle_newsegment to process_event. Send a
NEWSEGMENT after FLUSH_STOP.
(gst_mpeg_parse_change_state): Send a NEWSEGMENT right after
moving to PAUSED.

* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_send_event)
(gst_mpeg_demux_class_init): Don't override send_event.
* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_init)
(gst_mpeg_demux_send_event, gst_mpeg_demux_send_subbuffer)
(gst_mpeg_demux_reset):
* gst/mpegstream/gstmpegdemux.h:  Get rid of just_flushed
attribute.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_process_event):
Reset the mpegparse element after a flush.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_handle_newsegment):
Don't forward events.
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_process_event):
* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParseClass):
handle_newsegment is not a virtual method anymore.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_send_newsegment)
(gst_mpeg_parse_reset, gst_mpeg_parse_class_init):
* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParseClass): Get
rid of send_newsegment virtual method.

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_process_event): Only
handle DVD events and call the superclass method for other event
types.
* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_send_event): Don't
override process_event anymore.
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_event)
(gst_mpeg_parse_process_event): Move actual event processing to
process event so that subclasses can properly override or extend
it.
* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParseClass):
Eliminate time parameter in process event.

* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_init)
(gst_mpeg_demux_parse_packet, gst_mpeg_demux_parse_pes)
(gst_mpeg_demux_send_subbuffer):
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_class_init)
(gst_mpeg_parse_parse_packhead, gst_mpeg_parse_event)
(gst_mpeg_parse_chain): Use the new adjust_ts method instead of
adding the value of the adjust attribute.
* gst/mpegstream/gstmpegdemux.h (struct _GstMPEGVideoStream): Get
rid of the adjust attribute. Now all timestamp adjustments are
performed by mpegparse using the current segment.
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_adjust_ts)
(gst_mpeg_parse_class_init): Implement the adjust_ts method based
on the adjust attribute for SCR values and the current segment.
* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParseClass): New
adjust_ts virtual method to adjust timestamps for outgoing
buffers.
* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_send_newsegment)
(gst_mpeg_demux_parse_packet): Don't override send_newsegment.
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_class_init)
(gst_dvd_demux_handle_newsegment): Don't override
handle_newsegment.
(gst_dvd_demux_process_event, gst_dvd_demux_handle_dvd_event):
Check for DVD events in process_event instead of
handle_dvd_event.

* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParseClass):
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_handle_newsegment)
(gst_mpeg_parse_send_newsegment, gst_mpeg_parse_send_event):
* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_process_event)
(gst_mpeg_demux_send_event):
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_process_event)
(gst_dvd_demux_handle_dvd_event):
Eliminate the time parameter in send_event.
2005-12-19 17:26:47 +00:00
Jan Schmidt
16d1543b88 ext/mad/gstid3tag.c: Fix typefinding in id3demux, and then remove it in favour of the new LGPL id3demux in gst-plugin...
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_do_typefind),
(gst_id3_tag_do_caps_nego), (gst_id3_tag_chain), (plugin_init):
Fix typefinding in id3demux, and then remove it in favour
of the new LGPL id3demux in gst-plugins-good
* ext/mad/gstmad.c: (gst_mad_dispose):
dispose can run more than once.
2005-12-18 15:08:15 +00:00
Stefan Kost
80d81b7e34 gst/asfdemux/gstasfmux.c: change some char* into char[]
Original commit message from CVS:
* gst/asfdemux/gstasfmux.c: (gst_asfmux_file_start):
change some char* into char[]
2005-12-16 21:56:32 +00:00
Edward Hervey
b5261874f0 gst/realmedia/rmdemux.c: Remove memleak from unused GstRMDemuxStream
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
Remove memleak from unused GstRMDemuxStream
2005-12-15 17:06:10 +00:00
Michael Smith
b77f717fa6 ext/mad/gstid3tag.c: Use the correct function to free typefind factory list.
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list),
(gst_id3_tag_do_typefind):
Use the correct function to free typefind factory list.
2005-12-12 19:17:11 +00:00
Tim-Philipp Müller
741c6663e2 ext/mad/gstmad.c: For position and duration queries in TIME format, try the peer first (might be a demuxer).
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_src_query):
For position and duration queries in TIME format, try the peer
first (might be a demuxer).
2005-12-09 18:38:53 +00:00
Martin Soto
81f2585c88 gst/mpegstream/gstdvddemux.c (gst_dvd_demux_handle_newsegment): Properly handle non contiguous VOBUs by adding the se...
Original commit message from CVS:
2005-12-08  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_handle_newsegment):
Properly handle non contiguous VOBUs by adding the segment accum
field to the adjust value.

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_class_init)
(gst_dvd_demux_init, gst_dvd_demux_handle_newsegment): Extend
handle_newsegment to prevent sending actual newsegment events and
use tiemstamp rewriting instead.
(gst_dvd_demux_handle_dvd_event): Don't send a newsegment after
dvd-lang-codes.
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_handle_newsegment)
(gst_mpeg_parse_event):
* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParseClass):
Add a new parameter to handle_newsegment to allow controlling
whether newsegment events are forwarded or not.

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_init)
(gst_dvd_demux_handle_dvd_event, gst_dvd_demux_send_subbuffer)
(gst_dvd_demux_reset):
last_end_ptm and discont_time aren't necessary anymore, since
timestamp adjustment is now replaced by newsegment events.
(gst_dvd_demux_init): Prevent MPEGParse from adjusting
timestamps.
* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_handle_dvd_event):
Don't handle dvd-nav-packet events anymore, since the are now
replaced by standard newsegment events.

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_init)
(gst_dvd_demux_handle_dvd_event, gst_dvd_demux_send_subbuffer)
(gst_dvd_demux_change_state):
* gst/mpegstream/gstdvddemux.h:
Get rid of the ignore_next_newmedia_discont hack.
* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_class_init)
(gst_dvd_demux_handle_newsegment):
* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_class_init)
(gst_mpeg_demux_handle_newsegment): Don't override
handle_newsegment anymore. It was only necessary to handle
NEWMEDIA events.

* gst/mpegstream/gstdvddemux.c (gst_dvd_demux_process_event)
(gst_dvd_demux_handle_dvd_event, gst_dvd_demux_set_cur_audio)
(gst_dvd_demux_set_cur_subpicture):
Reactivate handling of DVD events.

* gst/mpegstream/gstmpegparse.c (normal_seek)
(gst_mpeg_parse_handle_src_event)
(gst_mpeg_parse_handle_src_query):
First attempt at reenabling seek.

* gst/mpegstream/gstmpegparse.h:
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_init)
(gst_mpeg_parse_update_streaminfo)
(gst_mpeg_parse_get_rate)
(gst_mpeg_parse_convert, gst_mpeg_parse_get_src_query_types)
(gst_mpeg_parse_handle_src_query):
* gst/mpegstream/gstmpegdemux.c (gst_mpeg_demux_new_output_pad):
Make queries work again.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_reset)
(gst_mpeg_parse_handle_newsegment)
(gst_mpeg_parse_send_newsegment, gst_mpeg_parse_pad_added)
(gst_mpeg_parse_chain, gst_mpeg_parse_handle_src_event):
* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParse):
Get rid of the newsegment_pending attribute, and rely instead on
proper timestamp adjustment.

* gst/mpegstream/gstmpegparse.c
(gst_mpeg_parse_get_src_event_masks): Erase.

* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_init):
Initialize fields before creating pads to prevent the pad creation
callback from failing.
(gst_mpeg_parse_reset): Initialize new fields, and change
initialization order to match the order in the structure.
(gst_mpeg_parse_handle_newsegment): Forward new segment events
whenever possible, and update the current segment.
(gst_mpeg_parse_send_newsegment): Update the current segment and
pending_newsegment.
(gst_mpeg_parse_pad_added): Use the current segment to send
newsegment events to new pads.
(gst_mpeg_parse_chain): Properly add adjust time to sent buffers
and events. Properly update newsegment_pending.
* gst/mpegstream/gstmpegparse.h	(struct _GstMPEGParse):
New fields do_adjust and current_segment.

* gst/mpegstream/gstmpegdemux.c:
* gst/mpegstream/gstdvddemux.c:
* gst/mpegstream/gstmpegparse.h:
Rename handle_discont virtual method to handle_newsegment. Erase
some (already commented out support) for old NEW_MEDIA events.

* gst/mpegstream/gstmpegparse.h (struct _GstMPEGParse):
* gst/mpegstream/gstmpegparse.c (gst_mpeg_parse_init)
(gst_mpeg_parse_reset, gst_mpeg_parse_handle_discont)
(gst_mpeg_parse_pad_added, gst_mpeg_parse_parse_packhead)
(gst_mpeg_parse_event, gst_mpeg_parse_chain):
Erase the "pending_scr" field, and replace it by a slightly
different handling of the current SCR. Document code blocks in
parse_packhead and chain.
2005-12-08 12:45:09 +00:00