Commit graph

2658 commits

Author SHA1 Message Date
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