Commit graph

74 commits

Author SHA1 Message Date
Carlos Rafael Giani
b415d7b34f rawparse: Add unaligned raw audio parsing to audioparse and add new element
This helps in cases where raw audio data is being delivered, but the
buffers do not come in sample aligned sizes. The new unalignedaudioparse
bin can be autoplugged and configures an internal audioparse element to
align the data. audioparse itself gets support for audio/x-unaligned-raw
input caps; the output caps then contain the same information, except that
the name is changed to audio/x-raw (since audioparse aligns the data).
This ensures that souphttpsrc ! audioparse still works.

https://bugzilla.gnome.org/show_bug.cgi?id=689460
2016-05-15 13:19:48 +03:00
Vineeth TM
8cdfb13658 bad: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763081
2016-03-24 14:56:51 +02:00
Aurélien Zanelli
5fd3511859 videoparse: initialize update_size to FALSE when updating info
Otherwise, behavior will be undefined when no strides/offsets are set
and it will likely go wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 14:48:11 -05:00
Nicolas Dufresne
acb7205f91 videoparse: Fix framesize calculation
When the framesize is not specified, we try and calculate a size from
the strides and offset information. This was done with the sum of
offsets + the size of the last frame. That is just wrong method. We also
need to account for video meta that may be flipping two planes. An
example is if you convert I420 to YV12 by flipping the two last offsets.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 14:48:11 -05:00
Aurélien Zanelli
fd33314f03 videoparse: use decide_allocation to check if downstream supports videometa
If yes, we add them to each output buffers and we avoid frame copy.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 10:02:55 -05:00
Aurélien Zanelli
354f16a5ca rawparse: add 'decide_allocation' vfunc to let subclass parse an allocation query
And so send an allocation query. This could be used to check whether
downstream element supports some metas or not.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 10:02:54 -05:00
Aurélien Zanelli
6e8278c51e rawparse: use size of buffer we got from adapter
Otherwise position in stream could be wrong if subclass 'pre_push_frame'
method changes the buffer size.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 10:02:54 -05:00
Aurélien Zanelli
a90f35e14b videoparse: add properties to set framesize, strides and planes offsets
To make parser work with image having non-standard strides, plane
offsets or with padding between images.
For now, since element doesn't check for videometa, we can't directly
push buffers when these properties are set so it convert the frame
in the pre_push_buffer method to remove any custom padding.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 10:02:54 -05:00
Aurélien Zanelli
04d59ffd4d rawparse: rename 'set_buffer_flags' vfunc to 'pre_push_buffer'
to allow subclass to change other fields of the buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 10:02:54 -05:00
Aurélien Zanelli
cf25e09b1a videoparse: cache video info in instance
To avoid initializing and filling video info each time we need it.

https://bugzilla.gnome.org/show_bug.cgi?id=760270
2016-01-28 10:02:54 -05:00
Vineeth TM
7c42ba97d7 plugins-bad: Fix example pipelines
rename gst-launch --> gst-launch-1.0
replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
fix caps in examples

https://bugzilla.gnome.org/show_bug.cgi?id=759432
2015-12-15 10:30:49 +00:00
Jimmy Ohn
be714c7441 rawparse: fix duplicated format in handle_seek_pull
GstFormat variable are duplicated in handle_seek_pull function.
So we need to move this variable in condition statement.

https://bugzilla.gnome.org/show_bug.cgi?id=753243
2015-08-04 12:29:40 -03:00
Tim-Philipp Müller
699452ef31 Remove obsolete Android build cruft
This is not needed any longer.
2015-04-26 18:59:32 +01:00
Wonchul Lee
aa2ecf5e53 rawparse: send SEEKING query upstream first
Sometimes rawparse does not handle the seeking query
properly, the rawparse should send the query upstream
first. For example, upstream could support seeking in
TIME format (but not in BYTE format), so the BYTE format
seeking query that rawparse sends in push mode would
fail.

https://bugzilla.gnome.org/show_bug.cgi?id=722764
2014-11-22 17:51:01 +00:00
Vootele Vesterblom
9e6377d4b7 rawparse: fix handling of segment event in sink event handler 2014-10-23 16:47:25 +02:00
Sebastian Dröge
1dd83ca6ee rawparse: Check for 0-size after adjusting the size for the frame size
If we don't have a complete raw audio frame we would otherwise still
ask for a 0 sized buffer from the adapter.
2014-10-22 15:07:04 +02:00
Sebastian Dröge
ee0ccf64c5 rawparse: Don't try to retrieve 0 byte buffers from the adapter in multi-frame mode 2014-10-22 14:44:20 +02:00
Vineeth T M
14acb6fb37 gst: remove unnecessary GLIB_DISABLE_DEPRECATION_WARNINGS
There are unnecessary definitions for disabling deprecation warnings.
Since GLIB_DISABLE_DEPRECATION_WARNINGS is not needed anymore in these files,
removing the same.

https://bugzilla.gnome.org/show_bug.cgi?id=737559
2014-10-02 10:51:35 +03:00
Sebastian Dröge
25b5da587d rawparse: Reset negotiation state when going back to READY
After going back to READY we can accept new format settings again.
2014-08-28 11:37:56 +03:00
Sebastian Dröge
ae99043506 rawparse: Use the pad passed to us directly for default event handling 2014-06-22 14:21:35 +02:00
Justin Joy
9bd4a1b2e0 rawparse: default query should be forward on target pad
https://bugzilla.gnome.org/show_bug.cgi?id=731899
2014-06-22 14:21:35 +02:00
Vincent Penquerc'h
9815faea9b rawparse: catch errors in caps manipulation
Coverity 1139622
2014-04-21 09:24:00 +01:00
Thijs Vermeir
3dedf16f50 rawparse: increase framerate to maxint 2014-03-05 11:20:27 +01:00
Thijs Vermeir
2923dbc29e rawparse: increase maximum framerate 2014-03-05 10:54:47 +01:00
Wim Taymans
b15177645b rawparse: fix event order
Delay forwarding the segment event until we pushed caps.
Send STREAM_START in pull mode.
2013-09-12 14:14:03 +02:00
Sebastian Dröge
e51cd4fe2f gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
Tim-Philipp Müller
0002f7638b rawparse: send segment event in time format also in push mode
When converting the incoming segment from byte to time format,
don't just convert the start/stop/time values, but also change
the segment format to TIME.

https://bugzilla.gnome.org/show_bug.cgi?id=696361
2013-03-22 19:40:58 +00:00
Vincent Penquerc'h
b6f50c51f3 rawparse: fix caps leak 2013-02-28 16:55:36 +00:00
Tim-Philipp Müller
9e1b75fda3 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Tim-Philipp Müller
32ba17cd0f 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
Michael Smith
e3a1e489d2 audioparse: Set framesize and properties correctly when taking format
from caps.
2012-10-12 12:29:59 -07:00
Michael Smith
080677beef audioparse: add a mode where the caps are taken from the sink pad, and thus audioparse
is only performing timestamping.
2012-10-09 23:00:14 -07:00
Mark Nauwelaerts
578861abea replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 17:27:49 +02:00
Wim Taymans
0d8f8a5134 rename some caps and elements in examples 2012-09-14 16:29:23 +02:00
Mark Nauwelaerts
b807753453 ext, gst: only activate in pull mode if upstream is seekable 2012-09-11 17:47:33 +02:00
Sebastian Dröge
9c7d7498bb gst: Implement segment-done event 2012-07-05 13:18:47 +02:00
Wim Taymans
dbed726057 update for task api change 2012-06-20 10:40:42 +02:00
Sebastian Dröge
cda192b3b7 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 18:02:56 +02:00
Alessandro Decina
cd21a65031 rawparse: fix compile warning 2012-04-05 09:08:02 +02:00
Sebastian Dröge
1318a97e0a gst: Update versioning 2012-04-04 14:44:34 +02:00
Wim Taymans
289e9683e9 rawparse: fix bayer caps 2012-03-21 09:41:08 +01:00
Mark Nauwelaerts
cc7918de19 rawparse: port to 0.11 2012-03-20 20:21:37 +01:00
Wim Taymans
bc38bc27b7 don't pass random pointers to pull_range 2012-03-16 21:47:39 +01:00
Wim Taymans
1119f6ee41 Merge branch 'master' into 0.11
Conflicts:
	ext/chromaprint/gstchromaprint.c
	ext/mpeg2enc/Makefile.am
	ext/voaacenc/gstvoaacenc.c
	gst/dvbsuboverlay/gstdvbsuboverlay.c
	gst/mpegtsdemux/mpegtsbase.c
	gst/sdp/gstsdpdemux.c
	gst/videoparsers/gsth264parse.c
	sys/d3dvideosink/d3dvideosink.c
	tests/examples/camerabin/gst-camera-perf.c
	tests/examples/camerabin/gst-camerabin-test.c
	tests/examples/camerabin2/gst-camerabin2-test.c
	tests/examples/mxf/mxfdemux-structure.c
	tests/examples/scaletempo/demo-main.c
2012-02-10 16:46:50 +01:00
Vincent Penquerc'h
8147669971 plenty: fixup glib deprecations 2012-01-27 15:47:07 +00:00
Vincent Penquerc'h
7521b597f4 various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Tim-Philipp Müller
10d31a588d Update for pad API changes
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:45:25 +00:00
Thibault Saunier
17fd7ebcb4 android: make it ready for androgenizer
Remove the android/ top dir
Fixe the Makefile.am to be androgenized

To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:27:11 +02:00
Arun Raghavan
7abe0a56af audioparse: Allow implicit channel map for 1-/2-channel audio
This makes sure we don't set an empty channel map array for 1-/2-channel
audio, causing an assert later on.
2010-12-08 16:30:11 +01:00
Sebastian Dröge
77c05b5419 audioparse: Add support for setting the channel-positions 2010-10-07 10:34:48 +02:00