Original commit message from CVS:
* gst/mpegvideoparse/mpegpacketiser.c: (mpeg_util_find_start_code):
Small meaningless cleanup.
* gst/mpegvideoparse/mpegvideoparse.c: (gst_mpegvideoparse_flush),
(mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain_forward),
(scan_keyframe), (gst_mpegvideoparse_flush_decode),
(gst_mpegvideoparse_chain_reverse), (gst_mpegvideoparse_chain),
(mpv_parse_sink_event), (gst_mpegvideoparse_change_state):
* gst/mpegvideoparse/mpegvideoparse.h:
Track segment events.
Do the first part of reverse playback by sending data between two
I-frames to the decoder.
Original commit message from CVS:
* autogen.sh:
Add -Wno-portability to the automake parameters to stop warnings
about GNU make extensions being used. We require GNU make in almost
every Makefile anyway.
* configure.ac:
Use AM_PROG_CC_C_O as a compiler that accepts both -c and -o
at the same time is required for per target flags.
Original commit message from CVS:
* gst/rtpmanager/gstrtpsession.c: (create_send_rtp_sink):
Don't set fixed caps, we can basically do everything the upsteam peer
pad can renegotiate to. Fixes#507940.
Original commit message from CVS:
* Makefile.am:
Include lcov.mak to allow building coverage reports. Add top-level
check targets similar to other gst packages.
Original commit message from CVS:
* ext/directfb/Makefile.am:
Add GST_CFLAGS. Otherwise we don't get -Wall -Werror.
* ext/directfb/dfbvideosink.c:
Getting tired of directfb's chatter. Quiet it.
Original commit message from CVS:
* configure.ac:
* ext/gio/gstgiobasesrc.c: (gst_gio_base_src_get_size):
* tests/check/pipelines/gio.c: (free_input), (GST_START_TEST):
Update to GMemoryInputStream API changes in GLib SVN and require
gio-2.0 >= 2.15.1 for this. Fixes bug #507584.
We can also report the duration for every GSeekable, not only
GFileInputStream and GMemoryInputStream.
Original commit message from CVS:
* sys/glsink/glimagesink.c:
* sys/glsink/glimagesink.h:
* sys/glsink/gstglbuffer.h:
* sys/glsink/gstgldisplay.c:
* sys/glsink/gstgldisplay.h:
* sys/glsink/gstglupload.c:
Handle xoverlay exposes correctly. This means glimagesink works
correctly most of the time in totem (fullscreening being an
execption). Doesn't handle expose events directly to the GL
window.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_loop):
Don't unref the popped buffer when we don't have ownership.
Fixes#507020.
Original commit message from CVS:
* tests/check/Makefile.am:
Disable vcdsrc in states test because it takes too much time
to get to PLAYING if it can find a device.
Original commit message from CVS:
* ext/musicbrainz/gsttrm.c:
Don't emit signiture when going to READY, because it might
not be ready.
* ext/nas/nassink.c:
Remove useless call that sleeps for 5 seconds. Yup, it calls
sleep(1) 5 times. Go NAS.
* gst/librfb/gstrfbsrc.c:
* gst/librfb/rfbdecoder.c:
Initialize our debug categories properly.
* gst/rawparse/gstrawparse.c:
Don't register element details for a non-element. Be much more
rude when subclass doesn't set a pad template (assert!). Don't
unref the pad template; we don't own it.
* gst/videosignal/gstvideoanalyse.c:
Initialize debug category.
* tests/check/Makefile.am:
Ignore nassink element in tests because it has unavoidable
long timeouts.
Original commit message from CVS:
* configure.ac:
* sys/glsink/Makefile.am:
Switch to using pkgconfig to detect libGL. Since we use
recent features added to Mesa, there's no point in adding
a check for pre-pkgconfig versions.
Original commit message from CVS:
* ext/ladspa/gstladspa.c: (gst_ladspa_get_property):
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_show_frame):
* gst/mve/gstmvemux.c: (gst_mve_mux_request_new_pad):
* sys/dvb/dvbbasebin.c: (dvb_base_bin_class_init):
Fix 'xyz may be used uninitialized' compiler warnings caused
by broken g_assert_not_reached() macro in GLib-2.15.x and don't
abort() in any case but properly report the error.
Original commit message from CVS:
* ext/soup/Makefile.am:
* ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_get_property),
(gst_souphttp_src_unicodify), (soup_got_headers):
Use gst_tag_freeform_string_to_utf8() and post radio station
info as tags on the bus.
Original commit message from CVS:
* sys/glsink/glimagesink.c:
* sys/glsink/gstglupload.c:
Change glimagesink over to using GL buffers. This breaks
glimagesink for normal operation, but should be fixed soon.
Original commit message from CVS:
* sys/glsink/gltestsrc.c:
* sys/glsink/gstglbuffer.c:
* sys/glsink/gstglbuffer.h:
* sys/glsink/gstgldownload.c:
* sys/glsink/gstglfilter.c:
* sys/glsink/gstglfilterexample.c:
* sys/glsink/gstgltestsrc.c:
* sys/glsink/gstglupload.c:
Convert gldownload to BaseTransform. Make glfilterexample
visually interesting. Add support for various formats to
downloading. Fix a few places where we leak GL state to
other elements (bad, but hard to prevent).
Original commit message from CVS:
* sys/glsink/BUGS:
* sys/glsink/Makefile.am:
* sys/glsink/gstglbuffer.c:
* sys/glsink/gstglbuffer.h:
* sys/glsink/gstglconvert.c:
* sys/glsink/gstgldisplay.c:
* sys/glsink/gstglfilter.c:
* sys/glsink/gstglfilter.h:
* sys/glsink/gstglfilterexample.c:
* sys/glsink/gstgltestsrc.c:
* sys/glsink/gstglupload.c:
* sys/glsink/gstopengl.c:
Remove code that handles non-texture buffers. Add a
GstGLBufferFormat type that corresponds to how to use the
texture, not the original video format. Convert gstflfilter.c
into a base class, add glfilterexample and glconvert elements.
* sys/glsink/color_matrix.c:
Minor ramblings about color conversion matrices.
Original commit message from CVS:
* sys/glsink/gstglbuffer.c:
* sys/glsink/gstgldownload.c:
* sys/glsink/gstglfilter.c:
Clean up code. Fix a few leaks.
Original commit message from CVS:
* sys/glsink/glimagesink.c:
* sys/glsink/glimagesink.h:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
* sys/glsink/gstglbuffer.c:
* sys/glsink/gstglbuffer.h:
* sys/glsink/gstgldownload.c:
* sys/glsink/gstglfilter.c:
* sys/glsink/gstglupload.c:
Rewrite a bunch of code to use textures as the intermediate
instead of renderbuffers. upload, download, filtering all
work.
Original commit message from CVS:
* gst/videoparse/Makefile.am:
* gst/videoparse/README:
* gst/videoparse/gstvideoparse.c:
Remove videoparse element, because it was moved to gst/rawparse/
Original commit message from CVS:
* gst/rawparse/gstrawparse.c: (gst_raw_parse_src_event):
Always seek on frame boundaries, will produce nothing useful
otherwise.
Original commit message from CVS:
* configure.ac:
* gst/rawparse/Makefile.am:
* gst/rawparse/README:
* gst/rawparse/gstaudioparse.c: (gst_audio_parse_format_get_type),
(gst_audio_parse_endianness_get_type), (gst_audio_parse_base_init),
(gst_audio_parse_class_init), (gst_audio_parse_init),
(gst_audio_parse_set_property), (gst_audio_parse_get_property),
(gst_audio_parse_update_frame_size), (gst_audio_parse_get_caps):
* gst/rawparse/gstaudioparse.h:
* gst/rawparse/gstrawparse.c: (gst_raw_parse_base_init),
(gst_raw_parse_class_init), (gst_raw_parse_init),
(gst_raw_parse_dispose),
(gst_raw_parse_class_set_src_pad_template),
(gst_raw_parse_class_set_multiple_frames_per_buffer),
(gst_raw_parse_reset), (gst_raw_parse_chain),
(gst_raw_parse_convert), (gst_raw_parse_sink_event),
(gst_raw_parse_src_event), (gst_raw_parse_src_query_type),
(gst_raw_parse_src_query), (gst_raw_parse_set_framesize),
(gst_raw_parse_set_fps), (gst_raw_parse_get_fps),
(gst_raw_parse_is_negotiated):
* gst/rawparse/gstrawparse.h:
* gst/rawparse/gstvideoparse.c: (gst_video_parse_format_get_type),
(gst_video_parse_endianness_get_type), (gst_video_parse_base_init),
(gst_video_parse_class_init), (gst_video_parse_init),
(gst_video_parse_set_property), (gst_video_parse_get_property),
(gst_video_parse_format_to_fourcc),
(gst_video_parse_update_frame_size), (gst_video_parse_get_caps):
* gst/rawparse/gstvideoparse.h:
* gst/rawparse/plugin.c: (plugin_init):
Add new plugin rawparse that contains a base class for raw data
parsers and the two elements audioparse and videoparse that can
be used to parse raw audio and video. These are inspired by the
old videoparse element which the new rawparse plugin deprecates.
Original commit message from CVS:
* sys/glsink/glextensions.c:
* sys/glsink/glextensions.h:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
* sys/glsink/gstglbuffer.c:
* sys/glsink/gstgldownload.c:
* sys/glsink/gstglupload.c:
A careful read of the documentation reveals that I can't use
renderbuffers as textures. Duh. Checkpoint because I'm about
to rewrite a bunch of code.
Original commit message from CVS:
* sys/glsink/Makefile.am:
* sys/glsink/glextensions.c:
* sys/glsink/glextensions.h:
* sys/glsink/glimagesink.c:
* sys/glsink/glimagesink.h:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
* sys/glsink/gstglbuffer.c:
* sys/glsink/gstglbuffer.h:
* sys/glsink/gstgldownload.c:
* sys/glsink/gstglfilter.c:
* sys/glsink/gstglupload.c:
* sys/glsink/gstopengl.c:
Switch to using framebuffer_objects instead of GLXPixmaps,
because that's what my driver supports. Remove GLDrawable,
since GstGLDisplay now has a default drawable and context.
Original commit message from CVS:
2007-12-18 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch-marshal.list:
* gst/switch/gstswitch.h (struct _GstStreamSelectorClass):
* gst/switch/gstswitch.c (enum, gst_selector_pad_class_init)
(gst_selector_pad_get_property)
(gst_selector_pad_get_running_time)
(gst_stream_selector_class_init, gst_segment_get_timestamp)
(gst_segment_set_stop, gst_segment_set_start)
(gst_stream_selector_set_active_pad, gst_stream_selector_block)
(gst_stream_selector_push_pending_stop)
(gst_stream_selector_switch): Change so that the signals and
properties deal in running time, not buffer time. Document the
signals more. Change uint64 in API to int64, to reflect what's in
GstSegment.
Original commit message from CVS:
* Makefile.am:
Include common/win32.mak for CRLF check of win32 project
files (see #393626).
* configure.ac:
Bump requirements to -base CVS for libgstvideo additions in
glimagesink. Disable glimagesink until the missing files get
checked in.
Original commit message from CVS:
* sys/glsink/Makefile.am:
* sys/glsink/glimagesink.c:
* sys/glsink/glimagesink.h:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
* sys/glsink/gstopengl.c:
* sys/glsink/gstglupload.c:
Use new GstVideoFormat checked into -base. Add new glupload
element to upload raw video into a GLXPixbuf. Untested. Will
likely crash your motorcycle if you try it.
* sys/glsink/gstvideo-common.c:
* sys/glsink/gstvideo-common.h:
Remove.
Original commit message from CVS:
* gst/multifile/gstmultifilesrc.c:
* gst/multifile/gstmultifilesrc.h:
When subsequent files are read, if the file doesn't exist, send
an EOS instead of causing an error.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.c (gst_selector_pad_chain): Return OK when
a buffer is ignored, not NOT_LINKED. No sense in making a source
element error out; at least fdsrc considers NOT_LINKED to be a
fatal error. Patch 11/12. There is no patch 12/12. Foo.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch-marshal.list:
* gst/switch/gstswitch.h (struct _GstStreamSelectorClass):
* gst/switch/gstswitch.c (gst_stream_selector_class_init)
(gst_stream_selector_block): Make the block() signal return the
last stop time of the active pad. Patch 10/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.c (gst_selector_pad_get_property)
(gst_selector_pad_class_init, gst_stream_selector_class_init)
(gst_stream_selector_get_property): Expose 'last-stop-time' as a
pad property, not an element property.
(gst_selector_pad_chain): Mark the last_stop time as timestamp +
duration, not timestamp. Patch 9/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.c (gst_stream_selector_change_state)
(gst_stream_selector_block, gst_stream_selector_switch): Use the
cond mechanism instead of blocked pads. Patch 8/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.h (struct _GstStreamSelector):
* gst/switch/gstswitch.c (gst_stream_selector_wait)
(gst_selector_pad_chain, gst_stream_selector_init)
(gst_stream_selector_dispose): Add infrastructure for new blocking
mechanism that does not use gst_pad_set_blocked, which does not
work on sink pads. Patch 7/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.h (struct _GstStreamSelector): Add some
state variables.
* gst/switch/gstswitch.c (gst_stream_selector_push_pending_stop)
(gst_selector_pad_chain): Push any pending stop event.
(gst_stream_selector_set_active_pad)
(gst_stream_selector_set_property): Factor out setting the active
pad to a function. Close the segment of the previous active pad if
told to do so via a stop_time != GST_CLOCK_TIME_NONE.
(gst_stream_selector_switch): Implement switch vmethod. Patch 5/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.c (gst_stream_selector_block): Implement
the block() signal. This implementation will be replaced in future
patches, however. Patch 4/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.h (struct _GstStreamSelectorClass):
* gst/switch/gstswitch.c (gst_stream_selector_class_init): Add
`block' and `switch' signals.
* gst/switch/Makefile.am:
* gst/switch/gstswitch-marshal.list: Add foo to generate a
marshaller for the `switch' signal. Patch 2/12.
Original commit message from CVS:
2007-12-17 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.h:
* gst/switch/gstswitch.c: Replace with files from
gststreamselector.[ch], registered as the "switch" plugin, with
"GstSwitch" types. Patch 1/12.
Original commit message from CVS:
* sys/glsink/Makefile.am:
* sys/glsink/glextensions.c:
* sys/glsink/glextensions.h:
* sys/glsink/glvideo.c:
Add vblank synchronization. Isn't really working on my
driver. :(
Original commit message from CVS:
* sys/glsink/Makefile.am:
* sys/glsink/glimagesink.c:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
* sys/glsink/gstvideo-common.c:
* sys/glsink/gstvideo-common.h:
Add support for xRGB, xBGR, and AYUV. Re-add support for
power-of-2 textures.
Original commit message from CVS:
* gst/videoparse/gstvideoparse.c: (gst_video_parse_dispose),
(gst_video_parse_sink_event):
Free the adapter on dispose and correctly reset on newsegment events.
Original commit message from CVS:
* gst/videoparse/gstvideoparse.c: (gst_video_parse_sink_event),
(gst_video_parse_src_event), (gst_video_parse_src_query):
Improve duration query by first asking upstream and if it can't handle
the query try to get the duration in bytes from upstream and convert.
For seeks, try if upstream handles this already first and do our
conversion to byte format only if it doesn't and if we get a
newsegment event in time format keep it and only do our conversions
if the event has another format.
Original commit message from CVS:
* gst/videoparse/gstvideoparse.c:
(gst_video_parse_format_get_type),
(gst_video_parse_endianness_get_type),
(gst_video_parse_class_init), (gst_video_parse_init),
(gst_video_parse_set_property), (gst_video_parse_get_property),
(gst_video_parse_format_to_fourcc),
(gst_video_parse_update_block_size), (gst_video_parse_chain),
(gst_video_parse_sink_event):
Add support for video/x-raw-rgb and video/x-raw-gray. Also send
downstream elements downstream, not upstream.
Original commit message from CVS:
* sys/glsink/gstvideo-common.c:
* sys/glsink/gstvideo-common.h:
Pull together some common raw video functions into one location.
This should eventually move to -base.
* sys/glsink/Makefile.am:
* sys/glsink/glimagesink.c:
* sys/glsink/glimagesink.h:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
* sys/glsink/gstopengl.c:
Use the new video-common.h stuff. Readd support for RGB video.
Original commit message from CVS:
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtspacketizer.h:
Hash streams by pid again. Add a linked list inside each
stream with a list of sub_tables. Fix multiple sections
as it was borked with my last commit.
Original commit message from CVS:
* gst/videoparse/gstvideoparse.c: (gst_video_parse_init),
(gst_video_parse_src_event), (gst_video_parse_src_query_type):
Implement a query type function for the src pad, implement seeking
and use ANY caps for the sink pad as the element doesn't care what
caps the input has and everything is handled via properties.
Original commit message from CVS:
* gst/videoparse/gstvideoparse.c: (gst_video_parse_convert),
(gst_video_parse_sink_event):
Handle -1 values for the CONVERT query too.
Original commit message from CVS:
* gst/videoparse/gstvideoparse.c: (gst_video_parse_sink_event):
Add YV12 to the pad templates as it is supported too and allow
-1 as stop position for NEWSEGMENT events.
Original commit message from CVS:
* gst/videoparse/Makefile.am:
Add $(GST_PLUGINS_BASE_CFLAGS) to CFLAGS to fix the build.
* gst/videoparse/gstvideoparse.c: (gst_video_parse_init),
(gst_video_parse_set_property), (gst_video_parse_get_property):
Use g_value_[sg]et_enum() for enum properties, g_value_[sg]et_int()
gives a g_critical().
Original commit message from CVS:
* gst/videoparse/README:
* gst/videoparse/gstvideoparse.c:
Add a bunch of features: handle format specification, handle
queries and conversion. Works much like a normal parser now.
Original commit message from CVS:
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_finalize),
(gst_rtp_pt_demux_setup), (gst_rtp_pt_demux_release),
(gst_rtp_pt_demux_change_state):
* gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_reset),
(gst_rtp_ssrc_demux_dispose), (gst_rtp_ssrc_demux_src_query),
(gst_rtp_ssrc_demux_change_state):
Clean up the dynamic pads when going to READY.
Original commit message from CVS:
* ext/dts/gstdtsdec.c: (gst_dtsdec_init),
(gst_dtsdec_sink_setcaps), (gst_dtsdec_chain_raw),
(gst_dtsdec_chain):
* ext/dts/gstdtsdec.h:
Add support for "audio/x-private1-dts" as used by flupsparse. Most
changes adapted from a52dec.
Original commit message from CVS:
* sys/glsink/Makefile.am:
* sys/glsink/glimagesink.c:
* sys/glsink/glvideo.c:
* sys/glsink/glvideo.h:
Split out gl-related code into a separate file with a
sensible API. Major cleanup. Still crashes occasionally
due to different threads touching bits at the same time.
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* ext/soup/gstsouphttpsrc.c: (_do_init),
(gst_souphttp_src_class_init), (gst_souphttp_src_init),
(gst_souphttp_src_dispose), (gst_souphttp_src_set_property),
(gst_souphttp_src_get_property), (unicodify),
(gst_souphttp_src_unicodify), (gst_souphttp_src_create),
(gst_souphttp_src_start), (gst_souphttp_src_stop),
(gst_souphttp_src_unlock), (gst_souphttp_src_unlock_stop),
(gst_souphttp_src_get_size), (gst_souphttp_src_is_seekable),
(soup_got_headers), (soup_got_body), (soup_finished),
(soup_got_chunk), (soup_response), (soup_parse_status),
(gst_souphttp_src_uri_get_type),
(gst_souphttp_src_uri_get_protocols),
(gst_souphttp_src_uri_get_uri), (gst_souphttp_src_uri_set_uri),
(gst_souphttp_src_uri_handler_init):
* ext/soup/gstsouphttpsrc.h:
Do not try to unpause I/O in the "queued" state.
Reorganise a bunch of things and cleanups.
Uses G_GUINT64_FORMAT instead of hard-coding %llu.
See #502335.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Don't strdup (and thus leak) codec name strings when passing
them to gst_tag_list_add().
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init),
(gst_rtp_bin_handle_message):
* gst/rtpmanager/gstrtpsession.c: (source_get_sdes_structure),
(on_ssrc_sdes):
Post a message when the SDES infor changes for a source.
* gst/rtpmanager/rtpsession.c:
* gst/rtpmanager/rtpsource.c:
Update some comments.
Original commit message from CVS:
Based on patch by: <mutex at runbox dot com>
* gst/videoparse/gstvideoparse.c: (gst_video_parse_src_query):
Forward the query upstream, the default element event handler does
something different. Fixes#502879.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (create_session):
* gst/rtpmanager/rtpjitterbuffer.c:
Update comment.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init),
(gst_rtp_session_set_property), (gst_rtp_session_get_property):
Define some GObject properties to set SDES and other configuration.
* gst/rtpmanager/rtpsession.c: (rtp_session_class_init),
(rtp_session_init), (rtp_session_finalize),
(rtp_session_set_property), (rtp_session_get_property),
(on_ssrc_sdes), (rtp_session_set_bandwidth),
(rtp_session_get_bandwidth), (rtp_session_set_rtcp_fraction),
(rtp_session_get_rtcp_fraction), (rtp_session_set_sdes_string),
(rtp_session_get_sdes_string), (obtain_source),
(rtp_session_get_internal_source), (rtp_session_process_sdes),
(rtp_session_send_rtp), (rtp_session_next_timeout), (session_sdes),
(is_rtcp_time):
* gst/rtpmanager/rtpsession.h:
Add signal when new SDES infor has been found for a source.
Create properties for SDES and other info.
Simplify the SDES API.
Add method for getting the internal source object of the session.
* gst/rtpmanager/rtpsource.c: (rtp_source_class_init),
(rtp_source_finalize), (rtp_source_set_property),
(rtp_source_get_property), (rtp_source_set_callbacks),
(rtp_source_get_ssrc), (rtp_source_set_as_csrc),
(rtp_source_is_as_csrc), (rtp_source_is_active),
(rtp_source_is_validated), (rtp_source_is_sender),
(rtp_source_received_bye), (rtp_source_get_bye_reason),
(rtp_source_set_sdes), (rtp_source_set_sdes_string),
(rtp_source_get_sdes), (rtp_source_get_sdes_string),
(rtp_source_get_new_sr), (rtp_source_get_new_rb):
* gst/rtpmanager/rtpsource.h:
Add GObject properties for various things.
Don't leak the bye reason.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Fix list of supported and known codecs.
Emit tag with the codec name so it gets properly reported in totem and
other applications.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (bpwsinc_transform):
* gst/filter/gstlpwsinc.c: (lpwsinc_transform):
The transform() methods are not called in passthrough mode so
there's no need for checking if the element is in passthrough mode.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (bpwsinc_transform):
* gst/filter/gstlpwsinc.c: (lpwsinc_transform):
Sync the GObject properties with the controller even in passthrough
mode to get consistent property values.
Original commit message from CVS:
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtsparse.c:
A sub table is identified by the pair table_id and
sub_table_identifier, not by pid. So hash with that.
* sys/dvb/dvbbasebin.c:
Make sure initial pids are added properly to filter,
Original commit message from CVS:
2007-12-05 Andy Wingo <wingo@pobox.com>
* gst/switch/gstswitch.c (gst_switch_set_property): Don't push
buffers from app thread when unsetting `queue-buffers', it's
dangerous and the chain function will do it for us anyway.
Original commit message from CVS:
* gst/mpegtsparse/Makefile.am:
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtsparse.c:
Remove signals for pat, pmt, nit, eit, sdt. Replace with bus
messages.
* sys/dvb/dvbbasebin.c:
Instead of attaching to signals, use the bus messages.
Also fix up so the dvbsrc starts only outputting the info tables
like PAT, CAT, NIT, SDT, EIT instead of the whole ts.
Original commit message from CVS:
Patch by: Wouter Cloetens <wouter at mind dot be>
* configure.ac:
Bump libsoup requirement as libsoup does not support async client
operation prior to version 2.2.104 and it has some leaks.
* ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_class_init),
(gst_souphttp_src_init), (gst_souphttp_src_dispose),
(gst_souphttp_src_set_property), (gst_souphttp_src_create),
(gst_souphttp_src_start), (gst_souphttp_src_stop),
(gst_souphttp_src_unlock), (gst_souphttp_src_unlock_stop),
(gst_souphttp_src_get_size), (soup_got_headers), (soup_got_body),
(soup_finished), (soup_got_chunk), (soup_response),
(soup_session_close):
* ext/soup/gstsouphttpsrc.h:
Implement unlock().
Picks up the size from the Content-Length header and emit a duration
message.
Don't leak the GMainContext object.
Fixes#500099.
Original commit message from CVS:
* ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_set_caps),
(alsaspdifsink_get_time), (alsaspdifsink_set_params),
(alsaspdifsink_find_pcm_device):
Don't free uninitialized data when we are in error.
Original commit message from CVS:
* gst/speexresample/README:
* gst/speexresample/arch.h:
* gst/speexresample/resample.c: (resampler_basic_direct_single),
(resampler_basic_direct_double),
(resampler_basic_interpolate_single),
(resampler_basic_interpolate_double),
(speex_resampler_process_native), (speex_resampler_process_float),
(speex_resampler_process_int),
(speex_resampler_process_interleaved_float),
(speex_resampler_process_interleaved_int),
(speex_resampler_get_input_latency),
(speex_resampler_get_output_latency):
* gst/speexresample/speex_resampler.h:
Update speex resampler to latest SVN. We're now down to only the
changes noted in README again.
* gst/speexresample/speex_resampler_wrapper.h:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_push_drain), (gst_speex_resample_query):
Adjust to API changes.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Output segment with proper 'stop' value, makes flvdemux 100% compatible
with gnonlin.
Original commit message from CVS:
patch by: Alessandro Decina
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtspacketizer.h:
* gst/mpegtsparse/mpegtsparse.c:
* gst/mpegtsparse/mpegtsparse.h:
pat-info is now a signal not a GObject property that
gets notified.
pat-info, pmt-info now instead of passing a GObject as
a parameter, pass a GstStructure.
New signals: nit-info, sdt-info, eit-info for DVB SI information
* sys/dvb/camconditionalaccess.c:
* sys/dvb/camconditionalaccess.h:
* sys/dvb/camdevice.c:
* sys/dvb/camdevice.h:
* sys/dvb/camswclient.c:
* sys/dvb/camswclient.h:
* sys/dvb/camutils.c:
* sys/dvb/camutils.h:
Cam code now uses the pmt GstStructure passed from mpegtsparse
signals rather than the GObject.
* sys/dvb/dvbbasebin.c:
Use new signals in mpegtsparse and use GstStructures as per
mpegtsparse's modified API.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_update_state):
Only post the latency message if we have a resampler state already.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_update_state):
Also post GST_MESSAGE_LATENCY if the latency changes.
Original commit message from CVS:
* gst/speexresample/resample.c: (speex_resampler_get_latency),
(speex_resampler_drain_float), (speex_resampler_drain_int),
(speex_resampler_drain_interleaved_float),
(speex_resampler_drain_interleaved_int):
* gst/speexresample/speex_resampler.h:
* gst/speexresample/speex_resampler_wrapper.h:
Add functions to push the remaining samples and to get the latency
of the resampler. These will get added to Speex SVN in this or a
slightly changed form at some point too and should get merged then
again.
* gst/speexresample/gstspeexresample.c: (gst_speex_resample_init),
(gst_speex_resample_init_state),
(gst_speex_resample_transform_size),
(gst_speex_resample_push_drain), (gst_speex_resample_event),
(gst_speex_fix_output_buffer), (gst_speex_resample_process),
(gst_speex_resample_query), (gst_speex_resample_query_type):
Drop the prepending zeroes and output the remaining samples on EOS.
Also properly implement the latency query for this. speexresample
should be completely ready for production use now.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_query):
jitterbuffer can buffer an unlimited amount of time and thus has no
max_latency requirements.
Original commit message from CVS:
* gst/speexresample/README:
Add README explaining where the resampling code was taken from
and which changes were done.
* gst/speexresample/resample.c: (speex_alloc), (speex_realloc),
(speex_free):
Use g_malloc() and friends instead of malloc() to achieve higher
portability and define the functions inline.
* gst/speexresample/speex_resampler.h:
Add back some useless preprocessor stuff to keep the diff between
our version and the one from the Speex SVN repository lower.
Original commit message from CVS:
* gst/filter/gstbpwsinc.c: (bpwsinc_set_property):
* gst/filter/gstlpwsinc.c: (lpwsinc_set_property):
Post a GST_MESSAGE_LATENCY if the latency changes.
Original commit message from CVS:
* ext/faac/gstfaac.c: (gst_faac_sink_event):
Don't try to flush the decoder on EOS when it was not initialized.
Fixes#498667
Original commit message from CVS:
2007-11-21 Julien Moutte <julien@fluendo.com>
* ext/sdl/sdlaudiosink.c: (gst_sdlaudio_sink_write): Fix build
on Mac OS X. (missing format parameter)
Original commit message from CVS:
* gst/equalizer/gstiirequalizer10bands.c:
* gst/equalizer/gstiirequalizer3bands.c:
Remove preset iface again. We'll re-add this after its been released
in -good.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_fix_output_buffer), (gst_speex_resample_transform):
Some small cleanup and addition of a TODO item.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_fix_output_buffer), (gst_speex_resample_process):
If the resampler gives less output samples than expected
adjust the output buffer and print a warning.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer10bands.c:
* gst/equalizer/gstiirequalizer3bands.c:
Activate preset iface and upload two presets here.
Original commit message from CVS:
Patch by: Wai-Ming Ho <webregbox at yahoo dot co dot uk>
* gst/mpegtsparse/mpegtspacketizer.c: (foreach_stream_clear),
(remove_all), (mpegts_packetizer_clear):
Ensure that the plugin does not crash when the property pat-info is
queried before a PAT is available. It also ensures that the PAT info is
cleared when the changing from PLAYING to READY.
Fixes#487892.
Original commit message from CVS:
Patch by: Michael Kötter <m dot koetter at oraise dot de>
* ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_set_caps),
(alsaspdifsink_get_time), (alsaspdifsink_open),
(alsaspdifsink_set_params), (alsaspdifsink_delay), (plugin_init):
Fix sample rate and clocking.
Remove buffer_time and period_time as this seems to break on some
hardware. Fixes#485462.
Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
don't forget to handle the offset's
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
precalculate some many used values
Original commit message from CVS:
patch by: Armando Taffarel Neto <taffarel@solis.coop.br>
* gst/librfb/gstrfbsrc.c:
Set the timestamp for the output buffers
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler dot de>
* gst/replaygain/rganalysis.c: (yule_filter):
Avoid slowdown from denormals when processing near-silence input data.
Spotted by Gabriel Bouvigne. Fixes#494499.
Original commit message from CVS:
* gst/flv/gstflvparse.c:
Add mapping for Nellymoser ASAO audio codec.
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Make sure we
actually have data to read at the end of the tag. This avoids trying
to allocate negative buffers.
Original commit message from CVS:
* gst/equalizer/demo.c: (draw_spectrum):
* gst/spectrum/demo-audiotest.c: (draw_spectrum):
* gst/spectrum/demo-osssrc.c: (draw_spectrum):
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init):
Change the meaning of the magnitude values given in the
GstMessages by spectrum to decibel instead of
decibel+threshold.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer10bands.c:
* gst/equalizer/gstiirequalizer3bands.c:
* gst/equalizer/gstiirequalizernbands.c:
And continue to update docs. Also include some sample code
for the n-band equalizer in the docs.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer10bands.c:
(gst_iir_equalizer_10bands_class_init):
* gst/equalizer/gstiirequalizer3bands.c:
(gst_iir_equalizer_3bands_class_init):
* gst/equalizer/gstiirequalizernbands.c:
Update docs and property ranges to the real values.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c:
Now do the scaling right for real. Also initialize a previously
uninitialized variable.
Original commit message from CVS:
* gst/equalizer/demo.c:
Make default volume a bit less. Improve layout by giving more space to
the slider with big-numbers and enable fill.
Original commit message from CVS:
* configure.ac:
* tests/check/pipelines/gio.c: (GST_START_TEST):
Require GIO >= 0.1.2 and adjust unit test for an API change.
Original commit message from CVS:
* ext/gio/gstgio.h:
Add macro to check if a stream supports seeking.
* ext/gio/Makefile.am:
* ext/gio/gstgiobasesink.c: (gst_gio_base_sink_base_init),
(gst_gio_base_sink_class_init), (gst_gio_base_sink_init),
(gst_gio_base_sink_finalize), (gst_gio_base_sink_start),
(gst_gio_base_sink_stop), (gst_gio_base_sink_unlock),
(gst_gio_base_sink_unlock_stop), (gst_gio_base_sink_event),
(gst_gio_base_sink_render), (gst_gio_base_sink_query),
(gst_gio_base_sink_set_stream):
* ext/gio/gstgiobasesink.h:
* ext/gio/gstgiobasesrc.c: (gst_gio_base_src_base_init),
(gst_gio_base_src_class_init), (gst_gio_base_src_init),
(gst_gio_base_src_finalize), (gst_gio_base_src_start),
(gst_gio_base_src_stop), (gst_gio_base_src_get_size),
(gst_gio_base_src_is_seekable), (gst_gio_base_src_unlock),
(gst_gio_base_src_unlock_stop), (gst_gio_base_src_check_get_range),
(gst_gio_base_src_create), (gst_gio_base_src_set_stream):
* ext/gio/gstgiobasesrc.h:
Refactor common GIO functions to GstGioBaseSink and GstGioBaseSrc
base classes that only require a GInputStream or GOutputStream to
work.
* ext/gio/gstgiosink.c: (gst_gio_sink_base_init),
(gst_gio_sink_class_init), (gst_gio_sink_init),
(gst_gio_sink_finalize), (gst_gio_sink_start):
* ext/gio/gstgiosink.h:
* ext/gio/gstgiosrc.c: (gst_gio_src_base_init),
(gst_gio_src_class_init), (gst_gio_src_init),
(gst_gio_src_finalize), (gst_gio_src_start):
* ext/gio/gstgiosrc.h:
Use the newly created base classes here.
* ext/gio/gstgio.c: (plugin_init):
* ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_base_init),
(gst_gio_stream_sink_class_init), (gst_gio_stream_sink_init),
(gst_gio_stream_sink_finalize), (gst_gio_stream_sink_set_property),
(gst_gio_stream_sink_get_property):
* ext/gio/gstgiostreamsink.h:
* ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_base_init),
(gst_gio_stream_src_class_init), (gst_gio_stream_src_init),
(gst_gio_stream_src_finalize), (gst_gio_stream_src_set_property),
(gst_gio_stream_src_get_property):
* ext/gio/gstgiostreamsrc.h:
Implement GstGioStreamSink and GstGioStreamSrc that have a property
to set the GInputStream/GOutputStream that should be used.
* tests/check/Makefile.am:
* tests/check/pipelines/.cvsignore:
* tests/check/pipelines/gio.c: (message_handler), (GST_START_TEST),
(gio_testsuite), (main):
Add unit test for giostreamsrc and giostreamsink.
Original commit message from CVS:
* ext/gio/gstgio.c: (plugin_init):
Remove nowadays unnecessary workaround for a crash.
* ext/gio/gstgiosink.c: (gst_gio_sink_finalize),
(gst_gio_sink_start), (gst_gio_sink_stop),
(gst_gio_sink_unlock_stop):
* ext/gio/gstgiosink.h:
* ext/gio/gstgiosrc.c: (gst_gio_src_finalize), (gst_gio_src_start),
(gst_gio_src_stop), (gst_gio_src_unlock_stop):
* ext/gio/gstgiosrc.h:
Make the finalize function safer, clean up everything that could stay
around.
Reset the cancellable instead of creating a new one after cancelling
some operation.
Don't store the GFile in the element, it's only necessary for creating
the streams.
Original commit message from CVS:
* gst/spectrum/demo-audiotest.c: (main):
Use autoaudiosink instead of alsasink and use a sine wave.
* gst/spectrum/gstspectrum.c:
Fix the magnitude calculation.
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* gst-libs/gst/dshow/gstdshowfakesink.cpp:
(CDshowFakeSink.CDshowFakeSink):
* gst-libs/gst/dshow/gstdshowfakesink.h: (CDshowFakeSink.m_hres):
Fix crasher in constructor due to the base class's constructor
not necessarily being NULL-safe (depends on the SDK version used
apparently; #492406).
* sys/dshowsrcwrapper/gstdshowaudiosrc.c: (gst_dshowaudiosrc_prepare):
* sys/dshowsrcwrapper/gstdshowvideosrc.c: (gst_dshowvideosrc_set_caps):
Fix a couple of MSVC compiler warnings (#492406).
Original commit message from CVS:
* gst/equalizer/demo.c: (main):
* gst/equalizer/gstiirequalizer.c:
(gst_iir_equalizer_band_class_init), (setup_filter):
Allow setting 0 as bandwidth and handle this correctly.
Also handle a bandwidth of rate/2 properly.
* gst/equalizer/gstiirequalizernbands.c:
(gst_iir_equalizer_nbands_class_init):
Make it possible to generate a N-band equalizer with 1 bands. The
previous limit of 2 was caused by a nowadays replaced calculation
doing a division by zero if number of bands was 1.
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* gst/rtpmanager/gstrtpsession.c:
Fix bad function signatures (#492798).
Original commit message from CVS:
* gst/equalizer/Makefile.am:
* gst/equalizer/demo.c: (on_window_destroy), (on_configure_event),
(on_gain_changed), (on_bandwidth_changed), (on_freq_changed),
(draw_spectrum), (message_handler), (main):
Add small demo application based on the spectrum demo applications
that gets white noise as input, pushes it through an equalizer and
paints the spectrum. For every equalizer band it's possible to set
gain, bandwidth and frequency.
* gst/equalizer/gstiirequalizer.c: (setup_filter):
Add some guarding against too large or too small frequencies and
bandwidths. Also improve debugging a bit.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c:
(gst_iir_equalizer_band_set_property),
(gst_iir_equalizer_band_get_property),
(gst_iir_equalizer_band_class_init), (arg_to_scale),
(setup_filter), (gst_iir_equalizer_compute_frequencies):
Replace filters with a bit better filters for which we can actually
find documentation, which don't change anything on zero gain, etc.
Make the frequency property of the bands writable, rename the
band-width property to bandwidth and change the meaning to the
frequency difference between bandedges, change the meaning of the
gain property to dB instead of a weird scale between -1 and 1 that
has no real meaning.
Original commit message from CVS:
Changed kclass to "Parser/Extracter/Metadata", changed caps to "image/jpeg, tags-extract=true/false" and changed priority to GST_RANK_PRIMARY+1. Also, srcpad can only work in push mode until fixed to also work in pull mode.
Original commit message from CVS:
Created new plugin ('medadata') and element ('metadataparse') that extract metadata from images (look at bug #486659).
Original commit message from CVS:
* ext/faac/gstfaac.c: (gst_faac_profile_get_type),
(gst_faac_class_init), (gst_faac_init):
Fix bitrate ranges and change enum nick for low complexity
profile from LOW to LC for consistency (#490060).
Original commit message from CVS:
* gst/interleave/interleave.c: (gst_interleave_request_new_pad):
Let's not call every request pad we create "sink%d", that'll
create problems if there's to be more than one pad. Fixes#490682.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/interleave.c:
Add unit test for the above.
Original commit message from CVS:
2007-10-27 Julien MOUTTE <julien@moutte.net>
* gst/mpeg4videoparse/mpeg4videoparse.c:
(gst_mpeg4vparse_align),
(gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain),
(gst_mpeg4vparse_sink_setcaps), (gst_mpeg4vparse_sink_event),
(gst_mpeg4vparse_cleanup), (gst_mpeg4vparse_change_state),
(gst_mpeg4vparse_dispose), (gst_mpeg4vparse_base_init),
(gst_mpeg4vparse_class_init), (gst_mpeg4vparse_init),
(plugin_init):
* gst/mpeg4videoparse/mpeg4videoparse.h: Improved version not
damaging headers using a simple state machine.
Original commit message from CVS:
* sys/dvb/gstdvbsrc.c:
Actually use the code-rate-hp parameter for DVB-S.
It turns out setting to AUTO does not always work (
especially in diseq situations). Set by default to
FEC_AUTO.
Original commit message from CVS:
2007-10-22 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video), (gst_flv_parse_tag_type): Don't
emit no-more-pads for single pad scenarios as the header
is definitely not reliable. We emit them for 2 pads scenarios
though to speed up media discovery.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c:
(gst_iir_equalizer_band_set_property),
(gst_iir_equalizer_band_get_property),
(gst_iir_equalizer_band_class_init), (gst_iir_equalizer_band_init),
(gst_iir_equalizer_band_get_type), (gst_iir_equalizer_class_init),
(setup_filter), (gst_iir_equalizer_setup):
* gst/equalizer/gstiirequalizer.h:
Move bandwidth property to the separate bands and add float64 support.
Original commit message from CVS:
Patch by: Richard Hult <richard imendio com>
* gst/dvdspu/Makefile.am:
Fix LIBS - we need to link against libgstreamer.
Original commit message from CVS:
patch by: Alessandro Decina
* sys/dvb/Makefile.am:
* sys/dvb/cam.c:
* sys/dvb/cam.h:
* sys/dvb/camapplication.c:
* sys/dvb/camapplication.h:
* sys/dvb/camapplicationinfo.c:
* sys/dvb/camapplicationinfo.h:
* sys/dvb/camconditionalaccess.c:
* sys/dvb/camconditionalaccess.h:
* sys/dvb/camdevice.c:
* sys/dvb/camdevice.h:
* sys/dvb/camresourcemanager.c:
* sys/dvb/camresourcemanager.h:
* sys/dvb/camsession.c:
* sys/dvb/camsession.h:
* sys/dvb/camswclient.c:
* sys/dvb/camswclient.h:
* sys/dvb/camtransport.c:
* sys/dvb/camtransport.h:
* sys/dvb/camutils.c:
* sys/dvb/camutils.h:
* sys/dvb/dvbbasebin.c:
* sys/dvb/dvbbasebin.h:
* sys/dvb/gstdvb.c:
* sys/dvb/gstdvbsrc.c:
* sys/dvb/gstdvbsrc.h:
Integrate SoC work done by Alessandro for the Freevo project.
Adds cam support to the dvb stack in GStreamer and a new
element (actually a bin) called dvbbasebin that integrates
dvbsrc and mpegtsparse to a) handle decryption and b) allow
acquiring multiple channels on same transponder without
knowing pid numbers.
Original commit message from CVS:
patch by: Alessandro Decina
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtsparse.c:
* gst/mpegtsparse/mpegtsparse.h:
Add request pad for getting the full transport stream coming in.
Original commit message from CVS:
* configure.ac:
Update the highest allowed neon version from 0.26.99 to 0.27.99.
No code changes are required to work with the newest neon version.
Original commit message from CVS:
* configure.ac:
Require core CVS. This is implicit in the -base CVS
requirement already, so we might just well spell it
out. Also, we do need at least 0.10.14 for
gst_element_class_set_details_simple(). Make check
for gmyth a bit more restrictive so things don't break
if the next version changes API.
* ext/alsaspdif/alsaspdifsink.c:
Work around alsa alloca macros triggering 'always evaluates to
true' warnings with gcc-4.2 and fix compilation with gcc-4.2.
Also don't leak the device string.
* ext/mpeg2enc/gstmpeg2enc.cc:
* ext/soundtouch/gstpitch.cc:
* gst/modplug/gstmodplug.cc:
Fix compilation with g++4.2 and -Wall -Werror (also needs plugin
define fix from core CVS). Fixes#462737.
Original commit message from CVS:
* ext/gio/gstgio.c: (gst_gio_get_supported_protocols):
Use GIO function to get a list of supported URI schemes instead of
hard coding something.
Original commit message from CVS:
* gst/rtpmanager/rtpsession.c: (rtp_session_next_timeout),
When reconsidering RTCP timeouts, set the next timeout against the last
report time instead of the current clock time so that we don't end up
reconsidering forever.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop):
Only peek at the tail element instead of popping it off, which allows
us to greatly simplify things when the tail element changes.
* gst/rtpmanager/gstrtpsession.c:
(gst_rtp_session_event_recv_rtp_sink):
* gst/rtpmanager/gstrtpssrcdemux.c:
(gst_rtp_ssrc_demux_sink_event):
Forward FLUSH events instead of leaking them.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew),
(calculate_skew), (rtp_jitter_buffer_insert):
* gst/rtpmanager/rtpjitterbuffer.h:
Remove the tail-changed callback in favour of a simple boolean when we
insert a buffer in the queue.
Add method to peek the tail of the buffer.
Original commit message from CVS:
Patch by: Gautier Portet <kassoulet at gmail dot com>
* gst/xingheader/gstxingmux.c:
The size of the Xing header is actually 417 as it's rounded to the
next smaller integer. Fixes#397759.
* gst/xingheader/gstxingmux.c: (xing_generate_header),
(xing_push_header):
Some random cleanup, add FIXMEs and TODOs and check if the newsegment
event to the beginning was successful before pushing the header again.
Original commit message from CVS:
Patch by: Wai-Ming Ho <webregbox at yahoo dot co dot uk>
* gst/mpegtsparse/mpegtspacketizer.c:
(mpegts_packetizer_stream_new):
Don't skip PAT with version number 0. Fixes#483400.
* gst/mpegtsparse/mpegtsparse.c: (mpegts_parse_apply_pat):
Make all values above 0 mark a referenced program as they can be
incremented and only 1 had marked a referenced program before, causing
actually referenced programs to be unreferenced.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_flush_start),
(gst_rtp_jitter_buffer_flush_stop),
(gst_rtp_jitter_buffer_change_state), (apply_offset),
(gst_rtp_jitter_buffer_loop):
Remove some old unused variables.
Don't add the latency to the skew corrected timestamp, latency is only
used to sync against the clock.
Improve debugging.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init),
(rtp_jitter_buffer_reset_skew), (calculate_skew):
* gst/rtpmanager/rtpjitterbuffer.h:
Handle case where server timestamp goes backwards or wildly jumps by
temporarily pausing the skew correction.
Improve debugging.
Original commit message from CVS:
Patch by: mutex at runbox dot com
* gst/mpegtsparse/mpegtspacketizer.c:
(mpegts_packetizer_parse_adaptation_field_control):
* gst/mpegtsparse/mpegtsparse.c: (mpegts_parse_base_init),
(mpegts_parse_init), (mpegts_parse_push):
* gst/mpegtsparse/mpegtsparse.h:
Remove useless src pad that only results in not linked errors,
fix a broken pointer dereference and make MAX_CONTINUITY constant
conform to the standard to stop outputting corrupted data.
Fixes#481276, #481279.
Original commit message from CVS:
* ext/gio/gstgiosink.c: (gst_gio_sink_base_init),
(gst_gio_sink_set_property), (gst_gio_sink_render):
* ext/gio/gstgiosrc.c: (gst_gio_src_base_init),
(gst_gio_src_set_property):
Some minor cleanup and allow setting the location only when the
element is not playing or paused.
Original commit message from CVS:
* configure.ac:
Update gio's pkg-config file name as currently in SVN.
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_set_location):
Remove special casing for a NULL query string. g_strjoin won't add
the separator if there's only one string.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (free_client):
Fix crasher in dispose.
* gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew):
Handle cases where input buffers have no timestamps so that no clock
skew can be calculated, in this case interpollate timestamps based on
rtp timestamp and assume a 0 clock skew.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c: (apply_latency),
(gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query):
Remove jitter correction code, it's now in the lower level object.
Use new -core method for doing a peer query.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init),
(calculate_skew), (rtp_jitter_buffer_insert):
* gst/rtpmanager/rtpjitterbuffer.h:
Move jitter correction to the lowlevel jitterbuffer.
Increase the max window size.
When filling the window, already start estimating the skew using a
parabolic weighting factor so that we have a much better startup
behaviour that gets more accurate with the more samples we have.
Increase the default weighting factor for the steady state to get
smoother timestamps.
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_set_proxy),
(gst_neonhttp_src_send_request_and_redirect):
Now that we require libneon >= 0.26 remove the neon 0.25 backward
compatibility stuff. Also fix the default location.
Original commit message from CVS:
* ext/xvid/gstxvidenc.c:
* ext/xvid/gstxvidenc.h:
Remove superfluous 'frame-encoded' signal (people can
use an upstream identity's 'handoff' signal or a pad
probe for this if they must know).
Original commit message from CVS:
2007-09-27 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): I got it wrong again, audio rate
was not detected correctly in all cases.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_dispose),
(gst_rtp_bin_finalize):
Fix cleanup crasher.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init),
(calculate_skew):
* gst/rtpmanager/rtpjitterbuffer.h:
Dynamically adjust the skew calculation window so that we calculate it
over a period of around 2 seconds.
Original commit message from CVS:
2007-09-26 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): codec_data is needed for every tag
not just the first one. (Fix a stupid bug i introduced without
testing)
Original commit message from CVS:
2007-09-26 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): Fix bit masks operations to be
sure we detect the codec_tags and sample rates correctly.
Fix raw audio caps generation.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
Update hierarchy.
* ext/gio/gstgiosink.h:
* ext/gio/gstgiosrc.h:
Mark private fields of the instance structs private.
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler dot de>
* configure.ac:
* ext/Makefile.am:
* ext/gio/Makefile.am:
* ext/gio/gstgio.c: (gst_gio_error), (gst_gio_seek),
(gst_gio_get_supported_protocols),
(gst_gio_uri_handler_get_type_sink),
(gst_gio_uri_handler_get_type_src),
(gst_gio_uri_handler_get_protocols), (gst_gio_uri_handler_get_uri),
(gst_gio_uri_handler_set_uri), (gst_gio_uri_handler_init),
(gst_gio_uri_handler_do_init), (plugin_init):
* ext/gio/gstgio.h:
* ext/gio/gstgiosink.c: (gst_gio_sink_base_init),
(gst_gio_sink_class_init), (gst_gio_sink_init),
(gst_gio_sink_finalize), (gst_gio_sink_set_property),
(gst_gio_sink_get_property), (gst_gio_sink_start),
(gst_gio_sink_stop), (gst_gio_sink_unlock),
(gst_gio_sink_unlock_stop), (gst_gio_sink_event),
(gst_gio_sink_render), (gst_gio_sink_query):
* ext/gio/gstgiosink.h:
* ext/gio/gstgiosrc.c: (gst_gio_src_base_init),
(gst_gio_src_class_init), (gst_gio_src_init),
(gst_gio_src_finalize), (gst_gio_src_set_property),
(gst_gio_src_get_property), (gst_gio_src_start),
(gst_gio_src_stop), (gst_gio_src_get_size),
(gst_gio_src_is_seekable), (gst_gio_src_unlock),
(gst_gio_src_unlock_stop), (gst_gio_src_check_get_range),
(gst_gio_src_create):
* ext/gio/gstgiosrc.h:
Add a GIO/GVFS plugin with source and sink elements. This will
only be enabled when --enable-experimental is given to configure
for now as the GIO API is not stable yet. Fixes#476916.
Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
Added offset-x, offset-y, width and height property
for selecting a region from the screen
Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
Minimum raw encoding is working now
* gst/librfb/rfbdecoder.c:
fix address while reading from stream
Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
raw encoding is working, but it looks like the
ffmpegcolorspace plugin can't handle high resolutions
Original commit message from CVS:
* ext/alsaspdif/alsaspdifsink.c:
* ext/timidity/gsttimidity.c:
* ext/timidity/gstwildmidi.c:
* gst/mpegvideoparse/mpegvideoparse.c:
Fix memory leaks. More to come.
* tests/check/Makefile.am:
* tests/check/generic/states.c:
Improved state change unit test.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_marshal_OBJECT__VOID),
(gst_app_sink_class_init), (gst_app_sink_init),
(gst_app_sink_dispose), (gst_app_sink_finalize),
(gst_app_sink_set_property), (gst_app_sink_get_property),
(gst_app_sink_flush_unlocked), (gst_app_sink_start),
(gst_app_sink_event), (gst_app_sink_getcaps),
(gst_app_sink_set_caps), (gst_app_sink_get_caps),
(gst_app_sink_is_eos), (gst_app_sink_pull_preroll),
(gst_app_sink_pull_buffer):
* gst-libs/gst/app/gstappsink.h:
Add properties, signals and actions to access the element even without
linking to the library.
Fix some method names and signatures.
Original commit message from CVS:
Patch by: Jonathan Matthew <jonathan at kaolin wh9 net>
* ext/faad/gstfaad.c: (gst_faad_chanpos_to_gst),
(gst_faad_srcgetcaps), (gst_faad_update_caps):
Don't set channel positions on regular mono and stereo cases.
Fixes#476370.
Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
It is now possible to connect to a vncserver.
there are still some issues with the ouput of
the screen. Looks like some lines are confused
Original commit message from CVS:
* gst/real/gstrealvideodec.c: (gst_real_video_dec_chain),
(open_library), (gst_real_video_dec_init),
(gst_real_video_dec_set_property),
(gst_real_video_dec_get_property), (gst_real_video_dec_class_init):
* gst/real/gstrealvideodec.h:
Don't generate an error for occasional decoding errors.
Add max-errors property.
Error out when we receive max-errors in a row. Fixes#478159.
Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
Add password property (write only)
* gst/librfb/rfbdecoder.c:
Read the reason on failure
Use the password property for authentication
* gst/librfb/rfbdecoder.h:
Add defines for version checking
Original commit message from CVS:
* ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_destroy),
(gst_dfbsurface_class_init):
When finalizing GstDfbSurface, a subclass of GstBuffer, correctly
chain up to the parent class to free everything, including caps.
Original commit message from CVS:
* gst/librfb/Makefile.am:
* gst/librfb/d3des.c:
* gst/librfb/d3des.h:
* gst/librfb/rfbdecoder.c:
* gst/librfb/vncauth.c:
* gst/librfb/vncauth.h:
VNC Authentication should be working now
temperaly with fake password 'testtest'
Original commit message from CVS:
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
Added some documentation about security handling
start implementing security handling for rfb 3.3
Original commit message from CVS:
* ChangeLog:
Add missing newline.
* gst/librfb/rfbdecoder.c:
Fix the build (missing stdlib.h).
* gst/spectrum/gstspectrum.c:
* gst/spectrum/gstspectrum.h:
Use basetransform segment so that it is correctly managed on flushes
and start/stop. Report message timestamp as stream time, which is what
an application can understand. (Yes these are adapted from wim recent
level element changes)
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found):
Link to the right pads regardless of which one was created first in the
ssrc demuxer.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop):
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp),
(gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_send_rtp):
* gst/rtpmanager/rtpsource.c: (calculate_jitter):
Improve debugging.
* gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc),
(gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_finalize),
(gst_rtp_ssrc_demux_sink_event),
(gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain),
(gst_rtp_ssrc_demux_rtcp_chain),
(gst_rtp_ssrc_demux_internal_links):
* gst/rtpmanager/gstrtpssrcdemux.h:
Fix race in creating the RTP and RTCP pads when a new SSRC is detected.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_set_property),
(gst_rtp_bin_get_property):
Use lock to protect variable.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_class_init),
(gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain),
(convert_rtptime_to_gsttime), (gst_rtp_jitter_buffer_loop):
Reconstruct GST timestamp from RTP timestamps based on measured clock
skew and sync offset.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init),
(rtp_jitter_buffer_set_tail_changed),
(rtp_jitter_buffer_set_clock_rate),
(rtp_jitter_buffer_get_clock_rate), (calculate_skew),
(rtp_jitter_buffer_insert), (rtp_jitter_buffer_peek):
* gst/rtpmanager/rtpjitterbuffer.h:
Measure clock skew.
Add callback to be notfied when a new packet was inserted at the tail.
* gst/rtpmanager/rtpsource.c: (rtp_source_init),
(calculate_jitter), (rtp_source_send_rtp):
* gst/rtpmanager/rtpsource.h:
Remove clock skew detection, it's move to the jitterbuffer now.
Original commit message from CVS:
Patch by: Daniel Charles <dcharles at ti dot com>
* ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_bandmode_get_type),
(gst_amrwbenc_set_property), (gst_amrwbenc_get_property),
(gst_amrwbenc_class_init), (gst_amrwbenc_chain):
* ext/amrwb/gstamrwbenc.h:
Add property to control bandmode. Fixes#477306.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (create_session):
Also set NTP base time on new sessions.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query),
(gst_rtp_jitter_buffer_set_property),
(gst_rtp_jitter_buffer_get_property):
Use the right lock to protect our variables.
Fix some comment.
* gst/rtpmanager/gstrtpsession.c:
(gst_rtp_session_getcaps_send_rtp),
(gst_rtp_session_chain_send_rtp), (create_send_rtp_sink):
Implement getcaps on the sender sinkpad so that payloaders can negotiate
the right SSRC.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (calc_ntp_ns_base),
(gst_rtp_bin_change_state), (new_payload_found), (create_send_rtp):
Calculate and configure the NTP base time so that we can generate better
NTP times in SR packets.
Set caps on new ghostpad.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_loop):
Clean debug statement.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init),
(gst_rtp_session_init), (gst_rtp_session_set_property),
(gst_rtp_session_get_property), (get_current_ntp_ns_time),
(rtcp_thread), (gst_rtp_session_event_recv_rtp_sink),
(gst_rtp_session_internal_links), (gst_rtp_session_chain_recv_rtp),
(gst_rtp_session_event_send_rtp_sink),
(gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink),
(create_send_rtp_sink):
* gst/rtpmanager/gstrtpsession.h:
Add ntp-ns-base property to convert running_time to NTP time.
Handle NEWSEGMENT events on send and recv RTP pads so that we can
calculate the running time and thus NTP time of the packets.
Simplify getting the current NTP time using the pipeline clock.
Implement internal links functions.
Use the buffer timestamp to calculate the NTP time instead of the clock.
* gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc),
(gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event),
(gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain),
(gst_rtp_ssrc_demux_internal_links),
(gst_rtp_ssrc_demux_src_query):
* gst/rtpmanager/gstrtpssrcdemux.h:
Implement internal links function.
Calculate the diff between different streams, this might be used later
to get the inter stream latency.
* gst/rtpmanager/rtpsession.c: (rtp_session_send_rtp):
Simple cleanup.
* gst/rtpmanager/rtpsource.c: (rtp_source_init),
(calculate_jitter), (rtp_source_send_rtp), (rtp_source_get_new_sr):
Make the clock skew window a little bigger.
Apply the clock skew to all buffers, not just one with a new timestamp.
Calculate and debug sender clock drift.
Use extended last timestamp to interpollate for SR reports.
Original commit message from CVS:
Patch by: Thomas Green <tom78999 gmail com>
* ext/neon/gstneonhttpsrc.c:
With libneon 2.6, we need to set the NE_SESSFLAG_ICYPROTO
flag if we want ICY streams to be handled too, otherwise
libneon will error out with a 'can't parse reponse' error.
Fixes#474696.
* tests/check/elements/neonhttpsrc.c:
Unit test for the above by Yours Truly.
Original commit message from CVS:
* configure.ac:
Use AC_TRY_COMPILE instead of AC_TRY_RUN for the faad and the
xvid configure checks, so they still work when cross-compiling.
Fixes#452009.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_start),
(gst_spectrum_transform_ip):
Use the correct parameter order for the memset calls.
Thanks to Christian Schaller for noticing.
Original commit message from CVS:
* configure.ac:
* gst/spectrum/Makefile.am:
* gst/spectrum/demo-audiotest.c: (draw_spectrum),
(message_handler), (main):
* gst/spectrum/demo-osssrc.c: (draw_spectrum), (message_handler):
* gst/spectrum/gstspectrum.c: (gst_spectrum_base_init),
(gst_spectrum_class_init), (gst_spectrum_init),
(gst_spectrum_dispose), (gst_spectrum_set_property),
(gst_spectrum_get_property), (gst_spectrum_start),
(gst_spectrum_setup), (gst_spectrum_message_new),
(gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
Port GstSpectrum to GstAudioFilter and libgstfft, add support
for int32, float and double, use floats for the message contents,
average all FFTs done in one interval for better results, use
a better windowing function, allow posting the phase in the message
and actually do an FFT with the requested number of bands instead
of interpolating.
* tests/check/elements/spectrum.c: (GST_START_TEST),
(spectrum_suite):
Improve the units tests by checking for a 11025Hz sine wave
and add unit tests for all 4 supported sample types.
Original commit message from CVS:
* gst/real/gstrealvideodec.c: (gst_real_video_dec_chain),
(gst_real_video_dec_setcaps):
Add some more debugging.
Don't set LONG for width/height in caps.
Set correct output buffer size when caps changed.
The custom message sent to the decoder should not include the format and
subformat. Fixes#471554.
Original commit message from CVS:
2007-09-03 Johan Dahlin <johan@gnome.org>
* gst/nsf/gstnsf.c: (gst_nsfdec_finalize), (start_play_tune):
* gst/nsf/gstnsf.h:
Add support for (very) basic tagging.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin-marshal.list:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_client),
(gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (create_stream),
(gst_rtp_bin_init), (caps_changed), (new_ssrc_pad_found),
(create_recv_rtp), (create_recv_rtcp), (create_send_rtp):
* gst/rtpmanager/gstrtpbin.h:
Updated example pipelines in docs.
Handle sync_rtcp buffers from the SSRC demuxer to perform lip-sync.
Set the default latency correctly.
Add some more points where we can get caps.
* 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_query),
(gst_rtp_jitter_buffer_set_property),
(gst_rtp_jitter_buffer_get_property):
Add ts-offset property to control timestamping.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init),
(gst_rtp_session_init), (gst_rtp_session_set_property),
(gst_rtp_session_get_property), (get_current_ntp_ns_time),
(rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_change_state),
(gst_rtp_session_send_rtcp), (gst_rtp_session_sync_rtcp),
(gst_rtp_session_cache_caps), (gst_rtp_session_clock_rate),
(gst_rtp_session_sink_setcaps), (gst_rtp_session_chain_recv_rtp),
(gst_rtp_session_event_send_rtp_sink),
(gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink),
(create_recv_rtcp_sink), (create_send_rtp_sink),
(create_send_rtcp_src):
Various cleanups.
Feed rtpsession manager with NTP time based on pipeline clock when
handling RTP packets and RTCP timeouts.
Perform all RTCP with the system clock.
Set caps on RTCP outgoing buffers.
* gst/rtpmanager/gstrtpssrcdemux.c: (find_demux_pad_for_ssrc),
(create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init),
(gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event),
(gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain),
(gst_rtp_ssrc_demux_rtcp_chain):
* gst/rtpmanager/gstrtpssrcdemux.h:
Also demux RTCP messages.
* gst/rtpmanager/rtpsession.c: (rtp_session_set_callbacks),
(update_arrival_stats), (rtp_session_process_rtp),
(rtp_session_process_rb), (rtp_session_process_sr),
(rtp_session_process_rr), (rtp_session_process_rtcp),
(rtp_session_send_rtp), (rtp_session_send_bye),
(session_start_rtcp), (session_report_blocks), (session_cleanup),
(rtp_session_on_timeout):
* gst/rtpmanager/rtpsession.h:
Remove the get_time callback, the GStreamer part will feed us with
enough timing information.
Split sync timing and RTCP timing information.
Factor out common RB handling for SR and RR.
Send out SR RTCP packets for lip-sync.
Move SR and RR packet info generation to the source.
* gst/rtpmanager/rtpsource.c: (rtp_source_init),
(rtp_source_update_caps), (get_clock_rate), (calculate_jitter),
(rtp_source_process_rtp), (rtp_source_send_rtp),
(rtp_source_process_sr), (rtp_source_process_rb),
(rtp_source_get_new_sr), (rtp_source_get_new_rb),
(rtp_source_get_last_sr):
* gst/rtpmanager/rtpsource.h:
* gst/rtpmanager/rtpstats.h:
Use caps on incomming buffers to get timing information when they are
there.
Calculate clock scew of the receiver compared to the sender and adjust
the rtp timestamps.
Calculate the round trip in sources.
Do SR and RR calculations in the source.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_flush_stop),
(gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop):
Use extended timestamp to release buffers from the jitterbuffer so that
we can handle the rtp wraparound correctly.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_loop):
Improve Comments.
* gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread),
(gst_rtp_session_change_state), (gst_rtp_session_parse_caps),
(gst_rtp_session_clock_rate), (gst_rtp_session_sink_setcaps),
(gst_rtp_session_event_send_rtp_sink), (create_recv_rtp_sink),
(create_send_rtp_sink):
Also parse the sink caps for clock-rate instead of only relying on the
result of the signal.
* gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp):
Make sure we fetch the clock rate for payloads we are sending out so
that we can use it for SR reports.
Original commit message from CVS:
* gst/switch/gstswitch.c (gst_switch_chain, gst_switch_set_property):
If all information is known at time of setting start-time
property, send new segments then.
Original commit message from CVS:
* gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread),
(gst_rtp_session_change_state),
(gst_rtp_session_event_send_rtp_sink):
* gst/rtpmanager/gstrtpsession.h:
Distribute synchronisation parameters to the session manager so that it
can generate correct SR packets for lip-sync.
* gst/rtpmanager/rtpsession.c: (rtp_session_set_base_time),
(rtp_session_set_timestamp_sync), (session_start_rtcp):
* gst/rtpmanager/rtpsession.h:
Add methods for setting sync parameters.
Set correct RTP time in SR packets using the sync params.
* gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp):
* gst/rtpmanager/rtpsource.h:
Record last RTP <-> GST timestamp so that we can use them to convert NTP
to RTP timestamps in SR packets.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_clear_pt_map):
Add some more advanced example pipelines.
* gst/rtpmanager/gstrtpsession.c: (rtcp_thread),
(stop_rtcp_thread), (gst_rtp_session_send_rtcp):
Add some debug and FIXME.
Release LOCK when performing session cleanup.
* gst/rtpmanager/rtpsession.c: (session_report_blocks):
Add some debug.
* gst/rtpmanager/rtpsource.c: (calculate_jitter),
(rtp_source_send_rtp):
Make sure we always send RTP packets with the session SSRC.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop),
(gst_rtp_jitter_buffer_query):
When synchronizing buffers, take peer latency into account.
Don't try to add our latency to invalid peer max latency values.
Original commit message from CVS:
2007-08-27 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvdemux.c: (gst_flv_demux_handle_seek_pull):
Make sure we initialize the seek result.
Original commit message from CVS:
* examples/switch/switcher.c (main):
* gst/switch/gstswitch.c (gst_switch_chain):
Make switch more reliable and also not lock up when
sink pad caps change.
Original commit message from CVS:
* gst/mpegtsparse/flutspatinfo.c:
* gst/mpegtsparse/flutspatinfo.h:
* gst/mpegtsparse/flutspmtinfo.c:
* gst/mpegtsparse/flutspmtinfo.h:
Update licences to reflect LGPL-ness of these files also.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.signals:
* gst/rtpmanager/gstrtpbin.c:
* gst/rtpmanager/gstrtpbin.h:
* gst/rtpmanager/gstrtpclient.c:
* gst/rtpmanager/gstrtpclient.h:
* gst/rtpmanager/gstrtpjitterbuffer.c:
* gst/rtpmanager/gstrtpjitterbuffer.h:
* gst/rtpmanager/gstrtpptdemux.c:
* gst/rtpmanager/gstrtpptdemux.h:
* gst/rtpmanager/gstrtpsession.c:
* gst/rtpmanager/gstrtpsession.h:
* gst/rtpmanager/gstrtpssrcdemux.c:
* gst/rtpmanager/gstrtpssrcdemux.h:
Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE
registers a GType that's different than the GstRTPFoo types that
farsight registers (luckily GType names are case sensitive). Should
finally fix#430664.
Original commit message from CVS:
* configure.ac:
* win32/common/config.h:
* win32/common/config.h.in:
Automatically generate win32/common/config.h via configure (this
ensures the win32 version of config.h is up-to-date when a release
is made, #433373). config.h.in file might need some more work.
Original commit message from CVS:
Patch by: Jonathan Matthew <jonathan at kaolin wh9 net>
* configure.ac:
* gst/festival/Makefile.am:
* gst/festival/gstfestival.c:
Port festival plugin to GStreamer-0.10 (#461377).
Original commit message from CVS:
2007-08-22 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_pull_tag):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item),
(gst_flv_parse_tag_script), (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): Handle pixel aspect ratio through
metadata tags like ASF does. Fluendo muxer supports this and
Flash players can support it as well this way.
Original commit message from CVS:
2007-08-22 Julien MOUTTE <julien@moutte.net>
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag):
* gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item),
(gst_flv_parse_tag_script), (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): Make sure we don't try filling up the
index if no times object was parsed. Fix the way we decide to
push
tags and emit no-more-pads. Fix some printf typing in debugging.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_chain),
(gst_rtp_jitter_buffer_set_property):
When drop-on-latency is set but we have no latency configured, just push
the buffer as fast as possible.
Fix typo in comment.
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.
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_class_init),
(gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property),
(gst_iir_equalizer_filter_inplace):
Rename "values" property to "band-values" and change type into a
GValueArray, so it's more easily bindable and the range of the
values passed in is defined and checked etc.; also do some
locking.
Original commit message from CVS:
2007-02-02 Andy Wingo <wingo@pobox.com>
* configure.ac:
* ext/Makefile.am
* ext/sndfile/Makefile.am:
* ext/sndfile/gstsf.c:
* ext/sndfile/gstsf.h:
* ext/sndfile/gstsfsink.c:
* ext/sndfile/gstsfsink.h: Port sfsink to 0.10. Works in pull or
push mode with interleaved float or int data.
Original commit message from CVS:
* ext/alsaspdif/alsaspdifsink.c: (plugin_init):
Set rank to NONE so that it doesn't get autoplugged by autoaudiosink
(which didn't happen previously because the klass string didn't
contain anything autoaudiosink was looking for).
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query),
(gst_wavpack_parse_handle_seek_event),
(gst_wavpack_parse_create_src_pad):
Fix a off by one that leads to the duration reported as one
sample less than it is
Original commit message from CVS:
* configure.ac:
Check for an Objective C compiler
* sys/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Port of osxvideo plugin to 0.10. Do NOT consider 100% stable !
Fixes#402470
Original commit message from CVS:
* gst/videocrop/gstvideocrop.c:
(gst_video_crop_get_image_details_from_caps),
(gst_video_crop_transform_packed_complex):
Fix cropping for packed 4:2:2 formats YUYV/YUY2 and UYVY.
* tests/icles/videocrop-test.c: (check_bus_for_errors),
(test_with_caps), (main):
Block streaming thread before changing filter caps while the
pipeline is running so that we don't get random not-negotiated
errors just because GStreamer can't handle that yet.
Original commit message from CVS:
* ext/ladspa/Makefile.am:
* ext/ladspa/gstladspa.c: (gst_ladspa_class_get_param_spec):
add GstController support to ladspa
Original commit message from CVS:
Patch by: Rosfran Borges <rosfran dot borges at idnt org br>
* ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_start),
(gst_mythtv_src_next_program_chain):
Remove sleep calls, they've been moved into the library now ...
(#354451).
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query):
Fix the SEEKING query. We can seek if we are in pull mode, not the
other way around. Also set the correct format in the seeking query and
handle the case where the headers are not read yet and we can't say
anything about our seeking capabilities.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
Fix spelling in 2 places: It's called Wavpack, not WavePack.
Original commit message from CVS:
* gst/multifile/gstmultifilesink.c:
(gst_multi_file_sink_class_init):
* gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_class_init):
* gst/mve/gstmvedemux.c: (gst_mve_video_create_buffer),
(gst_mve_video_palette), (gst_mve_video_code_map),
(gst_mve_audio_init), (gst_mve_audio_data), (gst_mve_timer_create),
(gst_mve_demux_chain):
* gst/mve/gstmvemux.c: (gst_mve_mux_push_chunk):
* gst/mve/mveaudioenc.c: (mve_compress_audio):
* gst/mve/mvevideodec16.c: (ipvideo_copy_block):
* gst/mve/mvevideodec8.c: (ipvideo_copy_block):
* gst/mve/mvevideoenc16.c: (mve_encode_frame16):
* gst/mve/mvevideoenc8.c: (mve_encode_frame8):
Use proper print statements.
Fixes build on mac os x.
<wingo> oo look at me my name is edward i'm hacking on macos wooo
Original commit message from CVS:
2007-01-13 Andy Wingo <wingo@pobox.com>
* gst/interleave/deinterleave.c (gst_deinterleave_add_new_pads):
Use fixed caps on src pads.
(gst_deinterleave_remove_pads): Remove src pads, not sink pads. I
seem to have reverse midas disease!
(gst_deinterleave_process): Proxy timestamps, offsets, durations,
and set caps on outgoing buffers. Fixes#395597, I think.
Original commit message from CVS:
2007-01-13 Andy Wingo <wingo@pobox.com>
* gst/interleave/interleave.c (gst_interleave_init): Init the
activation mode properly.
(gst_interleave_src_setcaps, gst_interleave_src_getcaps)
(gst_interleave_init): Set a setcaps and getcaps function on the
src pad, so that we can implement pull-mode negotiation.
(gst_interleave_sink_setcaps): Renamed from
gst_interleave_setcaps, as it only does the sink logic now.
Implement both for pull-mode and push-mode.
(gst_interleave_process): Set caps on our outgoing buffer.
(gst_interleave_src_activate_pull): Fix some more bogus casts.
What is up with this.
Original commit message from CVS:
* ext/mythtv/gstmythtvsrc.c: (do_read_request_response),
(gst_mythtv_src_create), (gst_mythtv_src_get_position),
(gst_mythtv_src_do_seek), (gst_mythtv_src_start),
(gst_mythtv_src_next_program_chain), (gst_mythtv_src_get_size),
(gst_mythtv_src_handle_event), (gst_mythtv_src_handle_query),
(gst_mythtv_src_change_state), (gst_mythtv_src_set_property),
(gst_mythtv_src_uri_get_type):
Clean up a bit, mostly the debug statements; fix deadlock in
_set_property() in the error cases; fix up query function.
Original commit message from CVS:
2007-01-12 Andy Wingo <wingo@pobox.com>
* ext/ladspa/gstsignalprocessor.c (gst_signal_processor_fixate)
(gst_signal_processor_ouija_caps, gst_signal_processor_prepare):
Remove fixate/ouija stuff, thankfully, due to the new
part-negotiation.txt pull-mode negotiation scheme.
(gst_signal_processor_setcaps_pull)
(gst_signal_processor_setcaps): Implement upstream set_caps pull
proxying for pull mode. Now this works: ladspa-sine-fcac !
audioconvert ! alsasink.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo@circular-chaos.org>
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type),
(gst_wavpack_enc_correction_mode_get_type),
(gst_wavpack_enc_joint_stereo_mode_get_type):
Minor clean-up: use enum values instead of hardcoded constants (#395536).
Original commit message from CVS:
* gst/mve/gstmvedemux.c: (gst_mve_demux_get_src_query_types),
(gst_mve_demux_handle_src_query), (gst_mve_demux_handle_src_event),
(gst_mve_add_stream):
Support SEEKING query (bad news now delivered properly!); add event
function to source pads to make sure seeks aren't propagated
upstream, even if they aren't handled.
Original commit message from CVS:
2007-01-07 Andy Wingo <wingo@pobox.com>
* configure.ac:
* gst/interleave/Makefile.am:
* gst/interleave/plugin.h:
* gst/interleave/plugin.c:
* gst/interleave/interleave.c:
* gst/interleave/deinterleave.c: New elements interleave and
deinterleave, implement channel interleaving and deinterleaving.
The interleaver can operate in pull or push mode but the
deinterleaver is more like a demuxer and can only operate in push
mode.
Original commit message from CVS:
2007-01-06 Andy Wingo <wingo@pobox.com>
* ext/ladspa/gstsignalprocessor.c
(gst_signal_processor_ouija_caps): Move around in the source
file...
(gst_signal_processor_prepare, gst_signal_processor_do_pulls):
Call ouija_caps in prepare() instead of do_pulls(), a bit earlier.
This allows us to have caps when we do the pad_alloc_buffer().
(gst_pad_alloc_buffer_and_set_caps): Use self->caps instead of the
pad caps, which might not be set yet.
Original commit message from CVS:
2007-01-06 Andy Wingo <wingo@pobox.com>
* ext/ladspa/gstsignalprocessor.c:
(gst_signal_processor_add_pad_from_template)
(gst_signal_processor_fixate): Add a fixate function, to assist in
pathological ladspa-sine-fcac ! fakesink can-activate-pull=true
cases.
(gst_signal_processor_prepare, gst_signal_processor_process): Add
nframes args so that getrange can tell ladspa how many frames to
process.
(gst_signal_processor_ouija_caps): setcaps needs to be called
before processing, which normally happens when chaining a buffer
to a pad. However in getrange mode with no sinks we need to check
explicitly for this condition, guess some caps to use, and use
those to setcaps(). Hence this mystical function.
(gst_signal_processor_do_pulls): Pull in bytes, not samples.
Divine the caps if necessary.
(gst_signal_processor_getrange): Interpret the length as bytes,
not samples.
(gst_signal_processor_chain): nframes=G_MAXUINT, will be limited
by incoming buffer sizes.
Original commit message from CVS:
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_finalize):
Don't call the RAFreeDecoder since it randomly causes segfaults.
* gst/real/gstrealaudiodec.h:
indent properly.
Original commit message from CVS:
Patch by: Lutz Mueller <lutz@topfrose.de>
* gst/real/Makefile.am:
* gst/real/gstreal.c: (plugin_init):
* gst/real/gstrealaudiodec.c: (gst_real_audio_dec_chain),
(gst_real_audio_dec_setcaps), (gst_real_audio_dec_init),
(gst_real_audio_dec_base_init), (gst_real_audio_dec_change_state),
(gst_real_audio_dec_finalize), (gst_real_audio_dec_set_property),
(gst_real_audio_dec_get_property), (gst_real_audio_dec_class_init):
* gst/real/gstrealaudiodec.h:
Added RealAudio wrapper elementfactory.
Modified structures so it can also work on x86_64 using the
adequate .so .
Original commit message from CVS:
* configure.ac:
* gst/qtdemux/Makefile.am:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_moov):
Check for zlib and if available pass it explicitly to the linker
when linking qtdemux. If not available (or --disable-external has
been specified!), disable the bits in qtdemux that use it. Fixes
build on MingW (#392856).
Original commit message from CVS:
* configure.ac:
Real video .so are now also available for x86_64, so we can build the
Real plugin on i386 AND x86_64.
* gst/real/Makefile.am:
* gst/real/gstreal.c: (plugin_init):
New plugin file for real .so wrapper plugins.
* gst/real/gstrealvideodec.c: (gst_real_video_dec_alloc_buffer),
(gst_real_video_dec_decode), (gst_real_video_dec_chain),
(gst_real_video_dec_activate_push), (gst_real_video_dec_setcaps),
(open_library), (close_library), (gst_real_video_dec_init),
(gst_real_video_dec_base_init), (gst_real_video_dec_finalize),
(gst_real_video_dec_set_property),
(gst_real_video_dec_get_property), (gst_real_video_dec_class_init):
* gst/real/gstrealvideodec.h:
Moved RealVideo element to separate file
Cleaned up code some more.
Make it work on x86_64.
Try several possible locations for .so
Separate opening/closing libraries in separate functions.
Original commit message from CVS:
* tests/icles/videocrop-test.c: (main):
Call g_thread_init() right at the beginning. Remove superfluous
gst_init() - we've already been inited via the GOption stuff.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directsound/Makefile.am:
* sys/directsound/gstdirectsoundsink.c:
(gst_directsoundsink_reset):
Add directsoundsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392638). Also simplify DirectDraw check a bit.
* tests/check/elements/.cvsignore:
Fix CVS ignore for neonhttpsrc test binary.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directdraw/Makefile.am:
Add directdrawsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392313).
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_center_rect), (gst_directdrawsink_show_frame),
(gst_directdrawsink_setup_ddraw),
(gst_directdrawsink_surface_create):
Comment out some unused things and fix some printf format issues in
order to avoid warnings when buildling with MingW (#392313).
Original commit message from CVS:
* tests/check/elements/videocrop.c: (GST_START_TEST),
(videocrop_test_cropping_init_context):
When we can't create an element needed for the test, print a message
detailing which element it actually is that's missing (#390673).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_post_progress),
(gst_qtdemux_chain):
Don't post BUFFERING messages in streaming mode if the stream
headers are behind the movie data; instead, post "progress" element
messages as a temporary solution. Apps might get confused and do
silly things to the pipeline state if they see buffering messages
from different sources and don't realize they come from different
sources (#387160).
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/ladspa/*:
Move LADPSA plugin from -good for the release, as it's not quite
ready to be enabled by default in the -good module yet.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_chain),
(gst_qtdemux_add_stream):
Don't output g_warning for an unsupported format, just send a
GST_ELEMENT_WARNING and don't add the pad.
Fix the case where it doesn't check for a NULL pad in streaming mode.
Fixes#387137
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Fix crash dereferencing NULL pointer if there's no stco atom.
Fixes#387122.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.h:
Use local copy of md5.h, as it disappeared in recent wavpack
installs.
Patch by: Sebastian Dröge <slomo at ubuntu dot com>
Fixes: #387076
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_query_types),
(gst_qtdemux_handle_src_query), (gst_qtdemux_handle_src_event):
We don't support seeking in streaming mode, so don't even try.
Implement seeking query so apps can query seekability properly
(see #365414). Fix duration query.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration),
(gst_qtdemux_handle_src_query), (qtdemux_parse_trak),
(qtdemux_audio_caps):
Add AMR-WB to the list of supported formats.
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_create),
(send_request_and_redirect):
Fix minor mem leak in redirect code.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/neonhttpsrc.c: (handoff_cb),
(GST_START_TEST), (neonhttpsrc_suite):
* tests/check/gst-plugins-bad.supp:
Add super-basic unit test for #384140.
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_create),
(send_request_and_redirect):
Set offset on buffers pushed out (id3demux gets confused if the
first buffer does not have an offset of 0). Fixes#384140.
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_create), (send_request_and_redirect),
(gst_neonhttp_src_start), (oom_callback):
Minor clean-ups; remove newlines at end of debug statements.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_tree):
Fix non-working redirects from inetfilm.com (handle 'alis' reference
data type as well). Fixes#378613.
Original commit message from CVS:
Patch by: Jonathan Matthew <jonathan at kaolin wh9 net>).
* gst/modplug/gstmodplug.cc:
Fix modplug duration query. Fixes#384294.
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler de>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration),
(gst_qtdemux_handle_src_query), (qtdemux_parse_trak),
(qtdemux_audio_caps):
Fix caps for 24 bit raw PCM audio (2).
Fixes#383471.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration),
(gst_qtdemux_handle_src_query), (qtdemux_parse_trak),
(qtdemux_video_caps):
Handle more H263 variants.
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler de>
* gst/replaygain/gstrganalysis.c: (gst_rg_analysis_event):
Call the base class handler. Fixes#380610.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration),
(gst_qtdemux_handle_src_query), (qtdemux_parse_trak):
Remove some asserts and replace them with a proper error
message. Fixes#379261.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_src_event), (theora_handle_data_packet),
(theora_dec_chain):
Send events on the right pads, since they don't work very well if
you send them in the wrong direction.
Original commit message from CVS:
2006-11-17 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/dvb/gstdvbsrc.c: (gst_dvbsrc_tune):
Actually set the TONE parameter for DVB-S when we should.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo@circular-chaos.org>
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset),
(gst_wavpack_dec_init), (gst_wavpack_dec_change_state):
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init),
(gst_wavpack_enc_class_init), (gst_wavpack_enc_reset),
(gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_change_state):
* ext/wavpack/gstwavpackparse.c:
Some small clean-ups: use enums instead of hard-coded numbers,
const-ify element details, re-factor some code into _reset()
functions (#352605).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration),
(gst_qtdemux_handle_src_query), (qtdemux_parse_trak):
Don't parse extra sample params for raw pcm. Fixes#374914.
Original commit message from CVS:
* configure.ac:
* gst/videoparse/Makefile.am:
* gst/videoparse/gstvideoparse.c:
A little pluggy to make sense out of the random chunks we get
from multifilesrc.
Original commit message from CVS:
* gst/multifilesink/Makefile.am:
* gst/multifilesink/gstmultifilesink.c:
* gst/multifilesink/gstmultifilesink.h:
* gst/multifilesink/multifilesink.vcproj:
Remove the old one.
Original commit message from CVS:
2006-11-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/dvb/gstdvbsrc.c: (gst_dvbsrc_set_property)
(gst_dvbsrc_create), (gst_dvbsrc_output_frontend_stats),
(gst_dvbsrc_tune), (gst_dvbsrc_set_pes_filters):
Rename set_pes_filter to set_pes_filters for consistency.
Do run-time pid filtering.
Original commit message from CVS:
2006-11-08 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/dvb/gstdvbsrc.c: (read_device):
Do not call output_frontend_stats from a method that does not
have the gstdvbsrc object.
This fixes the build, sorry guys!
Original commit message from CVS:
2006-11-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/dvb/gstdvbsrc.c: (read_device), (gst_dvbsrc_create),
(gst_dvbsrc_output_frontend_stats), (gst_dvbsrc_tune),
(gst_dvbsrc_set_pes_filter):
* sys/dvb/gstdvbsrc.h:
Force PAT to always be in the filter.
Try to continue reading after failing 10 times.
Original commit message from CVS:
* po/POTFILES.in:
add dvbsrc
* sys/dvb/gstdvbsrc.c: (gst_dvbsrc_class_init), (gst_dvbsrc_init),
(gst_dvbsrc_set_property), (gst_dvbsrc_get_property),
(gst_dvbsrc_open_frontend), (gst_dvbsrc_open_dvr),
(gst_dvbsrc_finalize), (read_device), (gst_dvbsrc_create),
(gst_dvbsrc_start), (gst_dvbsrc_frontend_status),
(gst_dvbsrc_tune), (gst_dvbsrc_unset_pes_filters),
(gst_dvbsrc_set_pes_filter):
* sys/dvb/gstdvbsrc.h:
adapter-prefix is a terrible name for a device, so replace it.
strerror should be used immediately after the syscall related to it.
Actually throw a reasonable GST_ELEMENT_ERROR if we fail to open
(pretty easy to trigger by opening the same device twice).
Use _OBJECT macros where it makes sense.
This element is going to need some work before it moves.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* configure.ac:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type),
(gst_wavpack_enc_correction_mode_get_type),
(gst_wavpack_enc_joint_stereo_mode_get_type),
(gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config):
Fix enum nicks; only emit no-more-pads once; add support for very
fast encoding mode in upcoming 4.40.0 release (#369539).
Original commit message from CVS:
Patch by: Sergey Scobich <sergey dot scobich at gmail com>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_window_thread),
(gst_directdrawsink_create_default_window):
* sys/directdraw/gstdirectdrawsink.h:
* sys/directsound/gstdirectsoundsink.c:
Wait until the window is created before using it; guard unistd.h
includes with HAVE_UNISTD_H. (#366523)
* win32/vs8/libgstdirectdraw.vcproj:
* win32/vs8/libgstdirectsound.vcproj:
Update project files.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration),
(gst_qtdemux_handle_src_query), (qtdemux_parse_tree),
(qtdemux_parse_trak):
Handle unbounded length streams a bit better. Fixes#367696.
Original commit message from CVS:
* ext/dts/gstdtsdec.c: (gst_dtsdec_handle_frame):
Fix flow handling and buffer refcounting (gst_pad_push() takes
ownership of the buffer passed to it, the buffer does not have
to be unreffed no matter what flow value gst_pad_push() returns).
Original commit message from CVS:
* configure.ac:
* gst/multifilesink/Makefile.am:
* gst/multifilesink/gstmultifilesink.c:
* gst/multifilesink/gstmultifilesink.h:
I copied over filesink a while ago and modified it to work
as multifilesink. Might as well check it in. This could
use some work before being declared useful.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_set_wp_config):
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_create_src_pad):
* gst/nuvdemux/gstnuvdemux.c: (gst_nuv_demux_create_pads):
* tests/check/elements/wavpackparse.c: (wavpackparse_found_pad):
Activate pads before adding them to running element.
Original commit message from CVS:
Patch by: Josep Torra Valles <josep at fluendo com>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(next_entry_size), (qtdemux_inflate), (qtdemux_parse_moov),
(qtdemux_parse_tree), (qtdemux_parse_trak), (qtdemux_tag_add_str),
(qtdemux_tag_add_num), (qtdemux_tag_add_date),
(qtdemux_tag_add_gnre):
Make compile with Forte compiler, mostly don't do pointer arithmetic
with void pointers (#362626).
Original commit message from CVS:
Patch by: Josep Torra Valles <josep at fluendo com>
* gst/nsf/fds_snd.c:
* gst/nsf/mmc5_snd.c:
* gst/nsf/nsf.c:
* gst/nsf/vrc7_snd.c:
* gst/nsf/vrcvisnd.c:
Fix some things the Forte compiler warns about (#362626).
Original commit message from CVS:
* configure.ac:
* gst/deinterlace/Makefile.am:
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_base_init),
(gst_deinterlace_class_init), (gst_deinterlace_init),
(gst_deinterlace_stop), (gst_deinterlace_transform_caps),
(gst_deinterlace_set_caps), (gst_deinterlace_transform_ip),
(gst_deinterlace_set_property), (gst_deinterlace_get_property):
* gst/deinterlace/gstdeinterlace.h:
Port simple deinterlacer from 0.8. Use at your own risk, don't blame
me for anything it does or does not do to your precious pictures.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (extract_initial_length_and_fourcc),
(gst_qtdemux_loop_state_header):
Printf format fixes.
* sys/dvb/gstdvbsrc.c:
Use "_stdint.h".
Original commit message from CVS:
2006-10-10 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/dvb/Makefile.am:
* sys/dvb/dvb-api/Makefile.am:
* sys/dvb/dvb-api/audio.h:
* sys/dvb/dvb-api/ca.h:
* sys/dvb/dvb-api/dmx.h:
* sys/dvb/dvb-api/frontend.h:
* sys/dvb/dvb-api/net.h:
* sys/dvb/dvb-api/osd.h:
* sys/dvb/dvb-api/version.h:
* sys/dvb/dvb-api/video.h:
Remove these files, not needed use system files.
* sys/dvb/gstdvbsrc.c: (gst_dvbsrc_set_property),
(gst_dvbsrc_create), (gst_dvbsrc_output_frontend_stats),
(gst_dvbsrc_tune):
Fix warnings, uint16_t etc. is in stdint.h.
Use system includes not our local ones.
Original commit message from CVS:
2006-10-10 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* configure.ac:
* sys/Makefile.am:
Add dvb detection and allow dvbsrc to be built.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_chain),
(gst_faad_close_decoder):
Some cleanups.
Added some more debugging.
Don't ever ignore unlinked, we're not a demuxer.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream):
Activate pad before adding it to the element.
Original commit message from CVS:
* ext/theora/theoradec.c: (gst_theoradec_reset),
(theora_get_query_types), (theora_dec_src_query),
(theora_dec_src_event), (theora_dec_sink_event),
(theora_handle_comment_packet), (theora_handle_type_packet),
(theora_handle_header_packet), (clip_buffer), (theora_dec_push),
(theora_handle_422_image), (theora_handle_420_image),
(theora_handle_data_packet), (theora_dec_chain),
(theora_dec_change_state):
* ext/theora/theoradec.h:
Port lots of changes from theoradec to theoraexpdec.
This catches this plugin up to theoradec. Note that duplicate frames
are broken in theoradec at the moment.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_init),
(gst_spectrum_transform_ip):
Removed cruft code that was just commented out. Removed some obsolete
debug logs statements.
Original commit message from CVS:
* tests/icles/.cvsignore:
* tests/icles/Makefile.am:
* tests/icles/videocrop-test.c: (quit_mainloop), (tick_cb),
(test_with_caps), (video_crop_get_test_caps), (main):
Visual test for videocrop, shows that packed yuv doesn't work right
yet. --with-ffmpegcolorspace option doesn't work yet for unknown
reasons (another basetransform issue?)
Original commit message from CVS:
* sys/v4l2/gstv4l2object.c:
(gst_v4l2_object_install_properties_helper):
comment out the properties that are already part of the tuner
interface.
Original commit message from CVS:
* ext/xvid/gstxvid.c: (plugin_init):
Set rank of xviddec to NONE until someone fixes it (too many crasher
bug reports against totem, people should use gst-ffmpeg).
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_all_caps),
(gst_v4l2src_get_caps):
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
Framerate can be 0/1 too.
Init framerate to 0/1 before querying it so that we can detect
devices that don't know about a framerate.
Add some more debugging info.
Original commit message from CVS:
* ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init),
(gst_cdaudio_init), (gst_cdaudio_set_property),
(gst_cdaudio_get_property), (gst_cdaudio_change_state),
(gst_cdaudio_send_event), (gst_cdaudio_get_query_types),
(gst_cdaudio_query), (cdaudio_uri_set_uri):
Port to 0.10.
Original commit message from CVS:
* configure.ac:
Up requirements to -base CVS and core CVS (the format for the
video orientation interface used by v4l2src and the latter
since that's what -base CVS requires).
Original commit message from CVS:
* ext/directfb/dfbvideosink.c: (plugin_init):
Lower rank from SECONDARY to MARGINAL. Plugins in -bad that might
be autoplugged shouldn't trump plugins in -base, -good or -ugly
(in this case ximagesink).
* sys/glsink/glimagesink.c: (plugin_init):
Set rank to NONE to prevent it from being autoplugged until
errors are handled properly (see #357212).
Original commit message from CVS:
Reverted previous commit (2006-09-19 - Allow internal codes from last.fm). As dicussed on #gstreamer it should be done in separete element.
Original commit message from CVS:
* ext/faac/gstfaac.c: (gst_faac_configure_source_pad),
(gst_faac_chain):
Add decoder specific info on the caps.
Some cleanups here and there.
Original commit message from CVS:
* ext/gsm/gstgsmdec.c: (gst_gsmdec_init),
(gst_gsmdec_sink_setcaps), (gst_gsmdec_sink_event),
(gst_gsmdec_chain):
* ext/gsm/gstgsmdec.h:
Handle WAV49 variant (GSM in WAV).
Some small cleanups.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init),
(gst_spectrum_start), (gst_spectrum_stop), (gst_spectrum_event):
Implements stop() to clear the adapter and event() to clear the
adapter on FLUSH_STOP and EOS.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_init),
(gst_spectrum_set_property):
* gst/spectrum/gstspectrum.h:
Fix type mixup in spectrum->interval (gdouble<->guint64). Spotted by
René Stadler
Original commit message from CVS:
* gst/spectrum/demo-osssrc.c: (draw_spectrum), (main):
Use more defines
* gst/spectrum/gstspectrum.c: (gst_spectrum_init),
(gst_spectrum_dispose), (gst_spectrum_set_caps),
(gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
Apply some of the spectrum cleanup changes suggested in #348085.
Original commit message from CVS:
* configure.ac:
Bump requirements of -base (videocrop test case needs this).
* gst/videocrop/gstvideocrop.c:
Document sloppy handling of subsampled chroma planes if
left/top cropping is an odd number.
* tests/check/elements/videocrop.c: (handoff_cb),
(videocrop_test_cropping_init_context),
(videocrop_test_cropping_deinit_context),
(videocrop_test_cropping), (check_1x1_buffer), (GST_START_TEST),
(videocrop_suite), (main):
Add another unit test that crops the input to 1x1 (and checks
that that pixel has the expected values in a number of formats).
Original commit message from CVS:
* gst/videocrop/Makefile.am:
* gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init),
(gst_video_crop_transform_packed),
(gst_video_crop_transform_planar):
Some quick tests indicate that it doesn't make a great deal
of sense to use liboil here, at least not for the memcpy()s
we do, so remove liboil usage until there is clear evidence
it actually makes a positive difference somewhere.
Original commit message from CVS:
* tests/check/elements/videocrop.c: (handoff_cb),
(buffer_probe_cb), (test_caps_transform), (test_passthrough),
(notgst_value_list_get_nth_int), (videocrop_suite):
More tests: check passthrough mode and caps transform in
both directions with fixed values, ranges and lists.
Original commit message from CVS:
* configure.ac:
* gst/videocrop/Makefile.am:
* gst/videocrop/gstvideocrop.c: (gst_video_crop_base_init),
(gst_video_crop_class_init), (gst_video_crop_init),
(gst_video_crop_get_image_details_from_caps),
(gst_video_crop_get_unit_size), (gst_video_crop_transform_packed),
(gst_video_crop_transform_planar), (gst_video_crop_transform),
(gst_video_crop_transform_dimension),
(gst_video_crop_transform_dimension_value),
(gst_video_crop_transform_caps), (gst_video_crop_set_caps),
(gst_video_crop_set_property), (gst_video_crop_get_property),
(plugin_init):
Port/rewrite videocrop from scratch for GStreamer-0.10, and make
it support all formats videoscale supports (#345653).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
(gst_qtdemux_do_seek):
Reset each streams last_flow to GST_FLOW_OK.
(gst_qtdemux_activate_segment):
Removing mystic modifications for good.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment),
(qtdemux_parse_tree):
put back 'segment start<=stop' change that was mystically reverted by
the last commit
Original commit message from CVS:
Patch by: Andrew Andkjar <enki at goodship net>
* ext/sdl/sdlaudiosink.c: (gst_sdlaudio_sink_close):
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_supported),
(gst_sdlvideosink_deinitsdl):
Only de-init the subsystem we previously initialised. Avoids
borkage when both sdlvideosink and sdlaudiosink are used
at the same time and one is shut down.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment),
(gst_qtdemux_add_stream), (qtdemux_parse_trak),
(qtdemux_video_caps):
Make sure segment start<=stop in weird quicktime files.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_post_tags),
(gst_wavpack_dec_chain):
Post audio codec and average bitrate tags on bus (#344472).
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init),
(gst_wavpack_parse_src_query):
Forward queries in other formats (BYTE format in particular)
upstream; add Sebastian to authors.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_push_block):
Fix mem leak, send newsegment event on correction pad
as well (#352476).
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
Restore original author (on Sebastian's request).
* tests/check/Makefile.am:
* tests/check/gst-plugins-bad.supp:
Add (so far empty) suppression file for -bad. Remove
wavpackenc test from VALGRIND_TO_FIX now that the leak
is fixed.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse),
(qtdemux_node_dump_foreach), (qtdemux_parse_trak),
(qtdemux_video_caps), (qtdemux_audio_caps):
Some more constification.
Fix some paletted data formats again.
Fix ulaw/alaw in qt.
Set correct caps for raw RGB.
Add support for yuv2, which is like Yuv2.
Add support for raw audio with the NONE fourcc, which is like raw.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_init),
(gst_wavpack_enc_finalize), (gst_wavpack_enc_sink_set_caps),
(gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_format_samples),
(gst_wavpack_enc_push_block), (gst_wavpack_enc_chain),
(gst_wavpack_enc_rewrite_first_block),
(gst_wavpack_enc_sink_event), (gst_wavpack_enc_change_state),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_src_query), (gst_wavpack_parse_src_event),
(gst_wavpack_parse_init), (gst_wavpack_parse_get_upstream_length),
(gst_wavpack_parse_loop):
More clean-ups: use shorter variable names to make code easier to
read; prefix structures we define with 'Gst' to make it clearer
where they come from.
Original commit message from CVS:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_init),
(gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_push_block),
(gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block),
(gst_wavpack_enc_sink_event):
Fix caps set on buffers and template caps (output is framed)
and make them match (#351663); use GST_WARNING_OBJECT instead of
GST_ELEMENT_WARNING; simplify push_block(); do some small
clean-ups here and there; fix memleak (#351663).
Original commit message from CVS:
Based on patch by: Sebastian Dröge <slomo at circular-chaos.org>
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_sink_event),
(gst_wavpack_parse_get_upstream_length),
(gst_wavpack_parse_find_marker), (gst_wavpack_parse_resync_loop),
(gst_wavpack_parse_loop), (gst_wavpack_parse_resync_adapter):
Fix resyncing in push mode not stopping re-syncing at embedded
zeroes; skip garbage between frames in pull mode as well if
necessary; use gst_pad_query_peer_duration(); push EOS and
NEWSEGMENT event in right direction (#351659).
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init):
* ext/wavpack/gstwavpackparse.c:
(gst_wavpack_parse_resync_adapter), (gst_wavpack_parse_chain):
In push mode, re-sync to next wavpack header if sync is lost
(#351557). Also use hyphens instead of underscores in
GObject property names.
Original commit message from CVS:
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_class_init),
(gst_wavpack_parse_reset), (gst_wavpack_parse_get_src_query_types),
(gst_wavpack_parse_src_query),
(gst_wavpack_parse_handle_seek_event),
(gst_wavpack_parse_sink_event), (gst_wavpack_parse_init),
(gst_wavpack_parse_create_src_pad),
(gst_wavpack_parse_push_buffer), (gst_wavpack_parse_loop),
(gst_wavpack_parse_chain), (gst_wavpack_parse_sink_activate),
(gst_wavpack_parse_sink_activate_pull):
* ext/wavpack/gstwavpackparse.h:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
Make wavpackparse also work in push-mode (not seekable yet though);
some small clean-ups along the way; add support for SEEKING query
and query types function. (#351495).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_redirects_sort_func),
(qtdemux_process_redirects), (qtdemux_parse_tree):
Extract all references/redirections if there is more
than one and sort them; also extract minimum required
bitrate information if available. (#350399)
Original commit message from CVS:
Patch by: Michal Benes <michal.benes at itonis tv>
* ext/faac/gstfaac.c: (gst_faac_configure_source_pad):
Bitrate in the faac structure is per output channel,
not total bitrate (#350741).
Original commit message from CVS:
* tests/check/elements/gdpdepay.c: (gdpdepay_suite):
I forgot to include the file containing the #define :)
Now includes "config.h"
Original commit message from CVS:
2006-08-04 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Fix event parsing by gdpdepay. Fixes#349916.
Original commit message from CVS:
2006-07-31 Julien MOUTTE <julien@moutte.net>
* ext/directfb/dfbvideosink.c: (gst_dfbvideosink_change_state),
(gst_dfbvideosink_buffer_alloc): Post an error message.
Original commit message from CVS:
2006-07-31 Julien MOUTTE <julien@moutte.net>
* ext/directfb/dfbvideosink.c: (gst_dfbvideosink_change_state),
(gst_dfbvideosink_buffer_alloc): Don't try allocating if we are
not
setup yet. Fail changing state if setup fails.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init),
(gst_gdp_depay_sink_event), (gst_gdp_depay_chain):
Consume all events except EOS because we generate events from
the gdp payload instead. Fixes#349204
Original commit message from CVS:
* ext/xvid/gstxviddec.c: (gst_xviddec_init), (gst_xviddec_reset),
(gst_xviddec_unset), (gst_xviddec_handle_sink_event),
(gst_xviddec_setup), (gst_xviddec_negotiate), (gst_xviddec_chain),
(gst_xviddec_flush_buffers), (gst_xviddec_src_getcaps),
(gst_xviddec_setcaps), (gst_xviddec_change_state):
* ext/xvid/gstxviddec.h:
Clean-ups and code reflows. Pass return value from
gst_pad_alloc_buffer() upstream among other things. Also check
for NULL GValue before using GST_VALUE_TYPE macro (#348976).
Mass rename of xviddec -> dec variable for better
code readability.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init):
proxying get/set caps is the wrong thing to do, since we really
do change caps quite fundamentally
* tests/check/elements/gdpdepay.c:
* tests/check/elements/gdppay.c:
remove declaration of buffers, it's already done in gstcheck.h
Original commit message from CVS:
* sys/directsound/gstdirectsoundsink.h:
* sys/directsound/gstdirectsoundsink.c:
Add an attenuation property that will directly attenuate the
directsound buffer.
Change the size of the directsound secondary buffer to a half second.
Add more debug logs.
Add a lock to protect dsound buffer write access.
Fix a bad implementation of reset.
* sys/directsound/gstdirectdrawsink.c:
* sys/directsound/gstdirectdrawsink.h:
Add a keep_aspect_ratio property.
Do not use overlay if not supported.
Add more debug logs.
Remove overwrite of WM_ERASEBKGND message handling. It was not
redrawing border when keep_aspect_ratio was enabled.
* win32/common/config.h:
update version waiting an auto-generated config.h
Original commit message from CVS:
Patch by: Martin Szulecki
* sys/v4l2/gstv4l2object.c: (gst_v4l2_object_get_property_helper):
If "device-name" is requested and the device is not
open, try to temporarily open it to obtain this
information (#342494).
Original commit message from CVS:
* gst/nsf/nsf.c: (nsf_load):
Really fix compilation. Apparently it's not enough to
just check the return value for errors, but we need to
check for short reads as well (now if only we handled
them too ...). Fixes#347935.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
Fix caps after previous change to byte order endianness.
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset),
(gst_wavpack_parse_sink_event), (gst_wavpack_parse_init),
(gst_wavpack_parse_loop):
* ext/wavpack/gstwavpackparse.h:
Queue incoming events if there's no source pad yet and
send them downstream later when the pad is there.
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_init),
(gst_wavpack_dec_format_samples),
(gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain),
(gst_wavpack_dec_change_state):
* ext/wavpack/gstwavpackdec.h:
Output audio in native byte order (which is also how we get
samples from wavpack); output samples with 21-24 bit depth
with 32 bit width (makes things easier for us).
Original commit message from CVS:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init),
(gst_wavpack_dec_class_init), (gst_wavpack_dec_init),
(gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples),
(gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain),
(gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state):
* ext/wavpack/gstwavpackdec.h:
More clean-ups: remove most of the disfunctional correction
pad stuff for now, if it ever gets implemented a lot of stuff
will have to be rewritten anyway; redo chain function, move
errors to end, error out instead of g_assert()ing. Also rename
overly long variable 'wavpackdec' to just 'dec'; miscellaneous
other small stuff.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* configure.ac:
Check for wavpack version and define WAVPACK_OLD_API if
necessary.
* ext/wavpack/Makefile.am:
* ext/wavpack/gstwavpackcommon.c: (gst_wavpack_read_header),
(gst_wavpack_read_metadata):
* ext/wavpack/gstwavpackcommon.h:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init),
(gst_wavpack_dec_class_init), (gst_wavpack_dec_init),
(gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples),
(gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain),
(gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state),
(gst_wavpack_dec_request_new_pad), (gst_wavpack_dec_plugin_init):
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init),
(gst_wavpack_enc_init), (gst_wavpack_enc_finalize),
(gst_wavpack_enc_set_wp_config):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init),
(gst_wavpack_parse_finalize), (gst_wavpack_parse_class_init),
(gst_wavpack_parse_index_get_entry_from_sample),
(gst_wavpack_parse_scan_to_find_sample),
(gst_wavpack_parse_handle_seek_event),
(gst_wavpack_parse_create_src_pad):
* ext/wavpack/gstwavpackstreamreader.c:
* ext/wavpack/gstwavpackstreamreader.h:
Port to new/official wavpack API, don't use API that was exported
in wavpack header files and in the lib but meant to be private, at
least not for recent wavpack versions; misc. 'cleanups' (#347443).
Original commit message from CVS:
2006-07-17 Thomas Vander Stichele <thomas at apestaart dot org>
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
remove parent_class setting, BOILERPLATE does this
(gst_gdp_pay_reset_streamheader):
fix typo in comment
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek),
(gst_qtdemux_prepare_current_sample),
(gst_qtdemux_loop_state_movie):
Store duration in uint64 too instead of clipping.
When we do a keyframe seek and the requested time is at the
keyframe, don't seek back to the beginning of the keyframe.
Fixes#347439.
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:
add more plugins and elements to docs
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
fix segfaults due to wrong g_free
add example
* gst/gdp/gstgdppay.c:
add example
Original commit message from CVS:
Patch by: Lutz Mueller <lutz at topfrose dot de>
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_init), (gst_neonhttp_src_finalize),
(request_dispatch), (gst_neonhttp_src_create),
(gst_neonhttp_src_start), (gst_neonhttp_src_get_size),
(gst_neonhttp_src_stop), (set_proxy), (set_uri),
(gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property),
(gst_neonhttp_src_uri_set_uri), (size_header_handler):
* ext/neon/gstneonhttpsrc.h:
Remove unlock function. start/stop will do everything needed
Removed code that was never called.
Use gst_pad_alloc_buffer. Don't send EOS - parent class does that for us.
Do not escape path. Fixes#346723.
Additional code cleanups.
Original commit message from CVS:
* configure.ac:
Fix check so that future libneon API changes won't break the build.
* ext/neon/gstneonhttpsrc.c:
Fix build with libneon-0.26.x (#345182).
Original commit message from CVS:
* gst/spectrum/demo-audiotest.c: (on_window_destroy),
(draw_spectrum), (message_handler), (main):
* gst/spectrum/demo-osssrc.c: (on_window_destroy), (draw_spectrum),
(message_handler), (main):
port to use message to get results, cleanly exit when closing the window
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init),
(gst_spectrum_init), (gst_spectrum_dispose),
(gst_spectrum_set_property), (gst_spectrum_get_property),
(gst_spectrum_set_caps), (gst_spectrum_start),
(gst_spectrum_message_new), (gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
port to derive from basetransform and send results via messages
(like level element)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek),
(gst_qtdemux_combine_flows), (gst_qtdemux_loop_state_movie),
(gst_qtdemux_loop), (gst_qtdemux_chain), (qtdemux_parse_trak):
Combine return values from src pad pushes.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header),
(gst_qtdemux_prepare_current_sample), (gst_qtdemux_advance_sample),
(gst_qtdemux_add_stream):
Don't crash on files with 0 samples, EOS immediatly instead.
Fixes#344944.
Original commit message from CVS:
Patch by: Wouter Paesen <wouter at kangaroot net>
* ext/soundtouch/Makefile.am:
* ext/soundtouch/gstpitch.cc:
Make pitch element controllable via GstController interface
(#344821).
* configure.ac:
Up core requirements to 0.10.8.1/CVS because earlier
GstControllers can't handle float properties correctly.
Check for GstController CFLAGS and LIBS.
* tests/icles/Makefile.am:
* tests/icles/pitch-test.c: (main):
Add small test program for the above (welcome to the 80s!).
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos org>
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init),
(gst_wavpack_enc_class_init), (gst_wavpack_enc_set_wp_config),
(gst_wavpack_enc_chain), (gst_wavpack_enc_sink_event),
(gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property):
* ext/wavpack/gstwavpackenc.h:
Use bitrate property solely for bitrates and add new
bits-per-sample property for the other stuff. Set duration
to 'unknown' in initial header and resend header with proper
duration on EOS; update Sebastian's e-mail address.
Original commit message from CVS:
* ext/libmms/gstmms.c: (gst_mms_create):
Set caps on outgoing buffers.
* sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_init):
Comment out unused global instance variable.
Original commit message from CVS:
* configure.ac:
Check for X before using X_CFLAGS in the check for opengl (#343866).
* ext/musepack/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/speed/Makefile.am:
Add missing GST_LIBS, fixes build on cygwin (#343866).
Original commit message from CVS:
* configure.ac:
enable building of GDP elements
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_buffer_from_caps),
(gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_sink_event),
(gst_gdp_pay_set_property), (gst_gdp_pay_get_property),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
add version 1.0
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_buffer_from_caps),
(gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_set_property),
(gst_gdp_pay_get_property):
add crc-header and crc-payload properties
don't error out on some things that are recoverable
* tests/check/elements/gdppay.c: (GST_START_TEST), (gdppay_suite):
add test for crc
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_class_init), (gst_faad_init),
(gst_faad_dispose), (gst_faad_sink_event), (clip_outgoing_buffer),
(gst_faad_chain), (gst_faad_change_state):
Added GstSegment to control segments.
Added clipping/dropping of outgoing buffers in order to have accurate
seeking working properly.
Original commit message from CVS:
Patch by: Lutz Müller <lutz at topfrose de>
* ext/bz2/Makefile.am:
* ext/bz2/gstbz2dec.c: (gst_bz2dec_chain), (gst_bz2dec_init),
(gst_bz2dec_change_state), (gst_bz2dec_class_init):
Use gst_type_find_helper_* functions for typefinding; use
correct caps with gst_pad_alloc_buffer(); add state change
function and reset decoder in it; don't unref buffer if
pad_push fails; use fixed caps on source pad. (#341524).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment):
Clip the outputed NEWSEGMENT stop time to the configured segment stop
time.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), (plugin_init):
po/POTFILES.in:
Throw an error when the file is encrypted. Move plugin_init stuff
to the end of the file, add stuff for i18n, make debug category
static.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init),
(gst_spectrum_init), (gst_spectrum_set_sink_caps),
(gst_spectrum_get_sink_caps), (gst_spectrum_chain):
Use boilerplate macro, fix strings to match plugin-moval-requirements
Original commit message from CVS:
* gst/spectrum/Makefile.am:
Link to base libraries
* gst/spectrum/demo-osssrc.c: (main):
use new threshhold property
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init),
(gst_spectrum_init), (gst_spectrum_dispose),
(gst_spectrum_set_property), (gst_spectrum_set_sink_caps),
(gst_spectrum_get_sink_caps), (gst_spectrum_chain),
(gst_spectrum_change_state):
* gst/spectrum/gstspectrum.h:
Use gst_adapter, support multiple-channels, add threshold property for
result, add docs, fix resulting spectrum range (was including mirrored
results)
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_update_caps), (gst_faad_chain):
Remove unused caps cruft from chain function altogether.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_chain):
There's no guarantee that caps was set to something, and if it did, the
function called to fill that variable actually sets the caps on the
sourcpad, so we call gst_pad_alloc_buffer_and_set_caps() using
GST_PAD_CAPS(faad->srcpad).
Original commit message from CVS:
Patch by: Young-Ho Cha <ganadist chollian net>
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_chain),
(gst_faad_change_state):
* ext/faad/gstfaad.h:
If we encounter a decoding error, don't error out immediately,
but try to resync (or see if we have better luck with the next
buffer in case of framed input). Only error out after five
consecutive errors. Fixes#341563.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse), (qtdemux_parse_trak),
(gst_qtdemux_handle_esds):
Figure out the real audio type in mp4a boxes by parsing the
optional descriptors in the optional esds box. Promote the
default AAC to mp3 when indicated. Fixes#330632.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse), (qtdemux_dump_unknown),
(qtdemux_parse_trak), (gst_qtdemux_handle_esds):
Parse version 2 sample descriptions.
Don't #define gst_util_dump_mem(), use something more
specific instead to avoid confusion.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_query),
(qtdemux_dump_mvhd):
Don't cause side effects in a debugging function.
Also report duration in push mode since we can.
Original commit message from CVS:
Some changes proposed by wingo in bug #338818 (but not everything yet). Patch from Martin Rubli to fix framerate detection.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_setcaps),
(looks_like_valid_header), (gst_faad_chain):
Fix#334748: use fake_codec_data if the first bytes of the first
buffer we process doesn't look like plausible AAC data (e.g.
reserved values for rate, or channels). Fixes playback of Apple's
movie trailers.
Original commit message from CVS:
* ext/taglib/Makefile.am:
* ext/taglib/gstid3v2mux.cc:
* ext/taglib/gstid3v2mux.h:
* ext/taglib/gsttaglib.cc:
* ext/taglib/gsttaglib.h:
Split the actual ID3v2 tag rendering code into
its own subclass.
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c:
* ext/neon/gstneonhttpsrc.h:
added iradio-mode support as in gnomevfssrc to enable
connections with icydemux that will send title tag messages on
shoutcast/icecast streams. I've also added iradio properties
iradio-name, iradio-genre, iradio-url.
added user-agent property because some shoutcast streams don't return
data if the GET requests don't have a User-Agent.
* win32/common/libgstneon.dsp:
use debug version of libneon in debug mode
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (aac_rate_idx),
(gst_faad_setcaps), (gst_faad_chain), (gst_faad_open_decoder),
(gst_faad_close_decoder), (gst_faad_change_state):
* ext/faad/gstfaad.h:
If we run into a decoding error, try re-opening the decoder
with faacDecInit2() using fake codec data created from the
data the demuxer gave us. Should fix a whole bunch of
GStreamer-faad problems incl. 'channel coupling not
implemented', 'maximum number of scalefactor bands exceeded'
etc. (#173007, #332892).
Original commit message from CVS:
* ext/musepack/gstmusepackdec.c:
(gst_musepackdec_handle_seek_event), (gst_musepackdec_loop):
Add support for segment seeks.
Original commit message from CVS:
Patch by: j^ <j at bootlab dot org>
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak),
(qtdemux_video_caps):
Never treat video streams as an audio stream.
Add qtdrw mime type.
Fixes#339041
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
For VBR audio, don't try to calculate the samples_per_frame.
Fixes#338935.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_convert),
(theora_handle_type_packet), (theora_handle_422_image),
(theora_handle_420_image), (theora_handle_data_packet):
* ext/theora/theoradec.h:
Apply fix from j^ for API change in libtheoradec.
Implement 4:2:2 pixel format. Untested at the moment.
Original commit message from CVS:
* ext/musepack/gstmusepackdec.c: (gst_musepackdec_init),
(gst_musepack_stream_init):
Fix track/album peak tag values; use GST_DEBUG_FUNCPTR and
gst_pad_new_from_static_template().
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_start):
remove atoll by using g_ascii_strtoull (atoll is not supported on WIN32)
* sys/directdraw/gstdirectdrawsink.c:
* sys/directsound/gstdirectsoundsink.c:
done some cleans in sources
* win32/vs6:
add project files for neon, qtdemux
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample),
(gst_qtdemux_chain), (gst_qtdemux_add_stream), (qtdemux_dump_stsz),
(qtdemux_dump_stco), (qtdemux_parse_trak):
Don't make rounding errors in timestamp/duration calculations.
Fix timestamps for AMR and IMA4. Fixes (#337436).
Create a dummy segment even when there is no edit list.
Original commit message from CVS:
2006-04-07 Julien MOUTTE <julien@moutte.net>
* docs/plugins/gst-plugins-bad-plugins-decl-list.txt: Updates.
* examples/directfb/Makefile.am: Add example resource files to
dist.
Original commit message from CVS:
2006-04-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* ext/amrwb/amrwb-code/Makefile.am:
* sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_recalc),
(gst_ximagesrc_create), (gst_ximagesrc_set_property):
Typo fix, s/XFree86/X11 and added doc blurb saying that it fixates to
25fps
Original commit message from CVS:
2006-04-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* tests/icles/ximagesrc-test.c: (main):
Actually assert that pipeline goes to playing
Original commit message from CVS:
2006-04-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_recalc),
(composite_pixel), (gst_ximagesrc_ximage_get),
(gst_ximagesrc_create), (gst_ximagesrc_set_property):
Fix typo, C++ style comments and other small cleanups
Original commit message from CVS:
* ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init),
(gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property):
Add back "uri" property and mark it as deprecated; undoes
API/ABI breakage from 2006-02-24.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek),
(gst_qtdemux_do_seek), (gst_qtdemux_loop_state_movie),
(gst_qtdemux_loop):
Use duration as segment stop position if none is
explicitly configured.
Also perform EOS when we run past the segment stop.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_go_back),
(gst_qtdemux_perform_seek), (gst_qtdemux_do_seek),
(gst_qtdemux_loop_state_movie), (gst_qtdemux_loop),
(gst_qtdemux_chain), (qtdemux_parse_tree), (qtdemux_parse_trak):
More cleanups, added comments.
Mark discontinuities on outgoing buffers.
Post better errors when something goes wrong.
Handle EOS and segment end properly.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_push_event), (gst_qtdemux_go_back),
(gst_qtdemux_perform_seek), (gst_qtdemux_do_seek),
(gst_qtdemux_handle_src_event), (plugin_init),
(gst_qtdemux_change_state), (gst_qtdemux_loop_state_movie),
(gst_qtdemux_loop), (gst_qtdemux_chain),
(qtdemux_sink_activate_pull), (gst_qtdemux_add_stream),
(qtdemux_parse), (qtdemux_parse_tree), (qtdemux_parse_trak),
(qtdemux_parse_udta), (qtdemux_tag_add_str), (qtdemux_tag_add_num),
(qtdemux_tag_add_gnre), (gst_qtdemux_handle_esds):
* gst/qtdemux/qtdemux.h:
Handle stss boxes so we can mark and find keyframes.
Implement correct accurate and keyframe seeking.
Use _DEBUG_OBJECT when possible.
Original commit message from CVS:
* ext/swfdec/Makefile.am:
Don't set plugindir.
* ext/swfdec/gstswfdec.c:
GST_PLUGIN_DEFINE_STATIC isn't a good idea for installed plugins.