Zeeshan Ali
baa48dc6bc
rtpmux: deal with all the gst_iterator_next() return values
...
20070528122808-f3f1e-d301644c3be7633ec6dc5e28596e9346d2da6a50.gz
2012-12-16 16:30:12 +00:00
Zeeshan Ali
de40874670
rtpmux: Return correct value from the event handler
...
20070525123116-f3f1e-131b37b5f4521618fe2f1320409a47e65b35ad2d.gz
2012-12-16 16:30:08 +00:00
Zeeshan Ali
ed76f67e96
rtpmux: Ville's original patch to fix the traversal of dtmf event
...
20070525102709-f3f1e-6c41d1ef934068a4f4e810e7e981b420075b0c98.gz
2012-12-16 16:30:05 +00:00
zeeshan.ali@nokia.com
94ebe07862
rtpmux: Set the correct ts-offset on the get_prop value
...
20070329135250-65035-a43e222d91d57c0a61cb3287586aaa29abf78674.gz
2012-12-16 16:30:01 +00:00
zeeshan.ali@nokia.com
1ee542c378
rtpmux: Refactorize state_change
...
20070329135223-65035-23a0107b2e397710f035c6e88cc0e49b65bb4d5d.gz
2012-12-16 16:29:58 +00:00
zeeshan.ali@nokia.com
2498ba671a
rtpmux: set SSRC on the packets
...
20070329133622-65035-1be6e0aa85a71389f7d257b9cd3e13a73d6b745b.gz
2012-12-16 16:29:55 +00:00
zeeshan.ali@nokia.com
ee69c2690d
rtpmux: Code clean-up and more debug output
...
20070329131936-65035-9d499e209e0d7a409c3aa0d1040778babf076179.gz
2012-12-16 16:29:52 +00:00
zeeshan.ali@nokia.com
1c799ce964
rtpmux: Use own clock-base
...
20070328112219-65035-1ba5fefbc65059e9b0c860528a31062ceb6a7331.gz
2012-12-16 16:29:48 +00:00
zeeshan.ali@nokia.com
b04630d7a2
rtpmux: Only accept RTP streams that have the same clock-rate
...
20070323163139-65035-fc0b17b0b8a7a041f48994c4f26e96568168bf95.gz
2012-12-16 16:29:45 +00:00
zeeshan.ali@nokia.com
6fe1e02efd
rtpmux: Some more code-cleanups
...
20070322161552-65035-bda96165e146b4f1d5fea1cc9576a7ab3abebc9e.gz
2012-12-16 16:29:42 +00:00
zeeshan.ali@nokia.com
1603223ee5
rtpmux: return newpad instead of NULL and warn if failed to create a pad
...
20070322154251-65035-cdb6651e61c2eb0205cc8c24693b43f98a2da718.gz
2012-12-16 16:29:38 +00:00
zeeshan.ali@nokia.com
23d3ed5c5f
rtpmux: Refactorize the RTPMux code
...
20070322124132-65035-0a3278147546e33f687097a43b775b3f6aa99f93.gz
2012-12-16 16:29:35 +00:00
zeeshan.ali@nokia.com
21e6e951f6
rtpmux: Some more doc fixing
...
20070322121453-65035-12d602272217b51bd97df4e5790024c399622dd3.gz
2012-12-16 16:29:32 +00:00
zeeshan.ali@nokia.com
0de7fb6f37
rtpmux: More Refactoring
...
20070322113228-65035-bae34a79599e7de5293ed77b022361ccff822bb9.gz
2012-12-16 16:29:29 +00:00
zeeshan.ali@nokia.com
0f755657ce
rtpmux: More documentation
...
20070322113154-65035-624850541a5b5fc3df231204be5a83d07239db28.gz
2012-12-16 16:29:26 +00:00
zeeshan.ali@nokia.com
5483c78ac0
rtpmux: Refactor the event handler function
...
20070321163311-65035-987e7f25d1ab5335b79f44b277abf15e4e37d317.gz
2012-12-16 16:29:23 +00:00
zeeshan.ali@nokia.com
db1523ae60
rtpmux: Add RTPDTMFMux element
...
20070321145244-65035-9a01390b0dee3398e53199a1fa1d9352004f338e.gz
2012-12-16 16:29:19 +00:00
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
Wim Taymans
cc9cb26be1
rtspsrc: propose ports in multicast
...
When the user configured a port-range, propose ports from this range
as the multicast ports. The server is free to ignore this request but if it
honours it, increment our ports so that we suggest the next port pair for the
next stream.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=639420
2012-11-16 12:17:37 +01:00
Wim Taymans
5025b3f1b3
rtspsrc: add more debug
2012-11-16 12:17:37 +01:00
Tim-Philipp Müller
6f1aa3e4d5
multifilesink: post messages in max-size mode as well
...
No reason not to really.
2012-11-16 09:13:22 +00:00
Wim Taymans
c33507f186
udpsrc: post error before stopping
2012-11-15 14:48:59 +01:00
Tim-Philipp Müller
bdf3c77828
gst_adapter_prev_timestamp -> gst_adapter_prev_pts
...
https://bugzilla.gnome.org/show_bug.cgi?id=675598
2012-11-14 00:13:36 +00:00
Nicolas Dufresne
673d2d24b8
videoflip: Add NV12/NV21 support
...
https://bugzilla.gnome.org/show_bug.cgi?id=688225
2012-11-13 14:25:04 +01:00
Wim Taymans
c755af0cb0
rtpsource: protect against invalid RTP packets
2012-11-12 11:18:30 +01:00
Tim-Philipp Müller
35fafae241
videocrop: add support for YV12
...
We can do I420, so we can do YV12 as well.
2012-11-10 18:21:28 +00:00
Alessandro Decina
b916d2b398
multifilesink: don't write stream headers with key-unit-event
...
Don't write stream headers, let upstream elements insert them in the stream if
all_headers=true is set in key unit events.
2012-11-10 12:41:33 +01:00
Nicolas Dufresne
e111068f7b
videocrop: Add NV12/NV21 support
...
https://bugzilla.gnome.org/show_bug.cgi?id=687964
2012-11-10 01:52:44 +01:00
Sebastian Dröge
c70ba7765a
udpsrc: Also clear GError
2012-11-09 11:22:30 +01:00
Sebastian Dröge
b86d20e45b
udpsrc: Don't error out if we get an ICMP destination-unreachable message when trying to read packets
...
See bug #529454 and #687782 and commit
751f2bb364
2012-11-09 11:20:27 +01:00
Christian Fredrik Kalager Schaller
485505f323
Fix vp8rtp header names in Makefile
2012-11-07 13:36:33 +01:00
Nicolas Dufresne
1ad8ebac44
videocrop: Add support for automatic cropping
...
This change enable automatic cropping using -1 set to left, top, right or
bottom property. In the case both side are set to automatic cropping, the
croping will be done equally on both side (in the odd case, right and
bottom cropping will be 1 pixel more).
https://bugzilla.gnome.org/show_bug.cgi?id=687761
2012-11-07 11:20:24 +01:00
Marc Leeman
7cbca3dcd1
rtsp: the RTCP port number is inclusive
...
The configured port number pair has its upper bound set to the maximum
allowed RTCP port, inclusive.
See https://bugzilla.gnome.org/show_bug.cgi?id=639420
2012-11-06 13:22:58 +01:00
Tim-Philipp Müller
230cf41cc9
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Wim Taymans
9857e6af4d
vrawdepay: don't access rtp buffer after unmap
...
Read the marker bit before we unmap the rtp packet.
2012-11-02 18:48:17 +00:00
Douglas Bagnall
0b898ab911
videoconvert: Compare y offset with height, not width, when testing for overlap
...
This could have prevented images showing that should have when the
source height is greater than its width.
When width exceeds height, as is common, it probably only caused a
miniscule amount of unnecessary work. I haven't tested.
2012-11-02 09:29:30 +01:00
Tim-Philipp Müller
5ac789408b
rtpvp8: include config.h and minor style fixes
2012-11-01 21:10:21 +00:00
Tim-Philipp Müller
4a849d6690
rtp: fix tabs/space mess in Makefile.am
2012-11-01 20:53:48 +00:00
Tim-Philipp Müller
321acd14dc
rtp: move VP8 payloader and depayloader from -bad
...
Spec is still in draft state, but should hopefully not
change much now. Besides, we announce things as VP8-DRAFT-IETF-01
in our caps, so even if things change in incompatible ways it
should not break anything.
https://bugzilla.gnome.org/show_bug.cgi?id=687263
2012-11-01 20:53:48 +00:00
Tim-Philipp Müller
44efab8e3d
rtpvp8: 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-11-01 20:53:48 +00:00
Mark Nauwelaerts
bc7dbbbd4f
rtpvp8: replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-11-01 20:53:48 +00:00
Sebastian Dröge
4853001547
rtpvp8: update for GST_PLUGIN_DEFINE() API changes
2012-11-01 20:53:48 +00:00
Wim Taymans
fccfca38d4
rtpvp8: update for buffer changes
2012-11-01 20:53:48 +00:00
Danilo Cesar Lemes de Paula
3edffb13e3
rtpvp8; fix compatibility with the third draft
...
https://bugzilla.gnome.org/show_bug.cgi?id=671073
2012-11-01 20:53:48 +00:00
Mark Nauwelaerts
d9581832a0
rtpvp8: port some more to new memory API
2012-11-01 20:53:47 +00:00
Olivier Crête
c6761daa27
rtpvp8: port to 0.11
2012-11-01 20:53:47 +00:00
Sebastian Dröge
2c5ea76bdc
rtpvp8pay: Fix typo
2012-11-01 20:53:47 +00:00
Youness Alaoui
1cf155d70d
rtpvp8: Update the pay/depay to the ietf-draft-01 spec
2012-11-01 20:53:47 +00:00
Vincent Penquerc'h
88aade4150
rtpvp8: fix bitstream parsing using the wrong kind of bitreader
...
VP8 uses a probabilistic bool coder, not a straight bit coder.
This fixes parsing when error-resilient is set.
This commit includes a copy of libvpx's bool coder, BSD licensed.
https://bugzilla.gnome.org/show_bug.cgi?id=652694
2012-11-01 20:53:47 +00:00
Olivier Crête
97c3f3617c
rtpvp8: Reject unknown bitstream versions
2012-11-01 20:53:47 +00:00
Edward Hervey
74a1a704bf
rtpvp8: Fix unitialized variable
...
Makes macosx compiler happy.
2012-11-01 20:53:47 +00:00
Sjoerd Simons
6ed6318076
rtpvp8depay: Accept packets with only one byte of data
...
When fragmenting partions it can happen that an RTP packet only caries 1
byte of RTP data.
2012-11-01 20:53:47 +00:00
Sjoerd Simons
a45e7a3fc0
rtpvp8pay: Treat the frame header just like any other partition
...
When setting up the initial mapping just act as if the global frame
information is another partition. This saves special-casing it later in
the actual packetizing code.
2012-11-01 20:53:47 +00:00
Sjoerd Simons
e9f4e9342f
rtpvp8: Add simple payloaders and depayloaders for VP8
...
Minimal implementation of http://www.webmproject.org/code/specs/rtp/ ,
version 0.3.2
2012-11-01 20:53:47 +00:00
Wim Taymans
d6fd0ebd04
gstpay: fix for 1.0 events
...
Caps events are sometimes not followed by a buffer but by an event. Flush any
pending caps before we make a packet with the event.
Chain up to the parent event handler before we attempt to push RTP packets, it
might be a segment event.
2012-11-01 18:42:39 +00:00
Wim Taymans
05232c55a5
gstdepay: fix small leak
2012-11-01 18:42:24 +00:00
Wim Taymans
08e5a197b4
gstdepay: add support for events
...
Conflicts:
gst/rtp/gstrtpgstdepay.c
2012-11-01 18:18:19 +00:00
Wim Taymans
54b783b5a3
rtpgstpay: add support for sending events
...
We currently only send tags and custom events. The other events
might interfere with the receiver timings or are otherwise handled
by RTP.
Conflicts:
gst/rtp/gstrtpgstpay.c
2012-11-01 18:06:11 +00:00
Wim Taymans
6502d08e43
gstpay: rewrite payloader
...
Use adapter to assemble the payload and make a flush function to
turn this payload into (fragmented) packets.
Conflicts:
gst/rtp/gstrtpgstpay.c
gst/rtp/gstrtpgstpay.h
2012-11-01 17:57:52 +00:00
Douglas Bagnall
e3c77ba709
videomixer: get height via GST_VIDEO_FRAME_HEIGHT, not _WIDTH
...
https://bugzilla.gnome.org/show_bug.cgi?id=687330
2012-11-01 13:03:44 +00:00
Douglas Bagnall
79403bcb0c
videbox: fix border filling for gray formats
...
Get the height via GST_VIDEO_FRAME_HEIGHT, not _WIDTH.
https://bugzilla.gnome.org/show_bug.cgi?id=687330
2012-11-01 13:02:16 +00:00
Wim Taymans
c0713e4b80
gstdepay: check for correct fragment offset
...
Make sure we only insert the rtp packet in the adapter when the
frag_offset matches. When the first packet of a fragment is dropped,
it avoids putting the remaining packets in the adapter and processing
the partial fragment.
Conflicts:
gst/rtp/gstrtpgstdepay.c
2012-11-01 12:09:47 +00:00
Wim Taymans
8a402e0c06
gstpay: set C flag on all buffers of the fragment
...
Set the C flags on all the fragments instead of only those with
caps in them. This makes it easier in the receiver to check if there
is a caps in the assembled fragments just by looking at the last RTP
packet flags.
2012-11-01 12:06:08 +00:00
Wim Taymans
d78ff07f7d
gstdepay: use the capsversion
...
Take the caps from the input caps and store it in the slot given
by capsversion.
2012-11-01 11:37:44 +00:00
Wim Taymans
936c3819b5
gstpay: send caps inline
...
Place the capsversion on the outgoing caps so that they end up in
an SDP as well. Receivers need to know what capsversion a particular
caps is for to be able to match the caps to the CV in the RTP packets.
Place the caps inside the RTP packet whenever the caps change.
Based on patch by Andrzej Bieniek <andrzej.bieniek@pure.com>
Conflicts:
gst/rtp/gstrtpgstpay.c
gst/rtp/gstrtpgstpay.h
2012-11-01 11:34:33 +00:00
Andrzej Bieniek
3b1931a039
gstpay: add debug
...
Conflicts:
gst/rtp/gstrtpgstpay.c
2012-11-01 11:28:50 +00:00
Andrzej Bieniek
ee5ecc7773
depay: correctly skip caps header size
...
Conflicts:
gst/rtp/gstrtpgstdepay.c
2012-11-01 11:27:13 +00:00
Tim-Philipp Müller
ef0805ea14
matroskademux: put streamheaders on vorbis/speex/flac/theora caps to make remuxing work
...
https://bugzilla.gnome.org/show_bug.cgi?id=640589
2012-10-30 23:29:46 +00:00
Tim-Philipp Müller
752cf98745
gst: fix variable order in some Makefile.am
...
https://bugzilla.gnome.org/show_bug.cgi?id=687013
2012-10-27 23:27:38 +01:00
Antoine Tremblay
a1c86de09a
gst: add various missing GST_PLUGINS_BASE_LIBS in Makefile.am
...
Those plugins depend on either libgstaudio or libgstvideo,
which are in gst-plugins-base.
https://bugzilla.gnome.org/show_bug.cgi?id=687013
2012-10-27 23:26:41 +01:00
Alexey Fisher
29cd24bc41
matroskademux: mark invisible VP8 frames with the DECODE_ONLY flag
...
https://bugzilla.gnome.org/show_bug.cgi?id=654259
2012-10-27 14:46:02 +01:00
Stas Sergeev
238a5ec826
multifilesrc: fix stop index handling
...
Make sure the stop index is always honoured. Avoids
endless loop if one wants to read and output the same
file N times, for example.
https://bugzilla.gnome.org/show_bug.cgi?id=654853
2012-10-26 11:04:01 +01:00
Руслан Ижбулатов
78193dfe71
matroskademux: Support recursive SimpleTags
...
Fixes #682644
Depends on #682615
2012-10-26 10:16:42 +02:00
Руслан Ижбулатов
cd719bb808
matroskademux: Expand the tag mapping.
...
* Also expose unknown tags as key=value pairs.
* Arrange tag map in the same order tags are listed in Matroska spec, leaving
unmapped tags as comments.
* More specific TODOs.
* Remove duplicate DATE define.
Fixes #682615
Depends on #682524
2012-10-26 10:12:52 +02:00
Sebastian Dröge
6c635ce64f
matroskademux: Fix uninitialized variable compiler warning
2012-10-26 10:09:39 +02:00
Руслан Ижбулатов
71fd688ef0
matroskademux: Matroska tag TargetType support
...
* Reads TargetType and TargetTypeValue from a Tag.
* After Tag is completely read, processes taglist, substituting some of the
tags depending on target type value and the presence of video/subtitle streams.
* Supports reading two new simpletags - PART_NUMBER and TOTAL_PARTS
Depends on #682448
Fixes #682524
2012-10-26 10:08:18 +02:00
Руслан Ижбулатов
b75628f041
matroskademux: Per-track tags for Matroska
...
Requires Matroska file to have sane layout (track info before tag info).
Uses replace-merge.
Makes track UIDs 64-bit.
Fixes #682448
2012-10-26 10:03:55 +02:00
Tim-Philipp Müller
fe7236230c
multifilesrc: fix typo in property description
2012-10-25 20:19:44 +01:00
Michael Smith
a88caf84b4
qtdemux: read video format header fully (so we can find 'pasp' atoms) for more fourccs.
...
Fixes aspect ratio of prores files.
2012-10-25 12:18:50 -07:00
Thiago Santos
02d91dcd24
imagefreeze: the new get_caps already does the filter intersection
...
It should be faster to pass the caps to intersect as the filter caps,
rather than using NULL and intersecting 'manually' later.
https://bugzilla.gnome.org/show_bug.cgi?id=686837
2012-10-25 10:32:17 -03:00
Thiago Santos
115581eb2e
imagefreeze: avoid assertion when using accept caps query
...
This query must receive a fixed caps, so imagefreeze should
fixate its framerate before sending the query downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=686837
2012-10-25 09:39:36 -03:00
Arnaud Vrac
bc79fe565c
qtdemux: use correct type for channel-mask bitmask
...
Fixes crash on 32-bit systems.
2012-10-24 12:54:08 +01:00
Tim-Philipp Müller
7275860bdd
flacparse: fix coverart extraction if vorbis comments come after picture header
...
See sample file for bug #684701 .
2012-10-23 16:02:05 +01:00
Tim-Philipp Müller
7c41f42eec
flacparse: ignore bad headers if we have a valid STREAMINFO header
...
If we run into any header parsing issues and we have a valid
STREAMINFO header already, don't error out, but just stop
header parsing and try to find some audio frames.
https://bugzilla.gnome.org/show_bug.cgi?id=684701
2012-10-23 13:56:54 +01:00
Tim-Philipp Müller
49cc719809
flacparse: post proper error message and fix buffer leak on header parsing error
...
https://bugzilla.gnome.org/show_bug.cgi?id=684701
2012-10-23 13:56:54 +01:00
Michael Smith
150bd97e96
qtdemux: with raw audio, set a default channel-mask for multichannel audio.
...
This doesn't actually parse 'chan' because it's absurdly complex.
2012-10-22 22:34:43 -07:00
Sebastian Rasmussen
9fc62a58e3
updsrc: fix typo causing compilation error
...
gstudpsrc.c: In function 'gst_udpsrc_create':
gstudpsrc.c:365: error: 'ret' may be used uninitialized in this function
https://bugzilla.gnome.org/show_bug.cgi?id=686642
2012-10-22 23:19:28 +01:00
Wim Taymans
a2eead3d60
avi_ fix invert function
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686550
2012-10-22 11:55:59 +02:00
Wim Taymans
0e3ef30c31
avi: fix debug
2012-10-22 11:55:22 +02:00
Wim Taymans
199aaa4021
qtdemux: add support for 'generic' samples
...
Add support for stuffing a complete stream into 1 sample.
See https://bugzilla.gnome.org/show_bug.cgi?id=686550
2012-10-22 11:39:37 +02:00
Tim-Philipp Müller
aa3ba65eb5
qtdemux: don't leak gst_riff_strf_auds in case of MS/RIFF audio
...
https://bugzilla.gnome.org/show_bug.cgi?id=681192
2012-10-19 19:26:45 +01:00
Mark Nauwelaerts
35cd53867c
matroskamux: unsigned subtitle template
2012-10-19 16:14:01 +02:00
Youness Alaoui
13328bc129
videomixer2: Fix race condition where a src setcaps is ignored
...
If both pads receive data at the same time, they will both get their
sink_setcaps called which will call the src_setcaps, but there is
a race condition where the second one might not be called.
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=683842
2012-10-19 12:10:31 +02:00
Mark Nauwelaerts
5742352e10
matroskamux: do not use unoffical V_MJPEG codec id
...
Since it's not spec'ed, consider it a VfW compatibility
case. Many applications (e.g. avidemux) don't understand
the unofficial V_MJPEG id.
Fixes #659837 .
Conflicts:
gst/matroska/matroska-mux.c
2012-10-18 18:29:40 +01:00
Wim Taymans
e9040e90a5
jpegdepay: store quant tables in zigzag order
2012-10-17 14:23:01 +02:00
Wim Taymans
d5fd524a0c
rtsession: fix compiler warning
2012-10-17 13:55:45 +02:00
Wim Taymans
26a21e85e2
rtpbin: clarify the ntp-sync option
2012-10-17 13:35:07 +02:00
Wim Taymans
f17db5c4ed
rtpsession: update caps in the source
...
Inform the source when caps changed. This was removed in the port to 1.0
leaving the source unaware of the clock-rate and unable to interpollate
rtp timestamps for SR packets.
2012-10-17 13:22:40 +02:00
Wim Taymans
f4eef3f48d
rtpbin: set PTS and DTS in jitterbufffer
2012-10-17 12:46:32 +02:00
Wim Taymans
796c1d8029
rtpbin: disable check for ntp-sync
...
Disable the check for the ntp-sync method. It is expected that
a rather larger offset needs to be applied with this method.
2012-10-17 12:27:03 +02:00
Wim Taymans
1cebcfa8c2
rtpbin: use running-time for NTP time
...
When use-pipeline-clock is set, use the running-time of the
pipeline to calculate the NTP timestamps. This method would previously
only work when the base-time is set to 0 but with this change it can
also work with different offsets and we can also implement pause/resume
of the sender and receiver now.
2012-10-17 12:26:05 +02:00
Wim Taymans
5ec642d0c3
videocrop: port to videofilter
2012-10-17 10:20:12 +02:00
Wim Taymans
3ef7c8ab93
videobox: use out_info for out properties
2012-10-17 09:36:50 +02:00
Wim Taymans
f701d980e6
median: small cleanups
2012-10-16 14:40:19 +02:00
Wim Taymans
0e21e80e9b
median: remove now that it is in videofilter
2012-10-16 13:56:19 +02:00
Wim Taymans
9e67891f72
videomedian: copy media to videomedian
...
Copy the median video filter to videofilters and rename to
videomedian.
2012-10-16 13:47:24 +02:00
Wim Taymans
b893197317
media: port to 1.0
2012-10-16 13:16:29 +02:00
Tim-Philipp Müller
f94572fb36
avidemux: append palette data to paletted 8-bit RGB frames
...
Fixes playback of 8-bit indexed RGB videos, with fixes in -base.
https://bugzilla.gnome.org/show_bug.cgi?id=686046
2012-10-16 01:09:05 +01:00
Tim-Philipp Müller
e9682b938a
qtdemux: don't assert if upstream size is not available when guessing bitrates
...
Fixes abort in push mode where the source is not seekable and the
size of the file is not available, as with
cat foo.mp4 | gst-launch-1.0 playbin uri=fd://0
Less noticable with releases, since we disable all
g_assert() there.
https://bugzilla.gnome.org/show_bug.cgi?id=686008
2012-10-13 00:08:01 +01:00
Michael Smith
3a3a7c38aa
qtdemux: allow more streams. Bump this constant to 32, which should be
...
enough for real-world files.
2012-10-12 14:38:33 -07:00
Michael Smith
d60c9ce2a4
qtdemux: support more different fourcc values for other ProRes variants.
2012-10-12 14:35:49 -07:00
Wim Taymans
adb70e89f9
rtspsrc: remove unused include
2012-10-10 12:05:34 +02:00
Rasmus Rohde
11ed7c0373
multiudpsink: add multicast-iface property
...
udpsrc already has support for setting the multicast interface, which
is useful for multi-homed machines. This patch adds the same code to
the multiudpsink.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685864
2012-10-10 11:48:25 +02:00
Wim Taymans
54f049c355
multiudpsink: don't error on send errors but only warn
...
Don't error on send errors but simply post a warning, it's possible
that the next packet will be fine.
2012-10-10 11:32:17 +02:00
Rasmus Rohde
6c169312d1
multiudpsink: add force-ipv4 option
...
Add an option to the multiudpsink that makes it possible to force
the use of an IPv4 socket.
This can e.g. be used to handle the issue described in
https://bugzilla.gnome.org/show_bug.cgi?id=682481
2012-10-10 10:28:24 +02:00
Wim Taymans
2955f0e10c
multiudpsink: remove unused field
2012-10-10 10:18:52 +02:00
Wim Taymans
f4e1bb02b7
udpsrc: use negotiated allocator or pool
...
Use the base class to allocate a buffer for us because it knows how
to use the negotiated allocator or bufferpool.
2012-10-10 10:10:26 +02:00
Wim Taymans
e8d951ed68
multiudpsink: post error when something goes wrong
2012-10-10 10:09:37 +02:00
Wim Taymans
15c2b997e9
spectrum: elements post element messages
2012-10-10 10:09:10 +02:00
Michael Smith
7aed5a4b4b
deinterleave: output channels should be marked as MONO, not FRONT_LEFT, if
...
we're not preserving input channel positions.
2012-10-05 15:12:27 -07:00
Michael Smith
7522cd1595
interleave: use gst_audio_channel_positions_to_mask instead of a local copy
...
of half of it. Handles some values more correctly.
2012-10-04 15:13:20 -07:00
Rasmus Rohde
47a8eb7ca8
gstrtpdepay: don't leak input buffer
...
The rtp buffer is never unmapped in the normal code exit path
of gst_rtp_gst_depay_process(..) resulting in a memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=685512
2012-10-04 19:44:28 +01:00
Sebastian Dröge
1ac6a782c3
videobalance: Add support for NV12 and NV21
2012-10-04 18:37:48 +02:00
Patricia Muscalu
7a863e4d8d
rtph264pay: do not push unmapped data
...
Also do not use a GstBuffer after it has been pushed into the adapter.
https://bugzilla.gnome.org/show_bug.cgi?id=685213
2012-10-04 09:22:50 +01:00
Michael Smith
b04b1b5089
meta info: threadsafe registration using g_once
2012-10-03 10:51:45 -07:00
Mark Nauwelaerts
b10829d6c8
avidemux: push mode; handle some initial junk before hdrl list
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685059
2012-10-01 15:50:53 +02:00
Tim-Philipp Müller
e6d37eb30a
Purge references to liboil
...
https://bugzilla.gnome.org/show_bug.cgi?id=673285
2012-09-29 12:41:37 +01:00
Mark Nauwelaerts
cb0e4b2059
avidemux: recognize all xsub frames as keyframes
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684977
2012-09-28 17:04:42 +02:00
Mark Nauwelaerts
511dfa5ee5
avidemux: push mode: find the correct chunk for segment following seek
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684977
2012-09-28 17:04:42 +02:00
Arnaud Vrac
f0db4a8213
qtdemux: fix parsing in push mode when moov atom is at the end
...
When playing an mp4 file with the MOOV atom at the end of the file, playback
fails with the error message "no 'moov' atom within the first 10 MB". This is
due to a mistake in the upstream_size typing, making the seek to the end of
file never happening.
https://bugzilla.gnome.org/show_bug.cgi?id=684972
2012-09-27 22:20:19 +01:00
Andre Moreira Magalhaes (andrunko)
25803d651b
gamma: remove duplicate entries at format at caps
...
Avoids extra caps/structures processing
2012-09-27 15:50:49 -03:00
Wim Taymans
dbe941338d
rtpvrawdepay: negotiate pool with srcpad caps
2012-09-27 14:15:50 +02:00
Tim-Philipp Müller
f5e0321dfc
videomixer: clear video frame more correctly
...
Make sure not to touch memory that doesn't belong to
our frame, we might be one part of a side-by-side 3D
frame, or in a picture-in-picture scenario.
2012-09-26 09:28:59 +01:00
Tim-Philipp Müller
c203ce2dbe
flvdemux: minor clean-up
...
Use GstByteWriter, because we can, and g_value_take_boxed.
2012-09-26 00:44:59 +01:00
Dmitriy Samonenko
7d4b6f655e
flvdemux: fix speex audio decoding by creating fake stream header
...
https://bugzilla.gnome.org/show_bug.cgi?id=683622
2012-09-26 00:16:06 +01:00
Tim-Philipp Müller
626e0258e3
videomixer: fix warnings when using transparent background
...
gst_video_frame_map() increases the refcount, which makes
the buffer not writable any more technically, so calling
gst_buffer_memset() on it will cause nasty warnings.
Unit test disabled because it very rarely (for me)
fails, possibly negotiation-related.
https://bugzilla.gnome.org/show_bug.cgi?id=684398
2012-09-25 23:31:34 +01:00
Robert Swain
03e5376827
deinterlace: Add some useful debug logging
2012-09-25 17:05:37 +02:00
Robert Swain
33dd81569f
deinterlace: Fix telecine
...
This only affects behaviour in telecine cases with pattern locking
enabled. The default case should be untouched.
This works with the output from fieldanalysis at least, but the field
order looks swapped for telecine mixed buffers with the
David_slides_Schleef clip.
2012-09-25 17:04:54 +02:00
Edward Hervey
ac9394de29
videomixer: Fix leak
2012-09-25 14:18:35 +02:00
Tim-Philipp Müller
ebe0b1887a
smpte: send stream-start event
2012-09-23 16:51:31 +01:00
Tim-Philipp Müller
8e3c7fa799
multipartmux: send stream-start event
2012-09-23 16:51:24 +01:00
Tim-Philipp Müller
154404fa43
matroskamux: send stream-start
2012-09-23 16:33:35 +01:00
Tim-Philipp Müller
bc37b9f4fc
qtmux: send stream-start event
2012-09-23 16:33:35 +01:00
Tim-Philipp Müller
ea7f8a919c
interleave: add a bunch of FIXMEs
...
Needs some more work, so stream-start, caps and tags are
sent in the right order.
2012-09-23 16:33:35 +01:00
Tim-Philipp Müller
1c3c8c64e6
flvmux: send stream-start event
2012-09-23 16:33:34 +01:00
Tim-Philipp Müller
c3f62d7ead
avimux: send stream-start event
2012-09-23 16:33:34 +01:00
Tim-Philipp Müller
8b20603f8b
rtspsrc: answer URI query
...
Without this, something also answered the query
with TRUE but without setting a uri, not sure
what that was..
2012-09-21 23:33:47 +01:00
Olivier Crête
bc252d29ee
rtph264pay: Make sure the caps don't have duplicated sps/pps
2012-09-21 17:36:12 -04:00
Michael Smith
1026970347
qtdemux: 24 bit audio here is S24LE, not S24_3LE.
2012-09-20 18:01:52 -07:00
Robert Swain
480b894642
deinterlace: Remove incorrect logic
...
I don't understand why these lines were added, they don't make sense to
me now and both David and I agree that removing them moves closer to
related logic being correct, therefore, they're being removed.
I've tested a few progressive, interlaced and telecine clips and they
all behave properly timestamp-wise and visually after these changes.
2012-09-19 00:39:01 +02:00
Robert Swain
a35a931555
deinterlace: Fix field duration
...
The frame rate fraction is correctly adjusted in the cases preceding the
field duration calculation and so the factor of 2 is incorrect.
2012-09-19 00:17:49 +02:00