Commit graph

3087 commits

Author SHA1 Message Date
Sebastian Dröge
7b979703f8 decklinkvideosink: Keep track of the time when we went to PLAYING for the external clock too
Otherwise we're adding an offset of the time the pipeline was in PLAYING
already to the running time when converting it to our internal clock.
2015-01-14 16:00:54 +01:00
Sebastian Dröge
aed66838f3 decklinkvideosink: Enable QoS and set max-lateness to 20ms 2015-01-14 13:33:15 +01:00
Sebastian Dröge
ab9ee34aba decklink: Use BT2020 colorspace for UltraHD resolutions 2015-01-13 19:56:45 +01:00
Sebastian Dröge
65119ae8b4 decklink: Fix indention once again 2015-01-13 19:56:45 +01:00
Sebastian Dröge
d2e309d341 decklinkvideosink: Get our own "start time" instead of the one of the pipeline
decklinkvideosink might be added later to the pipeline, or its state might
be handled separately from the pipeline. In which case the running time when
we (last) went into PLAYING state will be different from the pipeline's.

However we need our own start time to tell the Decklink API, which running
time should be displayed at the moment we go to PLAYING and start scheduled
rendering.
2015-01-13 17:44:17 +01:00
Sebastian Dröge
b79ece392c decklink: Initialize refcount of our C++ classes in the constructor
CID 1262288
CID 1262287
CID 1262289
2015-01-12 15:58:38 +01:00
Sebastian Dröge
4531a341a8 decklinkvideosrc: Post LATENCY message when the mode changes
Different modes have different framerates, and thus different latencies. We
might need to reconfigure the latency of the pipeline.
2015-01-08 18:16:12 +01:00
Sebastian Dröge
beede3f27d decklinkvideosrc: Fix compiler warning 2015-01-08 18:16:12 +01:00
Florian Langlois
9480d91ad4 decklinkvideosrc: Add automatic mode detection
https://bugzilla.gnome.org/show_bug.cgi?id=739284
2015-01-08 18:16:12 +01:00
Florian Zwoch
7d318a572c vtenc: Unlock the stream lock while waiting for pending frames to be completed in finish()
We might otherwise deadlock because gst_vtenc_enqueue_buffer() can be
called again and will take the stream lock again from another thread.

https://bugzilla.gnome.org/show_bug.cgi?id=742174
2015-01-08 14:48:20 +01:00
Sebastian Dröge
7e7cabb422 decklink: Add a dummy value to the video connection mapping table for auto 2015-01-08 12:55:51 +01:00
Sebastian Dröge
ed0d4cc653 decklinkaudiosrc: Add property to select the audio input connection 2015-01-08 12:48:22 +01:00
Sebastian Dröge
34de6ad73b decklink: Add XLR and RCA audio connection enums 2015-01-08 12:23:53 +01:00
Sebastian Dröge
a35d5ae9b9 decklinkvideosrc: Add auto value for the connection property
This will use the default/auto connection for video capturing, and can
be set via the Decklink configuration tools.
2015-01-08 12:23:09 +01:00
Sebastian Dröge
478deb4805 decklink: Fix indention once again 2015-01-08 12:13:03 +01:00
Florian Langlois
81c1ef190d decklink: Add property for configuring the input connection of the video sources 2015-01-08 12:12:50 +01:00
Florian Langlois
e7c6eb6326 decklink: Fix latency values for sources 2015-01-07 16:42:57 +01:00
Sebastian Dröge
196d9c4829 decklink: Add support for 4K / UHD modes 2014-12-29 17:58:37 +01:00
Sebastian Dröge
0122a9d1b6 decklink: Fix indention 2014-12-29 17:58:37 +01:00
Alessandro Decina
5496fd3e75 avfvideosrc: improve timestamp code
Use a combination of the running time and CMClockGetTime from AVF to compute
timestamps.
2014-12-27 12:43:45 +11:00
Sebastian Dröge
568da160cb vtenc: Instead of crashing if no corresponding frame is found, ignore this
... and hope that everything will be fine. This shouldn't really happen but
previously happened during shutdown. It should be fixed in videoencoder now,
but better be on the safe side here.
2014-12-22 11:49:08 +01:00
Sebastian Dröge
d632a48d6c decklink: Fix various compiler warnings with gcc 2014-12-19 15:05:58 +01:00
Sebastian Dröge
5e7782ca39 decklink: Re-add the COM initialization code for Windows
Untested, and we will never deinitialize COM again.
2014-12-19 14:50:25 +01:00
Sebastian Dröge
f9d16c5913 decklink: Remove in-same-pipeline detection code for audio/video elements of the same device
This causes deadlocks sometimes for some reason.
2014-12-19 14:40:40 +01:00
Sebastian Dröge
9c2e09cf39 decklinkvideosink: Implement clock slaving 2014-12-19 14:40:40 +01:00
Sebastian Dröge
b9e17c5605 decklinkvideosink: Add some more debug output for when frames are scheduled 2014-12-19 14:40:40 +01:00
Sebastian Dröge
ec90bbb6f3 decklink: Add property for configuring the buffer size of the sources 2014-12-19 14:40:40 +01:00
Sebastian Dröge
112fdd266a decklinkaudiosrc: Implement timestamp jitter and discont handling 2014-12-19 14:40:40 +01:00
Sebastian Dröge
7c0fb92f1b decklink: Our capture time is the end timestamp of the buffer, subtract the duration 2014-12-19 14:40:40 +01:00
Sebastian Dröge
4ef676f109 decklink: Allow for a maximum of 5 packets to be queued up
In case downstream is a bit slow with consuming packets at times.
2014-12-19 14:40:40 +01:00
Sebastian Dröge
aac0027ed2 decklink: Implement latency query in sources and remember selected mode 2014-12-19 14:40:40 +01:00
Sebastian Dröge
23d6eaaa10 decklink: Remove obsolete files 2014-12-19 14:40:39 +01:00
Sebastian Dröge
6d931a0c0e decklink: Add initial version of audio and video sources 2014-12-19 14:40:39 +01:00
Sebastian Dröge
57d46fe9e1 decklink: Initial version of the audio/video sink rewrite 2014-12-19 14:40:39 +01:00
Alessandro Decina
0156725480 avfvideosrc: improve timestamping and latency reporting
Use AVF provided timings to timestamp output buffers. Use the running time at
the time the first buffer is produced to base timestamps on. Report 1-frame
latency based on the negotiated framerate instead of hardcoding 4ms latency.
2014-12-17 12:24:05 +11:00
Raimo Järvi
96ea75d75a dshowdecwrapper: Remove dependency on ATL
This fixes compiling with Visual C++ Express
that doesn't include ATL.

https://bugzilla.gnome.org/show_bug.cgi?id=677223
2014-12-16 23:17:35 +00:00
Matthew Bader
0fc55436b3 dshowsrcwrapper: Added support for image/jpeg and h264
https://bugzilla.gnome.org/show_bug.cgi?id=741188
2014-12-16 23:17:25 +00:00
Wim Taymans
87f5574e39 rectangle: clear rectangle struct before use 2014-12-16 13:35:14 +01:00
Nick Stoughton
a344b99c98 bluez: support compile-time distinction between bluez4 and bluez5
Signed-off-by: Nick Stoughton <nstoughton@aether.com>

https://bugzilla.gnome.org/show_bug.cgi?id=738626
2014-12-11 09:08:47 +05:30
Alessandro Decina
4d89d7116b vtenc: bump rank to PRIMARY 2014-12-11 00:02:26 +11:00
Alessandro Decina
21f8c96d75 vtenc: negotiate profile and level with downstream 2014-12-10 22:36:53 +11:00
Alessandro Decina
8166487a00 vtenc: report latency 2014-12-10 19:44:51 +11:00
Sebastian Dröge
b88e4304f1 vtenc: Add properties to specify the maximum keyframe interval in frames and seconds 2014-12-05 16:33:54 +01:00
Sebastian Dröge
1a2362eb2b vtenc: Fix conversion of the bitrate property and our internal bitrate storage
The property is in kbit/s and we store it in bit/s, so just multiply and
divide by 1000. No need to put a factor of 8 in there.

kVTCompressionPropertyKey_AverageBitRate is also in bit/s according to
its documentation.
2014-12-05 16:17:16 +01:00
Chun-wei Fan
788297fec3 dshowvideosink: Port to 1.0 and new GLib threading API
This updates the dshowvideosink to work with the GStreamer 1.0.x APIs, and
avoids the use of deprecated GLib threading API that are now used since
GLib 2.32+

https://bugzilla.gnome.org/show_bug.cgi?id=699364
2014-12-05 08:02:02 +00:00
Matthew Bader
54a7bdc0be dshowdecwrapper: Port to 1.x
https://bugzilla.gnome.org/show_bug.cgi?id=740945
2014-12-04 22:09:29 +01:00
Reynaldo H. Verdejo Pinochet
89eb1e9a03 vcdsrc: port to 1.
https://bugzilla.gnome.org/show_bug.cgi?id=547661
2014-12-04 17:00:52 -03:00
Matthew Bader
d627f4b93b dshowsrcwrapper: Fixed null caps comparison
https://bugzilla.gnome.org/show_bug.cgi?id=741086
2014-12-04 18:04:11 +01:00
Sebastian Dröge
2d25f2e0b8 decklink: Fix make distcheck
And properly dist all headers and source files.
2014-12-04 15:43:20 +01:00
Sebastian Dröge
d0892984bc decklink: Fix compiler warnings with gcc in the dispatcher 2014-12-03 16:01:32 +01:00
Sebastian Dröge
9aa8bf1705 decklink: Update Windows SDK headers to 10.3.1
No idea where the DecklinkAPIDispatch.cpp comes from on Windows,
but this should still work. Will just become a problem once we
use other parts of the API.
2014-12-03 15:16:18 +01:00
Sebastian Dröge
9a8a944d2f decklink: Update OS X SDK headers to 10.3.1 2014-12-03 14:42:43 +01:00
Sebastian Dröge
5d74b4ba42 decklink: Update Linux SDK headers to 10.3.1 2014-12-03 14:39:13 +01:00
Sebastian Dröge
55721c62e6 decklinksink: Drop too late frames and start scheduled playback at the correct time 2014-11-28 17:32:29 +01:00
Sebastian Dröge
c180012d02 decklinksrc: For the source, unsetting the callback already deletes it 2014-11-28 15:06:42 +01:00
Sebastian Dröge
820894a871 decklinksink: Wait for the pipeline clock instead of the decklink clock
Otherwise we're going to starve other elements if the decklink clock
is slower than the pipeline clock, or starts much later.

Of course this will still cause problems if the decklink clock and ours are
completely out of sync, or running at a very different rate. But this at least
works better now.
2014-11-28 14:58:41 +01:00
Sebastian Dröge
d191fb4476 decklinksink: Schedule video frames according to their timestamps, not according to a frame counter 2014-11-28 14:58:41 +01:00
Sebastian Dröge
b4695f60e5 decklinksink: Add some FIXME comments about synchronization 2014-11-28 14:58:41 +01:00
Sebastian Dröge
50c4ea54f6 decklinksrc: Sample the pipeline clock for the timestamps instead of coming up with our own
If we just count the frames and calculate timestamps from that, all frames
will arrive late in the sink as we have a live source here. Instead take
the pipeline clock at capture time as reference.
2014-11-28 14:56:19 +01:00
Sebastian Dröge
ee8766b342 decklinksrc: Handle callback/delegate object the same way as in the sink
Potentially fixes crashes.
2014-11-28 14:51:53 +01:00
Sebastian Dröge
2a0123d79a decklinksink: Don't crash when going to READY another time
We have to handle the callback object a bit different:
a) it needs a virtual destructor
b) we need to set the callback to NULL when we're done with the output
c) create a new one every time

https://bugzilla.gnome.org/show_bug.cgi?id=740616
2014-11-28 14:51:52 +01:00
Alessandro Decina
d25813c9bc vtenc: add quality property 2014-11-27 18:41:21 +01:00
Alessandro Decina
6a4270d5cc vtenc: set profile and level in caps 2014-11-27 18:41:21 +01:00
Tim-Philipp Müller
a964491735 Remove unported and obsolete qtwrapper plugin code
QuickTime is deprecated, we want new plugins based
on avfoundation (osx) or dxva/mediafoundation (windows).
2014-11-26 14:43:21 +00:00
Tim-Philipp Müller
99a17503a4 winks: fix debug message format issues
And print last bits of GUID properly instead
of printing nonsense.

https://bugzilla.gnome.org/show_bug.cgi?id=733055
2014-11-25 16:31:50 +00:00
Sebastian Dröge
11485e32ab decklink: Add support for 2k modes 2014-11-24 14:11:04 +01:00
Sebastian Dröge
104f39dfe8 decklink: HD1080i50 is 50 frames per second 2014-11-24 13:56:56 +01:00
Alessandro Decina
d45a2f0480 vtenc: let VT pick the bitrate by default 2014-11-21 15:48:08 +01:00
Alessandro Decina
d800ac023b vtenc: set H264_Baseline_AutoLevel on OSX as well 2014-11-20 16:06:46 +01:00
Alessandro Decina
d0ce9a6f7c vtdec: disable the reorder queue for baseline streams 2014-11-20 16:06:46 +01:00
Sebastian Dröge
6e2e8ec0ac vtdec: Fix divide by zero in the picture buffer length calculation 2014-11-20 09:42:24 +01:00
Reynaldo H. Verdejo Pinochet
21b544863a dvbsrc: drop explicit comparisons against 0 for true/false 2014-11-16 20:32:56 -03:00
Tim-Philipp Müller
3e1d763018 dvbbasebin: fix possible crash by passing 64 bits for 64-bit queue property
https://bugzilla.gnome.org/show_bug.cgi?id=740191
2014-11-15 21:59:48 +00:00
Sebastian Dröge
bdfac8a6d4 decklink: Fix indention 2014-11-14 10:41:59 +01:00
Alessandro Decina
5977ef5552 vtenc: fix build on iOS 2014-11-12 16:45:12 +01:00
Alessandro Decina
ad00f4a0e2 coremediabuffer: set ->pixel_buf for CVPixelBuffer buffers
Fix a bug for which we never actually set ->pixel_buf to non-NULL for
CVPixelBuffer buffers.
2014-11-12 15:40:30 +01:00
Alessandro Decina
a1cc1b34e1 vtenc: fix compilation on < 10.9 2014-11-12 10:00:11 +01:00
Alessandro Decina
bc7dbd7b51 vtenc: enable the hw encoder on OSX 2014-11-11 18:01:54 +01:00
Sebastian Dröge
e47dbaed07 decklinksink: Check the correct variable for failure
If we can't get an output, we would otherwise just use it later and crash.
2014-11-11 12:00:30 +01:00
Sebastian Dröge
98b856d630 avfvideosrc: Don't pretend to support reconfiguration
We will run into an assertion in set_caps() if we try to change
caps while the source is already running. Don't try to find new
caps in GstBaseSrc::negotiate() to prevent caps changes.
2014-11-09 10:41:52 +01:00
Alessandro Decina
1d97516731 vtenc: add realtime and allow-frame-reordering properties 2014-11-07 00:22:08 +01:00
Tim-Philipp Müller
f216b7bb11 Sprinkle some G_PARAM_DEPRECATED and #ifndef GST_REMOVE_DEPRECATED 2014-11-02 17:19:34 +00:00
Tim-Philipp Müller
95c211dc49 Add some missing G_END_DECLS 2014-10-28 21:42:31 +00:00
Tim-Philipp Müller
6505e84f7c dvbsrc: reflow switch case statement a bit
Make it clear there's no 'break' missing at the end
of the case SYS_DVBT, and pacify coverity (CID 1249689).
2014-10-27 12:43:53 +00:00
Reynaldo H. Verdejo Pinochet
e9cb4c58ab dvbsrc: correctly capitalize DiSEqC 2014-10-24 21:42:58 -03:00
Reynaldo H. Verdejo Pinochet
2879abd4f9 dvbsrc: rework _output_frontend_stats()
Retry stat reporting ioctls on EINTR
2014-10-24 20:24:36 -03:00
Reynaldo H. Verdejo Pinochet
34216b8332 dvbsrc: add checks on allowed DVB-T bandwidths 2014-10-24 20:24:36 -03:00
Reynaldo H. Verdejo Pinochet
c1d48d4acd dvbsrc: add fixme note on DTV_LNA setting
Rephrase another comment while at it
2014-10-24 20:24:30 -03:00
Reynaldo H. Verdejo Pinochet
ed7e763b9d dvbsrc: add missing logic for additional bandwidths
New 1.712, 5 and 10 MHz bandwidths were been ignored
at set/get prop.
2014-10-24 18:57:40 -03:00
Sebastian Dröge
68c067e3c9 vtenc: Fix locking
The object lock only protects the session, as we modify
the session from other threads when the bitrate property
is changed. Don't hold it much longer than for session
related things.

And we need to release the video decoder stream lock before
enqueueing a frames. It might wait for our callback to dequeue
a frame from another thread, which will then take the stream
lock too and deadlock.
2014-10-21 16:22:06 +02:00
Sebastian Dröge
ad649138aa vtenc: Use kVTProfileLevel_H264_Baseline_AutoLevel only on iOS
It is not required on OSX apparently and was only added in 10.9.6 there.
Calculating the correct level from the configuration is not trivial, so let's
just not set a level at all here.
2014-10-19 14:57:43 +02:00
Sebastian Dröge
b57f255f26 vtenc: VTCompressionSessionPrepareToEncodeFrames only exists since 10.9.6
Check with configure for it instead of using one of the availability macros
as those wouldn't work as expected with minor versions.
2014-10-19 14:51:40 +02:00
Sebastian Dröge
e79355078e vtenc: Remove unused #define 2014-10-19 14:32:31 +02:00
Sebastian Dröge
3cead041f6 vtdec: Set reorder length to 0 if we can't calculate it
Instead of leaving it at whatever value it had before.
2014-10-14 09:19:59 +02:00
Reynaldo H. Verdejo Pinochet
f426aee5db dvb: make interleaving a prop and proxy on dvbbasebin
DTV_INTERLEAVING is currently used only for DTBM. This is
congruent with the v4l dvb API where the different interleaving
modes where added for v5.7
2014-10-12 21:37:24 -03:00
Reynaldo H. Verdejo Pinochet
a3f8899e8b dvbsrc: add transmission mode checks for DVB-T/T2
These and every sanity check leading to a warning
(we have a few in place) should come handy when
debuging failed tunning scenarios.
2014-10-12 21:37:24 -03:00
Reynaldo H. Verdejo Pinochet
97df6ee85d dvbsrc: docs, drop v5 API change history comments < .5
We only support from minor 5 and up now. Also add a
note about the recently added preliminar DTMB support.
2014-10-12 21:37:24 -03:00
Reynaldo H. Verdejo Pinochet
e26eecd182 dvbsrc: add missing DVB-T2 bandwidth types
DVB-T2 supports 5, 10 and 1.712 MHz

Order of the enum values (new values after _AUTO)
has been kept congruent with the one in the v4l
API for consistency
2014-10-12 21:37:24 -03:00
Reynaldo H. Verdejo Pinochet
b0ade1a317 dvbsrc: add preliminary support for DTMB
Previously known as DMB-T/H, this is the
terrestial DTV broadcast standard currently
used by the People's Republic of China,
Hong Kong, Laos and Macau (officially),
and by Malaysia, Iraq, Jordan, Syria and
Lebanon (experimentally).
2014-10-03 23:27:04 -03:00
Reynaldo H. Verdejo Pinochet
5a2d834585 dvbsrc: add missing standard transmission modes
These apply to ISDB-T, DVB-T2 and DTMB

Order of the enum values (new rates after _AUTO)
has been kept congruent with the one in the v4l
API for consistency.
2014-10-03 23:27:04 -03:00
Reynaldo H. Verdejo Pinochet
9ed8fa25f4 dvbsrc: add missing DTMB guard intervals 2014-10-03 23:27:03 -03:00
Reynaldo H. Verdejo Pinochet
7724d406ea dvbsrc: add missing DVB-T2 guard intervals
According to the v4l-dvb API docs, these are only
used for DVB-T2 at the moment.

Order of the enum values (new rates after _AUTO)
has been kept congruent with the one in the v4l
API for consistency.
2014-10-03 23:27:03 -03:00
Reynaldo H. Verdejo Pinochet
cebba78b17 dvbsrc: add _MUTABLE_PLAYING to tuning props
The element can (re)tune while playing so basically
every property used at set_fe_params() can be set
in state <= PLAYING.
2014-10-03 23:27:03 -03:00
Sebastian Dröge
66a4572c12 androidmedia: Fix calculation of the frame size for COLOR_FormatYUV420Planar
https://bugzilla.gnome.org/show_bug.cgi?id=734156
2014-10-02 10:26:43 +03:00
Anuj Jaiswal
593f7d520e androidmedia: break statements unnecessary
Code flow never arrives to the break statements due to the goto's. So the
breaks are unecessary. Second part to commit a3958ae65b

https://bugzilla.gnome.org/show_bug.cgi?id=736940
2014-09-24 12:17:41 +01:00
Anuj Jaiswal
a3958ae65b androidmedia: break statement unnecessary
Code flow never arrives to the break statements due to the goto's. So the
breaks are unecessary.

https://bugzilla.gnome.org/show_bug.cgi?id=736942
2014-09-24 12:12:16 +01:00
Joshua M. Doe
27eb6555d1 dshowsrcwrapper: avoid error when set_caps called twice
If set_caps is called in a running state, return immediately if the caps
haven't changed. If the pins are already connected, disconnect them.

https://bugzilla.gnome.org/show_bug.cgi?id=736926
2014-09-24 10:02:39 +03:00
Reynaldo H. Verdejo Pinochet
784d2403dc dvbsrc: add missing FEC rates
Order of the enum values (new rates after _AUTO)
has been kept congruent with the one in the v4l
API for consistency.
2014-09-21 14:37:30 -03:00
Sebastian Dröge
3c1ccb64eb vtenc: Fix encoder to work on iOS
iOS has special stride requirements that we don't know yet, so copy
input buffers into buffers allocated by iOS for now.

Later we should check the stride and probably provide a buffer pool for these
buffers so upstream can directly write in there.
2014-09-19 14:47:05 +03:00
Sebastian Dröge
bee1477f08 applemedia: We need to map the coremedia buffers in non-readonly mode
Our buffers claim to be writable so other elements expect to be able
to write there without losing their changes.
2014-09-19 14:47:04 +03:00
Sebastian Dröge
9380f6282d vtenc: Let the encoder automatically choose a h264 level
We should negotiate these things via caps...
2014-09-18 17:49:46 +03:00
Sebastian Dröge
31476a3c46 vtenc: Use 0 instead of G_MAXDOUBLE as the max keyframe interval
0 means no limit, which was meant here with G_MAXDOUBLE probably.
2014-09-18 13:45:33 +03:00
Sebastian Dröge
8c1e84ff71 vtenc: Expected duration is supposed to be the duration of the stream, not a frame
Just don't set it for now, it isn't really needed.
2014-09-18 13:42:24 +03:00
Sebastian Dröge
61c40523df vtenc: Properly handle keyframes
Especially set the SYNC_POINT flag on keyframes.
2014-09-18 13:11:05 +03:00
Jerome Laheurte
4f60ecdd98 dshowsrcwrapper: Port to 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=732283
2014-09-18 12:36:34 +03:00
Sebastian Dröge
de9b0be86d vtdec: Fix compilation 2014-09-18 10:30:04 +03:00
Sebastian Dröge
e653068bc2 vtdec: Handle 0/1 framerates correctly by not calculating their frame duration 2014-09-18 09:47:06 +03:00
Sebastian Dröge
916155da2b atdec: Fix some compiler warnings with newer clang 2014-09-17 17:37:12 +03:00
Sebastian Dröge
ddea2e4498 vtenc: Prepare encoder after setup
This will allow encoding to happen faster on the first frame.
2014-09-17 17:10:58 +03:00
Sebastian Dröge
c6f17d6013 vtenc: Only drain the encoder in ::finish(), not on every frame
Otherwise quality and bitrate will be bad.
2014-09-17 17:08:57 +03:00
Sebastian Dröge
0390398e39 vtenc: Error out if encoding returned an error
Otherwise we will just continue consuming frames until all memory is filled
up and the app crashes.
2014-09-17 15:39:26 +03:00
Sebastian Dröge
e3bc32fb58 vtenc: Check for errors from VTCompressionSessionCompleteFrames() 2014-09-17 14:56:05 +03:00
Sebastian Dröge
b93e0f5f99 vtenc: Properly scale timestamps for the API and set invalid values 2014-09-17 14:55:24 +03:00
Sebastian Dröge
e4563ce6cf vtdec: Properly scale timestamps for the API and set invalid values 2014-09-17 14:54:39 +03:00
Sebastian Dröge
d789246077 applemedia: Remove old code that is of no use anymore 2014-09-17 13:19:04 +03:00
Sebastian Dröge
82aae4df74 applemedia: Do weak linking with the VideoToolbox framework
It does not exist on older OSX and iOS but we still want to
be able to use it when it's available.
2014-09-17 10:38:20 +03:00
Sebastian Dröge
7fa9bbc3b0 vtenc: Port to GstVideoEncoder base class 2014-09-16 17:04:31 +03:00
Sebastian Dröge
4e1f8285c2 vtenc: Use correct instance struct size 2014-09-16 16:13:16 +03:00
Sebastian Dröge
3a52f6b757 vtdec: Fix compiler warnings
values of type 'OSStatus' should not be used as format arguments; add an explicit cast to 'int' instead [-Wformat]
2014-09-16 15:48:11 +03:00
Sebastian Dröge
f2eedb9cee vtenc: Port to the real VideoToolbox API instead of using our dlopen() wrapper
It's a public framework since a long time.
2014-09-16 15:47:29 +03:00
Ognyan Tonchev
dc421b308b vdpdecoder: do not leak pool
https://bugzilla.gnome.org/show_bug.cgi?id=736733
2014-09-16 12:51:06 +03:00
Sebastian Dröge
0f0a50c119 vtdec: No need to set kVTVideoDecoderSpecification_EnableHardwareAcceleratedVideoDecoder on iOS 2014-09-15 15:42:41 +03:00
Sebastian Dröge
c82fa4f845 applemedia: Don't include VideoToolbox on iOS < 8.0
It's private API and does not work without a jailbroken device.
2014-09-15 15:12:31 +03:00
Sebastian Dröge
0b34cde46e vtdec: Fix compilation on iOS 8.0 2014-09-13 20:49:16 +03:00
Edward Hervey
562880bef9 dvbsrc: Use proper variable for delivery system
We want to check the delivery system is ISDBT (and not the modulation
which we check later in that case).

CID #1238439
2014-09-12 14:49:44 +02:00
Tim-Philipp Müller
7b8bd35d18 Fix up one-element lists in template caps 2014-09-10 17:24:39 +01:00
Tim-Philipp Müller
ffe59820d8 avfvideosrc: fix bogus BGRA caps
Remove 0.10-style endianness/*_mask/bpp/depth fields.
2014-09-10 16:38:52 +01:00
Reynaldo H. Verdejo Pinochet
10ece74f10 dvbsrc: retry opening the frontend on EINTR 2014-09-07 17:39:51 -03:00
Reynaldo H. Verdejo Pinochet
071f93c72f dvbsrc: assorted doc & spelling fixes 2014-09-07 17:39:51 -03:00
Reynaldo H. Verdejo Pinochet
641e0e973e dvbsrc: simplify ISDB-T launch line example 2014-09-02 18:06:53 -04:00
Reynaldo H. Verdejo Pinochet
1adc34cc03 dvbsrc: delay locking till actually needed
Get rid of unneeded locking at prop setting by doing
it only when tuning the frontend at _tune_fe()
2014-09-02 17:11:40 -04:00
Sebastian Dröge
f5e73d2808 amcaudiodec: Remove hack for Google MP3 decoder
The first buffer does not contain more garbage than any other MP3 decoder
outputs and we don't really know how much we have to drop or not.

After this change the output has the same duration as with mad.
2014-09-01 17:44:04 +03:00
Reynaldo H. Verdejo Pinochet
cd73c776f2 dvbsrc: fix description for modulation prop 2014-08-29 19:38:00 -04:00
Reynaldo H. Verdejo Pinochet
17beaed35f dvbsrc: add basic checks on ISDB-T parameters
Also add a routine for checking wrong delsys/modulation
combinations right before tuning (only implemented for
ISDB-T for now).
2014-08-29 19:38:00 -04:00
Reynaldo H. Verdejo Pinochet
fd64a75926 dvbsrc: add support for additional modulation types 2014-08-29 19:38:00 -04:00
Reynaldo H. Verdejo Pinochet
a0c79bc72b dvbsrc: drop FIXME on _ISDBT_LAYER_ENABLED prop
Valid values range from 1 to 7 as stated.

DTV_ISDBT_LAYER_ENABLED bitmask is built from
OR-ing 0x1 0x2 0x4. If all bits are set
(0x00000111 = 7) it means all layers should be
demodulated.
2014-08-29 19:38:00 -04:00
Sebastian Dröge
8f25220b9c androidmedia: Make sure to unblock any thread waiting on the drain condition variable when errors happen 2014-08-14 15:27:21 +03:00
Sebastian Dröge
ca62186797 androidmedia: Fix draining logic to let the base class handle EOS events
https://bugzilla.gnome.org//show_bug.cgi?id=734775
2014-08-14 15:27:21 +03:00
Reynaldo H. Verdejo Pinochet
17181bfe16 dvbbasebin: fix parsing of freqs in some ZAP files
Change avoids attempting to convert to kHz if unneeded.

There are quite some ZAP format variants out there. Among
their subtle little differences, some store transponder
frequencies in Mhz and others in kHz. The latter been the
most common variant.
2014-08-13 13:10:04 -04:00
Reynaldo H. Verdejo Pinochet
d314a3a591 dvbsrc: get rid of remaining trailing whitespace 2014-08-13 13:10:04 -04:00
Reynaldo H. Verdejo Pinochet
98cc508557 dvbsrc: wrap around known-interruptible ioctls
Also get rid of the asumption that some requests like
FE_SET_TONE or FE_SET_VOLTAGE only error out with -1
2014-08-13 13:10:04 -04:00
Reynaldo H. Verdejo Pinochet
4f10ab0671 dvbsrc: drop gst_dvbsrc_retry_ioctl for retry macro
LOOP_WHILE_EINTR macro makes it easier to handle
assorted ioctl argp types. Functionality is otherwise
equivalent.
2014-08-13 13:10:04 -04:00
Reynaldo H. Verdejo Pinochet
23fccad1fd dvbsrc: dvbbasebin: add 'tune' signal
It works the same as the 'tune' property that is used only to signal
the element that it should tune, but it is more natural to be used
as a signal rather than a property.

It is also proxied at the dvbbasebin element
2014-08-13 13:10:03 -04:00
Sebastian Rasmussen
078958bd6b pvrvideosink: Avoid leaking bufferpool configuration
gst_buffer_pool_get_config() returns a copy to the bufferpool's
configuration, which must be passed to gst_structure_free() after
use if not given away to gst_buffer_pool_set_config().

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734537
2014-08-10 12:19:50 +01:00
Sebastian Rasmussen
6d151843ef directsoundsrc: Avoid leaking copy of caps object
gst_pad_get_pad_template_caps() returns a reference which is unreferenced,
so creating a copy using gst_caps_copy() results in a reference leak.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734536
2014-08-10 12:16:08 +01:00
Sebastian Rasmussen
b323fba934 vtenc: Avoid leaking caps object and its copy
gst_pad_get_pad_template_caps() returns a reference which is unreferenced,
so creating a copy using gst_caps_copy() results in a reference leak. Also
the caps are pushed as an event downstream, but this doesn't consume the
caps so it must still be unreferenced.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734534
2014-08-10 12:13:48 +01:00
Sebastian Rasmussen
c1d5aa3da5 amcvideoenc: Avoid leaking copy of caps object
gst_pad_get_pad_template_caps() returns a reference which is unreferenced,
so creating a copy using gst_caps_copy() results in a reference leak.
Also remove the incorrect comment to avoid confusion in the future.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734533
2014-08-10 12:11:10 +01:00
Reynaldo H. Verdejo Pinochet
3e5c56e5fb dvbsrc: remove srcpad leftover
The element is inheriting its srcpad from basesrc
2014-08-03 19:13:36 -04:00
Sebastian Dröge
a680867761 decklinksink: Initialize pixel format to bmdFormat8BitYUV
https://bugzilla.gnome.org/show_bug.cgi?id=725871
2014-08-01 18:02:10 +02:00
Sebastian Dröge
fd793e9498 decklinksink: Catch errors during data flow and error out properly
Otherwise we will just deadlock the thread if e.g. scheduling a video
frame fails for whatever reason.
2014-08-01 16:59:42 +02:00
Sebastian Dröge
a8f94fe1e1 decklink: 59.94fps is 60000/1001, not 30000/1001
And also change 30/1 to 60/1 for one 60fps mode.
2014-08-01 12:39:47 +02:00
Reynaldo H. Verdejo Pinochet
d17203d26a dvbsrc: clarify units for freq and symbol-rate 2014-07-28 00:05:57 -04:00
Reynaldo H. Verdejo Pinochet
01e7e36217 dvbsrc: add preliminary support for ISDB-T/Tb
ISDB-T and ISDB-Tb (the Brazilian variant) are the
terrestial DTV standards used by Japan, Philippines,
Maldives, Thailand, most South American countries
and Botswana. Changeset adds the set of previously
missing (and required) ISDB-T parameters, adapter
and frontend setup logic and proxies the new
properties on dvbbasebin.

Tested to work with the live aerial broadcast by
Tv Paraíba HD in Campina Grande (Brazil).

https://bugzilla.gnome.org/show_bug.cgi?id=732875
2014-07-28 00:05:38 -04:00
Reynaldo H. Verdejo Pinochet
8391112af5 dvbsrc: make slof/lof1/lof2 settable properties
Allows proper tuning around high/low band boundaries when using
non "standard" LNBs.

Not all LNBs (Low noise block down converters) are made equal.
This is particularly true for universal LNBFs, where, even though
there are seemingly standard values for the local oscillator
frequencies, these can vary from manufacturer to manufacturer
and LNB model. Change also proxies the new LNB properties in
dvbbasebin.

https://bugzilla.gnome.org/show_bug.cgi?id=732818
2014-07-28 00:05:18 -04:00
Sebastian Dröge
8d5217141a openslesringbuffer: Provide the size of our array to GetDestinationOutputDeviceIDs
Otherwise it does not and just fails. It needs to know the size of the
array to not write too much to it.
2014-07-17 00:18:41 +02:00
Sebastian Dröge
fe42739a3e openslessink: Silence some error debug output to log output
These are not really errors, just unsupported features we don't
necessarily need.
2014-07-17 00:18:41 +02:00
Sebastian Dröge
4ec87d9690 d3dvideosink: Open Direct3D devices in a threadsafe way
Otherwise we'll get crashes when using the device from multiple
threads, e.g. when using multiple sinks at once.

https://bugzilla.gnome.org/show_bug.cgi?id=707523
2014-07-15 13:30:16 +02:00
Sebastian Dröge
2b63783c94 atdec: Change rank to MARGINAL until it can properly handle multichannel audio
https://bugzilla.gnome.org/show_bug.cgi?id=727757
2014-07-11 09:43:44 +02:00
Sebastian Dröge
c134930dbe d3dvideosink: Always lock the D3D surfaces in write mode
Locking them in readonly mode can give different stride to mapping
in write mode, which then causes rendering to be broken.

Happened on all (many?) NVIDIA GPUs.

Thanks to voskater15@gmail.com for hinting at the problem.

https://bugzilla.gnome.org/show_bug.cgi?id=712809
2014-07-03 19:10:26 +02:00
Sebastian Dröge
73c40a3132 d3dhelpers: Swap UV planes properly for YV12 as compared to I420
If we only do it in one place colors will look funny.
2014-07-03 19:06:26 +02:00
Sebastian Dröge
74c2e64d5d amc: Properly integrate COLOR_QCOM_FormatYVU420SemiPlanar32m again
https://bugzilla.gnome.org/show_bug.cgi?id=732683
2014-07-03 17:53:33 +02:00
Sebastian Dröge
93bce7aeb7 amcaudiodec: audio/mpeg is always MPEG 1 layer 3
Configuring e.g. layer 2 on such a decoder usually fails unless
it additionally also accepts audio/mpeg-L2.
2014-07-03 15:07:23 +02:00
Alessandro Decina
0258ec0273 applemedia: enable vtdec and vtenc only on >= 10.8 where VideoToolbox is public
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=723670
2014-07-02 12:56:06 +02:00
Thiago Santos
92dbcf2bf9 vtdec: avoid segfault when output isn't configured
This can help when the callback is called during/after videodecoder
base class shut down

https://bugzilla.gnome.org/show_bug.cgi?id=728435
2014-07-02 06:19:58 -03:00
Thiago Santos
f75f860ff3 vtdec: ignore the dropped flag if buffer was received
Apparently there is some issue with VT that makes it mark the dropped
flag even though the buffer was decoded.

https://bugzilla.gnome.org/show_bug.cgi?id=728435
2014-07-02 05:48:32 -03:00
Sebastian Dröge
25974ac0a9 d3dvideosink: Don't leak all surfaces
This was broken when disabling the buffer pool exporting.

Also disable buffer pool a bit more efficient...
2014-07-02 10:33:15 +02:00
Sebastian Dröge
28d250ec3f d3dvideosink: PostMessage() takes integers as last parameters, not pointers 2014-07-02 10:33:15 +02:00
Sebastian Dröge
677608bfb7 d3dvideosink: Remove unused variable 2014-07-02 10:33:15 +02:00
Matthieu Bouron
e1601406a5 vtenc: fix memory leak
The pixel buffer release callback is called if the void *
dataPtr given to the CVPixelBufferCreateWithPlanarBytes
is not NULL.

According to the documentation dataPtr is supposed to be a
"plane description block" but no specific type is given.

https://bugzilla.gnome.org/show_bug.cgi?id=711847
2014-06-30 13:09:28 +02:00
Sebastian Dröge
01fd3a1396 uvch264src: Free property strings when disposing the instance 2014-06-29 21:01:39 +02:00
Sebastian Dröge
b02cbcfa42 uvch264src: Fix compiler warning when compiling with G_DISABLE_ASSERT 2014-06-29 20:13:10 +02:00
Edward Hervey
22dfd9aef3 mpegts: Unify API : GstMpegts / gst_mpegts_ / GST_*_MPEGTS_
It was previously a mix and match of both variants, introducing just too much
confusion.

The prefix are from now on:
* GstMpegts for structures and type names (and not GstMpegTs)
* gst_mpegts_ for functions (and not gst_mpeg_ts_)
* GST_MPEGTS_ for enums/flags (and not GST_MPEG_TS_)
* GST_TYPE_MPEGTS_ for types (and not GST_TYPE_MPEG_TS_)

The rationale for chosing that is:
* the namespace is shorter/direct (it's mpegts, not mpeg_ts nor mpeg-ts)
* the namespace is one word under Gst
* it's shorter (yah)
2014-06-25 14:50:05 +02:00
Reynaldo H. Verdejo Pinochet
3d22f686b6 dvbsrc: add copyright/license stub to header 2014-06-25 01:05:45 -04:00
Reynaldo H. Verdejo Pinochet
643a19b0dc dvbsrc: documentation fixes 2014-06-25 01:05:40 -04:00
Eric Trousset
f54efc206f d3dvideosink: Release D3D surfaces when shutting down the sink
https://bugzilla.gnome.org/show_bug.cgi?id=726026
2014-06-23 20:44:23 +02:00
Sebastian Dröge
aa5f55cebe openslessrc: Classification of the element factory should be Source/ not Src/
https://bugzilla.gnome.org/show_bug.cgi?id=727811
2014-06-23 20:34:24 +02:00
Reynaldo H. Verdejo Pinochet
622953cb9b dvbsrc: fix diseqc-source prop name in example 2014-06-22 23:42:36 -04:00
Reynaldo H. Verdejo Pinochet
9fd3014a40 dvbsrc: fix nit on warning message 2014-06-22 23:42:36 -04:00
Sebastian Dröge
337bc06de1 androidmedia: Clear exceptions also when we did not provide a GError 2014-06-20 14:59:12 +02:00
Sebastian Dröge
aee9d12b86 androidmedia: Also don't report warnings for queue/dequeue errors during flushing in error cases
... and fix a case where we released an invalid buffer index.
2014-06-19 18:34:05 +02:00
Sebastian Dröge
880f3d8a18 androidmedia: Don't consider input buffer queueing failures as an error during flushing 2014-06-19 18:34:05 +02:00
Sebastian Dröge
71c0e0e19f androidmedia: Clean up flushing code and don't consider output buffer releasing failures during flushing as an error 2014-06-19 18:34:05 +02:00
Vincent Penquerc'h
402086a82d dvbsrc: do not try to close negative file descriptors
Interestingly, Coverity implies that close takes an unsigned
argument, while my close(2) man page shows it taking a signed
argument. I guess it may be platforms specific.

Coverity 1214602
2014-06-12 10:18:16 +01:00
Reynaldo H. Verdejo Pinochet
7c1f7fd787 dvbsrc: drop redundant assignment 2014-06-05 12:56:46 -04:00
Reynaldo H. Verdejo Pinochet
56933d97ec dvbsrc: improve timeout handing at locking loop
New approach attempts to be more accurate by measuring
the elapsed time by iteration. Also:

* Use a 10 seconds default timeout and a half a second
  polling step. New values should better match the tuning
  process on real-life scenarios.
* Correct elapsed_time computation.
* Add _retry_ioctl() to avoid bailing out on temporary
  ioctl EINTR failures (no need to check for EAGAIN cause
  we are opening the frontend on blocking mode)
* Small corrections to fail condition handling
2014-06-05 12:56:46 -04:00
Olivier Crête
db09922842 shmsink: Allocate enough memory to do alignment
https://bugzilla.gnome.org/show_bug.cgi?id=731093
2014-06-02 21:43:34 -04:00
Sebastian Dröge
b44724f662 androidmedia: Actually print the stacktrace into the error string 2014-06-02 12:39:49 +02:00
Sebastian Dröge
40fb09544f androidmedia: Clear the exception before trying to call Java methods to convert it to a string 2014-06-02 11:28:43 +02:00
Sebastian Dröge
0c93a82861 androidmedia: Fix crashes when loading the plugin in a standalone application on Android >= 4.4
Check if libnativehelper is loaded in the process and if
it has these awful wrappers for JNI_CreateJavaVM and
JNI_GetCreatedJavaVMs that crash the app if you don't
create a JniInvocation instance first. If it isn't we
just fail here and don't initialize anything.

See this code for reference:
https://android.googlesource.com/platform/libnativehelper/+/master/JniInvocation.cpp
2014-06-02 11:18:38 +02:00
Tim-Philipp Müller
ef143252d0 dvbbasebin: better error handling in case tsparse is missing
https://bugzilla.gnome.org/show_bug.cgi?id=730641
2014-06-01 10:47:12 +01:00
Reynaldo H. Verdejo Pinochet
d564b62ee8 dvbbasebin: add prop setup code for guint64
Needed since we are now proxying tuning-timeout
from dvbsrc.
2014-05-30 17:58:50 -04:00
Reynaldo H. Verdejo Pinochet
81d01f5db0 dvb/cam*: use g_strerror and other few nits 2014-05-30 13:12:32 -04:00
Reynaldo H. Verdejo Pinochet
e4dac3dbb2 dvbbasebin: fix dvbsrc signal proxying
https://bugzilla.gnome.org/show_bug.cgi?id=641204
2014-05-30 13:09:01 -04:00
Reynaldo H. Verdejo Pinochet
4880a8ad14 dvbbasebin: proxy new props/signals from dvbsrc
Proxy tuning start/done/fail signals and tuning-timeout
property.

https://bugzilla.gnome.org/show_bug.cgi?id=641204
2014-05-30 16:41:27 +02:00
Reynaldo H. Verdejo Pinochet
e68a6d48cb dvbsrc: smarten up tuning logic
* Drop remaining sleep() logic in favor of polling
* Use best guess delivery system if none is set
* Make tuning/locking timeout configurable
* Add signals for tuning start, done and fail
* Drop gst_dvbsrc_frontend_status(). It was used only
  for signal LOCK checking. This is now part of the
  tuning/locking loop
* Break up frontend configuration and tuning
  on separate functions

Plus:

* Add some more useful DEBUG/TRACE messages
* Move over misplaced DVB API message
* Fix wrong comment for default DVB buffer size (http://linuxtv.org/downloads/v4l-dvb-apis/dmx_fcalls.html#DMX_SET_BUFFER_SIZE)

This patch builds up on previous work done by
Fabrizio (Misto) Milo <mistobaan@gmail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=641204
2014-05-30 16:41:27 +02:00
Sebastian Dröge
f844af2320 androidmedia: Add exceptions from the Java API to error messages, and post more error/warning messages overall 2014-05-30 16:36:11 +02:00
Sebastian Dröge
440574d963 androidmedia: Add a GError argument to all amc methods and catch exceptions there 2014-05-30 15:25:25 +02:00
Sebastian Dröge
22b5abf86c androidmedia: Describe exceptions happening when scanning all codecs 2014-05-30 15:25:21 +02:00
Sebastian Dröge
3cf4c8cad1 androidmedia: Add API to convert an exception into a string 2014-05-30 15:25:21 +02:00
Jorge Zapata
ad82575693 Release the codec before freeing it
On Samsung Galaxy S4 it is impossible to have more than one
hardware decoder at the same time. If we do not release it
explicitly the GC only releases it whenever the whole application
is finished not whenever the activity is finished and thus a player
will not be able to work correctly
2014-05-30 12:40:59 +02:00
Sebastian Dröge
81716909fe Revert "androidmedia: Place some const keywords in a few places"
This reverts commit 3078b3a34c.

gst_video_frame_map() doesn't take a const GstVideoInfo*, so
all this is rather useless.
2014-05-27 08:51:39 +02:00
Sebastian Dröge
3078b3a34c androidmedia: Place some const keywords in a few places 2014-05-26 16:31:11 +02:00
Chen Jie
8e0bbc9e32 androidmedia: add gst_amc_color_format_copy
gst_amc_color_format_copy will copy in/out a frame resides at a
GstAmcBuffer. Lots of codes in gst_amc_video_*_fill_buffer are moved to
this new function.
2014-05-26 16:29:01 +02:00
Chen Jie
557d6b974f androidmedia: move create_src|sink_caps to gstamc.c
Some hack logic needs also to be present in create_src|sink_caps, for
working around some broken codecs. These hacks are hidden
in color_format/video_format conversion -- the prototypes of these
functions are also changed to include more args for hack judgement.

Also in case of multi-color_formats mapped to one video_format, then
map that video_format back will not give the original color_format, which
causes gst_amc_codec_configure failed with something like
'does not support color format N'.

The new prototype involves with GstAmcCodecInfo and mime, which
ensures the converted color_format is supported by the codec.

A COLOR_FormatYCbYCr to GST_VIDEO_FORMAT_YUY2 mapping is also added, in
order to work around bugs in OMX.k3.video.decoder.avc(which incorrectly
reports supporting COLOR_FormatYCbYCr, which is actually
COLOR_FormatYUV420SemiPlanar). There are already hacks for this in
gst_amc_video_format_to_color_format, gst_amc_color_format_to_video_format
and gst_amc_color_format_info_set, but the codec will still not work(be
ignored because of "has unknown color formats") without adding this mapping.
2014-05-26 16:29:01 +02:00
Stefan Ringel
f348944246 dvb: parsechannels: add delsys property
Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>

https://bugzilla.gnome.org/show_bug.cgi?id=709414
2014-05-26 13:32:21 +02:00
Vincent Penquerc'h
b67f64cf5d dvbsrc: map SYS_DVBC_ANNEX_A SYS_DVBC_ANNEX_AC for DVB API < 5.6
https://bugzilla.gnome.org/show_bug.cgi?id=721869
2014-05-26 13:28:24 +02:00
Vincent Penquerc'h
038d9794a1 dvbsrc: fix typo in testing flag
% instead of &

https://bugzilla.gnome.org/show_bug.cgi?id=721869
2014-05-26 13:28:24 +02:00
Chen Jie
27f4d8237f amcvideoenc: Unit of bitrate property is now bit/sec
https://bugzilla.gnome.org/show_bug.cgi?id=705129
2014-05-26 12:10:44 +02:00
Stefan Ringel
ab7f9654f4 dvbsrc: Add missing tone ioctl
https://bugzilla.gnome.org/show_bug.cgi?id=730692
2014-05-26 09:19:03 +02:00
Jorge Zapata
738da7835f androidmedia: Add a new QCOM color format
It is a NV12 based, aligned to 32 bytes

https://bugzilla.gnome.org/show_bug.cgi?id=730635
2014-05-23 15:19:36 +02:00
Sebastian Dröge
158caf952d androidmedia: First try to get symbols from the current program, then load libdvm
If the application is using the new ART runtime it will otherwise
load dalvik and start a dalvik VM next to the ART VM.
Does not work very well obviously.
2014-05-23 15:13:28 +02:00
Chen Jie
22c0464aa6 androidmedia: add support for video encoding
https://bugzilla.gnome.org/show_bug.cgi?id=705129
2014-05-23 09:37:54 +02:00
Michael Olbrich
c1db46ffc6 dvbsrc: fix building with newer kernel headers
c400eef377 introduced some defines to handle
older kernel headers. However, the check is done before the corresponding
kernel header (dvb/frontend.h) is included. As a result the macros are
always defined with results in 'redefined' errors with newer kernel
headers.
Move the check after the include to fix this.

https://bugzilla.gnome.org/show_bug.cgi?id=730570
2014-05-22 13:02:13 +02:00
Sebastian Dröge
c842df1c3d opensles: Work around race condition in Android < 4.2 that leads to deadlocks on shutdown
We need to sleep a bit before destroying the player object
because of a bug in Android in versions < 4.2.

OpenSLES is using AudioTrack for rendering the sound. AudioTrack
has a thread that pulls raw audio from the buffer queue and then
passes it forward to AudioFlinger (AudioTrack::processAudioBuffer()).
This thread is calling various callbacks on events, e.g. when
an underrun happens or to request data. OpenSLES sets this callback
on AudioTrack (audioTrack_callBack_pullFromBuffQueue() from
android_AudioPlayer.cpp). Among other things this is taking a lock
on the player interface.

Now if we destroy the player interface object, it will first of all
take the player interface lock (IObject_Destroy()). Then it destroys
the audio player instance (android_audioPlayer_destroy()) which then
calls stop() on the AudioTrack and deletes it. Now the destructor of
AudioTrack will wait until the rendering thread (AudioTrack::processAudioBuffer())
has finished.

If all this happens with bad timing it can happen that the rendering
thread is currently e.g. handling underrun but did not lock the player
interface object yet. Then destroying happens and takes the lock and waits
for the thread to finish. Then the thread tries to take the lock and waits
forever.

We wait a bit before destroying the player object to make sure that
the rendering thread finished whatever it was doing, and then stops
(note: we called gst_opensles_ringbuffer_stop() before this already).
2014-05-16 09:10:48 +02:00
Wim Taymans
ccccad4d8d bluez: fix property names
These were forgotten when they got renamed.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=729731
2014-05-14 11:48:47 +02:00
Edward Hervey
b2e037b7de shm: Don't leak GstShmPipe
By reordering the leaking code path to before the allocation

CID #1212153
2014-05-13 11:41:42 +02:00
Sebastian Dröge
a76832451d dvbsrc: Don't free string we're still using
CID 1213780
2014-05-12 10:04:16 +02:00
Reynaldo H. Verdejo Pinochet
a39c3bd01b dvbsrc: drop C++ style comments
This patch builds on previous work done by
Fabrizio (Misto) Milo <mistobaan@gmail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=641204
2014-05-10 18:30:30 -04:00
Reynaldo H. Verdejo Pinochet
d2138beb18 dvbsrc: fix up error reporting
This patch builds on previous work done by
Fabrizio (Misto) Milo <mistobaan@gmail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=641204
2014-05-10 18:30:24 -04:00
Sebastian Dröge
90643c696f mfc: Remove mfc plugin, it is obsoleted by the v4l2videodec element from gst-plugins-good 2014-05-03 13:12:40 +02:00
Nicolas Dufresne
4e9036690c decklink: Don't fail if HW does not have all interfaces
This patch completes 1c1cc73a3b. These
changes where accidentally pushed as a separate patch with wrong commit
message.

https://bugzilla.gnome.org/show_bug.cgi?id=7273
2014-04-27 09:34:39 -04:00
Tim-Philipp Müller
d5a0ace347 Revert "y4mdec: check for VIDEO meta instead of CROP meta"
This reverts commit 68309bd215.

Commit message and files changed do not match.
2014-04-27 13:11:03 +01:00
Andoni Morales Alastruey
fc02ec2087 avfassetsrc: downgrade rank to SECONDARY in OS X 2014-04-24 12:28:17 +02:00
Andoni Morales Alastruey
d234bee52f avfassetsrc: rename references to iOS 2014-04-24 12:28:17 +02:00
Matthieu Bouron
2f0aad7158 iosavassetsrc: rename element to avfassetsrc
https://bugzilla.gnome.org/show_bug.cgi?id=728249
2014-04-24 12:28:17 +02:00
Matthieu Bouron
ecf765635b iosavassetsrc: Port to 1.0
Also enables this element on OSX >= 10.7.

https://bugzilla.gnome.org/show_bug.cgi?id=728249
2014-04-24 12:28:17 +02:00
Andoni Morales Alastruey
9fec222b5a applemedia: add new source/decoder element for iOS assets
https://bugzilla.gnome.org/show_bug.cgi?id=728249
2014-04-24 12:28:16 +02:00
Matthieu Bouron
e728ee8208 coremediabuffer: handle stride alignment
Handle stride alignment through the use of the video meta API. The
code is based on the corevideobuffer implementation.

If the video meta API is not supported and the underlying buffer
contains padding, the core media buffer is copied to a system memory
buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=727885
2014-04-24 12:27:59 +02:00
Matthieu Bouron
c6572df9ff avfvideosrc: check if downstream supports the video meta API
Check if downstream supports the video meta API, so we can use it later
with the core media buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=727953
2014-04-24 10:46:51 +01:00
Nicolas Dufresne
1c1cc73a3b decklink: Fix support for HW without output
Devices suitable for decklinksrc may not have any output, hence querying
the input returns NULL. Add support for all cases where
input/output/config may be missing.

https://bugzilla.gnome.org/show_bug.cgi?id=727306
2014-04-23 12:42:44 -04:00
Nicolas Dufresne
68309bd215 y4mdec: check for VIDEO meta instead of CROP meta
This element only need stride support, but checks for CROP_META, which
is a bit too much, even though this works as CROP imply having VIDEO
meta.

https://bugzilla.gnome.org/show_bug.cgi?id=726255
2014-04-23 12:42:44 -04:00
Vincent Penquerc'h
8250a7d531 dvbbasebin: fix test for proper use count balancing
usecount is unsigned, so too many "unuse" will wrap the counter
around and the >= 0 check will always be fine.

It would be much simpler to just make the counter signed, but
moving the checks where the decrements happen allow a mistake
to be detected earlier, and thus easier to debug.

Coverity 1139791
2014-04-21 09:34:46 +01:00
Andoni Morales Alastruey
110c21a136 vtenc: fix complier error using fixed lenght arrays 2014-04-18 20:17:00 +02:00
Edward Hervey
c45b44e309 dvb: Fix if() check
introduced by my previous commit :(
2014-04-16 16:07:17 +02:00
Edward Hervey
d16cc860a3 dvb/camsession: Don't do operations on unexisting sessions
CID #206114
2014-04-16 15:37:57 +02:00
Edward Hervey
1a42aaad47 dvb: Handle socket() failure
CID #206178
2014-04-16 15:32:32 +02:00
Edward Hervey
012b5b8d4a dvbsrc: Handle failure to get statistics from the device
Check the ioctl return value and don't output bogus values.

CID #206016
2014-04-16 15:23:57 +02:00
Edward Hervey
c947e820cf dvbsrc: Don't close a fd that wasn't open
We are handling the failure cases in this block where the open failed

CID #206179
2014-04-16 15:18:44 +02:00
Edward Hervey
bf043208cd dvbsrc: Don't try to access NULL string
And refactor the pid setting code to be in its own function for clarity

CID #206374
2014-04-16 15:17:03 +02:00
Edward Hervey
c400eef377 dvbsrc: Handle symbols added in minor version 7 and 8
Some symbols were re-defined in minor v8 (GO TEAM BACKWARDS COMPATIBLE!)

Some symbols were added in minor v7

https://bugzilla.gnome.org/show_bug.cgi?id=727977
2014-04-11 10:18:32 +02:00
Edward Hervey
0cf6b2be3e dvbsrc: Add comment with all DVB API v5 minor changes
There wasn't a definite list anyway, so I just dove in the kernel
and extract all that information.
2014-04-11 08:18:59 +02:00
Vincent Penquerc'h
c78edf5afc decklink: initialize priv to NULL
While the code that creates the object sets priv to some existing
pointer after new, this ensures any future new not doing this will
hit the various priv!=NULL asserts in the code.

Coverity 1139935
2014-04-09 11:43:23 +01:00
Vincent Penquerc'h
b4d62ce210 mfc: fix left crop change test
It was testing a noop

Coverity 1139643
2014-04-09 11:04:32 +01:00
Vincent Penquerc'h
5feeee62c8 shm: remove dead code
Coverity 1139683
2014-04-09 11:00:22 +01:00
Vincent Penquerc'h
517252e110 mfc: reset "in use" flag on failure to initialize 2014-04-09 10:57:04 +01:00
Vincent Penquerc'h
3aba455c5e mfc: test for allocation failure before dereferencing
Coverity 1139849
2014-04-09 10:56:59 +01:00
Tim-Philipp Müller
3f1eb8ee71 d3dvideosink: post proper error message when window disappears 2014-04-08 17:52:12 +01:00
Tim-Philipp Müller
d576a7b5eb dvb: fix compilation 2014-04-08 16:09:16 +01:00
Vincent Penquerc'h
dd77b7ad79 dvb: reject too long socket paths
Coverity 206004
2014-04-08 15:27:40 +01:00
Xavi Artigas
e12646f30a directsoundsrc: Fix critical due to missing debug category initialization
https://bugzilla.gnome.org/show_bug.cgi?id=727812
2014-04-08 13:39:22 +02:00
Sebastian Dröge
c84278ae04 d3dvideosink: Only pass a dest rectangle if set, otherwise pass NULL
Call with an uninitialized rectangle will cause errors.

https://bugzilla.gnome.org/show_bug.cgi?id=714998
2014-04-02 23:10:01 +02:00
Andoni Morales Alastruey
86e96cfdc6 winks: port to 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=702041
2014-03-15 15:34:29 +01:00
Stefan Ringel
fd8bda1c03 dvbsrc: mpegts: change bandwidth to DVBv5 values
Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>

https://bugzilla.gnome.org/show_bug.cgi?id=725463
2014-03-15 18:33:18 +01:00
Sebastian Dröge
cba13ef301 atdec: Add some more debug output 2014-03-11 15:33:26 +01:00
Sebastian Dröge
fa8a7d7659 atdec: Implement draining properly 2014-03-11 15:33:26 +01:00
Sebastian Dröge
53ab9c6613 atdec: First dequeue a buffer before enqueueing anything from the queue
Required for offline rendering according to the docs. wtf.
2014-03-11 15:33:26 +01:00
Sebastian Dröge
f331d3159f atdec: Keep track of the current position
It's required to set a valid sample time for decoding on iOS.
2014-03-11 15:33:26 +01:00
Sebastian Dröge
8d8b3c0401 atdec: Always try to pull one decoded frame out of the queue
... instead of doing magic calculations with the buffer duration.
2014-03-11 15:33:25 +01:00
Sebastian Dröge
41b2cca8fc atdec: Handle errors in handle_frame() properly 2014-03-11 15:33:25 +01:00
Sebastian Dröge
dfe476c444 atdec: Call AudioQueueReset() for flushing
AudioQueueFlush() is for draining all remaining data.
2014-03-11 15:33:25 +01:00
Sebastian Dröge
1c13e513c9 atdec: Set correct number of frames for MP3 2014-03-11 15:33:25 +01:00
Sebastian Dröge
2d8b195911 atdec: Initialize the audio description with zeroes 2014-03-11 15:33:25 +01:00
Sebastian Dröge
a43db678c1 atdec: Set the correct layer depending on the MP3 caps 2014-03-11 15:33:25 +01:00
Andres Gomez
2129b4739b wininet: "iradio-mode" property defaults to TRUE
As per discussed in bug #725383, it doesn't make much sense to default
to FALSE in the "iradio-mode" property. Better, let's sent the header
by default and just ignore headers that are not understood, if so.

https://bugzilla.gnome.org/show_bug.cgi?id=725659
2014-03-05 20:28:04 +01:00
Sebastian Dröge
22b4223c86 configure: Rename all variables related to the winks plugin
It does not make sense to call them after directshow if they
are for the winks plugin only.

https://bugzilla.gnome.org/show_bug.cgi?id=724100
2014-02-16 10:09:18 +01:00
Sebastian Dröge
5b23cf694c amcaudiodec: Calculate number of samples per frame for MP3 and use that
Some audio decoders (at least the MP3 decoder on MTK based devices) outputs
raw audio in batches of multiple audio frames. We need to handle that
properly, otherwise the base class will be kind of unhappy.
2014-02-14 12:51:50 +01:00
Sebastian Dröge
aeeeedd7c7 amcaudiodec: Error out if we get an invalid raw audio buffer size 2014-02-14 12:51:50 +01:00
Sebastian Dröge
cea218db6f amcvideodec: Store return value of gst_caps_merge_structure()
The inputs are both invalid afterwards.
2014-02-14 12:51:50 +01:00
Sebastian Dröge
faf48d26bf amcvideodec: Release buffer to Android if allocating output failed 2014-02-14 12:51:50 +01:00
Sebastian Dröge
2476b926b1 amcaudiodec: Release buffer back to Android if allocating output fails 2014-02-14 12:51:50 +01:00
Aleix Conchillo Flaqué
fd27bdf5f0 shm: call close() after shutdown()
shutdown() doesn't close the file descriptor so we leak sockets if we
don't call close().

https://bugzilla.gnome.org/show_bug.cgi?id=724077
2014-02-10 18:53:44 -05:00
Aleix Conchillo Flaqué
f5a1ccd0de shm: use shutdown() instead of close()
we make sure both ends get notified when the socket is closed by using
shutdown() instead of close().

https://bugzilla.gnome.org/show_bug.cgi?id=724077
2014-02-10 18:03:18 -05:00
Руслан Ижбулатов
ad92dfc7b4 winks: Make headers known to automake
Fixes #724003
2014-02-10 09:32:49 +01:00
Sebastian Dröge
6d7fcc6890 vdpau: Fix comparison compiler warning
error: comparison of constant -1 with expression
of type 'const GstVideoFormat' is always false
2014-02-08 18:56:06 +01:00
Sebastian Dröge
cde8be156f uvch264src: Fix unitialized variable compiler warnings 2014-02-08 18:54:58 +01:00
Edward Hervey
72127a85f5 applemedia: Fix libtool usage
--tag=CC is needed for static build
2014-02-06 16:17:39 +01:00
Sebastian Dröge
30d80bf658 androidmedia: Don't handle FLUSHING or NOT_LINKED as error
And also just stop the task for FLUSHING.
2014-01-25 17:41:18 +01:00
Alexey Chernov
d96999328a d3dvideosink: First destroy the window, then unregister the class
It's impossible to create another pipeline with d3dvideosink after disposing
the previous one due to some problem in d3dvideosink. The message is: "Unable
to register Direct3D hidden window class".

I've evaluated the problem and it's that UnregisterClass() in working thread is
called before DestroyWindow() and UnregisterClass() does nothing.

https://bugzilla.gnome.org/show_bug.cgi?id=722622
2014-01-21 09:45:07 +01:00
Sebastian Dröge
0d794993fb applemedia: Actually the enc/decbins are not used anywhere currently
Code is commented out.
2014-01-20 10:38:16 +01:00
Sebastian Dröge
1107e158f7 applemedia: Fix build on iOS and probably also on OSX
The video toolbox is not available on iOS, and also on OSX
we should probably build all source files that are used for
it.

https://bugzilla.gnome.org/show_bug.cgi?id=722590
2014-01-20 10:34:57 +01:00
Jorge Zapata
c9abe8c50d amcvideodec: Add the divx variant for mpeg4 video
Looks like all the mpeg4 video decoders also accept the divx
variants. So we better add those caps too

https://bugzilla.gnome.org/show_bug.cgi?id=711163
2014-01-14 20:49:24 +01:00
Olivier Crête
77b339bf5c shmsink: Document that socket-path may change 2014-01-03 11:18:06 -05:00
Olivier Crête
93abc06ae8 shmsink: Change default shm size to 64 MiB
The original size of 256k was too small for anything where
one would want to use shm. If the buffer's size needs to be limit, it is
better to use buffer-time in most cases anyway.
2014-01-03 11:16:42 -05:00
Stefan Ringel
cd11a38bf0 dvbsrc: Add dvb-s2, dvb-t2 support
https://bugzilla.gnome.org/show_bug.cgi?id=709414
2014-01-03 11:26:26 +01:00
Stefan Ringel
e34df02115 dvbsrc: Change from deprecated frontend type field to DTV_ENUM_DELSYS
-add delsys property
-add delivery system capability to the gstreamer adapter structure
-ready for add new delivery systems

Application must ask the adapter structure to know which delivery systems are avaible.
The property delsys must be set.

https://bugzilla.gnome.org/show_bug.cgi?id=709414
2014-01-03 11:26:12 +01:00
Jan Schmidt
1df82fc14f androidmedia: Add new color format, and enhance debug output
Add a new color format seen on my Galaxy S3
(OMX_SEC_COLOR_FormatNV12Tiled = 0x7fc00002) to the table,
but don't actually implement it - the decoder doesn't choose it.

Remove an assert that makes the plugin fail noisily and take the app down
if it sees a color format it doesn't recognise (just skip the codec instead)

Modify the debug output when plugin scanning to print color format info to
make this sort of thing easier in the future.
2013-12-31 23:24:06 +11:00
Víctor Manuel Jáquez Leal
dedb95dc6f mfc: fix input dequeue for odroid
https://bugzilla.gnome.org/show_bug.cgi?id=721027
2013-12-27 15:52:03 +01:00
Alessandro Decina
cd90748c5b applemedia: vtdec: set the correct stride in the video meta 2013-12-22 17:48:25 +01:00
Alessandro Decina
7a8d918472 applemedia: atdec: fix aac decoding on Mavericks 2013-12-22 17:48:25 +01:00
Alessandro Decina
cf2cf20cc3 applemedia: corevideobuffer: fix for planar formats 2013-12-19 08:59:39 +01:00
Alessandro Decina
a75ddf446b applemedia: vtdec: remove silly stride requirement
This is legacy from the 0.10 times, and it isn't clear how it was useful back
then also.'
2013-12-19 08:59:39 +01:00
Davide Bertola
72e989f2da applemedia: vtdec: Enable hardware accelerated decoding on 10.9 2013-12-18 10:28:17 +01:00
Sebastian Dröge
46b62c72d8 decklinksink: Give preference to the order of the filter caps when querying caps 2013-12-17 10:23:15 +01:00
Sebastian Dröge
007807d149 decklinksink: Only intersect with the filter caps if there actually is a filter 2013-12-17 10:21:26 +01:00
Todd Agulnick
44b9429516 decklinksrc: Process EOS even when there are no incoming video frames.
https://bugzilla.gnome.org/show_bug.cgi?id=680700
2013-12-15 10:15:31 +01:00
Alessandro Decina
d5eccb2285 applemedia: vtdec: handle level 3 in get_dpb_max_mb_s_from_level. oops. 2013-12-14 19:18:41 +01:00
Alessandro Decina
44e62613db applemedia: atdec: fix mp3 caps 2013-12-14 19:18:41 +01:00
Sebastian Dröge
234f3c73dc decklinksrc: Set GST_ELEMENT_FLAG_SOURCE on the source
As it does not inherit from basesrc, this flag is not automatically set
and e.g. gst_bin_iterate_sources() and other code does not consider this
element a source.

https://bugzilla.gnome.org/show_bug.cgi?id=680700
2013-12-14 18:43:03 +01:00
Alessandro Decina
f387bd0342 applemedia: always include <Foundation/Foundation.h>
Fixes compilation with newest xcode.
2013-12-14 13:30:01 +01:00
Alessandro Decina
de60453a33 applemedia: vtdec: fix compiler warning (uninitialized variable) 2013-12-11 18:52:53 +01:00
Alessandro Decina
00392a6d16 applemedia: vtdec: rename reorder_queue_frame_delay to reorder_queue_length 2013-12-11 08:12:37 +01:00
Alessandro Decina
596aa8e05a applemedia: vtdec: report latency 2013-12-11 08:12:36 +01:00
Alessandro Decina
733a780e9d applemedia: vtdec: set reorder queue length to the max DPB length
Set reorder_queue_frame_delay from the DPB size (in frames). Still not optimal,
as the DPB size is larger than the max bframe forward prediction length, but I
don't know how to compute the latter without parsing every group of pictures.
2013-12-11 08:12:36 +01:00
Alessandro Decina
7dffa2e1f2 applemedia: vtdec: set the correct video format in the video meta
Fixes all kinds of weird bugs when videoconvert is used with the decoder.
2013-12-10 11:12:56 +01:00
Alessandro Decina
ffeb719d4c applemedia: corevideobuffer: set the correct stride for packed formats 2013-12-08 16:46:58 +01:00
Alessandro Decina
839970e07c applemedia: vtdec: fix mpeg2 video support 2013-12-08 15:31:09 +01:00
Alessandro Decina
938ce6a23d applemedia: vtdec: make jpeg decoding actually work 2013-12-08 15:25:27 +01:00
Alessandro Decina
1cd62000f5 applemedia: vtdec: fail gracefully when not negotiated 2013-12-08 15:24:58 +01:00
Alessandro Decina
b1a756fda7 applemedia: rewrite VideoToolbox decoder based on GstVideoDecoder 2013-12-08 15:13:26 +01:00
Sebastian Dröge
219275dbb6 amcvideodec: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:50:17 +01:00
Sebastian Dröge
edf89926d6 mfcdec: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:50:17 +01:00
Tim-Philipp Müller
1698d3254d qtwrapper: g_memmove() is deprecated
Just use plain memmove(), g_memmove() is deprecated in
recent GLib versions.

https://bugzilla.gnome.org/show_bug.cgi?id=712811
2013-11-21 15:54:32 +00:00
Matthieu Bouron
58be5ce16d avfvideosrc: declare missing instance variables
Fixes build on 32-bit system.

https://bugzilla.gnome.org/show_bug.cgi?id=711844
2013-11-11 14:36:19 +01:00
Andoni Morales Alastruey
31d7c42158 coremediabuffer: keep an extra ref to the image and data buffer 2013-11-07 21:37:29 +01:00
Matthieu Bouron
78f104aa61 applemedia: coremediabuffer: use correct retain/release functions on CMSampleBufferRef buffer
Fixes a crash while releasing the sample buffer after the image
buffer it contains.

Also fixes a minor coding style error.

https://bugzilla.gnome.org/show_bug.cgi?id=711606
2013-11-07 18:47:15 +01:00
Matthieu Bouron
c9a8224553 qtkitvideosrc: lower rank to GST_RANK_SECONDARY
Makes avfvideosrc be prefered over qtkitvideosrc since it is deprecated
with OS X 10.9.

https://bugzilla.gnome.org/show_bug.cgi?id=711614
2013-11-07 18:44:39 +01:00
Matthieu Bouron
314e01e83f avfvideosrc: set rank to GST_RANK_PRIMARY
Makes avfvideosrc to be used with autodetection.

https://bugzilla.gnome.org/show_bug.cgi?id=711614
2013-11-07 18:44:27 +01:00
Andoni Morales Alastruey
7e195cdcdc avfvideosrc: fix compiler warning in iOS 2013-11-07 15:24:29 +01:00
Andoni Morales Alastruey
98e849a092 avfvideosrc: fix build in iOS with isEqualTo doesn't exists 2013-11-07 15:24:28 +01:00
Andoni Morales Alastruey
a2b90eeb8c avfvideosrc: fix build with older SDK not supporting AVDeviceFormat
AVDeviceFormat and AVFrameRateRange are available in iOS since 7.0
so we need a more dynamic approach to support compilation with older
SDK's. We use a NSObject to avoid referencing those types and key-value
coding or preformSelector to access properties.
2013-11-07 15:24:28 +01:00
Andoni Morales Alastruey
46a61ea036 avfvideosrc: fix checks for HAVE_IOS 2013-11-07 15:24:28 +01:00
Andoni Morales Alastruey
81cb13be64 avfvideosrc: include config.h 2013-11-07 15:24:28 +01:00
Andoni Morales Alastruey
ef7f6e4654 avfvideosrc: add more debug 2013-11-07 15:24:28 +01:00
Andoni Morales Alastruey
606a50e550 avfvideosrc: fix compilation with gcc
The synthesize block needs to be moved to fix a compiler error
2013-11-07 15:24:28 +01:00
Andoni Morales Alastruey
94d77829a4 avfvideosrc: sort caps with the highest resolution first
When started without any caps filter we prefer the highest
supported resolution.
2013-11-07 15:24:28 +01:00
Matthieu Bouron
66334591cc avfvideosrc: support screen capture on OSX
https://bugzilla.gnome.org/show_bug.cgi?id=711432
2013-11-07 15:24:28 +01:00
Matthieu Bouron
88b5ff76f6 avfvideosrc: minor cosmetic 2013-11-07 15:24:28 +01:00
Matthieu Bouron
752d74b31f avfvideosrc: use input device formats to set/get caps if available
https://bugzilla.gnome.org/show_bug.cgi?id=711211
2013-11-07 15:24:28 +01:00
Matthieu Bouron
35587efdc9 avfvideosrc: update caps if frame size has changed
On OSX, setting the pixel format on the output reset the capture device
to its native resolution, so we need to update the caps if the output
frame size has changed before a proper solution is found.
2013-11-07 15:24:28 +01:00
Matthieu Bouron
fae79751ad avfvideosrc: check if low preset is available 2013-11-07 15:24:28 +01:00
Matthieu Bouron
7f807270fa avfvideosrc: use a dedicated queue for AVFoundation calls
Replace the main queue with a dedicated queue for AVFoundation calls
so the execution on this queue won't block if the main queue
is not running.
2013-11-07 15:24:28 +01:00
Matthieu Bouron
5d612768a4 avfvideosrc: remove trailing space 2013-11-07 15:24:28 +01:00
Matthieu Bouron
19844fab47 avfvideosrc: dispatch AVFoundation calls synchronously in the main queue 2013-11-07 15:24:27 +01:00
Matthieu Bouron
0d74dc802a applemedia: enable avfvideosrc if AVFoundation is present 2013-11-07 15:24:27 +01:00
Matthieu Bouron
b6925d5c56 avfvideosrc: only enable 1920x1080 preset on iOS 2013-11-07 15:24:27 +01:00
Matthieu Bouron
06d59e7829 applemedia: port avfvideosrc to 1.0 2013-11-07 15:24:27 +01:00
Sebastian Dröge
1009484090 applemedia-nonpublic: Link with gmodule for g_module_open() and others 2013-11-04 10:05:41 +01:00
Sebastian Dröge
831c67c07b applemedia: Link with gmodule for g_module_open() and others 2013-11-04 10:05:40 +01:00
Andoni Morales Alastruey
786f5e4f7c androidmedia: fix rank for more software decoders
In Galaxy S4 the codecs list contains some OMX.SEC.foo.sw.dec
as software decoders

https://bugzilla.gnome.org/show_bug.cgi?id=711214
2013-10-31 16:38:41 +01:00
Matthieu Bouron
7ec5f8527a applemedia-nonpublic: fix plugin name
https://bugzilla.gnome.org/show_bug.cgi?id=711135
2013-10-30 16:29:13 +00:00
Matthieu Bouron
1b2b879bf4 vtenc: use proper release callback type in CVPixelBufferCreateWithPlanarBytes
https://bugzilla.gnome.org/show_bug.cgi?id=711140
2013-10-30 16:27:58 +00:00
Matthieu Bouron
22eaf39c1a avfvideosrc: fix truncated line
https://bugzilla.gnome.org/show_bug.cgi?id=710657
2013-10-30 16:27:58 +00:00
Andoni Morales Alastruey
6b49683447 androidmedia: fix access to invalid buffers in the decoding loop
Flushing the decoder invalidates all buffers, so it should be done
after quiting the decoding loop. Otherwise we can jump into
"failed_release" and stop everything

https://bugzilla.gnome.org/show_bug.cgi?id=711156
2013-10-30 16:24:17 +01:00
Chen Jie
b05a1f75fd androidmedia: make gst_amc_avc_profile_from_string recognize alt name
https://bugzilla.gnome.org/show_bug.cgi?id=710433
2013-10-18 10:01:43 +01:00
Dominik Röttsches
b002490ab2 vtenc: Add support for I420
https://bugzilla.gnome.org/show_bug.cgi?id=709241
2013-10-02 13:18:04 +02:00
Dominik Röttsches
24c79af394 vtenc: Use correct strides, etc from the GstVideoFrame
https://bugzilla.gnome.org/show_bug.cgi?id=706211
2013-10-02 13:14:32 +02:00
Sebastian Dröge
4bed01aff9 iosassetsrc: Port to 1.0 and fix some bugs on the way 2013-09-28 20:36:21 +02:00
Andoni Morales Alastruey
e5d5faa67e iosassetsrc: Add new element from the GStreamer SDK project 2013-09-28 20:36:21 +02:00
Sebastian Dröge
dd19715961 applemedia: avfvideosrc is not ported to 1.0 yet 2013-09-28 20:36:21 +02:00
Sebastian Dröge
1ab90f259f bluez: Fix compilation on big endian systems 2013-09-25 20:28:03 +02:00
Sebastian Dröge
2b94641a42 amcvideodec: Don't put the level restrictions on the sinkpad caps
They tend to be inaccurate and having them in the sinkpad caps
prevents playback of files that would otherwise play fine.
2013-09-12 13:23:28 +02:00
Olivier Crête
fb639741d7 uvch264src: Fix small mem leak 2013-09-09 13:14:24 -04:00
Olivier Crête
8fb6628842 uvch264src: Let the caps be NULL if there is no peer 2013-09-05 19:24:07 -04:00
Olivier Crête
5ac10edde7 uvch264src: No need to drop segment events
In 1.0, segment events are sticky and not additive, no need to prevent
their accumulation.
2013-09-05 19:24:07 -04:00
Tim-Philipp Müller
fb9fbc8fba decklinksrc: send caps event before segment 2013-09-05 19:10:31 +01:00
Sebastian Dröge
d065c09684 amcvideodec: Port tiled NV12 conversion to 1.0 2013-09-03 11:06:00 +02:00
Sebastian Dröge
c4e742f428 amcvideodec: Add FIXME comment 2013-09-03 11:06:00 +02:00
Jorge Luis Zapata
48484f04a2 androidmedia: add support for a new qualcomm colorspace 2013-09-03 11:06:00 +02:00
Andoni Morales Alastruey
ef7a8c2ca8 d3dvideosink: disable buffer pools
On a device lost, all the surfaces allocated in the
device need to be released before resetting the device,
which can't be done for the allocated buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=706566
2013-09-02 18:21:11 +02:00
Sebastian Dröge
5a82dc9028 avdtputil: Some minor cleanup and leak fixes 2013-08-29 10:20:56 +02:00
Bernhard Miller
597e3cc98d bluez: support aac in avdtpsrc
Signed-off-by: Bernhard Miller <bernhard.miller@streamunlimited.com>
2013-08-29 10:17:07 +02:00
Sebastian Dröge
6f4f84fea0 directsoundsrc: Remove unused variable 2013-08-22 17:32:17 +02:00
Kishore Arepalli
9df9ee426e directsoundsrc: Add 'device-name' property for selecting a audio device
https://bugzilla.gnome.org/show_bug.cgi?id=706574
2013-08-22 15:10:20 +02:00
Edward Hervey
c3e4fe4edc dvb: Adapt for latest mpegts lib changes 2013-08-21 08:59:42 +02:00
Robert Krakora
006e7a3428 uvch264src: don't error out on incomplete aux data segment
It appears that the Logitech C920 sometimes drops the next
to last segment of RAW aux data contained within the MJPEG
container.  H264 data that is multiplexed with in the same
container does not appear to be affected.  This appears to
be a bug in the Logitech C920 firmware and uvch264src should
not error out in this case.

Sometimes it can take 24 hours of continuous streaming for
the problem to occur, but sometimes it takes only a couple
of hours.

https://bugzilla.gnome.org/show_bug.cgi?id=706276
2013-08-20 18:57:01 +01:00
Sebastian Dröge
2e8af6973f ext: Use new flush vfunc of video codec base classes and remove reset implementations 2013-08-15 15:46:58 +02:00
Tim-Philipp Müller
9d92aaabe7 dvbbasebin: fix criticals when trying to cast a GstPad to a GstElement
message->src might be a GstPad. Observed during gst-inspect-1.0 -a
2013-08-14 13:29:02 +01:00
Tim-Philipp Müller
6f5934f3aa uvch264mjpgdemux: fix event ordering 2013-08-10 21:35:09 +01:00
Tim-Philipp Müller
933965984f dvbsrc: remove use of _XOPEN_SOURCE
Which causes problems when used with _GNU_SOURCE apparently, and it
seems it was only set because of usleep(), which we can just replace
with g_usleep() until we get rid of those entirely.

https://bugzilla.gnome.org/show_bug.cgi?id=705208
2013-08-03 18:09:24 +01:00
Bernhard Miller
f3d6e46454 bluez: return GST_FLOW_EOS in avdtpsrc create when stream is EOF
Signed-off-by: Bernhard Miller <bernhard.miller@streamunlimited.com>

https://bugzilla.gnome.org/show_bug.cgi?id=705349
2013-08-02 14:40:54 +01:00
Edward Hervey
97426a1caa all: Fix for GST_DISABLE_GST_DEBUG
Where applicable, remove methods that don't do anything different than
the default implementation.
2013-07-29 09:42:12 +02:00
Olivier Crête
b52a84354e uvch264_mjpgdemux: Remove duplicated variables 2013-07-28 17:29:32 +02:00
Olivier Crête
8b80d60648 uvch264_mjpgdemux: Don't unmap/unref buffer if it's pushed out as-is 2013-07-28 17:25:34 +02:00
Robert Krakora
bd386a2785 uvcv4l2_mjpegdemux: Unmap buffer
https://bugzilla.gnome.org/show_bug.cgi?id=699517
2013-07-28 17:25:27 +02:00
Alessandro Decina
95d5a8055b applemedia: atdec: destroy the queue if set_format fails 2013-07-24 09:18:43 +02:00
Alessandro Decina
10d02e381b applemedia: atdec: remove c++ style comments 2013-07-24 09:15:49 +02:00
Alessandro Decina
d71aaec486 applemedia: atdec: 1st round of fixes 2013-07-24 09:11:59 +02:00
Alessandro Decina
92bcdd9c4b applemedia: add AudioToolbox based audio decoder 2013-07-23 10:36:47 +02:00
Sebastian Dröge
60c2c123be decklink: Add support for group-id in the stream-start event 2013-07-23 10:33:31 +02:00
Youri Westerman
136aa4614e decklink: actually enable decklinksink
https://bugzilla.gnome.org/show_bug.cgi?id=704505
2013-07-22 14:29:35 +01:00
Youri Westerman
f9898e42f6 decklink: add "device-number" to select from multiple devices
https://bugzilla.gnome.org/show_bug.cgi?id=704505
2013-07-22 14:19:25 +01:00
Edward Hervey
32f33c9448 dvb: Fix PMT handling
Was using an older (temporary) version of the mpegts library API.
2013-07-05 13:54:39 +02:00
Edward Hervey
b8ad909bd7 dvb: GstMpegTS => GstMpegTs 2013-07-03 14:00:58 +02:00
Edward Hervey
10c929c795 dvb: Switch to MPEG-TS SI library
Also serves as an example of using mpegts library from a plugin

https://bugzilla.gnome.org/show_bug.cgi?id=702724
2013-07-03 09:17:25 +02:00
Sebastian Dröge
e2b83ff8a0 winscreencap: Initial port to 1.0 2013-06-20 23:00:59 +02:00
Xavi Artigas
85c1510d6b androidmedia: Fix copying of raw video frames on Samsung Galaxy S3 with Exynos 4 SOC 2013-06-20 09:53:41 +02:00
Aleix Conchillo Flaque
44807dcc1a shmsink: unref buffer if no clients are connected
If no client has received the command, unref the buffer. This will
make sure that the shared memory area does not get filled with buffers
no one knows about.

https://bugzilla.gnome.org/show_bug.cgi?id=702684
2013-06-19 18:36:19 -04:00
Aleix Conchillo Flaque
8b00e02f16 shmsink: propagate events to basesink class
https://bugzilla.gnome.org/show_bug.cgi?id=702597
2013-06-18 19:14:14 -04:00
Andoni Morales Alastruey
bab2bf3f11 applemedia: fix release of null pointer 2013-06-18 13:33:14 +02:00
Thiago Santos
eecc951070 applemedia: coremediabuffer: fix leaking of apple media structs
remember to release the apple's api buffers to avoid huge leaking
2013-06-18 13:17:52 +02:00
Andoni Morales Alastruey
22be93cd04 applemedia: move defines to CPPFLAGS for obj-c files 2013-06-18 13:02:42 +02:00
Andoni Morales Alastruey
c450a15f9f dshowaudiosrc: fix audiocapture producing silence
Configure the capture latency using the IAMBufferNegotiation
interface and try to respect the configured latency-time and buffer-time
2013-06-18 12:04:58 +02:00
Sebastian Dröge
36e3426c73 build: Fix some automake warnings 2013-06-14 14:53:52 +02:00
Sebastian Dröge
17699d07e7 androidmedia: Fix string comparison 2013-06-07 14:01:46 +02:00
Chen Jie
a36c9c1cc9 androidmedia: Hacks for HuaweiMediaPad which reports wrong color format
COLOR_FormatYCbYCr is reported but it is actually COLOR_TI_FormatYUV420PackedSemiPlanar.
2013-06-07 11:08:52 +02:00
Sebastian Dröge
f3247930df vdpau: Add some missing headers to dist 2013-06-05 18:29:48 +02:00
Sebastian Dröge
e0d7c2e7c8 applemedia-nonpublic: Add to the Makefile.am for dist 2013-06-05 17:49:59 +02:00
Andoni Morales Alastruey
a666843005 directdrawsink: update window width/height when it's not done in WndProc 2013-05-24 09:39:10 +02:00
Andoni Morales Alastruey
578b58e490 directdrwasink: call previous WndProc if any 2013-05-24 09:39:10 +02:00
Andoni Morales Alastruey
f4f4a8a0f3 directdrawsink: respect PAR with coordinates 2013-05-24 09:39:10 +02:00
Andoni Morales Alastruey
3eaa4128cc applemedia-nonpublic: fix symbols redefinition for objc files 2013-05-24 09:39:10 +02:00
Andoni Morales Alastruey
0690238c59 applemedia: fix duplicated symbols with applemedia 2013-05-24 09:39:10 +02:00
Andoni Morales Alastruey
5f4ac8c58f vtdec: simplify caps setting 2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
2f36ffb7d0 applemedia: fix H264 streams with b-frames
The decoder output frames in DTS order, even with the flag
kVTDecodeFrame_EnableTemporalProcessing. We store a internal
queue of the decoded frames and push them PTS order.
2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
3b249f6761 applemedia: fix segfault with dropped frames 2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
d9db0c2d4a applemedia: improve usage of the VT API
Add timing information to CV samples and pass the GstBuffer
as extra data in the decode function
2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
db49a77682 applemedia: add support for MPEG-1 too 2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
9645d1df2d applemedia: add support for MPEG-2 decoding 2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
5e09d61638 applemedia: use the best colorformat on each platform
This saves a colorspace conversion before the sink in OS X
2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
c69f41d299 applemedia: replace private function with its public variant
FigVideoFormatDescriptionCreateWithSampleDescriptionExtensionAtom
is an un-documented private function which might change its signature
as it already did in the past. Replace it with
CMVideoFormatDescriptionCreate and the also un-documented Extensions
dictionary.
2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
9b168e6b4d applemedia: remove the unneeded buffer factory 2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
97bb1edf6c applemedia: don't use the dynamic API for public frameworks
Public frameworks don't need to build the API dynamically, we instead
use the framework directly.
The exception is for VideoToolbox which went public in the 10.8 SDK,
but it's still private in older version of the SDK and iOS. This allow
building the plugin against SDK's where it's not a public framework.
2013-05-20 13:31:02 +02:00
Andoni Morales Alastruey
57b97beb6d applemedia: move plugins using private frameworks to applemedia-nonpublic 2013-05-20 13:31:02 +02:00
Sebastian Dröge
e66f097f37 androidmedia: Fix indention 2013-05-20 13:24:07 +02:00
Chen Jie
0a90994b99 androidmedia: fix a minor error in COLOR_FormatYUV420Planar converting
https://bugzilla.gnome.org/show_bug.cgi?id=700521
2013-05-20 13:23:52 +02:00
Tim-Philipp Müller
df412ea69e bluez: add debug category for avdtp utils 2013-05-13 00:06:10 +01:00
Sebastian Pölsterl
5d406192c3 Use DVB API v5 aka S2API instead of obsolete v3 API
Patch is based on work of Tony Houghton <h@realh.co.uk>

https://bugzilla.gnome.org/show_bug.cgi?id=654479
2013-05-08 18:14:14 +02:00
Sreerenj Balachandran
37352509eb vdpau: Add VdpVideoSurface caps feature 2013-05-08 14:59:42 +02:00
Sebastian Dröge
363aa90a10 wasapisrc: Port to GstAudioSrc 2013-04-23 18:57:04 +02:00
Sebastian Dröge
1445438a8b wasapi: Port wasapisink to GstAudioSink 2013-04-23 18:57:04 +02:00
Tim-Philipp Müller
bd504e379b dvbbasebin: better error reporting
https://bugzilla.gnome.org/show_bug.cgi?id=678892
2013-04-21 18:28:52 +01:00
Tim-Philipp Müller
fc2b55919d dvbbasebin: log channel parsing into dvbbasebin debug category as well 2013-04-21 14:13:45 +01:00
Tim-Philipp Müller
3bacb6312c dvbbasebin: fix path where to look for the dvb-channels.conf
Construct path based on the API version, not $major.$minor version.
2013-04-21 14:04:11 +01:00
Sebastian Dröge
a887497d18 amcaudiodec: Properly set output format instead of just setting caps 2013-04-16 16:23:46 +02:00
Sebastian Dröge
055154fe78 androidmedia: Set parent class in class_init 2013-04-16 16:17:50 +02:00
Sebastian Dröge
7832b9b43f androidmedia: Handle refcounts of pad templates correctly
gst_pad_template_new() does not take ownership of caps anymore and
gst_element_class_add_pad_template() does take ownership of the
pad template now.
2013-04-16 16:00:30 +02:00
Sebastian Dröge
fd8defc525 amcaudiodec: Use 1.0-style raw audio caps 2013-04-16 15:32:01 +02:00
Sebastian Dröge
75493a7731 androidmedia: Properly set subclasses metadata/pad templates in base_init 2013-04-16 15:31:34 +02:00
Anton Belka
70be50fbed uvch264: printf format fix
gstuvch264_mjpgdemux.c:437:5: error: format '%lu' expects argument of type 'long unsigned int', but argument 8 has type 'GstClockTime'
2013-04-15 18:05:37 +01:00
Sebastian Dröge
e51cd4fe2f gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
Andoni Morales Alastruey
27c546ad1e avfvideosrc: fix deadlock draining queue from the same thread 2013-04-15 09:02:37 +02:00
Fabricio Costa Alisedo
d7c6d240b5 dshowsrcwrapper: Added Graph Builder and Capture Builder to correctly create upstream needed filters by Analog TV Capture Devices. 2013-04-15 08:51:22 +02:00
Andoni Morales Alastruey
d4c3fd8a7e dshowsrcwrapper: Add support for UYVY 2013-04-15 08:51:12 +02:00
Tim-Philipp Müller
86ae538ca2 sys: print format fixes in debug messages 2013-04-08 17:34:41 +01:00
Andoni Morales Alastruey
7f18295321 d3dvideosink: use bilinear filter as much as possible
Use the bilinear scalling filter when the magnifier or the minifier
filters are avaible. Some graphics cards do not provide minifier filters
but we want to use it for upscalling if it's available

https://bugzilla.gnome.org/show_bug.cgi?id=697176
2013-04-04 11:39:45 +02:00
Edward Hervey
35cd75684c vdpau: Don't use deprecated GMutex methods 2013-04-01 09:10:53 +02:00
Edward Hervey
e3c71c65fe vdpau: Port to 1.0
New base class for vdpau decoders
* mpeg2 ported and activated
* h264 ported but deactivated
* Uses GstMpegVideo meta
2013-03-31 19:05:31 +02:00
Edward Hervey
5e70c76b33 dvb: Move CAM handling to a separate GstTask
* No longer blocks in READY=>PAUSED (faster startup)
* No longer requires a pad probe
2013-03-31 12:11:48 +02:00
Edward Hervey
68c0d16b2c dvbsrc: We output time segments
Fixes #690949
2013-03-30 13:54:50 +01:00
Olivier Crête
6e9ff0a160 shm: Make sure the zero-sized array is always last in the struct
https://bugzilla.gnome.org/show_bug.cgi?id=696681
2013-03-28 14:37:03 -04:00
Arun Raghavan
6adddc7c51 bluez: Remove a2dpsrc bin
This element isn't really useful. The original plan was to use this to
eventually allow dynamically picking a format based on what we can
support while negotiating with the source device. We can just plug in a
decodebin downstream and it'll handle RTP depayloading and decoding of
whatever format we negotiated with the source device.
2013-03-28 17:36:07 +00:00
Arun Raghavan
a3713f7be1 bluez: Compile fixes for avdtpsrc/a2dpsrc code against 1.x 2013-03-28 16:50:26 +00:00
Arun Raghavan
adc9d39710 bluez: Add avdtpsrc/a2dpsrc to build 2013-03-28 16:50:26 +00:00
Arun Raghavan
a3c8c0aed2 bluez: Fix up some problems that came in with cherry-pick 2013-03-28 16:50:26 +00:00
Wim Taymans
dddd89f5a2 bluez: We work in TIME format with avdtpsrc 2013-03-28 16:50:26 +00:00
Wim Taymans
19392a989e bluez: Fix depreacation warnings on g_mutex_* 2013-03-28 16:50:26 +00:00
Wim Taymans
ec00b31b18 bluez: Fix a number of compiler warnings 2013-03-28 16:50:25 +00:00
Arun Raghavan
ac85a633b0 bluez: Fix some warnings in gstavdtputil.c 2013-03-28 16:50:25 +00:00
Arun Raghavan
b40c4f53a7 bluez: Fix typo in resetting the D-Bus connection
No real effect since FALSE and NULL are both 0
2013-03-28 16:50:25 +00:00
Arun Raghavan
6b1ccb8685 bluez: Handle EOF in avdtpsrc correctly 2013-03-28 16:50:25 +00:00
Arun Raghavan
49fa7ac6b2 bluez: Fix avdtpsrc getcaps() function
This is now a proper subset of the template caps.
2013-03-28 16:50:25 +00:00
Arun Raghavan
50b3040544 bluez: Add an a2dpsrc bin element
This wraps avdtpsrc + rtpsbcdepay into a single element. when more
formats are supported in avdtpsrc, payloader selection will need to be
done dynamically.

This could also be extended to accept a device, connect to it, and
provide avdtpsrc a transport (instead of passing through a transport as
it does now).
2013-03-28 16:50:25 +00:00
Arun Raghavan
d2e0b43fe3 bluez: Fix avdtpsrc classification 2013-03-28 16:50:25 +00:00
Arun Raghavan
b8e2550362 bluez: Bump up priority for sockets in AVDTP elements
This is based on the code in PulseAudio.
2013-03-28 16:50:25 +00:00
Arun Raghavan
f644b924d4 bluez: Add an avdtpsrc element
Source element that connects to a given transport and reads audio over
AVDTP. Does not provide a clock but uses the system clock to timestamp
incoming packets. Only SBC is currently supported.
2013-03-28 16:50:25 +00:00
Sebastian Dröge
42965f5aa0 d3dvideosink: Make sure that all buffers in our pool contain our own memory 2013-03-27 09:09:59 +01:00
Sebastian Dröge
e7a69bb8de wasapi: Initial port to 1.0
This should really use GstAudioSink and GstAudioSrc.
2013-03-26 15:43:51 +01:00
Sebastian Dröge
d5d37fafa7 wasapi: Include config.h before anything else 2013-03-26 15:01:08 +01:00
Sebastian Dröge
ff30417bd9 d3dvideosink: Add support for crop meta 2013-03-26 14:27:43 +01:00
Sebastian Dröge
81304a7956 d3dvideosink: Implement a buffer pool that shares D3D surfaces with upstream 2013-03-26 13:39:46 +01:00
Sebastian Dröge
abede65bbc d3dvideosink: Allocate a new offscreen surface for every buffer
This is a preparation for implementing a buffer pool.
2013-03-26 13:39:46 +01:00
Thiago Santos
23b2b46993 applemedia: fix build for objc
The obj-c api version option is required to get applemedia to
build for ios, otherwise it won't find some symbols during linking
2013-03-25 12:56:55 -03:00
Sebastian Dröge
2b7446e2d2 opensles: Include string.h for memcpy() 2013-03-21 15:43:50 +01:00
Tim-Philipp Müller
d84ef611f0 decklinksink: fix some compiler warnings 2013-03-20 10:49:04 +00:00
Mark Nauwelaerts
52908193b0 decklinksink: obtain class from object 2013-03-18 21:19:15 +01:00
Tim-Philipp Müller
a2f446fabc decklinksrc: set discont flag on first audio buffer too 2013-03-16 23:32:12 +00:00
Tim-Philipp Müller
929b0bc3e2 decklinksrc: aggregate audio and video flow returns
And pause task in some more cases where we should
pause the task.
2013-03-16 23:30:24 +00:00
Tim-Philipp Müller
5dfc7c4bce decklinksrc: add send_event handler so application can inject EOS event
This is needed to shut down a recording pipeline cleanly.

https://bugzilla.gnome.org/show_bug.cgi?id=680700
2013-03-16 23:17:24 +00:00
Tim-Philipp Müller
5eb8188e55 decklinksrc: pause streaming thread and send EOS event on error
Instead of just posting an EOS message and continuing,
actually pause the thread.
2013-03-16 21:34:57 +00:00
Josep Torra
1870a4d58b applemedia: suppress warnings for deprecated glib API 2013-03-10 22:06:31 +01:00
Josep Torra
87e053386a shmsink: Use correct print format specifiers to fix compiler warnings 2013-03-10 21:21:17 +01:00
Tim-Philipp Müller
ae550222a8 fbdev: port fbdevsink to 1.0 2013-03-09 00:20:00 +00:00
Sebastian Dröge
a63ed8cfc7 opensles: Only include <gst/audio/audio.h> 2013-03-03 12:30:44 +01:00
Olivier Crête
48b9fa2c24 shmsink: Add custom allocator to allow for zero-copy shared memory use 2013-02-28 18:46:02 -05:00
Olivier Crête
df321edeaf shm: Don't leak socket path 2013-02-28 18:13:44 -05:00
Tim-Philipp Müller
74ca4aeefd decklinksink: port to 1.0
Compiles, not tested yet.
2013-02-28 18:54:15 +00:00
Tim-Philipp Müller
c16224a220 decklinksrc: add layout=interleaved to audio caps 2013-02-28 18:53:54 +00:00
Blake Tregre
c175c6b3d0 shm: use O_CLOEXEC where appropriate in shmpipe
https://bugzilla.gnome.org/show_bug.cgi?id=684339
2013-02-28 12:35:45 -05:00
Olivier Crête
684811cddf shmsink: Error out if memory area is smaller than buffer 2013-02-27 21:05:38 -05:00
Olivier Crête
7a77b41d6a shm: Make sure to not allocate blocks larger than the shared mem area
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681359
2013-02-27 20:57:56 -05:00
Tim-Philipp Müller
126df5a0c2 decklinksrc: port to 1.0
Compiles, not tested yet. A great number of superfluous custom
pad functions may have been harmed in the making of this port.
2013-02-27 23:34:34 +00:00
Sebastian Dröge
4b5f764daf mfcdec: Use new GST_MEMORY_FLAG_CONTIGUOUS instead of requiring a specific memory type 2013-02-23 09:13:33 +01:00
Ole André Vadla Ravnås
519cefdeee applemedia: update contact information 2013-02-16 02:51:52 +01:00
Ole André Vadla Ravnås
ad2d6be695 applemedia: fix gst_buffer_get_core_media_meta macro 2013-02-16 02:51:52 +01:00
Ole André Vadla Ravnås
73bcf51f9f applemedia: port vtenc to 1.0 2013-02-16 02:51:51 +01:00
Ole André Vadla Ravnås
bace18bacc applemedia: replace usage of deprecated gst_pad_set_caps() in vtdec 2013-02-16 02:51:51 +01:00
Ole André Vadla Ravnås
af6df7292c applemedia: port vtapi to run on OS X 10.8 2013-02-16 02:51:51 +01:00
David Schleef
20627cc5d5 mfc: quiet debugging when mfc device doesn't exist
Avoid registering the element if the mfc device doesn't work,
but allow plugin loading to succeed.
2013-02-11 17:41:17 -08:00
Sjoerd Simons
06ae51a3fe uvch264: Remove custom renegotiate event 2013-02-11 22:05:00 +01:00
Sjoerd Simons
8ea2085484 uvch264: Add image/jpg to vfsrc and vidsrc caps 2013-02-11 22:05:00 +01:00
Sjoerd Simons
adb6aa6b72 uvch264: Fix NV21 vs NV12 typo 2013-02-11 22:05:00 +01:00
Sjoerd Simons
bad01ceead uvch264: Pass through the filter on the caps query 2013-02-11 22:04:59 +01:00
Sjoerd Simons
6ce751442b uvch264: Remove the _ from the element names
Rename uvch264_src to uvch264src and uvch264_mjpgdemux to
uvch264mjpgdemux
2013-02-11 22:04:59 +01:00
Sjoerd Simons
14637e2a27 uvch264src: Port to gstreamer 1.0 2013-02-11 22:04:59 +01:00
Tim-Philipp Müller
68a34d2a60 shm: don't use deprecated threading API 2013-02-11 12:01:19 +00:00
Tim-Philipp Müller
8f93c2448e mfc: fix compilation with newer GLib versions
that don't include pthread.h any more from public headers.
We could just fix this by including pthread.h ourselves,
but we may just as well use atomic ops for this and
simplify the code a little.

https://bugzilla.gnome.org/show_bug.cgi?id=693322
2013-02-09 18:48:04 +00:00
Wim Taymans
9444776aff dvbsrc: handle EINTR from poll
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693212
2013-02-05 17:39:15 +01:00
Tim-Philipp Müller
f198d04bf8 bluez: clean up GValue handling a little
Allocate GValues on the stack, and unset/free them properly, fixing
a few leaks in the process. Also use gst_structure_take_value()
where appropriate to avoid unnecessary list copies.
2013-01-20 17:49:32 +00:00
Tim-Philipp Müller
ee6d8a7e62 bluez: update SBC caps for renamed fields
mode -> channel-mode
allocation -> allocation-method
2013-01-20 17:49:26 +00:00
Olivier Crête
feb113e87a shm: Initialize shm_area_buf to invalid value 2013-01-17 19:29:31 -05:00
Roland Elek
2cacfa2932 shm: apply shm area permissions to shmpipe control socket
Apply shared memory area permissions to the control socket (more
precisely, the path it is bound to) as well.

https://bugzilla.gnome.org/show_bug.cgi?id=682775
2013-01-17 19:16:42 -05:00
Youness Alaoui
49fefbde65 uvch264: Define LIBUSB_CLASS_VIDEO if using an old version of libusb 2013-01-16 15:10:40 -05:00
Olivier Crête
e82e434730 uvch264: Prevent temporary elements from going to playing 2013-01-16 14:51:11 -05:00
Youness Alaoui
c9fbf274f4 uvch264: do not double-unref if transform_caps fails 2013-01-16 14:51:07 -05:00
Youness Alaoui
410d0c0194 uvch264: Add a fakesink to the transform_caps
Some version of basetransform will return the template caps if the src
pad is not linked, so the capsfilter will return ANY. Linking it to
fakesink allows us to return the right caps in the capsfilter and have
them transformed by the colorspace converter.
2013-01-16 14:51:01 -05:00
Tim-Philipp Müller
e89c130f1e bluez: use GLib defines to check for byte order 2013-01-10 00:31:25 +00:00
Tim-Philipp Müller
70ba34c485 bluez: add new plugin to build system, but disable for now
Disable until it has been tested and works.

https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-09 18:10:30 +00:00
Tim-Philipp Müller
c994ae021d bluez: make bluez elements compile with 1.0
Builds, but very likely doesn't work yet at all. Some
things are still commented out.

https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-09 18:02:11 +00:00
Chan-yeol Park
49a69e394a bluez: avinfo: Replace definitions with a2dp-codecs.h's 2013-01-09 14:30:14 +00:00
Chan-yeol Park
e5a5d179da bluez: audio: Add check for vendor specific A2DP codec
This patch adds checks(vendor ID, vendor specific codec ID) to make sure of
vendor specific A2DP codec selection.
2013-01-09 14:30:14 +00:00
Syam Sidhardhan
711e5b4909 bluez: gstavdtpsink: Free the D-Bus error on reply failure
If D-Bus error is set we should free it.
2013-01-09 14:30:14 +00:00
Anderson Lizardo
f1c526da47 bluez: Fix trivial coding style issues on pointer declarations and casting
Avoid using C++ style pointer declarations like "char* ptr", as most
BlueZ code uses "char *ptr".
2013-01-09 14:30:14 +00:00
Luiz Augusto von Dentz
3a02461349 bluez: audio: Remove internal audio IPC
With unix socket and ALSA removed there is no longer any use for the
internal IPC.
2013-01-09 14:30:13 +00:00
Anderson Lizardo
f40d5135f0 bluez: Remove compatibility check for DBUS_TYPE_UNIX_FD
Since commit c89b589a586e97ad875fbdd1d41f03979157ebb0, D-Bus >= 1.4.0 is
required. This version already contains Unix FD passing support,
therefore code that checks for DBUS_TYPE_UNIX_FD definition is
unnecessary.
2013-01-09 14:30:13 +00:00
Anderson Lizardo
54b8979d67 bluez: avdtp: Fix incorrect gchar buffer allocation
The code was allocating an array of gchar pointers, where an array of
gchar is expected.
2013-01-09 14:30:13 +00:00
Chan-yeol Park
6c31678d8b bluez: audio: Add SBC NULL check for GST AVDTP signaling
Due to RF condition or headset malfunctioning, gst audio plug-in could
not get SBC (mandatory codec) information.
2013-01-09 14:30:13 +00:00
Syam Sidhardhan
a91cc4257d bluez: gstavdtpsink: Fix D-Bus memory leak in audio 2013-01-09 14:30:13 +00:00
Anderson Lizardo
53031e0a9e bluez: AVDTP: Fix closing invalid FD on error
In gst_avdtp_sink_start(), if bt_audio_service_open() failed, there was
an attempt to close an invalid file descriptor (through
bt_audio_service_close()).
2013-01-09 14:30:13 +00:00
Anderson Lizardo
83b0583a7a bluez: Fix return value check for bt_audio_service_open()
Only negative values (namely -1) are errors for this function.
2013-01-09 14:30:13 +00:00
Anderson Lizardo
86c2797eef bluez: AVDTP: Fix errno handling convention
Variables which are assigned to the errno variable (usually called
"err") should be negative, and "-err" should be used where a positive
value is needed.
2013-01-09 14:30:13 +00:00
Marcel Holtmann
64c0532017 bluez: audio: Update license for shared header files
The header files with constants and structures for audio specific
interaction with Pulseaudio are suppose to be under LGPL license.

For some odd reason a2dp-codecs.h ended up being under GPL license
which is against the intention of this being shared and re-used by
non-GPL programs. Fix this now to avoid any future confusion.
2013-01-09 14:30:13 +00:00
Lucas De Marchi
445f76513a bluez: Fix common misspelled words
Accounting of misspelled words, as detected by codespell:

acording      2
ancilliary    1
appropiate    1
atribute      1
cant          1
comming       2
gracefull     1
lenght        1
mispelled     1
occured       1
occurences    1
ocurred       3
prefered      1
presense      1
reponse       1
seperate      1
succesful     1
successully   1
sucessfull    1
sucessfully   1
2013-01-09 14:30:12 +00:00
Szymon Janc
3a81025f2e bluez: Fix garbage return value in gst_avdtp_sink_audioservice_recv 2013-01-09 14:30:12 +00:00
Marcel Holtmann
d7ca6b81bb bluez: audio: Remove workaround for compiler warnings 2013-01-09 14:30:12 +00:00
Luiz Augusto von Dentz
9c9d76268a bluez: Update a2dpsink to use new Acquire API 2013-01-09 14:30:12 +00:00
Luiz Augusto von Dentz
1396082264 bluez: Fix use of deprecated glib on audio plugin 2013-01-09 14:30:12 +00:00
Luiz Augusto von Dentz
c3afd98226 bluez: Add support for media transport in gstreamer plugin 2013-01-09 14:30:12 +00:00
Luiz Augusto von Dentz
651e1be7ef bluez: Fix crash on gstreamer plugin if device doesn't support sbc 2013-01-09 14:30:12 +00:00
Marcel Holtmann
31fe375174 bluez: Add pragma based workaround for GStreamer warnings 2013-01-09 14:30:12 +00:00
Marcel Holtmann
afa8560345 bluez: Revert "Fix build issues with latest GStreamer updates" 2013-01-09 14:30:12 +00:00
Marcel Holtmann
e03a435ad9 bluez: Fix build issues with latest GStreamer updates 2013-01-09 14:30:12 +00:00
Marcel Holtmann
d8b4759116 bluez: Update copyright information 2013-01-09 14:30:12 +00:00
Luiz Augusto von Dentz
81eb2b020f bluez: Fix codec selection on gstream plugin. 2013-01-09 14:30:12 +00:00
Johan Hedberg
b167c2bbd3 bluez: Fix unnecessary NULL checks 2013-01-09 14:30:12 +00:00
Luiz Augusto von Dentz
621d857d49 bluez: Remove useless instruction. 2013-01-09 14:30:12 +00:00
Filippo Giunchedi
c1eb112a6d bluez: Register the a2dp gst sink as marginal
Avoid taking over as default gst sink by registering as GST_RANK_MARGINAL
2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
86ea471beb bluez: Add specific codec types.
Add specific codec types for a2dp sources and sinks so clients are able
to differ between them.
2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
c4f094da7d bluez: Remove unnecessary memset. 2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
08837565fa bluez: Add lock flag for capabilities.
lock flag permits the unix client to detect if there is someone holding
the lock so it can prevent useless attempt of setting a new configuration.
2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
08dd7e709d bluez: Introduce BT_OPEN command to audio ipc.
BT_OPEN make it possible to lock a given seid which is automacally
release if the client disconnects from the unix socket.
2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
35e57f99f0 bluez: Add source and destination fields to audio ipc messages. 2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
1f8330784a bluez: Make use of g_io_channel_shutdown instead of deprecated g_io_channel_close. 2013-01-09 14:30:11 +00:00
Marcel Holtmann
93c66d5008 bluez: Update copyright information 2013-01-09 14:30:11 +00:00
Marcel Holtmann
441a82cb6b bluez: First attempt in fixing compiler warnings (still needs cleanup) 2013-01-09 14:30:11 +00:00
Johan Hedberg
8b5d0aba41 bluez: More coding style fixes 2013-01-09 14:30:11 +00:00
Johan Hedberg
43879f9a5d bluez: Coding style fixes 2013-01-09 14:30:11 +00:00
Johan Hedberg
d8b5c0d9c9 bluez: Fix length header values in messages 2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
b03faa59d1 bluez: Fix gstreamer plugin to reflect the ipc changes. 2013-01-09 14:30:11 +00:00
Luiz Augusto von Dentz
4fd14e4113 bluez: Fix channel mode string from dual to dual-channel. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
7bc4d8ee9e bluez: Fix channel mode string to joint-stereo. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
2431bdeb7c bluez: Fix runtime warnings of gstreamer plugin. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
d27932cac4 bluez: Update gstreamer plugin to use new sbc API. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
a85d0fb7e8 bluez: Make use of parameters selected in alsa plugin and fix auto selection. 2013-01-09 14:30:10 +00:00
Marcel Holtmann
89f66da8ae bluez: Update copyright information 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
42f9db0214 bluez: Add bitpool property and others fixes for gstreamer plugin. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
ff3034af81 bluez: Enable gstreamer plugin to use autoconnect flag. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
1354fcea15 bluez: Fixes gstreamer caps and code cleanup. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
aba7785ba1 bluez: Fix use of gstreamer plugin with rhythmbox and banshee and rtp timestamps. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
309c6ecc47 bluez: Rename a2dpsendersink to avdtpsink. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
26017b78da bluez: Bug fixes for gstreamer plugin. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
1ca7a347cf bluez: Add mp3 support for gstreamer plugin. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
b0e7feba1e bluez: Make a2dpsink to act like a bin and split the payloader. 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
62b90c78e5 bluez: Fix error messages. (thanks to fchevalier for the patch) 2013-01-09 14:30:10 +00:00
Luiz Augusto von Dentz
06b6caf5cd bluez: Handle new ipc messages properly and adapt the plugins. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
efbe0f68a2 bluez: Code cleanup. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
3c8b91e0cb bluez: Integrate new ipc API implementation. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
22d80ddff0 bluez: Fix sbc negotiation and improves buffer handling by using GstAdapter. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
ff77205750 bluez: Add bitpool capability. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
4f12fb1827 bluez: Remove dependency of sbc library from a2dpsink element. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
1eb40b8550 bluez: Fix buffer usage. 2013-01-09 14:30:09 +00:00
Marcel Holtmann
050a168c4e bluez: Some more coding style fixes 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
518f463efe bluez: Fix coding style. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
cb09a130ae bluez: Fix a2dpsink coding style problems and improve compatibility with some players. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
53dfa00805 bluez: Add rtp header. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
2522d1ce0d bluez: Fix coding style issues. 2013-01-09 14:30:09 +00:00
Luiz Augusto von Dentz
795c605f7c bluez: Fixes a2dpsink element. 2013-01-09 14:30:09 +00:00
Marcel Holtmann
cb7d3b6d4e bluez: Add possible capabilities and connect to audio server 2013-01-09 14:30:09 +00:00
Marcel Holtmann
8fdac7fec0 bluez: Add SBC encoder and decoder skeletons for GStreamer 2013-01-09 14:30:09 +00:00
Marcel Holtmann
0e117ffef3 bluez: Add skeleton for an A2DP sink element 2013-01-09 14:30:09 +00:00
Sebastian Dröge
1e9aaee3ec mfc: Add support for RGB 2013-01-05 19:33:52 +01:00
Olivier Crête
4caad2d06c shm: Actually get the permissions on get_property 2013-01-04 15:39:05 -05:00
Sebastian Dröge
f5ef0dd7ee mfc: Set variables to NULL to prevent usage after free/unref 2013-01-03 12:09:15 +01:00
Sebastian Dröge
6e05f1ba12 mfc: Fix leak of input/output buffer storage in the MFC decoder library 2013-01-03 10:53:01 +01:00
Sebastian Dröge
24b5dd72bd mfc: Fix typo 2013-01-03 10:10:57 +01:00
Sebastian Dröge
204ec7efd5 mfc: Only add crop metadata if required 2013-01-02 17:23:51 +01:00
Sebastian Dröge
83ea8f1256 fimc: Do STREAMON/STREAMOFF only once and not once per buffer 2013-01-02 16:53:19 +01:00
Sebastian Dröge
718fe99018 mfc: Require one more output buffer than returned by the driver 2013-01-02 16:38:47 +01:00
Sebastian Dröge
8ed8347866 mfc: Prefer NV12 over I420/YV12 2013-01-02 16:09:15 +01:00
Sebastian Dröge
710b7c3f2e mfc: The first frame produces output in our case 2013-01-02 15:40:10 +01:00
Sebastian Dröge
0fbfe0225c mfc: Request input buffers explicitely 2013-01-02 14:32:32 +01:00
Sebastian Dröge
644ef86728 mfc: Don't STREAMOFF if no STREAMON happened yet 2013-01-02 14:27:53 +01:00
Sebastian Dröge
954ad79320 mfc: Check if the MFC hardware exists before registering the element 2013-01-02 14:23:22 +01:00
Sebastian Dröge
83a8138b4a mfc: Check device capabilities before doing anything else 2013-01-02 14:16:06 +01:00
Sebastian Dröge
4abcec4ce8 mfc: Include codec_data in the buffer with the next frame 2013-01-02 12:33:42 +01:00
Sebastian Dröge
b765e33b86 mfc: Set format field of the instance struct 2013-01-02 11:56:20 +01:00
Sebastian Dröge
43ea557b9c mfc: Implement support for crop metadata 2013-01-02 11:56:20 +01:00
Sebastian Dröge
0489f52776 mfc: Check if the hardware is available in GstVideoDecoder::open() 2013-01-02 10:27:28 +01:00
Sebastian Dröge
8835cb5814 mfc: Add support for h263 and MPEG1/2 2013-01-01 11:05:24 +01:00
Sebastian Dröge
c3c33d88d4 mfc: Don't reconfigure if we get compatible caps 2012-12-31 15:59:08 +01:00
Sebastian Dröge
bee7328210 mfc: Only create the MFC context in ::set_format() 2012-12-31 15:59:08 +01:00
Sebastian Dröge
9739f58a7f mfc: Recreate fimc context if settings change 2012-12-31 15:59:08 +01:00
Sebastian Dröge
3a4ade2966 mfc: Some refactoring 2012-12-31 15:59:08 +01:00
Sebastian Dröge
7a8845243c mfc: Do zerocopy if we get EGLImage buffers 2012-12-31 15:59:07 +01:00
Sebastian Dröge
37603c7dbd mfc: Some minor fixes 2012-12-31 15:59:07 +01:00
Sebastian Dröge
2cf73892e1 mfc: Fix double-unmap of the codec data 2012-12-31 15:59:07 +01:00
Sebastian Dröge
30fd0ded4f mfc: Pass codec_data to the codec if there's some 2012-12-31 15:59:07 +01:00
Sebastian Dröge
cfe1ff1c08 mfc: Refactor fimc code a bit 2012-12-31 15:59:07 +01:00
Sebastian Dröge
3b172723d6 mfc: Downgrade an error to debug output 2012-12-31 15:59:07 +01:00
Sebastian Dröge
410eb82aff mfc: Some fimc cleanup 2012-12-31 15:59:07 +01:00
Sebastian Dröge
64230003d9 mfc: Add profile/level and width/height constraints 2012-12-31 15:59:07 +01:00
Sebastian Dröge
817d30f130 mfc: Don't leak buffers when setting new dest settings for a direct buffer 2012-12-31 15:59:07 +01:00
Sebastian Dröge
21258a52cd mfc: Add initial MPEG4 support 2012-12-31 15:59:07 +01:00
Sebastian Dröge
fbf42806dc mfc: Add some more debug output 2012-12-31 15:59:06 +01:00
Sebastian Dröge
fe5b268a1c mfc: Implement tracking of frames using the v4l2_buffer timestamp 2012-12-31 15:59:06 +01:00
Sebastian Dröge
35400051fa mfc: Reset some more variables on ::reset() 2012-12-31 15:59:06 +01:00
Sebastian Dröge
8c433b8fb9 mfc: Also add support for YV12 2012-12-31 15:59:06 +01:00
Sebastian Dröge
2212880093 mfc: Add support for video meta 2012-12-31 15:59:06 +01:00
Sebastian Dröge
6111f89365 mfc: Implement negotiation to NV12 or I420 based on downstream caps 2012-12-31 15:59:06 +01:00
Sebastian Dröge
c77e820a52 mfc: Workaround for wrongly reported strides by FIMC 2012-12-31 15:59:06 +01:00
Sebastian Dröge
52f8649586 mfc: Add proper support for MFC decoder strides 2012-12-31 15:59:06 +01:00
Sebastian Dröge
94acf4189c mfc: Try with I420 for now, it's easier to debug 2012-12-31 15:59:06 +01:00
Sebastian Dröge
440dec8a68 mfc: Add some more debug output 2012-12-31 15:59:06 +01:00
Sebastian Dröge
048a09682f mfc: Don't require stride to be set on src parameters 2012-12-31 15:59:06 +01:00
Sebastian Dröge
dd56c6b5b6 mfc: The mfc decoder library is dual licensed too
Apache License 2.0 and LGPL2+
2012-12-31 15:59:05 +01:00
Sebastian Dröge
dedbb443ed mfc: Use CAMIF/FIMC for hardware color format conversion and de-tiling 2012-12-31 15:59:05 +01:00
Sebastian Dröge
1ca618fa6a mfc: Only unref the outbuf if it doesn't belong to the frame 2012-12-31 15:59:05 +01:00
Sebastian Dröge
902e72874a mfc: Port to GStreamer 1.0 2012-12-31 15:59:05 +01:00
Sebastian Dröge
01da756491 mfc: Add initial decoder element implementation
This does not copy the output to any output buffers yet.
Other than that should be basically functional already.
2012-12-31 15:59:05 +01:00
Sebastian Dröge
5d6c33d7e4 mfc: Add plugin and decoder skeleton 2012-12-31 15:59:05 +01:00
Sebastian Dröge
b0129f9994 mfc: Make mfc_decoder library compile and fix some compiler warnings 2012-12-31 15:59:05 +01:00
Sebastian Dröge
d4c78fc4ca mfc: Add mfc_decoder library from FXI 2012-12-31 15:59:05 +01:00
Sebastian Dröge
996e8912f2 d3dvideosink: Add compatibility #defines for older mingw headers
These were removed recently but these mingw headers are still
out there.
2012-12-27 14:09:51 +01:00
Youness Alaoui
57160c2be7 decklink: remove useless and uninitialized list causing a crash in the device probe 2012-12-26 13:11:50 -05:00
Sebastian Dröge
85690b802d d3dvideosink: Remove scary "while (object.refcount > 0) release (object);" code
If there is a memory leak, this isn't the way how it should be fixed.
2012-12-22 18:43:37 +01:00
Sebastian Dröge
038cf9eba0 d3dvideosink: Don't forget to return a value from ::propose_allocation() 2012-12-22 18:17:45 +01:00
Sebastian Dröge
53b2cdf335 d3dvideosink: Add support for the video meta 2012-12-22 18:17:04 +01:00
Sebastian Dröge
0642f3a143 d3dvideosink: Don't use "class" as variable name and don't use C99 comments 2012-12-22 18:13:48 +01:00
Sebastian Dröge
23265c8428 d3dvideosink: Only open system resources in in NULL->READY, not on object instantiation 2012-12-22 18:04:42 +01:00
Sebastian Dröge
827655ffb4 d3dvideosink: Properly copy frames to D3D with the right strides and everything
And only support color formats that are actually supported by the driver,
this allows proper zero-copy handling later and simplifies the code a lot.

Also simplify some other places, like the format mapping code.
2012-12-22 17:57:41 +01:00
Sebastian Dröge
c6763c2bbb d3dvideosink: Remove non-sense display PAR handling
This has to be implemented properly at some point
2012-12-22 16:26:52 +01:00
Sebastian Dröge
020da4c577 d3dvideosink: Fix caps leak 2012-12-22 16:20:13 +01:00
Sebastian Dröge
41e58ecf5f d3dvideosink: Fix duplicated format entry in the template caps 2012-12-22 12:09:30 +01:00
Sebastian Dröge
29b677fe9b d3dvideosink: Fix linking 2012-12-22 12:05:14 +01:00
Sebastian Dröge
de8f436b21 d3dvideosink: Fix some more compiler warnings 2012-12-22 11:58:21 +01:00
Sebastian Dröge
7e8c531621 d3dvideosink: Port remaining bits to new GLib threading API 2012-12-22 11:50:08 +01:00
Sebastian Dröge
4f28e50540 d3dvideosink: And remove the right declaration 2012-12-22 11:45:27 +01:00
Sebastian Dröge
52a62d73b1 d3dvideosink: Remove unused static declaration 2012-12-22 11:44:32 +01:00
Sebastian Dröge
345b5f0eb8 d3dvideosink: Remove unused variables 2012-12-22 11:43:21 +01:00
Sebastian Dröge
d2d19eb1e6 d3dvideosink: Update to new GLib threading API 2012-12-22 11:42:52 +01:00
Sebastian Dröge
9838e3748c d3dvideosink: Rename keep_aspect_ratio to force_aspect_ratio in the header too 2012-12-22 11:38:28 +01:00
Sebastian Dröge
5f3eefb611 d3dvideosink: Use G_PARAM_STATIC_STRINGS 2012-12-22 11:35:55 +01:00
Sebastian Dröge
872dc5feb6 d3dvideosink: Rename keep-aspect-ratio to force-aspect-ratio and default to TRUE
For consistency with other video sinks.
2012-12-22 11:34:43 +01:00
Sebastian Dröge
5ea516d735 d3dvideosink: Add files that had to be included in the last commit 2012-12-22 11:30:08 +01:00
Sebastian Dröge
479a54d18b d3dvideosink: Add $(GST_PLUGINS_BASE_CFLAGS) to CFLAGS 2012-12-22 11:28:19 +01:00
Roland Krikava
fe5f514049 d3dvideosink: Various improvements
* XOverlay set_render_rectangle support (Useful for rendering in QT QML)
* Video format negotiation (with preference ordering)
* Using Direct3D9 (No benefit to using newer D3D versions)
2012-12-22 11:24:28 +01:00
Sebastian Dröge
c636b45c9a d3dvideosink: Only include formats that are actually working 2012-12-21 16:11:49 +01:00
Sebastian Dröge
2b2112e6be d3dvideosink: Add the actually supported color formats to the template caps 2012-12-21 15:23:42 +01:00
Руслан Ижбулатов
1b11496194 directsound: fix compilation errors caused by circular includes
https://bugzilla.gnome.org/show_bug.cgi?id=690128
2012-12-12 22:45:53 +00:00
Michael Esemplare
09512c5db1 d3dvideosink: fix compiler and linker flags
https://bugzilla.gnome.org/show_bug.cgi?id=690031
2012-12-11 20:58:42 +00:00
Sebastian Dröge
eeab001bc2 winscreencap: Fix configure check and compilation 2012-12-11 14:22:25 +00:00
Sebastian Dröge
5641546bf4 wasapi: make the build happy without the static plugins patch 2012-11-30 11:45:25 +01:00
Sebastian Dröge
f7f34f9f3f wasapi: Integrate into the autotools build system
Patch based on a patch by Fabrizio Ciavatta <fabrizio.ciavatta@gmail.com>
2012-11-30 11:40:15 +01:00
Sebastian Dröge
3be147046d shm: Fix configure check and clean up Makefile 2012-11-28 13:10:47 +01:00
Emmanuel Durand
1c973536b9 shm: Fix compilation of shm on OSX
https://bugzilla.gnome.org/show_bug.cgi?id=689183
2012-11-28 13:04:30 +01:00
Sebastian Dröge
97a365c439 windows: Put the DirectX LDFLAGS in the correct place and reorder libraries 2012-11-21 10:23:45 +01:00
Andoni Morales Alastruey
689cef0fc7 d3dvideosink: fix redefinition of DECLARE_INTERFACE_IID
https://bugzilla.gnome.org/show_bug.cgi?id=688510
2012-11-20 11:10:25 +00:00
Sebastian Dröge
f17ebca62a amcvideodec: Fix refcount problem with frames being dropped because of decoder bugs 2012-11-12 14:58:00 +01:00
Sebastian Dröge
b2e5b9cb67 androidmedia: Update to new GLib thread API 2012-11-12 11:32:44 +01: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
Sebastian Dröge
9e4f1e7346 opensles: Fix compilation with debugging enabled 2012-11-02 11:25:21 +01:00
Sebastian Dröge
1f6944efc1 opensles: Remove unused variable 2012-11-01 15:38:32 +01:00
Sebastian Dröge
40ca6ed977 opensles: Make sure to only ever create a single engine object
The OpenSL ES spec defines:

An implementation shall enable creation of at least one such object, but
attempting to create more instances (either by a single application or by
several different applications) may fail.
2012-11-01 15:38:23 +01:00
Sebastian Dröge
92fffc8cbe androidmedia: Skip Aricent codecs for now
The HTC One X claims to have one (but doesn't) and loading
the library for it hangs forever.
2012-11-01 13:55:54 +01:00
Olivier Crête
9a328a8f71 avfvideosrc: Negotiate format, also support more resolutions
This should enable supprt for old and new iPhones with the same code.
2012-10-30 19:32:59 +01:00
Руслан Ижбулатов
0a30ecba90 directsoundsrc: Fix a number of warnings/errors in directsoundsrc
* Don't use deprecated glib mutex functions
* Don't declare useless variables
* Don't link to non-existing libgstinterfaces

Fixes #686871
2012-10-26 10:01:03 +02:00
Sebastian Dröge
e0026d7203 opensles: Port to 1.0 2012-10-25 14:05:49 +02:00
Sebastian Dröge
1d9d3c1c30 androidmedia: Remember and use input state 2012-10-25 14:05:48 +02:00
Sebastian Dröge
079c68e4de androidmedia: Port to 1.0 2012-10-25 14:05:48 +02:00
Sebastian Dröge
9c1543bd79 opensles: Integrate into build system 2012-10-18 14:03:10 +02:00
Josep Torra
e4810c3420 openslessink: Return 0 delay if the player object is in PAUSED state 2012-10-18 14:03:10 +02:00
Josep Torra
7c3a9c2974 opensles: fixes noise on seekeing 2012-10-18 14:03:10 +02:00
Josep Torra
adcf73e43f opensles: chain up on _clear_all 2012-10-18 14:03:10 +02:00
Josep Torra
69426572f8 opensles: implement the ringbuffer clear_all vmethod too 2012-10-18 14:03:09 +02:00
Josep Torra
fc087f6419 opensles: initial attempt to reduce the src latency 2012-10-18 14:03:09 +02:00
Josep Torra
920354eb0d opensles: sprinkle comments and cosmetic fixes 2012-10-18 14:03:09 +02:00
Josep Torra
78e3b9f428 opensles: check for device outputs in the mixer 2012-10-18 14:03:09 +02:00
Josep Torra
1d9f48a33d opensles: drop 48kHz sample rate
OpenSL ES implementation in Android is just a 'facade' API on top of
AudioFlinger which will downsample 48kHz into 44.1kHz before
delivering the audio to the underlaying hardware.

We found that it suffer some sort of underrun when the downsample
enters in action so relay on our good resampler to take care of that
and fix the clicks issue. And get an extra bonus of a lower latency.
2012-10-18 14:03:09 +02:00
Josep Torra
9cc7e6a74d opensles: change the defaults to use 20 ms ringbuffer segments
In my nexus7 seems that the internal min buffer size is 20 ms so make
our segments match.
2012-10-18 14:03:09 +02:00
Josep Torra
97a1ccfab1 opensles: ensure that we register the callback only in STOPPED
Fixes the error registering the callback on the PLAYING -> PAUSE ->
PLAYING state change sequence.
2012-10-18 14:03:09 +02:00
Josep Torra
e265cec514 opensles: cap queue size
Just in case we want to tweak the sink behaviour with buffer-time and
latency-time properties cap the queue size to something reasonable.
2012-10-18 14:03:09 +02:00
Josep Torra
cc6fc15674 opensles: sink to provide the audioclock by default 2012-10-18 14:03:09 +02:00
Josep Torra
08ef2e3eed opensles: only drain half ringbuffer on start
At start drain half ringbuffer into the OpenSL so the writting/reading
pointers will start at half ringbuffer distance.
2012-10-18 14:03:09 +02:00
Josep Torra
3698d98921 opensles: monitor some player events 2012-10-18 14:03:09 +02:00
Josep Torra
3ff51bb88b opensles: rework around the _delay function 2012-10-18 14:03:09 +02:00
Josep Torra
27cdb7c2ca opensles: implement _delay function 2012-10-18 14:03:09 +02:00
Josep Torra
9fcfa00680 opensles: refactor to behave more like other sinks
Reflect the queue in our own data buffer.
Drop the _commit hook that wasn't usefull.
Don't mess with the segsize/segtotal.
2012-10-18 14:03:09 +02:00
Josep Torra
ed5870b605 opensles: read player position and show it in the log 2012-10-18 14:03:09 +02:00
Josep Torra
1e69918f3e opensles: do not provide a clock in the sink element. 2012-10-18 14:03:08 +02:00
Josep Torra
b00049a9f6 opensles: rework on start/stop operations and callback function handling 2012-10-18 14:03:08 +02:00
Josep Torra
f00d5a5cac opensles: fixes 8 bit format which is unsigned on android. 2012-10-18 14:03:08 +02:00
Josep Torra
eb6715a305 opensles: attempt to reduce playback latency 2012-10-18 14:03:08 +02:00
Josep Torra
1d9e16fb78 opensles: drop _buffer_clear calls and refactor to a shared _enqueue_cb 2012-10-18 14:03:08 +02:00
Josep Torra
1694befac6 opensles: use 0.25s segments in the sink to lower latency 2012-10-18 14:03:08 +02:00
Josep Torra
5612936d1a opensles: finish remaining bits for source element. 2012-10-18 14:03:08 +02:00
Josep Torra
c006973a4e opensles: attempt to query device for capabilities 2012-10-18 14:03:08 +02:00
Josep Torra
85bd75a2b1 opensles: add the mute property and handle volume/mute changes on the fly 2012-10-18 14:03:08 +02:00
Josep Torra
f06688c7b2 opensles: make the volume property actually work 2012-10-18 14:03:08 +02:00
Josep Torra
0291953997 opensles: rework on the ringbufffer to properly clear segments
Make the segments bigger (1 second) as it seems to be the minimum size
we need to not introduce noise.
Sink works in my nexus 7 with rates from 8000 to 44100 and some noise
can be noticed on higger sample rates.
2012-10-18 14:03:08 +02:00
Josep Torra
29334f3233 opensles: fixes the license headers 2012-10-18 14:03:08 +02:00
Josep Torra
805a010dc9 opensles: produces expected output until ringbuffer wraps
Add some log messages.
Fixed a bit the _player_cb function and properly advance reding in the
ringbuffer.
Still produces noise when the ringbuffer wraps.
2012-10-18 14:03:08 +02:00
Josep Torra
f6aa2f29bc opensles: Add initial draft implementation of OpenSL ES plugin.
Initial draft implementation for a OpenSL ES based plugin for Android
that provides audio src and sink.
2012-10-18 14:03:08 +02:00
Sebastian Dröge
77364e2b3c androidmedia: Use correct variable name in Makefile.am 2012-10-18 09:25:52 +02:00
Raimo Järvi
01853745a3 directsoundsrc: Fix compiler warning
https://bugzilla.gnome.org/show_bug.cgi?id=673414
2012-10-17 21:01:39 +01: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
Raimo Järvi
a7258842ab directsoundsrc: port to 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=673414
2012-10-17 13:25:25 +01:00
Sebastian Dröge
80533fa3a3 androidmedia: Add missing file 2012-10-16 11:33:50 +02:00
Sebastian Dröge
6fa3f058b1 androidmedia: Rename plugin 2012-10-15 16:37:54 +02:00
Sebastian Dröge
5e954a7d0a androidmedia: Make everything buildable 2012-10-15 16:28:43 +02:00
Sebastian Dröge
f3682a0a6b Don't try to use the NVidia DRM codecs 2012-10-15 16:28:43 +02:00
Sebastian Dröge
31f0f163bd Try to handle format changes more gracefully
And make stop() faster and more robust
2012-10-15 16:28:43 +02:00
Sebastian Dröge
b0b642d8ab Add workaround for Google MP3 decoder outputting garbage in first output buffer
And assume one decoded input frame per output buffer to fix timestamp
handling by the base class.
2012-10-15 16:28:43 +02:00
Sebastian Dröge
2f3b2c586f Also add some more output format checks to the audio decoder 2012-10-15 16:28:42 +02:00
Sebastian Dröge
a870e6a5c3 Check output format metadata some more
And implement workaround for NVidia Tegra 3 not setting the slice_height.
Thanks to Josep Torra for debugging this issue.
2012-10-15 16:28:42 +02:00
Sebastian Dröge
7341ed62fa Add some more default channel layouts, these should be good for AAC at least 2012-10-15 16:28:42 +02:00
Sebastian Dröge
6ed3ea7cad Don't set timestamps, the baseclass handles this for us anyway 2012-10-15 16:28:42 +02:00
Sebastian Dröge
86176bd2a2 List profiles in reverse to minimize caps 2012-10-15 16:28:42 +02:00
Sebastian Dröge
fc5a18c091 Iterate levels in reverse order to minimize caps 2012-10-15 16:28:42 +02:00
Sebastian Dröge
0b0255ed12 Merge structures into caps instead of appending them 2012-10-15 16:28:42 +02:00
Sebastian Dröge
9f7ed3f180 Use orc_memcpy() instead of memcpy() as it should be faster for larger memory areas 2012-10-15 16:28:42 +02:00
Sebastian Dröge
7a53743bfd Add support for audio/mpeg-L2 for the Nexus 7 2012-10-15 16:28:42 +02:00
Sebastian Dröge
3159b7b5dd Add support for MPEG1/2 video 2012-10-15 16:28:42 +02:00
Sebastian Dröge
41862dff59 Ignore the *law and Vorbis decoders
They are broken unfortunately.
2012-10-15 16:28:42 +02:00
Sebastian Dröge
f098ae6b88 Add FIXME comment for not handling odd widths/height with the TI hardware decoders
Must likely an issue with the codec itself though.
2012-10-15 16:28:42 +02:00
Sebastian Dröge
42d11e8c1b Fix handling of I420 buffers with odd width 2012-10-15 16:28:41 +02:00
Sebastian Dröge
cb6f703669 Only mpegversion=4 is supported for AAC 2012-10-15 16:28:41 +02:00
Sebastian Dröge
742816df69 Remove some obsolete FIXMEs 2012-10-15 16:28:41 +02:00
Sebastian Dröge
f839a615a0 Fix flushing logic to unbreak handling of flushing seeks 2012-10-15 16:28:41 +02:00
Sebastian Dröge
bc7d2006e3 Fix chroma stride for I420 stride/crop conversion 2012-10-15 16:28:41 +02:00
Sebastian Dröge
7dbef6415f Fix Vorbis decoding 2012-10-15 16:28:41 +02:00
Sebastian Dröge
562b033872 Wait at most 100ms for dequeueing a buffer, and retry after that
Some codecs don't fail the dequeueing if the codec is flushed,
causing deadlocks when shutting down the element.
2012-10-15 16:28:41 +02:00
Sebastian Dröge
9a034f2beb Release output buffers a bit earlier 2012-10-15 16:28:41 +02:00
Sebastian Dröge
4c3617f7f0 Keep another reference of the input buffer in handle_frame()
It might be unreffed in the meantime by the other thread due
to finish_frame().
2012-10-15 16:28:41 +02:00
Sebastian Dröge
613a75ad92 Pass -1 as number of frames to the base class
This will automatically do the right thing if timestamps are good enough
2012-10-15 16:28:41 +02:00
Sebastian Dröge
0143418e0c Use correct buffer variable 2012-10-15 16:28:41 +02:00
Sebastian Dröge
bb8e53d4b8 Always pass 1 as number of frames to finish_frame() 2012-10-15 16:28:41 +02:00
Sebastian Dröge
99e287b86b Correctly remember number of channels and samplerate 2012-10-15 16:28:40 +02:00
Sebastian Dröge
efac01d096 Don't unref input buffer from handle_frame(), it's owned by the baseclass 2012-10-15 16:28:40 +02:00
Sebastian Dröge
3c40a9ca56 Remove invalid GST_ERROR() call 2012-10-15 16:28:40 +02:00
Sebastian Dröge
b07cd212ac Only try to get the channel-mask if it is set 2012-10-15 16:28:40 +02:00
Sebastian Dröge
afbc23ceed Add support for FLAC 2012-10-15 16:28:40 +02:00
Sebastian Dröge
b64e57ce42 Fix src template caps 2012-10-15 16:28:40 +02:00
Sebastian Dröge
6cc535581f Fix plugin initialization 2012-10-15 16:28:40 +02:00
Sebastian Dröge
77fbaae250 Add support for audio decoders, completely untested so far 2012-10-15 16:28:40 +02:00
Sebastian Dröge
de5375da81 Only set the SYNC_FRAME flag on the first buffer if we need to split the input 2012-10-15 16:28:40 +02:00
Sebastian Dröge
290d6f61c5 Ignore codecs with unknown color formats for stability purposes
They can be registered nonetheless if an environment variable
or compile-time #define is set.
2012-10-15 16:28:40 +02:00
Sebastian Dröge
65448a3790 Implement cropping and correctly handle the different color formats 2012-10-15 16:28:40 +02:00
Sebastian Dröge
3acc776dd6 Really implement stride conversion for NV12 too 2012-10-15 16:28:40 +02:00
Sebastian Dröge
266bc5bf69 Implement stride-conversion for I420 and NV12 2012-10-15 16:28:39 +02:00
Sebastian Dröge
024ac3560d Fix typo in previous commit 2012-10-15 16:28:39 +02:00
Sebastian Dröge
f2c5afd031 Don't allow using non-Google codecs if we started the Java VM ourselves
Hardware codecs, e.g. the TI ones, only work in processes that had their
Java VM started via the non-public AndroidRuntime class.
2012-10-15 16:28:39 +02:00
Sebastian Dröge
6feb6433d5 Rename to amc from androidmediacodec everywhere 2012-10-15 16:28:39 +02:00
Sebastian Dröge
2de542373b Improve debug output 2012-10-15 16:28:39 +02:00
Sebastian Dröge
0df00d68b5 Print the MediaFormats we get in the debug logs 2012-10-15 16:28:39 +02:00
Sebastian Dröge
11b8d33666 Improve debug output 2012-10-15 16:28:39 +02:00
Sebastian Dröge
d06af02637 Improve level/profile handling 2012-10-15 16:28:39 +02:00
Sebastian Dröge
2eff8bf82d Allow registering as static plugin with the GStreamer SDK API 2012-10-15 16:28:39 +02:00
Sebastian Dröge
b7a923234c If the buffer sizes are the same, just memcpy() to the output buffers 2012-10-15 16:28:39 +02:00
Sebastian Dröge
cb262e2465 Correctly convert timestamps between us and ns 2012-10-15 16:28:39 +02:00
Sebastian Dröge
2fe74efc04 Set SYNC_FRAME flag on buffers if required 2012-10-15 16:28:39 +02:00
Sebastian Dröge
ed98e8cf60 Improve flushing 2012-10-15 16:28:38 +02:00
Sebastian Dröge
d2aff4ecd3 Wait at most 0.5 seconds for getting an input buffer for EOS 2012-10-15 16:28:38 +02:00
Sebastian Dröge
3be4965d00 Correctly check for flushing 2012-10-15 16:28:38 +02:00
Sebastian Dröge
6a48db3d0f Retry for negative return values when dequeueing buffers 2012-10-15 16:28:38 +02:00
Sebastian Dröge
911ca50971 Fix refcount bug 2012-10-15 16:28:38 +02:00
Sebastian Dröge
b63c58e850 The MediaCodec API is apparently not threadsafe between stop() and release()
So we don't call release() and just hope for the GC to release the
codec in time.
2012-10-15 16:28:38 +02:00
Sebastian Dröge
525ecbb76a Fix plugin cache creation 2012-10-15 16:28:38 +02:00
Sebastian Dröge
e7b21d5796 Cache the codec informations inside the registry
Otherwise we would always load all codecs during plugin initialization
which can take quite some time (because of hardware) and also loads
lots of shared libraries (which number is limited by 64 in Android).
2012-10-15 16:28:38 +02:00
Sebastian Dröge
a98a627370 Properly attach and detach the current threads to the Java VM
Attaching a thread after it was detached will cause segfaults,
as such we use a pthread_key_t to keep track of the JNIEnv* of
the attached threads and in the destructor (i.e. when the
thread exits) we detach the thread.
2012-10-15 16:28:38 +02:00
Sebastian Dröge
bafd4a0b19 Don't get the output format from the codec before it is ready
Apparently things are crashing otherwise.
2012-10-15 16:28:38 +02:00
Sebastian Dröge
c4258069bb Get the input buffers from the codec 2012-10-15 16:28:38 +02:00
Sebastian Dröge
30b25fea35 Fix JNI method call signatures 2012-10-15 16:28:38 +02:00
Sebastian Dröge
686b9cf2fa Initialize the VM will full debugging for now 2012-10-15 16:28:37 +02:00
Sebastian Dröge
d7148efb8e Use NewStringUTF() instead of our own method for that 2012-10-15 16:28:37 +02:00
Sebastian Dröge
5bbaa1f359 Add the TI format to the mapping table too 2012-10-15 16:28:37 +02:00
Sebastian Dröge
e9790ae693 Add another TI specific OpenMAX color format 2012-10-15 16:28:37 +02:00
Sebastian Dröge
4966f68512 Fixes to element/elementfactory creation 2012-10-15 16:28:37 +02:00
Sebastian Dröge
32d4d29706 Some bugfixes to the codec scanning code
Also it's not possible to attach a thread after it was
detached once. As such we simply never detach any thread
at all now.
2012-10-15 16:28:37 +02:00
Sebastian Dröge
a48d2feae0 Fix some compilation errors 2012-10-15 16:28:37 +02:00
Sebastian Dröge
e9dcb1b329 Add important FIXME 2012-10-15 16:28:37 +02:00
Sebastian Dröge
1e73da2941 Add video decoder element 2012-10-15 16:28:37 +02:00
Sebastian Dröge
c846605082 Add some more JNI wrapping 2012-10-15 16:28:37 +02:00
Sebastian Dröge
a6a34c8f1c Add some missing color format constants 2012-10-15 16:28:37 +02:00
Sebastian Dröge
d0ebf261ff Implement basic wrapper around MediaCodec API
Ideally nothing else will be needed from the elements later.
2012-10-15 16:28:37 +02:00
Sebastian Dröge
f99214a657 Some more WIP
Scanning all codecs now and have data structures for holding codec
information and codec contexts. Also function declarations for
working with them.
2012-10-15 16:28:36 +02:00
Sebastian Dröge
8f232ea90b Initial commit 2012-10-15 16:28:36 +02:00
Sebastian Dröge
4cbb7b8a99 androidmedia: Add androidmedia plugin 2012-10-15 16:28:36 +02:00
Michael Smith
0c2159a220 meta info: register thread-safely. 2012-10-03 11:05:06 -07:00
David Schleef
65a1f79bcb decklink: change device instance lifecycle
The decklink driver eventually crashes after repeated creation/deletion
of device, input, output, and configuration objects.  Change to create
these at the outset and keep them around forever.
2012-09-23 21:27:36 +01:00
David Schleef
dd66252f23 decklinksrc: Fix memory leaks
Buffers now hold on to a reference for the input, so the input
object doesn't get freed (and carry the buffers with it) before
all the buffers are freed.
2012-09-23 21:27:34 +01:00
Mark Nauwelaerts
9cb0cc216d applemedia: init videoinfo 2012-09-18 13:19:37 +02:00
Mark Nauwelaerts
5431286b2a replace _get_caps_reffed with _get_caps 2012-09-14 17:55:05 +02: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
b8f913555d ffmpegcolorspace is no more 2012-09-14 16:45:34 +02:00
Youness Alaoui
7a7267b402 uvch264: Make gudev/libusb a hard dependency and remove XU_FIND_UNIT ioctl support
Conflicts:
	sys/uvch264/gstuvch264_src.c
2012-09-11 15:00:18 -04:00
Mark Nauwelaerts
4a843dbbac d3dvideosink: port to the new GLib thread API 2012-09-11 15:12:55 +02:00
Olivier Crête
cfc94b8a45 uvch264src: Use generic marshaller 2012-09-10 16:12:39 -04:00
Youness Alaoui
1ba24e1306 UVC H264 plugin 2012-09-10 16:09:26 -04:00
David Schleef
85471f5ffa decklinksink: Fix memory leak 2012-09-09 02:07:24 +01:00
Tim-Philipp Müller
24c626ae1f shm: remove unneeded glib-gen-mak include in Makefile
No enums or marshallers to be generated here. Should also
be gst-glib-gen.mak then.
2012-08-24 09:01:41 +01:00
Edward Hervey
48ae90aff8 dvb: More fixups to 1.0
Not tested yet !

Conflicts:

	sys/dvb/gstdvbsrc.c
2012-08-14 19:07:06 +02:00
Edward Hervey
7a72c961de cam: Allow time for CA to initialize
Some devices take some time to initialize, and until they are they
will error out when trying to get information about the CA device.
2012-08-14 19:06:30 +02:00
Edward Hervey
25cb359ddb cam: PMT_REPLY parsing
Not used yet
2012-08-14 19:06:25 +02:00
Edward Hervey
dfdbb87813 dvbbasebin: Switch to use tsparse 2012-08-14 19:06:21 +02:00
Fabrizio (Misto) Milo
fe5cf525e1 dvbsrc + dvb api buffer property to overcome buffer under reads 2012-08-14 19:05:32 +02:00
Andoni Morales Alastruey
a3519d59ef winks: add missing default switch case 2012-08-07 19:05:10 +02:00
Andoni Morales Alastruey
71c1a0e999 winks: fix types 2012-08-07 19:05:04 +02:00
Andoni Morales Alastruey
97a95c9cba winks: fix format warnings 2012-08-07 19:05:00 +02:00
Andoni Morales Alastruey
64f77b2f84 winks: fix unused variables warnings 2012-08-07 19:04:55 +02:00
Andoni Morales Alastruey
4120cfa43f winks: don't reinitialize MEDIASUBTYPE_I420 2012-08-07 19:04:50 +02:00
Andoni Morales Alastruey
ffb40074cd winks: define STATIC_KSPROPSETID_Wave_Queued if not defined 2012-08-07 19:04:42 +02:00
Andoni Morales Alastruey
544840ff38 winks: integrate build with autotools 2012-08-07 19:04:36 +02:00
Andoni Morales Alastruey
a55786274d d3dvideosink: avoid duplicated symbols in static links
Rename the DLL entry point the avoid duplicated symbols in static
links.
2012-08-07 19:04:01 +02:00
Andoni Morales Alastruey
beea4bd161 d3dvideosink: avoid duplicated symbols in static links
Rename the DLL entry point the avoid duplicated symbols in static
links.
2012-08-06 14:37:36 +02:00
Wim Taymans
0fc94cd7b0 update for query api changes 2012-07-06 11:50:53 +02:00
Aleix Conchillo Flaque
7b6029ebe1 shmsrc: memory corruption when a client disconnects (fixes #679385) 2012-07-05 10:55:26 -07:00
Sebastian Dröge
a26e5bbf9b directsoundsrc: Chain up to the parent class' finalize implementation 2012-07-03 12:58:53 +02:00
David Schleef
71dcbbd52a decklinksink: Better handling of audio output
Conflicts:

	sys/decklink/gstdecklinksink.cpp
2012-07-03 09:11:52 +02:00
David Schleef
2a51113351 decklinksrc: Send newsegment events 2012-07-03 09:09:27 +02:00
David Schleef
8199f37f27 decklinksink: Mark element as sink element 2012-07-03 09:09:22 +02:00
David Schleef
70cef922a4 decklink: use GOnce in type registration 2012-07-03 09:09:18 +02:00
Tim-Philipp Müller
4f6b3b7bbd sys: make video sinks default to force-aspect-ratio=true 2012-06-29 12:03:51 +01:00
Wim Taymans
ba87a4524f fix x-wmv format string 2012-06-27 11:23:19 +02:00
Andoni Morales Alastruey
ad5b76a58d d3dvideosink: release the offscreen surface before the d3d device
The offscreen surface keeps a reference on the d3d device, so if the
device is released first we don't see the reference count debug message
going to 0 as it should be.
2012-06-26 09:40:29 +02:00
Andoni Morales Alastruey
53988c9a43 d3dvideosink: clean up element
Remove old commented code and uneeded extra indentation
2012-06-26 09:40:29 +02:00
Andoni Morales Alastruey
e1651e9b65 d3dvideosink: rework locking for devices lost 2012-06-26 09:39:36 +02:00
Andoni Morales Alastruey
bd68bd61da d3dvideosink: release and recreate the device in prepare_window 2012-06-26 09:39:36 +02:00
Tim-Philipp Müller
9af3852753 sys: remove left-over v4l2 dir which has moved to good
let's not keep a README around to announce it's moved to -good,
that's just clutter.
2012-06-21 12:17:09 +01:00
Tony Houghton
a996d2f01a Correct satellite delivery descriptor parsing.
Original code to parse satellite delivery descriptors to generate
"satellite" structures appeared to be copy & pasted from cable's code
without amending for satellite.

Also added 8PSK to dvbsrc's enum for modulation.

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

Conflicts:

	gst/mpegdemux/gstmpegdesc.h
	gst/mpegdemux/mpegtspacketizer.c
2012-06-21 11:37:21 +01:00
Edward Hervey
d7ad4ce890 dvb: Detect more issues with configuration file
Report useful errors when:
* file is present but empty
* requested channel is not present
2012-06-19 10:54:58 +01:00
Edward Hervey
068598e237 dvbbasebin: Emit an error when we fail reading the channels file
Conflicts:

	sys/dvb/dvbbasebin.c
2012-06-19 10:54:51 +01:00
Fabrizio (Misto) Milo
1ee6a35949 dvbsrc: spell-check 2012-06-19 10:52:13 +01:00
Fabrizio (Misto) Milo
257d6e6e8a dvb: better dvsrc polarity info 2012-06-19 10:50:58 +01:00
Andoni Morales Alastruey
830e8b6ec6 d3dvideosink: don't recreate the d3d device if it already exists 2012-06-15 14:09:39 +02:00
Andoni Morales Alastruey
39e0bf5260 d3dvideosink: don't create new internal windows if we already have one 2012-06-15 10:17:03 +02:00
Andoni Morales Alastruey
c924929de2 dshowdecwrapper: add support for VC1 and fix plugins ranks 2012-05-31 12:47:06 +02:00
Andoni Morales Alastruey
1bcb49bcce dshowdecwrapper: initialize debug properly 2012-05-31 12:47:01 +02:00
Andoni Morales Alastruey
7ed605b375 dshowdecwrapper: fix object disposal and finalization 2012-05-31 12:46:56 +02:00
Andoni Morales Alastruey
78caa53345 d3dvideosink: don't flush after a device lost 2012-05-31 11:09:16 +02:00
Sebastian Dröge
30617d23a3 applemedia: Put the right flags into the right variable 2012-05-30 13:54:11 +02:00
Sebastian Dröge
df5f39658f configure: Add OBJC specific compiler flags
See bug #643939.
2012-05-30 11:28:53 +02:00
Edward Hervey
70719535dc dvb: Add more debugging to cam support 2012-05-28 16:46:31 +02:00
Руслан Ижбулатов
83123a98ae Port d3dvideosink to 0.11
Fixes #674817
2012-05-23 15:31:06 +02:00
Edward Hervey
84fa5ec68d dvbbasebin: Emit no-more-pads when pad is added
This avoids an endless hang with playbin2, which sees dvbbasesbin as
having dynamic pads ... but never emitted no-more-pads.
2012-05-23 09:40:39 +02:00
Edward Hervey
d049eadd50 camutils: Fix PMT message construction
The size of the message ended up being bigger than its content.
That cause some CA modules to just hang.
2012-05-23 09:40:33 +02:00
Edward Hervey
3d588134d8 camtransport: Allow delay when setting up cam device
Some CA devices take a long time to set themselves up,
therefore retry every 250ms (for a maximum of 2.5s)
2012-05-23 09:40:25 +02:00
Edward Hervey
ec8c15fafe dvbsrc: Fixup/add debug statements 2012-05-23 09:40:19 +02:00
Edward Hervey
2758cda0dc dvbsrc: Only open device read/write when needed
Avoid starting up kernel thread when not needed
2012-05-23 09:40:13 +02:00
Edward Hervey
cca28a50a5 dvb: Add warning when dvb channels file isn't present 2012-05-23 09:40:04 +02:00
Edward Hervey
5c4dd29838 dvb: Fixups for latest API changes 2012-05-22 19:11:29 +02:00
Andoni Morales Alastruey
171321c5eb d3dvideosink: fix deadlock when the device is lost 2012-05-09 10:38:33 +02:00
Andoni Morales Alastruey
ade676879a d3dvideosink: remove trailing ';' from locks defines to make gst-indent happy 2012-05-09 09:50:57 +02:00
Aleix Conchillo Flaque
3971ef089c shmsink: fix memory corruption when a client disconnects (fixes #675640)
Also, add a check to make sure a client isn't dumped twice
2012-05-07 21:02:26 -04:00
Andoni Morales Alastruey
d3cc27f4fc dshowvideosink: add missing casts to LPCSTR 2012-05-07 13:09:14 +02:00
Andoni Morales Alastruey
74f5ded1b8 dshowvideosink: lower rank of the DirectShow video sink plugin
d3dvideosink should have a higher rank as it works better.
2012-05-07 13:07:56 +02:00
Andoni Morales Alastruey
30c83758c4 dshowvideosink: Fix compilation on x64 platforms 2012-05-07 12:53:26 +02:00
Edward Hervey
a6be944da9 decklink: Fix unitialized variable 2012-04-25 10:31:00 +02:00
Sebastian Dröge
a5495fb475 vdpau: Switch from deprecated XKeycodeToKeysym() to XkbKeycodeToKeysym()
Conflicts:

	sys/vdpau/gstvdpsink.c
2012-04-24 11:07:49 +02:00
Wim Taymans
a8af5334eb dvbsrc: pass the reason for failed read as GstFlowReturn
Make the _read_device function return a GstFlowReturn so that we can propagate
this to the caller. This allows us to differentiate between poll errors and
flushing state.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674219
2012-04-20 15:17:56 +02:00
Wim Taymans
1cbd31e3ee fix for video api update 2012-04-19 14:24:45 +02:00
Sebastian Dröge
7ff3293a44 video: Update for libgstvideo API changes 2012-04-19 12:31:39 +02:00
Mark Nauwelaerts
6578797245 collectpads2: rename to collectpads 2012-04-17 15:22:59 +02:00
Matej Knopp
156d80d74b applemedia: do not link gstinterfaces 2012-04-16 11:19:17 +02:00
Sebastian Dröge
cda192b3b7 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 18:02:56 +02:00
Alessandro Decina
d36fe4593d applemedia: update corevideobuffer after buffer meta API change 2012-04-05 09:08:35 +02:00
Alessandro Decina
13334dfa8f applemedia: update coremediabuffer after buffer meta API change 2012-04-05 09:08:24 +02:00
Alessandro Decina
10387bd629 qtkitvideosrc: update after BaseSrc::fixate API change 2012-04-05 09:08:14 +02:00
Sebastian Dröge
1318a97e0a gst: Update versioning 2012-04-04 14:44:34 +02:00
Wim Taymans
48ba9063b0 update for buffer api change 2012-03-30 18:15:36 +02:00
Sebastian Dröge
15c6a9e87f shmsrc: Fix a merge mistake 2012-03-29 18:03:05 +02:00
Sebastian Dröge
860ccd414d Merge remote-tracking branch 'origin/0.10'
Conflicts:
	NEWS
	RELEASE
	common
	configure.ac
	docs/libs/gst-plugins-bad-libs-sections.txt
	docs/plugins/gst-plugins-bad-plugins.args
	docs/plugins/gst-plugins-bad-plugins.hierarchy
	docs/plugins/gst-plugins-bad-plugins.interfaces
	docs/plugins/inspect/plugin-adpcmdec.xml
	docs/plugins/inspect/plugin-adpcmenc.xml
	docs/plugins/inspect/plugin-assrender.xml
	docs/plugins/inspect/plugin-audiovisualizers.xml
	docs/plugins/inspect/plugin-autoconvert.xml
	docs/plugins/inspect/plugin-bayer.xml
	docs/plugins/inspect/plugin-bz2.xml
	docs/plugins/inspect/plugin-camerabin2.xml
	docs/plugins/inspect/plugin-celt.xml
	docs/plugins/inspect/plugin-dataurisrc.xml
	docs/plugins/inspect/plugin-debugutilsbad.xml
	docs/plugins/inspect/plugin-dtmf.xml
	docs/plugins/inspect/plugin-dtsdec.xml
	docs/plugins/inspect/plugin-dvbsuboverlay.xml
	docs/plugins/inspect/plugin-dvdspu.xml
	docs/plugins/inspect/plugin-faac.xml
	docs/plugins/inspect/plugin-faad.xml
	docs/plugins/inspect/plugin-gsm.xml
	docs/plugins/inspect/plugin-h264parse.xml
	docs/plugins/inspect/plugin-mms.xml
	docs/plugins/inspect/plugin-modplug.xml
	docs/plugins/inspect/plugin-mpeg2enc.xml
	docs/plugins/inspect/plugin-mpegdemux2.xml
	docs/plugins/inspect/plugin-mpegtsdemux.xml
	docs/plugins/inspect/plugin-mpegvideoparse.xml
	docs/plugins/inspect/plugin-mplex.xml
	docs/plugins/inspect/plugin-pcapparse.xml
	docs/plugins/inspect/plugin-rawparse.xml
	docs/plugins/inspect/plugin-rtpmux.xml
	docs/plugins/inspect/plugin-rtpvp8.xml
	docs/plugins/inspect/plugin-scaletempo.xml
	docs/plugins/inspect/plugin-schro.xml
	docs/plugins/inspect/plugin-sdp.xml
	docs/plugins/inspect/plugin-segmentclip.xml
	docs/plugins/inspect/plugin-shm.xml
	docs/plugins/inspect/plugin-videomaxrate.xml
	docs/plugins/inspect/plugin-videoparsersbad.xml
	docs/plugins/inspect/plugin-vp8.xml
	docs/plugins/inspect/plugin-y4mdec.xml
	ext/celt/gstceltdec.c
	ext/dts/gstdtsdec.c
	ext/modplug/gstmodplug.cc
	ext/opus/gstopusenc.c
	gst-libs/gst/video/gstbasevideocodec.c
	gst-libs/gst/video/gstbasevideocodec.h
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideodecoder.h
	gst-libs/gst/video/gstbasevideoencoder.c
	gst-libs/gst/video/gstbasevideoencoder.h
	gst/adpcmdec/Makefile.am
	gst/audiovisualizers/gstbaseaudiovisualizer.c
	gst/h264parse/gsth264parse.c
	gst/mpegdemux/mpegtsparse.c
	gst/mpegtsdemux/mpegtsbase.c
	gst/mpegtsdemux/mpegtspacketizer.c
	gst/mpegtsdemux/mpegtsparse.c
	gst/mpegtsdemux/tsdemux.c
	gst/mpegtsdemux/tsdemux.h
	gst/mxf/mxfdemux.c
	gst/rawparse/gstaudioparse.c
	gst/videoparsers/gsth263parse.c
	gst/videoparsers/gsth264parse.c
	sys/d3dvideosink/d3dvideosink.c
	sys/decklink/gstdecklinksink.cpp
	sys/dvb/gstdvbsrc.c
	sys/shm/gstshmsrc.c
	sys/vdpau/h264/gstvdph264dec.c
	sys/vdpau/mpeg/gstvdpmpegdec.c
	tests/examples/opencv/gst_element_print_properties.c
	win32/common/config.h
2012-03-29 17:41:53 +02:00
Wim Taymans
a9ec4d62a8 update for buffer changes 2012-03-28 12:53:09 +02:00
Olivier Crête
3fa160e1c8 shmsink: Make buffer-time signed to deal with backward jumps in timestamps 2012-03-23 13:06:55 -04:00
Olivier Crête
2712ab6216 shmsink: Make buffer-time signed to deal with backward jumps in timestamps 2012-03-23 13:06:22 -04:00
David Schleef
d2e1cb6ece decklink: Add decklink dispatch code for OS/X 2012-03-22 02:29:19 -07:00
Raimo Järvi
477aaba617 winscreencap: Fix compiling with mingw
https://bugzilla.gnome.org/show_bug.cgi?id=672505
2012-03-20 22:46:05 +00:00
Mark Nauwelaerts
995bad93a8 shm: port to 0.11 2012-03-20 20:21:42 +01:00
Tim-Philipp Müller
a7c55d3106 sys: sort subdirs in Makefile alphabetically 2012-03-19 22:58:02 +00:00
Raimo Järvi
ae471142eb winscreencap: Integrate into autotools build system
https://bugzilla.gnome.org/show_bug.cgi?id=672031
2012-03-19 22:51:39 +00:00
Carsten Kroll
6f3ea8e67b d3dvideosink: fix regression setting window handle in pause/play
https://bugzilla.gnome.org/show_bug.cgi?id=656905
2012-03-18 00:29:22 +00:00
David Schleef
aca69cbf63 decklinksink: Add device property
Also add property probe for device property, similar to decklinksrc.
2012-03-17 15:07:49 -07:00
blake tregre
18475dd0c2 decklinksrc: make sure we can accept caps before returning true
caps are determined by the plugin's properties, so we should check the
incoming caps to see if they agree.  Fixes: #667722.
2012-03-17 14:24:51 -07:00
blake tregre
409e8dcc90 decklinksrc: disable pull mode
decklink device doesn't support any pull mode related functionality.
it's more like a live source, you see. Fixes: #667720.
2012-03-17 14:24:51 -07:00
blake tregre
86eeca91de decklinksrc: push new new segment event to all pads
Take care to push the event to all pads, but favor the video src pad.
Fixes: #667716.
2012-03-17 14:24:51 -07:00
David Schleef
c13e4eacc2 decklinksrc: Implement latency query
Implement latency query.  Fix memleak releasing resources.
2012-03-17 14:24:51 -07:00
David Schleef
83e2ca791c decklink: reindent 2012-03-17 14:24:51 -07:00
blake tregre
e37ce96b2c decklinksrc: handle flow return properly and provide better message
* sys/decklink/gstdecklinksrc.cpp:
2012-03-17 14:24:51 -07:00
David Schleef
7cd0ac046a decklink: Add property probing
Renames the subdevice property to just device, and has it
return the number of devices in the system in response to
a probe. This is useful both for using multiple capture
cards, and for detecting whether it's worth adding the
element to a pipeline.

Also cleans up the property descriptions.
2012-03-17 14:24:42 -07:00
Wim Taymans
76460a0d7a update for bufferpool api change 2012-03-15 14:08:29 +01:00
Wim Taymans
6cbb840385 update for memory api changes 2012-03-15 13:37:36 +01:00
Dmitry Ketov
25d92711bc winscreencap: Integrate into autotools build system
Fixes bug #672031.
2012-03-14 10:25:05 +01:00
Wim Taymans
c3c985cfe1 fix for caps _normalize changes 2012-03-12 12:23:34 +01:00
Thibault Saunier
20669d461a Fix 'ignoring return value of function declared with const attribute'
This always happens with GstByteReader/Writer and friends when
not taking into account returned boolean of the _read/_write functions
(which is actually wrong).

Make use of the *_unchecked variant as much as possible, or take the
returned value into account.
2012-03-10 19:22:07 -03:00
Edward Hervey
a1b7f84794 Add missing GLIB_DISABLE_DEPRECATION_WARNINGS
Suppress warnings about deprecated threading and GValueArray
API, so git compiles with -Werror.
2012-03-06 18:49:49 +01:00
Sebastian Dröge
be82ae207a vdpau: Fix loop to not read before the valid memory area 2012-03-06 14:50:06 +01:00
Stefan Sauer
4565bb1c01 shm: add minimal doc blobs 2012-03-04 21:54:08 +01:00
Alessandro Decina
8546458617 applemedia: port vtdec 2012-03-03 19:04:36 +01:00
Alessandro Decina
b45250e9d2 applemedia: update signature of CMSampleBufferCreate and CMBlockBufferCreateWithMemoryBlock
Change data type for counters passed on the stack from UInt32 to size_t. Fixes
64bit builds.
2012-03-03 19:04:36 +01:00
Alessandro Decina
42dd6a145a applemedia: update format description helper signature
Update the FigVideoFormatDescriptionCreateWithSampleDescriptionExtensionAtom
signature to match the implementation on OSX Lion.
2012-03-03 19:04:36 +01:00
Руслан Ижбулатов
740c3101ac d3dvideosink: fix compiler warnings and build failure with mingw
shared.d3ddev was removed a while back, not sure how this still
compiles for anyone (tpm).

https://bugzilla.gnome.org/show_bug.cgi?id=653718
https://bugzilla.gnome.org/show_bug.cgi?id=670143
https://bugzilla.gnome.org/show_bug.cgi?id=656905
2012-03-03 17:47:26 +00:00
Andoni Morales Alastruey
4b48c43b31 d3dvideosink: add missing directx headers 2012-03-02 15:42:29 +01:00
Tim-Philipp Müller
044df35560 vdpau: relicense four source files from GPL3+ to LGPL2+
These source files were mistakenly licensed as GPL3, the
author (Carl-Anton Ingmarsson) has given permission to
relicense them to LGPL2+.

https://bugzilla.gnome.org/show_bug.cgi?id=671142
2012-03-01 18:50:32 +00:00
Guillaume Desmottes
ddfcfb5a7a Add missing GLIB_DISABLE_DEPRECATION_WARNINGS
Suppress warnings about deprecated threading and GValueArray
API, so git compiles with -Werror.

https://bugzilla.gnome.org/show_bug.cgi?id=670982
2012-02-28 22:55:34 +00:00
Alessandro Decina
7a4a3833c3 applemedia: port qtkitvideosrc 2012-02-28 08:14:00 +01:00
Edward Hervey
939087940c dvbsrc: Timestamp output by default
Allows downstream elements (like demuxers or parsers) to do remote
clock rate/skew estimation.
2012-02-24 17:07:43 +01:00
Wim Taymans
a9f5def9d1 Merge branch 'master' into 0.11
Conflicts:
	ext/opus/gstopusparse.c
	gst/colorspace/colorspace.c
2012-02-20 16:07:50 +01:00
Sebastian Dröge
87163ea091 decklink: Add $(GST_PLUGINS_BASE_CFLAGS) and $(GST_PLUGINS_BASE_LIBS) to fix the build 2012-02-20 12:42:47 +01:00
David Schleef
8f8d7bf781 decklink: Add 10-bit support 2012-02-18 17:04:44 -08:00
Wim Taymans
eff7037447 Merge branch 'master' into 0.11 2012-02-14 11:19:04 +01:00
Raimo Järvi
ac681a6efd directdrawsink: Fix warnings on 64 bit mingw-w64
gstdirectdrawsink.c:1561:24: error: assignment from incompatible pointer type
gstdirectdrawsink.c:2028:3: error: format '%d' expects type 'int', but argument 8 has type 'size_t'

https://bugzilla.gnome.org/show_bug.cgi?id=657522
2012-02-14 00:09:53 +00: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
c835325536 shmsink: fix indefinite wait after adding a new fd to the poll set
If the second call to _wait blocks, we will not signal the condition
variable, so ensure that second call is not blocking.
See rationale and information in the linked bug:

https://bugzilla.gnome.org/show_bug.cgi?id=669697
2012-02-09 18:15:09 +00:00
Wim Taymans
de1f89bf07 GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-08 16:37:13 +01:00
Carsten Kroll
0c5037072a d3dvideosink: create a d3d device for each sink and use the default swap chain in connection with flushing the GPU and not recreating the swap chain this avoids tearing also use GST_xx_DEBUG macros where appropriate 2012-02-07 15:35:28 +01:00
Carsten Kroll
ab22a64a13 d3dvideosink: flush GPU before Present added alternate wait for vsync method based on GetRasterStatus 2012-02-07 15:35:10 +01:00
Carsten Kroll
ec603dc326 d3dvideosink: check for hardware capabilities, when negotiating 2012-02-07 15:34:46 +01:00
Carsten Kroll
56193e8f49 d3dvideosink: redraw last buffer when new window handle has been set. 2012-02-07 15:34:41 +01:00
Carsten Kroll
12407a13a0 d3dvideosink: added NV12 + enabled RGB support 2012-02-07 15:33:30 +01:00
Andoni Morales Alastruey
d3b1488fa7 d3dvideosink: Fix device initialization check 2012-02-07 12:37:40 +01:00
Tim-Philipp Müller
f8f4620451 build: fix CFLAGS order and LIBS order
_BAD_CFLAGS should always come first, then GST_PLUGINS_BASE_CFLAGS,
then GST_BASE_CFLAGS then GST_CFLAGS. Same for libs: first plugins
base libs, then GST_BASE_LIB then GST_LIBS.
2012-02-03 00:50:33 +00:00
Vincent Penquerc'h
8147669971 plenty: fixup glib deprecations 2012-01-27 15:47:07 +00:00
Mark Nauwelaerts
12ee41829c port some more to new memory API
Fixes #668677.
2012-01-25 18:50:40 +01:00
Sebastian Dröge
a2a4300241 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	ext/kate/gstkateenc.c
	gst/colorspace/colorspace.c
	gst/mpegvideoparse/mpegvideoparse.c
2012-01-25 13:22:43 +01:00
David Schleef
f4afa8e53c avc: fix broken line continuation 2012-01-22 15:49:44 -08:00
Wim Taymans
27ee60a27b port to new gthread API 2012-01-19 11:34:26 +01:00
Vincent Penquerc'h
525a995569 linsyssdi: fix leaks 2012-01-13 10:32:59 +00:00
Edward Hervey
ff026e0801 pvr2d: Port to 0.11
Handles GstVideoMeta and GstVideoCropMeta
Provides GstBufferPool
New GstPVRMeta to handle the wrapped PVR mem_src
2011-12-05 12:12:07 +01: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
Edward Hervey
b78b980d72 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/faac/gstfaac.c
	ext/opus/gstopusdec.c
	ext/opus/gstopusenc.c
	gst/audiovisualizers/gstspacescope.c
	gst/colorspace/colorspace.c
2011-11-25 12:48:58 +01:00
Luciana Fujii Pontello
cdcc39455c Add pvrvideosink element
PVRVideoSink uses PVR2D library to blit images.

Author: Alessandro Decina <alessandro.decina@collabora.co.uk>
Author: Luciana Fujii <luciana.fujii@collabora.co.uk>
2011-11-25 10:24:23 +01:00
Wim Taymans
bc6ed0bf97 Merge branch 'master' into 0.11
Conflicts:
	ext/celt/gstceltdec.c
	ext/opus/gstopusdec.c
	ext/opus/gstopusdec.h
	ext/opus/gstopusenc.c
	ext/opus/gstopusenc.h
	ext/opus/gstopusparse.c
2011-11-17 17:32:42 +01:00
Tim-Philipp Müller
357d7bdfed Update for GstURIHandler get_protocols() changes 2011-11-13 23:55:56 +00:00
Mart Raudsepp
61cc352902 mimic, opencv, vp8, acmmp3dec, linsys: Don't build static plugins
Pass --tag=disable-static to libtool everywhere where it's been forgotten

https://bugzilla.gnome.org/show_bug.cgi?id=663768
2011-11-11 11:54:15 +00:00
Wim Taymans
8546951222 chain up in set_clock 2011-11-10 12:11:21 +01:00
Wim Taymans
95cd0b3ba8 update for probe api changes 2011-11-08 11:28:41 +01:00
Wim Taymans
3f8af6f511 dvdbasebin: fix for pad probes update 2011-11-07 17:13:11 +01:00
Wim Taymans
c8adc4f8c8 make request pads take _%u 2011-11-04 12:22:37 +01:00
Wim Taymans
17a982fe31 structure: fix for api update 2011-11-02 09:08:23 +01:00
Tim-Philipp Müller
10d31a588d Update for pad API changes
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:45:25 +00:00
Wim Taymans
7f851794d6 Merge branch 'master' into 0.11 2011-10-16 15:28:31 +02:00
Sjoerd Simons
94d9327e2a shm: Add buffer-time property
Add a buffer-time property to limit the size of the amount of data
queued in the shmsink buffer in nanoseconds.

Fixes: #656107
2011-10-12 08:49:02 +01:00
Sjoerd Simons
52a7d015cd shm: Add ability to add uint64 tags on buffers 2011-10-12 08:49:02 +01:00
Wim Taymans
c6ec4439f2 dvb: port to 0.11 2011-10-10 11:41:33 +02:00
Wim Taymans
ad06ac2b4b Merge branch 'master' into 0.11
Conflicts:
	ext/resindvd/rsnwrappedbuffer.c
2011-08-25 12:49:26 +02:00
David Schleef
1c73e77e32 decklink: fix compilation on Linux 2011-08-21 19:06:54 -07:00
David Schleef
e246d92bd5 decklink: Add subdevice property 2011-08-21 19:06:54 -07:00
Joshua M. Doe
cfd68a8e7a decklink: add support for Windows
Builds with MSVC, not tested in MinGW or anything else. Added
COM handling code, borrowed from dshowvideosink. Moved Linux
specific files to ./linux and added Windows specific files to
./win (generated from IDL files in VS9). Added macros to handle
BSTR and defined bool as BOOL.  Fixes #655362.

Signed-off-by: David Schleef <ds@schleef.org>
2011-08-21 19:06:05 -07:00
Joshua M. Doe
8f08c610ec decklink: improve frame handling
Send NEWSEGMENT on start. Send warning instead of error on
dropped frames.

Signed-off-by: David Schleef <ds@schleef.org>
2011-08-21 19:05:00 -07:00
Joshua M. Doe
a18180898f decklink: fix debugging in capture.cpp by making category extern
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-21 19:02:51 -07:00
Joshua M. Doe
c830cf3e66 decklink: use mutexes from glib instead of pthread
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-21 18:59:49 -07:00
Wim Taymans
52d48bb142 Merge branch 'master' into 0.11 2011-08-17 19:01:39 +02:00
Alessandro Decina
b6747292e0 qtkitvideosrc: get the framerate from caps
...and configure QTKit accordingly. Hardcoding to 30fps was pretty -bad.
2011-08-15 02:10:26 +02:00
Edward Hervey
8132a5d46e decklink: Add gstdecklink.h to list of headers 2011-08-04 11:29:58 +02:00
Wim Taymans
2ba07782cd Merge branch 'master' into 0.11 2011-08-04 09:40:46 +02:00
Wim Taymans
01b9b5002f Merge branch 'master' into 0.11
Conflicts:
	common
	configure.ac
	gst/colorspace/colorspace.c
	gst/colorspace/colorspace.h
	gst/colorspace/gstcolorspace.c
2011-08-04 09:36:07 +02:00
David Schleef
2b5e8db968 decklink: Add audio-input property 2011-08-03 13:39:33 -07:00
Tim-Philipp Müller
1972c26bde vdpau: fix some variable-set-but-unused compiler warnings 2011-07-14 23:45:52 +01:00
Olivier Crête
d369f620de dvb: Fix set-but-unused warnings 2011-07-12 18:15:14 -04:00
David Schleef
5056c34761 decklink: HD modes are square pixels 2011-07-07 11:29:37 -07:00
David Schleef
ab1e013bb8 decklink: properly set up analog input 2011-07-04 16:49:00 -07:00
David Schleef
ae49fa1f78 decklink: Add more modes 2011-07-04 16:48:59 -07:00
Raimo Järvi
59aaf71b0b d3dvideosink: Fix configure check and makefiles
Fixes bug #652035.
2011-06-25 18:08:45 -07:00
David Schleef
571e95cf10 decklink: update DeckLink API wrappers 2011-06-20 12:49:16 -07:00
David Schleef
16a49a3617 decklink: Add connection type 2011-06-20 12:49:16 -07:00
Rafael Diniz
bb4844b29e decklinksink: Add audio support
Signed-off-by: David Schleef <ds@schleef.org>
2011-06-20 12:49:16 -07:00
David Schleef
1faf410ca3 decklink: Add various features
Better mode support, input source property, audio support.
2011-06-20 12:49:16 -07:00
David Schleef
69c930565f decklink: remove unused code 2011-06-20 12:49:16 -07:00
David Schleef
1e1c16150b decklink: reindent 2011-06-20 12:49:16 -07:00
Olivier Crête
26f7a1ca66 shm: Improve documentation of internal shmpipe 2011-06-16 19:06:03 -04:00
Wim Taymans
a2b7a672b8 Merge branch 'master' into 0.11
Conflicts:
	android/aacparse.mk
	android/amrparse.mk
	android/h264parse.mk
	android/metadata.mk
	android/qtmux.mk
	android/sdpelem.mk
	configure.ac
	gst/qtmux/gstqtmux.c
	win32/common/config.h
2011-06-15 16:06:36 +02:00
Tim-Philipp Müller
a6c4f3ed4e wininetsrc: don't use G_CONST_RETURN
It's going to be deprecated really soon.
2011-06-13 11:12:36 +01:00
Levente Farkas
be60b7d0de directdrawsink: lower rank to secondary
Signed-off-by: David Schleef <ds@schleef.org>
2011-06-05 13:56:41 -07:00
Levente Farkas
be87d62fde d3dvideosink: compile fix
Signed-off-by: David Schleef <ds@schleef.org>
2011-06-05 13:41:46 -07:00
David Schleef
bd30c28315 directdrawsink: Handle pixel-aspect-ratio
Fixes: #651779.  From Raimo Järvi.
2011-06-04 19:01:20 -07:00
David Schleef
655e511a5c d3dvideosink: Add plugin
Fixes #651782.  Patch from various authors, by way of ossbuild.
2011-06-04 19:01:16 -07:00
David Schleef
76fad77149 vdpau: remove old glib compatibility code 2011-06-04 14:09:30 -07:00
Debarshi Ray
335293bf50 Remove unused but set variables
This is needed to satisfy the new -Wunused-but-set-variable added in
GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html
2011-06-04 20:26:02 +01:00
Martin Storsjo
d536b73e25 qtwrapper: Decode audio until all input data is consumed
The special return value is returned from our buffer callback
when all input data has been consumed.
2011-05-30 08:46:11 +02:00
Martin Storsjo
02fc41fde5 qtwrapper: Replace the hackish 42 magic number with a define 2011-05-30 08:46:04 +02:00
Julien MOUTTE
efd840bbb7 dshowdecwrapper: Fix COM initialization
Fixes bug #625190.
2011-05-30 08:45:01 +02:00
Julien MOUTTE
378a8d94dc dshowdecwrapper: Fix element registration using data in the type instead of a global 2011-05-30 08:45:01 +02:00
Vincent Génieux
5616efb0f8 dvbsrc: Add timeout property and use GstPoll instead of poll
This allows to use much higher timeout values because GstPoll
is interruptible and keeps the number of wakeups during signal
loss lower.

Fixes bug #608171.
2011-05-23 16:49:55 +02:00
Stefan Kost
ed0bdc4910 camapplicationinfo: fix possible array overrun 2011-05-20 13:30:40 +03:00
Olivier Crête
58ee65fe20 shm: Make gcc 4.6 happy
Remove warnings due to initialized but never used warnings
2011-05-18 16:49:26 -04:00
Brian Gitonga Marete
1962b31046 decklink: Change counters to 64 bit unsigned integers. 2011-05-18 12:07:13 -07:00
Quentin Smith
38681bf1e0 avc: avcsrc is always enabled 2011-05-18 12:06:38 -07:00
Quentin Smith
708e96bef4 avc: Include 200 bus cycles in each buffer (about 300 TS packets) 2011-05-18 12:06:38 -07:00
Quentin Smith
66956d1c96 avc: Emit a single buffer per callback 2011-05-18 12:06:38 -07:00
Quentin Smith
edc93f89e1 avc: Track the number of enqueued and dequeued packets 2011-05-18 12:06:38 -07:00
Quentin Smith
5ce26c5cc7 avc: Dump timestamp information 2011-05-18 12:06:38 -07:00
Quentin Smith
004f2541e4 avc: Save AVC objects in the GstAVCSrc object
and stop them when the pipeline is stopped
2011-05-18 12:06:38 -07:00
Quentin Smith
7ac4cd7ef5 avc: Cycle and packet are unsigned 2011-05-18 12:06:38 -07:00
Quentin Smith
9f221469ec avc: avcsrc is a live source 2011-05-18 12:06:38 -07:00
Quentin Smith
8fe0393105 avc: Look in AVCVideoServices for headers 2011-05-18 12:06:38 -07:00
David Schleef
84fb75ce86 avc: Add AVC Video Services plugin for OS/X 2011-05-18 12:06:37 -07:00
Stefan Kost
79e3b5b4bb various: fix author tag in element details 2011-05-18 10:31:38 +03:00
Pino Toscano
01b7b10d0b shm: Don't use PATH_MAX
PATH_MAX is not defined on GNU Hurd and others. Also fix
format string.
2011-05-16 09:07:57 +02:00
Alessandro Decina
e21e8ddd4e applemedia: bump the rank of qtkitvideosrc to PRIMARY 2011-05-15 10:04:50 +02:00
Sebastian Dröge
6acbe18943 dvb: Use the user config dir instead of the cache dir for the channels configuration 2011-05-03 09:55:48 +02:00
Philippe Normand
27c761f43b dvb: moved dvb-channels.conf to $XDG_CACHE_HOME 2011-05-03 09:54:53 +02:00
Sebastian Dröge
2f74b2d90e decklink: Add to SUBDIRS 2011-04-28 10:04:18 +02:00
Sebastian Dröge
efc356a2b5 decklink: Remove unused/unneeded CFLAGS/LIBS and move $(LIBM) to LIBADD 2011-04-18 11:46:23 +02:00
Sebastian Dröge
224bb96a53 linsys: Link with libgstbase for basesink/basesrc
And remove empty and unused variables.
2011-04-18 11:46:05 +02:00
Sebastian Dröge
8ef0268b9c decklink: Dist all headers and put them in noinst_HEADERS 2011-04-17 19:16:45 +02:00
Sebastian Dröge
c220e120d7 linsys: Dist all headers and put them in noinst_HEADERS 2011-04-17 19:16:44 +02:00
Reynaldo H. Verdejo Pinochet
290d598748 Remove audioflingersink
Remove audioflingersink, it's in gst-android now.
2011-04-14 16:54:18 +01: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
Sebastian Dröge
e30f89fdef vdpau: Fix uninitialized variable compiler warning 2011-04-09 13:40:37 +02:00
Haakon Sporsheim
5c0922a82d dshowvideosink: update for latest GstXOverlay changes
From xwindow_id to window_handle.

https://bugzilla.gnome.org/show_bug.cgi?id=646955
2011-04-07 23:10:01 +01:00
Vincent Penquerc'h
a34108899e shmsink: ensure gst_poll_wait is called first on descriptors
We need to call gst_poll_wait before calling gst_poll_* status
functions on that new descriptor, so restart the loop, so _wait
will have been called on all elements of self->poll, whether
they have just been added or not. */
2011-04-07 10:03:45 +02:00
Olivier Crête
e30451a0c3 shm: Make default perm u+rw g+r for shm area 2011-03-31 16:21:11 -04:00
Carl-Anton Ingmarsson
b98924208b vdpausink: fix bug where we didn't setup vdpau on a user set window 2011-03-27 20:09:52 +02:00
Carl-Anton Ingmarsson
bd20e5d077 vdpau: fixup GstFlowReturn handling
Previously the different decoders would discard errounous GstFlowReturns coming
from downstream. Now we properly return these further upstream so that we
properly error out on eg. negotiation problems.
2011-03-27 19:51:31 +02:00
Carl-Anton Ingmarsson
5d61545a82 vdpau: small indentation fix 2011-03-27 19:48:20 +02:00
Carl-Anton Ingmarsson
d60c67b2c2 vdpaumpegdec: don't ignore return value of gst_base_video_decoder_finish_frame 2011-03-27 19:48:20 +02:00
Tim-Philipp Müller
f09f27a761 dshow: fix list iteration code 2011-03-27 17:42:56 +01:00
David Schleef
a5cb7912f1 decklink: Fix win32 build 2011-03-24 16:16:38 -07:00
David Schleef
8961f6a900 decklink: Add decklink plugin
Source and sink elements for BlackMagic DeckLink SDI cards.
2011-03-23 21:33:49 -07:00
David Schleef
e319b82842 linsys: Add plugin for Linear Systems SDI boards 2011-03-23 21:33:48 -07:00
Olivier Crête
81b0d87746 shm: Don't use "sun" as a variable name, breaks on Solaris
Seems like the Solaris compiler has -Dsun=1, so don't use
sun as a variable name

Patch by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>

https://bugzilla.gnome.org/show_bug.cgi?id=645053
2011-03-17 16:41:52 -04:00
Sjoerd Simons
1634a9f262 shmsink: Keep shmsink referenced while there are still buffers around 2011-03-16 18:53:27 +00:00
Sjoerd Simons
ca9d60702f shm: Allow ShmPipe to save a data pointer for applications 2011-03-16 18:53:19 +00:00
Sjoerd Simons
f6efb3e397 shm: Keep the ShmPipe alive as long as there are blocks left 2011-03-16 18:53:10 +00:00
Olivier Crête
a646afcf88 shmsrc: Only connect to sink in PLAYING in live mode 2011-03-16 18:52:57 +00:00
Olivier Crête
a2b6dfa37e shmsrc: Keep GstPoll for whole src lifetime 2011-03-16 18:52:57 +00:00
Wim Taymans
92c192852a vdpau: disable until someone ports it 2011-03-04 13:39:43 +01:00
Mark Nauwelaerts
f96dab44cf directdrawsink: avoid aspect-ratio borders overlying other windows
Fixes #632056.
2011-02-08 18:02:29 +01:00
Mark Nauwelaerts
edb15598ed directdrawsink: avoid rendering to invalid area
Based on patch by Havard Graff <havard.graff@tandberg.com>

Fixes #594280.
2011-02-08 18:02:26 +01:00
Tim-Philipp Müller
14375582fa dvbsrc: fix up enum nick names
https://bugzilla.gnome.org/show_bug.cgi?id=591651
2011-02-02 18:41:39 +00:00
Sebastian Dröge
36e037be67 vdpau: Initialize some variables to make gcc 4.6 happy 2011-01-27 17:32:49 +01:00
Rob Clark
f356c4f7de dvb: fix build errors on macosx
fixes the following compile errors:

cc1: warnings being treated as errors
camswclient.c: In function 'cam_sw_client_open':
camswclient.c:81: warning: implicit declaration of function 'strncpy'
camswclient.c:81: warning: incompatible implicit declaration of built-in function 'strncpy'
camswclient.c:89: warning: implicit declaration of function 'strerror'
camswclient.c:89: warning: nested extern declaration of 'strerror'
camswclient.c:89: warning: format '%s' expects type 'char *', but argument 9 has type 'int'
camswclient.c: In function 'send_ca_pmt':
camswclient.c:129: warning: implicit declaration of function 'memcpy'
camswclient.c:129: warning: incompatible implicit declaration of built-in
function 'memcpy'

gstdvbsrc.c:48:19: error: error.h: No such file or directory

Signed-off-by: Rob Clark <rob@ti.com>
2011-01-03 17:12:44 -06:00
Stefan Kost
e0e679dba9 README: fix the example pipeline
Fix the obvious outdated parts. Still this README looks outdated and should be
updated or removed.
2011-01-03 18:15:43 +02:00
Leo Singer
369f41913c applemedia: fix compiler warning: redundant declaration of 'parent_class'
GST_BOILERPLATE_FULL declares parent_class as well.

https://bugzilla.gnome.org/show_bug.cgi?id=637532
2010-12-18 21:32:36 +00:00
Francis Rammeloo
6792b0fb16 gdiscreencapsrc: fix memory leak
Structure members of ICONINFO struct filled by GetIconInfo() must
be deleted when no longer needed according to the API reference.

https://bugzilla.gnome.org/show_bug.cgi?id=611428
2010-12-13 23:17:56 +00:00
Ole André Vadla Ravnås
f3d8e3920d applemedia: only enqueue buffers in the VideoToolbox callbacks
These callbacks may fire from any thread, hence we should only enqueue
buffers and let the streaming thread take care of the rest as soon as
the blocking encode or decode operation has finished.
2010-12-10 04:07:05 +01:00
Ole André Vadla Ravnås
f7e5878c9e applemedia: bring back Leopard compatibility
At least as far as miovideosrc is concerned. Turns out that CoreVideo's
CVPixelBufferGetIOSurface is not present in Leopard's version of CoreVideo.
We solve this by making it possible for symbols to be marked as optional.
2010-12-10 04:06:59 +01:00
Christian Berentsen
6cf92cd25c winks: fix framerate fraction range mapping
Min and max may be slightly different but compress to the same fraction.
2010-12-10 04:06:53 +01:00
Alessandro Decina
0b6e0b7b13 qtkitvideosrc: reset the queue condition to NO_FRAMES in unlockStop.
Fixes a segfault in create: when going PLAYING -> PAUSED -> PLAYING.
2010-12-09 12:04:10 +01:00
Alessandro Decina
ec6c307334 qtkitvideosrc: run the mainRunLoop for a while if not running.
QTCaptureSession::addInput and QTCaptureSession::addOutput call
NSObject::performSelectorOnMainThread internally so they need the mainRunLoop to
run at least for a while to complete.
2010-12-09 11:55:57 +01:00
Benjamin Gaignard
b4ff7c94d7 sys: Add android audioflingersink 2010-12-03 17:46:27 +01:00
Alessandro Decina
536a30f2df applemedia: don't use the deprecated g_strcasecmp function.
Replace g_strcasecmp with g_ascii_strcasecmp.
2010-12-01 23:21:33 +01:00
Alessandro Decina
aae72680bd Fix compiler warnings with gcc 4.2.1 on OSX. 2010-12-01 23:20:36 +01:00
Olivier Crête
ecb7674640 shm: Don't pass the ShmPipe to the function closing the shm area 2010-11-24 19:12:10 -05:00
Olivier Crête
56c4a9b692 shm: Use the right counter when freeing buffers 2010-11-24 19:12:10 -05:00
Olivier Crête
a770d7a707 shmalloc: Manually decide to use GLib or not in the shmalloc
So make it easier for embedders to use it with or without Glib
2010-11-24 19:12:10 -05:00
Olivier Crête
01f1cc20d7 shm: Remove duplicated arguement 2010-11-24 19:12:10 -05:00
Olivier Crête
70b8d2ab93 shm: Fix socket leak on connect() error 2010-11-24 19:12:10 -05:00
Olivier Crête
225bc1dd0b shm: sp_client_recv returns negative on error, so make the retval signed 2010-11-24 19:12:10 -05:00
Olivier Crête
2aaf51af49 shm: Rename confusingly named variable 2010-11-24 19:12:10 -05:00
Olivier Crête
de9905db03 shm: Change permissions on old shm areas too
Change the permissions on old shm areas
2010-11-24 19:12:10 -05:00
Olivier Crête
0b99919c55 shm: Use the macro for the last error too 2010-11-24 19:12:10 -05:00
Olivier Crête
a533c30ab8 shm: Use "ablock" for all ShmAllocBlock variables
Use the ablock variable name for ShmAllocBlocks and block for
ShmBlock
2010-11-24 19:12:10 -05:00
Olivier Crête
b14a0d64ec shm: Add more comments 2010-11-24 19:12:10 -05:00
Youness Alaoui
768319b866 shm: stylist improvements 2010-11-24 19:12:10 -05:00
Youness Alaoui
a7b27bc2d0 shm: Explain some fields
Explain what some of the fields in the allocator actually mean
2010-11-24 19:12:10 -05:00
Andoni Morales Alastruey
7c43c2fa06 dvbbasebin: Add TDT to the initial pids filter for dvbsrc. Fixes #635200. 2010-11-19 18:04:12 +01:00
Ole André Vadla Ravnås
abdb30c567 celvideosrc: fix nasty deadlock
We cannot call any CMBufferQueue functions while holding the lock that
our callback also depends on. So now we make use of CMBufferQueue's
trigger API in order to get notified when the queue has data.
2010-11-12 00:44:42 +01:00
Ole André Vadla Ravnås
de76e9fdb6 cmapi: cover CMBufferQueue's trigger API 2010-11-12 00:44:42 +01:00
Ole André Vadla Ravnås
e4db4257d5 celvideosrc: unlock should also notify
Otherwise we depend on being woken up by the CoreMedia queue getting
its next buffer.
2010-11-12 00:44:42 +01:00
Ole André Vadla Ravnås
ebd2a6d6e9 applemedia: don't push synchronously from callback
The codec that called us might be holding locks to shared resources, so
we should never push downstream from within its buffer callback.

Note that a GstBufferList is not used here because we need to preserve
the buffer metadata held by our GstBuffer subclasses.
2010-11-11 00:22:31 +01:00
Ole André Vadla Ravnås
6b63954f63 vtenc: bump H.264 level from 1.3 to 3.0
This should be turned into a property.
2010-11-11 00:22:31 +01:00
Ole André Vadla Ravnås
6e909dc474 celvideosrc: add basic device selection support 2010-11-11 00:22:31 +01:00
Ole André Vadla Ravnås
2382f10b98 cvapi: add wrapper for IO surface access
To be used in a future video sink for zero-copy rendering.
2010-11-11 00:22:31 +01:00
Ole André Vadla Ravnås
420943972c celapi: add capture port type constants 2010-11-11 00:22:31 +01:00
Ole André Vadla Ravnås
d10e029f51 applemedia: biplanar is actually NV12, not I420
D'oh!
2010-11-08 23:58:25 +01:00
Ole André Vadla Ravnås
d865feca82 vtenc: remove keyframe enforcement workaround
Was only needed for old iOS where the H.264 encoder didn't support
kVTEncodeFrameOptionKey_ForceKeyFrame.
2010-11-08 23:58:25 +01:00
Ole André Vadla Ravnås
abba3a4126 cvapi: add a few extra bits of wrapping 2010-11-08 23:58:25 +01:00
Ole André Vadla Ravnås
b4654f537f applemedia: lock CVPixelBuffer read-only
As per Apple's docs, this may improve performance by avoiding redundant
invalidations of existing caches of the buffer contents.
2010-11-08 23:58:24 +01:00
Ole André Vadla Ravnås
6428d306ea celvideosrc: put planar first in template caps 2010-11-08 14:02:50 +01:00
Ole André Vadla Ravnås
c2672f71cd applemedia: improve vtenc/vtdec performance
Profiling of H.264 encode and decode revealed that conversions
between packed and planar were happening behind the scenes.

Hence we now choose I420 instead of YUY2.
2010-11-08 14:02:50 +01:00
Ole André Vadla Ravnås
1eb9190ad9 celvideosrc: measure fps when statistics is enabled
Also refactor timestamping slightly.
2010-11-05 16:52:58 +01:00
Ole André Vadla Ravnås
b7368c34fd celvideosrc: update to new Celestial and MediaToolbox APIs
This means celvideosrc is no longer compatible with iOS 3.x.
2010-11-05 15:32:37 +01:00
Ole André Vadla Ravnås
bf095e891f celvideosrc: fix debug category description 2010-11-05 15:32:37 +01:00
Ole André Vadla Ravnås
517f3a75c2 celapi: update to reflect new API on iOS 4.x
Also add remaining property constants for device and stream.
2010-11-05 15:32:37 +01:00
Ole André Vadla Ravnås
da5da05540 mtapi: update to reflect new API on iOS 4.x
Also add remaining property constants for device and stream.
2010-11-05 15:32:37 +01:00
Ole André Vadla Ravnås
8402211bac applemedia: make video source element details consistent
Inspired by the v4l2src element details.
2010-11-04 19:27:25 +01:00
Ole André Vadla Ravnås
445d7502c4 applemedia: consistently use gst_element_class_set_details_simple 2010-11-04 19:27:25 +01:00
Ole André Vadla Ravnås
5d71ad0d52 celvideosrc: update e-mail address 2010-11-04 19:27:25 +01:00
Ole André Vadla Ravnås
44df8abea8 applemedia: rename iphonecamerasrc to celvideosrc
This is in order to improve consistency with the other three sources.
2010-11-04 19:27:25 +01:00
Ole André Vadla Ravnås
8b22f855ec avfvideosrc: don't explicitly empty the buffer queue
We're holding the only reference to it so there's no need to explicitly
empty it right before letting go of our reference.
2010-11-04 17:58:59 +01:00
Ole André Vadla Ravnås
89e5b60130 avfvideosrc: make buffer offset start from zero 2010-11-04 17:52:05 +01:00
Ole André Vadla Ravnås
86e2539816 qtkitvideosrc: implement zero-copy by using buffer-factory
This means we'll wrap each CoreVideo buffer inside a GstBuffer instead of
making a copy.
2010-11-04 17:52:05 +01:00
Ole André Vadla Ravnås
835b2988b6 bufferfactory: add support for wrapping CVBuffer 2010-11-04 17:52:05 +01:00
Ole André Vadla Ravnås
3a44d4c1f9 qtkitvideosrc: fix up refcounting
Should keep a strong reference to the device, but we don't need to manage
the reference count of elements of an NSMutableArray as it takes care of
that for us.
2010-11-04 17:52:04 +01:00
Ole André Vadla Ravnås
b39609b405 qtkitvideosrc: simplify timestamping algorithm
Aligning timestamps on duration boundaries, skipping frames and so forth
are clearly things that fall outside the scope of a video source.
2010-11-04 17:52:04 +01:00
Ole André Vadla Ravnås
3ba76f825d applemedia: add new iOS video source based on AVFoundation
This element makes use of the documented AVFoundation framework made
available starting with iOS 4.0, and hence this means we can finally
capture video using a public API.
2010-11-04 14:32:10 +01:00
Ole André Vadla Ravnås
50c6e05924 applemedia: fix stream-format caps used for H.264
The stream-format's "avc-sample" member is now called just "avc".
2010-11-04 14:32:09 +01:00
Ole André Vadla Ravnås
b873920eaa applemedia: update e-mail addresses 2010-11-04 14:32:09 +01:00
Ole André Vadla Ravnås
c6b32b42de applemedia: switch vtapi to CFTypeRef style typedefs 2010-11-02 23:14:26 +01:00
Ole André Vadla Ravnås
2e349576eb applemedia: support public version of CoreMedia
Also rename the relevant API so we mirror the public API more closely, and
switch to CoreFoundation CFTypeRef style typedefs. We still support the old
private CoreMedia in order to not break OS X support.

This means that vtenc and vtdec are now compatible with iOS 4.x, and in
theory also future versions of OS X, where this API may turn public like
it has on iOS.
2010-11-02 23:14:26 +01:00
Ole André Vadla Ravnås
cc1c6ee9e3 winks: work around shutdown deadlock
GetOverlappedResult() might never return with some drivers. Time out
after 1000 ms. We cannot really fix this without either:
1) Controlling the streaming thread so we can do CancelIo() from that
   thread.
2) Switch to using IO completion ports.
2010-10-28 17:08:41 +02:00
Ole André Vadla Ravnås
a7a04fe601 winks: remove JPEG validation hack
This should clearly not be done in a video source.
2010-10-28 17:08:41 +02:00
Ole André Vadla Ravnås
35ed06fba2 winks: set PrioritySubClass to KSPRIORITY_NORMAL instead of 1
In order to match the reference implementation.
2010-10-28 17:08:41 +02:00
Ole André Vadla Ravnås
c1d16c4fee winks: retry when KsCreatePin fails with ERROR_NOT_READY
Turns out that the reference implementation does this, hence we need to
mirror this behaviour. This typically happens with hardware that takes
some time to initialize.
2010-10-28 17:08:41 +02:00
Ole André Vadla Ravnås
bb17394e76 winks: improve framerate fraction conversions
* For instance 7.5 fps should be represented as 15/2 instead of 7/1.
* Clamp AvgTimePerFrame and dwBitRate to account for rounding errors.
2010-10-28 17:08:41 +02:00
Ole André Vadla Ravnås
d282a1d380 winks: improve error-handling
Most important part here is special-casing "device busy" so the application
is able to provide better feedback when another application is using the
device.
2010-10-28 17:08:41 +02:00
Ole André Vadla Ravnås
cddfa50d92 winks: performance improvements
* Make the driver write directly into each GstBuffer to avoid memcpy().
* Don't memset() the buffer before reusing it.
* Recycle memory by keeping two spare buffers. Two because the sink
  downstream may keep a ref to the previous buffer.

Note that we align buffers on highest possible byte boundary (4096) so we
don't have to take into account what kind of alignment the driver requires.
2010-10-28 17:08:35 +02:00
Ole André Vadla Ravnås
f2b4d8990d winks: store priv pointer instead of looking it up 2010-10-28 17:08:35 +02:00
Ole André Vadla Ravnås
00bc7860ff winks: post error message on flow-unexpected 2010-10-28 17:08:35 +02:00
Andres Colubri
700f70e7a5 winks: add property probing support 2010-10-28 17:08:35 +02:00
Ole André Vadla Ravnås
2cf589b928 winks: sort devices that look like cameras first 2010-10-28 17:08:31 +02:00
Knut Inge Hvidsten
a54972f806 winks: provide guessed pixel-aspect-ratio in caps 2010-10-28 17:08:31 +02:00
Ole André Vadla Ravnås
a5beb0b8ff winks: only try to change state when actually open 2010-10-28 17:08:31 +02:00
Ole André Vadla Ravnås
1f6a6d2430 winks: ignore unsupported formats 2010-10-28 17:08:27 +02:00
Ole André Vadla Ravnås
b88b25ab9b winks: adjust a couple of logging severities
Should clearly not be considered warnings, as they're quite common.
2010-10-28 16:14:34 +02:00
Ole André Vadla Ravnås
0e4e351b83 applemedia: New plugin for Apple multimedia APIs
Provides the following elements:

qtkitvideosrc: OS X video source relying on the QTKit API. Comes with
hard-coded caps as the API does not provide any way of querying for
formats supported by the hardware. Hasn't been tested a lot, but seems
to work.

miovideosrc: OS X video source which uses the undocumented/private
CoreMediaIOServices API, which is also the one used by iChat.
Present on latest version of Leopard and all versions of Snow Leopard.
Has been tested extensively with built-in cameras and TANDBERG's
PrecisionHD USB camera.

vtenc, vtdec: Generic codec wrappers which make use of the undocumented/
private VideoToolbox API on OS X and iOS. List of codecs are currently
hard-coded to H.264 for vtenc, and H.264 + JPEG for vtdec. Can easily be
expanded by adding new entries to the lists, but haven't yet had time to
do that. Should probably also implement probing as available codecs depend
on the OS and its version, and there doesn't seem to be any way to
enumerate the available codecs.

vth264decbin, vth264encbin: Wrapper bins to make it easier to use
vtdec_h264/vtenc_h264 in live scenarios.

iphonecamerasrc: iPhone camera source relying on the undocumented/private
Celestial API. Tested on iOS 3.1 running on an iPhone 3GS. Stops working
after a few minutes, presumably because of a resource leak. Needs some
love.

Note that the iOS parts haven't yet been ported to iOS 4.x.
2010-10-28 15:08:08 +02:00
Tim-Philipp Müller
ad0781a7d4 directdrawsink: port GstXOverlay bits to new API
Don't use deprecated API.
2010-10-12 16:17:54 +01:00
Damien Lespiau
2833cc4375 dvbsrc: Fix example usage, bandwidth=8 not 8MHz
The bandwidth property is enum that takes the values 8, 7, 6, AUTO not
8MHz.
2010-10-10 14:54:45 +01:00
Olivier Crête
b7143de618 shm: Add C++ protection
Add c++ protection in the relevant places
2010-10-08 17:01:29 -04:00
Sebastian Dröge
c5023baecf vdpau: Check return values of the bitreader functions 2010-10-03 15:55:22 +02:00
Edward Hervey
849d3ec371 vdpau: Use the new XOverlay API
Fixes #630254
2010-09-21 16:31:46 +02:00
Sebastian Dröge
51e083fe8d dshowdecwrapper: Don't use GST_FLOW_IS_FATAL()
And don't error out on UNEXPECTED
2010-09-21 12:29:06 +02:00
Carl-Anton Ingmarsson
b2ce3aab96 vdpauvideopostprocess: set new framerate on output caps instead of input caps
It's not allowed to change the caps provided by the setcaps function.

https://bugzilla.gnome.org/show_bug.cgi?id=628326
2010-09-06 12:25:48 +02:00
Carl-Anton Ingmarsson
709a65cddf vdpauh264dec: parse "pixel-aspect-ratio" from stream 2010-09-05 13:52:40 +02:00
Carl-Anton Ingmarsson
5c03466309 vdpau: remove non working unused code from GstBaseVideoDecoder 2010-09-05 13:52:40 +02:00
Carl-Anton Ingmarsson
f2fb66d376 vdpau: GstBaseVideoDecoder set default par to 1/1 2010-09-05 13:52:40 +02:00
Carl-Anton Ingmarsson
885845a678 vdpau: remove gst_base_video_decoder_get_current_frame
we now pass the current frame to GstBaseVideoDecoder::parse_data

also fixup some errors in vdpaumpeg4dec so that it now gives correct output
2010-09-05 13:52:40 +02:00
Carl-Anton Ingmarsson
08e6a65f08 vdpau: rework GstBaseVideoDecoder timestamping
timestamps are now chosen in the following order:
	upstream -> parsed by decoder -> calculated from timestamp offset

we also check the timestamps supplied from upstream/decoder to see if they
atleast is increasing.
2010-09-05 13:52:40 +02:00
Carl-Anton Ingmarsson
624c50bac6 vdpau: fix invalid unref 2010-09-05 13:52:40 +02:00
Carl-Anton Ingmarsson
629b6ff099 vdpaumpeg4dec: fix typo in default_non_intra_quant_matrix 2010-08-09 00:36:01 +02:00
Carl-Anton Ingmarsson
8612a936ec vdpau: add mpeg4 part2 decoder 2010-08-09 00:36:01 +02:00
Tim-Philipp Müller
e2571b9f46 dvbsrc: align actual default values for properties with defaults in param spec
https://bugzilla.gnome.org/show_bug.cgi?id=621404
2010-08-06 11:28:11 +01:00
Carl-Anton Ingmarsson
b6f22c519d vdpau: fix destruction of GstVdpDevice when it failed to open
only close display in finalize and check if vdp_decoder_destroy is available
before we use it
2010-08-06 12:14:30 +02:00
Carl-Anton Ingmarsson
8996b80d62 vdpausink: use separate mutex for device locking
we can't use GST_OBJECT_LOCK since that cause problems when we try to post
errors, due to gst_element_post_message also taking the GST_OBJECT_LOCK
2010-08-06 12:14:30 +02:00
Andoni Morales Alastruey
c2c32fe773 dshowvideosink: close our own window when changing the window id
If we created the window, it needs to be closed after setting a new
window id.

https://bugzilla.gnome.org/show_bug.cgi?id=574290
2010-08-06 10:21:48 +01:00
Raimo Jarvi
7ab007bafe dshowvideosink: allow changing window ID whilst in PLAYING state
https://bugzilla.gnome.org/show_bug.cgi?id=574290
2010-08-06 10:20:19 +01:00
Carl-Anton Ingmarsson
8f47c060d7 vdpau: set back plugin ranks to GST_RANK_NONE
the previous change was not meant to slip in
2010-08-02 18:33:46 +02:00
Carl-Anton Ingmarsson
008a049b20 vdpau: slightly fix GstBaseVideoDecoder timestamping
clear timestamps on flush and properly calculate the frame's end offset
2010-08-02 18:25:43 +02:00
Carl-Anton Ingmarsson
a07cee756a vdpau: init debug category in gst_vdp_video_buffer_get_type 2010-08-02 18:25:43 +02:00
Carl-Anton Ingmarsson
b37869c315 vdpau: add error reporting to device creation 2010-07-30 22:27:49 +02:00
Carl-Anton Ingmarsson
57e05fdc76 vdpau: fix small typo in GstBaseVideoDecoder 2010-07-30 16:54:40 +02:00