mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-30 04:00:37 +00:00
7312 lines
254 KiB
Text
7312 lines
254 KiB
Text
=== release 1.16.0 ===
|
||
|
||
2019-04-19 00:38:44 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.16.0
|
||
|
||
2019-04-16 12:23:10 -0700 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomx.c:
|
||
Fixes build with omx >= 1.2.0
|
||
gstomx.c:1405:10: error: ‘OMX_IndexParamCustomContentPipe’ undeclared (first use in this function)
|
||
case OMX_IndexParamCustomContentPipe
|
||
Some enums have been deprecated in 1.2.0
|
||
https://gitlab.freedesktop.org/gstreamer/gst-omx/issues/27
|
||
|
||
2018-05-18 10:55:21 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* examples/egl/Makefile.am:
|
||
* examples/egl/meson.build:
|
||
testegl: properly detect and use rpi specific libs
|
||
Use pkg-config to detect and configure rpi specific libs used in testegl
|
||
rather than hardcoding their flags.
|
||
|
||
2018-05-18 10:53:34 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* examples/egl/testegl.c:
|
||
testelg: include eglext.h
|
||
Neded for the declaration of eglSaneChooseConfigBRCM().
|
||
|
||
2018-05-18 10:38:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* examples/egl/testegl.c:
|
||
testegl: move up pi specific macros
|
||
We need to define __VCCOREVER__ and disable redundant-decls before
|
||
including the egl.h from the pi.
|
||
|
||
=== release 1.15.90 ===
|
||
|
||
2019-04-11 00:40:52 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.15.90
|
||
|
||
2019-04-10 00:19:55 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: add -Wundef as additional warning flag
|
||
|
||
2019-04-10 00:16:27 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omx: fix autotools build for generic target
|
||
gstomxvideoenc.c:2874:7: error: "USE_OMX_TARGET_ZYNQ_USCALE_PLUS" is not defined, evaluates to 0 [-Werror=undef]
|
||
#elif USE_OMX_TARGET_ZYNQ_USCALE_PLUS
|
||
Works on meson because it doesn't use -Wundef
|
||
|
||
2018-11-12 12:51:28 +0200 Jordan Petridis <jordan@centricular.com>
|
||
|
||
* .gitlab-ci.yml:
|
||
Add Gitlab CI configuration
|
||
This commit adds a .gitlab-ci.yml file, which uses a feature
|
||
to fetch the config from a centralized repository. The intent is
|
||
to have all the gstreamer modules use the same configuration.
|
||
The configuration is currently hosted at the gst-ci repository
|
||
under the gitlab/ci_template.yml path.
|
||
Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29
|
||
|
||
2019-03-25 16:30:11 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: disable OMX_API_TRACE code if gst debug is disabled
|
||
No need to create debug structs which won't be used as DEBUG macros are
|
||
no-op.
|
||
|
||
2018-10-11 10:55:04 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: log Get/SetParameter/Config calls
|
||
Extend OMX_API_TRACE by logging component configuration calls.
|
||
|
||
2019-02-06 14:57:05 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: don't use CAT_PERFORMANCE if pool will copy
|
||
This was the single place where this category was used in gst-omx so
|
||
most users, including me, are generally not turning it and were missing this
|
||
important information from logs.
|
||
The copying code uses gst_video_frame_copy() which is already logging
|
||
with CAT_PERFORMANCE so we can still have this information when using
|
||
only this debug category.
|
||
|
||
2019-02-06 14:50:44 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: add debug if proposed pool can't provide enough buffers
|
||
We were silently ignoring the pool which was pretty confusing when
|
||
debugging.
|
||
|
||
2019-03-26 12:17:26 +0000 Charlie Turner <cturner@igalia.com>
|
||
|
||
* omx/gstomxaacdec.c:
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxamrdec.c:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh265dec.c:
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxmjpegdec.c:
|
||
* omx/gstomxmp3dec.c:
|
||
* omx/gstomxmp3enc.c:
|
||
* omx/gstomxmpeg2videodec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxtheoradec.c:
|
||
* omx/gstomxvp8dec.c:
|
||
* omx/gstomxwmvdec.c:
|
||
omx: Add hardware classifiers to encoders/decoders
|
||
|
||
2019-03-25 16:01:48 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* meson.build:
|
||
meson: sync warnings flags with -good
|
||
Add more warnings flags and disabled unused variable warnings if gst
|
||
debug system is disabled.
|
||
Copied from gst-plugins-good/meson.build
|
||
|
||
2019-03-04 09:16:40 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* meson.build:
|
||
Back to development
|
||
|
||
=== release 1.15.2 ===
|
||
|
||
2019-02-26 12:02:23 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.15.2
|
||
|
||
2019-02-14 23:57:09 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
* meson_options.txt:
|
||
meson: add options to disable examples, tests and tools and bump meson requirement
|
||
|
||
2019-01-04 10:11:38 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideo.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideo: use GST_VIDEO_CAPS_MAKE() for template caps
|
||
Simplify the code and so we advertise the formats actually supported by
|
||
gst-omx.
|
||
|
||
2018-06-04 12:20:03 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: validate cpb-size and initial-delay
|
||
cpb-size cannot be smaller than initial-delay.
|
||
|
||
2018-10-02 10:47:06 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Remove duplicated QoS code
|
||
The 'finish' function do the exact same check / drop, there is no
|
||
need to duplicate this here.
|
||
|
||
2018-09-20 14:44:09 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Remove dead code
|
||
The omxvideodec base class have a totally unused prepare_frame() vritual
|
||
function, remove it.
|
||
|
||
2018-07-11 17:38:22 -0700 Varunkumar Allagadapa <varunkum@xilinx.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: add adaptive gop-mode option
|
||
Added adaptive gop-mode option to ZYNQ_USCALE_PLUS encoder properties
|
||
|
||
2018-02-13 18:25:51 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add dynamic framerate support
|
||
Instead of going through a full reset, try and change the framerate
|
||
config on the encoder when only the framerate have change.
|
||
|
||
=== release 1.15.1 ===
|
||
|
||
2019-01-17 02:38:28 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.15.1
|
||
|
||
2018-02-20 10:57:42 -0800 Varunkumar Allagadapa <varunkum@xilinx.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add dynamic IDR insertion support on zynq
|
||
As the pi, the zynq has its own API to request keyframe.
|
||
|
||
2019-01-07 13:29:37 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: fix race when releasing input buffers
|
||
If buffers were released from the pool while
|
||
gst_omx_video_enc_handle_frame() was waiting for new buffers,
|
||
gst_omx_port_acquire_buffer() was never awaken as the buffers weren't
|
||
released through OMX's messaging system.
|
||
GQueue isn't thread safe so also protect it with the lock mutex.
|
||
|
||
2018-11-15 11:17:59 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxbufferpool.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxbufferpool: fix early input buffer release
|
||
We used to track the 'allocating' status on the pool. It is used while
|
||
allocating so output buffers aren't passed right away to OMX and input
|
||
ones are not re-added to the pending queue.
|
||
This was causing a bug when exporting buffers to v4l2src. On start
|
||
v4l2src acquires a buffer, read its stride and release it right away.
|
||
As no buffer was received by the encoder element at this point, 'allocating'
|
||
was still on TRUE and so the the buffer wasn't put back to the pending
|
||
queue and, as result, no longer available to the pool.
|
||
Fix this by checking the active status of the pool instead of manually
|
||
tracking it down. The pool is considered as active at the very end of
|
||
the activation process so we're good when buffers are released during
|
||
the activation.
|
||
|
||
2018-12-05 17:24:48 -0300 Thibault Saunier <tsaunier@igalia.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ed78bee to 59cb678
|
||
|
||
2018-11-23 12:57:15 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fix OMX_EventBufferFlag OMX_API_TRACE struct
|
||
The GType was missing from the second field of the struct.
|
||
|
||
2018-11-05 05:43:43 +0000 Matthew Waters <matthew@centricular.com>
|
||
|
||
* .gitmodules:
|
||
* gst-omx.doap:
|
||
Update git locations to gitlab
|
||
|
||
2018-09-18 16:50:11 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: rename OMX_PERFORMANCE debug cat to OMX_API_TRACE
|
||
This debug category can now be used to track more OMX calls and events
|
||
so best to rename it to something more generic.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=797171
|
||
|
||
2018-08-21 17:35:04 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: log OMX commands with OMX_PERFORMANCE debug category
|
||
It has been useful to have a clear raw and structured view of the gst
|
||
<-> OMX exchanges when debugging.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=797171
|
||
|
||
2018-08-21 16:50:38 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: factor out gst_omx_component_send_command()
|
||
No semantic change. I'm going to add extra debug in this function.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=797171
|
||
|
||
2018-08-21 15:14:09 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: log OMX events with OMX_PERFORMANCE debug category
|
||
It has been useful to have a clear raw and structured view of the gst
|
||
<-> OMX exchanges when debugging.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=797171
|
||
|
||
2018-08-22 12:51:30 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: rename log_omx_performance() to log_omx_performance_buffer()
|
||
I'm about to log more things under this category
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=797171
|
||
|
||
2018-09-07 22:57:30 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Remove spurious locking
|
||
The method we call in the context of pushing a buffer are all thread
|
||
safe. Holding a lock would prevent input buffers from being queued while
|
||
pushing.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=715192
|
||
|
||
2018-09-07 23:09:29 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Remove unneeded size check
|
||
We only enter this branch if nFilledLen > 0, there is not need
|
||
to check again.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=715192
|
||
|
||
2018-09-07 22:55:41 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Remove spurious unlock in error case
|
||
This was forgotton in previous patch. We no long hold the lock when goto
|
||
invalid_buffer is called.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=715192
|
||
|
||
2018-08-31 17:28:03 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: don't hold the stream lock when trying to push a frame
|
||
The base class methods will lock this properly when needed, there seems
|
||
to be no need to lock it explicitly.
|
||
This allows the patch in gstvideodec for unlocking the stream lock
|
||
when pushing buffers out to work.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=715192
|
||
|
||
2018-07-31 13:22:31 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: don't import OMX buffers from downstream
|
||
We already have code configuring the encoder stride and slice height
|
||
when receiving the first buffer from upstream.
|
||
We don't have an equivalent when the encoder is exporting its buffers to the
|
||
decoder.
|
||
There is no point adding it and making the code even more
|
||
complex as we wouldn't gain anything by exporting from the encoder to
|
||
the decoder. The dynamic buffer mode already ensures 0-copy between OMX
|
||
components.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-15 11:59:26 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: implement dmabuf export on input buffers
|
||
Propose pool upstream so input buffers can be allocated by the port and
|
||
exported as dmabuf.
|
||
The actual OMX buffers are allocated when the pool is activated, so we
|
||
don't end up doing useless allocations if the pool isn't used.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-08-13 15:10:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudiosink.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: allow gst_omx_port_acquire_buffer() to not wait for buffers
|
||
Will be needed to implement GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-07-31 15:04:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: don't import non-dmabuf when dec is in dmabuf mode
|
||
Fix 'omxh264dec ! videocrop' pipeline.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-08-02 11:29:12 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: factor out gst_omx_try_importing_buffer()
|
||
No semantic change, just make the code clearer and improve debug output.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-07-26 16:30:08 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix gst_video_info_from_caps() caps assertion
|
||
The "use buffers" code path uses gst_video_info_from_caps() which is
|
||
asserting if caps is NULL (because pool was rejected).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-07-26 16:22:50 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix pool caps reference stealing
|
||
gst_buffer_pool_config_get_params() doesn't ref the returning caps;
|
||
so gst_caps_replace() was unreffing the reference owned by the pool.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-07-25 09:57:20 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: prevent timeout when shutting down because of pending out buffers
|
||
The OMX transition state to Loaded won't be complete until all buffers
|
||
have been freed. There is no point waiting, and timeout, if we know that
|
||
output buffers haven't been freed yet.
|
||
The typical scenario is output buffers being still used downstream
|
||
and being freed later when released back to the pool.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-07-24 15:14:31 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: reference the OMX component
|
||
Now that the pool is responsible of freeing the OMX buffers, we need to
|
||
ensure that the OMX component stay alive while the pool is as we rely on
|
||
the component to free the buffers.
|
||
The GstOMXPort is owned by the component so no need to ref this one.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-07-24 15:06:01 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudiosink.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
turn GstOMXComponent to a GstMiniObject
|
||
Will use it for refcounting.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-28 12:20:45 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxvideodec.c:
|
||
omxbufferpool: deallocate OMX buffers when stopping
|
||
The pool is stopped when all the buffers have been released. Deallocate
|
||
when stopping so we are sure that the buffers aren't still used by
|
||
another element.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-24 16:28:21 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: call gst_omx_buffer_unmap() when handling BUFFER_DONE
|
||
When using a input buffer pool, the buffer may be released to the pool when
|
||
gst_omx_buffer_unmap() is called. We need to have buf->used unset at
|
||
this point as the pool may use it to check the status of the pool.
|
||
{Empty,Fill}BufferDone is called from OMX internal threads while
|
||
messages are handled from gst elements' thread. Best to do all this
|
||
when handling the message so we don't mess with OMX threads and keep
|
||
the original thread/logic split.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-25 14:44:16 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideo{enc,dec}: stop calling shutdown() in change_state
|
||
This is no longer needed since we implemented close() vfuncs as the
|
||
encoder/decoder base class already take care of calling close() (which
|
||
is calling shutdown()) in its own change_state implementation.
|
||
We also move the shut down of the component from PAUSED_TO_READY to READY_TO_NULL.
|
||
By doing so upstream will have already deactivated the pool from the
|
||
encoder and so won't be preventing the OMX state change as the buffers
|
||
will all be released.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-15 16:21:26 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxbufferpool.c:
|
||
omx: factor out gst_omx_buffer_get/set_omx_buf()
|
||
Move the qdata code to helper functions as I'm going to need them in
|
||
omxvideoenc to implement dmabuf export.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-15 11:01:13 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: factor out gst_omx_video_enc_set_to_idle()
|
||
No semantic change. We'll have to use this when the input pool is
|
||
activated so we can allocate buffers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-15 09:56:10 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: factor out gst_omx_video_enc_deallocate_in_buffers()
|
||
Will add extra code when adding input buffer pool.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-05-14 15:16:38 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: add pBuffer to OMX_PERFORMANCE logs
|
||
Can be useful to check the fd being passed when using dmabuf.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-03-21 12:43:33 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: factor out gst_omx_port_set_dmabuf()
|
||
No semantic change. I also made the debug message a bit clearer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796918
|
||
|
||
2018-08-22 15:56:18 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: wait for flush complete and buffers being released when flushing
|
||
When flusing we should wait for OMX to send the flush command complete event
|
||
AND all ports being released.
|
||
We were stopping as soon as one of those condition was met.
|
||
Fix a race between FillThisBufferDone/EmptyBufferDone and the flush
|
||
EventCmdComplete messages. The OMX implementation is supposed to release
|
||
its buffers before posting the EventCmdComplete event but the ordering
|
||
isn't guaranteed as the FillThisBufferDone/EmptyBufferDone and
|
||
EventHandler callbacks can be called from different threads (cf 2.7
|
||
'Thread Safety' in the spec).
|
||
Only wait for buffers currently used by OMX as some buffers may not be
|
||
in the pending queue because they are held downstream.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789475
|
||
|
||
2018-08-22 15:52:23 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: factor out should_wait_until_flushed()
|
||
No semantic change. Makes the code easier to understand and I'm about to
|
||
change the waiting condition.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789475
|
||
|
||
2018-08-28 13:10:35 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: pause component when flushing
|
||
As stated in the spec ("6.1.3 Seek Event Sequence") we should pause
|
||
before flushing.
|
||
We were pausing the decoder but not the encoder so I just aligned the
|
||
two code paths.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=797038
|
||
|
||
2018-07-12 12:41:18 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: fix vertical padding in NV16 formats
|
||
My previous patch to calculate the vertical padding was always halfing
|
||
the height of the chroma plane which is incorrect for NV16 formats.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796749
|
||
|
||
2018-07-05 15:13:47 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: include vertical padding in nFilledLen when copying
|
||
According to the OMX spec (3.1.3.7.1) nFilledLen is meant to include any
|
||
padding. We use to include the horizontal one (stride) but not the
|
||
vertical one if nSliceHeight is bigger than the actual height.
|
||
The calculated nFilledLen was wrong as it didn't include the padding
|
||
between planes.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796749
|
||
|
||
2018-04-26 12:30:47 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: implement decide_allocation
|
||
Increase the number of output buffers by the number of buffers requested
|
||
downstream.
|
||
Prevent buffers starvation if downstream is going to use dynamic buffer
|
||
mode on its input.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=795746
|
||
|
||
2018-04-26 12:29:16 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: implement propose_allocation
|
||
Tell upstream about how many buffer we plan to use so they can adjust
|
||
their own number of buffers accordingly if needed.
|
||
Same logic as the existing gst_omx_video_enc_propose_allocation().
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=795746
|
||
|
||
2018-05-17 09:54:11 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: always signal drain cond when stopping streaming loop
|
||
Similar change as the one I just did in omxvideodec.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796207
|
||
|
||
2018-05-16 17:06:29 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: always signal drain cond when stopping streaming loop
|
||
If for some reason something goes wrong and we stop the streaming loop
|
||
we may end up with other threads still waiting on the drain cond.
|
||
No more buffers will be produced by the component so they were waiting
|
||
forever.
|
||
Fix this by always signalling this cond when stopping the streaming
|
||
loop.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796207
|
||
|
||
2018-05-16 17:02:01 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideoenc: factor out gst_omx_video_enc_pause_loop()
|
||
No semantic change. I'm going to use it in more failure cases.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796207
|
||
|
||
2018-05-17 14:24:52 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
zynqultrascaleplus: enable 'ensure-buffer-count-actual' hack
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=791211
|
||
|
||
2018-04-27 16:26:36 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideodec/enc: add hack updating nBufferCountActual before allocating
|
||
The OMX specs states that the nBufferCountActual of a port has to default
|
||
to its nBufferCountMin. If we don't change nBufferCountActual we purely rely
|
||
on this default. But in some cases, OMX may change nBufferCountMin before we
|
||
allocate buffers. Like for example when configuring the input ports with the
|
||
actual format, it may decrease the number of minimal buffers required.
|
||
This method checks this and update nBufferCountActual if needed so we'll use
|
||
less buffers than the worst case in such scenarios.
|
||
SetParameter() needs to be called when the port is either disabled or
|
||
the component in the Loaded state.
|
||
Don't do this for the decoder output as
|
||
gst_omx_video_dec_allocate_output_buffers() already check
|
||
nBufferCountMin when computing the number of output buffers.
|
||
On some platform, like rpi, the default nBufferCountActual is much
|
||
higher than nBufferCountMin so only enable this using a specific gst-omx
|
||
hack.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=791211
|
||
|
||
2018-05-28 15:02:13 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvidee{enc,dec}: refresh input port definition after setting format
|
||
Setting the input format and the associated encoder/decoder settings
|
||
may also affect the nBufferCountMin of the input port.
|
||
Refresh the input port so we'll use up to date values in propose/decide
|
||
allocation.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=796445
|
||
|
||
2018-05-07 11:59:08 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: always consider component in 'invalid' state when an error occured
|
||
gst_omx_component_get_state() used to early return if there was no
|
||
pending state change. So if the component raised an error it wasn't
|
||
considered in the invalid state until the next requested state change.
|
||
Fix this by checking first if we received an error.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=795874
|
||
|
||
2018-05-25 01:35:58 +1000 Matthew Waters <matthew@centricular.com>
|
||
|
||
* meson.build:
|
||
* meson_options.txt:
|
||
meson: Update option names to omit 'with_omx' prefixes
|
||
Companion commit to:
|
||
https://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=4fb02fc85b70be631f5331b2547e5dc61ef7a43a
|
||
https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=1e1a5d658e4a031535c44823fd398d3052ca2000
|
||
etc...
|
||
|
||
2018-03-21 13:52:23 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: pass a GstOMXBufferMode to gst_omx_buffer_pool_new()
|
||
The output_mode is supposed to be a GstOMXBufferMode, not a boolean.
|
||
|
||
2018-05-03 09:27:15 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
zynq: remove 'no-disable-outport' hack
|
||
No longer needed with newer version of the OMX stack.
|
||
|
||
2018-03-13 16:15:30 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh265enc.c:
|
||
omxh26{4,5}enc: don't pick default 10-bit profile
|
||
The OMX stack of the zynqultrascaleplus (the only one supporting
|
||
NV12_10LE32 and NV16_10LE32) will now pick the proper profile if none
|
||
has been requested. Best to rely on its default than hardcoding a
|
||
specific one in gst-omx.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794319
|
||
|
||
2018-03-06 14:16:56 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264utils.c:
|
||
omxh264: sync with supported profiles on zynqultrascaleplus
|
||
Add extra supported AVC profiles and remove extended and 4:4:4 profiles
|
||
which are actually not implemented.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794177
|
||
|
||
2018-03-06 10:45:14 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264utils.c:
|
||
* omx/gstomxh264utils.h:
|
||
omxh264: factor out gst_omx_h264_utils_get_profile_from_enum()
|
||
Move the profile <-> enum mapping to one place. Make changes easier as
|
||
I'm about to add extra profiles.
|
||
No semantic change.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794177
|
||
|
||
2018-03-06 11:02:44 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265utils.c:
|
||
omxh265: add format range extension profiles on zynqultrascaleplus
|
||
The zynqultrascaleplus OMX gained support for more format range
|
||
extensions profiles (A.3.5).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794177
|
||
|
||
2018-03-06 10:45:14 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxh265utils.c:
|
||
* omx/gstomxh265utils.h:
|
||
omxh265: factor out gst_omx_h265_utils_get_profile_from_enum()
|
||
Move the profile <-> enum mapping to one place. Make changes easier as
|
||
I'm about to add some profiles.
|
||
No semantic change.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794177
|
||
|
||
2018-03-08 12:22:26 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: add NV16 support
|
||
NV16 format wasn't supported on encoder input while it was on decoder
|
||
output.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794175
|
||
|
||
2018-03-08 12:09:38 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideo.c:
|
||
omxvideo: display port number when listing supported formats
|
||
More convenient when debugging.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794175
|
||
|
||
2018-03-29 16:42:40 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: restore OMX default target-bitrate if requested by user
|
||
0xffffffff is the magic number in gst-omx meaning 'the default value
|
||
defined in OMX'. This works fine with OMX parameters which are only set
|
||
once when starting the component but not with configs which can be
|
||
changed while PLAYING.
|
||
Save the actual OMX default bitrate so we can restore it later if user
|
||
sets back 0xffffffff on the property.
|
||
Added GST_OMX_PROP_OMX_DEFAULT so we stop hardcoding magic numbers
|
||
everywhere.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794998
|
||
|
||
2018-03-29 11:36:00 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: use gst_omx_video_enc_set_bitrate() when setting bitrate in set_format
|
||
We weren't using the usual pattern when re-setting the bitrate:
|
||
- get parameters from OMX
|
||
- update only the fields different from 0xffffffff (OMX defaults)
|
||
- set parameters
|
||
Also added a comment explaining why we re-set this param.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794998
|
||
|
||
2018-03-29 11:26:04 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: factor out gst_omx_video_enc_set_bitrate()
|
||
No semantic change, I'm about to re-use this function in set_format().
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794998
|
||
|
||
2018-04-20 11:54:14 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: fix miscellaneous meson warnings
|
||
cc.has_header*() doesn't have a 'required:' kwarg.
|
||
|
||
2018-04-18 12:42:55 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc/dec: fix handling of component enabling failing
|
||
- Report the error from OMX if any (OMX_EventError)
|
||
- If not report the failing to the application (GST_ELEMENT_ERROR)
|
||
- return GST_FLOW_ERROR rather than FALSE
|
||
- don't leak @frame
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=795352
|
||
|
||
2018-04-16 10:53:41 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 3fa2c9e to ed78bee
|
||
|
||
2018-03-14 14:53:50 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
log_omx_performance: convert pointers to strings
|
||
G_TYPE_POINTER are not serialized in logs.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794331
|
||
|
||
2018-04-02 15:14:51 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: remove duplicated debug message
|
||
We already have the exact same message at the beginning of
|
||
gst_omx_video_enc_handle_frame(). Having it twice is confusing when
|
||
reading/grepping logs.
|
||
I kept the earlier one to keep the symetry with
|
||
gst_omx_video_dec_handle_frame().
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=794897
|
||
|
||
2018-02-22 11:27:03 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: add 'roi' qp-mode on zynqultrascaleplus
|
||
New QP mode used to handle ROI metadata.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793696
|
||
|
||
2018-03-20 10:31:10 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* meson.build:
|
||
Back to development
|
||
|
||
=== release 1.14.0 ===
|
||
|
||
2018-03-19 20:31:02 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.14.0
|
||
|
||
=== release 1.13.91 ===
|
||
|
||
2018-03-13 19:32:39 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.13.91
|
||
|
||
2018-03-09 12:02:29 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: fix typo in package name define
|
||
|
||
2018-02-27 15:42:53 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxh265utils.c:
|
||
omxh265: update 422 profile names
|
||
h265parse is gaining support for the format range extension profile
|
||
(bgo#793876).
|
||
Use the profile names defined in h265parse.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793928
|
||
|
||
2018-03-05 13:49:18 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Don't drop the frame on empty payload
|
||
This otherwise may lead to "No reference frame found" warning.
|
||
|
||
2018-03-01 15:16:55 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't drop the frame on empty payload
|
||
This otherwise may lead to "No reference frame found" warning.
|
||
|
||
2018-03-02 15:36:06 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Free empty buffers list in use_dynamic_buffers
|
||
To indicate we are doing dynamic buffers importation, we pass
|
||
a list of NULL pointers, but we forgot to free that list.
|
||
|
||
2018-03-01 15:16:32 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix CodecState leak
|
||
|
||
=== release 1.13.90 ===
|
||
|
||
2018-03-03 23:00:59 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.13.90
|
||
|
||
2018-03-03 20:21:06 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* config/Makefile.am:
|
||
config: dist tizonia config files
|
||
|
||
2018-03-02 11:06:08 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
Revert "omx: wait for flush complete and buffers being released when flushing"
|
||
This reverts commit 4211e4c29a262f110cb92ddf9c06b403ced233ef.
|
||
|
||
2018-02-21 12:50:42 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
videoenc: don't set stride padding to 0 when copying frames
|
||
Padding can be left undefined there is no point filling it with 0.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793694
|
||
|
||
2018-02-16 11:50:35 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
add support for NV12_10LE32 and NV16_10LE32 on zynqultrascaleplus
|
||
The encoder and decoder on zynqultrascaleplus support these new 10 bits
|
||
format.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793694
|
||
|
||
2018-02-16 11:46:47 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: factor out gst_omx_video_enc_nv12_manual_copy()
|
||
No semantic change, I'm going to re-use it to copy the NV12_10LE32
|
||
format.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793694
|
||
|
||
2018-01-17 10:40:49 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: display the computed buffer size when configuring input
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793694
|
||
|
||
2018-02-06 14:25:57 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
videoenc: implement ROI on zynqultrascaleplus
|
||
Check input buffers for ROI meta and pass them to the encoder by using
|
||
zynqultrascaleplus's custom OMX extension. Also add a new
|
||
"default-roi-quality" in order to tell the encoder what quality level
|
||
should be applied to ROI by default.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793696
|
||
|
||
2018-02-14 17:23:39 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: remove GST_PARAM_MUTABLE_PLAYING from 'max-bitrate' property
|
||
This property isn't actually mutable in the PLAYING state.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793458
|
||
|
||
2018-02-14 17:20:02 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: protect target_bitrate with the object lock
|
||
The 'target-bitrate' property can be changed while PLAYING
|
||
(GST_PARAM_MUTABLE_PLAYING). Make it thread-safe to prevent concurrent
|
||
accesses between the application and streaming thread.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793458
|
||
|
||
2018-02-20 11:46:49 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: add PERFORMANCE DEBUG message when copying output frames
|
||
I spent quiet some time figuring out why performance of my pipeline were
|
||
terrible. Turned out it was because of output frames being copied
|
||
because of stride/offset mismatch.
|
||
Add a PERFORMANCE DEBUG message to make it easier to spot and debug from logs.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793637
|
||
|
||
2018-02-15 19:44:37 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* configure.ac:
|
||
* meson.build:
|
||
Back to development
|
||
|
||
=== release 1.13.1 ===
|
||
|
||
2018-02-15 17:50:14 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* Makefile.am:
|
||
* NEWS:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.13.1
|
||
|
||
2017-06-30 15:15:06 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
omxh265enc: fix typo in "periodicty-idr" property name
|
||
Also fix the 'nick' of the property.
|
||
omxh265enc is based on the code from omxh264enc and suffers the same
|
||
typo as we fixed in https://bugzilla.gnome.org/show_bug.cgi?id=784370
|
||
This element isn't part of a stable release yet so it's not an API
|
||
break.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=793390
|
||
|
||
2018-02-08 19:18:59 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: make version numbers ints and fix int/string comparison
|
||
WARNING: Trying to compare values of different types (str, int).
|
||
The result of this is undefined and will become a hard error
|
||
in a future Meson release.
|
||
Also remove unused libversion/soversion.
|
||
|
||
2017-12-12 16:50:00 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* meson.build:
|
||
* omx/gstomx.h:
|
||
include all OMX extension headers if present
|
||
The OMX specs defines 8 headers that implementations can use to define
|
||
their custom extensions. We were checking and including 3 and ignoring
|
||
the other ones.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792043
|
||
|
||
2018-01-30 10:31:03 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* meson.build:
|
||
* omx/meson.build:
|
||
* tools/meson.build:
|
||
meson: simplify OMX extensions detection
|
||
We are now always checking which files are present or not, even when using our
|
||
internal copy of OMX, rather than hardcoding the ones present in it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792043
|
||
|
||
2018-01-30 11:54:24 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* meson.build:
|
||
* omx/meson.build:
|
||
* tools/meson.build:
|
||
Revert "meson: use include_directories() with external OMX headers path"
|
||
This reverts commit 9d37a92a615e54e8ee12f8c65bcfe386ec9de2d0.
|
||
|
||
2017-11-27 14:52:10 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxh265enc.h:
|
||
omxh265enc: add some encoding properties
|
||
constrained-intra-prediction and loop-filter-mode.
|
||
Those map standard OMX settings.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792528
|
||
|
||
2017-11-23 15:54:15 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264enc.h:
|
||
omxh264enc: add some encoding properties
|
||
entropy-mode, constrained-intra-prediction and loop-filter-mode.
|
||
Those map standard OMX settings.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792528
|
||
|
||
2017-06-08 12:31:21 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: add zynqultrascaleplus specific properties
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792528
|
||
|
||
2017-10-31 12:24:39 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: document unit of target-bitrate property
|
||
nTargetBitrate and nEncodeBitrate are defined in bits per second in the
|
||
OMX spec.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792528
|
||
|
||
2017-07-06 10:18:48 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: add internal-entropy-buffers property on zynqultrascaleplus
|
||
Custom property to control the number of internal buffers used in the
|
||
decoder to smooth out entropy decoding performance.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792528
|
||
|
||
2018-01-30 10:31:03 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* meson.build:
|
||
* omx/meson.build:
|
||
* tools/meson.build:
|
||
meson: use include_directories() with external OMX headers path
|
||
It seems cleaner to use the proper meson tools to include this path
|
||
rather than manually tweak the build flags.
|
||
This also allows us to simplify the OMX extensions detection code. We
|
||
are now always checking which files are present, even when using our
|
||
internal copy of OMX, rather than hardcoding the ones present in it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792043
|
||
|
||
2017-11-07 15:09:35 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: expose chroma format and bit depth in output caps
|
||
As we added in the parser (bgo#792039) expose the chroma and bit
|
||
depth information in output caps.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792040
|
||
|
||
2017-11-07 14:30:45 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: factor out get_output_caps()
|
||
No semantic change so far.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792040
|
||
|
||
2017-12-29 11:59:36 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: add hack to pass color format from caps to OMX decoder
|
||
This hack tries to pass as much information as possible from caps to the
|
||
decoder before it receives any buffer. These information can be used by
|
||
the OMX decoder to, for example, pre-allocate its internal buffers
|
||
before starting to decode and so reduce its initial latency.
|
||
This mechanism is currently supported by the zynqultrascaleplus decoder.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792040
|
||
|
||
2017-12-01 12:43:19 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
log failing OMX calls as errors
|
||
I find it confusing when debugging that OMX calls returning an error
|
||
where not logged as GST_LEVEL_ERROR making them harder to spot.
|
||
Fix this by introducing simple log macros checking the return value of
|
||
the OMX call and logging failures as errors.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=791069
|
||
|
||
2017-10-30 11:59:19 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
add OMX_PERFORMANCE debug category
|
||
Can be used to log buffers exchange between OMX and gst-omx to profile
|
||
performances of the OMX component.
|
||
Ideally this should be done using tracer hooks but it's currently not
|
||
possible to define custom hooks outside of core.
|
||
Use GST_DEBUG="OMX_PERFORMANCE:8" to enable it.
|
||
See also
|
||
https://github.com/gdesmott/gst-log-parser/blob/master/src/bin/omx-perf.rs
|
||
as a simple program consuming those logs to generate gnuplot files and
|
||
stats.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=791093
|
||
|
||
2017-07-27 11:21:59 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: implement dmabuf import on zynqultrascaleplus
|
||
The Zynq UltraScale+ encoder implements a custom OMX extension to
|
||
directly import dmabuf saving the need of mapping input buffers.
|
||
This can be use with either 'v4l2src io-mode=dmabuf' or an OMX video
|
||
decoder upstream.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792361
|
||
|
||
2017-09-22 16:02:40 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: drop late input frames if QoS is enabled
|
||
Make use of the new GstVideoEncoder QoS API to drop late input frames. This may
|
||
help a live pipeline to catch up if it's being late and all frames end up
|
||
being dropped at the sink.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792783
|
||
|
||
2018-01-19 15:18:23 +0530 Ashish Kumar <kr.ashish@samsung.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
TestEgl: Removed redundant/unused code
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=788550
|
||
|
||
2018-01-03 16:07:18 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: early return in fill_buffer() if something goes wrong
|
||
If something goes wrong while trying to manually copy the input buffer,
|
||
the 'break' was moving us out of the 'for' loop but not out of the switch block.
|
||
So we ended up calling gst_video_frame_unmap() a second time (raising
|
||
assertions) and returning TRUE rather than FALSE.
|
||
Reproduced with a WIP zynqultrascaleplus OMX branch reporting wrong
|
||
buffer sizes and so triggering this bug.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=792167
|
||
|
||
2017-12-19 16:09:41 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: gl: the winsys and platform list in the .pc file is space-separated
|
||
|
||
2017-12-19 16:08:58 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: fix subproject fallback for gstreamer-gl-1.0
|
||
It's now in -base.
|
||
|
||
2017-12-12 17:30:27 +0000 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideo.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: ignore very little variations of the framerate
|
||
If less than 1%.
|
||
The dynamic format change should not happen when the
|
||
resolution does not change and when only the framerate
|
||
changes but very slightly, i.e. from 50000/1677=29.81
|
||
to 89/3=29.66 so a "percentage change" of less than 1%
|
||
(i.e. 100*(29.81-29.66)/29.66 = 0.50 < 1 ). In that case
|
||
just ignore it to avoid unnecessary renegotiation.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759043
|
||
|
||
2017-08-09 12:07:33 -0400 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: use dynamic buffer mode on input if possible
|
||
Prevent from copying the input buffers between GStreamer and OMX.
|
||
Tested on zynqultrascaleplus and rpi (without dynamic buffers).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787093
|
||
|
||
2017-07-20 16:35:31 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: use dynamic buffer mode on input if possible
|
||
If the OMX component supports dynamic buffer mode and the input buffers
|
||
are properly aligned avoid copying each input frame between OMX and
|
||
GStreamer.
|
||
Tested on zynqultrascaleplus and rpi (without dynamic buffers).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787093
|
||
|
||
2017-07-20 12:56:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc/dec: factor out input buffer allocation
|
||
No semantic change so far. I'm going to add an alternate way to allocate
|
||
input buffers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787093
|
||
|
||
2017-07-20 16:31:54 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: add API to implement dynamic buffers support
|
||
OMX 1.2.0 introduced a third way to manage buffers by allowing
|
||
components to only allocate buffers header during their initialization
|
||
and change their pBuffer pointer at runtime.
|
||
This new feature can save us a copy between GStreamer and OMX for each
|
||
input buffer.
|
||
This patch adds API to allocate and use such buffers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787093
|
||
|
||
2017-12-14 14:53:17 +1100 Matthew Waters <matthew@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From e8c7a71 to 3fa2c9e
|
||
|
||
2017-12-13 12:06:40 +0000 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: consolidate the decision to try UseBuffer
|
||
The tee element can call gst_query_add_allocation_pool with pool as NULL.
|
||
Checking nth > 0 is not enough so we need to verify if there is a pool.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=730758
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784069
|
||
|
||
2017-12-12 14:45:30 +0000 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideo.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
gstomxvideodec: fix framerate overflow
|
||
Some live streams can set the framerate to 50000/1677 (=29.81).
|
||
GstVideoInfo.fps_n << 16 is wrong if the fps_n is 50000
|
||
(i.e. greater than 32767).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759043
|
||
|
||
2017-08-22 13:48:26 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* configure.ac:
|
||
* examples/egl/Makefile.am:
|
||
* examples/egl/meson.build:
|
||
* examples/egl/testegl.c:
|
||
* meson.build:
|
||
example: port testegl.c to desktop
|
||
Will be easier to maintain.
|
||
Also uniformize autotool build with meson build which is
|
||
already retrieving the gl libs.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=781606
|
||
|
||
2017-12-11 15:55:44 +0000 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* meson.build:
|
||
meson: move omx features check after target selection
|
||
And uses gst_omx_args instead of add_global_arguments.
|
||
Similar to c69232852120d064c689caef07b3c68ad8fe6288
|
||
which was only for configure.ac
|
||
Useful to get omxvp8dec with meson too:
|
||
meson . buildtmp -D with_omx_target=tizonia
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-12-04 17:11:04 +0000 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* config/tizonia/gstomx.conf.in:
|
||
config: add OMX.Aratelia.audio_decoder.aac to Tizonia config
|
||
Useful mostly for testing/debugging purpose as this is a software
|
||
based decoder (libfaad) for which GStreamer provides a direct
|
||
wrapper.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=791482
|
||
|
||
2017-11-29 14:18:41 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: retrieve OMX_IndexParamVideoPortFormat before setting it
|
||
The usual pattern when setting OMX params is to first get the struct
|
||
param, override the values we want to set and then set the updated
|
||
param.
|
||
We were not doing this with OMX_IndexParamVideoPortFormat and so were
|
||
resetting some fields such as OMX_VIDEO_PARAM_PORTFORMATTYPE.xFramerate
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=790979
|
||
|
||
2017-05-21 17:34:51 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
omxaacenc: also set 'profile' if mpegversion is 4
|
||
Like done by gst_codec_utils_aac_caps_set_level_and_profile
|
||
which is called by avenc_aac, ffaac and voaacenc.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=735208
|
||
|
||
2017-10-24 12:19:50 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: wait for flush complete and buffers being released when flushing
|
||
As stated in the existing comment, when flusing we should wait for OMX
|
||
to send the flush command complete event AND all ports being released.
|
||
We were stopping as soon as one of those condition was met.
|
||
Fix a race between FillThisBufferDone/EmptyBufferDone and the flush
|
||
EventCmdComplete messages. The OMX implementation is supposed to release
|
||
its buffers before posting the EventCmdComplete event but the ordering
|
||
isn't guaranteed as the FillThisBufferDone/EmptyBufferDone and
|
||
EventHandler callbacks can be called from different threads (cf 2.7
|
||
'Thread Safety' in the spec).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789475
|
||
|
||
2017-10-24 11:45:20 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
gst_omx_port_set_flushing: simplify waiting loop
|
||
No semantic change so far, I just made the 'while' end condition easier
|
||
to understand as a first step before changing it.
|
||
- move error/time out checks inside the loop to make it clearer on what
|
||
we are actually waiting for.
|
||
- group port->buffers checks together with parenthesis as they are part
|
||
of the same conceptual check: waiting for all buffers to be released.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789475
|
||
|
||
2017-11-27 20:17:17 +1100 Matthew Waters <matthew@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 3f4aa96 to e8c7a71
|
||
|
||
2017-11-23 15:03:48 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264utils.c:
|
||
zynqultrascaleplus: add support for extra AVC levels
|
||
The Zynqultrascaleplus has support for extra AVC levels not defined in
|
||
the OMX spec as a customer extension.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=790758
|
||
|
||
2017-10-16 14:47:07 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* .gitignore:
|
||
* Makefile.am:
|
||
* config/meson.build:
|
||
* configure.ac:
|
||
* meson.build:
|
||
* tests/Makefile.am:
|
||
* tests/check/.gitignore:
|
||
* tests/check/Makefile.am:
|
||
* tests/check/generic/.gitignore:
|
||
* tests/check/generic/states.c:
|
||
* tests/check/meson.build:
|
||
* tests/meson.build:
|
||
add test support
|
||
Most of the boilerplate and the states test has been copied from
|
||
gst-plugins-good.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789094
|
||
|
||
2017-10-17 13:07:05 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* meson.build:
|
||
* tools/meson.build:
|
||
meson: add tools support
|
||
Looks like the tools directory was left out during the initial port to
|
||
meson.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789090
|
||
|
||
2017-10-16 14:24:50 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fix build on rpi
|
||
The nTimeStamp field is a OMX_TICKS struct on the rpi so use the proper
|
||
macro to set it.
|
||
Fix build on the build which has been broken by
|
||
b3173144b7c1b12c9e1b7571f78659be45d813f6
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789052
|
||
|
||
2017-10-17 12:11:04 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* meson.build:
|
||
check if Allegro headers are present when building zynqultrascaleplus
|
||
The Zynq UltraScale+ uses a custom version of OMX implementing several
|
||
3rd party extensions. Make sure those are present when building this
|
||
target.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=788064
|
||
|
||
2017-10-16 12:42:44 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: remove redundant debug message
|
||
We have already a debug message right after.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789058
|
||
|
||
2017-10-16 13:26:38 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxh265utils.c:
|
||
omxh265: fix enum casting when using Allegro HEVC extensions
|
||
Allegro's HEVC implementation defines a superset of the profiles and
|
||
enums from the Android implementation.
|
||
Properly cast to fix -Wenum-conversion warnings from clang.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789057
|
||
|
||
2017-10-16 13:08:12 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxvp8dec.c:
|
||
properly cast extension enums
|
||
OMX's allow 3rds party to define extensions using their own enums
|
||
(like OMX_VIDEO_CODINGEXTTYPE) and to be used as the general
|
||
ones (like OMX_VIDEO_CODINGTYPE).
|
||
Properly cast those to fix -Wenum-conversion warnings from some
|
||
compilers such as clang.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=789057
|
||
|
||
2017-10-09 13:12:35 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: also reset nTimeStamp when re-using buffers
|
||
Some OMX implementations may check if the timestamp of the output buffers
|
||
they receive is actually not set.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=788711
|
||
|
||
2017-10-04 17:11:55 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: factor out gst_omx_buffer_reset()
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=788711
|
||
|
||
2017-10-09 17:27:22 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
add gst_omx_buffer_flags_to_string()
|
||
Make debug logs more readable so users don't have to manually figure out
|
||
the meaning of flags.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=788767
|
||
|
||
2017-09-27 19:47:29 +0530 Ponnam Srinivas <p.srinivas@samsung.com>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
h263enc: fix caps leak in error code path
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=788245
|
||
|
||
2017-09-21 15:21:36 +0530 Ponnam Srinivas <p.srinivas@samsung.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: fix caps leak
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787711
|
||
|
||
2017-09-21 11:36:46 +0530 Ponnam Srinivas <p.srinivas@samsung.com>
|
||
|
||
* omx/gstomxh265enc.c:
|
||
omxh265enc: fix caps leak
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787714
|
||
|
||
2017-09-13 15:32:51 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: log info about frame before releasing it
|
||
gst_video_decoder_release_frame() takes ownership of the frame and will
|
||
destroy it. So we should no longer use it after calling it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787628
|
||
|
||
2017-08-20 20:19:33 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* configure.ac:
|
||
configure: Show tizonia target in help
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=786544
|
||
|
||
2017-07-12 14:35:10 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh265dec.c:
|
||
* omx/gstomxh265dec.h:
|
||
* omx/meson.build:
|
||
omxh265dec: add H265 decoder
|
||
Add HEVC decoder for the zynqultrascaleplus platform.
|
||
I used the H264 decoder code as a template.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785434
|
||
|
||
2017-07-12 11:01:15 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
* configure.ac:
|
||
* meson.build:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh265enc.c:
|
||
* omx/gstomxh265enc.h:
|
||
* omx/gstomxh265utils.c:
|
||
* omx/gstomxh265utils.h:
|
||
* omx/meson.build:
|
||
omxh265enc: add H265 encoder
|
||
The OMX spec doesn't support HEVC but the OMX stack of the
|
||
zynqultrascaleplus adds it as a custom extension.
|
||
It uses the same API as the one of Android's OMX stack.
|
||
I used the H264 encoder code as a template.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785434
|
||
|
||
2017-08-28 13:56:22 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: use caps from query in propose_allocation
|
||
Prevent crash by not deferencing a NULL pointer if self->input_state
|
||
isn't defined when propose_allocation() is called.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=786442
|
||
|
||
2017-09-04 09:34:03 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: display states as string if changing failed
|
||
Improve the error message by displaying the states in their string
|
||
representation rather than their numerical value.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=787235
|
||
|
||
2017-08-22 10:22:45 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: EGLDisplay is not indirectly defined by gstgl headers inclusion
|
||
Just use gpointer as done in GstGL to not include
|
||
EGL/egl.h just for EGLDisplay.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784779
|
||
|
||
2017-07-14 16:34:04 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* config/tizonia/gstomx.conf.in:
|
||
config: expose OMX.mesa h264 decoder and encoder in Tizonia config
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783976
|
||
|
||
2017-08-11 07:48:37 -0700 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: remove wrong SettingsChanged ack
|
||
Partially revert 1b7d0b8:
|
||
omxvideodec: handle IL 1.2 behavior for OMX_SetParameter
|
||
It turned out it was a problem in the decoder which was
|
||
not updating some local variables upon SetParameter.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783976
|
||
|
||
2017-07-20 09:43:19 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx{audio,video}{dec,enc}: sequentially disable ports because buffers are not shared
|
||
For the history, the parallel disable port has been introduced by:
|
||
"00be69f omxvideodec: Disable output port when setting a new format"
|
||
and then replicated to videoenc, audiodec and audioenc.
|
||
This is only required to do 'parallel' if buffers are shared between ports.
|
||
But for decoders and encoders the input and output buffer are of different
|
||
nature by definition (bitstream vs images). So they cannot be shared.
|
||
Also starting from IL 1.2.0 it is written in the spec that the parallel
|
||
disable is not allowed and will return an error. Except when buffers are
|
||
shared.
|
||
Again here we know in advance that they are not shared so let's always
|
||
do a sequential disable.
|
||
Tested on Desktop, rpi and zynqultrascaleplus.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=786348
|
||
|
||
2017-08-17 12:26:05 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 48a5d85 to 3f4aa96
|
||
|
||
2017-08-10 12:16:53 -0400 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: use the decoder API to set latency
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785125
|
||
|
||
2017-07-06 14:19:19 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc/dec: declare latency on zynqultrascaleplus
|
||
The OMX specification doesn't provide any API to expose the latency
|
||
introduced by encoders and decoders. We implemented this as a custom
|
||
extension as declaring the latency is needed for live pipelines like
|
||
video conferencing.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785125
|
||
|
||
2017-08-07 13:16:01 -0400 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: adjust stride and slice height from input
|
||
Use the stride and slice height information from the first buffer meta
|
||
data to adjust the settings of the input port.
|
||
This will ensure that the OMX input buffers match the GStreamer ones
|
||
and so will save us from having to copy line-by-line each one.
|
||
This is also the first step to allow the OMX encoder to receive dmabuf.
|
||
Tested on rpi and zynqultrascaleplus.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-08-07 11:45:29 -0400 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: delay buffer configuration until component is enabled
|
||
No significant change for now. Just delay the input port configuration
|
||
of the buffer size related fields (stride, slice height, buffer size)
|
||
until the component is activated.
|
||
This will allow us to use the actual stride/height of the first input
|
||
and so avoid the buffer copying code path in most cases.
|
||
Tested on rpi and zynqultrascaleplus.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-07-24 13:52:35 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideodec/enc: delay allocation after the allocation query
|
||
Allocating OMX components buffers in set_format() is too early.
|
||
Doing it when receiving the first buffers will allow the element to use
|
||
the information from the allocation query and/or the first incoming
|
||
buffer to pick to best allocation mode.
|
||
Tested on raspberry pi with dynamic resolution changes on decoder and
|
||
encoder input.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-07-25 14:27:45 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: start src thread in handle_frame()
|
||
Makes the code simpler as we no longer need to restart the thread in
|
||
gst_omx_video_enc_flush() and It's more symetric which the omxvideodec
|
||
implementation.
|
||
I'm also going to move the enabling of the OMX component in
|
||
handle_frame() and the src pad thread needs to be started after it.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-07-25 14:07:30 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: earlier return if downstream_flow_ret is not OK
|
||
There is no point to (re)start the src thread if, for example, we are
|
||
flushing.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-07-24 12:31:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: factor out enable and disable code
|
||
No semantic change, just factor out the code enabling and disabling the
|
||
component to their own functions.
|
||
Makes the code easier to read as the set_format() method was already
|
||
pretty big. Will also allow us to easily change the enabling logic.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-07-24 12:31:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: factor out enable and disable code
|
||
No semantic change, just factor out the code enabling and disabling the
|
||
component to their own functions.
|
||
Makes the code easier to read as the set_format() method was already
|
||
pretty big. Will also allow us to easily change the enabling logic.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785967
|
||
|
||
2017-07-27 12:12:01 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: also reset nFilledLen before calling OMX_FillThisBuffer()
|
||
The spec states that the buffer passed to OMX_FillThisBuffer() needs to be
|
||
empty. Some implementation may check it actually is by checking its
|
||
nFilledLen field, so best to reset it as well.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785623
|
||
|
||
2017-07-17 21:06:47 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: make generic the OMX_UseEGLImage code path
|
||
Will be easier to maintain and to make enhancements.
|
||
Tested with Tizonia on Desktop.
|
||
Also tested with Bellagio to make sure it does not crash when
|
||
calling OMX_UseEGLImage and indeed it returns NotImplemented.
|
||
Then gst-omx fallback to OMX_UseBuffer if it can and so on.
|
||
Also tested on rpi to make sure there is no regression.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784365
|
||
|
||
2017-07-21 11:52:00 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix segment seek
|
||
On segment seek, unlike EOS, we drain, but we cannot expect a flush
|
||
later to reset the decoder state. As a side effect, the decoder would
|
||
remain in EOS state and ignore any new incoming buffers.
|
||
To fix this, we call _flush() inside the _drain() function, and
|
||
_finish() becomes what _drain() was before. This way, for _finish() (the
|
||
eos case) we only drain, for _drain() triggered by segment seek or new
|
||
caps, we also reset the decoder state so it's ready to accept buffers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785237
|
||
|
||
2017-07-10 15:00:58 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: ensure enough buffers are allocated in the pool
|
||
Handle allocation query and ensure enough buffers are allocated in
|
||
the negotiated pool. This help preventing buffer starvation in the pipeline.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=785122
|
||
|
||
2017-07-04 12:16:39 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* meson.build:
|
||
* omx/Makefile.am:
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxbufferpool.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/meson.build:
|
||
omxvideodec: add dmabuf support for output
|
||
The zynqultrascaleplus OMX implementation has a custom extension
|
||
allowing decoders to output dmabuf and so avoid buffers copy between OMX
|
||
and GStreamer.
|
||
Make use of this extension when built on the zynqultrascaleplus. The
|
||
buffer pool code should be re-usable for other platforms as well.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784847
|
||
|
||
2017-06-20 00:13:33 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* config/tizonia/gstomx.conf.in:
|
||
config: add OMX.Aratelia.video_decoder.vp8 to Tizonia config
|
||
Useful mostly for testing/debugging purpose as this is a software
|
||
based encoder (libvpxdec) for which GStreamer provides a direct
|
||
wrapper.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783976
|
||
|
||
2017-06-19 23:56:02 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: handle IL 1.2 behavior for OMX_SetParameter
|
||
It triggers SettingsChanged on the other port and it is up to
|
||
the client to decide if it should lead to a port reconfiguration.
|
||
Settings are propagated to the other port for fields they have
|
||
in common. But this event is only triggered on the other port
|
||
if it actually change a setting.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783976
|
||
|
||
2017-07-18 23:41:17 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* config/tizonia/gstomx.conf.in:
|
||
config: set rank to 0 for Tizonia's mp3 decoder
|
||
Should have been 0 from the initial commit
|
||
eed49b4231a063639f90279c8044404c2149902a
|
||
|
||
2017-07-17 21:03:55 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix file permissions
|
||
Introduced by ebc9b4903cbdac2793c24b05a1bb7acc3b67fae5
|
||
|
||
2017-06-29 23:17:26 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix buffer leak when eglimage setup fails
|
||
Can happen if gst_buffer_pool_acquire_buffer succeeds but
|
||
gst_buffer_n_memory (buffer) is not exactly 1.
|
||
In theory this should not happen because the decoder requests
|
||
EGLImage(RGBA) but better to fix any leak on corner cases.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784365
|
||
|
||
2017-07-17 18:36:36 +0530 Satya Prakash Gupta <sp.gupta@samsung.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Possible Memory leak in gst_caps_from_string
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784978
|
||
|
||
2017-07-17 15:48:44 +0530 Satya Prakash Gupta <sp.gupta@samsung.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix deadlock in error case when draining
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784972
|
||
|
||
2017-07-17 13:44:54 +0530 Satya Prakash Gupta <sp.gupta@samsung.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Fix deadlock in error case when draining
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784967
|
||
|
||
2017-06-02 12:36:30 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* meson.build:
|
||
* omx/gstomx.h:
|
||
build: include OMX_IndexExt and OMX_ComponentExt if present
|
||
These files may be used by OMX implementation to define custom extensions.
|
||
Include them if present as we are already doing with OMX_VideoExt.h
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784847
|
||
|
||
2017-07-13 16:40:26 +1000 Jan Schmidt <jan@centricular.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: Re-add periodicty-idr property for backward compat
|
||
Retain backwards compatibility by adding a duplicate
|
||
property for periodicty-idr
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784370
|
||
|
||
2017-06-30 15:15:06 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: fix typo in "periodicty-idr" property name
|
||
Also fix the 'nick' of the property.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784370
|
||
|
||
2017-06-29 22:48:47 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: use OMX_UseBuffer
|
||
For example this allows the omx decoder to directly fill the
|
||
pixmaps coming from the video sink.
|
||
It only avoids a buffer copy when the decoder uses a pool provided
|
||
by a downstream element. So let's restrict this usage to situations
|
||
where the decoder decides to use a downstream buffer pool.
|
||
Tested with Tizonia/OMX.Aratelia.video_decoder.vp8
|
||
and with Bellagio/OMX.mesa.video_decoder.avc.
|
||
If it fails to setup buffers with OMX_UseBuffer the decoders
|
||
fallbacks to usual OMX_AllocateBuffer.
|
||
Also it allows to test on desktop the GstOMXBufferPool->other_pool
|
||
management which was previously only used in the OMX_UseEGLImage
|
||
case, i.e. on Rpi.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784069
|
||
|
||
2017-07-12 10:29:16 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: do not always print an error if OMX_{UseBuffer,EGLImage} fails
|
||
Let the caller decide to print an error. Because it can be part of
|
||
a normal trial path.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784069
|
||
|
||
2017-07-12 16:00:53 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/meson.build:
|
||
meson: add gstomxmp3enc
|
||
Commit 02d493e85921596f7cac7ef4af02fde500e9a5d8 didn't add
|
||
gstomxmp3enc.c to meson.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784848
|
||
|
||
2017-05-23 10:32:58 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* config/tizonia/gstomx.conf.in:
|
||
config: add OMX.Aratelia.audio_encoder.mp3 to Tizonia config
|
||
Useful mostly for testing/debugging purpose as this is a software
|
||
based encoder (libmp3lame) for which GStreamer provides a direct
|
||
wrapper.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782988
|
||
|
||
2017-05-23 10:32:06 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxmp3enc.c:
|
||
* omx/gstomxmp3enc.h:
|
||
omx: add gstomxmp3enc
|
||
Initial support and only tested with the software based
|
||
encoder OMX.Aratelia.audio_encoder.mp3 from Tizonia which
|
||
internally uses libmp3lame.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782988
|
||
|
||
2017-03-28 16:27:10 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxh264dec.c:
|
||
h264dec: add hack to pass profile and level to OMX
|
||
This information can be useful to zynqultrascaleplus decoders. They may
|
||
use this information to reduce startup latency by configuring itself
|
||
before receiving the first frames.
|
||
We also have a custom OMX extension allowing the decoder to report the
|
||
latency. The profile/level information helps it reporting a more
|
||
accurate latency earlier.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783114
|
||
|
||
2017-07-03 13:17:11 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264utils.c:
|
||
* omx/gstomxh264utils.h:
|
||
* omx/meson.build:
|
||
omxh264enc: move profile and level parsing functions to their own files
|
||
Will allow to re-use them in the decoder element.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783114
|
||
|
||
2017-07-04 03:15:00 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* config/meson.build:
|
||
* config/tizonia/meson.build:
|
||
* meson.build:
|
||
* meson_options.txt:
|
||
meson: Add tizonia option
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-04-29 02:56:59 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* .gitignore:
|
||
* config/tizonia/Makefile.am:
|
||
* config/tizonia/gstomx.conf.in:
|
||
* config/tizonia/meson.build:
|
||
* configure.ac:
|
||
config: add omxmp3dec config for tizonia
|
||
GST_OMX_CONFIG_DIR=$HOME/gst/master/gst-omx/config/tizonia/ \
|
||
gst-launch-1.0 filesrc location=mpthreetest.mp3 ! id3demux ! \
|
||
mpegaudioparse ! omxmp3dec ! audioconvert ! pulsesink
|
||
v2: [Nicolas] Use template to create gstomx.conf using pkg-config
|
||
v3: [Nicolas] Ignore only config/tizonia/gstomx.conf
|
||
v4: [Nicolas] Add "/" for single occurence
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-05-07 20:09:54 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: always ignore OMX_ErrorPortUnpopulated
|
||
It is safe to ignore it always. Tizonia notifies this error to pass
|
||
some khronos conformance tests. Problem is that gst-omx saves this
|
||
error in comp->last_error and then gst_omx_port_set_enabled early
|
||
error out which fails the pipeline.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-04-29 02:53:26 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: guard some omx enums with IL version
|
||
Some enums that existed in 1.1.2 just do not exit in 1.2.0
|
||
See https://www.khronos.org/registry/OpenMAX-IL/specs/OpenMAX_IL_1_2_0_Specification_redline.pdf
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-04-29 01:56:01 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* configure.ac:
|
||
configure.ac: add tizonia target for --with-omx-target flag.
|
||
This will check for tizilheaders.pc which adds path to omx-il
|
||
headers its cflags. Can be installed all together with the 1.2 headers
|
||
with package tizilheaders if not building from sources:
|
||
https://github.com/tizonia/tizonia-openmax-il
|
||
It is also adviced to remove libomxil-bellagio-dev package because
|
||
it installs headers /usr/include directly, ex: /usr/include/OMX_Video.h.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-07-05 10:47:41 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: update local port_def after reopening the component
|
||
gst_omx_audio_enc_open will only update GstOMXAudioEnc->port->port_def.
|
||
Note that the component is reopen only if the flag
|
||
GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782418
|
||
|
||
2017-07-05 10:48:52 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: update local port_def after reopening the component
|
||
gst_omx_video_enc_open will only update GstOMXVideoEnc->port->port_def.
|
||
Note that the component is reopen only if the flag
|
||
GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782418
|
||
|
||
2017-05-10 12:38:39 +0900 Sejun Park <sejun79.park@samsung.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: update local port_def after reopening the component
|
||
gst_omx_video_dec_open will only update GstOMXVideoDec->port->port_def.
|
||
Note that the component is reopen only if the flag
|
||
GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782418
|
||
|
||
2017-07-03 16:33:06 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: increase the minimum number of allocated buffers
|
||
Ensure that enough buffers are allocated by adding up component's own
|
||
minimal plus the number of buffers requested by downstream.
|
||
This should prevent buffers starvation problem if downstream elements
|
||
are holding some of the buffers they required.
|
||
Also simplify the check on the maximum on buffers. What we actually care
|
||
about is to make sure the pool can hold the minimum of required buffers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784479
|
||
|
||
2017-07-03 10:54:50 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: raise a warning if AVCIntraPeriod is not supported
|
||
Some platforms may not implement OMX_IndexConfigVideoAVCIntraPeriod and
|
||
use OMX_IndexParamVideoAvc instead to configure the GOP pattern.
|
||
So raise a warning instead of an error if this API is not implemented.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784379
|
||
|
||
2017-06-29 14:16:19 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264enc.h:
|
||
omxh264enc: add 'b-frames' property
|
||
Add a property to control the number of B-frames produced by the
|
||
encoder using the OMX_VIDEO_PARAM_AVCTYPE OMX API.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784379
|
||
|
||
2017-06-30 14:18:35 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: fix typo in 'set_avc_intra_period'
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784379
|
||
|
||
2017-05-22 11:23:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* config/Makefile.am:
|
||
* config/meson.build:
|
||
* config/zynqultrascaleplus/Makefile.am:
|
||
* config/zynqultrascaleplus/gstomx.conf:
|
||
* config/zynqultrascaleplus/meson.build:
|
||
* configure.ac:
|
||
* meson.build:
|
||
* meson_options.txt:
|
||
add 'zynqultrascaleplus' as OMX target
|
||
Adding support for the 'Zynq UltraScale+' as a new OMX target.
|
||
See https://www.xilinx.com/products/silicon-devices/soc/zynq-ultrascale-mpsoc.html
|
||
for details about the platform.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783097
|
||
|
||
2017-05-21 15:23:09 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* config/bellagio/gstomx.conf:
|
||
config: add OMX.mesa.video_decoder.{avc,mpeg2} for Bellagio config
|
||
Install libomxil-bellagio0 and make sure mesa has been built with
|
||
--enable-omx. Check there is /usr/lib/libomxil-bellagio0/libomx_mesa.so
|
||
then run omxregister-bellagio to regenerate $XDG_DATA_HOME/.omxregister
|
||
Then omxh264dec and omxmpeg2dec should load.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782926
|
||
|
||
2017-05-18 13:50:56 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* configure.ac:
|
||
configure.ac: move omx features check after target selection
|
||
Does not change anything, except this will be useful for future commits.
|
||
Indeed some targets provide a .pc file where to look for the omx headers.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782800
|
||
|
||
2017-06-29 16:48:07 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
omxh264dec: remove 'parsed=true' from sink pad
|
||
The decoder only requires to receive one frame per buffer which is
|
||
already enforced with 'alignment=au'. There is no need to require to
|
||
have a parser upstream.
|
||
Allow to run "encode ! decode" pipeline without having a parser.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=784344
|
||
|
||
2017-06-16 13:28:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: set profile/level using OMX_VIDEO_PARAM_AVCTYPE as well
|
||
The OMX specification defines two API to set the AVC profile and level:
|
||
using OMX_VIDEO_PARAM_PROFILELEVELTYPE and OMX_VIDEO_PARAM_AVCTYPE.
|
||
We were already supporting the former but not the latter. We are now
|
||
setting both so implementation don't have to rely on a specific one.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783862
|
||
|
||
2017-06-16 13:19:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: factor out update_param_profile_level()
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783862
|
||
|
||
2017-06-16 12:53:15 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: factor out string to profile/level enum conversion
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783862
|
||
|
||
2017-06-28 15:06:10 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: use OMX_IndexConfigBrcmVideoIntraPeriod on pi
|
||
The OMX_VIDEO_CONFIG_AVCINTRAPERIOD.nPFrames setting isn't of any use on
|
||
the raspbery pi. Instead it uses a custom extension to define the I
|
||
frame period.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783829
|
||
|
||
2017-06-28 15:03:52 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: factor out set_avc_intra_perdiod()
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783829
|
||
|
||
2017-06-02 12:48:57 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* meson.build:
|
||
meson: define HAVE_VIDEO_EXT if OMX_VideoExt.h is present
|
||
Meson build wasn't defining the HAVE_VIDEO_EXT like configure.ac does.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783346
|
||
|
||
2017-06-11 12:32:01 +0000 Graham Leggett <minfrin@sharp.fm>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Improve debug output when setting codec state due to new codec_data fails
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=783657
|
||
|
||
2017-05-20 14:49:20 +0100 Julien Isorce <jisorce@oblong.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: allow 0 feature
|
||
Previously the omx plugin was blacklisted if GST_OMX_CONFIG_DIR
|
||
points to an invalid path or if the gstomx.conf contains 0 valid
|
||
component.
|
||
Problem is that once the plugin is blacklisted, a rescan is not
|
||
triggered upon changes of the env var or the gstomx.conf file
|
||
despite being setup with gst_plugin_add_dependency.
|
||
This also makes it more consistent with other plugins that auto
|
||
generate features. For example gst-{ffmeg,libav}, gstreamer-vaapi,
|
||
v4l2 video dec.
|
||
To clarify the diff, the plugin_init func will return TRUE even if
|
||
g_key_file_get_groups returns 0 element and even if
|
||
g_key_file_load_from_dirs fails.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782867
|
||
|
||
2017-04-26 22:52:17 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* config/bellagio/gstomx.conf:
|
||
config: add OMX.st.audio_decoder.mp3.mad for Bellagio config
|
||
MP3 Software decoder (libmad based) but useful for testing
|
||
and to compare with other targets.
|
||
GST_OMX_CONFIG_DIR=$HOME/gst/master/gst-omx/config/bellagio/ \
|
||
gst-launch-1.0 filesrc location=mpthreetest.mp3 ! id3demux ! \
|
||
mpegaudioparse ! omxmp3dec ! audioconvert ! pulsesink
|
||
Didn't add 'local' in core-name path compared to other components
|
||
in that same gstomx.conf file because OMX.st.audio_decoder.mp3.mad
|
||
comes with the Ubuntu package 'libomxil-bellagio0-components-mad'.
|
||
All other components listed in this gstomx.conf for Bellagio, are
|
||
not provided by any Ubuntu packages. It could explain the 'local',
|
||
i.e. requiring to build them from source.
|
||
dpkg -L libomxil-bellagio0
|
||
/usr/lib/libomxil-bellagio.so.0
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=781786
|
||
Signed-off-by: Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
Signed-off-by: Julien Isorce <jisorce@oblong.com>
|
||
|
||
2017-05-16 14:39:04 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* configure.ac:
|
||
Remove plugin specific static build option
|
||
Static and dynamic plugins now have the same interface. The standard
|
||
--enable-static/--enable-shared toggle are sufficient.
|
||
|
||
2017-05-10 12:10:10 +0900 Sejun Park <sejun79.park@samsung.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Removed unreachable code
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782416
|
||
|
||
2017-05-09 16:26:44 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/meson.build:
|
||
meson: add dep on GModule
|
||
libgstomx uses the GModule API and so needs it in its dependencies list.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782387
|
||
|
||
2017-05-09 13:27:28 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: fix config.h generation
|
||
"No such input file config.h.meson", but it's not needed anyway.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=782382
|
||
|
||
2017-05-04 18:59:33 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
* meson.build:
|
||
Back to development
|
||
|
||
=== release 1.12.0 ===
|
||
|
||
2017-05-04 15:48:56 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.12.0
|
||
|
||
=== release 1.11.91 ===
|
||
|
||
2017-04-27 17:53:50 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.11.91
|
||
|
||
2017-04-17 17:02:48 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
videoenc: use GST_ROUND_UP_N() macro
|
||
Makes the code much easier to read and understand.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=781409
|
||
|
||
2017-04-24 20:30:21 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 60aeef6 to 48a5d85
|
||
|
||
2017-04-10 23:51:00 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* autogen.sh:
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 39ac2f5 to 60aeef6
|
||
|
||
=== release 1.11.90 ===
|
||
|
||
2017-04-07 16:36:45 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* meson.build:
|
||
Release 1.11.90
|
||
|
||
2017-04-07 14:27:23 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix compiler warning
|
||
gstomxvideoenc.c: In function ‘gst_omx_video_enc_fill_buffer’:
|
||
CC libgstomx_la-gstomxaacdec.lo
|
||
gstomxvideoenc.c:1316:27: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 8 has type ‘OMX_U32 {aka long unsigned int}’ [-Wformat=]
|
||
GST_LOG_OBJECT (self, "Matched strides - direct copy %u bytes",
|
||
^
|
||
outbuf->omx_buf->nFilledLen);
|
||
~~~~~~~~~~~~~~~~~~
|
||
|
||
2017-03-22 17:18:09 +0530 Gurkirpal Singh <gurkirpal204@gmail.com>
|
||
|
||
* meson.build:
|
||
meson: fix logic to set HAVE_THEORA
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=780392
|
||
|
||
2017-03-14 03:02:06 +1100 Jan Schmidt <thaytan@noraisin.net>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add an unimplemented mapping for RGBA formats
|
||
Add some pixel formats mappings for 2 RGBA formats. Not yet
|
||
implemented in the buffer input code though, so no effect for now.
|
||
|
||
2017-03-14 03:00:49 +1100 Jan Schmidt <thaytan@noraisin.net>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add GST_OMX_HACK_HEIGHT_MULTIPLE_16 for Rpi
|
||
The Raspberry Pi encoder produces corrupt output unless
|
||
the input height is a multiple of 16. Add a hack that adds
|
||
zero padding when needed.
|
||
|
||
2017-03-14 02:42:15 +1100 Jan Schmidt <thaytan@noraisin.net>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add a mapping for OMX_COLOR_FormatYUV420PackedSemiPlanar
|
||
The RaspberryPi
|
||
|
||
2017-03-14 02:40:24 +1100 Jan Schmidt <thaytan@noraisin.net>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Filter out unimplemented formats
|
||
Don't announce pixel formats in the caps if they've not been
|
||
implemented.
|
||
|
||
2017-03-14 02:34:36 +1100 Jan Schmidt <thaytan@noraisin.net>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: demote ERROR message
|
||
There's no need to warn about failing to negotiate EGL output
|
||
- that can be perfectly normal.
|
||
|
||
2017-02-24 16:00:29 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* meson.build:
|
||
meson: Update version
|
||
|
||
2017-02-24 15:38:17 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
Back to development
|
||
|
||
=== release 1.11.2 ===
|
||
|
||
2017-02-24 15:10:17 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.11.2
|
||
|
||
2017-02-15 18:22:53 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* Makefile.am:
|
||
meson: dist meson build files
|
||
Ship meson build files in tarballs, so people who use tarballs
|
||
in their builds can start playing with meson already.
|
||
|
||
2017-01-13 16:23:12 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
omxaacenc: let encoder know about incoming rate/channels
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=777223
|
||
|
||
2017-01-18 02:43:44 +1100 Matthew Waters <matthew@centricular.com>
|
||
|
||
* config/bellagio/meson.build:
|
||
* config/meson.build:
|
||
* config/rpi/meson.build:
|
||
* examples/egl/meson.build:
|
||
* examples/meson.build:
|
||
* hooks/pre-commit.hook:
|
||
* meson.build:
|
||
* meson_options.txt:
|
||
* omx/meson.build:
|
||
build: add meson build definition
|
||
Currently only been tested on the RPi within gst-build.
|
||
|
||
2017-01-18 15:21:35 +1100 Matthew Waters <matthew@centricular.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples/testegl: update for libgstgl changes
|
||
|
||
2017-01-12 16:33:09 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
Back to development
|
||
|
||
=== release 1.11.1 ===
|
||
|
||
2017-01-12 16:26:55 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.11.1
|
||
|
||
2017-01-10 15:29:08 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: set base class format instead of just source pad caps
|
||
|
||
2016-12-18 19:46:55 +0000 Graham Leggett <minfrin@sharp.fm>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxvideodec.c:
|
||
omx*dec: Flush before we stop the srcpad loop
|
||
Flushing could otherwise hang if output port queue of pending buffers was empty
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=774654
|
||
|
||
2016-12-14 13:29:08 -0800 Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
|
||
|
||
* omx/gstomx.c:
|
||
Fix broken build due to syntax error
|
||
Problem was introduced by 8716c23e2b0553db2982eb84c437f493c974385e
|
||
|
||
2016-12-12 11:12:48 +0000 Graham Leggett <minfrin@sharp.fm>
|
||
|
||
* omx/gstomx.c:
|
||
Prevent early EOS by resetting eos flag once GST_OMX_ACQUIRE_BUFFER_EOS is triggered
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=774600
|
||
|
||
2016-12-12 11:09:15 +0000 Graham Leggett <minfrin@sharp.fm>
|
||
|
||
* omx/gstomx.c:
|
||
Add clear debug logging on all the paths out of gst_omx_port_acquire_buffer()
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=774600
|
||
|
||
2016-12-01 18:23:50 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
Add a signals-premature-eos hack for egl_render
|
||
egl_render seems to have a bug and signals EOS before it has finished
|
||
pushing out all data; this hack simply makes acquire_buffer() wait
|
||
a bit more before signalling EOS, in case egl_render decides to spit
|
||
out some more data.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=741856
|
||
|
||
2016-12-11 19:52:37 +0000 Graham Leggett <minfrin@sharp.fm>
|
||
|
||
* omx/gstomxvideo.c:
|
||
Add support for OMX_COLOR_FormatYUV420PackedSemiPlanar and OMX_COLOR_Format24bitBGR888
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=775959
|
||
|
||
2016-12-03 08:20:46 +0100 Edward Hervey <bilboed@bilboed.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ac2f647 to 39ac2f5
|
||
|
||
2016-11-26 11:27:58 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* .gitmodules:
|
||
common: use https protocol for common submodule
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=775110
|
||
|
||
2016-11-25 23:56:06 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix compiler warning with latest clang
|
||
gstomx.c:1376:42: error: implicit conversion from enumeration type 'GstOMXAcquireBufferReturn' to different enumeration type 'OMX_ERRORTYPE'
|
||
(aka 'enum OMX_ERRORTYPE') [-Werror,-Wenum-conversion]
|
||
g_return_val_if_fail (!port->tunneled, GST_OMX_ACQUIRE_BUFFER_ERROR);
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=775112
|
||
|
||
2016-11-17 19:56:35 +1100 Matthew Waters <matthew@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
videodecoder: remove use of EGLImage orientation
|
||
New code should use GstVideoTransformationMeta
|
||
(The defaults do the right thing here though).
|
||
|
||
=== release 1.11.0 ===
|
||
|
||
2016-11-01 18:53:25 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
Back to development
|
||
|
||
=== release 1.10.0 ===
|
||
|
||
2016-11-01 18:20:48 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.10.0
|
||
|
||
=== release 1.9.90 ===
|
||
|
||
2016-09-30 13:04:51 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* common:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.9.90
|
||
|
||
2016-09-14 11:33:13 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
configure: Depend on gstreamer 1.9.2.1
|
||
|
||
2016-09-12 14:09:46 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
* omx/gstomx.c:
|
||
omx: Also search for gstomx.conf in the autoconf --sysconfdir
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=770743
|
||
|
||
2016-09-10 20:52:10 +1000 Jan Schmidt <jan@centricular.com>
|
||
|
||
* autogen.sh:
|
||
* common:
|
||
Automatic update of common submodule
|
||
From b18d820 to f980fd9
|
||
|
||
2016-09-10 09:58:16 +1000 Jan Schmidt <jan@centricular.com>
|
||
|
||
* autogen.sh:
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ac2f647 to b18d820
|
||
|
||
2016-09-01 12:36:09 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
Back to development
|
||
|
||
=== release 1.9.2 ===
|
||
|
||
2016-09-01 12:35:58 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* common:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.9.2
|
||
|
||
2016-07-11 21:15:48 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ac2f647 to f49c55e
|
||
|
||
2016-07-06 13:51:24 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
Back to development
|
||
|
||
=== release 1.9.1 ===
|
||
|
||
2016-07-06 13:48:45 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* common:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.9.1
|
||
|
||
2016-06-29 16:37:43 +0900 Kazunori Kobayashi <kkobayas@igel.co.jp>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Use GST_VIDEO_FRAME_PLANE_STRIDE() to get output buffer's stride
|
||
GST_VIDEO_FRAME_PLANE_STRIDE() should be used to get the actual buffer stride,
|
||
as reported in the buffers's GstVideoMeta, when copying data to that buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=768173
|
||
|
||
2016-06-21 11:48:40 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ac2f647 to f363b32
|
||
|
||
2016-06-21 11:43:13 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: implement GstPreset interface
|
||
To allow user to use GstPreset to quickly save and load a set of
|
||
parameters.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=767907
|
||
|
||
2016-06-21 11:41:15 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: implement GstPreset interface
|
||
To allow user to use GstPreset to quickly save and load a set of
|
||
parameters.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=767907
|
||
|
||
2016-06-17 12:06:48 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: #define OMX_SKIP64BIT on the RPi as required by their API
|
||
Also add generic support for OMX_SKIP64BIT to gst-omx, in case other
|
||
implementations also #define that for whatever reason.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=766475
|
||
|
||
2016-06-17 10:59:45 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Implement ::drain() virtual method
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=767641
|
||
|
||
2016-06-04 19:31:45 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* configure.ac:
|
||
configure: remove AG_GST_PARSE_SUBSYSTEM_DISABLES
|
||
This would check which subsystems are disabled in core by grepping
|
||
gstconfig.h. Only problem is: gstconfig.h has moved into libdir now
|
||
so we've been checking a non-existent file for a while now. The
|
||
macro would just sets GST_DISABLE_* for use in configure.ac and
|
||
Makefile.am, but we don't use that anywhere so just get rid of it
|
||
(the one place where we use GST_DISABLE_GST_DEBUG is in a .c file
|
||
which gets the define from the gstconfig.h include).
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=750056
|
||
|
||
2016-01-20 03:10:38 +0900 Gwang Yoon Hwang <yoon@igalia.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec : Use gstglmemoryegl for the RPi
|
||
Modified to use gstglmemoryegl to avoid texture creation/copy operations
|
||
at the glupload.
|
||
[Matthew Waters]: gst-indent the sources and port testegl to GstGLMemoryEGL
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=760918
|
||
|
||
2016-04-14 10:04:32 +0100 Julien Isorce <j.isorce@samsung.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 6f2d209 to ac2f647
|
||
|
||
2016-02-26 12:42:41 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From b64f03f to 6f2d209
|
||
|
||
2016-02-17 20:51:03 +1100 Matthew Waters <matthew@centricular.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: update egl example for gstgl API changes
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=762053
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753917
|
||
|
||
2016-02-05 18:11:06 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* autogen.sh:
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 86e4663 to b64f03f
|
||
|
||
2015-12-21 00:43:49 +0100 Koop Mast <kwm@rainbow-runner.nl>
|
||
|
||
* configure.ac:
|
||
configure: Make -Bsymbolic check work with clang.
|
||
Update the -Bsymbolic check with the version glib has. This version
|
||
works with clang.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=759713
|
||
|
||
2015-12-07 09:11:32 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* autogen.sh:
|
||
* common:
|
||
Automatic update of common submodule
|
||
From b319909 to 86e4663
|
||
|
||
2015-11-18 13:00:28 +0000 Enrique Ocaña González <eocanha@igalia.com>
|
||
|
||
* omx/gstomx.c:
|
||
Remember the last_error after a failed set state call to avoid blocking the next get state call
|
||
gst_omx_video_dec_flush() blocks forever in
|
||
http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomxvideodec.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n2110
|
||
when the previous call to gst_omx_component_set_state() fails in
|
||
http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n827.
|
||
To mitigate that, I set "last_error" to true, so the code in
|
||
http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n862
|
||
exits early and doesn't block.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=758274
|
||
|
||
2015-11-18 12:59:59 +0000 Enrique Ocaña González <eocanha@igalia.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
Properly handle drain requests while flushing
|
||
Without this commit the decoder streaming thread stops without ever attending
|
||
the drain request, leaving the decoder input thread waiting forever.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=758274
|
||
|
||
2015-11-10 10:42:35 +0100 Nicolas Huet <nicolas.huet@parrot.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fix hacks leak on class init
|
||
|
||
2015-10-21 14:37:13 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From b99800a to b319909
|
||
|
||
2015-10-21 14:28:41 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 9aed1d7 to b99800a
|
||
|
||
2015-09-01 16:08:11 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* omx/gstomxaacdec.c:
|
||
omxaacdec: Do not accept unknown layouts
|
||
It was defaulting to RAW when an unknown layout was received but
|
||
the caps template would actually forbid that on the caps query
|
||
or accept-caps anyway.
|
||
|
||
2015-09-01 08:59:54 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: use default pad accept-caps handling
|
||
Instead of the audiodecoder one. The OMX audioo decoders have their
|
||
valid input in the template pad, so just check against that to
|
||
avoid doing a query downstream.
|
||
|
||
2015-08-28 12:57:33 -0300 Thiago Santos <thiagoss@osg.samsung.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: use default pad accept-caps handling
|
||
Instead of the videodecoder one. The OMX video decoders have their
|
||
valid input in the template pad, so just check against that to
|
||
avoid doing a query downstream.
|
||
|
||
2015-08-22 15:54:55 +0000 Graham Leggett <minfrin@sharp.fm>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add keyframe support for the Rpi, using OMX_IndexConfigBrcmVideoRequestIFrame
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753085
|
||
|
||
2015-08-20 17:20:50 +0900 Vineeth TM <vineeth.tm@samsung.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
gst-omx: Fix memory leaks when context parse fails
|
||
When g_option_context_parse fails, context and error variables are not getting free'd
|
||
which results in memory leaks. Free'ing the same.
|
||
And replacing g_error_free with g_clear_error, which checks if the error being passed
|
||
is not NULL and sets the variable to NULL on free'ing.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=753865
|
||
|
||
2015-08-16 14:53:42 +0200 Philippe Normand <philn@igalia.com>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
omxh264dec: implement is_format_change
|
||
The omxvideodecoder class only checks some of the caps parameters but if
|
||
other fields change such as h264 profile and/or level it wouldn't trigger a
|
||
reconfiguration.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=752376
|
||
|
||
2015-07-03 00:26:48 +0200 Aurélien Zanelli <aurelien.zanelli@darkosphere.fr>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: unref allocator after getting it from allocation query
|
||
Otherwise a reference will be leaked for each allocator. It only happens
|
||
when target platform is Raspberry Pi and when we have GL support.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=751867
|
||
|
||
2015-07-03 21:59:54 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From f74b2df to 9aed1d7
|
||
|
||
2015-06-16 17:50:14 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 6015d26 to f74b2df
|
||
|
||
2015-06-09 11:30:49 +0200 Edward Hervey <bilboed@bilboed.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From d9a3353 to 6015d26
|
||
|
||
2015-06-08 23:08:28 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From d37af32 to d9a3353
|
||
|
||
2015-06-07 23:07:22 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 21ba2e5 to d37af32
|
||
|
||
2015-06-07 17:32:25 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From c408583 to 21ba2e5
|
||
|
||
2015-06-07 17:16:43 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* autogen.sh:
|
||
* common:
|
||
Automatic update of common submodule
|
||
From c8fb372 to c408583
|
||
|
||
2015-05-19 18:21:40 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudiodec.h:
|
||
omxaudiodec: Add an output adapter for chunking the output into codec frames
|
||
Otherwise the base class will be confused.
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=685730
|
||
|
||
2015-04-26 18:24:13 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* Android.mk:
|
||
* omx/Makefile.am:
|
||
Remove obsolete Android build cruft
|
||
This is not needed any longer.
|
||
|
||
2015-04-22 10:40:22 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* INSTALL:
|
||
Remove INSTALL file
|
||
autotools automatically generate this, and when using different versions
|
||
for autogen.sh there will always be changes to a file tracked by git.
|
||
|
||
2015-04-08 15:57:59 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* .gitignore:
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* m4/Makefile.am:
|
||
Add m4 directory so aclocal doesn't complain in autogen.sh
|
||
Might come in handy, and these warnings seem to be
|
||
fatal in some environments.
|
||
You may need to git clean -x -d -f your tree before
|
||
git pulling/merging.
|
||
|
||
2015-04-07 22:25:57 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* INSTALL:
|
||
* autogen.sh:
|
||
Update autogen.sh to latest version
|
||
|
||
2015-04-03 18:58:17 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From bc76a8b to c8fb372
|
||
|
||
2015-03-06 12:12:49 +0000 Luis de Bethencourt <luis.bg@samsung.com>
|
||
|
||
* omx/gstomxaacdec.c:
|
||
omxaudiodec: add comment explaining duplicate code path
|
||
|
||
2015-03-06 12:09:06 +0000 Luis de Bethencourt <luis.bg@samsung.com>
|
||
|
||
* omx/gstomxaacdec.c:
|
||
Revert "omxaudiodec: remove duplicate code path"
|
||
This reverts commit a8d26ff27a8b43f589424a59294f9057641b2a46.
|
||
|
||
2015-03-06 12:03:56 +0000 Luis de Bethencourt <luis.bg@samsung.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: handle both errors in the two steps of update_port_definition
|
||
Also consider potential errors in the _get_parameter() in the return of the
|
||
update_port_definition function.
|
||
CID #1287052
|
||
|
||
2015-03-06 10:57:53 +0000 Luis de Bethencourt <luis.bg@samsung.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: impossible if statement
|
||
ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
|
||
for it to be anything else at the if check. Remove the if check.
|
||
CID #1287053
|
||
|
||
2015-03-06 10:54:43 +0000 Luis de Bethencourt <luis.bg@samsung.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: impossible if statement
|
||
ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
|
||
for it to be anything else at the if check. Remove it.
|
||
CID #1287054
|
||
|
||
2015-03-06 10:50:30 +0000 Luis de Bethencourt <luis.bg@samsung.com>
|
||
|
||
* omx/gstomxaacdec.c:
|
||
omxaudiodec: remove duplicate code path
|
||
|
||
2014-12-19 11:19:55 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: call handle_messages() only once in acquire_buffer() to avoid potential deadlock
|
||
There is one rare case where calling handle_messages() more than once can cause a deadlock
|
||
in the video decoder element:
|
||
- sink pad thread starts the src pad task (gst_omx_video_dec_loop())
|
||
- _video_dec_loop() calls gst_omx_port_acquire_buffer() on dec_out_port
|
||
- blocks in gst_omx_component_wait_message() releasing comp->lock and comp->messages_lock
|
||
(initially, there are no buffers configured on that port, so it waits for OMX_EventPortSettingsChanged)
|
||
- the sink pad thread pushes a buffer to the decoder with gst_omx_port_release_buffer()
|
||
- _release_buffer() grabs comp->lock and sends the buffer to OMX, which consumes it immediately
|
||
- EmptyBufferDone gets called at this point, which signals _wait_message() to unblock
|
||
- the message from EmptyBufferDone is processed in gst_omx_component_handle_messages()
|
||
called from gst_omx_port_release_buffer()
|
||
- gst_omx_port_release_buffer releases comp->lock
|
||
- the src pad thread now gets to run, grabbing comp->lock while it exits from _wait_message()
|
||
- _acquire_buffer() calls the _handle_messages() on the next line after _wait_message(),
|
||
which does nothing (no pending messages)
|
||
- then it goes to "retry:" and calls _handle_messages() again, which also does nothing
|
||
(still no pending messages)
|
||
- scheduler switches to a videocore thread that calls EventHandler, informing us about the
|
||
OMX_EventPortSettingsChanged event that just arrived
|
||
- EventHandler graps comp->messages_lock, but not comp->lock, so it can run in parallel at
|
||
this point just fine.
|
||
- scheduler switches back to the src pad thread (which is in the middle of _acquire_buffer())
|
||
- the next _handle_messages() which is right before if (g_queue_is_empty (&port->pending_buffers))
|
||
processes the OMX_EventPortSettingsChanged
|
||
- the buffer queue is still empty, so that thread blocks again in _wait_message()
|
||
- the sink pad thread tries to acquire the next input port buffer
|
||
- _acquire_buffer() also blocks this thread in:
|
||
if (comp->pending_reconfigure_outports) { ... _wait_message() ... }
|
||
- DEADLOCK. gstreamer is waiting for omx to do something, omx waits for gstreamer to do something.
|
||
By removing those extra _handle_messages() calls, we can ensure that all the checks of
|
||
_acquire_buffer() will re-run. In the above case, after the scheduler switches back to
|
||
the middle of _acquire_buffer(), the code will enter _wait_message(), which will see that
|
||
there are pending messages and will return immediately, going back to "retry:" and
|
||
re-doing all the checks properly.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=741854
|
||
|
||
2015-02-26 09:27:44 +0900 Wonchul Lee <chul0812@gmail.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: cleanup code a bit to remove else statement
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=745191
|
||
|
||
2015-01-12 16:13:35 +0100 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From f2c6b95 to bc76a8b
|
||
|
||
2014-12-18 10:56:15 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ef1ffdc to f2c6b95
|
||
|
||
2014-11-27 17:12:42 +0100 Edward Hervey <bilboed@bilboed.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 7bb2bce to ef1ffdc
|
||
|
||
2014-11-13 09:55:02 +0900 Jun Ji <jun.ji@lge.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxamrdec.c:
|
||
* omx/gstomxamrdec.h:
|
||
omx: Add omxamrdec
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=739333
|
||
|
||
2014-10-27 18:00:50 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 84d06cd to 7bb2bce
|
||
|
||
2014-10-21 13:03:44 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From a8c8939 to 84d06cd
|
||
|
||
2014-10-21 13:00:10 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 1f5d3c3 to a8c8939
|
||
|
||
2014-09-30 10:47:20 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: Clean up code a bit to get rid of useless NULL checks
|
||
|
||
2014-09-30 10:50:07 +0900 junji <jun.ji@lge.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: Unmap input buffers after usage
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=736314
|
||
|
||
2014-08-31 20:30:13 +0000 Michal Lazo <michal.lazo@mdragon.org>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Setup aspect ratio on RPi
|
||
Needs firmware from yesterday or newer to work with all possible
|
||
aspect ratios. Before that it only supported a fixed list.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732533
|
||
|
||
2014-08-28 10:44:31 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
|
||
|
||
2014-08-28 10:43:22 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Use the base class' open/close vfuncs instead of calling them ourselves
|
||
|
||
2014-08-26 22:13:53 -0500 Peng Liu <pengliu.mail@gmail.com>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
|
||
Fix a video encoder stall problem on RPi when changing the aspect ratio.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732533
|
||
|
||
2014-08-14 17:36:11 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudiodec.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omx: Let base classes handle EOS
|
||
https://bugzilla.gnome.org//show_bug.cgi?id=734774
|
||
|
||
2014-08-14 17:33:07 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: Fix flushing logic and make it more similar to the video decoder
|
||
|
||
=== release 1.2.0 ===
|
||
|
||
2014-07-23 11:28:12 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* ChangeLog:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
* omx/Makefile.am:
|
||
Release 1.2.0
|
||
|
||
2014-07-22 09:23:00 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* config/bellagio/gstomx.conf:
|
||
* config/rpi/gstomx.conf:
|
||
config: Update ranks to PRIMARY+1 to have higher preference than avdec_*
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=732161
|
||
|
||
2014-07-20 17:46:30 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiosink.c:
|
||
omxaudiosink: Set port to not flushing in prepare() and keep it at flushing in unprepare()
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=733168
|
||
|
||
2014-07-13 22:15:18 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaacdec.c:
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudiodec.h:
|
||
* omx/gstomxmp3dec.c:
|
||
omxaudiodec: Implement setting of fallback channel positions
|
||
|
||
2014-07-13 18:22:39 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxaacdec.c:
|
||
* omx/gstomxaacdec.h:
|
||
* omx/gstomxmp3dec.c:
|
||
omx: Add AAC audio decoder
|
||
|
||
2014-07-02 09:22:28 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: Get PCM parameters from the out port, not the in port
|
||
|
||
2014-05-15 13:24:39 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiodec.c:
|
||
omxaudiodec: 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-10 23:12:54 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxaudiodec.c:
|
||
* omx/gstomxaudiodec.h:
|
||
* omx/gstomxmp3dec.c:
|
||
* omx/gstomxmp3dec.h:
|
||
omx: Add audio decoder base class and a subclass for MP3
|
||
|
||
2014-07-01 09:38:01 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
omx: Link to gmodule-2.0-no-export for being able to use the g_module_*() API
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=732518
|
||
|
||
2014-06-30 15:00:54 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: #define GST_USE_UNSTABLE_API for libgstgl
|
||
|
||
2014-06-29 19:10:19 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264enc.h:
|
||
omxh264enc: Properly accumulate headers and push before the next frame
|
||
Fixes output of encoding on RPi, where each header buffer (SPS and PPS)
|
||
is in a separate OMX buffer.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726669
|
||
|
||
2014-06-29 19:04:54 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Implement flush() instead of the deprecated reset()
|
||
|
||
2014-06-25 17:14:18 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: It's 44100Hz, not 41400Hz
|
||
|
||
2014-06-25 11:12:51 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
configure.ac: require gstgl >= 1.3.3
|
||
|
||
2014-04-25 13:25:05 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
example: enable testegl
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=728940
|
||
|
||
2014-06-25 10:19:54 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* examples/egl/testegl.c:
|
||
testegl: do matrix mutlplication in the shader
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=728940
|
||
|
||
2014-06-25 09:36:38 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* examples/egl/testegl.c:
|
||
testegl: add a comment for the parse command
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=728940
|
||
|
||
2014-04-25 17:32:16 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* examples/egl/Makefile.am:
|
||
* examples/egl/cube_texture_and_coords.h:
|
||
* examples/egl/testegl.c:
|
||
testegl: convert code from GLESv1 to GLESv2
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=728940
|
||
|
||
2014-04-25 13:21:59 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* examples/egl/Makefile.am:
|
||
* examples/egl/testegl.c:
|
||
testegl: port to gstgl API
|
||
- append a glfilter just before fakesink
|
||
So that we get gltexture or eglimages
|
||
- propagate our EGLDisplay to the pipeline
|
||
see GST_QUERY_CONTEXT
|
||
- share our EGLContext with the iternal gl context
|
||
of the pipeline, see GST_QUERY_ALLOCATION
|
||
- use GstVideoGLTextureUploadMeta to upload
|
||
the incoming gltexture or eglimage to our gl texture
|
||
TODO: convert from GLESv1 to GLESv2
|
||
See https://bugzilla.gnome.org/show_bug.cgi?id=728940
|
||
|
||
2014-06-24 14:52:58 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxbufferpool.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxbufferpool: Copy buffers if the stride does not match and we can't use video meta
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=731672
|
||
|
||
2014-06-24 14:52:43 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvp8dec.h:
|
||
omx: Only include OMX_VideoExt.h conditionally
|
||
It does not exist on the RPi for example.
|
||
|
||
2014-06-24 13:59:44 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* configure.ac:
|
||
configure.ac: Require GStreamer core/base >= 1.2.2
|
||
Needed at least for gst_video_decoder_release_frame().
|
||
|
||
2014-06-24 13:02:13 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: Fix format string compiler warning
|
||
|
||
2014-06-22 21:11:45 +0000 Michal Lazo <xlazom00@gmail.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: Initialize debug category
|
||
|
||
2014-06-24 12:42:22 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
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 11:11:28 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
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 10:22:37 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideo.h:
|
||
omxvideo: Include the separate headers too for compatibility with 1.0.x
|
||
|
||
2014-03-24 16:09:40 +0800 Zhao, Halley <halley.zhao@intel.com>
|
||
|
||
* configure.ac:
|
||
* omx/gstomxvp8dec.h:
|
||
omxvp8dec: use VP8 definition from OMX_VideoExt.h
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726957
|
||
|
||
2014-03-24 15:33:26 +0800 Zhao, Halley <halley.zhao@intel.com>
|
||
|
||
* configure.ac:
|
||
configure: add --with-omx-header-path option for external omx headers
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726957
|
||
|
||
2014-06-18 23:04:33 +0200 Aurélien Zanelli <aurelien.zanelli@darkosphere.fr>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix a query leak
|
||
Also add a debug message if query fails.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=731898
|
||
|
||
2014-05-30 15:29:15 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
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
|
||
|
||
2013-06-27 21:59:29 +0900 Kazunori Kobayashi <kkobayas@igel.co.jp>
|
||
|
||
* omx/gstomx.c:
|
||
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-02 15:34:09 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: add missing stream unlock in error path
|
||
|
||
2014-05-31 15:12:05 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
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-26 11:02:10 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't leak buffer pool config in error cases
|
||
CID 1216158
|
||
|
||
2014-05-21 10:53:43 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 211fa5f to 1f5d3c3
|
||
|
||
2014-05-19 09:10:07 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Don't forget to unref codec state
|
||
CID 1214603
|
||
|
||
2014-05-19 09:08:33 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make output buffer pointer always initialized
|
||
CID 1214605
|
||
|
||
2014-05-19 09:06:42 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Check return value of gst_buffer_map()
|
||
CID 1214599
|
||
|
||
2014-05-19 09:04:09 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Check return value of gst_omx_port_set_enabled() for errors
|
||
CID 1214589
|
||
|
||
2014-05-19 09:01:46 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Check return values of buffer pool config parsing functions
|
||
CID 1214588
|
||
|
||
2014-05-19 08:48:50 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
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:47:36 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix comparisons in gst_omx_state_to_string() case to actually make sense
|
||
CID 1214593
|
||
|
||
2014-05-19 08:45:10 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Make sure to compare the error codes as unsigned integers so that comparisons >2**31 actually work
|
||
CID 1214592
|
||
|
||
2014-05-19 08:40:23 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix comparisons in gst_omx_command_to_string() default cause to actually work
|
||
CID 1214591
|
||
|
||
2014-05-15 13:22:56 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
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:21:07 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
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 10:58:34 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
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-12 12:33:32 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxaudiosink.c:
|
||
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 08:56:15 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND
|
||
|
||
2014-05-10 22:48:23 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing
|
||
|
||
2014-05-10 22:47:56 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Set nTickCount based on the buffer's duration instead of something wrong
|
||
|
||
2014-05-10 22:47:21 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong calculation
|
||
|
||
2014-05-10 22:46:51 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudiosink.c:
|
||
omxaudiosink: Fix format string compiler warnings
|
||
|
||
2014-04-04 14:11:58 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxanalogaudiosink.c:
|
||
* omx/gstomxanalogaudiosink.h:
|
||
* omx/gstomxaudiosink.c:
|
||
* omx/gstomxaudiosink.h:
|
||
* omx/gstomxhdmiaudiosink.c:
|
||
* omx/gstomxhdmiaudiosink.h:
|
||
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-03 10:17:35 +0200 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From bcb1518 to 211fa5f
|
||
|
||
2014-04-29 15:16:16 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
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-04-23 09:57:48 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvp8dec.h:
|
||
omxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=728774
|
||
|
||
2014-04-16 11:00:55 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: don't unref caps before logging field from it
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=728322
|
||
|
||
2014-04-15 17:30:13 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
example: disable testegl since libgstegl has been removed
|
||
As decided in bug #703343
|
||
Not compatible with the new libgstgl API.
|
||
A portage has been started, attachment 272800.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703343
|
||
|
||
2014-04-15 17:11:08 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
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 17:06:38 +0100 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* examples/Makefile.am:
|
||
* omx/Makefile.am:
|
||
* omx/gstomxvideodec.c:
|
||
configure.ac: check for libgstgl since libgstegl has been removed
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=703343
|
||
|
||
2014-04-09 18:52:16 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: add support of more color format
|
||
Add support for ABGR, ARGB, RGB16, BGR16, YUY2, UYVY, YVYU, GRAY8 and
|
||
NV16 color format.
|
||
|
||
2014-04-09 18:51:57 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: simplify color format conversion in fill_buffer function
|
||
|
||
2014-04-09 18:51:41 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
omxbufferpool: make video stride and offset calculation easier
|
||
It will be easier to support more color format.
|
||
|
||
2014-04-09 18:51:12 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com>
|
||
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideo.h:
|
||
* omx/gstomxvideodec.c:
|
||
omx: add an helper to convert OMX color format to GStreamer color format
|
||
|
||
2014-03-10 17:43:50 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
* omx/gstomxvideodec.c:
|
||
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-27 13:57:32 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: fix several memory leaks in the testegl example
|
||
Ensure to call to image_data_free in order to release GPU resources.
|
||
Also ensure to destroy EGLImage and GLTexture from proper
|
||
thread/context.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726107
|
||
|
||
2014-03-25 17:16:31 +0000 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: keep a ref on the buffer instead of the memory
|
||
Like in eglglessink
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726107
|
||
|
||
2014-03-07 20:08:05 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
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-01-29 18:31:26 +0000 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: use flush because reset is deprecated
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726038
|
||
|
||
2014-01-27 17:03:50 +0000 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
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-24 17:49:59 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
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-19 12:12:49 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
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-18 23:36:59 +0100 Michal Lazo <xlazom00@gmail.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264enc.h:
|
||
fix filemode
|
||
|
||
2014-03-17 09:57:11 +0000 Julien Isorce <julien.isorce@collabora.co.uk>
|
||
|
||
* omx/gstomxbufferpool.c:
|
||
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-16 17:32:05 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: Fix compiler warnings
|
||
|
||
2014-03-16 17:19:08 +0100 Michal Lazo <xlazom00@gmail.com>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264enc.h:
|
||
omxh264enc: IDR interval, SPS and PPS headers for rpi
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=720031
|
||
|
||
2014-03-13 14:26:58 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideo.c:
|
||
omxvideo: fix debug category initialisation
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726024
|
||
|
||
2014-03-13 19:04:47 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxbufferpool.h:
|
||
omxbufferpool: add proper type definitions
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726325
|
||
|
||
2014-03-02 10:30:04 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: consolidate message waiting code
|
||
Add a wait_message helper function and remove all those duplicated code.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=725493
|
||
|
||
2014-03-12 12:48:12 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideo.c:
|
||
omx: Copy old copyright notice into the new file
|
||
|
||
2014-03-12 12:47:34 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideo.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Rename function from _4_ to _for_ for clarity
|
||
|
||
2014-03-03 16:15:24 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomxvideo.c:
|
||
* omx/gstomxvideo.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideo: start sharing more code between video decoder and encoder
|
||
Identical functionality spread of two different components.
|
||
We can't use a common base class because of different inheritance,
|
||
but let's try to share the code anyway.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726024
|
||
|
||
2014-03-12 12:43:49 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* examples/egl/Makefile.am:
|
||
examples: Only build RPi EGL example if RPi was chosen as target
|
||
|
||
2014-03-12 12:42:23 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxbufferpool.h:
|
||
omxbufferpool: Fix header include guard
|
||
|
||
2014-03-05 11:41:02 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomxbufferpool.c:
|
||
* omx/gstomxbufferpool.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: separate the buffer pool from the decoder
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726025
|
||
|
||
2014-03-04 17:41:20 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omx: simplify tunnel functions
|
||
Specifying the component is error prone and unnecessary.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=726021
|
||
|
||
2014-03-07 17:12:24 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix memory leak in gst_omx_video_dec_allocate_output_buffers
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=725907
|
||
|
||
2014-03-07 13:18:49 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix memory leak gst_omx_video_dec_negotiate
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=725907
|
||
|
||
2014-03-05 18:54:05 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: fix a memory leak in gst_omx_video_enc_getcaps
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=725826
|
||
|
||
2014-03-05 17:43:33 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* Makefile.am:
|
||
Makefile.am: build examples
|
||
There's no reason to not build the examples now that are ported to 1.x.
|
||
|
||
2014-03-05 17:25:09 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: avoid a clashing name with the recently added GstEGLImagePool
|
||
Fixes build with current master.
|
||
|
||
2013-09-05 03:41:10 -0600 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: simplify _find_nearest_frame
|
||
Just the same as we did with the decoder. Also give the
|
||
function a gst_omx_video_enc prefix to distinct it from
|
||
the decoder function.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724236
|
||
|
||
2013-09-05 02:23:39 -0600 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: simplify _find_nearest_frame
|
||
No need to make it more complicated and error prone than
|
||
necessary. Also give the function a gst_omx_video_dec prefix
|
||
to distinct it from the encoder function.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724236
|
||
|
||
2013-09-05 02:05:52 -0600 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: remove dead code
|
||
This code doesn't seems to be used for quite a while,
|
||
remove it before it starts to rot.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=724236
|
||
|
||
2014-03-01 22:28:24 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fix two serious message handling bugs
|
||
Waiting for the next message if we already got one
|
||
is nonsense and can lead to lockups.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=725468
|
||
|
||
2014-03-01 18:49:41 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: fix startup race condition
|
||
The reset function shouldn't start the src pad
|
||
loop if it wasn't started before.
|
||
Signed-off-by: Christian König <christian.koenig@amd.com>
|
||
|
||
2014-03-01 18:48:17 +0100 Christian König <christian.koenig@amd.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix startup race condition
|
||
The reset function shouldn't start the src pad
|
||
loop if it wasn't started before.
|
||
Signed-off-by: Christian König <christian.koenig@amd.com>
|
||
|
||
2014-02-28 09:36:13 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From fe1672e to bcb1518
|
||
|
||
2014-02-26 22:15:00 +0100 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 1a07da9 to fe1672e
|
||
|
||
2014-01-30 10:45:18 +0100 Edward Hervey <bilboed@bilboed.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From d48bed3 to 1a07da9
|
||
|
||
2014-01-25 17:44:14 +0100 Sebastian Dröge <sebastian@centricular.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Don't handle FLUSHING and NOT_LINKED as errors
|
||
Also don't stop the task on NOT_LINKED. We're not a demuxer.
|
||
|
||
2013-12-22 22:35:31 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From dbedaa0 to d48bed3
|
||
|
||
2013-11-05 11:22:02 +0000 Tim-Philipp Müller <tim@centricular.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 865aa20 to dbedaa0
|
||
|
||
2013-09-28 13:32:37 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: simplify the thread synchronization code
|
||
Make everithing more simple and fix the races conditions remaining in
|
||
the previous approaches.
|
||
|
||
2013-09-25 19:17:17 +0200 Sebastian Dröge <slomo@circular-chaos.org>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: The WMV/VC1 decoder can only do WMV9 and VC1, no older versions
|
||
|
||
2013-09-24 18:34:42 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 6b03ba7 to 865aa20
|
||
|
||
2013-09-24 18:48:24 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: fix another race condition
|
||
Fix a race condition that caused randome deadlocks on EOS.
|
||
|
||
2013-09-20 17:19:53 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: fix a copy paste error in the config file
|
||
|
||
2013-09-20 17:09:52 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: fix a race condition when seeking
|
||
Fixes a race condition that caused pipeline deadlock during seeks.
|
||
|
||
2013-09-20 10:38:12 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: display QoS statistics
|
||
|
||
2013-09-20 09:34:37 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: use dedicated thread for rendering the scene
|
||
Produces smother animation and prevents dropping frames due busy
|
||
mainloop.
|
||
|
||
2013-09-20 08:25:21 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: don't force an specific audio sink
|
||
Let playbin2 choose the audiosink available in the system.
|
||
|
||
2013-09-20 08:19:48 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* examples/egl/Makefile.am:
|
||
examples: drop remnants of initial appsink attempt
|
||
|
||
2013-09-20 16:18:18 +0200 Edward Hervey <edward@collabora.com>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From b613661 to 6b03ba7
|
||
|
||
2013-09-19 18:45:36 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 74a6857 to b613661
|
||
|
||
2013-09-19 17:38:30 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 01a7a46 to 74a6857
|
||
|
||
2013-08-20 16:00:07 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomxvideodec.c:
|
||
omx: don't use the 'z' modifier to print size_t
|
||
gcc will warn in some cases even if the size of the type
|
||
is exactly that of size_t on the platform.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=699008
|
||
|
||
2013-07-01 15:48:47 +0200 Roman Arutyunyan <arutyunyan.roman@gmail.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
gstomxvideoenc: Set bitrate in setcaps
|
||
Otherwise it gets lost whenever we configure new caps
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=698049
|
||
|
||
2013-06-30 18:17:05 +0700 Ilya Smelykh <ilya@videoexpertsgroup.com>
|
||
|
||
* examples/egl/testegl.c:
|
||
examples: enable audio in testegl example
|
||
|
||
2013-06-12 09:38:22 +0200 Sebastian Dröge <slomo@circular-chaos.org>
|
||
|
||
* configure.ac:
|
||
configure: Allow build without gstreamer-egl
|
||
|
||
2013-06-07 12:39:18 +0700 Ilya Smelykh <ilya@videoexpertsgroup.com>
|
||
|
||
* examples/egl/Makefile.am:
|
||
* examples/egl/testegl.c:
|
||
examples: testegl example port to 1.x
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=701706
|
||
|
||
2013-06-05 15:17:16 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 098c0d7 to 01a7a46
|
||
|
||
2013-05-20 12:06:34 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Take lock on EOS to update the flow return value
|
||
Fixes "GThread-ERROR **: file gthread-posix.c: line 171
|
||
(g_mutex_free_posix_impl): error 'Device or resource busy' during
|
||
'pthread_mutex_destroy ((pthread_mutex_t *) mutex)'" in _finalize.
|
||
|
||
2013-05-15 10:54:12 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 5edcd85 to 098c0d7
|
||
|
||
2013-04-11 17:35:19 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* examples/Makefile.am:
|
||
* examples/egl/Makefile.am:
|
||
* examples/egl/cube_texture_and_coords.h:
|
||
* examples/egl/testegl.c:
|
||
examples: add an example aplication based OpenGL ES + EGL
|
||
Application that shows how to integrate playbin with an OpenGL ES
|
||
scene through EGL. Renders a video on the surfaces of an animated cube.
|
||
The code is not ported to 1.x so it's not built by default.
|
||
|
||
2013-05-10 12:25:07 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Redesign video size change reconfiguration code
|
||
Ensure stop the decoder before clossing the tunnel.
|
||
|
||
2013-05-06 16:25:27 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
Makefile.am: Add -I common/m4
|
||
This allows autoreconf to work correctly and automatic regeneration
|
||
of autotools files if something changed.
|
||
|
||
2013-05-06 19:03:59 +0530 jitendra <jvarshney20@gmail.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Add pads based on element type
|
||
This allows to later add sources and sink that only have a srcpad
|
||
or sinkpad.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=699754
|
||
|
||
2013-04-27 02:50:25 +0200 Carlos Rafael Giani <dv@pseudoterminal.org>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fixed type error in printf call
|
||
%zu expects size_t
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=699008
|
||
|
||
2013-04-08 17:26:16 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
* omx/gstomxvideodec.c:
|
||
Check for gstreamer-egl
|
||
And don't use if not available.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=697574
|
||
|
||
2013-04-23 09:53:18 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* configure.ac:
|
||
configure: error out if no OMX target has been set explicitly with --with-omx-target=x
|
||
Avoids people building for e.g. the Raspberry Pi and then wondering
|
||
why things don't work as expected (since structs are packed differently
|
||
there).
|
||
|
||
2013-04-22 23:55:03 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 3cb3d3c to 5edcd85
|
||
|
||
2013-04-18 22:07:28 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: more printf format fixes
|
||
Fix printf formats again, so that gst-omx compiles warning-
|
||
free on the Raspberry Pi as well. Unfortunately OMX_UINT32
|
||
maybe be typedefed to uint32_t or unsigned long, which
|
||
doesn't work well with our debugging printf format strings,
|
||
so just use %u for those and cast to guint.
|
||
|
||
2013-04-18 16:40:06 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fixes unused variable 'comp' when GStreamer is built without debug
|
||
|
||
2013-04-18 16:03:56 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: don't use 'self->dec_out_port' anymore and use just 'port'
|
||
Fixes some criticals.
|
||
|
||
2013-04-18 15:21:32 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fixes 'port' may be used uninitialized in this function
|
||
|
||
2013-04-18 12:03:31 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: silence warnings building for RPI related to 'vcos_*'
|
||
|
||
2013-04-18 11:19:52 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Use new type from libgstvideo
|
||
|
||
2013-04-16 14:50:49 +0530 jitendra <jvarshney20@gmail.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Disable output port before transition to idle state
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=698109
|
||
|
||
2012-10-24 12:19:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
gst: Add better support for static plugins
|
||
|
||
2013-04-14 17:57:34 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From aed87ae to 3cb3d3c
|
||
|
||
2013-04-12 17:58:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
configure: add --disable-fatal-warnings for disabling -Werror
|
||
|
||
2013-04-09 21:02:09 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 04c7a1e to aed87ae
|
||
|
||
2013-04-08 17:02:32 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: fix printf formats in debug messages
|
||
OMX_U32 is typedefed to an unsigned long,
|
||
OMX_TICKS to a 64-bit integer.
|
||
|
||
2013-04-08 16:52:19 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: use the correct printf format in a debug message
|
||
|
||
2013-04-08 16:31:33 +0200 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: use the correct OMX_IndexParam value
|
||
Fixes playback is not smooth in the EGL path.
|
||
|
||
2013-04-05 13:45:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't use API that is not in master yet
|
||
It's not really needed here yet, will be needed in future versions
|
||
|
||
2013-02-25 11:55:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Add support for egl_render on RPi
|
||
|
||
2013-03-22 19:26:54 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
Back to development
|
||
|
||
2013-03-22 19:23:14 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omx: fix compiler warnings when compiling with -DG_DISABLE_ASSERT
|
||
As we do for releases. Fixes 'variable may be used uninitialized'
|
||
warnings.
|
||
|
||
=== release 1.0.0 ===
|
||
|
||
2013-03-22 17:16:33 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* AUTHORS:
|
||
* ChangeLog:
|
||
* Makefile.am:
|
||
* NEWS:
|
||
* RELEASE:
|
||
* configure.ac:
|
||
* gst-omx.doap:
|
||
Release 1.0.0
|
||
|
||
2013-03-19 16:40:09 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomxtheoradec.h:
|
||
* omx/gstomxvp8dec.h:
|
||
omx: fix typo in copyright headers
|
||
|
||
2013-03-19 13:46:33 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: Fix commit that added the VC1 decoder
|
||
|
||
2013-03-19 13:27:35 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxmjpegdec.c:
|
||
* omx/gstomxmpeg2videodec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxtheoradec.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvp8dec.c:
|
||
* omx/gstomxwmvdec.c:
|
||
omx: Add more constraints to the default sink template caps
|
||
|
||
2013-03-19 13:10:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: Add VC1/WMV3 decoder
|
||
WMV2 and WMV1 (aka WMV 1-8) are not supported by RPi.
|
||
|
||
2013-03-19 12:59:20 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: Add MJPEG decoder
|
||
|
||
2013-03-19 12:56:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: Add VP8 decoder
|
||
|
||
2013-03-19 12:55:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Set ENDOFFRAME flag for the end of frames
|
||
|
||
2013-03-19 12:28:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: Add Theora decoder to the config
|
||
|
||
2013-03-19 09:36:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxtheoradec.c:
|
||
* omx/gstomxtheoradec.h:
|
||
omx: Add Theora decoder
|
||
|
||
2013-03-18 16:43:24 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Remove additional comma
|
||
|
||
2013-03-18 16:34:21 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxmpeg2dec.h:
|
||
* omx/gstomxmpeg2videodec.c:
|
||
* omx/gstomxmpeg2videodec.h:
|
||
omx: Rename MPEG2 decoder for consistency everywhere
|
||
|
||
2013-03-18 16:30:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxmjpegdec.c:
|
||
* omx/gstomxmjpegdec.h:
|
||
omx: Add MJPEG decoder support
|
||
|
||
2013-03-18 16:06:54 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxvp8dec.c:
|
||
* omx/gstomxvp8dec.h:
|
||
omx: Add VP8 decoder support
|
||
|
||
2013-03-18 15:44:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
rpi: Add h263 decoder and rename MPEG2 decoder for consistency
|
||
|
||
2013-03-16 13:20:27 +0000 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* omx/gstomxmpeg2dec.c:
|
||
omxmpeg2dec: mpeg-2 decoder should be able to handle mpeg-1 too
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=695879
|
||
|
||
2013-03-16 10:13:06 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: minor stylistic change for consistency with other similar code
|
||
|
||
2013-03-16 10:00:24 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Clarify that loop task is also paused in EOS
|
||
|
||
2013-03-16 09:59:01 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenec: Don't forget propagate flow return value upstream
|
||
|
||
2013-03-15 13:16:39 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: improve debug logging some more
|
||
|
||
2013-03-15 14:09:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make sure that the first frame we pass to OpenMAX is a sync frame
|
||
|
||
2013-03-15 11:46:34 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Stop output port task after draining
|
||
|
||
2013-03-15 10:58:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Reset EOS flag in more places
|
||
|
||
2013-03-15 10:38:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Deallocate output buffers with the right function
|
||
|
||
2013-03-15 01:06:05 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: log commands as strings
|
||
Makes logs easier to read.
|
||
|
||
2013-03-15 00:47:47 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: log states as strings
|
||
|
||
2013-03-15 00:28:02 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: log component name in debug messages
|
||
Useful when we have more different components
|
||
active at the same time.
|
||
|
||
2013-03-15 09:51:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't interpolate timestamps
|
||
We will get exactly one frame per input buffer and assigning
|
||
timestamps between frames if more than one OMX buffer is required
|
||
per frame easily confuses timestamp tracking in OMX.
|
||
|
||
2013-03-15 09:32:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Give the codec_data the timestamp of the first frame and no duration
|
||
|
||
2013-03-14 17:31:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
omx: The MPEG4 encoder is not available on RPi and probably never will
|
||
|
||
2013-03-14 17:26:30 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Reset some more buffer fields as required
|
||
|
||
2013-03-14 17:01:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
omx: The hack to disable usage of EOS buffers is not necessary anymore on RPi
|
||
|
||
2013-03-14 17:00:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Reset the flags for output ports when releasing a buffer, not for input ports
|
||
|
||
2013-03-14 15:03:02 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omx: Only unref caps after usage of its fields
|
||
|
||
2013-03-14 14:51:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Simplify bufferpool implementation
|
||
|
||
2013-03-13 13:23:35 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Improve min/max buffer counts handling
|
||
|
||
2013-03-14 12:49:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Handle the OMX_EventBufferFlag to detect EOS too
|
||
|
||
2013-03-13 10:29:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Mark OpenMAX buffers as EGLImage if they contain one
|
||
Needs special handling in some places, e.g. because nFilledLen
|
||
will always be 0.
|
||
|
||
2013-03-13 10:21:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Properly check the nVersion field
|
||
|
||
2013-03-13 09:34:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that
|
||
|
||
2013-03-12 20:02:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make sure to always get the right buffer
|
||
|
||
2013-03-12 19:35:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make sure the buffer is released to the pool if it's not the one we wanted
|
||
|
||
2013-03-12 19:17:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Drop too late frames instead of finishing them
|
||
|
||
2013-03-12 19:16:46 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omx: Release buffers to the correct port
|
||
|
||
2013-03-13 09:37:02 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL
|
||
|
||
2013-03-12 18:20:22 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Lazy-load symbols of libbcm_host.so
|
||
It exports eglIntOpenMAXILDoneMarker(), which is also
|
||
exported by libopenmaxil.so... but we need the version
|
||
from libopenmaxil.so as the other one is just a stub.
|
||
|
||
2013-03-11 13:59:15 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omx: Don't set profile/level in other encoders if downstream caps don't specify any
|
||
|
||
2013-03-11 13:49:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: If caps specify no profile/level use the component's defaults
|
||
|
||
2013-03-11 13:45:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Always allocate output buffers from the loop function
|
||
|
||
2013-03-11 13:12:57 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: The h264 encoders are supposed to output byte-stream/au
|
||
|
||
2013-03-11 11:47:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Wait until the Executing state is reached before passing buffers to the component
|
||
|
||
2013-03-11 10:39:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't provide buffers to downstream
|
||
This only works reliable if we have a way to tell downstream to
|
||
release all our buffers for reconfiguration.
|
||
|
||
2013-03-11 10:29:44 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Disable output port when setting a new format
|
||
|
||
2013-03-11 10:29:30 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Disable output port when setting a new format
|
||
|
||
2013-03-11 10:22:07 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Disable output port when setting a new format
|
||
Based on a patch by Josep Torra <n770galaxy@gmail.com>
|
||
|
||
2013-03-11 10:04:10 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Catch errors when releasing buffers to a port and handle them
|
||
|
||
2013-03-10 12:09:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Use the correct video codec state when filling an input buffer
|
||
|
||
2013-03-10 12:05:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Store correct input state
|
||
|
||
2013-03-10 11:27:34 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Allocate output buffers as early as possible
|
||
|
||
2013-03-10 11:01:57 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Log unknown events
|
||
|
||
2013-03-09 14:14:40 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Fix deadlock in encoders and add explainatory comments.
|
||
|
||
2013-03-09 13:27:08 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fix printf format identifier
|
||
|
||
2013-03-09 13:07:59 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omx: Minor changes on debuging info
|
||
|
||
2013-03-09 13:00:33 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: avoid a deadlock
|
||
|
||
2013-03-08 15:56:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't forget to populate output port
|
||
|
||
2013-03-08 15:11:27 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Flush and stop srcpad when configuring new caps
|
||
|
||
2013-03-07 17:40:21 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
Revert "omx: use no-component-reconfigure hack on the Raspberry PI"
|
||
This reverts commit e123b2089f69a413241f30a2428ea6edd8f231e7.
|
||
It's not required anymore after the fix from the last commit.
|
||
|
||
2013-03-07 17:38:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Only negotiate a color format with downstream on the initial caps
|
||
|
||
2013-03-07 17:29:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make sure the output port is disabled while we allocate buffers
|
||
|
||
2013-03-07 17:27:05 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Also wait for disabled output ports to be reconfigured
|
||
|
||
2013-03-07 14:10:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream
|
||
|
||
2013-03-07 11:11:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Add timeout to the flush operation and move buffer populating to a separate function
|
||
|
||
2013-03-06 17:33:23 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Remove min buffer count hack for RPi again
|
||
It's not necessary anymore
|
||
|
||
2013-03-06 17:05:51 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Do number of buffers configuration explicitely
|
||
|
||
2013-03-07 11:24:54 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: fixes reconfiguration
|
||
Avoid having fixed fields from previous caps on reconfiguration.
|
||
|
||
2013-03-07 11:02:39 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
omx: use no-component-reconfigure hack on the Raspberry PI
|
||
|
||
2013-03-07 00:03:28 +0000 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 2de221c to 04c7a1e
|
||
|
||
2013-03-01 15:32:47 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: drop unused data member
|
||
|
||
2013-03-01 12:23:54 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omxvideoenc: And set it actually on the right port
|
||
|
||
2013-03-01 12:18:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omxvideoenc: Set the coding type in the subclasses to the specific codec
|
||
|
||
2013-03-01 11:49:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a gboolean
|
||
|
||
2013-03-01 11:44:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideo{dec,enc}: Don't use the input state if it wasn't set yet
|
||
|
||
2013-03-01 11:25:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Only enable the output port after we know the output format
|
||
|
||
2013-03-01 11:24:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Only enable the output port after we know the output format
|
||
|
||
2013-02-28 17:02:31 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Only enable the output port after we know the output format
|
||
|
||
2013-03-01 11:18:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Handle errors more gracefully
|
||
|
||
2013-02-28 15:48:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxmpeg2dec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxwmvdec.c:
|
||
omx: Return the OMX_ERRORTYPE from gst_omx_port_update_port_definition
|
||
|
||
2013-02-28 15:37:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Return port definition update errors
|
||
|
||
2013-02-28 13:57:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/rpi/gstomx.conf:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add hack for RPi for the minimum number of buffers required for a port
|
||
The value in the port definition is invalid and the initial actual
|
||
buffer count should be used.
|
||
|
||
2013-02-28 13:26:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Always tell the component about the right number of buffers that we're going to allocate
|
||
|
||
2013-02-28 13:07:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Invert assertion to let it express what was intended
|
||
|
||
2013-02-28 11:19:07 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Add API for allocating a specific number of buffers and using EGLImages or buffers allocated elsewhere
|
||
|
||
2013-02-27 16:55:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Refactor code flow a bit if output port settings have changed
|
||
|
||
2013-02-27 15:49:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Clean up port settings change handling
|
||
|
||
2013-02-27 11:30:14 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: initialize param structure before using it
|
||
|
||
2013-02-27 10:21:39 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: prevent a NULL pointer access
|
||
|
||
2013-02-26 17:25:49 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: prevent a NULL pointer access
|
||
|
||
2013-02-25 13:11:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix deadlock during reconfiguration
|
||
|
||
2013-02-25 12:38:27 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Auto-detect the port indizes if possible
|
||
|
||
2013-02-25 11:42:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Refactor querying of component supported caps into its own function
|
||
|
||
2013-02-25 10:41:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Refactor waiting for buffers to be released by the component to a separate function
|
||
|
||
2013-01-11 17:44:13 +0000 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add methods to set up and close a tunnel between components
|
||
|
||
2013-02-25 09:15:53 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Rename component variable
|
||
|
||
2013-02-25 09:15:46 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Rename component variable
|
||
|
||
2013-02-25 09:12:22 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Rename component variable
|
||
|
||
2013-02-22 16:27:33 +0100 Josep Torra <n770galaxy@gmail.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: remove duplicated line
|
||
|
||
2013-02-22 10:42:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
Retry loading libbcm_host.so without an absolute path if that failed
|
||
|
||
2013-02-21 20:32:42 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/bellagio/Makefile.am:
|
||
Add missing file from last commit
|
||
|
||
2013-02-21 11:01:28 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/Makefile.am:
|
||
* config/bellagio/gstomx.conf:
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
Add OpenMAX IL target for Bellagio
|
||
Not tested since a very long time though.
|
||
|
||
2013-02-21 10:59:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
Allow using external OpenMAX IL headers
|
||
|
||
2013-02-21 10:14:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* .gitignore:
|
||
Update .gitignore
|
||
|
||
2013-02-21 10:13:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/Makefile.am:
|
||
* config/rpi/Makefile.am:
|
||
* config/rpi/gstomx.conf:
|
||
* configure.ac:
|
||
Install the RPI config when the RPI target is selected
|
||
|
||
2013-02-21 10:08:07 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
Set default hacks for the RPI target and always initialize bcm_host
|
||
|
||
2013-02-21 10:05:37 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
Add configure parameter for setting the OpenMAX IL target
|
||
|
||
2013-02-12 11:55:39 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Add FIXME for the future
|
||
|
||
2013-02-12 11:49:21 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omx: Some minor refactoring and cleanup
|
||
|
||
2013-02-12 11:45:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Don't access the port's buffers array if it wasn't allocated yet
|
||
|
||
2013-02-12 11:44:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Mark an array as const
|
||
|
||
2013-02-12 11:41:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Split enabling/disabling of port into sending the command and waiting for it
|
||
This allows to do anything necessary after sending the command to actually let it finish
|
||
|
||
2013-02-12 11:37:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Flushing is also allowed in Paused state
|
||
|
||
2013-02-12 11:28:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Set stride, slice height and buffer size
|
||
|
||
2013-02-12 11:09:30 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* config/raspberry-pi.conf:
|
||
config: Add h264 and mpeg2 encoders to the raspberry pi config
|
||
Not completely working yet though.
|
||
|
||
2013-02-12 11:03:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Properly negotiate OMX color format with the component
|
||
|
||
2013-02-12 10:53:24 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Implement getcaps() vfunc
|
||
|
||
2013-01-29 21:32:53 +0000 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* configure.ac:
|
||
configure: use 1.0 gstconfig.h to detect disabled subsystems
|
||
Update unused configure check for GStreamer core subsystem
|
||
features from 0.10 to 1.0.
|
||
|
||
2013-01-28 20:44:41 +0100 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From a942293 to 2de221c
|
||
|
||
2013-01-24 14:02:36 +0100 Julian Scheel <julian@jusst.de>
|
||
|
||
* config/raspberry-pi.conf:
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxmpeg2dec.c:
|
||
* omx/gstomxmpeg2dec.h:
|
||
omx: add mpeg2 video decoder
|
||
This adds a decoder class for mpeg2, as well as an extended
|
||
configuration for raspberry pi.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=692446
|
||
Signed-off-by: Julian Scheel <julian@jusst.de>
|
||
|
||
2013-01-18 16:47:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Minimize the time when the messages lock is held
|
||
Fixes a deadlock if any OMX functions are called when the
|
||
messages are handled.
|
||
Thanks to Nicolas Dufresne for noticing.
|
||
|
||
2013-01-18 15:28:20 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: improve debug message when we can't find the config file
|
||
Mention where we looked for the config file.
|
||
|
||
2013-01-18 12:34:38 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
build: fix autogen.sh with automake 1.13
|
||
AM_CONFIG_HEADER -> AC_CONFIG_HEADERS
|
||
|
||
2013-01-17 18:07:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.h:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/gstomxvideoenc.h:
|
||
omx: Fix includes to properly work with the 1.0 releases
|
||
|
||
2013-01-15 15:08:28 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From a72faea to a942293
|
||
|
||
2013-01-15 14:34:45 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Update port definition when changing some port setting
|
||
|
||
2013-01-14 11:41:57 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
omx: Rename from libgstopenmax.so to ligstomx.so for consistency
|
||
|
||
2013-01-11 15:32:22 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Add a method to send message
|
||
|
||
2013-01-11 15:44:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Atomic ops are not required anymore for the reconfiguration
|
||
|
||
2013-01-11 12:52:10 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Fix some memory leaks and suboptimal locking
|
||
|
||
2013-01-11 12:34:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Don't forget to unmap frame in error cases
|
||
|
||
2013-01-11 12:29:20 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix copying of the video frames to the OMX buffers
|
||
|
||
2013-01-11 12:24:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix copying of the video frames from the OMX buffers
|
||
|
||
2013-01-10 14:44:33 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
omx: Implement new approach for locking that should solve all deadlocks on RPi
|
||
No mutex is locked while calling any OpenMAX functions anymore
|
||
and everything from the OpenMAX callbacks is inserted into a message
|
||
queue and handled from outside the callbacks.
|
||
Also there's only a single mutex and condition variable per component
|
||
now for handling anything from OpenMAX callbacks and a single mutex
|
||
for keeping our component/port state sane.
|
||
|
||
2012-12-20 19:30:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Set the OMX buffer nFilledLength field properly
|
||
|
||
2012-12-20 18:48:21 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
omxrecmutex: Fix another race condition when two threads are trying to lock for recursion at the same time
|
||
|
||
2012-12-20 18:16:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
omxrecmutex: Fix yet another race condition that resulted in deadlocks
|
||
|
||
2012-12-20 17:46:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
omx: Fix another race condition in the recursive mutex
|
||
Between lock() and begin_recursion() it was possible for another thread to
|
||
try to do a recursive_lock(). This would block because the mutex was already
|
||
locked(), but not ready for recursive locking yet. unlock() would never
|
||
happen in the original thread because it was waiting for the other thread
|
||
to finish first.
|
||
Happened on the Raspberry Pi.
|
||
|
||
2012-12-20 14:45:18 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
omxrecmutex: Fix a small race condition when unlocking a non-recursive lock
|
||
|
||
2012-12-20 12:30:05 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Fix ununsed variable compiler warning
|
||
|
||
2012-12-20 12:27:47 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: No need to start the srcpad task in ::start() already
|
||
It will be started properly after the caps are set.
|
||
|
||
2012-12-20 12:23:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: OMX_ErrorNoMore is no error and just means we ended iteration
|
||
|
||
2012-12-20 12:20:31 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Improve debug output
|
||
|
||
2012-12-20 12:02:30 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't forget to free a GList
|
||
|
||
2012-12-20 11:56:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Map OMX_COLOR_FormatYUV420PackedPlanar to I420 too
|
||
This is used on the Raspberry Pi.
|
||
|
||
2012-12-20 11:55:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: During negotiation of the output format make sure we use the correct OpenMAX format
|
||
|
||
2012-12-20 11:42:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: If negotiation fails this could also mean that the component can't do it at this point yet
|
||
|
||
2012-12-20 11:40:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Improve format negotiation a bit
|
||
Don't leak caps and make sure to fixate caps.
|
||
|
||
2012-12-19 13:05:28 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
omx: Also initialize nStep field of the OMX structures
|
||
|
||
2012-12-19 13:03:37 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
omx: Initialize struct version with the OMX version we compiled with
|
||
|
||
2012-12-19 12:44:31 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Extract data from the input buffer, not the codec data
|
||
|
||
2012-12-19 12:19:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* tools/listcomponents.c:
|
||
omx: Use has_suffix() instead of has_prefix() for the Broadcom hack
|
||
|
||
2012-12-19 12:08:35 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
* configure.ac:
|
||
* tools/Makefile.am:
|
||
* tools/listcomponents.c:
|
||
tools: Add tool to list all components and their roles
|
||
|
||
2012-12-19 11:31:51 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Add hack to load and initialize libbcm_host.so
|
||
Needed on the Raspberry Pi. Patch based on a patch by
|
||
George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
2012-12-19 11:22:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/gstomx.h:
|
||
configure: Add configure option to pack OpenMAX structures
|
||
This is required to set to 4 for the Raspberry Pi for example.
|
||
|
||
2012-12-19 11:07:44 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
configure: Require GStreamer 1.0.0
|
||
|
||
2012-04-20 17:13:52 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.h:
|
||
omx: Initialize structures to version 1.1.2
|
||
|
||
2012-12-19 09:51:22 +0000 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
* config/Makefile.am:
|
||
* config/raspberry-pi.conf:
|
||
* configure.ac:
|
||
config: Add raspberry-pi configuration in a different directory
|
||
|
||
2012-05-20 20:11:59 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx-raspberry.conf:
|
||
raspberry: Add a gstomx.conf for the Raspberry Pi
|
||
|
||
2012-12-12 17:45:39 +0000 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideoenc.h:
|
||
omx: Fix some compilation errors caused by circular includes
|
||
|
||
2012-11-19 11:29:44 +0000 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 6bb6951 to a72faea
|
||
|
||
2012-11-12 15:14:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Fix refcount problem with frames being dropped because of decoder bugs
|
||
|
||
2012-11-12 11:29:48 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omx: Update to new GLib thread API
|
||
|
||
2012-10-22 14:34:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Use open/close vfuncs
|
||
|
||
2012-10-22 14:28:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Handle video meta correctly
|
||
|
||
2012-06-20 13:11:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideodecoder.h:
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
* omx/gstbasevideoutils.c:
|
||
* omx/gstbasevideoutils.h:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
* omx/gstomxwmvdec.c:
|
||
omx: Port to video base classes from -base
|
||
|
||
2012-10-17 17:57:43 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxwmvdec.c:
|
||
omx: gst_element_class_set_details_simple() -> set_static_metadata()
|
||
|
||
2012-10-06 15:01:11 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 6c0b52c to 6bb6951
|
||
|
||
2012-09-22 16:10:38 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 4f962f7 to 6c0b52c
|
||
|
||
2012-06-21 20:22:13 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fix debug statement
|
||
|
||
2012-06-21 20:21:03 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: use recursive_lock inside set_last_error(), since this function may be called from an event handler
|
||
|
||
2012-08-22 13:31:59 +0200 Stefan Sauer <ensonic@users.sf.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 668acee to 4f962f7
|
||
|
||
2012-08-05 16:42:43 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 94ccf4c to 668acee
|
||
|
||
2012-08-03 19:32:13 +0100 Tim-Philipp Müller <tim@centricular.net>
|
||
|
||
* omx/gstomx.c:
|
||
omx: fix plugin name for new GST_PLUGIN_DEFINE API
|
||
|
||
2012-07-23 08:47:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 98e386f to 94ccf4c
|
||
|
||
2012-07-10 09:57:09 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
omx: Update for allocation query API changes
|
||
|
||
2012-06-20 11:09:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Fix compilation after gst_pad_start_task() API changes
|
||
|
||
2012-06-08 15:06:35 +0200 Edward Hervey <edward.hervey@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 03a0e57 to 98e386f
|
||
|
||
2012-06-06 18:20:18 +0200 Edward Hervey <edward.hervey@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 1fab359 to 03a0e57
|
||
|
||
2012-06-01 10:30:27 +0200 Edward Hervey <edward.hervey@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From f1b5a96 to 1fab359
|
||
|
||
2012-05-31 13:10:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 92b7266 to f1b5a96
|
||
|
||
2012-05-30 12:47:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From ec1c4a8 to 92b7266
|
||
|
||
2012-05-30 11:26:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From 3429ba6 to ec1c4a8
|
||
|
||
2012-05-13 15:58:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
From dc70203 to 3429ba6
|
||
|
||
2012-05-08 16:13:32 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix spelling mistake found by lintian: s/Seperate/Separate/
|
||
|
||
2012-04-30 23:58:43 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxrecmutex.c:
|
||
* omx/gstomxrecmutex.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
Implement a new custom recursive mutex type and fix locking in callbacks so that in-context calls are allowed.
|
||
According to the OMX specification, implementations are allowed to call
|
||
callbacks in the context of their function calls. However, our callbacks
|
||
take locks and this causes deadlocks if the unerlying OMX implementation
|
||
uses this kind of in-context calls.
|
||
A solution to the problem would be a recursive mutex. However, a normal
|
||
recursive mutex does not fix the problem because it is not guaranteed
|
||
that the callbacks are called from the same thread. What we see in Broadcom's
|
||
implementation for example is:
|
||
- OMX_Foo is called
|
||
- OMX_Foo waits on a condition
|
||
- A callback is executed in a different thread
|
||
- When the callback returns, its calling function
|
||
signals the condition that OMX_Foo waits on
|
||
- OMX_Foo wakes up and returns
|
||
The solution I came up with here is to take a second lock inside the callback,
|
||
but only if recursion is expected to happen. Therefore, all calls to OMX
|
||
functions are guarded by calls to gst_omx_rec_mutex_begin_recursion() / _end_recursion(),
|
||
which effectively tells the mutex that at this point we want to allow calls
|
||
to _recursive_lock() to succeed, although we are still holding the master lock.
|
||
|
||
2012-04-20 14:51:34 +0000 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add hack to disable setting roles to components.
|
||
Conflicts:
|
||
omx/gstomx.c
|
||
|
||
2012-04-30 23:20:24 +0000 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Implement no-empty-eos-buffer hack, as in omxvideoenc.
|
||
Conflicts:
|
||
omx/gstomxvideodec.c
|
||
|
||
2012-04-30 23:19:55 +0000 George Kiagiadakis <george.kiagiadakis@collabora.com>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix coding style in the drain-may-not-return hack code
|
||
|
||
2012-04-25 19:03:48 +0530 Arun Raghavan <arun.raghavan@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix trivial debug print bug
|
||
|
||
2012-04-25 19:01:32 +0530 Arun Raghavan <arun.raghavan@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Add hack for Ducati components not returning from drain
|
||
This happens on the Galaxy Nexus, and causes the pipeline to hang waiting
|
||
endlessly for a drain. The hack replaces the wait with a wait + 500ms timeout.
|
||
|
||
2012-04-25 16:35:40 +0530 Arun Raghavan <arun.raghavan@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix deadlock between ending a flush and the event handler
|
||
gst_omx_port_set_flushing() calls OMX_FillThisBuffer at the end of a flush
|
||
without releasing the port lock, and this can cause a deadlock with the
|
||
EventHandler. This patches fixes this by dropping the lock for the duration of
|
||
the fill buffer call.
|
||
|
||
2012-04-24 15:41:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideoencoder.c:
|
||
omx: Update video encoder/decoder base classes from gst-plugins-bad
|
||
|
||
2012-04-16 09:16:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
configure: Modernize autotools setup a bit
|
||
Also we now only create tar.bz2 and tar.xz tarballs.
|
||
|
||
2012-04-16 09:12:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* common:
|
||
Automatic update of common submodule
|
||
|
||
2012-04-16 08:34:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Use gst_buffer_extract() to copy the input buffer data to the OpenMAX buffer
|
||
|
||
2012-04-13 17:16:42 -0400 Alessandro Decina <alessandro.decina@collabora.com>
|
||
|
||
* omx/Makefile.am:
|
||
Fix relative/absolute path glitch
|
||
Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
|
||
|
||
2012-04-12 15:57:32 -0400 Olivier Crête <olivier.crete@collabora.com>
|
||
|
||
* common:
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideodecoder.h:
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
* omx/gstomxwmvdec.c:
|
||
Port to Gst 0.11
|
||
|
||
2012-01-18 16:53:16 -0300 Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
|
||
|
||
* Android.mk:
|
||
* omx/Makefile.am:
|
||
Enable building with Android's buildsystem
|
||
This change adds prelimary buildsystem hooks to
|
||
build gst-omx with the Android buildsystem. Like
|
||
the rest of GStreamer's Android hooks, the process
|
||
relies on the availability of androgenizer. A tool
|
||
developed by Collabora to automatically generate
|
||
Android.mk files from within the auto* setup.
|
||
Androgenizer is currently available at:
|
||
http://cgit.collabora.com/git/user/derek/androgenizer.git/
|
||
|
||
2011-12-13 10:17:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
basevideocodec: Don't use G_TYPE_REGISTER_BOXED() yet
|
||
This would require GLib 2.26.
|
||
|
||
2011-12-14 10:09:34 +0100 Jonas Larsson <Jonas.Larsson@palm.com>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Add hack for encoder components that don't allow empty EOS buffers
|
||
|
||
2011-12-14 10:07:29 +0100 Jonas Larsson <Jonas.Larsson@palm.com>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix deadlock when using the EOS hack
|
||
|
||
2011-12-12 14:26:48 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Remove workaround for basevideocodec bug
|
||
|
||
2011-12-12 14:26:34 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Remove workaround for basevideocodec bug
|
||
|
||
2011-12-05 17:57:01 +0000 Matej Knopp <matej.knopp@gmail.com>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideo: Make GstVideoFrame a reference counted boxed object
|
||
...and also clear all existing frames when resetting the decoder or encoder.
|
||
|
||
2011-12-09 12:17:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Add hack for encoder components that don't allow empty EOS buffers
|
||
|
||
2011-12-09 10:21:47 +0100 Dake Gu <Dake.Gu@palm.com>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
omxaacenc: Generate and set codec_data on the caps for raw AAC
|
||
|
||
2011-10-31 11:36:06 +0100 Alessandro Decina <alessandro.decina@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: handle failures in start() and stop()
|
||
|
||
2011-08-26 10:50:38 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoenc: do not try to calculate latency from an unknown framerate
|
||
It'll divide by zero, and latency is unknown for an unknown framerate.
|
||
Fixes an assert in the schroenc test.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=657419
|
||
|
||
2011-12-08 11:50:49 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Only make the header buffer metadata writable, not the buffer
|
||
|
||
2011-12-08 10:18:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Fix handling of force-keyunit events
|
||
|
||
2011-12-06 13:28:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Don't forward EOS events immediately but let all other events be handled by the base class
|
||
Previously this logic was inversed, which did not make any sense at all.
|
||
|
||
2011-12-06 12:47:25 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Use correct timestamp, duration and filled length for the EOS buffers
|
||
|
||
2011-12-06 12:47:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Use correct timestamp, duration and filled length for the EOS buffers
|
||
|
||
2011-12-06 12:46:51 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Use correct timestamp, duration and filled length for the EOS buffers
|
||
|
||
2011-12-05 13:18:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Improve debugging of buffer handling
|
||
|
||
2011-12-05 08:12:48 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Drop EOS events in ::finish()
|
||
The event will be forwarded downstream from the srcpad
|
||
loop function after the last buffer was generated by the
|
||
component. Forwarding it after ::finish() will use the
|
||
sinkpad streaming thread and does not guarantee that
|
||
the encoder is completely drained.
|
||
|
||
2011-12-01 16:20:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Properly drop frames due to QoS
|
||
Instead of finishing them they should be passed to drop(), which
|
||
will then send QoS messages.
|
||
|
||
2011-11-29 12:21:32 +0100 Jonas Larsson <jonas@hallerud.se>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: Add support for resending headers after a forced-keyframe
|
||
|
||
2011-11-29 12:12:33 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Pass the all-headers field of the force-key-unit event to the subclass
|
||
|
||
2011-11-29 12:12:04 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Implement full support for the new force-key-unit event
|
||
Including support for the running-time and count fields.
|
||
|
||
2011-11-29 09:31:11 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Use new force-keyunit event API from gst-plugins-base
|
||
|
||
2011-11-29 09:18:19 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Adjusting padding is not required for -bad libraries
|
||
|
||
2011-11-28 19:48:01 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Move some fields to the private part of the instance struct
|
||
|
||
2011-11-28 19:36:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Make headers metadata writable before pushing downstream
|
||
The timestamp, duration, etc of the headers has to be changed.
|
||
|
||
2011-11-28 19:35:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Push the downstream force-keyframe event after the next keyframe
|
||
Even if the corresponding GstVideoFrame doesn't have the is_sync_point
|
||
flag set.
|
||
|
||
2011-11-28 19:29:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Don't push an upstream force-keyunit event downstream
|
||
|
||
2011-11-25 11:48:08 +0100 Jonas Larsson <jonas@hallerud.se>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Add initial support for the all-headers field of the force-keyframe event
|
||
See bug #607742.
|
||
|
||
2011-11-25 11:37:39 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: some more debug logging
|
||
|
||
2011-11-23 20:03:32 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideodecoder.h:
|
||
basevideodecoder: add API to drop a frame and post a QoS message on the bus
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=640017
|
||
API: gst_base_video_decoder_drop_frame()
|
||
|
||
2011-11-22 23:04:49 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
docs: fix comment in gst_base_video_decoder_get_max_decode_time() docs
|
||
|
||
2011-11-22 19:57:07 +0000 Tim-Philipp Müller <tim.muller@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: fix weird event list handling
|
||
Get rid of weird code that copies a list manually, taking
|
||
ownership of the elements and then frees the old list. Instead,
|
||
just take over the old list entirely. (If the intent was to
|
||
reverse the list, one could use g_list_reverse() instead).
|
||
Then, push events in the list out from last to first (since they
|
||
were prepended as they came in) instead of just pushing out the
|
||
last in the list and leaking the others.
|
||
|
||
2011-11-25 11:31:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/Makefile.am:
|
||
* omx/gstbaseaudiodecoder.c:
|
||
* omx/gstbaseaudiodecoder.h:
|
||
* omx/gstbaseaudioencoder.c:
|
||
* omx/gstbaseaudioencoder.h:
|
||
* omx/gstbaseaudioutils.c:
|
||
* omx/gstbaseaudioutils.h:
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Use audio base classes from gst-plugins-base instead of having our own copies
|
||
|
||
2011-11-18 10:00:31 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: First set ports to flushing before waiting for the srcpad streaming thread to finish
|
||
|
||
2011-11-18 09:59:43 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: First set ports to flushing before waiting for the srcpad streaming thread to finish
|
||
|
||
2011-11-18 09:58:58 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: First set ports to flushing before waiting for the srcpad streaming thread to finish
|
||
|
||
2011-11-17 14:38:54 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Only disabling of a port is like flushing, enabling is like unflushing
|
||
|
||
2011-11-17 13:33:35 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Enabling/disabling a port is also like flushing
|
||
The component returns all buffers to us and shouldn't get any
|
||
new buffers passed anymore.
|
||
|
||
2011-11-17 11:26:33 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Signal the drain GCond even if downstream returned an error
|
||
|
||
2011-11-17 11:26:20 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Signal the drain GCond even if downstream returned an error
|
||
|
||
2011-11-17 11:25:52 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Signal the drain GCond even if downstream returned an error
|
||
|
||
2011-11-17 10:34:19 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Only call ::reset once in READY->PAUSED
|
||
|
||
2011-11-17 10:19:35 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Shutdown component in PAUSED->READY and deallocate buffers
|
||
|
||
2011-11-17 10:19:30 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Shutdown component in PAUSED->READY and deallocate buffers
|
||
|
||
2011-11-17 10:19:10 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Shutdown component in PAUSED->READY and deallocate buffers
|
||
|
||
2011-11-16 12:02:08 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Set force_keyframe to FALSE after handling it
|
||
There's no reason why the base class should forward the event
|
||
further downstream if we already handled it and will insert a
|
||
keyframe.
|
||
|
||
2011-11-16 11:21:25 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Always push buffers downstream, even if we didn't find a corresponding GstVideoFrame
|
||
|
||
2011-11-15 09:47:55 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix debug level for flushing in wrong state from ERROR to DEBUG
|
||
It's not really an error and doesn't matter at all if flush is called
|
||
when the component is not running.
|
||
|
||
2011-11-15 08:40:07 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: Detect bytestream stream format and don't put SPS/PPS into the caps for this format
|
||
|
||
2011-11-15 08:28:32 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Add vfunc for handling the output frames
|
||
This can be used by subclasses to override the buffer flags
|
||
or to handle some frames differently than the default behaviour.
|
||
|
||
2011-11-14 12:50:26 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't release buffers twice if dropping because of QoS
|
||
|
||
2011-11-14 09:13:06 -0800 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Add XXX to the nOffset reset hack comment for QCOM
|
||
|
||
2011-11-10 15:18:08 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Make srcpad caps setting threadsafe
|
||
|
||
2011-11-10 15:17:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Make srcpad caps setting threadsafe
|
||
|
||
2011-11-10 15:17:41 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make srcpad caps setting threadsafe
|
||
|
||
2011-11-10 15:10:14 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Make the srcpad task and the sinkpad streaming thread handling threadsafe
|
||
|
||
2011-11-10 15:03:05 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Always flush the ports and make sure no processing is happening in ::flush
|
||
This fixes a race condition that happened when seeking
|
||
very often in a short period of time.
|
||
|
||
2011-11-10 15:02:22 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Always flush the ports and make sure no processing is happening in ::reset
|
||
This fixes a race condition that happened when seeking
|
||
very often in a short period of time.
|
||
|
||
2011-11-10 15:01:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix minor race condition when draining after upstream signalled EOS
|
||
|
||
2011-11-10 14:56:19 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Improve EOS handling
|
||
If downstream return UNEXPECTED we should still signal the
|
||
drain cond because nothing will trigger this again later.
|
||
|
||
2011-11-10 14:56:11 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Improve EOS handling
|
||
If downstream return UNEXPECTED we should still signal the
|
||
drain cond because nothing will trigger this again later.
|
||
|
||
2011-11-10 14:54:33 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Improve debugging of EOS and draining
|
||
|
||
2011-11-10 14:54:17 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Improve debugging of EOS and draining
|
||
|
||
2011-11-10 14:51:06 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Log if acquiring buffer for EOS failed
|
||
|
||
2011-11-10 14:42:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: The component is not started in READY
|
||
|
||
2011-11-10 14:39:40 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: No need to signal the drain cond when going from READY to PAUSED
|
||
Also the component is not started in READY
|
||
|
||
2011-11-10 14:40:56 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: No need to signal the drain cond when going from READY to PAUSED
|
||
Also the component is not started in READY.
|
||
|
||
2011-11-09 15:46:02 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Always flush the ports and make sure no processing is happening in ::reset
|
||
This fixes a race condition that happened when seeking
|
||
very often in a short period of time.
|
||
|
||
2011-11-09 15:45:20 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix minor race condition when draining after upstream signalled EOS
|
||
|
||
2011-11-09 15:44:11 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Improve EOS handling
|
||
If downstream return UNEXPECTED we should still signal the
|
||
drain cond because nothing will trigger this again later.
|
||
|
||
2011-11-09 15:43:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Improve debugging of EOS and draining
|
||
|
||
2011-11-09 15:42:46 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: The component is not started already when going from READY to PAUSED
|
||
|
||
2011-11-09 15:42:13 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: No need to signal the drain cond when going from READY to PAUSED
|
||
|
||
2011-11-09 15:41:02 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Always reset buffer flags for output ports, even in flushing/error state
|
||
|
||
2011-11-09 09:00:57 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Improve debugging in case of QoS-related frame drops
|
||
|
||
2011-11-08 12:46:31 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Release the video codec stream lock before acquiring an input buffer
|
||
Otherwise the srcpad task might block on this lock and
|
||
no buffers ever become available again.
|
||
|
||
2011-11-08 12:45:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Release the audio encoder stream lock before acquiring an input buffer
|
||
Otherwise the srcpad task might block on this lock and
|
||
no buffers ever become available again.
|
||
|
||
2011-11-08 12:42:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Release the video codec stream lock before acquiring an input buffer
|
||
Otherwise the srcpad task might block on this lock and
|
||
no buffers ever become available again.
|
||
|
||
2011-11-08 11:07:01 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Don't try to drain the component after EOS
|
||
And don't send EOS twice in any case. This most likely
|
||
will cause the component to not output it again and
|
||
is not necessary anyway.
|
||
|
||
2011-11-08 11:03:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Don't try to drain the component after EOS
|
||
And don't send EOS twice in any case. This most likely
|
||
will cause the component to not output it again and
|
||
is not necessary anyway.
|
||
|
||
2011-11-08 10:46:36 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Don't try to drain the component after EOS
|
||
And don't send EOS twice in any case. This most likely
|
||
will cause the component to not output it again and
|
||
is not necessary anyway.
|
||
|
||
2011-11-08 09:09:28 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Implement dropping of too late frames via QoS
|
||
|
||
2011-11-08 08:31:58 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Minor code refactoring
|
||
|
||
2011-11-08 08:31:43 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Minor code refactoring
|
||
|
||
2011-11-08 08:31:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make sure to always release buffers back to OMX
|
||
|
||
2011-11-08 08:24:19 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Also properly release buffers when in error state
|
||
|
||
2011-11-08 08:22:08 +0100 Jonas Larsson <Jonas.Larsson@palm.com>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Properly release buffers during flushing
|
||
We can't pass them back to OMX_FillThisBuffer() or OMX_EmptyThisBuffer()
|
||
but instead of doing nothing we have to put them back into our queue.
|
||
Otherwise the buffer is leaked and we will have too few buffers in
|
||
the future.
|
||
|
||
2011-11-07 14:00:47 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Free pending frames after draining component
|
||
|
||
2011-11-07 14:00:35 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Free pending frames after draining the component
|
||
|
||
2011-11-07 11:07:01 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Make handling and usage of the base video codec frames threadsafe
|
||
|
||
2011-11-07 11:05:29 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix deadlock between srcpad stream lock and ::reset()
|
||
|
||
2011-11-07 11:04:27 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideoenc: Make handling and usage of the base video codec frames threadsafe
|
||
|
||
2011-11-07 10:58:44 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Free all pending frames after draining the component
|
||
|
||
2011-11-07 10:58:24 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Always free all pending frames when caps changes require reconfiguration
|
||
|
||
2011-11-04 09:43:48 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Only drain the component a single time and only after processing started
|
||
|
||
2011-11-04 09:43:32 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Only drain the component a single time and only after processing started
|
||
|
||
2011-11-04 09:43:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Only drain the component a single time and only after processing started
|
||
|
||
2011-11-04 09:04:16 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Reset buffer flags to 0 after it was consumed by the component or the element
|
||
Some implementations don't reset the flags and the standard is not
|
||
really clear on the expected behaviour. Let's just always reset the
|
||
flags as they're not valid at this point anymore.
|
||
|
||
2011-11-02 13:50:14 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Better handling of encoder parameters
|
||
Only set them if necessary and allow to use the component
|
||
defaults.
|
||
|
||
2011-11-02 13:22:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Make unsupported bitrate/quantizer settings less fatal
|
||
|
||
2011-11-02 10:39:50 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: If no stride was set for the OMX output port assume GStreamer stride
|
||
This is not really correct but there's nothing else we could do.
|
||
|
||
2011-11-02 10:39:10 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: If no stride was set for the OMX input port assume GStreamer stride
|
||
This is not really correct but there's nothing else we could do.
|
||
|
||
2011-11-01 16:46:09 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Implement draining of the component and use it
|
||
This makes sure that all buffers are encoded and pushed downstream
|
||
before flushing the ports and losing some buffers.
|
||
|
||
2011-11-01 16:41:46 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Implement draining of the component and use it
|
||
This makes sure that all buffers are encoded and pushed downstream
|
||
before flushing the ports and losing some buffers.
|
||
|
||
2011-11-01 16:08:59 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Implement draining of the component and use it
|
||
This makes sure that all buffers are decoded and pushed downstream
|
||
before flushing the ports and losing some buffers.
|
||
|
||
2011-10-20 14:32:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix deadlock if ::reset is called before finding the corresponding frame of a decoded buffer
|
||
|
||
2011-11-01 15:10:12 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
* omx/gstomxvideoenc.h:
|
||
omxaudioenc: Forward downstream flow returns to upstream
|
||
|
||
2011-11-01 15:10:01 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Forward downstream flow returns to upstream
|
||
|
||
2011-11-01 13:58:38 +0100 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Forward downstream flow returns to upstream
|
||
|
||
2011-10-25 14:23:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* README:
|
||
omx: Add minimal README file
|
||
|
||
2011-10-20 15:21:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock
|
||
|
||
2011-10-20 15:20:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock
|
||
|
||
2011-10-20 14:30:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Move locking at the correct place
|
||
|
||
2011-10-14 10:27:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Remove QCOM hack to reset nOffset in EmptyBufferDone
|
||
This is now done in a generic way that does not require any
|
||
hacks because it will work without any side effects on any
|
||
OMX implementation.
|
||
|
||
2011-10-14 10:26:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Reset nOffset to 0 in EmptyBufferDone if nFilledLen is 0
|
||
Some OMX implementations don't reset nOffset when the complete
|
||
buffer is emptied but instead only reset nFilledLen. We reset
|
||
nOffset to 0 if nFilledLen == 0, which is safe to do because
|
||
the offset *must* be 0 if the buffer is not filled at all.
|
||
Seen in QCOM's OMX implementation.
|
||
|
||
2011-10-04 10:56:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: If one parameter/configuration is not supported don't skip the next
|
||
|
||
2011-10-03 09:12:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
omxh264dec: Require stream-format=byte-stream
|
||
Other stream-formats are unlikely to be supported by OMX components.
|
||
|
||
2011-09-29 10:37:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Add API for subclasses to prepare/convert frames
|
||
|
||
2011-09-27 15:08:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers
|
||
Allocating buffers before the Idle state is reached can lead to crashes.
|
||
|
||
2011-09-27 15:08:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers
|
||
Allocating buffers before the Idle state is reached can lead to crashes.
|
||
|
||
2011-09-27 15:05:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Switch to Idle first and wait before switching to Loaded and deallocating buffers
|
||
Allocating buffers before the Idle state is reached can lead to crashes.
|
||
|
||
2011-09-27 14:15:06 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: New hack for QCOM to recreate the component instead of reconfiguring it on caps changes
|
||
|
||
2011-09-27 12:13:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Change a g_assert() into a GST_WARNING_OBJECT()
|
||
|
||
2011-09-26 13:04:18 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add hack for Qualcomm's OMX implementation to manually reset nOffset in EmptyBufferDone
|
||
|
||
2011-09-23 17:02:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Add a check to prevent a zero-sized OMX buffer
|
||
|
||
2011-09-23 17:02:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add some more checks for correct OMX buffer sizes
|
||
|
||
2011-09-23 15:53:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Add some more checks for OMX buffer sizes
|
||
|
||
2011-09-14 10:15:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omx: Wait until the Executing state is reached before calling OMX_FillThisBuffer()
|
||
This correctly works around the QCOM race condition that happens when calling
|
||
FTB after setting the new state and before reaching it.
|
||
|
||
2011-09-02 14:43:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Negotiate video format with downstream and what the component claims to support
|
||
|
||
2011-08-25 19:56:58 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: fix element leak
|
||
and this concludes an hour of yelling at the bloody test failing,
|
||
only to track down the problem not being in the test.
|
||
https://bugzilla.gnome.org/show_bug.cgi?id=657368
|
||
|
||
2011-08-19 09:20:39 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Release basevideocodec stream lock while waiting for a buffer
|
||
This prevents deadlocks if no empty input buffers are available and
|
||
releasing input buffers requires the loop function to handle some
|
||
output buffers first.
|
||
|
||
2011-08-19 09:19:22 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Release basevideocodec stream lock while waiting for a buffer
|
||
This prevents deadlocks if no empty input buffers are available and
|
||
releasing input buffers requires the loop function to handle some
|
||
output buffers first.
|
||
|
||
2011-08-18 10:24:26 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: Fix deadlock
|
||
|
||
2011-08-18 10:03:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudiodecoder.c:
|
||
baseaudiodecoder: Don't take the stream lock in the seek handler
|
||
This will lead to deadlocks
|
||
|
||
2011-08-18 10:02:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideo: Fix locking, especially if both pads have different streaming threads
|
||
|
||
2011-08-18 09:42:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideo: Don't call g_type_class_peek_parent() in class_init
|
||
This is already done by the GObject boilerplate macro
|
||
|
||
2011-08-18 09:40:46 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudiodecoder.c:
|
||
baseaudiodecoder: Don't call g_type_class_peek_parent() in class_init
|
||
This is already done by the boilerplate macro
|
||
|
||
2011-08-18 09:34:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudiodecoder.c:
|
||
* omx/gstbaseaudiodecoder.h:
|
||
baseaudiodecoder: Fix thread safety issues if both pads have different streaming threads
|
||
|
||
2011-08-18 09:17:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudiodecoder.c:
|
||
baseaudiodecoder: Delay sending of serialized events to finish_frame()
|
||
|
||
2011-08-17 14:33:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Always require at least OMX_MIN_PCMPAYLOAD_MSEC per input buffer
|
||
|
||
2011-08-17 14:28:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudioencoder.c:
|
||
* omx/gstbaseaudioencoder.h:
|
||
baseaudioencoder: Add support for requesting a minimum and maximum number of samples per frame
|
||
This extends the special case of a fixed number of samples per frame
|
||
that was supported before already.
|
||
|
||
2011-08-17 14:17:18 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Handle inbuf==NULL properly in ::handle_frame()
|
||
|
||
2011-08-17 13:04:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaacenc.c:
|
||
omxaacenc: Implement ::get_num_samples() vfunc
|
||
|
||
2011-08-17 13:03:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Add vfunc to get the number of samples inside a buffer
|
||
|
||
2011-08-17 11:34:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Release baseaudioencoder stream lock while waiting for a buffer in ::handle_frame()
|
||
This prevents deadlocks if no empty input buffers are available and
|
||
releasing input buffers requires the loop function to handle some
|
||
output buffers first.
|
||
|
||
2011-08-17 11:34:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudioencoder.c:
|
||
* omx/gstbaseaudioencoder.h:
|
||
baseaudioencoder: Fix thread safety issues if both pads have different streaming threads
|
||
|
||
2011-08-17 09:58:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudioencoder.c:
|
||
baseaudioencoder: Taking the OBJECT lock in reset() is not needed
|
||
|
||
2011-08-16 11:03:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxaudioenc.c:
|
||
omxaudioenc: Remove hack that only applies to the video encoder class
|
||
|
||
2011-08-16 10:49:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.conf:
|
||
* omx/gstomxaacenc.c:
|
||
* omx/gstomxaacenc.h:
|
||
omxaacenc: Add initial version of OpenMAX AAC encoder element
|
||
|
||
2011-08-15 15:10:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomxaudioenc.c:
|
||
* omx/gstomxaudioenc.h:
|
||
omxaudioenc: Add initial version of audio encoder base class
|
||
|
||
2011-08-15 14:14:11 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudioencoder.c:
|
||
baseaudioencoder: Delay sending of serialized events to finish_frame()
|
||
|
||
2011-08-15 13:06:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstbaseaudiodecoder.c:
|
||
* omx/gstbaseaudiodecoder.h:
|
||
* omx/gstbaseaudioencoder.c:
|
||
* omx/gstbaseaudioencoder.h:
|
||
audio: Integrate audio base classes into the build system and fixup
|
||
|
||
2011-08-15 12:56:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbaseaudiodecoder.c:
|
||
* omx/gstbaseaudiodecoder.h:
|
||
* omx/gstbaseaudioencoder.c:
|
||
* omx/gstbaseaudioencoder.h:
|
||
* omx/gstbaseaudioutils.c:
|
||
* omx/gstbaseaudioutils.h:
|
||
audio: Add audio decoder/encoder base classes
|
||
Taken from http://cgit.collabora.com/git/user/manauw/gst-plugins-bad.git/log/?h=baseaudio
|
||
|
||
2011-08-12 12:25:03 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Proxy the width/height/framerate/PAR constraints of downstream caps to upstream
|
||
This allows to specify constraints on the compressed downstream caps
|
||
by muxers or capsfilters, which will then be forwarded to upstream
|
||
and allows video converters to fulfill the constraints.
|
||
Code based on Mark Nauwelaerts audio encoder base class.
|
||
|
||
2011-08-12 12:13:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Remove old ::getcaps() comment
|
||
|
||
2011-08-12 12:06:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Remove ::get_caps() vfunc
|
||
Subclasses can set the caps more efficiently and this only
|
||
caused additional indirections.
|
||
|
||
2011-08-10 10:24:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Use "video/x-raw-yuv" as sink template caps instead of strict I420 caps
|
||
|
||
2011-08-10 10:23:39 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxmpeg4videodec.c:
|
||
omxmpeg4videodec: Don't require width/height on sink pad caps
|
||
|
||
2011-08-10 10:11:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxwmvdec.c:
|
||
omxvideodec: Use "video/x-raw-yuv" as src template caps instead of strict I420 caps
|
||
|
||
2011-08-10 09:56:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Set the state back to StateLoaded even if an error happened
|
||
|
||
2011-08-10 09:49:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Don't hold any locks while calling OMX_SendCommand()
|
||
It might call into one of the callbacks and lead to deadlocks, e.g.
|
||
with the Qualcomm OMX implementation.
|
||
|
||
2011-08-10 09:32:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Move some code
|
||
|
||
2011-08-10 09:23:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Reset pending reconfigure output ports when changing the state from Executing to any lower state
|
||
|
||
2011-08-10 09:08:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Fix crash when setting last error after the ports were freed
|
||
|
||
2011-08-10 09:03:52 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Free component structure
|
||
|
||
2011-08-10 09:02:52 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Make component destruction safer
|
||
|
||
2011-08-10 08:53:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Set pAppPrivate of buffers to NULL when deallocating buffers
|
||
This prevents usage of freed memory later if the OMX component
|
||
has weird behaviour.
|
||
|
||
2011-08-10 08:52:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Set the state back to StateLoaded even if an error happened
|
||
|
||
2011-08-10 08:51:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Add some assertions to check if the buffer pAppPrivate is still correct
|
||
|
||
2011-08-08 13:04:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
omx: Add parenthesis at correct places in the struct init macro
|
||
|
||
2011-08-08 12:12:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Only prevent setting a higher state if the component is in an error state
|
||
|
||
2011-08-03 16:02:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: Use the cached video frame size instead of recalculating it
|
||
|
||
2011-08-03 15:35:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Improve debugging in param/config getter/setter wrappers
|
||
|
||
2011-08-03 13:10:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't abort if the color format is not supported but give a useful error message
|
||
|
||
2011-08-02 15:14:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Don't fail if setting the bitrate or profile is not supported by the component
|
||
Also always set/get the profile, even if there are no peer caps.
|
||
|
||
2011-08-02 15:14:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Make access to the list of frames threadsafe
|
||
|
||
2011-08-01 13:22:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add a hacks flag for the Qualcomm 7x30 OMX_FillThisBuffer() race and make it optional
|
||
|
||
2011-07-29 13:56:59 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Add workaround for QCOM 7x30 race condition
|
||
|
||
2011-07-29 12:06:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh263enc.c:
|
||
* omx/gstomxh263enc.h:
|
||
omxh263enc: Add H.263 encoder element
|
||
|
||
2011-07-29 11:26:39 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omxmpeg4videoenc: Add support for setting profile/level via caps
|
||
|
||
2011-07-28 14:14:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264enc.c:
|
||
omxh264enc: Add support for setting profile/level via caps
|
||
|
||
2011-07-28 12:58:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add support for forcing the next frame to be a keyframe
|
||
|
||
2011-07-28 11:54:16 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Add support for setting bitrate/quantization related parameters
|
||
|
||
2011-07-28 10:23:08 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add wrapper functions for OMX_[GS]et{Config,Parameter}
|
||
|
||
2011-07-28 09:54:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Add macro to initialize OpenMAX structures
|
||
|
||
2011-07-28 09:08:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Don't output 0-byte buffers
|
||
|
||
2011-07-25 15:05:08 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Ensure that the pAppPrivate pointer in OMX buffers is set correctly
|
||
|
||
2011-07-25 13:19:06 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideo{enc,dec}: Only set/unset flushing state on ports if they were created already
|
||
|
||
2011-07-25 12:01:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxwmvdec.c:
|
||
* omx/gstomxwmvdec.h:
|
||
omxwmvdec: Add WMV video decoder element
|
||
|
||
2011-07-25 11:44:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh263dec.c:
|
||
* omx/gstomxh263dec.h:
|
||
omxh263dec: Add H.263 decoder element
|
||
|
||
2011-07-25 11:32:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh264enc.c:
|
||
* omx/gstomxh264enc.h:
|
||
omxh264enc: Add H.264 encoder element
|
||
|
||
2011-07-25 10:48:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Try harder to deallocate the buffers after errors happened
|
||
|
||
2011-07-25 10:47:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Try harder to deallocate the buffers after errors happened
|
||
|
||
2011-07-25 10:46:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Deallocate port buffers before freeing the component
|
||
They should be deallocated by the caller before reaching the
|
||
Loaded state but to be on the safe side we will make sure
|
||
they're really deallocated here.
|
||
|
||
2011-07-21 11:15:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add initial support for stride conversion
|
||
|
||
2011-07-21 10:38:26 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
omx: Set default roles for the components if none were set from the config file
|
||
|
||
2011-07-21 10:36:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Failure to set the component role is fatal
|
||
|
||
2011-07-21 07:53:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Add support for setting codec_data on the srcpad caps
|
||
|
||
2011-07-21 07:44:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Free/drop GstVideoFrames that resulted in an empty buffer
|
||
|
||
2011-07-21 07:44:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame
|
||
|
||
2011-07-21 07:31:05 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideoenc.c:
|
||
omxvideoenc: Remove obsolete TODO comment
|
||
|
||
2011-07-20 11:09:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
omx: Use libgstopenmax.so for the plugin filename and openmax for the plugin name
|
||
Resolves conflicts with gst-openmax.
|
||
|
||
2011-07-20 08:34:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.conf:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxmpeg4videoenc.c:
|
||
* omx/gstomxmpeg4videoenc.h:
|
||
* omx/gstomxvideoenc.c:
|
||
* omx/gstomxvideoenc.h:
|
||
omxvideoenc: Add video encoder base class and MPEG4 video encoder
|
||
Unfortunately requires lots of hacks again to work properly with
|
||
Bellagio.
|
||
|
||
2011-07-20 10:39:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass
|
||
|
||
2011-07-20 09:25:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Delay sending of serialized sink events until finish_frame()
|
||
|
||
2011-07-20 09:09:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder
|
||
|
||
2011-07-19 12:50:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideoencoder.c:
|
||
basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps
|
||
Also store the caps in the GstVideoState and assume a PAR of 1/1 instead
|
||
of 0/1 if no PAR is specified in the caps.
|
||
|
||
2011-07-19 12:29:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomxvideodec.c:
|
||
omx: Improve debug output a bit
|
||
|
||
2011-07-19 10:33:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omx: Rework port reconfiguration again and only use the Bellagio specific hacks with Bellagio
|
||
We only reconfigure ports that need to be reconfigured now instead of
|
||
always all ports.
|
||
|
||
2011-07-19 10:33:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.conf:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omx: Add infrastructure to enable special hacks for broken OpenMAX implementations
|
||
|
||
2011-07-18 13:10:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: When acquiring a buffer from an input port always wait until all output ports are reconfigured
|
||
|
||
2011-07-18 08:41:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Add support for converting between omx and gst rowstrides
|
||
|
||
2011-07-14 10:34:09 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Provide all buffers to output ports after enabling them
|
||
|
||
2011-07-14 08:29:03 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Add support for NV12 / OMX_COLOR_FormatYUV420SemiPlanar
|
||
|
||
2011-07-14 07:58:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Only flush the component ports after we passed input to them
|
||
|
||
2011-07-13 21:19:34 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Only change states downwards if an upper state was reached
|
||
|
||
2011-07-13 20:37:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omx: Add support for setting the component-role
|
||
|
||
2011-07-13 20:22:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omx: Improve error reporting by formatting the error codes better and also providing their string representation
|
||
|
||
2011-07-13 14:36:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
build: Dist autogen.sh
|
||
|
||
2011-07-13 14:35:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* configure.ac:
|
||
* omx/gstomx.c:
|
||
build: Only require GStreamer >= 0.10.29 and GLib >= 2.16
|
||
|
||
2011-07-13 14:04:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
build: Dist gstomx.conf
|
||
|
||
2011-07-13 14:04:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* Makefile.am:
|
||
build: Clean _stdint.h on "make distclean"
|
||
|
||
2011-07-13 14:02:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix typo
|
||
|
||
2011-07-13 13:59:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
omx: Dist gstomx.h
|
||
|
||
2011-07-13 12:46:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Set SYNCFRAME flag on the OMX buffers for non-delta units
|
||
|
||
2011-07-13 12:37:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Free all pending frames when resetting the decoder
|
||
Workaround for https://bugzilla.gnome.org/show_bug.cgi?id=654529
|
||
|
||
2011-07-13 09:59:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Handle output buffers without a corresponding GstVideoFrame more gracefully
|
||
This can happen on EOS in some cases and when the input is not
|
||
properly framed.
|
||
|
||
2011-07-13 09:31:22 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix deadlock when finishing old frames that are left over by the decoder
|
||
|
||
2011-07-12 11:37:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
omxh264dec: It's called H.264, not H264
|
||
|
||
2011-07-12 11:36:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Make sink/src pad template caps configurable
|
||
|
||
2011-07-12 11:13:50 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Allow to set a preferred configuration directory with the GST_OMX_CONFIG_DIR environment variable
|
||
|
||
2011-07-12 10:55:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Make core/component-name and in/outport index configurable
|
||
|
||
2011-07-12 10:05:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.conf:
|
||
* omx/gstomx.h:
|
||
omx: Add initial version of configuration system
|
||
This now only registers elements that are specified in the
|
||
configuration file.
|
||
The configuration file is a keyfile in the first XDG configuration
|
||
directory with the name gstomx.conf.
|
||
|
||
2011-07-12 08:53:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh264dec.c:
|
||
* omx/gstomxh264dec.h:
|
||
* omx/gstomxh264videodec.h:
|
||
omxh264dec: Rename from omxh264videodec to omxh264dec
|
||
|
||
2011-07-12 08:40:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxh264videodec.c:
|
||
omxh264videodec: Require alignment=au and stream-format={avc,bytestream}
|
||
|
||
2011-07-11 12:59:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state
|
||
The subclass might want to access the old state.
|
||
|
||
2011-07-11 12:36:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: Track present position on discont before resetting it
|
||
|
||
2011-07-11 11:52:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events
|
||
|
||
2011-07-11 11:28:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideocodec: Protect access to the list of pending frames with the object lock
|
||
This is required if ::finish_frame() and all buffer output happens
|
||
on a different thread than the sinkpad streaming thread.
|
||
|
||
2011-07-11 09:35:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: Set the correct lists to NULL after freeing
|
||
|
||
2011-07-11 08:54:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted
|
||
Also fix a refcount problem with the codec_data.
|
||
|
||
2011-07-12 08:34:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomxh264videodec.c:
|
||
* omx/gstomxh264videodec.h:
|
||
omxh264videodec: Add h.264 video decoder
|
||
|
||
2011-07-12 08:29:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxmpeg4videodec.c:
|
||
omxmpeg4videodec: Fix debug category name
|
||
|
||
2011-07-09 11:41:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoutils.c:
|
||
* omx/gstbasevideoutils.h:
|
||
basevideo: Move the utils from the codec header to its own header
|
||
|
||
2011-07-09 11:32:06 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class
|
||
|
||
2011-07-09 11:05:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Use the destroy notify to free the coder_hook
|
||
|
||
2011-07-09 10:57:52 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideo: Add destroy notify for the coder_hook to prevent memory leaks
|
||
Fixes bug #654293.
|
||
|
||
2011-07-09 10:44:16 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
basevideo: Fix GType names to not conflict with the public video base classes
|
||
It's still not possible to include headers of both in the same file
|
||
or compile/link both into the same plugin but that shouldn't be
|
||
necessary anyway.
|
||
|
||
2011-07-08 15:42:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Fix some minor memory leaks
|
||
|
||
2011-07-08 15:25:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omx: Rework port reconfiguration
|
||
We always reconfigure all ports now if the settings of one
|
||
port changes to prevent lots of race conditions, dropped
|
||
frames and similar issues.
|
||
|
||
2011-07-08 13:16:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Use the frames storage of the base class instead of implementing our own
|
||
They could get out of sync and we could store already destroyed frames.
|
||
|
||
2011-07-07 12:51:03 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.h:
|
||
omx: Clarify GQueue/GPtrArray element types
|
||
|
||
2011-07-07 12:23:24 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxvideodec.c:
|
||
omx: Add more checks to acquire_buffer() and return the current state additional to the buffer
|
||
Also refactor the code flow in the video decoder for this. This makes
|
||
the usage of acquire_buffer() easier and more atomic.
|
||
|
||
2011-07-07 12:22:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Also flush/unflush the input port when changing the state PAUSED<->READY
|
||
|
||
2011-07-07 12:21:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Don't broadcast port->port_cond after allocating buffers successfully
|
||
Allocating buffers must happen while no thread is waiting for the
|
||
cond and especially must happen from the thread that would acquire
|
||
buffers from the port.
|
||
|
||
2011-07-07 11:27:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Don't leak the codec_data after sending it
|
||
|
||
2011-07-07 10:27:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Always check if the component is in an error state before waiting for a condition variable to be signalled
|
||
Otherwise we might wait forever because nothing is going to signal
|
||
the condition variable anymore.
|
||
|
||
2011-07-07 10:22:12 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Always hold port->port_lock before signalling port->port_cond when notifying about errors
|
||
Otherwise a port might be in the critical section, has checked the error state
|
||
already but waits after port->port_cond is signalled, which will lead
|
||
to a deadlock.
|
||
|
||
2011-07-07 10:07:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Remove reconfiguration test hack
|
||
|
||
2011-07-06 13:27:12 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Improve debug output a bit
|
||
|
||
2011-07-06 13:26:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Always try to deallocate buffers, even if there's a component error
|
||
|
||
2011-07-06 13:26:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
omx: Use G_USEC_PER_SEC for clarity instead of 1000000
|
||
|
||
2011-07-06 13:19:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Error out if the GStreamer allocated buffer is smaller than the OpenMAX output buffer
|
||
Usually this must never happen but currently it happens during reconfigurations
|
||
because of a race condition. Still it's better than crashing.
|
||
|
||
2011-07-06 10:40:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Don't use port_def.bEnabled to check if the Enable/Disable command is finished
|
||
bEnabled should be set immediately after sending the command, it's only
|
||
Bellagio that waits until the command is finished before setting it.
|
||
|
||
2011-07-06 10:30:11 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxvideodec.c:
|
||
omxvideodec: Remove obsolete FIXME comment
|
||
|
||
2011-07-06 10:29:54 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
omx: Improve error handling and reporting
|
||
|
||
2011-07-06 08:48:37 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omxvideodec: Make the inport and outport index configurable by the subclass
|
||
|
||
2011-06-28 08:51:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/Makefile.am:
|
||
* omx/gstomx.c:
|
||
* omx/gstomx.h:
|
||
* omx/gstomxmpeg4videodec.c:
|
||
* omx/gstomxmpeg4videodec.h:
|
||
* omx/gstomxvideodec.c:
|
||
* omx/gstomxvideodec.h:
|
||
omx: Add initial version of OpenMAX framework, video decoder base class and MPEG4 video decoder
|
||
This currently hardcodes a lot of stuff but works at least.
|
||
Also adds a generic framework for handling OpenMAX cores, components
|
||
and ports.
|
||
|
||
2011-06-28 11:47:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideodecoder.h:
|
||
basevideodecoder: Don't reorder serialized src events
|
||
And allow to drop EOS by the subclass if ::finish returns
|
||
DROPPED.
|
||
Fixes bug #653544.
|
||
|
||
2011-06-27 09:41:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly
|
||
|
||
2011-06-27 09:37:03 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/gstbasevideocodec.c:
|
||
* omx/gstbasevideocodec.h:
|
||
* omx/gstbasevideodecoder.c:
|
||
* omx/gstbasevideodecoder.h:
|
||
* omx/gstbasevideoencoder.c:
|
||
* omx/gstbasevideoencoder.h:
|
||
* omx/gstbasevideoutils.c:
|
||
basevideo: Add video encoder/decoder base classes from gst-plugins-bad
|
||
|
||
2011-06-21 11:17:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||
|
||
* omx/openmax/OMX_Audio.h:
|
||
* omx/openmax/OMX_Component.h:
|
||
* omx/openmax/OMX_ComponentExt.h:
|
||
* omx/openmax/OMX_ContentPipe.h:
|
||
* omx/openmax/OMX_Core.h:
|
||
* omx/openmax/OMX_CoreExt.h:
|
||
* omx/openmax/OMX_IVCommon.h:
|
||
* omx/openmax/OMX_Image.h:
|
||
* omx/openmax/OMX_Index.h:
|
||
* omx/openmax/OMX_IndexExt.h:
|
||
* omx/openmax/OMX_Other.h:
|
||
* omx/openmax/OMX_Types.h:
|
||
* omx/openmax/OMX_Video.h:
|
||
* omx/openmax/OMX_VideoExt.h:
|
||
openmax: Add OpenMAX IL 1.1.2 headers
|
||
|