Sebastian Dröge
b9238195dd
omx: Only include OMX_VideoExt.h conditionally
...
It does not exist on the RPi for example.
2014-06-24 14:52:43 +02:00
Sebastian Dröge
af38fe7dce
omxbufferpool: Fix format string compiler warning
2014-06-24 13:02:13 +02:00
Michal Lazo
326e15ca85
omxbufferpool: Initialize debug category
2014-06-24 13:01:48 +02:00
Sebastian Dröge
03c54e7c0f
omxbufferpool: Properly convert OMX alignment to GStreamer alignment
...
GStreamer uses a bitmask for the alignment while OMX uses the
alignment itself. Let's convert.
https://bugzilla.gnome.org/show_bug.cgi?id=710564
2014-06-24 12:42:22 +02:00
Sebastian Dröge
6617d6f577
omxh264enc: Don't let baseclass finish frames for SPS/PPS buffers
...
Otherwise we a) send them twice, and b) finish a frame for something
that does not even include a frame.
https://bugzilla.gnome.org/show_bug.cgi?id=726669
2014-06-24 11:11:28 +02:00
Sebastian Dröge
b496a6d6f2
omxvideo: Include the separate headers too for compatibility with 1.0.x
2014-06-24 10:22:37 +02:00
Zhao, Halley
38a07c5386
omxvp8dec: use VP8 definition from OMX_VideoExt.h
...
https://bugzilla.gnome.org/show_bug.cgi?id=726957
2014-06-24 10:21:07 +02:00
Aurélien Zanelli
58aa603b36
omxvideodec: fix a query leak
...
Also add a debug message if query fails.
https://bugzilla.gnome.org/show_bug.cgi?id=731898
2014-06-20 11:54:25 +02:00
Aurélien Zanelli
ad969ffda3
omxvideodec: release frames with old PTS to avoid memory issue
...
Interlaced stream could make the decoder use two input frames to produce
one output frame causing the gstvideodecoder frame list to grow.
Assuming the video decoder output frame in display order rather than in
decoding order, this commit add a way to release frames with PTS less
than current output frame.
https://bugzilla.gnome.org/show_bug.cgi?id=730995
2014-06-04 16:36:02 +02:00
Kazunori Kobayashi
4c488d425d
omx: Fix a missing g_free() in error path
...
This fixes a memory leak with g_strdup() when an error occurs.
https://bugzilla.gnome.org/show_bug.cgi?id=731141
2014-06-03 09:23:41 +02:00
Aurélien Zanelli
3ed713db0d
omxvideodec: add missing stream unlock in error path
2014-06-02 19:28:51 +02:00
Sebastian Dröge
190adce125
omx: Don't handle disabling/enabling ports exactly like flushing
...
Otherwise we might abort a flush operation in another thread when
enabling/disabling ports, leading to deadlocks sometimes.
https://bugzilla.gnome.org/show_bug.cgi?id=730989
2014-05-31 15:12:05 +02:00
Sebastian Dröge
bf7e6109d9
omxvideodec: Don't leak buffer pool config in error cases
...
CID 1216158
2014-05-26 11:03:03 +02:00
Sebastian Dröge
34577a965d
omxvideoenc: Don't forget to unref codec state
...
CID 1214603
2014-05-19 09:10:07 +02:00
Sebastian Dröge
e542177c65
omxvideodec: Make output buffer pointer always initialized
...
CID 1214605
2014-05-19 09:08:33 +02:00
Sebastian Dröge
c2e5dca5f0
omxvideodec: Check return value of gst_buffer_map()
...
CID 1214599
2014-05-19 09:06:42 +02:00
Sebastian Dröge
429b0e1e27
omxvideodec: Check return value of gst_omx_port_set_enabled() for errors
...
CID 1214589
2014-05-19 09:04:09 +02:00
Sebastian Dröge
e08c0dc88a
omxvideodec: Check return values of buffer pool config parsing functions
...
CID 1214588
2014-05-19 09:01:46 +02:00
Sebastian Dröge
59ac1dd03b
omx: Remove dead code, buf can never be NULL here as we just check for that the line above
...
CID 1214596
2014-05-19 08:48:50 +02:00
Sebastian Dröge
800ef8ab14
omx: Fix comparisons in gst_omx_state_to_string() case to actually make sense
...
CID 1214593
2014-05-19 08:47:36 +02:00
Sebastian Dröge
7b558e37bc
omx: Make sure to compare the error codes as unsigned integers so that comparisons >2**31 actually work
...
CID 1214592
2014-05-19 08:47:33 +02:00
Sebastian Dröge
93528dc43b
omx: Fix comparisons in gst_omx_command_to_string() default cause to actually work
...
CID 1214591
2014-05-19 08:44:55 +02:00
Sebastian Dröge
2c3797acfe
omxaudioenc: Implement hack for not disabling the output port after set_format until the output format is known
...
Needed on some OMX implementations, e.g. the one from Atmel. It does
not send the settings-changed event on the output port if it is
disabled.
2014-05-15 13:22:56 +02:00
Sebastian Dröge
40869afea7
omxvideoenc: Implement hack for not disabling the output port after set_format until the output format is known
...
Needed on some OMX implementations, e.g. the one from Atmel. It does
not send the settings-changed event on the output port if it is
disabled.
2014-05-15 13:21:07 +02:00
Sebastian Dröge
4e20116bc6
omx: Add a hack for not disabling the output port after set_format until the output format is known
...
Needed on some OMX implementations, e.g. the one from Atmel. It does
not send the settings-changed event on the output port if it is
disabled.
2014-05-15 10:59:35 +02:00
Josep Torra
e08540d969
omxaudiosink: implement _delay only in the RaspberryPI
...
Make code implementation conditionally built for RaspberryPI because
OMX_IndexConfigAudioRenderingLatency seems to be a Broadcom extension.
On other targets the query position might not be accurate without
implementing _delay appropriatelly.
2014-05-12 12:33:32 +02:00
Sebastian Dröge
527af797d2
omxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND
2014-05-12 08:56:15 +02:00
Sebastian Dröge
14af0f266e
omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing
2014-05-10 22:48:23 +02:00
Sebastian Dröge
cfbf5bf16d
omxvideodec: Set nTickCount based on the buffer's duration instead of something wrong
2014-05-10 22:47:56 +02:00
Sebastian Dröge
bc2990169a
omxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong calculation
2014-05-10 22:47:21 +02:00
Sebastian Dröge
cef3fb5fc3
omxaudiosink: Fix format string compiler warnings
2014-05-10 22:46:51 +02:00
Josep Torra
b3eb4d897d
omxaudiosink: Implements OpenMAX based audio sinks
...
Provides omxanalogaudiosink and omxhdmiaudiosink elements on
the Raspberry PI.
- omxanalogaudiosink is capable to render raw mono or stereo audio
through the jack output.
- omxhdmiaudiosink is capable to render raw audio up to 8 channels
and transmit ac3/dts(IEC 61937) through the HDMI output.
- sinks provide a clock derived from rendered samples
- sinks support the GstStreamVolume interface by implementing
the volume and mute properties.
https://bugzilla.gnome.org/show_bug.cgi?id=728962
2014-05-09 13:15:18 +02:00
Julien Isorce
bdec8c0595
omxvideodec: can negotiate caps with memory:EGLImage feature when using EGLImage allocator
...
Previously when using gst EGLImage allocator the caps was
video/x-raw, format=RGBA instead of
video/x-raw(memory:EGLImage), format=RGBA
Kepp previous behavior in case negotiation fails with caps feature.
It means it will still have a chance to use EGLImage even if the
feature is not in the caps.
https://bugzilla.gnome.org/show_bug.cgi?id=729196
2014-05-02 18:00:48 +01:00
Aurélien Zanelli
420b0b62d3
omxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define
...
https://bugzilla.gnome.org/show_bug.cgi?id=728774
2014-04-23 10:34:52 +02:00
Aurélien Zanelli
da4cf3da1f
omxvideodec: don't unref caps before logging field from it
...
https://bugzilla.gnome.org/show_bug.cgi?id=728322
2014-04-17 09:33:47 +02:00
Julien Isorce
499fb23e9c
omxvideodec: use new libgstgl API since libgstegl has been removed
...
There is no point to retrieve a ref/unref type
instead of an EGLDisplay directly. It's like for EGLImage.
https://bugzilla.gnome.org/show_bug.cgi?id=703343
2014-04-15 18:32:12 +01:00
Julien Isorce
d4bb7cb4c7
configure.ac: check for libgstgl since libgstegl has been removed
...
https://bugzilla.gnome.org/show_bug.cgi?id=703343
2014-04-15 18:32:12 +01:00
Aurélien Zanelli
1b6879921c
omxvideodec: add support of more color format
...
Add support for ABGR, ARGB, RGB16, BGR16, YUY2, UYVY, YVYU, GRAY8 and
NV16 color format.
2014-04-15 15:09:24 +01:00
Aurélien Zanelli
f5f876f681
omxvideodec: simplify color format conversion in fill_buffer function
2014-04-15 15:09:24 +01:00
Aurélien Zanelli
6834d2e0b3
omxbufferpool: make video stride and offset calculation easier
...
It will be easier to support more color format.
2014-04-15 15:09:23 +01:00
Aurélien Zanelli
c115da9fd5
omx: add an helper to convert OMX color format to GStreamer color format
2014-04-15 15:09:23 +01:00
Josep Torra
718fd1bb93
omxvideodec: Implement pipeline draining to support adaptive scenarios
...
When draining due a format change also drain
the pipeline to reclaim back all buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=726107
2014-03-28 11:40:20 +00:00
Josep Torra
73d83f311c
omxvideodec: fixes race condition during seeks
...
Acording 6.1.3 Seek Event Sequence in the OpenMAX IL 1.1.2 spec
document in order to flush the component it needs to be in
paused state.
https://bugzilla.gnome.org/show_bug.cgi?id=726038
2014-03-25 16:07:25 +00:00
Julien Isorce
39ca9f980e
omxvideodec: use flush because reset is deprecated
...
https://bugzilla.gnome.org/show_bug.cgi?id=726038
2014-03-25 16:07:15 +00:00
Julien Isorce
777411c286
omxvideodec: populate the most downstream output port on reset
...
Make seeking work when using egl_render component
https://bugzilla.gnome.org/show_bug.cgi?id=726038
2014-03-25 16:06:51 +00:00
Josep Torra
100e9f998d
omxbufferpool: return buffers to the pool instead of freeing them
...
We have to return the buffers back to the pool in when stopping to
not mess with the GstBufferPool accounting.
The OMX buffers will be freed when those won't be in charge of the
pool in the chained up call to 'stop'.
Fixes segfaults on finalize and pool not being properly deactivated.
https://bugzilla.gnome.org/show_bug.cgi?id=726337
2014-03-24 18:20:51 +00:00
Christian König
651e67e32d
omxvideodec: add missing unlock in the error path
...
Signed-off-by: Christian König <christian.koenig@amd.com>
https://bugzilla.gnome.org/show_bug.cgi?id=726958
2014-03-24 11:11:39 +00:00
Michal Lazo
c832b03b3b
fix filemode
2014-03-19 08:53:02 +01:00
Julien Isorce
e8ca74c6f8
omxbufferpool: fix memory leak if used on output port
...
When using GstOMXBufferPool on an output port, it internally uses
a GPtrArray to manage the GstBuffers instead of the default queue
from the GstBufferPool base class.
In this case GstBufferPool::default_free_buffer is not called when
the pool is stopped. Because the queue is empty. So explicitely
call gst_omx_buffer_pool_free_buffer on each buffer contained in
the GPtrArray.
https://bugzilla.gnome.org/show_bug.cgi?id=726337
2014-03-17 18:02:51 +00:00
Sebastian Dröge
922d036ae7
omxh264enc: Fix compiler warnings
2014-03-16 17:32:05 +01:00