Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open):
* gst/rtsp/gstrtspsrc.h:
* gst/rtsp/rtspext.h:
* gst/rtsp/rtspextwms.c: (rtsp_ext_wms_configure_stream),
(rtsp_ext_wms_get_context):
Add method so that extensions can choose to disable the setup of
a stream.
Make the WMS extension skip setup of x-wms-rtx streams. Fixes#377792.
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:
Patch by: Jonas Holmberg <jonas dot holmberg at axis dot com>
* gst/multipart/multipartmux.c: (gst_multipart_mux_collected):
Push header in a separate buffer instead of memcpy:ing all data
Change LF => CRLF in headers
Move trailing LF to header
Original commit message from CVS:
* gst/videobox/gstvideobox.c: (gst_video_box_class_init):
Minor clean-ups: const-ify static array, remove trailing comma from
last enum (gcc-2.9x trips over that), use GST_DEBUG_FUNCPTR.
Original commit message from CVS:
* gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame):
Make sure that g_free always gets called on the same pointer that was
returned by g_malloc. Fixes#376594.
Do not leak memory if decompressed size is wrong.
Remove unneeded check of return value of g_malloc.
Patch by: René Stadler <mail@renestadler.de>
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init),
(gst_matroska_mux_request_new_pad):
Use GST_DEBUG_FUNCPTR; activate request pad before returning it.
* tests/check/elements/matroskamux.c: (setup_src_pad),
(setup_sink_pad), (GST_START_TEST):
Activate pads before using them.
Original commit message from CVS:
Patch by: Ville Syrjala <ville.syrjala@movial.fi>
* gst/rtp/gstrtph263pay.c:
* gst/rtp/gstrtph263pdepay.c:
* gst/rtp/gstrtph263ppay.c:
Specify H.263 variant and version in the caps (fixes#361637)
Original commit message from CVS:
* gst/rtsp/rtspconnection.c: (read_body):
Don't set a data pointer to NULL and a size > 0 when we deal
with empty packets.
* gst/rtsp/rtspmessage.c: (rtsp_message_new_response),
(rtsp_message_init_response), (rtsp_message_init_data),
(rtsp_message_unset), (rtsp_message_free),
(rtsp_message_take_body):
Check that we can't create invalid empty packets.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_massage_index):
Disable init_frames delay timestamp adjustment, it does not
seem to be needed at all. Fixes#369621.
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:
* gst/flx/gstflxdec.c: (gst_flxdec_class_init):
fix categorisation, make short desc more explicit, remove unused code
Fixes#372021
Original commit message from CVS:
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_handle_buffer):
Fix description.
Small cleanup in the payloader.
Original commit message from CVS:
* gst/rtp/Makefile.am:
We depend on gsttag to generate the vorbis comments.
* gst/rtp/gstrtpvorbisdepay.c:
(gst_rtp_vorbis_depay_parse_configuration),
(gst_rtp_vorbis_depay_setcaps),
(gst_rtp_vorbis_depay_switch_codebook),
(gst_rtp_vorbis_depay_process):
* gst/rtp/gstrtpvorbisdepay.h:
Parse configuration string in the depayloader.
Implement selecting and switching to a new codebook.
Receiving vorbis over RTP now works.
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_reset_packet),
(gst_rtp_vorbis_pay_init_packet),
(gst_rtp_vorbis_pay_finish_headers),
(gst_rtp_vorbis_pay_handle_buffer):
* gst/rtp/gstrtpvorbispay.h:
Set timestamps on outgoing buffers and RTP packets.
Fix configuration string, prepend number of Packet headers.
Fix encoding of ident string.
Add delivery-method to caps.
Streaming vorbis over RTP now works.
Original commit message from CVS:
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_setcaps),
(gst_rtp_vorbis_pay_finish_headers), (gst_rtp_vorbis_pay_parse_id),
(gst_rtp_vorbis_pay_handle_buffer):
* gst/rtp/gstrtpvorbispay.h:
Generate a valid configuration string in the caps based on the
vorbis headers.
Original commit message from CVS:
* gst/id3demux/id3v2frames.c: (parse_picture_frame):
We require a -base more recent than 0.10.9, so it's safe to use
GST_TYPE_TAG_IMAGE_TYPE unconditionally now.
* ext/dv/gstdvdec.c: (gst_dvdec_sink_event):
* ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_sink_event):
Use _newsegment_full() now that we depend on a recent enough core.
* gst/wavparse/gstwavparse.c:
Remove cruft that we don't need any longer now that we depend on
a recent enough -base.
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:
Patch by: Michal Benes <michal dot benes at itonis tv>
* gst/matroska/matroska-demux.c: (gst_matroska_demux_encoding_cmp),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_decode_buffer):
Fix several issues with encoded/compressed/encrypted/signed tracks;
also, remove superfluous newline characters from some debug
statements. (#366155)
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet be>
* gst/videomixer/videomixer.c: (gst_videomixer_update_queues):
Fix videomixer so that it can handle any combination of framerates.
Fixes#367221.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query),
(gst_avi_demux_parse_file_header),
(gst_avi_demux_stream_init_push), (gst_avi_demux_parse_stream),
(gst_avi_demux_stream_header_push), (gst_avi_demux_stream_data),
(gst_avi_demux_chain):
Fix position query for audio. also fixes timestamps in streaming
mode and bug #364958.
Small cleanups.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (gst_wavparse_perform_seek),
(gst_wavparse_stream_data):
Fix seeking some more, mostly for speed changes.
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:
* gst/rtsp/URLS:
Added some other URL.
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_udp),
(gst_rtspsrc_handle_request), (gst_rtspsrc_send),
(gst_rtspsrc_open), (gst_rtspsrc_play),
(gst_rtspsrc_handle_message), (gst_rtspsrc_change_state):
* gst/rtsp/gstrtspsrc.h:
Work on fallback to TCP connection when the UDP socket times out.
Handler server requests, just reply with OK for now.
* gst/rtsp/rtspdefs.c: (rtsp_strresult):
* gst/rtsp/rtspdefs.h:
Added some more Real extension headers.
* gst/rtsp/rtspurl.c: (rtsp_url_parse):
Fix parsing of urls with a ':' that is not part of the hostname:port
part of the url.
Original commit message from CVS:
* gst/apetag/gsttagdemux.c: (gst_tag_demux_add_srcpad):
* gst/icydemux/gsticydemux.c: (gst_icydemux_add_srcpad):
* gst/id3demux/gstid3demux.c: (gst_id3demux_add_srcpad):
Activate pad before adding it to the already-running element.
* tests/check/elements/icydemux.c: (icydemux_found_pad):
Activate newly-created pad too.
Original commit message from CVS:
Patch by: Sebastien Cote <sebas642 at yahoo dot ca>
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init),
(gst_udpsrc_finalize), (gst_udpsrc_create), (gst_udpsrc_set_uri),
(gst_udpsrc_start):
Fix some leaks in caps and uris. Fixes#361252.
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:
* 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:
* gst/rtsp/gstrtspsrc.c: (gst_rtsp_proto_get_type),
(gst_rtspsrc_class_init), (gst_rtspsrc_init),
(gst_rtspsrc_create_stream), (gst_rtspsrc_media_to_caps),
(gst_rtspsrc_alloc_udp_ports),
(gst_rtspsrc_stream_configure_transport), (find_stream_by_channel),
(gst_rtspsrc_push_event), (gst_rtspsrc_loop_interleaved),
(gst_rtspsrc_create_transports_string),
(gst_rtspsrc_configure_transports), (gst_rtspsrc_open),
(gst_rtspsrc_handle_message), (gst_rtspsrc_change_state):
* gst/rtsp/gstrtspsrc.h:
Rework how the transport string is constructed, try to share channels
and udp ports.
Make most of the stuff less dependant on RTP as we are also going to use
it for RDT.
Add support for transport specific session managers.
* gst/rtsp/rtspconnection.c: (rtsp_connection_flush):
Implement _flush().
* gst/rtsp/rtspdefs.c: (rtsp_strresult):
* gst/rtsp/rtspdefs.h:
Add generic error return code.
* gst/rtsp/rtspext.h:
Add support for pluggable tranport strings.
* gst/rtsp/rtspextwms.c: (rtsp_ext_wms_before_send),
(rtsp_ext_wms_after_send), (rtsp_ext_wms_parse_sdp),
(rtsp_ext_wms_get_context):
Detect WMServer and activate the extension.
* gst/rtsp/rtsptransport.c: (rtsp_transport_get_mime),
(rtsp_transport_get_manager), (rtsp_transport_parse):
* gst/rtsp/rtsptransport.h:
Added methods to get mime/manager for certain transports.
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:
* gst/rtsp/Makefile.am:
* gst/rtsp/gstrtpdec.c: (gst_rtpdec_getcaps),
(gst_rtpdec_chain_rtp), (gst_rtpdec_chain_rtcp):
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_finalize), (gst_rtspsrc_create_stream),
(gst_rtspsrc_parse_rtpmap),
(gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_send),
(gst_rtspsrc_parse_methods), (gst_rtspsrc_open),
(gst_rtspsrc_play), (gst_rtspsrc_handle_message):
* gst/rtsp/gstrtspsrc.h:
* gst/rtsp/rtspdefs.c: (rtsp_strresult):
* gst/rtsp/rtspdefs.h:
* gst/rtsp/rtspext.h:
* gst/rtsp/rtspextwms.c: (rtsp_ext_wms_parse_sdp),
(rtsp_ext_wms_get_context):
* gst/rtsp/rtspextwms.h:
* gst/rtsp/rtsptransport.c: (rtsp_transport_init), (parse_mode),
(rtsp_transport_parse):
* gst/rtsp/rtsptransport.h:
Factor out extension in separate module.
Fix getcaps to filter against the padtemplate.
Use Content-Base if the server gives one.
Rework the transport parsing a bit for future extensions.
Added some Real Header field definitions.
Original commit message from CVS:
* gst/apetag/gstapedemux.c: (ape_demux_parse_tags):
Extract disc/album/medium number and count and try harder
to extract track number/count.
Original commit message from CVS:
* gst/rtsp/URLS:
Add some more URLs.
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init),
(gst_rtspsrc_init), (gst_rtspsrc_finalize),
(gst_rtspsrc_set_property), (gst_rtspsrc_get_property),
(gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_loop_interleaved),
(gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd),
(gst_rtspsrc_loop), (gst_rtspsrc_send),
(gst_rtspsrc_parse_methods), (gst_rtspsrc_open),
(gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause),
(gst_rtspsrc_handle_message), (gst_rtspsrc_change_state):
* gst/rtsp/gstrtspsrc.h:
Add timeout property to control UDP timeouts.
Fix error messages.
Also start a loop function when operating in UDP mode so that we can
do some more stuff async.
Handle element messages from udpsrc to detect timeouts. If a timeout
happens we currently generate an error.
API: rtspsrc::timeout property.
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init),
(gst_udpsrc_create):
Really implement the timeout in microseconds and not milliseconds.
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init),
(gst_udpsrc_create), (gst_udpsrc_set_property),
(gst_udpsrc_get_property), (gst_udpsrc_unlock), (gst_udpsrc_stop):
* gst/udp/gstudpsrc.h:
Added property to post a message on timeout.
Updated docs.
When restarting the select, initialize the fdsets again.
Init control sockets so we don't accidentally close a random socket.
API: GstUDPSrc::timeout property
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtsp_proto_get_type):
Fix flag registration.
* gst/rtsp/rtspconnection.c: (rtsp_connection_read):
Reading 0 also means 'no more commands'
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/udp/gstudpsrc.c: (gst_udpsrc_create):
Fix possible infinite loop when shutting down, a read can also return
0 to indicate no more messages are available. Fixes#358156.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_base_init), (gst_auto_audio_sink_class_init),
(gst_auto_audio_sink_find_best):
* gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_detect):
Small cleanups.
don't try to set "sync" property when it is not available.
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/alpha/gstalpha.c:
* gst/rtp/gstrtpamrdepay.c:
* gst/rtsp/gstrtspsrc.c:
* gst/udp/gstudpsrc.c:
* gst/videomixer/videomixer.c:
Include stdlib.h in some more places, makes things compile
with uClibc and -Werror (#357592).
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_index):
Don't check for a tag that is never there and check if we read the
correct tag. Fixes seeking again.
We must post an error when all pads are unlinked.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_process):
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_setcaps),
(gst_rtp_vorbis_pay_reset_packet),
(gst_rtp_vorbis_pay_init_packet),
(gst_rtp_vorbis_pay_flush_packet), (gst_rtp_vorbis_pay_parse_id),
(gst_rtp_vorbis_pay_handle_buffer):
More fixage, set endoder-params correctly in the payloader.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_base_init):
* gst/autodetect/gstautovideosink.c:
(gst_auto_video_sink_base_init):
Make static pad templates static to appease valgrind's leak
detector.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/autodetect.c: (GST_START_TEST),
(autodetect_suite):
Add simple test for the ghostpad lockup on shutdown fixed in core
CVS (audio bit disabled because it would need dozens of alsa
suppressions and I'm too lazy to add those now).
Original commit message from CVS:
* gst/rtp/README:
Update README with some examples.
* gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_init),
(gst_rtp_mp4g_pay_finalize), (gst_rtp_mp4g_pay_parse_audio_config),
(gst_rtp_mp4g_pay_parse_video_config), (gst_rtp_mp4g_pay_new_caps),
(gst_rtp_mp4g_pay_setcaps):
* gst/rtp/gstrtpmp4gpay.h:
Make optional RTP parameters of type STRING, as required by the
application/x-rtp caps specification.
Original commit message from CVS:
* gst/rtp/gstrtph263pdepay.c:
* gst/rtp/gstrtph263ppay.c:
Correctly calculate size of each H263+ RTP buffer taking into account MTU and
RTP header.
Original commit message from CVS:
* gst/rtsp/URLS:
Added some test URLS.
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream),
(gst_rtspsrc_loop), (gst_rtspsrc_open):
* gst/rtsp/gstrtspsrc.h:
When creating streams, give access to the complete SDP.
Fix some leaks.
Collect and merge global stream properties in stream caps.
Preliminary support for WMServer.
* gst/rtsp/rtspconnection.c: (rtsp_connection_create),
(rtsp_connection_connect), (rtsp_connection_read), (read_body),
(rtsp_connection_receive):
* gst/rtsp/rtspconnection.h:
Make connection interruptable.
Refactor to make it reconnectable.
Don't fail on short reads when reading data packets.
* gst/rtsp/rtspurl.c: (rtsp_url_parse), (rtsp_url_set_port),
(rtsp_url_get_port):
* gst/rtsp/rtspurl.h:
Add methods for getting/setting the port.
* gst/rtsp/sdpmessage.c: (sdp_message_get_attribute_val_n),
(sdp_message_get_attribute_val), (sdp_media_get_attribute),
(sdp_media_get_attribute_val_n), (sdp_media_get_attribute_val),
(sdp_media_get_format), (sdp_parse_line),
(sdp_message_parse_buffer):
Fix headers.
Add methods for getting multiple attributes with the same name.
Increase buffer size when parsing.
Fix parsing of a=foo fields.
* gst/rtsp/test.c: (main):
Update to new connection API.
* gst/rtsp/rtspmessage.c: (rtsp_message_new_response),
(rtsp_message_init_response), (rtsp_message_init_data),
(rtsp_message_unset), (rtsp_message_free), (rtsp_message_dump):
* gst/rtsp/rtspmessage.h:
* gst/rtsp/rtsptransport.c: (rtsp_transport_free):
* gst/rtsp/rtsptransport.h:
* gst/rtsp/sdp.h:
* gst/rtsp/sdpmessage.h:
* gst/rtsp/gstrtsp.c:
* gst/rtsp/gstrtsp.h:
* gst/rtsp/gstrtpdec.c:
* gst/rtsp/gstrtpdec.h:
* gst/rtsp/rtsp.h:
* gst/rtsp/rtspdefs.c:
* gst/rtsp/rtspdefs.h:
Dual licensed under MIT and LGPL now.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (find_stream_by_pt),
(gst_rtspsrc_create_stream), (gst_rtspsrc_free_stream),
(gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp),
(gst_rtspsrc_stream_configure_transport), (find_stream_by_channel),
(gst_rtspsrc_push_event), (gst_rtspsrc_loop), (gst_rtspsrc_send),
(gst_rtspsrc_parse_methods), (gst_rtspsrc_open),
(gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play):
* gst/rtsp/gstrtspsrc.h:
Reorganize stream parsing and creation.
Detect container formats in interleaved mode.
Keep more state about the streams.
Assume a server also supports PLAY if it does not say.
Add unicast and interleaved properties to TCP transport requests to make
some servers happy (WMServer).
* gst/rtsp/sdpmessage.h:
Add some defines for the standard Bandwidth types.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_base_init),
(gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_push_event),
(gst_rtspsrc_loop), (gst_rtspsrc_uri_set_uri):
* gst/rtsp/gstrtspsrc.h:
Export sometimes source pad with correct caps on the template, create
the ghostpad from the template.
Remove RTCP template as we never expose RTCP.
Protect against invalid body size.
Avoid memcpy when creating the output buffer.
Properly post an error and send EOS when the loop function is shut down.
Original commit message from CVS:
Based on patch by: Lutz Mueller <lutz at topfrose dot de>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init),
(gst_rtspsrc_init), (gst_rtspsrc_set_property), (gst_rtspsrc_open),
(gst_rtspsrc_uri_get_uri), (gst_rtspsrc_uri_set_uri):
* gst/rtsp/gstrtspsrc.h:
Make sure we can never set an invalid location.
* gst/rtsp/rtspmessage.c: (rtsp_message_steal_body):
* gst/rtsp/rtspmessage.h:
Added _steal_body method for future use.
* gst/rtsp/rtspurl.c: (rtsp_url_parse), (rtsp_url_free):
Make freeing of NULL url return immediatly.
Original commit message from CVS:
Based on patch by: Lutz Mueller <lutz at topfrose dot de>
* gst/rtsp/gstrtspsrc.c: (_do_init), (gst_rtspsrc_class_init),
(gst_rtspsrc_init), (gst_rtspsrc_stream_setup_rtp),
(gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_play),
(gst_rtspsrc_change_state):
* gst/rtsp/gstrtspsrc.h:
Use boilerplate.
Make rtspsrc subclass GstBin to make state changes easier.
Add Range header field on the PLAY request.
Original commit message from CVS:
Based on patch by: Thijs Vermeir <thijs dot vermeir at barco dot com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_set_state),
(gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp),
(gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_open),
(gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause):
* gst/rtsp/rtspconnection.c: (inet_aton):
Small cleanups.
when multicast is selected as the transport, create UDP sources and
connect to the multicast group.
Move parsing and setting of caps to a common place.
Fixes#349894.
Original commit message from CVS:
Patch by: Yves Lefebvre <ivanohe at abacom dot com>
* gst/avi/gstavimux.c: (gst_avi_mux_stop_file):
Correctly set the dwLength in strh.
With this patch, the file duration is now displayed correctly in window
media player and the AVI plays completely. Fixes#356147
Original commit message from CVS:
* gst/multipart/multipartdemux.c: (gst_multipart_demux_chain):
Fix documentation, it is not possible to control the framerate of jpegdec
using filtered caps yet. Fixes#355210.
Return the downstream GstFlowReturn instead of GST_FLOW_OK so that we
stop when there is an error.
Original commit message from CVS:
* gst/apetag/gsttagdemux.c: (gst_tag_demux_chain_parse_tag):
* gst/id3demux/gstid3demux.c: (gst_id3demux_chain):
Don't interpret a first buffer with an offset of NONE as
'from the middle of the stream', but only a first buffer
that has a valid buffer offset that's non-zero (see #345449).
Original commit message from CVS:
* gst/icydemux/gsticydemux.c: (gst_icydemux_reset),
(gst_icydemux_typefind_or_forward):
* gst/icydemux/gsticydemux.h:
When we merge/collect multiple incoming buffers for typefinding
purposes, keep an initial 0 offset on the first outgoing buffer
as well (otherwise id3demux won't work right). Fixes#345449.
Also Make buffer metadata writable before setting buffer caps.
* tests/check/elements/icydemux.c: (typefind_succeed),
(cleanup_icydemux), (push_data), (GST_START_TEST),
(icydemux_suite):
Small test case for the above.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_peek_chunk),
(gst_avi_demux_stream_index), (gst_avi_demux_sync),
(gst_avi_demux_stream_header_push),
(gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data),
(gst_avi_demux_loop):
More code reuse and better logging in _peek_chunk(). Reintroduce check
for chunk sizes before reading them (avoid oom). Better handling for
invalid chunksizes when streaming.
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/level/gstlevel.c: (gst_level_set_property):
* gst/level/gstlevel.h:
Fix type mixup in level->interval (gdouble<->guint64). Spotted by
René Stadler
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.