Commit graph

184 commits

Author SHA1 Message Date
Edward Hervey
663856a514 gst/avi/gstavidemux.*: Proper aggregation of each stream's GstFlowReturn in order to figure out whether the task shou...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_read_subindexes), (gst_avi_demux_parse_stream),
(gst_avi_demux_handle_seek), (gst_avi_demux_aggregated_flow),
(gst_avi_demux_process_next_entry), (push_tag_lists),
(gst_avi_demux_stream_data), (gst_avi_demux_loop):
* gst/avi/gstavidemux.h:
Proper aggregation of each stream's GstFlowReturn in order to figure out
whether the task should stop or not.
Don't send inline events before pushing out a NEW_SEGMENT, more
specifically for GST_TAG_EVENT.
Change a GST_ERROR to a GST_WARNING for a non-fatal situation in reading
sub-indexes.
2006-07-03 15:28:48 +00:00
Tim-Philipp Müller
a1d0655f73 gst/avi/gstavidemux.c: Prevent out of bounds array access when scrubbing towards the end of the file between the last...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek):
Prevent out of bounds array access when scrubbing towards
the end of the file between the last index entry and the
end. Fixes occasional 'start <= stop' newsegment event
assertions when scrubbing in MJPEG files.
2006-06-13 09:54:26 +00:00
Sébastien Moutte
c6919694d0 gst/avi/gstavidemux.c: add an explicit dll imported declaration for GST_CAT_EVENT+WIN32
Original commit message from CVS:
* gst/avi/gstavidemux.c:
add an explicit dll imported declaration for GST_CAT_EVENT+WIN32
* win32/MANIFEST:
sort file listing
* win32/vs6/libgstavi.dsp:
add gstavimux.c to the project
* win32/vs6/libgstid3demux.dsp:
add link to zlib library
* win32/vs6/libgstmatroska.dsp:
add matroska-ids.c to the project
2006-05-30 21:07:38 +00:00
Wim Taymans
14d26445df gst/avi/gstavidemux.c: Ooops, bitten by the copy-and-paste design paradigm, fixes seek again.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_index_next),
(gst_avi_demux_parse_index), (gst_avi_demux_massage_index),
(gst_avi_demux_handle_seek), (gst_avi_demux_loop):
Ooops, bitten by the copy-and-paste design paradigm, fixes
seek again.
2006-05-12 18:10:36 +00:00
Wim Taymans
50d7e0f6bb gst/avi/gstavidemux.*: Some cleanups, prepare to use GstSegment.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_index_next), (gst_avi_demux_handle_src_query),
(gst_avi_demux_handle_src_event), (gst_avi_demux_parse_subindex),
(gst_avi_demux_parse_stream), (gst_avi_demux_parse_index),
(gst_avi_demux_stream_index), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index),
(gst_avi_demux_calculate_durations_from_index),
(gst_avi_demux_push_event), (gst_avi_demux_stream_header),
(gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry),
(gst_avi_demux_loop):
* gst/avi/gstavidemux.h:
Some cleanups, prepare to use GstSegment.
Fix error in entry walking code.
Fix VBR detection.
Smarter timestamp calculation code.
Uniform error/eos handling.
2006-05-12 18:04:22 +00:00
Tim-Philipp Müller
b88deddeca Add docs for both avidemux and avimux.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/inspect/plugin-avi.xml:
* gst/avi/gstavidemux.c:
* gst/avi/gstavimux.c:
Add docs for both avidemux and avimux.
2006-04-27 16:05:54 +00:00
Stefan Kost
27f2c9b255 Define GstElementDetails as const and also static (when defined as global)
Original commit message from CVS:
* ext/aalib/gstaasink.c:
* ext/annodex/gstcmmldec.c:
* ext/annodex/gstcmmlenc.c:
* ext/cairo/gsttextoverlay.c:
* ext/cairo/gsttimeoverlay.c:
* ext/cdio/gstcdiocddasrc.c:
* ext/dv/gstdvdec.c:
* ext/dv/gstdvdemux.c:
* ext/esd/esdmon.c:
* ext/esd/esdsink.c:
* ext/flac/gstflacenc.c:
* ext/flac/gstflactag.c:
* ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_base_init):
* ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_base_init):
* ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_base_init):
* ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_base_init):
* ext/gdk_pixbuf/pixbufscale.c:
* ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_base_init):
* ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_base_init):
* ext/jpeg/gstjpegdec.c:
* ext/jpeg/gstjpegenc.c:
* ext/jpeg/gstsmokedec.c:
* ext/jpeg/gstsmokeenc.c:
* ext/libcaca/gstcacasink.c:
* ext/libmng/gstmngdec.c:
* ext/libmng/gstmngenc.c:
* ext/libpng/gstpngdec.c:
* ext/libpng/gstpngenc.c:
* ext/mikmod/gstmikmod.c:
* ext/raw1394/gstdv1394src.c:
* ext/shout2/gstshout2.c: (gst_shout2send_init):
* ext/shout2/gstshout2.h:
* ext/speex/gstspeexdec.c:
* ext/speex/gstspeexenc.c:
* gst/alpha/gstalpha.c:
* gst/alpha/gstalphacolor.c:
* gst/apetag/gstapedemux.c:
* gst/auparse/gstauparse.c:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_base_init):
* gst/autodetect/gstautovideosink.c:
(gst_auto_video_sink_base_init):
* gst/avi/gstavidemux.c: (gst_avi_demux_base_init):
* gst/avi/gstavimux.c: (gst_avimux_base_init):
* gst/cutter/gstcutter.c:
* gst/debug/breakmydata.c:
* gst/debug/efence.c:
* gst/debug/gstnavigationtest.c:
* gst/debug/gstnavseek.c:
* gst/debug/negotiation.c:
* gst/debug/progressreport.c:
* gst/debug/testplugin.c:
* gst/effectv/gstaging.c:
* gst/effectv/gstdice.c:
* gst/effectv/gstedge.c:
* gst/effectv/gstquark.c:
* gst/effectv/gstrev.c:
* gst/effectv/gstshagadelic.c:
* gst/effectv/gstvertigo.c:
* gst/effectv/gstwarp.c:
* gst/flx/gstflxdec.c:
* gst/goom/gstgoom.c:
* gst/icydemux/gsticydemux.c:
* gst/id3demux/gstid3demux.c:
* gst/interleave/deinterleave.c:
* gst/interleave/interleave.c:
* gst/law/alaw-decode.c: (gst_alawdec_base_init):
* gst/law/alaw-encode.c: (gst_alawenc_base_init):
* gst/law/mulaw-decode.c: (gst_mulawdec_base_init):
* gst/law/mulaw-encode.c: (gst_mulawenc_base_init):
* gst/level/gstlevel.c:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_base_init):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_base_init):
* gst/median/gstmedian.c:
* gst/monoscope/gstmonoscope.c:
* gst/multipart/multipartdemux.c:
* gst/multipart/multipartmux.c:
* gst/oldcore/gstaggregator.c:
* gst/oldcore/gstfdsink.c:
* gst/oldcore/gstmd5sink.c:
* gst/oldcore/gstmultifilesrc.c:
* gst/oldcore/gstpipefilter.c:
* gst/oldcore/gstshaper.c:
* gst/oldcore/gststatistics.c:
* gst/rtp/gstasteriskh263.c:
* gst/rtp/gstrtpL16depay.c:
* gst/rtp/gstrtpL16pay.c:
* gst/rtp/gstrtpamrdepay.c:
* gst/rtp/gstrtpamrpay.c:
* gst/rtp/gstrtpdepay.c:
* gst/rtp/gstrtpgsmpay.c:
* gst/rtp/gstrtph263pay.c:
* gst/rtp/gstrtph263pdepay.c:
* gst/rtp/gstrtph263ppay.c:
* gst/rtp/gstrtpilbcdepay.c:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4vdepay.c:
* gst/rtp/gstrtpmp4vpay.c:
* gst/rtp/gstrtpmpadepay.c:
* gst/rtp/gstrtpmpapay.c:
* gst/rtp/gstrtppcmadepay.c:
* gst/rtp/gstrtppcmapay.c:
* gst/rtp/gstrtppcmudepay.c:
* gst/rtp/gstrtppcmupay.c:
* gst/rtp/gstrtpspeexdepay.c:
* gst/rtp/gstrtpspeexpay.c:
* gst/rtsp/gstrtpdec.c:
* gst/rtsp/gstrtspsrc.c:
* gst/smpte/gstsmpte.c:
* gst/udp/gstdynudpsink.c:
* gst/udp/gstmultiudpsink.c:
* gst/udp/gstudpsink.c:
* gst/udp/gstudpsrc.c:
* gst/videobox/gstvideobox.c:
* gst/videofilter/gstgamma.c: (gst_gamma_base_init):
* gst/videofilter/gstvideobalance.c:
* gst/videofilter/gstvideoflip.c:
* gst/videofilter/gstvideotemplate.c:
(gst_videotemplate_base_init):
* gst/videomixer/videomixer.c:
* gst/wavparse/gstwavparse.c: (gst_wavparse_base_init),
(gst_wavparse_class_init), (gst_wavparse_dispose),
(gst_wavparse_reset), (gst_wavparse_init),
(gst_wavparse_perform_seek), (gst_wavparse_peek_chunk_info),
(gst_wavparse_peek_chunk), (gst_wavparse_stream_headers),
(gst_wavparse_parse_stream_init), (gst_wavparse_send_event),
(gst_wavparse_add_src_pad), (gst_wavparse_stream_data),
(gst_wavparse_chain), (gst_wavparse_srcpad_event),
(gst_wavparse_sink_activate), (gst_wavparse_sink_activate_pull),
(gst_wavparse_change_state):
* gst/wavparse/gstwavparse.h:
* sys/oss/gstossmixerelement.c:
* sys/oss/gstosssink.c:
* sys/oss/gstosssrc.c:
* sys/osxaudio/gstosxaudioelement.c:
* sys/osxaudio/gstosxaudiosink.c:
* sys/osxaudio/gstosxaudiosrc.c:
* sys/sunaudio/gstsunaudiomixer.c:
* sys/sunaudio/gstsunaudiosink.c:
Define GstElementDetails as const and also static (when defined as
global)
2006-04-25 21:39:46 +00:00
Fabrizio Gennari
1ef3722bf6 gst/avi/gstavidemux.c: When splitting audio chunks, the block alignment is not taken in consideration, so the smaller...
Original commit message from CVS:
Patch by: Fabrizio Gennari <fabrizio dot ge at tiscali dot it>
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream),
(gst_avi_demux_parse_index), (gst_avi_demux_massage_index):
When splitting audio chunks, the block alignment is not taken in
consideration, so the smaller chunks could be of size which is
not a multiple of the block alignment. Fixes #336904
2006-04-21 18:07:10 +00:00
Fabrizio Gennari
13ed50b8f2 gst/avi/gstavidemux.c: Fix index creation when we have to scan the file to create an index. There may be other types ...
Original commit message from CVS:
Patch by: Fabrizio Gennari  <fabrizio dot ge at tiscali dot it>
* gst/avi/gstavidemux.c: (gst_avi_demux_peek_tag),
(gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan):
Fix index creation when we have to scan the file to create
an index. There may be other types of RIFF 'LIST' chunks than
'movi' and we need to skip them properly as well or we'll end up
reading garbage (#336889). Some other cosmetic changes.
2006-04-20 16:33:55 +00:00
Ryan Lortie (desrt)
4bdbbeb426 gst/avi/gstavidemux.c: Fix some crashers with empty chunks. (Fixes #337749)
Original commit message from CVS:
Patch by: Ryan Lortie (desrt) <desrt at destr dot ca>
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_superindex),
(gst_avi_demux_parse_stream), (gst_avi_demux_parse_index),
(gst_avi_demux_stream_header):
Fix some crashers with empty chunks. (Fixes #337749)
2006-04-10 10:10:55 +00:00
Edward Hervey
200bb9a5c8 gst/avi/gstavidemux.c: Don't unref the GstPadTemplate returned by gst_element_class_get_pad_template().
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream):
Don't unref the GstPadTemplate returned by
gst_element_class_get_pad_template().
2006-04-07 10:48:19 +00:00
Wim Taymans
aa23e235dc gst/avi/gstavidemux.c: this patch combines the global init_frames with the stream init_frames. Rationale being that t...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_index),
(gst_avi_demux_stream_index), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index), (gst_avi_demux_handle_seek):
this patch combines the global init_frames with the stream
init_frames. Rationale being that the global delay should
be subtracted from any stream delay.
Fixes #335858.
2006-03-24 18:56:16 +00:00
Edward Hervey
50f4eb876a Fix memleak with gst_static_pad_template_get().
Original commit message from CVS:
* ext/cairo/gsttextoverlay.c: (gst_text_overlay_init):
* ext/dv/gstdvdemux.c: (gst_dvdemux_init), (gst_dvdemux_add_pads):
* ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_init):
* ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_init),
(gst_jpeg_dec_setcaps):
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_init):
* ext/jpeg/gstsmokedec.c: (gst_smokedec_init):
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_init):
* ext/libmng/gstmngdec.c: (gst_mngdec_init),
(gst_mngdec_src_getcaps):
* ext/libpng/gstpngdec.c: (gst_pngdec_init),
(gst_pngdec_caps_create_and_set):
* ext/libpng/gstpngenc.c: (gst_pngenc_init):
* ext/mikmod/gstmikmod.c: (gst_mikmod_init):
* ext/speex/gstspeexdec.c: (gst_speex_dec_init):
* gst/alpha/gstalpha.c: (gst_alpha_init):
* gst/auparse/gstauparse.c: (gst_au_parse_init):
* gst/avi/gstavidemux.c: (gst_avi_demux_init),
(gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream):
* gst/cutter/gstcutter.c: (gst_cutter_init):
* gst/debug/efence.c: (gst_efence_init), (gst_efence_getrange),
(gst_efence_checkgetrange):
* gst/debug/negotiation.c: (gst_negotiation_init):
* gst/flx/gstflxdec.c: (gst_flxdec_init):
* gst/goom/gstgoom.c: (gst_goom_init):
* gst/rtp/gstasteriskh263.c: (gst_asteriskh263_init):
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16depay_init):
* gst/rtp/gstrtpL16pay.c: (gst_rtpL16pay_init):
* gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_init):
* gst/rtp/gstrtpdepay.c: (gst_rtp_depay_init):
* gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_init):
* gst/rtsp/gstrtpdec.c: (gst_rtpdec_init):
* gst/smpte/gstsmpte.c: (gst_smpte_init):
* gst/wavparse/gstwavparse.c: (gst_wavparse_init),
(gst_wavparse_create_sourcepad):
Fix memleak with gst_static_pad_template_get().
This uses gst_pad_new_from_static_template() instead.
Fixes #333512
2006-03-15 16:17:12 +00:00
Tim-Philipp Müller
6bad19a588 gst/avi/gstavidemux.c: Catch short reads, like they might happen with truncated files (see #305279); remove unnecessa...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry):
Catch short reads, like they might happen with truncated
files (see #305279); remove unnecessary indentation.
2006-03-14 15:28:00 +00:00
Tim-Philipp Müller
59bc72774d gst/avi/gstavidemux.c: Fix DIB image inversion for pictures with a depth != 8 (#305279).
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_invert):
Fix DIB image inversion for pictures with a
depth != 8 (#305279).
2006-03-14 14:18:16 +00:00
Tim-Philipp Müller
320dea6afe gst/avi/gstavidemux.*: If we have an index, use a duration based on the index instead of blindly trusting the informa...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query),
(gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream),
(gst_avi_demux_calculate_durations_from_index),
(gst_avi_demux_stream_header):
* gst/avi/gstavidemux.h:
If we have an index, use a duration based on the index instead
of blindly trusting the information in the stream headers
(fixes #331817).
2006-03-03 17:51:16 +00:00
Wim Taymans
e9d173ccd5 gst/avi/gstavidemux.c: Use scaling code for added precission and more correct stop position in case scale==0.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_src_convert),
(gst_avi_demux_handle_src_query), (gst_avi_demux_handle_src_event),
(gst_avi_demux_parse_file_header), (gst_avi_demux_stream_init),
(gst_avi_demux_parse_avih), (gst_avi_demux_parse_superindex),
(gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream),
(gst_avi_demux_stream_header), (gst_avi_demux_change_state):
Use scaling code for added precission and more correct stop
position in case scale==0.
2006-02-19 16:02:25 +00:00
Wim Taymans
ccfc0d947c gst/avi/gstavidemux.c: Add comment in a fultile attempt to stop the copy-and-paste paradigm leading to duplication of...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event):
Add comment in a fultile attempt to stop the copy-and-paste
paradigm leading to duplication of bad code.

* gst/rtsp/rtsptransport.c: (rtsp_transport_parse):
Mime parameters have to be checked case insensitive
2006-02-15 10:15:47 +00:00
Edward Hervey
fed4575aef gst/avi/gstavidemux.c: There can be bogus data before the hdrl LIST tag in the RIFF header.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_header):
There can be bogus data before the hdrl LIST tag in the RIFF header.
It's hard to say if it's not respecting the AVI specifications or not,
but since Google Video is producing AVIs like that and the other player
don't seem to complain, I guess we should do the same.
2006-02-14 16:58:30 +00:00
Edward Hervey
d502325ee9 gst/avi/gstavidemux.c: Properly handle end of segment. Closes #330885.
Original commit message from CVS:
Reviewed by: Edward Hervey  <edward@fluendo.com>
* gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry):
Properly handle end of segment. Closes #330885.
2006-02-13 10:43:15 +00:00
Tim-Philipp Müller
3a27956d47 Pass unhandled queries upstream instead of just dropping them (#326446). Update query type arrays here and there.
Original commit message from CVS:
* ext/dv/gstdvdemux.c: (gst_dvdemux_src_query),
(gst_dvdemux_sink_query):
* ext/flac/gstflacdec.c: (gst_flac_dec_src_query):
* ext/speex/gstspeexdec.c: (speex_get_query_types),
(speex_dec_src_query):
* ext/speex/gstspeexenc.c: (gst_speexenc_src_query),
(gst_speexenc_sink_query):
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_get_src_query_types),
(gst_matroska_demux_handle_src_query):
* gst/wavparse/gstwavparse.c: (gst_wavparse_get_query_types),
(gst_wavparse_pad_query):
Pass unhandled queries upstream instead of just dropping
them (#326446). Update query type arrays here and there.
2006-02-06 12:18:45 +00:00
Tim-Philipp Müller
4b5490014f gst/avi/gstavidemux.*: Third attempt, use gst_pad_is_linked() this time.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream),
(gst_avi_demux_all_source_pads_unlinked),
(gst_avi_demux_process_next_entry):
* gst/avi/gstavidemux.h:
Third attempt, use gst_pad_is_linked() this time.
2006-02-04 15:41:43 +00:00
Tim-Philipp Müller
9a64d2bb3a gst/avi/gstavidemux.c: Only pause if all pads are unlinked AND we've tried to send data on all of them at least once.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_all_source_pads_unlinked):
Only pause if all pads are unlinked AND we've tried to send data
on all of them at least once.
2006-02-02 21:00:16 +00:00
Tim-Philipp Müller
00ed57af01 gst/avi/gstavidemux.c: Make loop function/task pause itself when all source pads are unlinked.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_all_source_pads_unlinked),
(gst_avi_demux_process_next_entry), (gst_avi_demux_loop):
Make loop function/task pause itself when all source pads are
unlinked.
2006-02-02 12:29:24 +00:00
Jens Granseuer
f42029d79f C89 fixes: declare variables at the beginning of a block and
Original commit message from CVS:
* ext/libpng/gstpngenc.c: (gst_pngenc_chain):
* gst/avi/gstavidemux.c: (gst_avi_demux_invert):
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps):
* gst/rtsp/sdpmessage.h:
* gst/udp/gstdynudpsink.c: (gst_dynudpsink_render):
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_get_stats):
C89 fixes: declare variables at the beginning of a block and
make gcc-2.9x happy (#328264; patch by: Jens Granseuer
<jensgr at gmx dot net>).
2006-01-23 09:59:03 +00:00
Edward Hervey
3ffe64515e gst/avi/gstavidemux.c: Stupid signedness issue...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan):
Stupid signedness issue...
2005-12-19 15:43:30 +00:00
Edward Hervey
6fd965f953 gst/avi/gstavidemux.c: Construct index for indexless files.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_handle_src_event), (gst_avi_demux_parse_stream),
(gst_avi_demux_parse_odml), (gst_avi_demux_peek_tag),
(gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan),
(gst_avi_demux_stream_header), (gst_avi_demux_loop):
Construct index for indexless files.
Make sure pad/buffers are correctly reset to NULL once we don't need
them anymore, else we get lovely segfaults/assertions.
* gst/wavparse/gstwavparse.c:
Yes, you can have 96KHz audio and wma in wav :(
2005-12-19 15:06:27 +00:00
Edward Hervey
8a2d8148e4 gst/avi/gstavidemux.c: Memleak and crasher fixes.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event),
(gst_avi_demux_parse_stream), (gst_avi_demux_stream_header),
(gst_avi_demux_invert):
Memleak and crasher fixes.
* gst/wavparse/gstwavparse.c: (gst_wavparse_base_init),
(gst_wavparse_create_sourcepad), (gst_wavparse_stream_headers):
Memleak fixes
2005-12-07 11:40:46 +00:00
Edward Hervey
735b60acf6 gst/avi/gstavidemux.c: Useless check now we're setting the current entry correctly.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry):
Useless check now we're setting the current entry correctly.
2005-11-28 17:31:44 +00:00
Andy Wingo
bdeae7cfcd ext/dv/gstdvdemux.c (gst_dvdemux_handle_sink_event) (gst_dvdemux_demux_frame) ext/flac/gstflacdec.c (gst_flacdec_writ...
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* ext/dv/gstdvdemux.c (gst_dvdemux_handle_sink_event)
(gst_dvdemux_demux_frame)
* ext/flac/gstflacdec.c (gst_flacdec_write)
* ext/flac/gstflacenc.c (gst_flacenc_seek_callback)
(gst_flacenc_sink_event)
* ext/gconf/gstgconfaudiosink.c (gst_gconf_audio_sink_init)
* ext/gconf/gstgconfvideosink.c (gst_gconf_video_sink_init)
* ext/libpng/gstpngdec.c (gst_pngdec_caps_create_and_set)
* ext/speex/gstspeexdec.c (speex_dec_event, speex_dec_chain)
* gst/auparse/gstauparse.c (gst_auparse_chain)
* gst/autodetect/gstautoaudiosink.c (gst_auto_audio_sink_init)
* gst/autodetect/gstautovideosink.c (gst_auto_video_sink_init)
* gst/avi/gstavidemux.c (gst_avi_demux_stream_header)
(gst_avi_demux_handle_seek)
* gst/goom/gstgoom.c (gst_goom_event)
* gst/matroska/ebml-write.c (gst_ebml_write_seek)
* gst/matroska/matroska-demux.c
(gst_matroska_demux_handle_seek_event)
(gst_matroska_demux_loop_stream_parse_id)
* gst/wavenc/gstwavenc.c (gst_wavenc_stop_file)
* gst/wavparse/gstwavparse.c (gst_wavparse_handle_seek)
(gst_wavparse_stream_headers): Run update-funcnames.
2005-11-22 11:53:34 +00:00
Tim-Philipp Müller
3cbd39e022 Update for stream lock API changes: don't take stream log in sink event handlers any longer and change GST_STREAM_LOC...
Original commit message from CVS:
* ext/dv/gstdvdemux.c: (gst_dvdemux_handle_sink_event):
* ext/flac/gstflacdec.c: (gst_flacdec_loop),
(gst_flacdec_src_event):
* ext/flac/gstflacenc.c: (gst_flacenc_sink_event):
* ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_event),
(gst_signal_processor_getrange), (gst_signal_processor_chain):
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek):
* gst/flx/gstflxdec.c: (gst_flxdec_src_event_handler),
(gst_flxdec_sink_event_handler):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_handle_seek_event):
* gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek):
Update for stream lock API changes: don't take stream log
in sink event handlers any longer and change GST_STREAM_LOCK
to GST_PAD_STREAM_LOCK. Don't leak references in flxdec event
functions.
2005-11-21 18:09:02 +00:00
Tim-Philipp Müller
c36b3310f3 Fixes for GST_FOURCC_FORMAT API change.
Original commit message from CVS:
* ext/aalib/gstaasink.c: (gst_aasink_setcaps):
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_file_header),
(gst_avi_demux_read_subindexes), (gst_avi_demux_parse_stream),
(gst_avi_demux_parse_odml), (gst_avi_demux_stream_index),
(gst_avi_demux_sync), (gst_avi_demux_stream_header),
(gst_avi_demux_stream_data):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps):
* gst/wavenc/gstwavenc.c: (write_metadata):
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_adtl),
(gst_wavparse_parse_file_header), (gst_wavparse_stream_headers):
Fixes for GST_FOURCC_FORMAT API change.
2005-11-21 13:38:24 +00:00
Tim-Philipp Müller
12aed9b96e gst/avi/gstavidemux.c: Invert DIB images again (see #132341).
Original commit message from CVS:
* gst/avi/gstavidemux.c: (swap_line), (gst_avi_demux_invert),
(gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data):
Invert DIB images again (see #132341).
2005-11-15 12:16:00 +00:00
Edward Hervey
ad2f2ea24b gst/avi/gstavidemux.*: Yeah, implement proper seeking. Exact seeking and segment seeking.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_src_convert), (gst_avi_demux_handle_src_event),
(gst_avi_demux_stream_header), (gst_avi_demux_handle_seek),
(gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data),
(gst_avi_demux_loop):
* gst/avi/gstavidemux.h:
Yeah, implement proper seeking. Exact seeking and segment seeking.
Still need to do some checks for segment_stop.
2005-11-11 16:48:58 +00:00
Tim-Philipp Müller
fb1c3904f7 gst/avi/gstavidemux.c: No need to take the STREAM_LOCK in the loop function. Improve some debug messages. Don't leak ...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream),
(gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data),
(gst_avi_demux_loop):
No need to take the STREAM_LOCK in the loop function. Improve
some debug messages. Don't leak pad names in debug messages.
2005-11-07 10:31:32 +00:00
Wim Taymans
bee54790e7 Set correct stream_time in newsegment event. avi can also handle a duration query now.
Original commit message from CVS:
* ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame):
* gst/avi/gstavidemux.c: (gst_avi_demux_get_src_query_types),
(gst_avi_demux_handle_seek):
Set correct stream_time in newsegment event.
avi can also handle a duration query now.
2005-10-21 16:15:57 +00:00
Wim Taymans
9f4609665a gst/avi/gstavidemux.c: Correctly fill in the stream time.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek):
Correctly fill in the stream time.
2005-10-20 11:39:40 +00:00
Wim Taymans
ba7ee6ae6c API change fix.
Original commit message from CVS:
* ext/dv/gstdvdemux.c: (gst_dvdemux_get_src_query_types),
(gst_dvdemux_src_query):
* ext/flac/gstflacdec.c: (gst_flacdec_length),
(gst_flacdec_src_query):
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_query):
* ext/speex/gstspeexdec.c: (speex_dec_src_query):
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query):
* gst/debug/gstnavseek.c: (gst_navseek_seek):
* gst/debug/progressreport.c: (gst_progress_report_report):
* gst/matroska/ebml-read.c: (gst_ebml_read_get_length):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_handle_src_query):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_start):
* gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek),
(gst_wavparse_stream_headers), (gst_wavparse_stream_data),
(gst_wavparse_pad_convert), (gst_wavparse_pad_query),
(gst_wavparse_srcpad_event):
API change fix.
2005-10-19 15:57:04 +00:00
Wim Taymans
3a6dd6c30c newsegment API update.
Original commit message from CVS:
* ext/dv/gstdvdemux.c: (gst_dvdemux_handle_sink_event),
(gst_dvdemux_demux_frame):
* ext/flac/gstflacdec.c: (gst_flacdec_write):
* gst/auparse/gstauparse.c: (gst_auparse_chain):
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_header),
(gst_avi_demux_handle_seek):
* gst/goom/gstgoom.c: (gst_goom_event):
* gst/wavenc/gstwavenc.c: (gst_wavenc_stop_file):
* gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek),
(gst_wavparse_stream_headers), (gst_wavparse_stream_data),
(gst_wavparse_loop), (gst_wavparse_pad_convert),
(gst_wavparse_srcpad_event):
newsegment API update.
2005-10-11 16:33:08 +00:00
Tim-Philipp Müller
41af36aa2f gst/avi/gstavidemux.c: Don't crash when encountering a stream with an unknown fourcc or codec id. Instead, create a p...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_base_init),
(gst_avi_demux_class_init), (gst_avi_demux_parse_stream),
(gst_avi_demux_change_state):
Don't crash when encountering a stream with an unknown fourcc or
codec id. Instead, create a pad of type video/x-avi-unknown or
audio/x-avi-unknown, which as a side-effect also results in less
confusing error messages in players ('no decoder' vs. 'no streams');
minor fixes to state change function and class_init function.
2005-09-26 13:06:27 +00:00
Andy Wingo
7ebd7b97d4 All plugins updated for element state changes.
Original commit message from CVS:
2005-09-02  Andy Wingo  <wingo@pobox.com>

* All plugins updated for element state changes.
2005-09-02 15:44:50 +00:00
Ronald S. Bultje
51a630d417 gst/: Uncomment metadata and codec-name handling.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream),
(gst_avi_demux_stream_header):
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_add_stream), (qtdemux_parse_tree):
Uncomment metadata and codec-name handling.
2005-08-16 16:30:23 +00:00
Tim-Philipp Müller
f6d8dee68d gst/avi/gstavidemux.c: Fix AVI header parsing: add missing break statement after
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_header):
Fix AVI header parsing: add missing break statement after
GST_RIFF_INFO_LIST parsing code; gst_riff_read_chunk() has
already advanced the avi->offset, no need to do it twice
(fixes MovieOfMovies.avi).
2005-08-09 14:40:02 +00:00
Ronald S. Bultje
139e82bd8b gst/avi/gstavidemux.c: Fix seeking (or, well, fix threading issue where a variable was set before a lock was taken an...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event),
(gst_avi_demux_handle_seek):
Fix seeking (or, well, fix threading issue where a variable was
set before a lock was taken and was already unset before that
same lock was taken and was thus no longer in existance when it
actually had to be used).
2005-08-09 12:33:21 +00:00
Ronald S. Bultje
0d1f52616a gst/avi/gstavidemux.c: Mixing binary and logical operators is not going to work; fix position-querying in Totem.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry):
Mixing binary and logical operators is not going to work; fix
position-querying in Totem.
2005-08-09 12:22:12 +00:00
Edward Hervey
6af187c535 gst/avi/gstavidemux.c: You need to allocatate (len+1) characters to store a len size string.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_parse_stream), (gst_avi_demux_process_next_entry):
You need to allocatate (len+1) characters to store a len size string.
Also don't stop the processing task if the output pad is not linked.
2005-08-04 18:31:12 +00:00
Wim Taymans
c50893f784 Various event updates and cleanups.
Original commit message from CVS:
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_event),
(gst_amrnbparse_loop):
* ext/dv/gstdvdec.c: (gst_dvdec_handle_sink_event),
(gst_dvdec_handle_src_event), (gst_dvdec_decode_frame):
* ext/mad/gstid3tag.c: (gst_id3_tag_src_event),
(gst_id3_tag_sink_event), (gst_id3_tag_chain):
* ext/mad/gstmad.c: (gst_mad_src_query), (index_seek),
(normal_seek), (gst_mad_sink_event), (gst_mad_chain):
* ext/mpeg2dec/gstmpeg2dec.c:
* ext/shout2/gstshout2.c: (gst_shout2send_event):
* ext/sidplay/gstsiddec.cc:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event),
(gst_avi_demux_send_event), (gst_avi_demux_stream_header),
(gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry):
* gst/goom/gstgoom.c: (gst_goom_event):
* gst/realmedia/rmdemux.c: (gst_rmdemux_sink_event),
(gst_rmdemux_chain), (gst_rmdemux_send_event),
(gst_rmdemux_add_stream):
* gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek),
(gst_wavparse_stream_headers), (gst_wavparse_stream_data),
(gst_wavparse_loop), (gst_wavparse_srcpad_event):
Various event updates and cleanups.
2005-07-27 18:37:25 +00:00
Wim Taymans
f6f3418b19 ext/mad/gstmad.c: Add convert function for proper timestamp calculations.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_src_query), (gst_mad_sink_event),
(gst_mad_chain):
Add convert function for proper timestamp calculations.

* gst/avi/gstavidemux.c: (gst_avi_demux_send_event),
(gst_avi_demux_stream_header), (gst_avi_demux_handle_seek),
(gst_avi_demux_process_next_entry), (gst_avi_demux_loop):
Send out initial discont.
2005-07-16 16:43:53 +00:00
Wim Taymans
2d3657a1ba gst/base/gstbasesrc.c: Allow subclasses to implement their own negotiation.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range),
(gst_base_src_default_negotiate), (gst_base_src_negotiate):
Allow subclasses to implement their own negotiation.
2005-07-07 08:21:41 +00:00
Jan Schmidt
53b2e78562 Replace GST_PLUGINS_LIBS_* with GST_PLUGINS_BASE_*
Original commit message from CVS:
2005-07-01  Jan Schmidt  <thaytan@mad.scientist.com>
* ext/libcaca/Makefile.am:
* ext/mad/Makefile.am:
* gst/effectv/Makefile.am:
* gst/udp/Makefile.am:
Replace GST_PLUGINS_LIBS_* with GST_PLUGINS_BASE_*

* ext/mad/gstid3tag.c: (gst_id3_tag_src_query),
(gst_id3_tag_src_event), (gst_id3_tag_sink_event),
(gst_id3_tag_chain), (plugin_init):
* ext/mad/gstmad.c: (gst_mad_src_query), (gst_mad_chain):
Signedness warning fix, use gst_pad_get_peer instead of GST_PAD_PEER
in querying and event handling, because we're not holding the pad
lock and the peer may disappear.
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex),
(gst_avi_demux_parse_index), (gst_avi_demux_massage_index):
Signedness warning fixes.

* gst/videofilter/gstvideotemplate.c: (plugin_init):
Remove gst_library_load
2005-07-01 08:10:56 +00:00