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
beb3c9c9be
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00: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
Tim-Philipp Müller
488549bb54
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-10-17 17:46:34 +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
Olivier Crête
0363c1cebf
rtpdtmfdepay: Use 1.0-style caps negotiation and audio/x-raw
2012-09-22 15:00:27 -04: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
Michael Smith
63716151ef
videobox: Fix U/V strides for a number of cases.
2012-09-18 10:34:03 -07:00
Mark Nauwelaerts
eda9c8b3cf
videomixer: init videoinfo
...
... to prevent random bogus caps fields.
2012-09-18 12:15:17 +02:00
Mark Nauwelaerts
8c28a60eee
videomixer: chain up to collectpads query function
2012-09-18 12:15:17 +02:00
Nicolas Dufresne
76da367ecd
videomixer: Don't let GstCollectPad shadow custom sink pad query func
...
In the current implementation, the custom pad query function is not called.
This patch, set that query function on the GstCollectPads to avoid this
shadowing.
See https://bugzilla.gnome.org/show_bug.cgi?id=684237
2012-09-18 12:14:43 +02:00
Mark Nauwelaerts
3eee42fdfc
use gst_element_factory_get_metadata to replace obsolete API
2012-09-15 19:06:06 +02:00
Mark Nauwelaerts
0380de3f95
replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-09-14 17:27:49 +02:00
Wim Taymans
829c80ce6c
fix more caps
2012-09-14 13:30:37 +02:00
Jan Schmidt
a27deda053
deinterlace: Don't treat every custom-downstream event as EOS
...
Don't fall through to the EOS handling after receiving a
custom-downstream event.
2012-09-12 12:23:08 -07:00
Stefan Sauer
f874922e1c
collectpads: remove gst_collect_pads_add_pad_full
...
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:05:44 +02:00
Mark Nauwelaerts
d6ca569c29
udp: add include for IPPROTO_*
2012-09-12 17:14:46 +02:00
Mark Nauwelaerts
58c96df0ae
udp: properly match braces and cpp directives
...
Fixes compilation where IPV6_TCLASS not defined.
2012-09-12 16:39:08 +02:00
Edward Hervey
8498551692
shapewipe: Use default query handler where needed
...
And clean up get_caps code while I'm at it
2012-09-12 14:42:07 +02:00
Wim Taymans
1c64a91a50
deinterlace: improve framerate transform
...
Handle G_MAXINT in the framerates better. If we cannot double or divide the
framerate, clamp to the smallest/largest possible value we can express instead
of failing.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683861
2012-09-12 13:28:07 +02:00
Wim Taymans
6d9f9bf11a
deinterlace: small cleanup
2012-09-12 13:17:54 +02:00
Youness Alaoui
c3d619be67
videomixer2: Adding nv12 and nv21 support
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683841
2012-09-12 10:46:22 +02:00
Michael Smith
4f015c594c
qtdemux: add support for prores
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683839
2012-09-12 10:18:53 +02:00
Mark Nauwelaerts
f12ef67f56
ext, gst: only activate in pull mode if upstream is seekable
2012-09-11 17:44:51 +02:00
Wim Taymans
a374217786
qtdemux: don't reset segment
...
Don't reset the segment because we need the values for accumulation. the segment
is reset at start and after a flushing seek. Fixes some problems with files with
quicktime segments.
2012-09-11 11:59:54 +02:00
Mark Nauwelaerts
8d93246b93
gst: adjust comment style
2012-09-10 14:31:02 +02:00
Mark Nauwelaerts
ca36de1e8f
avidemux: remove defunct commented code
2012-09-10 14:30:42 +02:00
Tim-Philipp Müller
6dc7b4c3c7
video/x-3ivx and video/x-xvid -> video/mpeg,mpegversion=4
...
If it ever turns out that we really must use thoe specific
fourccs and not the generic one, we can still add a flavor
field to the caps later.
2012-09-10 00:43:24 +01:00
Daniela
03fbd7ec6e
rtspsrc: avoid leak
...
When setup fails, make sure to cleanup afterwards.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=673509
2012-09-07 16:33:18 +02:00
Mark Nauwelaerts
f24b58d19c
rtpamrdepay: unmap rtp buffer
...
... thereby plugging a memleak.
2012-09-07 15:25:53 +02:00
Mark Nauwelaerts
fa90dfc4df
rtph264pay: avoid crashing on NULL access in debug message
2012-09-07 15:25:52 +02:00
Mark Nauwelaerts
8f4bfeb698
rtph263ppay: plug caps leak
2012-09-07 15:25:52 +02:00
Wim Taymans
ecaa2624d3
deinterlace: remove redundant _set_allocation call
2012-09-06 17:09:20 +02:00
Mark Nauwelaerts
1ce09d7ef9
deinterlace: plug some leaks
2012-09-06 17:05:49 +02:00
Wim Taymans
510482b01a
deinterlace: reuse core function for GCD
2012-09-06 16:52:18 +02:00
Mark Nauwelaerts
9d4579b38a
deinterlace: support filter in getcaps
2012-09-06 16:31:17 +02:00
Mark Nauwelaerts
a4458f5f74
deinterlace: do not leak getcaps result
2012-09-06 16:31:17 +02:00
Wim Taymans
45e5ec29ac
deinterlace: add support for bufferpool
...
Add bufferpool support to avoid a memcpy in the videosink when actively
interlacing.
Remove some commented obsolete code.
2012-09-06 16:25:05 +02:00
Wim Taymans
f59fb16f58
deinterlace: proxy allocation query in passthrough
...
We can let the allocation query pass when we are operating in passthrough mode.
2012-09-06 13:38:52 +02:00
Wim Taymans
4efdbc97a5
deinterlace: use default event functions
...
instead of blindly forwarding unknown events.
2012-09-06 13:23:46 +02:00
Wim Taymans
a557282aaa
deinterlace: small cleanups
2012-09-06 13:23:30 +02:00
Wim Taymans
f1ef3b4983
deinterlace: call default query handlers
...
Call the default query handler instead of forwarding the query blindly. Fixes
issues of strides because of proxying the allocation query wrongly.
2012-09-06 12:56:30 +02:00
Wim Taymans
6693a22875
videobalance: avoid deadlock
...
_update_properties takes the object lock and should not be called when the
object lock is already taken.
2012-09-04 12:35:53 +02:00
Tim-Philipp Müller
aeba106878
matroskamux: extract interlaced-ness of video track from interlace-mode field
...
instead of the old boolean "interlaced" field.
2012-09-03 12:46:03 +01:00
Tim-Philipp Müller
9bf90f47cf
video/x-xvid -> video/mpeg,mpegversion=4
2012-09-03 02:51:24 +01:00
Tim-Philipp Müller
fb0f3c17f5
text/plain + text/x-pango-markup -> text/x-raw
2012-09-02 02:50:50 +01:00
Tim-Philipp Müller
b27ac94af2
gst_message_new_duration -> gst_message_new_duration_changed
2012-09-02 01:31:53 +01:00
Wim Taymans
5b394385b9
session: also stop probatation on existing sources
...
Receiving an RTCP packet should also stop probation on sources we have seen
before.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683065
2012-08-30 22:07:24 +02:00
Aleix Conchillo Flaque
4a200b670f
rtp: make rtp packet probation configurable (bug #682512 )
2012-08-30 21:49:57 +02:00
Mark Nauwelaerts
a2475a40a5
flacparse: fixup 0.11 port of suspect frame checking
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682959
2012-08-30 11:30:01 +02:00
Mark Nauwelaerts
e1881d1e44
avidemux: avoid invalid H264 bytestream codec_data
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681369
2012-08-28 19:01:11 +02:00
Mark Nauwelaerts
e523b42d41
qtdemux: port segment event creation to 0.11
2012-08-28 19:01:11 +02:00
Mark Nauwelaerts
748304ced7
qtdemux: release extra event ref when replacing pending newsegment event
2012-08-28 16:28:29 +02:00
David Corvoysier
d0eed20428
isomp4: add DASH tfdt box support
...
MPEG DASH has defined a set of new boxes to specify duration, indexes and
offsets of ISOBMFF fragments.
The Track Fragment Base Media Decode Time (tfdt) Box can in particular be
included inside a traf box to specify the absolute decode time, measured on the
media timeline, of the first sample in decode order in the track fragment.
This information can be used by the isomp4 demux to find out the current position of
an MP4 fragment in the timeline.
This patch adds code to isomp4 to:
- parse the tfdt box
- adjust the time/position member of the new segment sent when playback starts
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677535
2012-08-28 16:28:27 +02:00
Tim-Philipp Müller
4bb52bbadf
docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert
2012-08-27 21:20:30 +01:00
Tim-Philipp Müller
e4cb67fad8
docs: gst-launch-0.11 -> gst-launch-1.0
2012-08-27 21:20:29 +01:00
Tim-Philipp Müller
045c4b6ec8
deinterlace: the field in caps is "interlace-mode" not "interlace-method"
...
Fix deinterlace unit test. Need to set right field on output caps.
Also remove right field (not old 0.10 "interlaced" boolean field)
from caps in unit test before comparing old and new.
2012-08-27 21:20:29 +01:00
Michael Rubinstein
6ea5d31456
videomixer: fix endianness check on systems where non-glib endianness defines are not set
...
On Windows LITTLE_ENDIAN without the G_ in was not defined, so the
test comes out wrong.
2012-08-24 19:45:11 +01:00
Wim Taymans
916e4c86fa
udpsink: don't crash on NULL error
...
Check if there is an error before retrieving its message.
See https://bugzilla.gnome.org/show_bug.cgi?id=682481
2012-08-22 17:27:27 +02:00
Aleix Conchillo Flaque
8d864dbbfc
rtspsrc: make jitterbuffer drop-on-latency available ( fix #682055 )
...
Conflicts:
gst/rtsp/gstrtspsrc.h
2012-08-22 10:39:19 +02:00
Tim-Philipp Müller
bce47066ca
video/x-dvd-subpicture -> subpicture/x-dvd
2012-08-20 23:30:38 +01:00
Tim-Philipp Müller
6ee9a7d228
multifilesrc: fix example pipeline in docs
2012-08-17 20:52:42 +01:00
Stefan Sauer
1f255a585b
equalizer: enable presets for the n-band equalizer
...
Add a test for saving and restoring the preset.
2012-08-17 15:01:40 +02:00
Tim-Philipp Müller
0d148d9c6f
deinterlace: fix not-negotiated errors on variable or missing framerate in input caps
...
Remove some bogus code I added during porting that would error out
on missing or variable framerates in input caps. Handle this like
we do in 0.10
Fixes test_mode_disabled_passthrough unit test check.
2012-08-14 01:20:19 +01:00
Sjoerd Simons
b19b914d3a
law: Filter layout caps field
...
The layout caps field shouldn't be passed through to the sink pad
of {mu,a}lawdec.
https://bugzilla.gnome.org/show_bug.cgi?id=681677
2012-08-13 08:52:58 +02:00
Olivier Crête
264bcf7d6f
rtph264pay: Make it actually work after cleanups
2012-08-08 19:49:05 -07:00
Sebastian Dröge
6586e42384
gst: Set alignment at the correct place of GstAllocationParams
2012-08-08 17:41:42 +02:00
Sebastian Dröge
6f74b2afb7
gst: Set alignment at the correct place of GstAllocationParams
2012-08-08 17:41:31 +02:00
Tim-Philipp Müller
0e6b66a2a0
gst: update disted orc files
2012-08-08 15:10:37 +01:00
Tim-Philipp Müller
787c314ec3
Silence some 'variable may be used uninitialized' compiler warnings
...
When compiling with -DG_DISABLE_ASSERT
2012-08-08 11:31:59 +01:00
Tim-Philipp Müller
4de8bd004c
No code with side-effects inside g_assert() please
2012-08-08 11:07:55 +01:00
Olivier Crête
b4ff570532
multiudpsink: Return FLUSHING instead of ERROR on unlock
...
If the base class asks multiudpsink to unlock, then it should return
FLUSHING, not ERROR
2012-08-07 11:31:32 -07:00
Mark Nauwelaerts
2d179ebf90
flacparse: generate empty vorbiscomment for complete streamheaders if needed
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681335
2012-08-07 12:24:42 +02:00
Olivier Crête
2e21ace12c
rtpssrcdemux: Block pad while it is announced.
...
Block the RTP pad and associated RTCP pads while they are being
announced. This it to prevent a race where one is announced and
before the callback has connected it, the other one gets a buffer.
We can't use the "padlock" of ssrcdemux because it causes deadlocks.
2012-08-06 18:04:58 -07:00
Mark Nauwelaerts
1547fdbe5a
rtpmparobustdepay: set correct data_size for generated dummy frame
...
... which prevents getting stuck in a loop if such one is needed.
2012-08-06 14:58:21 +02:00
Mark Nauwelaerts
3e1832f5a4
rtpmparobustdepay: improve and fix debug statement
...
... so it really informs about next rather than past frame.
2012-08-06 14:58:21 +02:00
Mark Nauwelaerts
31a1cb0a11
rtpmparobustdepay: update available bytewriter space when repositioning
...
... and add some more assert to catch potential surprises early on.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680558
2012-08-06 14:58:21 +02:00
Sebastian Dröge
7b5925b5a4
gst: Add stream-id to stream-start events
2012-08-06 13:43:57 +02:00
Sebastian Dröge
46255d6ada
matroskademux: Chain up to the parent class' query handler if no pad is provided
2012-08-06 10:59:18 +02:00
Olivier Crête
2aa360c936
rtpssrcdemux: Release lock before signalling new pad
...
This prevents a deadlock where something would try to push an event
through the SSRC demux from the callback, causing the pads to be iterated
and the lock taken.
2012-08-04 18:14:28 -07:00
Tim-Philipp Müller
c074bfd0b9
gst_tag_list_free -> gst_tag_list_unref
2012-08-04 16:10:16 +01:00
Mark Nauwelaerts
a549b0bf2c
rtspsrc: manage race between connection closing and flushing
...
... where the former can happen in task thread and the latter in mainloop
upon downward state change.
2012-08-03 14:10:32 +02:00
René Stadler
75ee20ec67
qtdemux: fix double unref of private tag buffer
2012-08-01 12:16:41 +02:00
Anton Belka
86c236a5f6
wavparse: create TOC as needed
...
Avoid creating the toc if the wav has no or empty cue chunk.
Also a small code cleanup.
2012-07-30 20:39:19 +02:00
Tim-Philipp Müller
1ddb71e5b6
wavparse: update for TOC API changes
2012-07-28 11:26:01 +01:00
Tim-Philipp Müller
5b4eb723b6
matroska: update for TOC API changes
2012-07-28 11:22:43 +01:00
Tim-Philipp Müller
1d5ed57cfa
flacparse: update for TOC API changes
2012-07-28 11:20:08 +01:00
Sebastian Dröge
0827f54b93
tag: Update for taglist/tag event API changes
2012-07-28 00:19:51 +02:00
Mark Nauwelaerts
dd25411161
qt(de)mux: pass private blob tags in a sample
...
... rather than a buffer, and the detailed info in the sample info
rather than caps.
2012-07-27 12:12:13 +02:00
Robert Swain
af7fee714d
videocrop: Don't return NULL from _transform_caps
...
If _transform_caps () returns NULL, the basetransform _transform_caps
tries to call gst_caps_is_subset () with a NULL subset which hits an
assertion.
2012-07-27 11:33:12 +02:00
Mark Nauwelaerts
0bf9d8c6a6
rtpmparobustdepay: modify buffer data rather than buffer itself
2012-07-26 16:34:52 +02:00
Mark Nauwelaerts
c40807f6aa
rtpmparobustdepay: avoid leaking bytewriter instance
2012-07-26 16:34:52 +02:00
Robert Swain
cc4941797d
deinterlace: Fix timestamp adjustment and caps
2012-07-26 16:04:23 +02:00
Robert Swain
01016109d0
deinterlace: Fix/simplify telecine state checks
2012-07-26 16:03:57 +02:00
Robert Swain
db5bb81e36
deinterlace: Improve debug output
2012-07-26 12:31:52 +02:00
Robert Swain
f20d8f59c8
deinterlace: Fix low-latency pattern locking
2012-07-26 12:31:52 +02:00
Robert Swain
30a61f26ba
deinterlace: RFF should be ignored in deinterlace
...
RFF only occurs on progressive frames in telecine sequences. For
deinterlace, we don't want these repeated fields as we will simply be
pushing the progressive frame and then moving on.
However, we need to consider RFF in order to correctly identify patterns
and adjust the timestamps.
2012-07-26 12:31:52 +02:00
Robert Swain
7c0af11fca
deinterlace: Improve process logic
...
The logic now works better if we filter orphans, then progressive, then
telecine interlaced fields which need to be woven and fall through to
interlace. Telecine interlaced fields will be regularly deinterlaced if
there is no pattern lock for us to be sure that we have a telecine
pattern.
Telecine sequences that aren't 24fps progressive with RFF flags can't
really be tested until fieldanalysis is ported.
2012-07-26 12:31:52 +02:00
Wim Taymans
ef38efc2d7
rtsp: go and stay in the loop function on PLAY
...
When we have a PLAY request, go into the LOOP function next. When we are
looping, keep on looping until we are told otherwise.
This fixed rtsp and TCP connections.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680551
2012-07-25 12:50:01 +02:00
Wim Taymans
943b56ff8e
rtsp: set caps after activating the pad
2012-07-25 12:49:35 +02:00
Wim Taymans
0ed9e07c5d
h264depay: small cleanups
2012-07-25 12:49:07 +02:00
Wim Taymans
0cb11943e5
xqtdepay: fix buffer refcount error
...
After pushing the buffer into the adapter, we should not let the baseclass push
it out anymore. This error was introduced while porting to 0.11.
See https://bugzilla.gnome.org/show_bug.cgi?id=680540
2012-07-25 10:11:29 +02:00
Stefan Sauer
242321e376
level: remove obsolete liboil comment
2012-07-24 21:42:40 +02:00
Mark Nauwelaerts
1a46572aaa
matroskademux: push mode: increase segment accuracy following seek
...
Conflicts:
gst/matroska/matroska-demux.c
2012-07-24 21:15:49 +02:00
Mark Nauwelaerts
ea0729ff32
matroskademux: perform proper KEY_UNIT seek also in push mode
...
Conflicts:
gst/matroska/matroska-demux.c
2012-07-24 21:15:49 +02:00
Tim-Philipp Müller
d6f4f1e01f
udpsrc: don't crash dereferencing NULL error when leaving multicast group on shutdown
...
Strangely enough, if we do pass an error variable to be filled, we
no longer get an error on leaving.
2012-07-24 20:06:07 +01:00
Mark Nauwelaerts
6cc2ad4744
avidemux: rearrange some checks to avoid NULL use
2012-07-24 16:05:32 +02:00
Mark Nauwelaerts
6cb106d690
avidemux: use same fourcc to determine caps in determining uncompressed-ness
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=673898
Conflicts:
gst/avi/gstavidemux.c
2012-07-24 16:05:31 +02:00
Mark Nauwelaerts
e5369901ad
Revert "avidemux: Don't consider 0 fcc_handler as uncompressed."
...
This reverts commit c6b9f5b25a
.
fourcc GST_RIFF_rgb = 0 still leads to raw uncompressed rgb caps.
See also https://bugzilla.gnome.org/show_bug.cgi?id=673898
2012-07-24 16:05:31 +02:00
Mark Nauwelaerts
7e9dffa226
matroskademux: avoid NULL access when checking subtitle
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680388
2012-07-24 12:33:41 +02:00
Edward Hervey
538c131b37
aacparse: Reset parser when we have caps without codec_data
...
This ensures the detection (and proper downstream caps settings) will
actually happen when we have new incoming caps without codec_data.
This was easily triggered by streams from matroskademux which initially
provided caps with a constructed codec_data, but then pushed new caps
without the codec_data once it detected the stream was adts.
2012-07-24 12:24:43 +02:00
Wim Taymans
f44808338f
videomixer: prefix orc functions with video_mixer_orc_
2012-07-24 09:17:09 +02:00
Wim Taymans
29743c3ed2
videobox: prefix orc functions with video_box_orc_
2012-07-24 09:13:48 +02:00
Mark Nauwelaerts
d6ef204190
matroskademux: generate correct segment stream time
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680275
2012-07-23 17:38:43 +02:00
Wim Taymans
4b92022120
rtp: always use buffer lists
2012-07-23 16:42:56 +02:00
Patricia Muscalu
3dd99f06f4
rtpmp4vpay: always enable buffer-lists
2012-07-23 16:17:37 +02:00
Patricia Muscalu
15cce2dd26
rtpjpegpay: always enable buffer-lists
2012-07-23 16:15:59 +02:00
Wim Taymans
7fdd607561
deinterlace: get frame flags correctly
...
Also move the deinterlace plugin to ported status
2012-07-23 15:50:18 +02:00
Mark Nauwelaerts
a5dfa3d689
matroskademux: proper parse recovery after seek
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680427
2012-07-23 15:45:33 +02:00
Mark Nauwelaerts
33091e2bf5
flvdemux: clear old segment event when requesting new one
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680283
2012-07-23 12:50:21 +02:00
Alban Browaeys
7b16eb49b8
wavparse: convert all non GST_FORMAT_BYTES to format bytes.
...
Convert all non GST_FORMAT_BYTES to format bytes:
fixes:
GStreamer-CRITICAL **: gst_query_set_duration: assertion `format ==
g_value_get_enum (gst_structure_id_get_value (s, GST_QUARK (FORMAT)))'
failed
when playing more than one wav stream.
gst-plugins-base/tests/icles/playback/test7 uri1.wav uri2.wav
2012-07-23 09:49:51 +02:00
Sebastian Dröge
cbf3c2bac0
wavparse: Don't fail if more data then needed is available when parsing cue chunks
...
Fixes bug #680328 .
2012-07-23 09:26:40 +02:00
Sebastian Dröge
e7977d2d64
wavparse: Some minor cleanup to the cue/labl parsing
2012-07-23 09:26:40 +02:00
Robert Swain
eac172c433
deinterlace: Port to 1.0
...
This requires the additional INTERLACED buffer flag recently added to
-base
2012-07-20 23:23:42 +02:00
Wim Taymans
ec7f7264dc
interleave: convert the output segment to time
...
Convert the stored input segment to time before pushing it out.
Conflicts:
gst/interleave/interleave.c
2012-07-20 16:09:33 +02:00
Wim Taymans
4dfb796527
interleave: try to fix segment handling
...
Conflicts:
gst/interleave/interleave.c
2012-07-20 15:54:38 +02:00
Sebastian Dröge
b4621cbb3a
matroskademux: Non-update seeks should still make sure that reverse playback status is reset
...
Conflicts:
gst/matroska/matroska-demux.c
2012-07-20 15:33:43 +02:00
Sebastian Dröge
9a83a0749e
matroskademux: Properly initialize from_offset and from_time
2012-07-20 15:33:04 +02:00
Sebastian Dröge
b02034dda1
matroskademux: We need an index and index entry for reverse playback
...
Reverse playback does not work with index-less files yet.
2012-07-20 14:28:37 +02:00
Mark Nauwelaerts
d90686f722
wavparse: clean up push mode segment handling
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680277
2012-07-20 14:10:41 +02:00
Mark Nauwelaerts
7247d136e5
qtdemux: properly transform incoming segment event
...
... which is really useful for proper push mode seeking.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680278
2012-07-20 13:35:29 +02:00
Sebastian Dröge
6dbc6ad3cf
matroskademux: Fix reverse playback for seeks without stop position
...
Conflicts:
gst/matroska/matroska-demux.c
gst/matroska/matroska-demux.h
2012-07-20 11:23:16 +02:00
Sebastian Dröge
42b5065cc4
matroskademux: Only take the stream_start_time into account for SET seeks
...
For other seeks the stream_start_time is already added to the
segment values.
Conflicts:
gst/matroska/matroska-demux.c
2012-07-20 11:18:27 +02:00
Anton Belka
cc6d533521
wavparse: Add TOC support
...
Add support for:
* Cue Chunk
* Associated Data List Chunk
* Label Chunk
https://bugzilla.gnome.org/show_bug.cgi?id=677306
2012-07-20 09:55:50 +02:00
Maria Giovanna Chiossa
561b131e1a
rtspsrc: also set UDP buffer size in multicast
...
Also set the UDP buffer size in multicast mode.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=675448
2012-07-19 15:26:36 +02:00
Tim-Philipp Müller
f879e4e0f0
avidemux: fix header parsing in push mode
...
Fix 'break' that got warped to the wrong place,
probably as part of a merge. Fixes GST_IS_BUFFER
criticals in parse_idit() when being accidentally
passed a NULL buffer because of the missing break.
gst-launch-1.0 playbin uri=http://docs.gstreamer.com/media/sintel_trailer-480i.avi
2012-07-18 23:43:59 +01:00
Wim Taymans
ac2a366a12
update for ghostpad changes
2012-07-18 18:07:02 +02:00
Sebastian Dröge
9fdcad4aee
matroskademux: Pass seek rate to upstream seek events in push mode
...
Fixes bug #679435 .
Conflicts:
gst/matroska/matroska-demux.c
2012-07-18 11:40:56 +02:00
Wim Taymans
3371297afc
update for RTP buffer api changes
2012-07-17 16:39:02 +02:00
Wim Taymans
51371d26ee
update for RTP buffer api changes
2012-07-17 16:38:27 +02:00
Patricia Muscalu
d38ac43a27
rtph264pay: use buffer lists
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679994
2012-07-17 10:10:14 +02:00
Sebastian Dröge
b01cf1561c
flacparse: Fix parsing of ISRC from the cuesheets
2012-07-17 10:01:54 +02:00
Anton Belka
ffc204e6bd
flacparse: add TOC support
...
Add support embedded cuesheets in flac files.
Parsing METADATA_BLOCK_CUESHEET as TOC.
https://bugzilla.gnome.org/show_bug.cgi?id=540891
2012-07-17 09:58:07 +02:00
Mark Nauwelaerts
a94d5d9f3b
flacparse: avoid some more frame misparsing by additional header sanity check
...
... using a required constant blocking_strategy bit.
https://bugzilla.gnome.org/show_bug.cgi?id=679807
2012-07-13 15:37:18 +02:00
Edward Hervey
f063e40af7
demux: Push STREAM_START event when needed
2012-07-13 13:51:48 +02:00
Stefan Sauer
0cff483bd7
qtmux: avoid warning if both ts are equal
2012-07-11 13:54:00 +02:00
Tim-Philipp Müller
80245e2a70
multiudpsink: check the right size when warning about too large udp packets
...
What matters is the total size, not the size of any of the
individual memory chunks that make up the packet.
2012-07-11 12:31:13 +01:00
Wim Taymans
ab77c424be
autodetect: proxy ts-offset properties
...
Proxy the ts-offset property in the audio*sink elements.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679343
2012-07-10 14:38:21 +02:00
Wim Taymans
2052cabdc4
fix for allocator API changes
2012-07-09 16:28:41 +02:00
Mark Nauwelaerts
f1b435d1b5
update for riff field rename
2012-07-09 12:53:47 +02:00
Tim-Philipp Müller
945ed74ebe
dtmfsrc: pass unhandled non-custom events to the base class
...
https://bugzilla.gnome.org/show_bug.cgi?id=666626
2012-07-08 00:08:55 +01:00
Tim-Philipp Müller
c6224443a4
rtph264pay: avoid some relocations
2012-07-06 19:11:02 +01:00
Tim-Philipp Müller
3ef35ecdbc
rtpmp4vpay: remove deprecated send-config property
...
Use config-interval instead.
2012-07-06 14:49:18 +01:00
Tim-Philipp Müller
cd1da84bcc
rtph264depay: remove deprecated "byte-stream" and "access-unit" properties
...
These will be picked automatically based on downstream caps now, so
if you want the depayloader to output a specific format, make sure
the element downstream advertises that preference or use a capsfilter
after the depayloader to force it.
2012-07-06 14:46:22 +01:00
Tim-Philipp Müller
cffbf8cfc3
rtph264pay: remove deprecated and non-functional "profile-level-id" property
...
This is now optionally taken from downstream caps, so can be
specified via a capsfilter after the payloader.
2012-07-06 14:46:22 +01:00
Mark Nauwelaerts
400bdee601
aacparse: perform additional sanity check before confirming ADTS format
...
... and tweak confusing debug message.
2012-07-06 15:29:37 +02:00
Mark Nauwelaerts
986286a8ea
aacparse: remove unhelpful stray debug message
2012-07-06 15:29:28 +02:00
Tim-Philipp Müller
c22268b5d3
rtpsession: remove deprecated and unused "ntp-ns-base" property
2012-07-06 13:16:00 +01:00
Tim-Philipp Müller
c60625a5e4
docs: update isomp4 docs for gppmux -> 3gppmux change as well
2012-07-06 12:57:34 +01:00
Tim-Philipp Müller
cf9b2149dd
isomp4: remove gppmux, which was deprecated in favour of 3gppmux
2012-07-06 12:54:02 +01:00
Tim-Philipp Müller
1cb8295bb0
smtp: remove deprecated "fps" property
2012-07-06 12:49:54 +01:00
Tim-Philipp Müller
080cbf322f
multipartdemux: remove deprecated and unused "autoscan" property
...
Replaced by boundary=NULL.
2012-07-06 12:46:30 +01:00
Tim-Philipp Müller
48706beb70
rtph263ppay: accept any h263 input unless downstream forces specific requirements
...
rtph263ppay should accept any input compatible with its sink template
caps if it just outputs to e.g. udpsink or fakesink.
rtph263ppay ! rtph263pdepay should also work with any compatible input.
This would fail before with not-negotiated errors because the get_caps
function would see the encoding-name in the depayloader's template caps
and default to baseline H.263 because there's no profile/level information
in those caps, which is the right thing to do if downstream has filtercaps
from an SDP, but not if those fields are absent because they can be
anything like with the depayloader's template caps. Makes
videotestsrc ! avenc_h263p ! rtph263ppay ! rtph263pdepay ! fakesink
work.
2012-07-06 11:57:38 +01:00
Wim Taymans
8eadb9c12c
update for query api changes
2012-07-06 11:26:46 +02:00
Sebastian Dröge
aeafc3a093
gst: Implement segment-done event
2012-07-05 13:13:09 +02:00
Sebastian Dröge
2e90ff9bb9
matroskademux: Remove the TOC query handling
2012-07-05 12:35:49 +02:00
Sebastian Dröge
04e0bbef17
matroska: Update for new GstToc API
...
TOC support in matroskamux is disabled for now as it was broken anyway.
2012-07-05 12:28:59 +02:00
Tim-Philipp Müller
8098a2f0b2
imagefreeze: clear 0 DTS on buffers output, as sinks will prefer DTS over PTS for syncing
...
Since the initial decoded still image buffer will have dts=pts=0, and
we only set PTS on buffers we push out, all buffers pushed out would
have a DTS of 0. Sinks, however, will prefer DTS over PTS if both are
set, and will therefore always see a timestamp of 0 no matter what
the PTS is set to.
Fixes unit test too.
2012-07-04 19:03:12 +01:00
Tim-Philipp Müller
42cc0d1e48
deinterleave; downgrade caps change failure debug message
...
Add some more info and downgrade to warning, so
it doesn't look like the unit test failed.
2012-07-03 19:44:26 +01:00
Tim-Philipp Müller
0fa3992e37
audiopanorama: fix negotiation and unit test
...
Must remove a possibly-fixed channel-mask field if
we're going to set unfixed channels on the structure,
or a different channel count.
2012-07-03 17:54:22 +01:00
Sebastian Dröge
407bf06dc4
matroskademux: Only push the TOC event, the message is handled by the sinks
2012-07-03 17:34:10 +02:00
Javier Jardón
c740490c26
rtp: remove some outdated comments
...
https://bugzilla.gnome.org/show_bug.cgi?id=679301
2012-07-03 08:58:26 +01:00
Tim-Philipp Müller
b9d020ac4f
rndbuffersize: add push mode support
...
https://bugzilla.gnome.org/show_bug.cgi?id=656317
2012-06-28 20:05:09 +01:00
David Corvoysier
c06cb7c145
isomp4: Try to seek upstream before processing seek push event
...
When it receives a seek in push mode, the qtdemux should first try to push the event upstream, and only if upstream fails fall back to
its own seek logic.
2012-06-28 14:44:58 +02:00
David Corvoysier
998534a2a1
isomp4: Allow duration queries to be forwarded upstream
...
When receiving a duration query for TIME format, try to query upstream, and only if upstream fails fall back to qtdemux duration handling.
2012-06-28 14:44:58 +02:00
Wim Taymans
6d158775bb
rtph264pay: cleanups
...
Use the caps properties for alignment and format.
Remove some old properties, we always want to use bufferlists when we can now.
2012-06-28 12:00:09 +02:00
Wim Taymans
429bda6923
h264pay: prefer AVC, it's easier to parse etc
2012-06-28 11:32:03 +02:00
Tim-Philipp Müller
83cb4c63c3
matroska: update for GstToc API additions
2012-06-26 18:48:11 +01:00
Wim Taymans
e565f0d1ff
matroska: set interlace-mode
2012-06-26 17:04:41 +02:00
Tim-Philipp Müller
2c04c30ec3
matroska-mux: update for GstTocSetter changes
2012-06-25 20:11:53 +01:00
Sebastian Dröge
dff2fec970
matroskademux: Return FALSE from queries if we can't answer POSITION/DURATION queries
2012-06-25 13:33:57 +02:00
Anton Belka
c3061f434b
matroskademux: Return FALSE from TOC query if no TOC exists instead of an empty TOC
2012-06-25 09:47:59 +02:00
Tim-Philipp Müller
296783908c
matroska: update for GstToc API changes
2012-06-24 22:51:16 +01:00
Tim-Philipp Müller
456847c66b
rtspsrc: update for gst_element_make_from_uri() changes
2012-06-23 14:57:28 +01:00
Wim Taymans
30d3dfee36
update for task api change
2012-06-20 10:33:42 +02:00
Wim Taymans
dc04908412
update for clock api changes
2012-06-20 10:01:57 +02:00
Matej Knopp
c55e492e80
matroska-demux: Send gap events for subtitle streams
2012-06-19 11:21:52 +01:00
Tim-Philipp Müller
b6da022417
splitfilesrc: fix up docs for 0.11
2012-06-17 01:00:40 +01:00
Tim-Philipp Müller
3b94e44571
splitfilesrc: small uri handler fixup and some more docs
...
Get URI location using gst_uri_get_location(), so any
escaped bits get unescaped.
https://bugzilla.gnome.org/show_bug.cgi?id=609049
2012-06-17 00:59:54 +01:00
Tim-Philipp Müller
1d659d8e41
splitfilesrc: re-port to 0.11
2012-06-17 00:59:21 +01:00
Bastien Nocera
9b13a29f91
splitfilesrc: Implement splitfile:// URI scheme
...
https://bugzilla.gnome.org/show_bug.cgi?id=609049
Conflicts:
gst/multifile/gstsplitfilesrc.c
2012-06-17 00:58:54 +01:00
Wim Taymans
540245894f
theoradepay: fix buffer memory
...
The memory was added to the input buffer instead of the output buffer.
2012-06-14 10:43:56 +02:00
Wim Taymans
694be55c05
rtspsrc: Don't reset time in flush-stop
...
Don't reset the time in flush-stop. Live sources can do this flush in the
playing state and so the pipeline will never have a chance to update the
base_time of the elements, which only happens when going from paused to
playing.
2012-06-14 08:58:58 +02:00
Vincent Penquerc'h
fe45881a0f
deinterlace: send QoS messages when dropping a frame
...
https://bugzilla.gnome.org/show_bug.cgi?id=657941
2012-06-12 15:40:37 +01:00
Wim Taymans
935472aba7
rtspsrc: Rework the async state handling
...
Always send the flushing events to the udp elements now that basesrc supports
this. This makes sure a segment event is sent correctly after a flush.
Keep track of the currently executing command and make it possible to specify
what command you want to cancel when starting a new async command.
See https://bugzilla.gnome.org/show_bug.cgi?id=677905
2012-06-12 16:05:40 +02:00
Stefan Sauer
ea17c457f9
childproxy: update api use
2012-06-11 18:24:20 +02:00
Mark Nauwelaerts
8b1da8adb2
matroskademux: always perform full seek if seek is flushing
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677838
2012-06-11 13:12:26 +02:00
Tim-Philipp Müller
17b422137a
rndbuffersize: printf format fix for long -> int change
2012-06-11 11:20:18 +01:00
Tim-Philipp Müller
98e415dc9d
debug: change rndbuffersize properties from long to int
...
These should all be int instead of long, to avoid bugs
when passing these as varargs with g_object_set(), and
there was no reason to use long in the first place here.
Fixes FIXME.
2012-06-09 16:53:54 +01:00
Sebastian Dröge
a1948e34d2
elements: Use gst_pad_set_caps() instead of manual event fiddling
2012-06-08 15:54:42 +02:00
Wim Taymans
f65495d405
update for audio api change
2012-06-08 10:11:12 +02:00
Wim Taymans
eb982e4bbe
rtspsrc: only reset the manager object when we did a seek
...
Only reset the manager object when we used a Range header, ie. when we did a
seek. Otherwise we just paused and we can resume just fine.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677475
2012-06-07 12:11:14 +02:00
Sebastian Dröge
91ca34a0bb
matroskademux: Update for TOC event API change
2012-06-06 14:17:08 +02:00
Wim Taymans
b5df4f0e62
update for tag event change
2012-06-06 13:02:12 +02:00
Wim Taymans
37df608fdc
fix Y800 format
2012-06-06 13:00:58 +02:00
Thiago Santos
78ec03e32f
Some printf variable format fixes
...
The osx compiler complains about those
2012-06-05 17:53:57 -03:00
Sebastian Dröge
ca4b5d795b
audioparsers: Fix GstBaseParse::get_sink_caps() implementations
...
They should take the filter caps into account and always return
the template caps appended to the actual caps. Otherwise the
parsers stop to accept unparsed streams where upstream does not
know about channels, rate, etc.
Fixes bug #677401 .
2012-06-05 09:21:08 +02:00
Wim Taymans
b8c08838bb
qtdemux: set the palette size correctly
2012-05-31 13:44:46 +02:00
Wim Taymans
72b7d4884f
video: remove duplicate format
2012-05-29 17:52:11 +02:00
Edward Hervey
5294edded2
flvdemux: Post error message if EOS before pads were created
...
Happens with some files with only headers
2012-05-29 16:59:06 +02:00
Tim-Philipp Müller
3986174aa9
flv, matroska: don't use GstStructure API on tag lists
2012-05-27 00:02:08 +01:00
Edward Hervey
923be8a85b
rtpmp2tdepay: Only output integral mpeg-ts packets
...
From RFC 2250
2. Encapsulation of MPEG System and Transport Streams
...
For MPEG2 Transport Streams the RTP payload will contain an integral
number of MPEG transport packets. To avoid end system
inefficiencies, data from multiple small MTS packets (normally fixed
in size at 188 bytes) are aggregated into a single RTP packet. The
number of transport packets contained is computed by dividing RTP
payload length by the length of an MTS packet (188).
....
Since it needs to contain "an integral number of MPEG transport packets", a
simple fix is to check that's the case, and strip off any leftover data.
Fixes #676799
Conflicts:
gst/rtp/gstrtpmp2tdepay.c
2012-05-26 12:04:54 +02:00
Alessandro Decina
51c8cd805d
matroskademux: increase NEWSEGMENT accuracy after seeking
...
demux->common.segment is populated during seek handling with the target
start/stop positions. Don't override them when sending out a NEWSEGMENT.
Conflicts:
gst/matroska/matroska-demux.c
2012-05-24 14:31:55 +02:00
Alessandro Decina
66d95d808c
matroskademux: don't discard the incoming seek segment on push based seeking
...
The incoming seek segment was being discarded leading to push based seeking
being potentially inaccurate.
2012-05-24 14:26:23 +02:00
Luis de Bethencourt
c81fff0471
rtp: fix build issue in gstrtph264pay.c
2012-05-24 09:29:25 +01:00
Jonas Holmberg
7bf3a1bf95
rtph264pay: Add unrestricted caps
...
If there are no profile restrictions downstream, return caps with
profile=constrained-baseline in the first structure and append
unrestricted caps as the last structure.
Fixes bug #672019
2012-05-24 10:01:19 +02:00
Maria Giovanna Chiossa
ff019d05f6
rtsp: add the Scale header when needed
...
Setting GST_SEEK_FLAG_SKIP when sending a seek event in rtspsrc should
set the "Scale" field in the rtsp PLAY header.
Because the boolean "src->skip" is set after the call, "Speed" instead
of "Scale" is always set. Move the assignment before issuing the _play
request.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676618
2012-05-24 09:57:31 +02:00
Sreerenj Balachandran
f400a06ba5
videobox: Fix the sample pipeline.
2012-05-23 10:14:16 +02:00
Anton Novikov
eba7494ab0
icydemux: warning if setting srcpad caps fails
2012-05-23 10:05:41 +02:00
Anton Novikov
6c31088adc
icydemux: activate srcpad before setting caps
...
Before gst_pad_set_active() is called, the pad has
FLUSHING flag set, so setting the caps fails
2012-05-23 10:04:09 +02:00
Thiago Santos
46083803d7
avimux: fix assertion when handling a date tag as a string
...
Date tags are GDate, not strings. Add a special case to convert
it to the exif date format representation in string to avoid
the assertion
2012-05-21 10:34:20 -03:00
Mark Nauwelaerts
182596b3ab
rtpmp2tpay: respect mtu and packet boundaries
...
See #659915 .
2012-05-18 12:53:44 +02:00
Youness Alaoui
7703a11073
rtpjpegpay: Allow U and V components to use different quant tables if they contain the same data
...
This allows some cameras (Logitech C920) that specify different quant
tables but both with the same data, to work.
Bug reported by Robert Krakora
2012-05-16 09:49:08 +02:00
Tim-Philipp Müller
aef0ad44d4
rndbuffersize: only send flush-stop if it was a flushing seek
2012-05-09 15:14:55 +01:00
Tim-Philipp Müller
338286cedf
rndbuffersize: must send flush-stop after acquiring the stream lock
...
Otherwise the streaming thread might just keep on going and we
might never get the stream lock.
2012-05-09 12:24:37 +01:00
Tim-Philipp Müller
7e03f5f004
rndbuffersize: port seeking code to 0.11
2012-05-09 11:39:34 +01:00
Tim-Philipp Müller
84c842cfe9
rndbuffersize: add support for seeks
...
Useful for e.g. filesrc ! rndbuffersize ! queue2 ! ...
2012-05-09 11:39:34 +01:00
Tim-Philipp Müller
920e91e072
rndbuffersize: send SEGMENT event before pushing buffers
...
Conflicts:
gst/debugutils/rndbuffersize.c
2012-05-09 11:39:34 +01:00
Wim Taymans
354e35a6ee
interleave: fix compilation again
2012-05-09 11:19:10 +02:00
Pascal Buhler
8161daef4a
rtpsession: creation should be signaled before validation
...
https://bugzilla.gnome.org/show_bug.cgi?id=667850
2012-05-09 10:36:18 +02:00
Alban Browaeys
a56361623c
isomp4: set layout=interleaved on raw audio caps
...
This fixes a not-negotiated error at least on mov files with
twos audio with two channels and video dvcp. As playbin and gst-launch
sample coming from the qtdemux.c file uses audioconvert and the latter
require format interleaved.
https://bugzilla.gnome.org/show_bug.cgi?id=675326
2012-05-03 23:28:50 +01:00
Tim-Philipp Müller
2d249dcc29
videomixer: change sink pad template name from sink_%d to sink_%u
2012-05-01 18:58:03 +01:00
Wim Taymans
01db5dbff0
interleave: handle EOS on all pads
...
When all pads go to EOS immediately, we are not negotiated and our collected
function is called (without any available data). Handle this case gracefully.
Conflicts:
gst/interleave/interleave.c
2012-05-01 13:35:56 +02:00
Wim Taymans
e0636feff8
interleave: improve debugging
2012-05-01 13:34:32 +02:00
Tim-Philipp Müller
b072c78270
alpha: don't set up stuff before the input and output formats are known
...
Fixes crash on startup.
2012-05-01 00:23:14 +01:00
Peter Seiderer
175f666293
multifilesink: don't write stream header twice for first file
2012-04-30 22:53:42 +01:00