Original commit message from CVS:
* configure.ac:
* gst/mpegtsparse/Makefile.am:
* gst/mpegtsparse/flutspatinfo.c:
* gst/mpegtsparse/flutspatinfo.h:
* gst/mpegtsparse/flutspmtinfo.c:
* gst/mpegtsparse/flutspmtinfo.h:
* gst/mpegtsparse/flutspmtstreaminfo.c:
* gst/mpegtsparse/flutspmtstreaminfo.h:
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtspacketizer.h:
* gst/mpegtsparse/mpegtsparse.c:
* gst/mpegtsparse/mpegtsparse.h:
* gst/mpegtsparse/mpegtsparsemarshal.list:
Add mpeg transport stream parser written by:
Alessandro Decina. Includes a couple of files from the
Fluendo transport stream demuxer that Fluendo have
kindly allowed to be licenced under LGPL also.
Original commit message from CVS:
Patch by: Bastien Nocera <hadess at hadess net>
* ext/mythtv/gstmythtvsrc.c:
Add examples for live mythtv:// URIs to docs (#468039).
Also convert some tabs into spaces.
Original commit message from CVS:
* tests/check/elements/bpwsinc.c: (GST_START_TEST),
(bpwsinc_suite):
* tests/check/elements/lpwsinc.c: (GST_START_TEST),
(lpwsinc_suite):
Also test everything in 32 bit float mode.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init),
(bpwsinc_set_property), (bpwsinc_get_property):
* gst/filter/gstbpwsinc.h:
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init),
(gst_lpwsinc_init), (lpwsinc_build_kernel), (lpwsinc_set_property),
(lpwsinc_get_property):
* gst/filter/gstlpwsinc.h:
* tests/check/elements/lpwsinc.c: (GST_START_TEST):
Use generator macros for the process functions for the different
sample types, add lower upper boundaries for the GObject properties
so automatically generated UIs can use sliders and change frequency
properties to floats to save a bit of memory, even ints would in
theory be enough. Also rename frequency to cutoff for consistency
reasons.
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-gstrtpmanager.xml:
Regenerated for the above changes.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init),
(gst_bpwsinc_init), (process_32), (process_64),
(bpwsinc_build_kernel), (bpwsinc_push_residue),
(bpwsinc_transform), (bpwsinc_start), (bpwsinc_query),
(bpwsinc_query_type), (bpwsinc_event), (bpwsinc_set_property):
* gst/filter/gstbpwsinc.h:
Implement latency query and only forward those samples downstream
that actually contain the data we want, i.e. drop kernel_length/2
in the beginning and append kernel_length/2 (created by convolving
the filter kernel with zeroes) to the end.
* tests/check/elements/bpwsinc.c: (GST_START_TEST):
Adjust the unit test for this slightly changed behaviour.
* gst/filter/gstlpwsinc.c: (lpwsinc_build_kernel):
Reset residue length only when actually creating a residue.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init):
Override the preroll vmethod instead of overriding the render method
twice.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain),
(gst_rtp_jitter_buffer_loop):
Fix EOS handling.
Convert some DEBUG into WARNINGs.
Pause task when flushing.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init),
(rtcp_thread), (gst_rtp_session_event_recv_rtcp_sink):
Use system clock for RTCP session management timeouts.
* gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision),
(on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout):
Release the session lock when emiting signals.
Original commit message from CVS:
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init),
(gst_lpwsinc_init), (process_32), (process_64),
(lpwsinc_build_kernel), (lpwsinc_push_residue),
(lpwsinc_transform), (lpwsinc_start), (lpwsinc_query),
(lpwsinc_query_type), (lpwsinc_event), (lpwsinc_set_property):
* gst/filter/gstlpwsinc.h:
Implement latency query and only forward those samples downstream
that actually contain the data we want, i.e. drop kernel_length/2
in the beginning and append kernel_length/2 (created by convolving
the filter kernel with zeroes) to the end.
* tests/check/elements/lpwsinc.c: (GST_START_TEST):
Adjust the unit test for this slightly changed behaviour.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/generic/.cvsignore:
* tests/check/generic/states.c:
Add generic state-change test suite to help to fi leaks.
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
patch by: <delete if not someone else's patch>
* ext/timidity/gstwildmidi.c:
* ext/timidity/gstwildmidi.h:
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_base_init),
(gst_app_sink_class_init), (gst_app_sink_dispose),
(gst_app_sink_flush_unlocked), (gst_app_sink_start),
(gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll),
(gst_app_sink_render), (gst_app_sink_get_caps),
(gst_app_sink_set_caps), (gst_app_sink_end_of_stream),
(gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer):
* gst-libs/gst/app/gstappsink.h:
Make love to appsink.
Make it support pulling of the preroll buffer.
Add docs and debug statements.
Fix some races wrt to EOS handling and stopping.
Implement getcaps.
Implement FLUSHING.
API: gst_app_sink_pull_preroll()
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_set_index),
(gst_flv_demux_get_index):
Fix locking and refcounting on the index.
Original commit message from CVS:
2007-08-14 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_adapter_flush), (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_do_seek),
(gst_flv_demux_handle_seek), (gst_flv_demux_sink_event),
(gst_flv_demux_src_event), (gst_flv_demux_query),
(gst_flv_demux_change_state), (gst_flv_demux_set_index),
(gst_flv_demux_get_index), (gst_flv_demux_dispose),
(gst_flv_demux_class_init): First method for seeking in pull
mode using the index built step by step or coming from metadata.
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Parse
more metadata types and keyframes index.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/bpwsinc.c: (setup_bpwsinc),
(cleanup_bpwsinc), (GST_START_TEST), (bpwsinc_suite), (main):
Add unit tests for bpwsinc, testing fundamental functionality again.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/lpwsinc.c: (setup_lpwsinc),
(cleanup_lpwsinc), (GST_START_TEST), (lpwsinc_suite), (main):
Add unit tests for lpwsinc, testing fundamental functionality.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (bpwsinc_build_kernel):
* gst/filter/gstlpwsinc.c: (lpwsinc_build_kernel):
Improve debugging a bit.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init),
(bpwsinc_start):
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init),
(lpwsinc_start):
Reset the residue in BaseTransform::start to get a clean residue
on stream changes.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (process_32), (process_64):
* gst/filter/gstlpwsinc.c: (process_32), (process_64):
Fix processing with buffer sizes that are larger than the filter
kernel size.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (bpwsinc_build_kernel):
Fix a segfault with more than one channel and don't rebuild
the kernel & residue with every buffer.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_mode_get_type),
(gst_bpwsinc_window_get_type), (gst_bpwsinc_class_init),
(gst_bpwsinc_init), (bpwsinc_build_kernel), (bpwsinc_set_property),
(bpwsinc_get_property):
* gst/filter/gstbpwsinc.h:
Add support for a bandreject mode and allow specifying the window
function that should be used.
* gst/filter/gstlpwsinc.c:
And another small formatting fix.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init),
(gst_bpwsinc_init), (process_32), (process_64),
(bpwsinc_build_kernel), (bpwsinc_setup), (bpwsinc_get_unit_size),
(bpwsinc_transform), (bpwsinc_set_property),
(bpwsinc_get_property):
* gst/filter/gstbpwsinc.h:
Apply the same changes to the bandpass filter:
- Support double input
- Fix processing for input with >1 channels
- Specify frequency in Hz
- Specify actual filter kernel length
- Use transform instead of transform_ip as we're working
out of place anyway
- Factor out filter kernel generation and update the filter
kernel when the properties are set
Fix bandpass filter kernel generation to actually generate
a bandpass filter by creating a highpass instead of a second
lowpass.
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init):
Small formatting fix.
Original commit message from CVS:
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init),
(gst_lpwsinc_init), (process_32), (process_64),
(lpwsinc_build_kernel), (lpwsinc_set_property),
(lpwsinc_get_property):
* gst/filter/gstlpwsinc.h:
Specify the actual filter length instead of a weird
2N+1. Setting the property will round to the next odd number.
Also remove now obsolete FIXMEs.
Original commit message from CVS:
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_window_get_type),
(gst_lpwsinc_class_init), (gst_lpwsinc_init),
(lpwsinc_build_kernel), (lpwsinc_set_property),
(lpwsinc_get_property):
* gst/filter/gstlpwsinc.h:
Allow choosing between hamming and blackman window. The blackman
window provides a better stopband attenuation but a bit slower
rolloff.
Original commit message from CVS:
* gst/filter/gstlpwsinc.c: (process_32), (process_64),
(lpwsinc_build_kernel):
Fix processing if the input has more than one channel.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_dispose),
(gst_bpwsinc_init), (bpwsinc_setup), (bpwsinc_transform_ip),
(bpwsinc_set_property), (bpwsinc_get_property):
"this" is a C++ keyword, use "self" instead.
Add TODOs and FIXMEs and remove two wrong FIXMEs.
* gst/filter/gstlpwsinc.c:
Add FIXMEs and a new TODO.
Original commit message from CVS:
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_dispose),
(gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32),
(process_64), (lpwsinc_build_kernel), (lpwsinc_setup),
(lpwsinc_get_unit_size), (lpwsinc_transform),
(lpwsinc_set_property), (lpwsinc_get_property):
* gst/filter/gstlpwsinc.h:
Add double support, replace "this" with "self" as the former
is a C++ keyword.
Implement the frequency property in Hz instead of fraction
of sampling frequency.
Remove some unecessary FIXMEs and add some TODOs, add some
required locking and refactor the kernel generation into a
separate function that is also called when the properties
change now.
And use BaseTransform::transform instead of transform_ip
as the convolution is done out of place anyway. Should
be done in place later.
Original commit message from CVS:
* configure.ac:
* gst/stereo/Makefile.am:
* gst/stereo/gststereo.c: (gst_stereo_base_init),
(gst_stereo_class_init), (gst_stereo_init),
(gst_stereo_transform_ip), (gst_stereo_set_property),
(gst_stereo_get_property):
* gst/stereo/gststereo.h:
Port the stereo element to GStreamer 0.10.
Original commit message from CVS:
* gst/filter/Makefile.am:
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_dispose),
(gst_bpwsinc_base_init), (gst_bpwsinc_class_init),
(gst_bpwsinc_init), (bpwsinc_setup):
* gst/filter/gstbpwsinc.h:
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_dispose),
(gst_lpwsinc_base_init), (gst_lpwsinc_class_init),
(gst_lpwsinc_init), (lpwsinc_setup):
* gst/filter/gstlpwsinc.h:
Use GstAudioFilter as base class and don't leak the memory
of the filter kernel and residue.
Original commit message from CVS:
* gst/real/gstrealvideodec.c: (gst_real_video_dec_chain),
(gst_real_video_dec_activate_push), (open_library),
(gst_real_video_dec_init), (gst_real_video_dec_finalize):
* gst/real/gstrealvideodec.h:
Remove some old unused vars.
Original commit message from CVS:
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps):
Small cleanups.
* gst/real/gstrealvideodec.c: (gst_real_video_dec_chain),
(open_library):
Remove fragment and timestamp correction code from the decoder to make
the caps and buffer contents compatible with matroska/ffdec_rvx0/...
Original commit message from CVS:
* po/POTFILES.skip:
Add POTFILES.skip with list of source files that aren't disted at the
moment but contain translatable strings. Should hopefully pacify
broken tools and make it clearer that these files are left out
intentionally (#461601 and others).
Original commit message from CVS:
Patch by: Ian Munro <imunro at netspace net au>
* gst/bayer/gstbayer2rgb.c:
Include our own "_stdint.h" instead of <stdint.h> (which may not
be available).
* gst/speed/gstspeed.h:
Native HP-UX compiler dosn't seem to like enum typedefs before the
actual enum was defined.
* gst/vmnc/vmncdec.c:
Fix wrong usage of GST_ELEMENT_ERROR macro (#461373).
Original commit message from CVS:
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps):
Use the proper context variable when setting the password !
LOG => WARNING for errors.
Give proper path when opening the codec (needs a '/' at the end).
Original commit message from CVS:
* ext/timidity/gsttimidity.c: (gst_timidity_init),
(gst_timidity_change_state), (plugin_init):
* ext/timidity/gsttimidity.h:
Don't initialize timidity in plugin_init for similar reason as below.
Original commit message from CVS:
* ext/timidity/gstwildmidi.c: (wildmidi_open_config),
(gst_wildmidi_init), (gst_wildmidi_change_state), (plugin_init):
* ext/timidity/gstwildmidi.h:
Don't initialize wildmidi in plugin_init as it also setups audio
filters which is slow.
Original commit message from CVS:
* configure.ac:
* ext/faad/gstfaad.c: (gst_faad_chain), (gst_faad_change_state):
Use the new buffer clipping function from gstaudio here and
require gst-plugins-base CVS.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c:
(gst_iir_equalizer_band_set_property),
(gst_iir_equalizer_child_proxy_get_child_by_index),
(gst_iir_equalizer_child_proxy_get_children_count),
(gst_iir_equalizer_child_proxy_interface_init),
(gst_iir_equalizer_class_init), (arg_to_scale), (setup_filter),
(gst_iir_equalizer_compute_frequencies):
* gst/equalizer/gstiirequalizer10bands.c:
(gst_iir_equalizer_10bands_class_init):
* gst/equalizer/gstiirequalizer3bands.c:
(gst_iir_equalizer_3bands_class_init):
* gst/equalizer/gstiirequalizernbands.c:
Better algorith for the center frequencies. Subtract band filters from
input for negative gains. Rework the gain mapping.
Original commit message from CVS:
2007-07-19 Julien MOUTTE <julien@moutte.net>
* configure.ac:
* gst/flv/Makefile.am:
* gst/flv/gstflvdemux.c: (gst_flv_demux_flush),
(gst_flv_demux_cleanup), (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_pull_header),
(gst_flv_demux_seek_to_prev_keyframe), (gst_flv_demux_loop),
(gst_flv_demux_sink_activate),
(gst_flv_demux_sink_activate_push),
(gst_flv_demux_sink_activate_pull), (gst_flv_demux_sink_event),
(gst_flv_demux_change_state), (gst_flv_demux_dispose),
(gst_flv_demux_base_init), (gst_flv_demux_class_init),
(gst_flv_demux_init), (plugin_init):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (FLV_GET_BEUI24), (FLV_GET_STRING),
(gst_flv_demux_query_types), (gst_flv_demux_query),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_type), (gst_flv_parse_header):
* gst/flv/gstflvparse.h: Adds a first draft of an FLV demuxer.
It does not do seeking yet, it supports pull and push mode so
YES
you can use it to play youtube videos directly from an HTTP uri.
Not so much testing done yet but it parses metadata, reply to
duration queries, etc...
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/timidity.c (GST_START_TEST, timidity_suite,
main):
Add typefind test for midi.
Original commit message from CVS:
* ext/soundtouch/gstpitch.cc:
If we receive a new segment event, don't try to push buffers out
in response (without first sending it on!).
Instead, flush internal buffers on receiving flush events.
Fixes playback after seeking.
Original commit message from CVS:
* gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_create):
Add example to the docs. Fix buffer-offset-end and add some debug.
Original commit message from CVS:
* ext/jack/gstjackaudiosink.c: (gst_jack_ring_buffer_open_device),
(gst_jack_ring_buffer_acquire):
Add stdlib include here too.
Original commit message from CVS:
Patch by: Hans de Goede <j.w.r.degoede at hhs dot nl>
* gst/modplug/gstmodplug.cc:
add several missing supported mime-types to the modplug plugin.
Fixes#456901.
Original commit message from CVS:
* configure.ac:
* tests/Makefile.am:
Remove bogus check for libcheck, since we check for
gstreamer-check and it pulls in the required info from there, and we
weren't actually _using_ the information for libcheck ourselves
anyway.
Original commit message from CVS:
* gst/multifile/Makefile.am:
* gst/multifile/gstmultifile.c:
* gst/multifile/gstmultifilesink.c:
* gst/multifile/gstmultifilesink.h:
* gst/multifile/gstmultifilesrc.c:
* gst/multifile/gstmultifilesrc.h:
Add .h files to be able to add it to the docs.
Original commit message from CVS:
* ext/timidity/gsttimidity.c:
* ext/timidity/gstwildmidi.c:
* ext/timidity/gstwildmidi.h:
Fix licence (both are GPL). Add element docs.
Original commit message from CVS:
* ext/dc1394/gstdc1394.c: (gst_dc1394_src_fixate),
(gst_dc1394_create), (gst_dc1394_caps_set_format_vmode_caps),
(gst_dc1394_set_caps_framesize_range),
(gst_dc1394_caps_set_framerate_list), (gst_dc1394_get_cam_caps),
(gst_dc1394_framerate_frac_to_const),
(gst_dc1394_open_cam_with_best_caps):
Make a bunch of functions static, and move variable declarations
to the start of blocks to avoid problems on older gcc.
Make sure to unset value types.
Original commit message from CVS:
* ext/dc1394/gstdc1394.c: (gst_dc1394_set_caps_color):
The correct fourcc for the 4:1:1 packed format is 'IYU1'.
With CVS of ffmpegcolorspace from plugins-base, I can now
get 30 fps from the iSight.
Original commit message from CVS:
* gst/videosignal/gstvideodetect.c: (gst_video_detect_420),
(gst_video_detect_set_property), (gst_video_detect_get_property):
* gst/videosignal/gstvideodetect.h:
Add property to adjust the center, sensitivity is now the distance from
this center.
Original commit message from CVS:
* gst/videosignal/gstvideodetect.c: (gst_video_detect_420),
(gst_video_detect_set_property), (gst_video_detect_get_property),
(gst_video_detect_class_init):
* gst/videosignal/gstvideodetect.h:
* gst/videosignal/gstvideomark.c: (gst_video_mark_draw_box),
(gst_video_mark_420), (gst_video_mark_set_property),
(gst_video_mark_get_property), (gst_video_mark_class_init):
* gst/videosignal/gstvideomark.h:
Add left and bottom offset properties to control the position of the
pattern.
Original commit message from CVS:
Contributed by: Wenzheng Hu <db_lobster@163.com>
* po/LINGUAS:
* po/zh_CN.po:
Added Chinese (simplified) translation.
Original commit message from CVS:
* examples/switch/switcher.c (my_bus_callback, switch_timer,
last_message_received, main):
* gst/switch/gstswitch.c (gst_switch_release_pad,
gst_switch_request_new_pad, gst_switch_chain, gst_switch_event,
gst_switch_set_property, gst_switch_get_property,
gst_switch_get_linked_pad, gst_switch_getcaps,
gst_switch_bufferalloc, gst_switch_dispose, gst_switch_init):
* gst/switch/gstswitch.h (switch_mutex, GST_SWITCH_LOCK,
GST_SWITCH_UNLOCK):
Add an extra lock to protect against certain variables instead of
using the object lock. Fix case where caps are different in the
sink pads causes deadlock. Update example to use different caps
on each sink pad.
Original commit message from CVS:
* ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_base_init),
(gst_amrwbdec_class_init), (gst_amrwbdec_finalize),
(gst_amrwbdec_event), (gst_amrwbdec_chain),
(gst_amrwbdec_state_change):
* ext/amrwb/gstamrwbdec.h:
* ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_base_init),
(gst_amrwbparse_pull_header), (gst_amrwbparse_loop):
Add newsegment and discont handling. Some code cleanups. Don't leak
the adapter, unref it in a new finalize method instead. Sync the
parser with the amr-nb changes.
Original commit message from CVS:
* win32/vs6/gst_plugins_bad.dsw:
* win32/vs6/libdshowsrcwrapper.dsp:
* win32/vs6/libgstdshow.dsp:
* win32/vs6/libgstmpegvideoparse.dsp:
* win32/vs6/libgstneon.dsp:
Convert line endings to CRLF and mark as binary files.
Original commit message from CVS:
* win32/MANIFEST:
Add megvideoparse, libdshow and dshowsrcwrapper to win32
MANIFEST.
* win32/vs6/gst_plugins_bad.dsw:
Remove qtdemux, directdraw, directsound and waveform project files
from the workspace as they have been moved to -good.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/inspect/plugin-waveform.xml:
* sys/waveform/gstwaveformplugin.c:
* sys/waveform/gstwaveformsink.c:
* sys/waveform/gstwaveformsink.h:
* win32/MANIFEST:
* win32/vs6/libgstwaveform.dsp:
Remove the waveform plugin now that it is in -good.
Original commit message from CVS:
* ext/timidity/gsttimidity.c: (gst_timidity_loop):
* ext/timidity/gstwildmidi.c: (gst_wildmidi_loop):
* gst/tta/gstttaparse.c: (gst_tta_parse_loop):
When driving the pipeline, also post an error when we get a
not-linked flow return from downstream.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.args:
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_class_init):
Rename the keep-aspect-ratio property to force-aspect-ratio to make
it consistent with xvimagesink and ximagesink.
Original commit message from CVS:
* tests/icles/videocrop-test.c: (main):
Default to xvimagesink instead of autovideosink while
autovideosink/ghostpads/whatever don't handle the way we use it in
the way we expect it to.
Original commit message from CVS:
* configure.ac:
Bump requirements to released versions of core and -base, and remove
special-casing for equalizer and rtpmanager as it's not needed any
longer.
Original commit message from CVS:
* sys/glsink/glimagesink.c: (gst_glimage_sink_stop),
(gst_glimage_sink_create_window), (gst_glimage_sink_init_display):
Sprinkle in some XSync calls to avoid raciness with broken
drivers (ATI) when re-using a single glimagesink.
Original commit message from CVS:
* gst/mpegvideoparse/mpegpacketiser.c:
(mpeg_util_parse_extension_packet), (mpeg_util_parse_sequence_hdr),
(mpeg_util_parse_picture_hdr):
* gst/mpegvideoparse/mpegvideoparse.c:
(mpegvideoparse_handle_sequence), (mpegvideoparse_drain_avail):
Fix some silly bugs with calculating the guard sizes.
Properly compare the old sequence header structure with the new one.
Don't error out on an invalid sequence - just ignore it.
Original commit message from CVS:
* gst/real/gstrealvideodec.c: (gst_real_video_dec_decode):
Printf fix in debug statement; also print the right number there.
Original commit message from CVS:
Patch by René Stadler <mail at renestadler dot de>:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_init), (gst_neonhttp_src_dispose),
(gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property),
(gst_neonhttp_src_start), (gst_neonhttp_src_do_seek),
(gst_neonhttp_src_set_location),
(gst_neonhttp_src_send_request_and_redirect),
(gst_neonhttp_src_uri_get_uri), (gst_neonhttp_src_uri_set_uri):
* ext/neon/gstneonhttpsrc.h:
Deprecated "uri" property. Clean up property descriptions.
Change default User-Agent to the slightly more descriptive
"GStreamer neonhttpsrc".
Various other small cleanups, mostly property related.
Original commit message from CVS:
* ext/libmms/gstmms.h:
No reason to use gpointers instead of typed pointes here as far as I
can see.
* ext/mythtv/gstmythtvsrc.c:
* ext/neon/gstneonhttpsrc.c:
* gst/switch/gstswitch.c:
Don't use gtk-doc magic markers for things that aren't meant to be
parsed by gtk-doc. Makes gtk-doc complain a bit less.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.prerequisites:
* docs/plugins/gst-plugins-bad-plugins.signals:
More updates.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_buffer_alloc),
(gst_directdraw_sink_show_frame),
(gst_directdraw_sink_check_primary_surface),
(gst_directdraw_sink_check_offscreen_surface),
(EnumModesCallback2), (gst_directdraw_sink_get_ddrawcaps),
(gst_directdraw_sink_surface_create):
* sys/directdraw/gstdirectdrawsink.h:
Fix more warnings when compiling with MingW (#439914).
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.args:
Remove directsoundsink property doc as this sink use the mixer
interface now.
* docs/plugins/gst-plugins-bad-plugins.interfaces:
Add interfaces implemented by Windows sinks.
* sys/directsound/gstdirectsoundsink.c:
* sys/directsound/gstdirectsoundsink.h:
Remove directsoundsink property and implement the mixer interface.
* win32/vs6/gst_plugins_bad.dsw:
* win32/vs6/libgstdirectsound.dsp:
Update project files.
* gst-libs/gst/dshow/gstdshow.cpp:
* gst-libs/gst/dshow/gstdshow.h:
* gst-libs/gst/dshow/gstdshowfakesink.cpp:
* gst-libs/gst/dshow/gstdshowfakesink.h:
* gst-libs/gst/dshow/gstdshowfakesrc.cpp:
* gst-libs/gst/dshow/gstdshowfakesrc.h:
* gst-libs/gst/dshow/gstdshowinterface.cpp:
* gst-libs/gst/dshow/gstdshowinterface.h:
* win32/common/libgstdshow.def:
* win32/vs6/libgstdshow.dsp:
Add a new gst library which allow to create internal Direct Show
graph (pipelines) to wrap Windows sources, decoders or encoders.
It includes a DirectShow fake source and sink and utility functions.
* sys/dshowsrcwrapper/gstdshowaudiosrc.c:
* sys/dshowsrcwrapper/gstdshowaudiosrc.h:
* sys/dshowsrcwrapper/gstdshowsrcwrapper.c:
* sys/dshowsrcwrapper/gstdshowsrcwrapper.h:
* sys/dshowsrcwrapper/gstdshowvideosrc.c:
* sys/dshowsrcwrapper/gstdshowvideosrc.h:
* win32/vs6/libdshowsrcwrapper.dsp:
Add a new plugin to wrap DirectShow sources on Windows.
It gets data from any webcam, dv cam, micro. We could add
tv tunner card later.
Original commit message from CVS:
Patch by René Stadler <mail at renestadler dot de>:
* ext/sdl/sdlvideosink.c:
Separate the authors by newlines instead of nothing. Fixes#440774.
Original commit message from CVS:
* docs/plugins/Makefile.am:
Also look for .m (objectivec) files.
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* sys/osxvideo/osxvideosink.m:
Add documentation for element and properties.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c (gst_spectrum_set_property,
gst_spectrum_event, gst_spectrum_transform_ip):
Use lock to protect from concurrent access.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
Specify and use properties as unsigned int that are an unsigned int.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
Fixup docs, make the bitrate property an int as it should be and
allow to set the different extra processing modes instead of only
allowing none and the default one.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c:
Add missing audioconverts in the example pipelines of wavpackenc. As
the wavpack stuff now needs input with 32 bit width (and random depth)
this is needed now. The example pipelines for the parser and decoder
are still fine.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c: (gst_ddrawsurface_finalize),
(gst_directdraw_sink_buffer_alloc),
(gst_directdraw_sink_get_ddrawcaps),
(gst_directdraw_sink_surface_create):
Bunch of small fixes: remove static function that doesn't exist;
declare another one that does; printf format fix; use right macro
when specifying debug category; remove a bunch of unused variables;
#if 0 out an unused chunk of code (partially fixes#439914).
Original commit message from CVS:
* sys/glsink/glimagesink.c: (gst_glimage_sink_init_display):
Update the cached caps after opening the display so that we report
only the supported caps formats, not just the template caps.
Fixes: #439405
Original commit message from CVS:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Remove the event-loop-in-separate-thread modifications, because MacOSX
is $#@(*%$# ! For those wondering, the event handling needs to be done
in the main thread after all..
Original commit message from CVS:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Fix a stupid #if vs #ifdef bug. Should use the proper colorspace now.
Use a separate thread/task for the cocoa event_loop, else it wouldn't
stop.
Original commit message from CVS:
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_chain),
(gst_real_audio_dec_setcaps):
* gst/real/gstrealvideodec.c: (gst_real_video_dec_chain):
Don't crash when we get a buffer and our input caps haven't been set
yet; also, don't leak all the input buffers (realaudiodec only).
Original commit message from CVS:
* ext/x264/gstx264enc.c (gst_x264_enc_init_encoder):
This needs a version check.
* gst/bayer/Makefile.am:
Fix the build.
Original commit message from CVS:
* configure.ac:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save
and restore the various flags in the directdraw/directsound
detection section. Apparently improves cross-compiling for win32
with mingw32 under some circumstances (#437539).
Original commit message from CVS:
* configure.ac:
* gst/bayer/Makefile.am:
* gst/bayer/gstbayer.c:
* gst/bayer/gstbayer2rgb.c:
Add a Bayer-to-RGB converter. You know you want one, uh-huh.
Partial fix for #314160.
Original commit message from CVS:
* gst/switch/gstswitch.c (ARG_ACTIVE_SOURCE, ARG_STOP_VALUE,
ARG_LAST_TS, parent_class, gst_switch_release_pad,
gst_switch_request_new_pad, gst_switch_chain, gst_switch_event,
gst_switch_set_property, gst_switch_get_property, gst_switch_getcaps,
gst_switch_dispose, gst_switch_init, gst_switch_class_init):
* gst/switch/gstswitch.h (previous_sinkpad, nb_sinkpads, stop_value,
current_start, last_ts):
Allow application to provide a stop timestamp, so a new segment
update can be sent before switching.
Original commit message from CVS:
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps),
(gst_real_audio_dec_finalize):
* gst/real/gstrealaudiodec.h:
* gst/real/gstrealvideodec.c: (open_library), (close_library):
* gst/real/gstrealvideodec.h:
Use GModule instead of using dlsym() directly. Fixes#430598.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
Add docs for Windows sinks.
Original commit message from CVS:
* gst/speed/gstspeed.c: (speed_src_event), (speed_sink_event),
(speed_chain), (speed_change_state):
Fix event handling a bit by replacing completely dubious code
written by someone else with completely dubious code written
by me. Should at least fix#412077 though.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_query):
Add some debug info.
* gst/rtpmanager/rtpsession.c: (rtp_session_init),
(rtp_session_send_rtp):
Store real user name in the session.
Original commit message from CVS:
* ext/wavpack/gstwavpack.c: (plugin_init):
Call bindtextdomain() to get localized strings.
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_handle_seek_event),
(gst_wavpack_parse_push_buffer), (gst_wavpack_parse_chain):
* ext/wavpack/gstwavpackparse.h:
Handle DISCONT buffers by correctly setting the DISCONT flag
on outgoing buffers when necessary.
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_handle_seek_event)
Send newsegment from the streaming thread.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_handle_seek_event):
Remove old workaround that was needed when seeking after the last
sample. With the fixed error handling this works now as expected
without pushing the last sample although it wasn't requested.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_handle_seek_event):
Handle segment seeks in the seek event handler, correctly work with
stop position == -1 and instead of stopping the task on seek just
pause it.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_pull_buffer),
(gst_wavpack_parse_create_src_pad),
(gst_wavpack_parse_resync_loop), (gst_wavpack_parse_loop),
(gst_wavpack_parse_chain):
Correctly handle errors, especially in the loop function. Before it
was easy to get the task paused but no error being posted on the bus.
Original commit message from CVS:
* gst/rtpmanager/async_jitter_queue.c: (signal_waiting_threads),
(async_jitter_queue_pop_intern_unlocked):
Fix the case where the buffer underruns and does not block.
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_base_init),
(create_recv_rtcp), (create_send_rtp), (create_rtcp),
(gst_rtp_bin_request_new_pad):
Rename RTCP send pad, like in the session manager.
Allow getting an RTCP pad for receiving even if we don't receive RTP.
fix handling of send_rtp_src pad.
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain):
When no pt map could be found, fall back to the sinkpad caps.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp),
(gst_rtp_session_send_rtp), (create_recv_rtp_sink),
(create_recv_rtcp_sink), (create_send_rtp_sink),
(create_send_rtcp_src):
Fix pad names.
* gst/rtpmanager/rtpsession.c: (source_push_rtp),
(rtp_session_create_source), (rtp_session_process_sr),
(rtp_session_send_rtp), (session_start_rtcp):
* gst/rtpmanager/rtpsession.h:
Unlock session when performing a callback.
Add callbacks for the internal session object.
Fix sending of RTP packets.
first attempt at adding NTP times in the SR packets.
Small debug and doc improvements.
* gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp):
Update stats for SR reports.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.signals:
Commit result of running scanobj-update
Original commit message from CVS:
* configure.ac:
Don't build equalizer unless we have core from CVS (it won't
work with earlier versions due to GstChildProxy brokeness).
Also up requirements to last released core/base.
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* gst/rtpmanager/gstrtpbin.c: (create_stream),
(gst_rtp_bin_class_init), (gst_rtp_bin_set_property),
(gst_rtp_bin_get_property):
* gst/rtpmanager/gstrtpbin.h:
Make default jitterbuffer latency configurable.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_class_init),
(gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_loop),
(gst_rtp_jitter_buffer_set_property),
(gst_rtp_jitter_buffer_get_property):
Debuging cleanups.
Original commit message from CVS:
* gst/y4m/gsty4mencode.c: (gst_y4m_encode_init),
(gst_y4m_encode_setcaps):
* tests/check/elements/y4menc.c: (GST_START_TEST):
Plug some leaks; try to make build bot happy again.
Original commit message from CVS:
* gst/rtpmanager/rtpsession.c: (rtp_session_finalize):
Don't use GLib-2.10 API, we only require GLib 2.8 at the moment.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_open_decoder):
FAAD fails to decode low (e.g. 8 kHz) sample rate AAC data in
quicktime because of sample rate mismatches.
Reenable overriding the implicit SBR behaviour (accidently changed?)
to allow playback of these files.
Original commit message from CVS:
* configure.ac:
Disable rtpmanager for now because it depends on CVS -base.
* gst/rtpmanager/Makefile.am:
Added new files for session manager.
* gst/rtpmanager/gstrtpjitterbuffer.h:
* gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map),
(create_stream), (pt_map_requested), (new_ssrc_pad_found):
Some cleanups.
the session manager can now also request a pt-map.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init),
(gst_rtp_session_class_init), (gst_rtp_session_init),
(gst_rtp_session_finalize), (rtcp_thread), (start_rtcp_thread),
(stop_rtcp_thread), (gst_rtp_session_change_state),
(gst_rtp_session_process_rtp), (gst_rtp_session_send_rtp),
(gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate),
(gst_rtp_session_get_time), (gst_rtp_session_event_recv_rtp_sink),
(gst_rtp_session_chain_recv_rtp),
(gst_rtp_session_event_recv_rtcp_sink),
(gst_rtp_session_chain_recv_rtcp),
(gst_rtp_session_event_send_rtp_sink),
(gst_rtp_session_chain_send_rtp), (create_send_rtcp_src),
(gst_rtp_session_request_new_pad):
* gst/rtpmanager/gstrtpsession.h:
We can ask for pt-map now too when the session manager needs it.
Hook up to the new session manager, implement the needed callbacks for
pushing data, getting clock time and requesting clock-rates.
Rename rtcp_src to send_rtcp_src to make it clear that this RTCP is to
be send to clients.
Add code to start and stop the thread that will schedule RTCP through
the session manager.
* gst/rtpmanager/rtpsession.c: (rtp_session_class_init),
(rtp_session_init), (rtp_session_finalize),
(rtp_session_set_property), (rtp_session_get_property),
(on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated),
(on_bye_ssrc), (rtp_session_new), (rtp_session_set_callbacks),
(rtp_session_set_bandwidth), (rtp_session_get_bandwidth),
(rtp_session_set_rtcp_bandwidth), (rtp_session_get_rtcp_bandwidth),
(source_push_rtp), (source_clock_rate), (check_collision),
(obtain_source), (rtp_session_add_source),
(rtp_session_get_num_sources),
(rtp_session_get_num_active_sources),
(rtp_session_get_source_by_ssrc),
(rtp_session_get_source_by_cname), (rtp_session_create_source),
(update_arrival_stats), (rtp_session_process_rtp),
(rtp_session_process_sr), (rtp_session_process_rr),
(rtp_session_process_sdes), (rtp_session_process_bye),
(rtp_session_process_app), (rtp_session_process_rtcp),
(rtp_session_send_rtp), (rtp_session_get_rtcp_interval),
(rtp_session_produce_rtcp):
* gst/rtpmanager/rtpsession.h:
The advanced beginnings of the main session manager that handles the
participant database of RTPSources, SSRC probation, SSRC collisions,
parse RTCP to update source stats. etc..
* gst/rtpmanager/rtpsource.c: (rtp_source_class_init),
(rtp_source_init), (rtp_source_finalize), (rtp_source_new),
(rtp_source_set_callbacks), (rtp_source_set_as_csrc),
(rtp_source_set_rtp_from), (rtp_source_set_rtcp_from),
(push_packet), (get_clock_rate), (calculate_jitter),
(rtp_source_process_rtp), (rtp_source_process_bye),
(rtp_source_send_rtp), (rtp_source_process_sr),
(rtp_source_process_rb):
* gst/rtpmanager/rtpsource.h:
Object that encapsulates an SSRC and its state in the database.
Calculates the jitter and transit times of data packets.
* gst/rtpmanager/rtpstats.c: (rtp_stats_init_defaults),
(rtp_stats_calculate_rtcp_interval), (rtp_stats_add_rtcp_jitter):
* gst/rtpmanager/rtpstats.h:
Various stats regarding the session and sources.
Used to calculate the RTCP interval.
Original commit message from CVS:
* gst/nsf/types.h:
Rename #ifndef header guard symbol to something less generic, so
types.h doesn't get skipped over when compiling on MingW. Include
GLib headers and use those to set the endianness and the basic
types so that this isn't entirely broken for non-x86 architectures.
Original commit message from CVS:
* gst/mve/gstmvedemux.c: (gst_mve_audio_init):
Use G_LITTLE_ENDIAN instead of LITTLE_ENDIAN, so stuff compiles on
MingW (no idea though why we add a BYTE_ORDER endianness field if
the audio is compressed).
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin-marshal.list:
Some more custom marshallers.
* gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map),
(clock_rate_request), (create_stream), (gst_rtp_bin_class_init),
(pt_map_requested), (new_ssrc_pad_found), (create_recv_rtp):
* gst/rtpmanager/gstrtpbin.h:
Prepare for caching pt maps.
Connect to signals to collect pt maps.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_class_init),
(gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_loop):
* gst/rtpmanager/gstrtpjitterbuffer.h:
Add request_clock_rate signal.
Use scale insteat of scale_int because the later does not deal with
negative numbers.
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init),
(gst_rtp_pt_demux_chain):
* gst/rtpmanager/gstrtpptdemux.h:
Implement request-pt-map signal.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init),
(gst_rtp_bin_init), (gst_rtp_bin_provide_clock):
* gst/rtpmanager/gstrtpbin.h:
Provide a clock.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_chain),
(gst_rtp_jitter_buffer_loop):
Add some debug and comments.
Fix double unref() in error cases.
Original commit message from CVS:
* gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_process),
(gst_rtp_xqt_depay_change_state):
* gst/qtdemux/gstrtpxqtdepay.h:
Try to recover from packet loss a little better.
Original commit message from CVS:
* ext/jack/gstjackaudiosink.c: (gst_jack_ring_buffer_open_device),
(gst_jack_ring_buffer_acquire):
Try t better name clients. properly handle return codes when re-
establishing links.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset),
(gst_wavpack_dec_init), (gst_wavpack_dec_sink_set_caps),
(gst_wavpack_dec_clip_outgoing_buffer),
(gst_wavpack_dec_post_tags), (gst_wavpack_dec_chain):
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset),
(gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_chain):
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.c:
Don't play audioconvert. As wavpack wants/outputs all samples with
width==32 and depth=[1,32] accept this and let audioconvert convert
to accepted formats instead of doing it in the element for n*8 depths.
This also adds support for non-n*8 depths and prevents some useless
memory allocations. Fixes#421598
Also add a workaround for bug #421542 in wavpackenc for now...
* tests/check/elements/wavpackdec.c: (GST_START_TEST):
* tests/check/elements/wavpackenc.c: (GST_START_TEST):
* tests/check/elements/wavpackparse.c: (GST_START_TEST):
Consider the change above in the unit tests and test if the correct
caps are accepted and set. Also check for GST_BUFFER_OFFSET_END in
the wavpackparse unit test.
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_init),
(gst_wavpack_dec_sink_set_caps):
Set caps on the src pad as soon as possible.
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackcommon.h:
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.h:
Fix indention. gst-indent is now called by cicl.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample),
(gst_qtdemux_chain), (qtdemux_parse_samples):
* gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_ctts):
* gst/qtdemux/qtdemux_dump.h:
* gst/qtdemux/qtdemux_fourcc.h:
* gst/qtdemux/qtdemux_types.c:
Process 'ctts' atoms, which are present in AVC ISO files (.mov files
with h264 video).
Use the offset present in 'ctts' to calculate the PTS for each packet
and set the PTS on outgoing buffers.
Fixes#423283
Original commit message from CVS:
2007-03-27 Julien MOUTTE <julien@moutte.net>
* ext/xvid/gstxviddec.c: (gst_xviddec_chain): Add some
debug log and fix a stupid output buffer duration bug.
Original commit message from CVS:
* gst/interleave/deinterleave.c: (gst_deinterleave_sink_setcaps):
Remove 'channel-positions' field when munging input caps into
1-channel output caps (I guess technically we should set the
position for each channel on the output caps if it's non-NONE,
but I'll save that as a task for another day).
Original commit message from CVS:
* gst/vmnc/vmncdec.c: (gst_vmnc_dec_class_init),
(gst_vmnc_dec_init), (vmnc_dec_finalize), (gst_vmnc_dec_reset),
(vmnc_handle_wmvi_rectangle), (render_colour_cursor),
(render_cursor), (vmnc_make_buffer), (vmnc_handle_wmvd_rectangle),
(vmnc_handle_wmve_rectangle), (vmnc_handle_wmvf_rectangle),
(vmnc_handle_wmvg_rectangle), (vmnc_handle_wmvh_rectangle),
(vmnc_handle_wmvj_rectangle), (render_raw_tile), (render_subrect),
(vmnc_handle_raw_rectangle), (vmnc_handle_copy_rectangle),
(vmnc_handle_hextile_rectangle), (vmnc_handle_packet),
(vmnc_dec_setcaps), (vmnc_dec_chain_frame), (vmnc_dec_chain),
(vmnc_dec_set_property), (vmnc_dec_get_property):
Redesign to include a parser for raw files (no timestamps in that
mode yet, though).
Original commit message from CVS:
* gst/interleave/deinterleave.c: (gst_deinterleave_add_new_pads),
(gst_deinterleave_remove_pads), (gst_deinterleave_process),
(gst_deinterleave_chain):
Don't leak input buffer in chain function; maintain our own list of
source pads - there are no guarantees about the order of the list
in the GstElement struct, and we want a very specific order; lastly,
some more debugging.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init):
Revert last commit, preventing infinite plugging loops with ranks
is no clean solution and in general there's no reason why one wants
to parse framed wavpack data again.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_push_block):
Send the new segment event in time format instead of bytes. This
allows "wavpackenc ! wavpackdec ! someaudiosink" pipelines.
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init):
Accept framed and non-framed input, wavpackparse doesn't care. To
prevent "wavpackparse ! wavpackparse ! ..." pipelines lower the
rank of wavpackparse by one. This allows "wavpackenc ! wavpackparse !
..." pipelines.
Original commit message from CVS:
* gst-libs/gst/app/Makefile.am:
Use GST_ALL_LDFLAGS, which actually exists, but maybe David
can confirm that was what he wanted.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
Revert to use gst_pad_alloc_buffer() here. We can and should use it.
Thanks to Jan and Mike for noticing my mistake.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_chain),
(gst_wavpack_enc_rewrite_first_block):
* ext/wavpack/gstwavpackenc.h:
Put the write helpers into the GstWavpackEnc struct directly and not
as a pointer to save two small, but useless mallocs. This also makes
it possible to drop the finalize method.
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_push_buffer):
For consistency reasons also set GST_BUFFER_OFFSET_END on the outgoing
buffers the same way wavpackenc does it.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
Don't use gst_pad_alloc_buffer() as we might clip the buffer later and
BaseTransform-based elements will likely break because of wrong
unit-size. Also plug a possible memleak that happens when decoding
fails for some reason.
Original commit message from CVS:
Based on patch by: Paul Davis <paul at linuxaudiosystems dot com>
* ext/jack/gstjackaudioclient.c: (gst_jack_audio_unref_connection):
Don't need to take the connection lock, it will not be used and could
cause deadlocks.
Original commit message from CVS:
* sys/osxvideo/osxvideosink.m:
Emit 'have-ns-view' message when working in embedded mode. The message
will contain a pointer to the newly created NSView.
Original commit message from CVS:
* gst/mpegvideoparse/mpegpacketiser.c: (mpeg_util_find_start_code),
(collect_packets), (set_par_from_dar), (set_fps_from_code),
(mpeg_util_parse_extension_packet), (mpeg_util_parse_sequence_hdr),
(mpeg_util_parse_picture_hdr):
* gst/mpegvideoparse/mpegpacketiser.h:
* gst/mpegvideoparse/mpegvideoparse.c:
(mpegvideoparse_handle_sequence), (mpegvideoparse_handle_picture),
(mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain),
(mpv_parse_sink_event), (plugin_init):
* gst/mpegvideoparse/mpegvideoparse.h:
Move the MPEG specific byte parsing into the mpegpacketiser code.
Add parsing of picture types, that just feeds into a debug message
for now.
Fix some 64-bit format strings.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer10bands.c:
(gst_iir_equalizer_10bands_init):
A 10 band EQ should be initialized to 1 bands and not to 3.
Original commit message from CVS:
* configure.ac:
* gst/mpeg1videoparse/Makefile.am:
* gst/mpeg1videoparse/gstmp1videoparse.c:
* gst/mpeg1videoparse/gstmp1videoparse.h:
* gst/mpeg1videoparse/mp1videoparse.vcproj:
* gst/mpegvideoparse/Makefile.am:
* gst/mpegvideoparse/mpegpacketiser.c: (mpeg_packetiser_init),
(mpeg_packetiser_free), (mpeg_packetiser_add_buf),
(mpeg_packetiser_flush), (mpeg_find_start_code),
(get_next_free_block), (complete_current_block),
(append_to_current_block), (start_new_block), (handle_packet),
(collect_packets), (mpeg_packetiser_handle_eos),
(mpeg_packetiser_get_block), (mpeg_packetiser_next_block):
* gst/mpegvideoparse/mpegpacketiser.h:
* gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_get_type),
(gst_mpegvideoparse_base_init), (gst_mpegvideoparse_class_init),
(mpv_parse_reset), (gst_mpegvideoparse_init),
(gst_mpegvideoparse_dispose), (set_par_from_dar),
(set_fps_from_code), (mpegvideoparse_parse_seq),
(gst_mpegvideoparse_time_code), (gst_mpegvideoparse_flush),
(mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain),
(mpv_parse_sink_event), (gst_mpegvideoparse_change_state),
(plugin_init):
* gst/mpegvideoparse/mpegvideoparse.h:
* gst/mpegvideoparse/mpegvideoparse.vcproj:
Port mpeg1videoparse to 0.10 and give it rank SECONDARY-1, so
that it's below existing decoders.
Rename it to mpegvideoparse to reflect that it handles MPEG-1 and
MPEG-2 now.
Re-write the parsing code so that it collects packets differently
and timestamps Picture packets correctly.
Add a list of FIXME's at the top.
Original commit message from CVS:
* tests/icles/equalizer-test.c: (equalizer_set_band_value),
(equalizer_set_all_band_values),
(equalizer_set_band_value_and_wait),
(equalizer_set_all_band_values_and_wait), (do_slider_fiddling),
(main):
Port the example to new equalizer api.
Original commit message from CVS:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Fix leaks when running a NSApp.
Accept any kind of resolutions.
Works in fullscreen. Can maximize.
Only thing left before being able to move this to -good is documentation
and embedded window support.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Handle display mode changes during playback.
Original commit message from CVS:
* gst/equalizer/Makefile.am:
* gst/equalizer/gstiirequalizer.c: (_do_init),
(gst_iir_equalizer_band_set_property),
(gst_iir_equalizer_band_get_property),
(gst_iir_equalizer_band_class_init),
(gst_iir_equalizer_band_get_type),
(gst_iir_equalizer_child_proxy_get_child_by_index),
(gst_iir_equalizer_child_proxy_get_children_count),
(gst_iir_equalizer_child_proxy_interface_init),
(gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init),
(gst_iir_equalizer_finalize), (setup_filter),
(gst_iir_equalizer_compute_frequencies),
(gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property),
(gst_iir_equalizer_setup), (plugin_init):
* gst/equalizer/gstiirequalizer.h:
* gst/equalizer/gstiirequalizernbands.c:
(gst_iir_equalizer_nbands_base_init),
(gst_iir_equalizer_nbands_class_init),
(gst_iir_equalizer_nbands_init),
(gst_iir_equalizer_nbands_set_property),
(gst_iir_equalizer_nbands_get_property):
* gst/equalizer/gstiirequalizernbands.h:
Refactor plugin into a base class and a first subclass (nband eq). The
nband eq uses GstChildProxy and is controlable. More subclasses will
follow.
Original commit message from CVS:
Includes patch by: Paul Davis <paul at linuxaudiosystems dot com>
* ext/jack/Makefile.am:
* ext/jack/gstjackaudioclient.c: (gst_jack_audio_client_init),
(jack_process_cb), (jack_sample_rate_cb), (jack_buffer_size_cb),
(jack_shutdown_cb), (connection_find),
(gst_jack_audio_make_connection), (gst_jack_audio_get_connection),
(gst_jack_audio_unref_connection),
(gst_jack_audio_connection_add_client),
(gst_jack_audio_connection_remove_client),
(gst_jack_audio_client_new), (gst_jack_audio_client_free),
(gst_jack_audio_client_get_client),
(gst_jack_audio_client_set_active):
* ext/jack/gstjackaudioclient.h:
Make an object to manage client connections to the jack server which we
will use in the future to run selected jack elements with the same jack
connection.
Make some stuff a bit more threadsafe.
Activate the jack client ASAP.
* ext/jack/gstjackaudiosink.c:
(gst_jack_audio_sink_allocate_channels),
(gst_jack_audio_sink_free_channels), (jack_process_cb),
(gst_jack_ring_buffer_open_device),
(gst_jack_ring_buffer_close_device),
(gst_jack_ring_buffer_acquire), (gst_jack_ring_buffer_release),
(gst_jack_audio_sink_class_init), (gst_jack_audio_sink_init),
(gst_jack_audio_sink_getcaps):
* ext/jack/gstjackaudiosink.h:
Use new client object to manage connections.
Don't remove and recreate all ports, try to reuse them.
Original commit message from CVS:
* ext/wavpack/gstwavpack.c: (plugin_init):
* ext/wavpack/gstwavpackcommon.c:
Use a general wavpack debug category for common code.
* ext/wavpack/gstwavpackstreamreader.c:
(gst_wavpack_stream_reader_set_pos_abs),
(gst_wavpack_stream_reader_set_pos_rel),
(gst_wavpack_stream_reader_write_bytes):
Use the general wavpack debug category here too and add debug
output to the functions that should not be called at all by
the wavpack library.
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_plugin_init):
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_plugin_init):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init):
Change debugging category names to conform to the conventions.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
* gst/qtdemux/qtdemux.h:
Share qtdemux debug category across all files, otherwise all debugging
in files other than qtdemux.c would end up in the default category.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_start),
(gst_spectrum_event), (gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
One FIXME less, by resolving message timestamps against the playback
segment.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init),
(gst_spectrum_init), (gst_spectrum_set_property),
(gst_spectrum_transform_ip):
Fix and cleanup default property values.
Add FIXMEs for stuff that looks rather wrong.
Original commit message from CVS:
* gst/spectrum/demo-audiotest.c: (message_handler):
* gst/spectrum/demo-osssrc.c: (message_handler):
Remove two obsolete and confusing comments.
Original commit message from CVS:
* ext/nas/nassink.c: (gst_nas_sink_class_init),
(gst_nas_sink_init), (gst_nas_sink_getcaps),
(gst_nas_sink_unprepare):
Some more cleanups/changes; use boilerplate macro.
Original commit message from CVS:
* ext/nas/Makefile.am:
* ext/nas/README:
* ext/nas/nassink.c: (gst_nas_sink_get_type),
(gst_nas_sink_base_init), (gst_nas_sink_class_init),
(gst_nas_sink_init), (gst_nas_sink_finalize),
(gst_nas_sink_getcaps), (gst_nas_sink_prepare),
(gst_nas_sink_unprepare), (gst_nas_sink_delay),
(gst_nas_sink_reset), (gst_nas_sink_write),
(gst_nas_sink_set_property), (gst_nas_sink_get_property),
(gst_nas_sink_open), (gst_nas_sink_close), (NAS_flush),
(NAS_sendData), (NAS_EventHandler), (gst_nas_sink_sink_get_format),
(NAS_createFlow), (plugin_init):
* ext/nas/nassink.h:
Bunch of nassink clean-ups: make build by adding the right CFLAGS
and LIBS to Makefile.am; rename structure, macros and functions
according to canonical naming scheme; move some things around a bit;
use GST_CAT_DEFAULT instead of GST_CAT_* everywhere; remove README
file that didn't really contain any useful information anyway (the
useful bits have been moved into the 'host' property description).
Original commit message from CVS:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/app/gstappbuffer.c:
* gst-libs/gst/app/gstappbuffer.h:
* gst-libs/gst/app/gstappsrc.c:
Add GstAppBuffer that includes a callback and closure for
proper handling of data chunks.
Original commit message from CVS:
* ext/dts/gstdtsdec.c: (gst_dtsdec_init), (gst_dtsdec_sink_event):
A few small clean-ups.
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps):
More debug output for failure cases.
Original commit message from CVS:
Patch by: Young-Ho Cha <ganadist at chollian net>
* ext/dts/gstdtsdec.c: (gst_dtsdec_handle_frame),
(gst_dtsdec_change_state):
Don't do forced downmixing to stereo, but check what downstream
can do and let libdts do the downmixing based on that (#400555).
Original commit message from CVS:
Patch by: Lutz Mueller <lutz topfrose de>
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_init), (gst_neonhttp_src_set_property),
(gst_neonhttp_src_set_uri), (gst_neonhttp_src_set_proxy),
(gst_neonhttp_src_send_request_and_redirect),
(gst_neonhttp_src_uri_set_uri):
* ext/neon/gstneonhttpsrc.h:
Simplify _set_uri() and _set_proxy() and remove the unused ishttp
member (#388050).
* tests/check/elements/neonhttpsrc.c: (GST_START_TEST):
Fix bogus URI to something that actually exists, otherwise we just
bypass the test (and also to something that doesn't redirect, since
neonhttpsrc doesn't seem to handle this very gracefully yet)
Original commit message from CVS:
* tests/check/Makefile.am:
Draw plugins in from the build tree sys/ dir, rather than
picking up the already installed versions.
Original commit message from CVS:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Disable the cocoa event loop since it's a huge memory leak. Should only
matter if the sink isn't used within an NSApp (which has already got
a coca event loop).
Remove all unused code.
Original commit message from CVS:
* configure.ac:
* gst/app/Makefile.am:
* gst/app/gstapp.c:
* gst/app/gstappsrc.c:
* gst/app/gstappsrc.h:
Add a new plugin/library to make it easy for apps to shove
data into a pipeline.
Original commit message from CVS:
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_init):
* gst/real/gstrealvideodec.c: (gst_real_video_dec_init):
Use gst_pad_use_fixed_caps() on source pads, to avoid negotiation
errors in certain situations (e.g. dec ! cs ! ximagesink and the
imagesink window is resized); also, some minor clean-ups.
Original commit message from CVS:
* sys/directsound/gstdirectsoundsink.c:
* sys/directsound/gstdirectsoundsink.h:
Remove include of unused headers.
* sys/waveform/gstwaveformplugin.c:
* sys/waveform/gstwaveformsink.c:
* sys/waveform/gstwaveformsink.h:
* win32/vs6/libgstwaveform.dsp:
Add a new waveform plugin which includes an audio sink
element using the WaveForm win32 API.
* win32/MANIFEST:
Add the new project file form waveform plugin.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawplugin.c:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Prepare the plugin to move to good:
Remove unused/untested code (rendering to an extern surface,
yuv format rendering).Use GST_(DEBUG/*)_OBJECT macros
Rename all functions from gst_directdrawsink to gst_directdraw_sink.
Add gtk doc section
Fix a bug in gst_directdraw_sink_show_frame, memcpy line by line
respecting destination surface stride.
* sys/directsound/gstdirectsoundplugin.c:
* sys/directsound/gstdirectsoundsink.c:
* sys/directsound/gstdirectsoundsink.h:
Prepare the plugin to move to good:
Rename all functions from gst_directsoundsink to gst_directsound_sink.
Add gtk doc section
* win32/common/config.h.in:
* win32/MANIFEST:
Add config.h.in
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
Add crossreferences to glib/gobject/gstream docs. Also fix typo in
timidity.cfg check.
* ext/timidity/gsttimidity.c: (plugin_init):
Also build if no config was detected at configure time.
Original commit message from CVS:
* Makefile.am:
Add win32 MANIFEST
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Clear unused code and add comments.
Remove yuv from template caps, it only supports RGB
actually.
Implement XOverlay interface and remove window and fullscreen
properties.
Add debug logs.
Test for blit capabilities to return only the current colorspace if
the hardware can't blit for one colorspace to another.
* sys/directsound/gstdirectsoundsink.c:
Add some debugs.
* win32/MANIFEST:
Add VS7 project files and solution.
* win32/vs6/gst_plugins_bad.dsw:
* win32/vs6/libgstdirectdraw.dsp:
* win32/vs6/libgstdirectsound.dsp:
* win32/vs6/libgstqtdemux.dsp:
Update project files.
Original commit message from CVS:
* configure.ac:
Tell the code which faad it is, so that we can adjust the hacks
needed.
* ext/faad/gstfaad.c:
Make our hacks dependent on the fadd lib in use.
Original commit message from CVS:
* ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_query):
GST_PAD_PARENT doesn't return a GstObject with an incremented refcount.
Switched to using gst_pad_get_parent().
Original commit message from CVS:
* configure.ac:
Increase required libsndfile version to a version that's known to
have the function sf_write_sync() to make the build bots happy.
Original commit message from CVS:
2007-02-05 Andy Wingo <wingo@pobox.com>
* ext/sndfile/Makefile.am:
* ext/sndfile/gstsfsrc.h:
* ext/sndfile/gstsfsrc.c: Port sfsrc to 0.10, pull or push, with
random access woo.