zeeshan.ali@nokia.com
97ff54dce7
rtpmux: Remove DTMF-specific code from RTP muxer and make it extendable
...
20070321123149-65035-b8a8f55ff78eed8cbb0042e827885edfc5438242.gz
2012-12-16 16:29:16 +00:00
zeeshan.ali@nokia.com
1a227ac7e5
rtpmux: Put more helpful description
...
20070320120524-65035-db27a7cf6307b511aeb3d996d26e790e367a7bad.gz
2012-12-16 16:29:13 +00:00
zeeshan.ali@nokia.com
d876c0d8cc
rtpmux: remove the (commented-out) code for blocking the pads
...
20070316151641-65035-0123af387951f88594797c722e882cfe70240aff.gz
2012-12-16 16:29:10 +00:00
zeeshan.ali@nokia.com
209228c44d
rtpmux: Drop buffers instead of blocking the sinkpads
...
20070316131444-65035-9c1345ad96108881f455d4b55a7f623cd302d0ed.gz
2012-12-16 16:29:05 +00:00
zeeshan.ali@nokia.com
795822ffa5
rtpmux: Implement stream locking, needed for DTMF
...
20070314171618-65035-e4d24b1606ce0a3e2e739f01833f61e4d7555eac.gz
2012-12-16 16:29:02 +00:00
zeeshan.ali@nokia.com
fd209faa56
rtpmux: use GST_*_OBJECT instead of g_*
...
20070314102058-65035-e2442888f2e3e5a3a7659ad7954a4fba34749ce2.gz
2012-12-16 16:28:58 +00:00
zeeshan.ali@nokia.com
b0208cb0a6
rtpmux: No need to manage pads, parent does that for us
...
20070314101854-65035-ef5f4abde227102a1128835ab325905eae4c3726.gz
2012-12-16 16:28:55 +00:00
zeenix@gmail.com
74e9071dad
rtpmux: Fix copyright header
...
20070314090358-d014a-3a6d3eeeaaf5cb8ca3bca6a33e99a551f598bd48.gz
2012-12-16 16:28:51 +00:00
zeeshan.ali@nokia.com
3c4cdf1541
rtpmux: The first implementation of RTP muxer
...
20070307085307-65035-833402413f99cb3f8be4883e92bad4c8722510c9.gz
2012-12-16 16:28:41 +00:00
Tim-Philipp Müller
b19122bac8
scaletempo: no need for a private struct
2012-12-15 21:27:01 +00:00
Tim-Philipp Müller
61913ab7b4
audiofx: move scaletempo element from -bad
...
https://bugzilla.gnome.org/show_bug.cgi?id=687262
2012-12-14 13:16:17 +00:00
Sebastian Dröge
314765c294
scaletempo: Fix event leak
2012-12-14 13:16:17 +00:00
Sebastian Dröge
490e408991
scaletempo: Fix timestamp tracking
2012-12-14 13:16:17 +00:00
Sebastian Dröge
502eb8d1b7
scaletempo: Implement LATENCY query
2012-12-14 13:16:17 +00:00
Sebastian Dröge
c7589817cb
scaletempo: Store instance private data in the instance struct
...
Getting it over and over again via G_TYPE_INSTANCE_GET_PRIVATE()
is really slow.
2012-12-14 13:16:17 +00:00
Tim-Philipp Müller
e552bd484f
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.
2012-12-14 13:16:17 +00:00
Mark Nauwelaerts
d2dd91ac47
scaletempo: replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-12-14 13:16:17 +00:00
Wim Taymans
cb1743d578
scaletempo: ffmpegcolorspace is no more
2012-12-14 13:16:17 +00:00
Sebastian Dröge
93e1091d7f
scaletempo: Update for GST_PLUGIN_DEFINE() API changes
2012-12-14 13:16:17 +00:00
Mark Nauwelaerts
3286cdd542
scaletempo: port to 0.11
2012-12-14 13:16:16 +00:00
Stefan Kost
62d780cd51
scaletempo: improve the docs
...
Fix the syntax, add more explanation and xref the properties.
2012-12-14 13:16:16 +00:00
Chris E Jones
caf2b6cb5c
scaletempo: Correctly handle newsegment events with stop==-1
...
Fixes bug #645420 .
2012-12-14 13:16:16 +00:00
Stefan Kost
6d54058982
scaletempo: add missing G_PARAM_STATIC_STRINGS flags
...
Canonicalize property names as needed.
2012-12-14 13:16:16 +00:00
Benjamin Otte
38bc2dfb4a
scaletempo: gst_element_class_set_details => gst_element_class_set_details_simple
2012-12-14 13:16:16 +00:00
Thiago Santos
2d72ec153a
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>
2012-12-14 13:16:16 +00:00
Maximilian Högner
2fe7a97f1c
scaletempo: Explicitely cast to signed integers to fix a segfault
...
Fixes bug #585660 .
2012-12-14 13:16:16 +00:00
Michael Smith
1b1f6f56d6
scaletempo: Do not use void pointer arithmetic.
2012-12-14 13:16:16 +00:00
Stefan Kost
9284c85b33
scaletempo: Return the result of parent_class->event()
...
Original commit message from CVS:
* gst/audiofx/gstscaletempo.c:
Return the result of parent_class->event().
2012-12-14 13:16:16 +00:00
Rov Juvano
43e79f7769
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 .
2012-12-14 13:16:15 +00:00
Havard Graff
9c94f1187c
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
2012-12-13 12:00:43 +01:00
Wim Taymans
a858bf46db
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.
2012-12-13 09:30:59 +01:00
Philippe Normand
a8fa9f2b47
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.
2012-12-12 11:20:56 +00:00
Wim Taymans
b1dc816772
rtspsrc: timeout on udpsrc is in nanoseconds
2012-12-12 11:09:42 +01:00
Wim Taymans
32bd981303
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.
2012-12-12 11:08:13 +01:00
Wim Taymans
abd7e33db6
deinterlace: add support for strides
...
Implement stride support correctly by taking it from the GstVideoFrame.
Propose a bufferpool upstream when not operating in passthrough.
2012-12-11 13:00:46 +01:00
Aleix Conchillo Flaque
3503aef946
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
2012-12-10 15:13:22 +01:00
Tim-Philipp Müller
672ab8fb5b
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
2012-11-30 17:22:34 +00:00
Wim Taymans
64cdbb77a9
rtspsrc: use new option parser function
2012-11-27 11:13:37 +01:00
Tim-Philipp Müller
5dee61a8d5
law: fix accidental file permissions change
...
https://bugzilla.gnome.org/show_bug.cgi?id=687469
2012-11-26 15:17:13 +00:00
Tim-Philipp Müller
314efb684b
qtdemux: avoid criticals if unknown fourcc has space at beginning or end
...
https://bugzilla.gnome.org/show_bug.cgi?id=682936
2012-11-25 14:16:09 +00:00
Tim-Philipp Müller
efaa80fbc6
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
2012-11-24 19:32:51 +00:00
Tim-Philipp Müller
ef6c16a32e
mulaw: const-ify some arrays
2012-11-24 14:27:33 +00:00
Roland Krikava
3be45f7022
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
2012-11-24 14:24:41 +00:00
Wim Taymans
5d0507c09e
rtspsrc: pause the task instead of spinning
...
Actually pause the loop task instead of spinning forever.
2012-11-22 11:34:31 +01:00
Joshua M. Doe
fe9fb8d8a7
videoflip: Add gray 8/16 support
2012-11-20 12:49:49 +01:00
Wim Taymans
c28bfa8902
rtspsrc: handle segment event
...
Make a segment event when we send a new range header to a client (first PLAY
request or after a seek). Send the segment event in interleaved mode.
Clean the segment event on cleanup
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=688382
2012-11-16 15:38:29 +01:00
Wim Taymans
bd91bd3193
rtspsrc: fix check for active streams
...
A stream can be active without a srcpad yet and we want to send
events on those streams as well.
2012-11-16 15:22:46 +01:00
Wim Taymans
11cf4d4fd3
rtspsrc: create and add pads outside of lock
...
Create and add the ghostpad for the new stream outside of the lock because it
is not needed and causes deadlocks.
2012-11-16 13:33:44 +01:00
Aleix Conchillo Flaque
6c855edf03
rtspsrc: allow client to disable reconnection
...
* gst/rtsp/gstrtspsrc.[ch]: added new "udp-reconnect" property. Before,
rtspsrc always tried to reconnect to the server when the RTSP
connection was closed by the server. This property lets the user
decide whether it wants rtspsrc to reconnect or not.
https://bugzilla.gnome.org/show_bug.cgi?id=683912
2012-11-16 12:55:10 +01:00
Wim Taymans
e2a4d28c1f
rtspsrc: clear variables before retrying
...
Else we might unref an old udpsrc twice in cleanup.
2012-11-16 12:17:37 +01:00