Commit graph

1508 commits

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