platform/upstream/gst-plugins-good.git
11 years agortpmux: Add signals before stream lock and after unlocking
Laurent Glayal [Fri, 20 Feb 2009 18:30:49 +0000 (13:30 -0500)]
rtpmux: Add signals before stream lock and after unlocking

11 years agortpmux: Let ssrc through getcaps
Olivier Crête [Thu, 19 Feb 2009 01:18:46 +0000 (20:18 -0500)]
rtpmux: Let ssrc through getcaps

11 years agortpmux: Rename have_base to have_ts_base
Olivier Crête [Thu, 19 Feb 2009 00:58:58 +0000 (19:58 -0500)]
rtpmux: Rename have_base to have_ts_base

11 years agortpmux: Protect the seqnum with object lock in rtpmux
Olivier Crête [Wed, 18 Feb 2009 23:14:52 +0000 (18:14 -0500)]
rtpmux: Protect the seqnum with object lock in rtpmux

11 years agortpmux: Remove unused sink_ts_base
Olivier Crête [Wed, 18 Feb 2009 23:07:44 +0000 (18:07 -0500)]
rtpmux: Remove unused sink_ts_base

11 years agortpmux: Have getcaps to force the same clockrate on all pads
Olivier Crête [Wed, 18 Feb 2009 20:20:58 +0000 (15:20 -0500)]
rtpmux: Have getcaps to force the same clockrate on all pads

11 years agortpmux: Validate RTP data in RTP Mux
Olivier Crête [Wed, 18 Feb 2009 22:05:13 +0000 (17:05 -0500)]
rtpmux: Validate RTP data in RTP Mux

11 years agortpmux: Remove unused clock-rate property
Olivier Crête [Wed, 18 Feb 2009 19:16:00 +0000 (14:16 -0500)]
rtpmux: Remove unused clock-rate property

11 years agortpmux: Clarify locking in rtpdtmfmux
Olivier Crête [Wed, 18 Feb 2009 18:56:36 +0000 (13:56 -0500)]
rtpmux: Clarify locking in rtpdtmfmux

11 years agortpmux: Missing format parameter
Laurent Glayal [Wed, 18 Feb 2009 18:32:56 +0000 (13:32 -0500)]
rtpmux: Missing format parameter

11 years agortpmux: Update seqnum base in rtp muxer
Håvard Graff [Mon, 1 Dec 2008 22:55:22 +0000 (17:55 -0500)]
rtpmux: Update seqnum base in rtp muxer

With help from Wim

11 years agortpmux: Fix some more leaks
Håvard Graff [Mon, 1 Dec 2008 22:54:58 +0000 (17:54 -0500)]
rtpmux: Fix some more leaks

11 years agortpmux: Fix leak
Håvard Graff [Mon, 1 Dec 2008 22:48:29 +0000 (17:48 -0500)]
rtpmux: Fix leak

11 years agortpmux: Don't unref caps we don't know (thanks Wim)
Olivier Crête [Mon, 29 Sep 2008 19:03:05 +0000 (15:03 -0400)]
rtpmux: Don't unref caps we don't know (thanks Wim)

11 years agortpmux: Put per-buffer debug at level LOG
Olivier Crête [Tue, 12 Aug 2008 16:48:02 +0000 (12:48 -0400)]
rtpmux: Put per-buffer debug at level LOG

11 years agortpmux: Make debug print accurate
Olivier Crête [Tue, 12 Aug 2008 16:47:14 +0000 (12:47 -0400)]
rtpmux: Make debug print accurate

11 years agortpmux: Set our caps on the buffers
Olivier Crête [Tue, 12 Aug 2008 16:46:23 +0000 (12:46 -0400)]
rtpmux: Set our caps on the buffers

11 years agortpmux: Take the clock-base stored from the last setcaps
Olivier Crête [Tue, 12 Aug 2008 16:46:07 +0000 (12:46 -0400)]
rtpmux: Take the clock-base stored from the last setcaps

11 years agortpmux: Store the clock-base on setcaps
Olivier Crête [Tue, 12 Aug 2008 16:41:59 +0000 (12:41 -0400)]
rtpmux: Store the clock-base on setcaps

11 years agortpmux: Add padprivate to the request pads
Olivier Crête [Tue, 12 Aug 2008 16:30:52 +0000 (12:30 -0400)]
rtpmux: Add padprivate to the request pads

11 years agortpmux: Make indentation more correct
Olivier Crête [Tue, 12 Aug 2008 01:20:06 +0000 (21:20 -0400)]
rtpmux: Make indentation more correct

11 years agortpmux: Fix typo
Olivier Crête [Tue, 12 Aug 2008 01:05:34 +0000 (21:05 -0400)]
rtpmux: Fix typo

11 years agortpmux: Set seqnum-base and clock-base in caps from rtpmuxer
Olivier Crête [Tue, 12 Aug 2008 01:03:22 +0000 (21:03 -0400)]
rtpmux: Set seqnum-base and clock-base in caps from rtpmuxer

11 years agortpmux: more debug
Zeeshan Ali [Wed, 15 Aug 2007 13:50:38 +0000 (13:50 +0000)]
rtpmux: more debug

20070815135038-f3f1e-9c7a5490a525c6e8753cb1b8c03354df99132b5c.gz

11 years agortpmux: missing comment
Youness Alaoui [Mon, 20 Aug 2007 18:50:32 +0000 (18:50 +0000)]
rtpmux: missing comment

20070820185032-4f0f6-0ab67b6ac40dd4e35a8fe53f3cb6daff65ce43b9.gz

11 years agortpmux: Make buffer writable before writing into it
Olivier Crete [Thu, 12 Jul 2007 19:53:36 +0000 (19:53 +0000)]
rtpmux: Make buffer writable before writing into it

20070712195336-3e2dc-91a5fb797cfa4919d4e2f9a728c6d6fbd3b83d93.gz

11 years agortpmux: Set pads active when adding them to a potentially running element
Olivier Crete [Fri, 6 Jul 2007 20:24:59 +0000 (20:24 +0000)]
rtpmux: Set pads active when adding them to a potentially running element

20070706202459-3e2dc-a3731f885725594def0a7be997fc7b3a739ee967.gz

11 years agortpmux: Fix multiple ref leaks (patches by SP GLE)
Olivier Crete [Thu, 7 Jun 2007 12:01:21 +0000 (12:01 +0000)]
rtpmux: Fix multiple ref leaks (patches by SP GLE)

20070607120121-3e2dc-061e9ef7a47b1b84fa8f8092f4b8bcc0e6db8c8c.gz

11 years agortpmux: send event to all src pads
Zeeshan Ali [Mon, 28 May 2007 15:25:05 +0000 (15:25 +0000)]
rtpmux: send event to all src pads

20070528152505-f3f1e-039216c73dc93f64c49962c77a0253cb9cfec4d3.gz

11 years agortpmux: print a warning if receive an error iterating sinkpads
Zeeshan Ali [Mon, 28 May 2007 12:37:49 +0000 (12:37 +0000)]
rtpmux: print a warning if receive an error iterating sinkpads

20070528123749-f3f1e-4c1eb3f511b5610143610a65a94d117f2c3d2580.gz

11 years agortpmux: deal with all the gst_iterator_next() return values
Zeeshan Ali [Mon, 28 May 2007 12:28:08 +0000 (12:28 +0000)]
rtpmux: deal with all the gst_iterator_next() return values

20070528122808-f3f1e-d301644c3be7633ec6dc5e28596e9346d2da6a50.gz

11 years agortpmux: Return correct value from the event handler
Zeeshan Ali [Fri, 25 May 2007 12:31:16 +0000 (12:31 +0000)]
rtpmux: Return correct value from the event handler

20070525123116-f3f1e-131b37b5f4521618fe2f1320409a47e65b35ad2d.gz

11 years agortpmux: Ville's original patch to fix the traversal of dtmf event
Zeeshan Ali [Fri, 25 May 2007 10:27:09 +0000 (10:27 +0000)]
rtpmux: Ville's original patch to fix the traversal of dtmf event

20070525102709-f3f1e-6c41d1ef934068a4f4e810e7e981b420075b0c98.gz

11 years agortpmux: Set the correct ts-offset on the get_prop value
zeeshan.ali@nokia.com [Thu, 29 Mar 2007 13:52:50 +0000 (13:52 +0000)]
rtpmux: Set the correct ts-offset on the get_prop value

20070329135250-65035-a43e222d91d57c0a61cb3287586aaa29abf78674.gz

11 years agortpmux: Refactorize state_change
zeeshan.ali@nokia.com [Thu, 29 Mar 2007 13:52:23 +0000 (13:52 +0000)]
rtpmux: Refactorize state_change

20070329135223-65035-23a0107b2e397710f035c6e88cc0e49b65bb4d5d.gz

11 years agortpmux: set SSRC on the packets
zeeshan.ali@nokia.com [Thu, 29 Mar 2007 13:36:22 +0000 (13:36 +0000)]
rtpmux: set SSRC on the packets

20070329133622-65035-1be6e0aa85a71389f7d257b9cd3e13a73d6b745b.gz

11 years agortpmux: Code clean-up and more debug output
zeeshan.ali@nokia.com [Thu, 29 Mar 2007 13:19:36 +0000 (13:19 +0000)]
rtpmux: Code clean-up and more debug output

20070329131936-65035-9d499e209e0d7a409c3aa0d1040778babf076179.gz

11 years agortpmux: Use own clock-base
zeeshan.ali@nokia.com [Wed, 28 Mar 2007 11:22:19 +0000 (11:22 +0000)]
rtpmux: Use own clock-base

20070328112219-65035-1ba5fefbc65059e9b0c860528a31062ceb6a7331.gz

11 years agortpmux: Only accept RTP streams that have the same clock-rate
zeeshan.ali@nokia.com [Fri, 23 Mar 2007 16:31:39 +0000 (16:31 +0000)]
rtpmux: Only accept RTP streams that have the same clock-rate

20070323163139-65035-fc0b17b0b8a7a041f48994c4f26e96568168bf95.gz

11 years agortpmux: Some more code-cleanups
zeeshan.ali@nokia.com [Thu, 22 Mar 2007 16:15:52 +0000 (16:15 +0000)]
rtpmux: Some more code-cleanups

20070322161552-65035-bda96165e146b4f1d5fea1cc9576a7ab3abebc9e.gz

11 years agortpmux: return newpad instead of NULL and warn if failed to create a pad
zeeshan.ali@nokia.com [Thu, 22 Mar 2007 15:42:51 +0000 (15:42 +0000)]
rtpmux: return newpad instead of NULL and warn if failed to create a pad

20070322154251-65035-cdb6651e61c2eb0205cc8c24693b43f98a2da718.gz

11 years agortpmux: Refactorize the RTPMux code
zeeshan.ali@nokia.com [Thu, 22 Mar 2007 12:41:32 +0000 (12:41 +0000)]
rtpmux: Refactorize the RTPMux code

20070322124132-65035-0a3278147546e33f687097a43b775b3f6aa99f93.gz

11 years agortpmux: Some more doc fixing
zeeshan.ali@nokia.com [Thu, 22 Mar 2007 12:14:53 +0000 (12:14 +0000)]
rtpmux: Some more doc fixing

20070322121453-65035-12d602272217b51bd97df4e5790024c399622dd3.gz

11 years agortpmux: More Refactoring
zeeshan.ali@nokia.com [Thu, 22 Mar 2007 11:32:28 +0000 (11:32 +0000)]
rtpmux: More Refactoring

20070322113228-65035-bae34a79599e7de5293ed77b022361ccff822bb9.gz

11 years agortpmux: More documentation
zeeshan.ali@nokia.com [Thu, 22 Mar 2007 11:31:54 +0000 (11:31 +0000)]
rtpmux: More documentation

20070322113154-65035-624850541a5b5fc3df231204be5a83d07239db28.gz

11 years agortpmux: Refactor the event handler function
zeeshan.ali@nokia.com [Wed, 21 Mar 2007 16:33:11 +0000 (16:33 +0000)]
rtpmux: Refactor the event handler function

20070321163311-65035-987e7f25d1ab5335b79f44b277abf15e4e37d317.gz

11 years agortpmux: Add RTPDTMFMux element
zeeshan.ali@nokia.com [Wed, 21 Mar 2007 14:52:44 +0000 (14:52 +0000)]
rtpmux: Add RTPDTMFMux element

20070321145244-65035-9a01390b0dee3398e53199a1fa1d9352004f338e.gz

11 years agortpmux: Remove DTMF-specific code from RTP muxer and make it extendable
zeeshan.ali@nokia.com [Wed, 21 Mar 2007 12:31:49 +0000 (12:31 +0000)]
rtpmux: Remove DTMF-specific code from RTP muxer and make it extendable

20070321123149-65035-b8a8f55ff78eed8cbb0042e827885edfc5438242.gz

11 years agortpmux: Put more helpful description
zeeshan.ali@nokia.com [Tue, 20 Mar 2007 12:05:24 +0000 (12:05 +0000)]
rtpmux: Put more helpful description

20070320120524-65035-db27a7cf6307b511aeb3d996d26e790e367a7bad.gz

11 years agortpmux: remove the (commented-out) code for blocking the pads
zeeshan.ali@nokia.com [Fri, 16 Mar 2007 15:16:41 +0000 (15:16 +0000)]
rtpmux: remove the (commented-out) code for blocking the pads

20070316151641-65035-0123af387951f88594797c722e882cfe70240aff.gz

11 years agortpmux: Drop buffers instead of blocking the sinkpads
zeeshan.ali@nokia.com [Fri, 16 Mar 2007 13:14:44 +0000 (13:14 +0000)]
rtpmux: Drop buffers instead of blocking the sinkpads

20070316131444-65035-9c1345ad96108881f455d4b55a7f623cd302d0ed.gz

11 years agortpmux: Implement stream locking, needed for DTMF
zeeshan.ali@nokia.com [Wed, 14 Mar 2007 17:16:18 +0000 (17:16 +0000)]
rtpmux: Implement stream locking, needed for DTMF

20070314171618-65035-e4d24b1606ce0a3e2e739f01833f61e4d7555eac.gz

11 years agortpmux: use GST_*_OBJECT instead of g_*
zeeshan.ali@nokia.com [Wed, 14 Mar 2007 10:20:58 +0000 (10:20 +0000)]
rtpmux: use GST_*_OBJECT instead of g_*

20070314102058-65035-e2442888f2e3e5a3a7659ad7954a4fba34749ce2.gz

11 years agortpmux: No need to manage pads, parent does that for us
zeeshan.ali@nokia.com [Wed, 14 Mar 2007 10:18:54 +0000 (10:18 +0000)]
rtpmux: No need to manage pads, parent does that for us

20070314101854-65035-ef5f4abde227102a1128835ab325905eae4c3726.gz

11 years agortpmux: Fix copyright header
zeenix@gmail.com [Wed, 14 Mar 2007 09:03:58 +0000 (09:03 +0000)]
rtpmux: Fix copyright header

20070314090358-d014a-3a6d3eeeaaf5cb8ca3bca6a33e99a551f598bd48.gz

11 years agortpmux: The first implementation of RTP muxer
zeeshan.ali@nokia.com [Wed, 7 Mar 2007 08:53:07 +0000 (08:53 +0000)]
rtpmux: The first implementation of RTP muxer

20070307085307-65035-833402413f99cb3f8be4883e92bad4c8722510c9.gz

11 years agoscaletempo: no need for a private struct
Tim-Philipp Müller [Sat, 15 Dec 2012 21:27:01 +0000 (21:27 +0000)]
scaletempo: no need for a private struct

11 years agodocs: update plugin docs
Tim-Philipp Müller [Fri, 14 Dec 2012 15:13:31 +0000 (15:13 +0000)]
docs: update plugin docs

11 years agodocs: add scaletempo to docs
Tim-Philipp Müller [Fri, 14 Dec 2012 15:13:19 +0000 (15:13 +0000)]
docs: add scaletempo to docs

11 years agoaudiofx: move scaletempo element from -bad
Tim-Philipp Müller [Tue, 6 Nov 2012 13:36:39 +0000 (13:36 +0000)]
audiofx: move scaletempo element from -bad

https://bugzilla.gnome.org/show_bug.cgi?id=687262

11 years agoscaletempo: Fix event leak
Sebastian Dröge [Tue, 23 Oct 2012 12:33:21 +0000 (14:33 +0200)]
scaletempo: Fix event leak

11 years agoscaletempo: Fix timestamp tracking
Sebastian Dröge [Tue, 23 Oct 2012 12:32:24 +0000 (14:32 +0200)]
scaletempo: Fix timestamp tracking

11 years agoscaletempo: Implement LATENCY query
Sebastian Dröge [Tue, 23 Oct 2012 12:06:37 +0000 (14:06 +0200)]
scaletempo: Implement LATENCY query

11 years agoscaletempo: Store instance private data in the instance struct
Sebastian Dröge [Tue, 23 Oct 2012 11:39:17 +0000 (13:39 +0200)]
scaletempo: Store instance private data in the instance struct

Getting it over and over again via G_TYPE_INSTANCE_GET_PRIVATE()
is really slow.

11 years agoscaletempo: use gst_element_class_set_static_metadata()
Tim-Philipp Müller [Wed, 17 Oct 2012 16:34:26 +0000 (17:34 +0100)]
scaletempo: use gst_element_class_set_static_metadata()

where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.

11 years agoscaletempo: replace gst_element_class_set_details_simple with gst_element_class_set_m...
Mark Nauwelaerts [Fri, 14 Sep 2012 15:08:49 +0000 (17:08 +0200)]
scaletempo: replace gst_element_class_set_details_simple with gst_element_class_set_metadata

11 years agoscaletempo: ffmpegcolorspace is no more
Wim Taymans [Fri, 14 Sep 2012 14:45:34 +0000 (16:45 +0200)]
scaletempo: ffmpegcolorspace is no more

11 years agoscaletempo: Update for GST_PLUGIN_DEFINE() API changes
Sebastian Dröge [Thu, 5 Apr 2012 16:02:56 +0000 (18:02 +0200)]
scaletempo: Update for GST_PLUGIN_DEFINE() API changes

11 years agoscaletempo: port to 0.11
Mark Nauwelaerts [Sun, 18 Mar 2012 17:32:55 +0000 (18:32 +0100)]
scaletempo: port to 0.11

11 years agoscaletempo: improve the docs
Stefan Kost [Thu, 7 Jul 2011 17:52:50 +0000 (10:52 -0700)]
scaletempo: improve the docs

Fix the syntax, add more explanation and xref the properties.

11 years agoscaletempo: Correctly handle newsegment events with stop==-1
Chris E Jones [Tue, 22 Mar 2011 12:46:42 +0000 (13:46 +0100)]
scaletempo: Correctly handle newsegment events with stop==-1

Fixes bug #645420.

11 years agoscaletempo: add missing G_PARAM_STATIC_STRINGS flags
Stefan Kost [Tue, 19 Oct 2010 10:43:14 +0000 (13:43 +0300)]
scaletempo: add missing G_PARAM_STATIC_STRINGS flags

Canonicalize property names as needed.

11 years agoscaletempo: gst_element_class_set_details => gst_element_class_set_details_simple
Benjamin Otte [Thu, 18 Mar 2010 16:30:26 +0000 (17:30 +0100)]
scaletempo: gst_element_class_set_details => gst_element_class_set_details_simple

11 years agoscaletempo: properly update new segments
Thiago Santos [Thu, 5 Nov 2009 16:40:38 +0000 (13:40 -0300)]
scaletempo: properly update new segments

Scaletempo was missing an update of 'stop' in
new segment parameters when pushing it downstream,
which caused files to end earlier when rate < 1.

Fixes #599903

Based on patch by: Bastian Hecht <hechtb@gmail.com>

11 years agoscaletempo: Explicitely cast to signed integers to fix a segfault
Maximilian Högner [Sun, 14 Jun 2009 18:00:51 +0000 (20:00 +0200)]
scaletempo: Explicitely cast to signed integers to fix a segfault

Fixes bug #585660.

11 years agoscaletempo: Do not use void pointer arithmetic.
Michael Smith [Fri, 13 Feb 2009 20:18:48 +0000 (12:18 -0800)]
scaletempo: Do not use void pointer arithmetic.

11 years agoscaletempo: Return the result of parent_class->event()
Stefan Kost [Thu, 30 Oct 2008 12:13:18 +0000 (12:13 +0000)]
scaletempo: Return the result of parent_class->event()

Original commit message from CVS:
* gst/audiofx/gstscaletempo.c:
Return the result of parent_class->event().

11 years agoAdd scaletempo plugin, which allows to scale the speed of audio without changing...
Rov Juvano [Sun, 31 Aug 2008 12:20:33 +0000 (12:20 +0000)]
Add scaletempo plugin, which allows to scale the speed of audio without changing the pitch by handling seeks with a r...

Original commit message from CVS:
Patch by: Rov Juvano <rovjuvano at users dot sourceforge dot net>
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/inspect/plugin-scaletempo.xml:
* examples/scaletempo/Makefile.am:
* examples/scaletempo/demo-gui.c: (pop_status_bar),
(status_bar_printf), (demo_gui_seek_bar_format), (update_position),
(demo_gui_seek_bar_change), (demo_gui_do_change_rate),
(demo_gui_do_set_rate), (demo_gui_do_rate_entered),
(demo_gui_do_toggle_advanced), (demo_gui_do_toggle_disabled),
(demo_gui_do_seek), (demo_gui_do_play), (demo_gui_do_pause),
(demo_gui_do_play_pause), (demo_gui_do_open_file),
(demo_gui_do_playlist_prev), (demo_gui_do_playlist_next),
(demo_gui_do_about_dialog), (demo_gui_do_quit),
(demo_gui_request_set_stride), (demo_gui_request_set_overlap),
(demo_gui_request_set_search), (demo_gui_rate_changed),
(demo_gui_playing_started), (demo_gui_playing_paused),
(demo_gui_playing_ended), (demo_gui_player_errored),
(demo_gui_stride_changed), (demo_gui_overlap_changed),
(demo_gui_search_changed), (demo_gui_set_player_func),
(demo_gui_set_playlist_func), (build_gvalue_array),
(create_action), (demo_gui_show_func), (demo_gui_set_player),
(demo_gui_set_playlist), (demo_gui_show), (demo_gui_get_property),
(demo_gui_set_property), (demo_gui_init), (demo_gui_class_init),
(demo_gui_get_type):
* examples/scaletempo/demo-gui.h:
* examples/scaletempo/demo-main.c: (handle_error_message),
(handle_quit), (main):
* examples/scaletempo/demo-player.c: (no_pipeline),
(demo_player_event_listener), (demo_player_state_changed_cb),
(demo_player_eos_cb), (demo_player_build_pipeline), (_set_rate),
(demo_player_scale_rate_func), (demo_player_set_rate_func),
(_set_state_and_wait), (demo_player_load_uri_func),
(demo_player_play_func), (demo_player_pause_func), (_seek_to),
(demo_player_seek_by_func), (demo_player_seek_to_func),
(demo_player_get_position_func), (demo_player_get_duration_func),
(demo_player_scale_rate), (demo_player_set_rate),
(demo_player_load_uri), (demo_player_play), (demo_player_pause),
(demo_player_seek_by), (demo_player_seek_to),
(demo_player_get_position), (demo_player_get_duration),
(demo_player_get_property), (demo_player_set_property),
(demo_player_init), (demo_player_class_init),
(demo_player_get_type):
* examples/scaletempo/demo-player.h:
* gst/audiofx/Makefile.am:
* gst/audiofx/gstscaletempo.c: (best_overlap_offset_float),
(best_overlap_offset_s16), (output_overlap_float),
(output_overlap_s16), (fill_queue), (reinit_buffers),
(gst_scaletempo_transform), (gst_scaletempo_transform_size),
(gst_scaletempo_sink_event), (gst_scaletempo_set_caps),
(gst_scaletempo_get_property), (gst_scaletempo_set_property),
(gst_scaletempo_base_init), (gst_scaletempo_class_init),
(gst_scaletempo_init):
* gst/audiofx/gstscaletempo.h:
* gst/audiofx/gstscaletempoplugin.c: (plugin_init):
Add scaletempo plugin, which allows to scale the speed of audio without
changing the pitch by handling seeks with a rate!=1.0.
Integrate it into the docs and add the example application for it.
Fixes bug #537700.

11 years agocheck: add (but disable) more rtp jitterbuffer tests
Wim Taymans [Thu, 13 Dec 2012 11:36:20 +0000 (12:36 +0100)]
check: add (but disable) more rtp jitterbuffer tests

Tests need to be ported to 1.0 before they can be enabled but added here so they
don't get forgotten.

See https://bugzilla.gnome.org/show_bug.cgi?id=667838

11 years agojitterbuffer: bundle together late lost-events
Havard Graff [Fri, 13 Jan 2012 00:11:31 +0000 (01:11 +0100)]
jitterbuffer: bundle together late lost-events

The scenario where you have a gap in a steady flow of packets of
say 10 seconds (500 packets of with duration of 20ms), the jitterbuffer
will idle up until it receives the first buffer after the gap, but will
then go on to produce 499 lost-events, to "cover up" the gap.

Now this is obviously wrong, since the last possible time for the earliest
lost-events to be played out has obviously expired, but the fact that
the jitterbuffer has a "length", represented with its own latency combined
with the total latency downstream, allows for covering up at least some
of this gap.

So in the case of the "length" being 200ms, while having received packet
500, the jitterbuffer should still create a timeout for packet 491, which
will have its time expire at 10,02 seconds, specially since it might
actually arrive in time! But obviously, waiting for packet 100, that had
its time expire at 2 seconds, (remembering that the current time is 10)
is useless...

The patch will create one "big" lost-event for the first 490 packets,
and then go on to create single ones if they can reach their
playout deadline.

See https://bugzilla.gnome.org/show_bug.cgi?id=667838

11 years agortspsrc: fix TCP reconnect
Wim Taymans [Thu, 13 Dec 2012 08:27:14 +0000 (09:27 +0100)]
rtspsrc: fix TCP reconnect

Ignore other commands when reconnecting, otherwise the loop function would pause
and the reconnection would not happen. Continue looping after doing a reconnect
so that we have a chance to actually read the new data.

11 years agodirectsound, waveform: fix compilation errors caused by circular includes
Руслан Ижбулатов [Wed, 12 Dec 2012 21:02:34 +0000 (01:02 +0400)]
directsound, waveform: fix compilation errors caused by circular includes

https://bugzilla.gnome.org/show_bug.cgi?id=690124

11 years agoext/sys: Fix some compilation errors caused by circular includes
Sebastian Dröge [Wed, 12 Dec 2012 17:35:04 +0000 (17:35 +0000)]
ext/sys: Fix some compilation errors caused by circular includes

11 years agodeinterleave: properly set srcpad channel position
Philippe Normand [Wed, 12 Dec 2012 11:07:34 +0000 (12:07 +0100)]
deinterleave: properly set srcpad channel position

The src pad caps always describe a single audio channel so only the
first position matters if deinterleave is configured to keep channel
positions in its src pads.

11 years agortspsrc: timeout on udpsrc is in nanoseconds
Wim Taymans [Wed, 12 Dec 2012 10:09:42 +0000 (11:09 +0100)]
rtspsrc: timeout on udpsrc is in nanoseconds

11 years agoudpsrc: improve timeouts
Wim Taymans [Wed, 12 Dec 2012 10:08:13 +0000 (11:08 +0100)]
udpsrc: improve timeouts

Make it possible to set the timeout after we went to the READY state by using
the timeout when checking the condition. This also makes it possible to set the
timeout with a higher granularity than seconds.

11 years agodeinterlace: add support for strides
Wim Taymans [Tue, 11 Dec 2012 12:00:46 +0000 (13:00 +0100)]
deinterlace: add support for strides

Implement stride support correctly by taking it from the GstVideoFrame.
Propose a bufferpool upstream when not operating in passthrough.

11 years agortspsrc: do not change state to PLAYING if currently chaning state
Aleix Conchillo Flaque [Thu, 27 Sep 2012 19:17:58 +0000 (12:17 -0700)]
rtspsrc: do not change state to PLAYING if currently chaning state

* gst/rtsp/gstrtspsrc.c (gst_rtspsrc_play): state change might be
  happening in the application thread, so we don't change the state to
  PLAYING in the gstrtspsrc thread unless it is safe.

  A specific case is when chaning the state to NULL from the application
  thread. This will synchronously try to stop the task (with the element
  state lock acquired), but we will try a gst_element_set_state from
  gstrtspsrc thread which will block on the element state lock causing a
  deadlock.

  https://bugzilla.gnome.org/show_bug.cgi?id=684312

11 years agoosxvideosink: Fix resizing the Cocoa window on receiving new caps
Alexey Chernov [Mon, 10 Dec 2012 11:44:26 +0000 (11:44 +0000)]
osxvideosink: Fix resizing the Cocoa window on receiving new caps

Fixes bug #689732.

11 years agov4l2src: link against -lrt for clock_gettime()
Tim-Philipp Müller [Fri, 30 Nov 2012 20:37:47 +0000 (20:37 +0000)]
v4l2src: link against -lrt for clock_gettime()

Need to explicitly link against -lrt for clock_gettime(), which
we don't get in the libs any more, because core moved the
gmodule-no-export-2.0 bit into Requires.Private.

Not required for newer glibc, but for older ones, so check for that.

11 years agoshout2send: accept audio/webm as well as video/webm
Tim-Philipp Müller [Fri, 30 Nov 2012 17:22:59 +0000 (17:22 +0000)]
shout2send: accept audio/webm as well as video/webm

https://bugzilla.gnome.org/show_bug.cgi?id=689336

11 years agowebmux: fix linking with shout2send element
Tim-Philipp Müller [Fri, 30 Nov 2012 17:20:18 +0000 (17:20 +0000)]
webmux: fix linking with shout2send element

Shout2send only accepts webm format, not matroska, but due
to a bug in matroskamux, webmmux's source pad is also created
with the matroska source pad template as pad template, which
makes the link function think it can't link webmmux to shout2send.

Also add unit test.

https://bugzilla.gnome.org/show_bug.cgi?id=689336

11 years agortspsrc: use new option parser function
Wim Taymans [Tue, 27 Nov 2012 10:13:37 +0000 (11:13 +0100)]
rtspsrc: use new option parser function

11 years agolaw: fix accidental file permissions change
Tim-Philipp Müller [Mon, 26 Nov 2012 15:17:13 +0000 (15:17 +0000)]
law: fix accidental file permissions change

https://bugzilla.gnome.org/show_bug.cgi?id=687469

11 years agov4l2: remove unused define
Tim-Philipp Müller [Sun, 25 Nov 2012 16:05:11 +0000 (16:05 +0000)]
v4l2: remove unused define

11 years agoqtdemux: avoid criticals if unknown fourcc has space at beginning or end
Tim-Philipp Müller [Sun, 25 Nov 2012 14:16:09 +0000 (14:16 +0000)]
qtdemux: avoid criticals if unknown fourcc has space at beginning or end

https://bugzilla.gnome.org/show_bug.cgi?id=682936

11 years agovideobox: fix border filling for planar YUV formats
Tim-Philipp Müller [Sat, 24 Nov 2012 19:32:51 +0000 (19:32 +0000)]
videobox: fix border filling for planar YUV formats

We would get a green border instead of a black one, for
example.

https://bugzilla.gnome.org/show_bug.cgi?id=684991

11 years agomulaw: const-ify some arrays
Tim-Philipp Müller [Sat, 24 Nov 2012 14:27:33 +0000 (14:27 +0000)]
mulaw: const-ify some arrays

11 years agomulawdec: fix integer overrun
Roland Krikava [Fri, 2 Nov 2012 16:38:44 +0000 (12:38 -0400)]
mulawdec: fix integer overrun

There might be more than 65535 samples in a chunk of data.

https://bugzilla.gnome.org/show_bug.cgi?id=687469

11 years agortspsrc: pause the task instead of spinning
Wim Taymans [Thu, 22 Nov 2012 10:34:31 +0000 (11:34 +0100)]
rtspsrc: pause the task instead of spinning

Actually pause the loop task instead of spinning forever.