summaryrefslogtreecommitdiffstats
path: root/gst
Commit message (Collapse)AuthorAgeFilesLines
* Use G_GSIZE_FORMAT in print statements for portability.Edward Hervey2007-01-251-2/+4
| | | | | | | | Original commit message from CVS: * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): * sys/ximage/ximageutil.c: (ximageutil_check_xshm_calls): Use G_GSIZE_FORMAT in print statements for portability. Fixes build on macosx.
* gst/rtp/: Port and enable raw audio payloader/depayloader. Needs a bit more ↵Wim Taymans2007-01-246-454/+303
| | | | | | | | | | | | | | | | | | | | | | | work on the payloader side. Original commit message from CVS: * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_base_init), (gst_rtp_L16_depay_class_init), (gst_rtp_L16_depay_init), (gst_rtp_L16_depay_parse_int), (gst_rtp_L16_depay_setcaps), (gst_rtp_L16_depay_process), (gst_rtp_L16_depay_set_property), (gst_rtp_L16_depay_get_property), (gst_rtp_L16_depay_change_state), (gst_rtp_L16_depay_plugin_init): * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_get_type), (gst_rtp_L16_pay_base_init), (gst_rtp_L16_pay_class_init), (gst_rtp_L16_pay_init), (gst_rtp_L16_pay_finalize), (gst_rtp_L16_pay_setcaps), (gst_rtp_L16_pay_handle_buffer), (gst_rtp_L16_pay_plugin_init): * gst/rtp/gstrtpL16pay.h: Port and enable raw audio payloader/depayloader. Needs a bit more work on the payloader side.
* gst/rtsp/gstrtspsrc.*: Only unblock the udp pads when we linked and ↵Wim Taymans2007-01-242-9/+22
| | | | | | | | | | | | activated them all. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (pad_blocked), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_udp): * gst/rtsp/gstrtspsrc.h: Only unblock the udp pads when we linked and activated them all. Fixes #395688.
* gst/rtp/: Added simple AC3 depayloader (RFC 4184).Wim Taymans2007-01-245-6/+388
| | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpac3depay.c: (gst_rtp_ac3_depay_base_init), (gst_rtp_ac3_depay_class_init), (gst_rtp_ac3_depay_init), (gst_rtp_ac3_depay_setcaps), (gst_rtp_ac3_depay_process), (gst_rtp_ac3_depay_set_property), (gst_rtp_ac3_depay_get_property), (gst_rtp_ac3_depay_change_state), (gst_rtp_ac3_depay_plugin_init): * gst/rtp/gstrtpac3depay.h: Added simple AC3 depayloader (RFC 4184). * gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps): Fix a leak.
* gst/audiofx/: Add new element "audioamplify". This allows scaling of raw ↵Sebastian Dröge2007-01-244-3/+520
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | audio samples, similar to the "volume" eleme... Original commit message from CVS: reviewed by: Stefan Kost <ensonic@users.sf.net> * gst/audiofx/Makefile.am: * gst/audiofx/audioamplify.c: (gst_audio_amplify_clipping_method_get_type), (gst_audio_amplify_base_init), (gst_audio_amplify_class_init), (gst_audio_amplify_init), (gst_audio_amplify_set_process_function), (gst_audio_amplify_set_property), (gst_audio_amplify_get_property), (gst_audio_amplify_set_caps), (gst_audio_amplify_transform_int_clip), (gst_audio_amplify_transform_int_wrap_negative), (gst_audio_amplify_transform_int_wrap_positive), (gst_audio_amplify_transform_float_clip), (gst_audio_amplify_transform_float_wrap_negative), (gst_audio_amplify_transform_float_wrap_positive), (gst_audio_amplify_transform_ip): * gst/audiofx/audioamplify.h: * gst/audiofx/audiofx.c: (plugin_init): Add new element "audioamplify". This allows scaling of raw audio samples, similar to the "volume" element, but provides different modes for clipping and allows unlimited amplification. It's mainly targeted for creative sound design and not as a replacement of the "volume" element. Fixes #397162 * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/inspect/plugin-audiofx.xml: Add docs for audioamplify and integrate them into the build system * tests/check/Makefile.am: * tests/check/elements/audioamplify.c: (setup_amplify), (cleanup_amplify), (GST_START_TEST), (amplify_suite), (main): Add fairly extensive unit test suite for audioamplify
* gst/rtsp/gstrtspsrc.c: Unblock pads after adding the pads to the element so ↵Wim Taymans2007-01-241-4/+7
| | | | | | | | | that autopluggers get a change to link so... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (pad_unblocked), (pad_blocked): Unblock pads after adding the pads to the element so that autopluggers get a change to link something. Possibly fixes #395688.
* gst/rtp/: Fix caps with payload numbers.Wim Taymans2007-01-2422-19/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtp/gstrtpamrdepay.c: * gst/rtp/gstrtpgsmdepay.c: * gst/rtp/gstrtph263pdepay.c: * gst/rtp/gstrtph263ppay.c: * gst/rtp/gstrtph264depay.c: * gst/rtp/gstrtpilbcdepay.c: * gst/rtp/gstrtpmp2tdepay.c: * gst/rtp/gstrtpmp4gdepay.c: * gst/rtp/gstrtpmp4gpay.c: * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init): * gst/rtp/gstrtpmp4vpay.c: * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_class_init), (gst_rtp_mpa_depay_init), (gst_rtp_mpa_depay_setcaps), (gst_rtp_mpa_depay_process): * gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_class_init), (gst_rtp_mpv_depay_init), (gst_rtp_mpv_depay_process): * gst/rtp/gstrtppcmadepay.c: * gst/rtp/gstrtppcmudepay.c: * gst/rtp/gstrtpspeexdepay.c: * gst/rtp/gstrtpspeexpay.c: * gst/rtp/gstrtpsv3vdepay.c: * gst/rtp/gstrtptheoradepay.c: * gst/rtp/gstrtptheorapay.c: * gst/rtp/gstrtpvorbisdepay.c: * gst/rtp/gstrtpvorbispay.c: Fix caps with payload numbers. Add some fixed payload numbers to caps when possible.
* gst/qtdemux/gstrtpxqtdepay.c: Fix caps on the depayloader.Wim Taymans2007-01-241-6/+4
| | | | | | Original commit message from CVS: * gst/qtdemux/gstrtpxqtdepay.c: Fix caps on the depayloader.
* gst/audiofx/: Add new audiofx element "audioinvert". This element swaps the ↵Sebastian Dröge2007-01-234-4/+347
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | upper and lower half of samples and can b... Original commit message from CVS: reviewed by: Stefan Kost <ensonic@users.sf.net> * gst/audiofx/Makefile.am: * gst/audiofx/audiofx.c: (plugin_init): * gst/audiofx/audioinvert.c: (gst_audio_invert_base_init), (gst_audio_invert_class_init), (gst_audio_invert_init), (gst_audio_invert_set_property), (gst_audio_invert_get_property), (gst_audio_invert_set_caps), (gst_audio_invert_transform_int), (gst_audio_invert_transform_float), (gst_audio_invert_transform_ip): * gst/audiofx/audioinvert.h: Add new audiofx element "audioinvert". This element swaps the upper and lower half of samples and can be used for example for a wide-stereo effect. Fixes #396057 * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/inspect/plugin-audiofx.xml: Add docs for the audioinvert element and add them to the build system. * tests/check/Makefile.am: * tests/check/elements/audioinvert.c: (setup_invert), (cleanup_invert), (GST_START_TEST), (invert_suite), (main): Add unit test suite for the audioinvert element.
* gst/rtp/gstrtpmp4gdepay.c: Parse config params as string and int.Wim Taymans2007-01-231-35/+62
| | | | | | | | Original commit message from CVS: * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_parse_int), (gst_rtp_mp4g_depay_setcaps), (gst_rtp_mp4g_depay_process): Parse config params as string and int. Parse and use AU header length
* gst/smpte/: constify some static structs.Wim Taymans2007-01-235-40/+82
| | | | | | | | | | | | | | Original commit message from CVS: * gst/smpte/barboxwipes.c: (gst_wipe_boxes_draw), (gst_wipe_triangles_clock_draw), (gst_wipe_triangles_draw): * gst/smpte/gstmask.c: (_gst_mask_register): * gst/smpte/gstmask.h: * gst/smpte/gstsmpte.c: (gst_smpte_update_mask): * gst/smpte/paint.c: (gst_smpte_paint_hbox), (draw_bresenham_line), (gst_smpte_paint_triangle_clock): constify some static structs. Don't update the mask if nothing changed to the params. Make sure we never draw outside of the picture. Fixes #398325.
* gst/avi/gstavidemux.c: Error out properly when pull_range fails while we're ↵Tim-Philipp Müller2007-01-221-9/+13
| | | | | | | | | reading the headers, instead of just paus... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_stream_header_pull): Error out properly when pull_range fails while we're reading the headers, instead of just pausing the task silently. Fixes #399338.
* gst/smpte/gstsmpte.c: Some more sanity checks to make sure the input formats ↵Tim-Philipp Müller2007-01-191-5/+18
| | | | | | | | | | | match and the input pads are actually ne... Original commit message from CVS: * gst/smpte/gstsmpte.c: (gst_smpte_collected): Some more sanity checks to make sure the input formats match and the input pads are actually negotiated, in case someone tries to feed buffers from fakesrc or filesrc. Fixes #398299. Also const-ify an array, just because we can.
* gst/smpte/gstsmpte.c: Ignore previous commit, that was only valid for widths ↵Edward Hervey2007-01-191-6/+18
| | | | | | | | | | | | | and heights that are multiples of 4. Original commit message from CVS: * gst/smpte/gstsmpte.c: (fill_i420), (gst_smpte_collected): Ignore previous commit, that was only valid for widths and heights that are multiples of 4. Copy over size/stride macros from jpegdec. This allows the element to work with any width,height... ... but puts in evidence that the actual transformations only work with width/height that are multiples of 4.
* gst/smpte/gstsmpte.c: Allocate buffers of the right size.Edward Hervey2007-01-191-3/+3
| | | | | | | | | | Original commit message from CVS: * gst/smpte/gstsmpte.c: (gst_smpte_collected): Allocate buffers of the right size. The proper size of a I420 buffer in bytes is: width * height * 3 ------------------ 2
* gst/smpte/gstsmpte.c: Proxy getcaps on sink pads too, so that we either end ↵Tim-Philipp Müller2007-01-181-2/+8
| | | | | | | | | | up with the same dimensions on all pads o... Original commit message from CVS: * gst/smpte/gstsmpte.c: (gst_smpte_init): Proxy getcaps on sink pads too, so that we either end up with the same dimensions on all pads or error out if that's not possible (seems to work even!). Fixes #398086, I think.
* gst/audiofx/audiopanorama.c: Fix doc section name (Fixes #397946)Stefan Kost2007-01-181-1/+1
| | | | | | Original commit message from CVS: * gst/audiofx/audiopanorama.c: Fix doc section name (Fixes #397946)
* gst/audiofx/audiopanorama.c: Use a function array for process methods, add ↵Sebastian Dröge2007-01-161-50/+40
| | | | | | | | | | | more docs and define the startindex of enums. Original commit message from CVS: Patch by: Sebastian Dröge <slomo circular-chaos org> * gst/audiofx/audiopanorama.c: (gst_audio_panorama_class_init), (gst_audio_panorama_set_process_function): Use a function array for process methods, add more docs and define the startindex of enums.
* Add support for more than one audio stream; write better AVIX header; ↵Mark Nauwelaerts2007-01-142-538/+536
| | | | | | | | | | | | | | | | | | | | | | | refactor code a bit; don't announce vorbis caps... Original commit message from CVS: Patch by: Mark Nauwelaerts <manauw at skynet be> * gst/avi/gstavimux.c: (gst_avi_mux_finalize), (gst_avi_mux_pad_reset), (gst_avi_mux_reset), (gst_avi_mux_init), (gst_avi_mux_vidsink_set_caps), (gst_avi_mux_audsink_set_caps), (gst_avi_mux_request_new_pad), (gst_avi_mux_release_pad), (gst_avi_mux_riff_get_avi_header), (gst_avi_mux_riff_get_avix_header), (gst_avi_mux_riff_get_header), (gst_avi_mux_write_avix_index), (gst_avi_mux_add_index), (gst_avi_mux_bigfile), (gst_avi_mux_start_file), (gst_avi_mux_stop_file), (gst_avi_mux_handle_event), (gst_avi_mux_do_buffer), (gst_avi_mux_do_one_buffer), (gst_avi_mux_change_state): * gst/avi/gstavimux.h: * tests/check/elements/avimux.c: (teardown_src_pad): Add support for more than one audio stream; write better AVIX header; refactor code a bit; don't announce vorbis caps on our audio sink pads since we don't support it anyway. Closes #379298.
* gst/interleave/deinterleave.c (gst_deinterleave_add_new_pads): Use fixed ↵Andy Wingo2007-01-131-5/+11
| | | | | | | | | | | | | | caps on src pads. 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.
* gst/interleave/interleave.c (gst_interleave_init): Init the activation mode ↵Andy Wingo2007-01-131-17/+133
| | | | | | | | | | | | | | | | | | | properly. 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.
* gst/audiofx/audiopanorama.*: Add 'method' property and provide a simple ↵Sebastian Dröge2007-01-132-31/+229
| | | | | | | | | | | | | | | | | | | | | | | (non-psychoacustic) processing method (#394859). Original commit message from CVS: Patch by: Sebastian Dröge <slomo circular-chaos org> * gst/audiofx/audiopanorama.c: (gst_audio_panorama_method_get_type), (gst_audio_panorama_class_init), (gst_audio_panorama_init), (gst_audio_panorama_set_process_function), (gst_audio_panorama_set_property), (gst_audio_panorama_get_property), (gst_audio_panorama_set_caps), (gst_audio_panorama_transform_m2s_int_simple), (gst_audio_panorama_transform_s2s_int_simple), (gst_audio_panorama_transform_m2s_float_simple), (gst_audio_panorama_transform_s2s_float_simple): * gst/audiofx/audiopanorama.h: Add 'method' property and provide a simple (non-psychoacustic) processing method (#394859). * tests/check/elements/audiopanorama.c: (GST_START_TEST), (panorama_suite): Tests for new method.
* gst/qtdemux/: Add X-QT depayloader that will eventually share code with the ↵Wim Taymans2007-01-126-25/+839
| | | | | | | | | | | | | | | | | | | | | | | demuxer. Original commit message from CVS: * gst/qtdemux/Makefile.am: * gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_base_init), (gst_rtp_xqt_depay_class_init), (gst_rtp_xqt_depay_init), (gst_rtp_xqt_depay_finalize), (gst_rtp_quicktime_parse_sd), (gst_rtp_xqt_depay_setcaps), (gst_rtp_xqt_depay_process), (gst_rtp_xqt_depay_set_property), (gst_rtp_xqt_depay_get_property), (gst_rtp_xqt_depay_change_state), (gst_rtp_xqt_depay_plugin_init): * gst/qtdemux/gstrtpxqtdepay.h: * gst/qtdemux/qtdemux.c: (gst_qtdemux_base_init), (gst_qtdemux_loop_state_header), (gst_qtdemux_loop), (qtdemux_parse_moov), (qtdemux_parse_container), (qtdemux_parse_node), (gst_qtdemux_add_stream), (qtdemux_parse_trak), (qtdemux_audio_caps): * gst/qtdemux/qtdemux.h: * gst/qtdemux/quicktime.c: (plugin_init): Add X-QT depayloader that will eventually share code with the demuxer. Make new plugin entry point with quicktime releated stuff.
* gst/qtdemux/Makefile.am: Dist all new files.Tim-Philipp Müller2007-01-121-1/+6
| | | | | | Original commit message from CVS: * gst/qtdemux/Makefile.am: Dist all new files.
* gst/qtdemux/: Cleanup and refactor to make the code more readable.Wim Taymans2007-01-129-1871/+2037
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/qtdemux/Makefile.am: * gst/qtdemux/qtdemux.c: (extract_initial_length_and_fourcc), (gst_qtdemux_loop_state_header), (gst_qtdemux_combine_flows), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (gst_qtdemux_chain), (qtdemux_sink_activate_pull), (qtdemux_inflate), (qtdemux_parse_moov), (qtdemux_parse_container), (qtdemux_parse_node), (qtdemux_tree_get_child_by_type), (qtdemux_tree_get_sibling_by_type), (gst_qtdemux_add_stream), (qtdemux_parse_samples), (qtdemux_parse_segments), (qtdemux_parse_trak), (qtdemux_tag_add_str), (qtdemux_tag_add_num), (qtdemux_tag_add_date), (qtdemux_tag_add_gnre), (qtdemux_parse_udta), (qtdemux_redirects_sort_func), (qtdemux_process_redirects), (qtdemux_parse_redirects), (qtdemux_parse_tree), (gst_qtdemux_handle_esds), (qtdemux_video_caps), (qtdemux_audio_caps): * gst/qtdemux/qtdemux.h: * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_mvhd), (qtdemux_dump_tkhd), (qtdemux_dump_elst), (qtdemux_dump_mdhd), (qtdemux_dump_hdlr), (qtdemux_dump_vmhd), (qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_stts), (qtdemux_dump_stss), (qtdemux_dump_stsc), (qtdemux_dump_stsz), (qtdemux_dump_stco), (qtdemux_dump_co64), (qtdemux_dump_dcom), (qtdemux_dump_cmvd), (qtdemux_dump_unknown), (qtdemux_node_dump_foreach), (qtdemux_node_dump): * gst/qtdemux/qtdemux_dump.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: (qtdemux_type_get): * gst/qtdemux/qtdemux_types.h: * gst/qtdemux/qtpalette.h: Cleanup and refactor to make the code more readable. Move debugging/tables into separate files. Add 2/4/16 color palletee support. Fix raw 15 bit RGB handling. Use more FOURCC constants. Add some docs.
* gst/: Set correct caps on outgoing pulled buffers, or things blow up after ↵Tim-Philipp Müller2007-01-112-0/+4
| | | | | | | | | | recent core changes. Original commit message from CVS: * gst/apetag/gsttagdemux.c: (gst_tag_demux_read_range): * gst/id3demux/gstid3demux.c: (gst_id3demux_read_range): Set correct caps on outgoing pulled buffers, or things blow up after recent core changes.
* gst/multipart/multipartmux.c: Return FLOW errors ASAP. Fixes #394977.Jonas Holmberg2007-01-111-40/+70
| | | | | | | | | | | Original commit message from CVS: Based on patch by: Jonas Holmberg <jonas dot holmberg at axis dot com> * gst/multipart/multipartmux.c: (gst_multipart_mux_init), (gst_multipart_mux_request_new_pad), (gst_multipart_mux_queue_pads), (gst_multipart_mux_collected), (gst_multipart_mux_change_state): Return FLOW errors ASAP. Fixes #394977. Misc cleanups.
* gst/rtsp/gstrtspsrc.c: Check for stream pad before activating.Lutz Mueller2007-01-111-5/+7
| | | | | | | Original commit message from CVS: Patch by: Lutz Mueller <lutz at topfrose dot de> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_activate_streams): Check for stream pad before activating.
* gst/rtsp/: Allow url to be NULL to be able to use it for server connections.Peter Kjellerstedt2007-01-1010-299/+644
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst/rtsp/COPYING.MIT: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (gst_rtspsrc_stream_free), (gst_rtspsrc_cleanup), (gst_rtspsrc_alloc_udp_ports), (pad_unblocked), (pad_blocked), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_prepare_transports), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open), (gst_rtspsrc_close): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtspconnection.c: (rtsp_connection_create), (rtsp_connection_connect), (rtsp_connection_send), (read_line), (parse_request_line), (parse_line), (rtsp_connection_read), (rtsp_connection_close): * gst/rtsp/rtspdefs.c: (rtsp_init_status), (rtsp_strresult), (rtsp_method_as_text), (rtsp_header_as_text), (rtsp_status_as_text), (rtsp_find_header_field), (rtsp_find_method): * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspextwms.c: (rtsp_ext_wms_after_send), (rtsp_ext_wms_configure_stream): * gst/rtsp/rtspmessage.c: (rtsp_message_new), (rtsp_message_init), (rtsp_message_new_request), (rtsp_message_init_request), (rtsp_message_new_response), (rtsp_message_init_response), (rtsp_message_init_data), (rtsp_message_unset), (rtsp_message_free), (rtsp_message_add_header), (rtsp_message_get_header), (rtsp_message_set_body), (rtsp_message_get_body), (dump_mem), (rtsp_message_dump): * gst/rtsp/rtspmessage.h: * gst/rtsp/sdpmessage.c: (sdp_message_get_attribute_val_n), (sdp_media_get_attribute_val_n), (read_string), (read_string_del), (sdp_parse_line), (sdp_message_parse_buffer), (print_media), (sdp_message_dump): Allow url to be NULL to be able to use it for server connections. Can now send responses as well as requests. No longer hangs in an endless loop if EOF is received. Can now convert a status code to a text string. Return RTSP_HDR_INVALID for unknown headers. Return RTSP_INVALID for unknown methods. Copy CSeq and Session headers from the request. Only free memory corresponding to the currently set message type. Added const to function arguments as appropriate. Avoid a compiler warning when initializing nmedia. Use guint rather than gint to avoid compiler warnings. Fix crasher in wms extension. Factor out stream setup from open_connection. Delay activation of streams when actual data is received from the server, this prepares us to do proper protocol switching. Added new license. Fixes #380895.
* Some small docs fixes (#394851).Sebastian Dröge2007-01-101-4/+4
| | | | | | | | Original commit message from CVS: Patch by: Sebastian Dröge <slomo ubuntu com> * docs/plugins/Makefile.am: * gst/audiofx/audiopanorama.c: Some small docs fixes (#394851).
* gst/avi/gstavidemux.c: Fix docs.Wim Taymans2007-01-091-2/+4
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Fix docs.
* gst/rtp/: Added RFC 2250 MPEG Video Depayloader.Wim Taymans2007-01-0911-155/+492
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: (plugin_init): * gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_base_init), (gst_rtp_mpv_depay_class_init), (gst_rtp_mpv_depay_init), (gst_rtp_mpv_depay_setcaps), (gst_rtp_mpv_depay_process), (gst_rtp_mpv_depay_set_property), (gst_rtp_mpv_depay_get_property), (gst_rtp_mpv_depay_change_state), (gst_rtp_mpv_depay_plugin_init): * gst/rtp/gstrtpmpvdepay.h: Added RFC 2250 MPEG Video Depayloader. * gst/rtp/gstrtpL16depay.h: * gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps), (gst_rtp_h263p_depay_process): Fix Header file. Small cleanups. * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_class_init), (gst_rtp_mp4g_depay_init), (gst_rtp_mp4g_depay_finalize), (gst_rtp_mp4g_depay_process), (gst_rtp_mp4g_depay_change_state): * gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init), (gst_rtp_mp4v_depay_init), (gst_rtp_mp4v_depay_finalize), (gst_rtp_mp4v_depay_setcaps), (gst_rtp_mp4v_depay_process), (gst_rtp_mp4v_depay_change_state): Remove usused code. Remove Adapter from state Change. Added debug. * gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_base_init), (gst_rtp_mpa_depay_class_init), (gst_rtp_mpa_depay_init), (gst_rtp_mpa_depay_setcaps), (gst_rtp_mpa_depay_process): * gst/rtp/gstrtpmpadepay.h: Subclass base depayloader. Added debug. Support static payload type assignment as well. * gst/rtp/gstrtpmpapay.c: Fix caps.
* ext/jpeg/: These libjpeg callbacks should return a 'boolean' (unsigned char ↵Vincent Torri2007-01-082-4/+11
| | | | | | | | | | | | | | | | | apparently) and not a 'gboolean' (which m... Original commit message from CVS: Patch by: Vincent Torri <vtorri at univ-evry fr> * ext/jpeg/gstjpegdec.c: * ext/jpeg/gstjpegenc.c: * ext/jpeg/smokecodec.c: These libjpeg callbacks should return a 'boolean' (unsigned char apparently) and not a 'gboolean' (which maps to gint). Fixes warnings when compiling with MingW (#393427). * gst/rtsp/rtspconnection.c: (rtsp_connection_read): Use ioctlsocket on win32. * gst/udp/gstudpsrc.c: (gst_udpsrc_create): Some printf format fixes for win32.
* New elements interleave and deinterleave, implement channel interleaving and ↵Andy Wingo2007-01-075-0/+1035
| | | | | | | | | | | | | | | | | | deinterleaving. 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.
* gst/cutter/gstcutter.c: Use gst_guint64_to_gdouble for conversion.Sébastien Moutte2007-01-071-1/+3
| | | | | | | | | | Original commit message from CVS: * gst/cutter/gstcutter.c: (gst_cutter_chain): Use gst_guint64_to_gdouble for conversion. * win32/vs6/libgstmatroska.dsp: Add zlib to the link. * win32/vs6/libgstvideobox.dsp: Update liboil library name (project is linked to liboil-0.3-0.lib now).
* Check for zlib and if available pass it explicitly to the linker when ↵Tim-Philipp Müller2007-01-052-18/+33
| | | | | | | | | | | | | linking qtdemux. If not available (or --disable... 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).
* gst/matroska/Makefile.am: If zlib is available and used, we must link it ↵Tim-Philipp Müller2007-01-051-1/+2
| | | | | | | | | explicitly for things to work on MingW (fixe... Original commit message from CVS: * gst/matroska/Makefile.am: If zlib is available and used, we must link it explicitly for things to work on MingW (fixes #392855).
* Fix build with gcc-2.x (declare variables at the beginning of a block etc.). ↵Jens Granseuer2007-01-032-14/+14
| | | | | | | | | | | | | | | | | | Fixes #391971. Original commit message from CVS: Patch by: Jens Granseuer <jensgr at gmx net> * ext/xvid/gstxvidenc.c: (gst_xvidenc_encode), (gst_xvidenc_get_property): * gst/filter/gstbpwsinc.c: (bpwsinc_transform_ip): * gst/filter/gstfilter.c: (plugin_init): * gst/filter/gstiir.c: (iir_transform_ip): * gst/filter/gstlpwsinc.c: (lpwsinc_transform_ip): * gst/modplug/gstmodplug.cc: * gst/nuvdemux/gstnuvdemux.c: (gst_nuv_demux_header_load), (gst_nuv_demux_stream_extend_header): Fix build with gcc-2.x (declare variables at the beginning of a block etc.). Fixes #391971.
* gst/matroska/matroska-mux.c: The "signed" field in audio caps is of boolean ↵Tim-Philipp Müller2006-12-241-8/+27
| | | | | | | | | | | | | | | | | | type, trying to use gst_structure_get_int... Original commit message from CVS: * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_setcaps): The "signed" field in audio caps is of boolean type, trying to use gst_structure_get_int() to extract it will fail. Fixing this makes matroskamux accept raw audio input (#387121) (use at your own risk though, due to the matroska spec being not entirely useful in this respect). Also fix up raw audio structures in template caps so that they represent what our setcaps function will actually accept, so that converters know what to convert to. Finally, don't fail if there isn't an "endianness" field in 8-bit PCM caps.
* gst/qtdemux/qtdemux.c: Don't post BUFFERING messages in streaming mode if ↵Tim-Philipp Müller2006-12-181-7/+5
| | | | | | | | | | | | | | the stream headers are behind the movie dat... 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).
* gst/qtdemux/qtdemux.c: Don't output g_warning for an unsupported format, ↵Jan Schmidt2006-12-181-6/+15
| | | | | | | | | | | | just send a 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
* gst/qtdemux/qtdemux.c: Fix crash dereferencing NULL pointer if there's no ↵Tim-Philipp Müller2006-12-181-1/+4
| | | | | | | | | stco atom. 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.
* gst/videomixer/videomixer.c: Introduce some locking around the videomixer ↵Sjoerd Simons2006-12-161-152/+109
| | | | | | | | | | | | | | | | state so that it does not crash when adding... Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon dot net> * gst/videomixer/videomixer.c: (gst_videomixer_pad_set_property), (gst_videomixer_set_master_geometry), (gst_videomixer_pad_sink_setcaps), (gst_videomixer_collect_free), (gst_videomixer_reset), (gst_videomixer_init), (gst_videomixer_finalize), (gst_videomixer_request_new_pad), (gst_videomixer_release_pad), (gst_videomixer_collected), (gst_videomixer_change_state): Introduce some locking around the videomixer state so that it does not crash when adding/removing pads. Fixes #383043.
* gst/qtdemux/qtdemux.c: We don't support seeking in streaming mode, so don't ↵Tim-Philipp Müller2006-12-161-7/+33
| | | | | | | | | | | even try. 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.
* gst/effectv/gstquark.c: Add some NULL pointer checks (possibly related to ↵Tim-Philipp Müller2006-12-141-0/+6
| | | | | | | | | #385623). Original commit message from CVS: * gst/effectv/gstquark.c: (gst_quarktv_transform), (gst_quarktv_planetable_clear): Add some NULL pointer checks (possibly related to #385623).
* gst/qtdemux/qtdemux.c: Add AMR-WB to the list of supported formats.Wim Taymans2006-12-131-2/+10
| | | | | | | | 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.
* gst/: In streaming mode, if the first buffer we get doesn't have an offset, ↵Tim-Philipp Müller2006-12-122-1/+24
| | | | | | | | | | | | | | fix it up to be 0, otherwise trimming won... Original commit message from CVS: * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain_parse_tag), (gst_tag_demux_chain): * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): In streaming mode, if the first buffer we get doesn't have an offset, fix it up to be 0, otherwise trimming won't work later on and we'll be typefinding application/x-id3, which may result in decodebin plugging an endless number of id3demux elements as a consequence. Fixes #385031.
* gst/qtdemux/qtdemux.c: Fix non-working redirects from inetfilm.com (handle ↵Tim-Philipp Müller2006-12-111-3/+28
| | | | | | | | | 'alis' reference data type as well). Fixes... 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.
* gst/matroska/: Try harder to extract the framerate for video tracks ↵Tim-Philipp Müller2006-12-113-8/+24
| | | | | | | | | | | | | | | correctly and save it directly instead of convert... Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream), (gst_matroska_demux_video_caps): * gst/matroska/matroska-ids.c: (gst_matroska_track_init_video_context): * gst/matroska/matroska-ids.h: Try harder to extract the framerate for video tracks correctly and save it directly instead of converting it back and forth a few times. Mostly makes a difference for very small framerates (<1). Fixes #380199.
* gst/apetag/gstapedemux.c: We need to be able to read and parse any possible ↵Sebastian Dröge2006-12-091-1/+5
| | | | | | | | | | | | | | floating point string format ("1,234" or ... Original commit message from CVS: Patch by: Sebastian Dröge <mail at slomosnail de> * gst/apetag/gstapedemux.c: (ape_demux_parse_tags): We need to be able to read and parse any possible floating point string format ("1,234" or "1.234") irrespective of the current locale. g_strod() will parse the former only in certain locales though, so we really need to canonicalise the separator to '.' and then use g_ascii_strtod() to make sure we can parse either version at all times. Fixes #382982 for real.