platform/upstream/gst-omx.git
11 years agoomxvideodec: Give the codec_data the timestamp of the first frame and no duration
Sebastian Dröge [Fri, 15 Mar 2013 08:32:42 +0000 (09:32 +0100)]
omxvideodec: Give the codec_data the timestamp of the first frame and no duration

11 years agoomx: The MPEG4 encoder is not available on RPi and probably never will
Sebastian Dröge [Thu, 14 Mar 2013 16:31:17 +0000 (17:31 +0100)]
omx: The MPEG4 encoder is not available on RPi and probably never will

11 years agoomx: Reset some more buffer fields as required
Sebastian Dröge [Thu, 14 Mar 2013 16:26:30 +0000 (17:26 +0100)]
omx: Reset some more buffer fields as required

11 years agoomx: The hack to disable usage of EOS buffers is not necessary anymore on RPi
Sebastian Dröge [Thu, 14 Mar 2013 16:01:08 +0000 (17:01 +0100)]
omx: The hack to disable usage of EOS buffers is not necessary anymore on RPi

11 years agoomx: Reset the flags for output ports when releasing a buffer, not for input ports
Sebastian Dröge [Thu, 14 Mar 2013 16:00:12 +0000 (17:00 +0100)]
omx: Reset the flags for output ports when releasing a buffer, not for input ports

11 years agoomx: Only unref caps after usage of its fields
Sebastian Dröge [Thu, 14 Mar 2013 14:03:02 +0000 (15:03 +0100)]
omx: Only unref caps after usage of its fields

11 years agoomxvideodec: Simplify bufferpool implementation
Sebastian Dröge [Thu, 14 Mar 2013 13:51:32 +0000 (14:51 +0100)]
omxvideodec: Simplify bufferpool implementation

11 years agoomxvideodec: Improve min/max buffer counts handling
Sebastian Dröge [Wed, 13 Mar 2013 12:23:35 +0000 (13:23 +0100)]
omxvideodec: Improve min/max buffer counts handling

11 years agoomx: Handle the OMX_EventBufferFlag to detect EOS too
Sebastian Dröge [Thu, 14 Mar 2013 11:49:42 +0000 (12:49 +0100)]
omx: Handle the OMX_EventBufferFlag to detect EOS too

11 years agoomx: Mark OpenMAX buffers as EGLImage if they contain one
Sebastian Dröge [Wed, 13 Mar 2013 09:29:23 +0000 (10:29 +0100)]
omx: Mark OpenMAX buffers as EGLImage if they contain one

Needs special handling in some places, e.g. because nFilledLen
will always be 0.

11 years agoomxvideoenc: Properly check the nVersion field
Sebastian Dröge [Wed, 13 Mar 2013 09:21:49 +0000 (10:21 +0100)]
omxvideoenc: Properly check the nVersion field

11 years agoomxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that
Sebastian Dröge [Wed, 13 Mar 2013 08:34:43 +0000 (09:34 +0100)]
omxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that

11 years agoomxvideodec: Make sure to always get the right buffer
Sebastian Dröge [Tue, 12 Mar 2013 19:02:53 +0000 (20:02 +0100)]
omxvideodec: Make sure to always get the right buffer

11 years agoomxvideodec: Make sure the buffer is released to the pool if it's not the one we...
Sebastian Dröge [Tue, 12 Mar 2013 18:35:39 +0000 (19:35 +0100)]
omxvideodec: Make sure the buffer is released to the pool if it's not the one we wanted

11 years agoomxvideodec: Drop too late frames instead of finishing them
Sebastian Dröge [Tue, 12 Mar 2013 18:17:08 +0000 (19:17 +0100)]
omxvideodec: Drop too late frames instead of finishing them

11 years agoomx: Release buffers to the correct port
Sebastian Dröge [Tue, 12 Mar 2013 18:16:46 +0000 (19:16 +0100)]
omx: Release buffers to the correct port

11 years agoomx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL
Sebastian Dröge [Wed, 13 Mar 2013 08:37:02 +0000 (09:37 +0100)]
omx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL

11 years agoomx: Lazy-load symbols of libbcm_host.so
Sebastian Dröge [Tue, 12 Mar 2013 17:20:22 +0000 (18:20 +0100)]
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.

11 years agoomx: Don't set profile/level in other encoders if downstream caps don't specify any
Sebastian Dröge [Mon, 11 Mar 2013 12:59:15 +0000 (13:59 +0100)]
omx: Don't set profile/level in other encoders if downstream caps don't specify any

11 years agoomxh264enc: If caps specify no profile/level use the component's defaults
Sebastian Dröge [Mon, 11 Mar 2013 12:49:38 +0000 (13:49 +0100)]
omxh264enc: If caps specify no profile/level use the component's defaults

11 years agoomxvideoenc: Always allocate output buffers from the loop function
Sebastian Dröge [Mon, 11 Mar 2013 12:45:04 +0000 (13:45 +0100)]
omxvideoenc: Always allocate output buffers from the loop function

11 years agoomxh264enc: The h264 encoders are supposed to output byte-stream/au
Sebastian Dröge [Mon, 11 Mar 2013 12:12:57 +0000 (13:12 +0100)]
omxh264enc: The h264 encoders are supposed to output byte-stream/au

11 years agoomxvideoenc: Wait until the Executing state is reached before passing buffers to...
Sebastian Dröge [Mon, 11 Mar 2013 10:47:42 +0000 (11:47 +0100)]
omxvideoenc: Wait until the Executing state is reached before passing buffers to the component

11 years agoomxvideodec: Don't provide buffers to downstream
Sebastian Dröge [Mon, 11 Mar 2013 09:39:25 +0000 (10:39 +0100)]
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.

11 years agoomxaudioenc: Disable output port when setting a new format
Sebastian Dröge [Mon, 11 Mar 2013 09:29:44 +0000 (10:29 +0100)]
omxaudioenc: Disable output port when setting a new format

11 years agoomxvideoenc: Disable output port when setting a new format
Sebastian Dröge [Mon, 11 Mar 2013 09:29:30 +0000 (10:29 +0100)]
omxvideoenc: Disable output port when setting a new format

11 years agoomxvideodec: Disable output port when setting a new format
Sebastian Dröge [Mon, 11 Mar 2013 09:22:07 +0000 (10:22 +0100)]
omxvideodec: Disable output port when setting a new format

Based on a patch by Josep Torra <n770galaxy@gmail.com>

11 years agoomx: Catch errors when releasing buffers to a port and handle them
Sebastian Dröge [Mon, 11 Mar 2013 09:04:10 +0000 (10:04 +0100)]
omx: Catch errors when releasing buffers to a port and handle them

11 years agoomxvideoenc: Use the correct video codec state when filling an input buffer
Sebastian Dröge [Sun, 10 Mar 2013 11:09:23 +0000 (12:09 +0100)]
omxvideoenc: Use the correct video codec state when filling an input buffer

11 years agoomxvideoenc: Store correct input state
Sebastian Dröge [Sun, 10 Mar 2013 11:05:50 +0000 (12:05 +0100)]
omxvideoenc: Store correct input state

11 years agoomxvideoenc: Allocate output buffers as early as possible
Sebastian Dröge [Sun, 10 Mar 2013 10:27:34 +0000 (11:27 +0100)]
omxvideoenc: Allocate output buffers as early as possible

11 years agoomx: Log unknown events
Sebastian Dröge [Sun, 10 Mar 2013 10:01:57 +0000 (11:01 +0100)]
omx: Log unknown events

11 years agoomx: Fix deadlock in encoders and add explainatory comments.
Josep Torra [Sat, 9 Mar 2013 13:14:40 +0000 (14:14 +0100)]
omx: Fix deadlock in encoders and add explainatory comments.

11 years agoomxvideodec: fix printf format identifier
Josep Torra [Sat, 9 Mar 2013 12:27:08 +0000 (13:27 +0100)]
omxvideodec: fix printf format identifier

11 years agoomx: Minor changes on debuging info
Josep Torra [Sat, 9 Mar 2013 12:07:59 +0000 (13:07 +0100)]
omx: Minor changes on debuging info

11 years agoomxvideodec: avoid a deadlock
Josep Torra [Sat, 9 Mar 2013 12:00:33 +0000 (13:00 +0100)]
omxvideodec: avoid a deadlock

11 years agoomxvideodec: Don't forget to populate output port
Sebastian Dröge [Fri, 8 Mar 2013 14:56:40 +0000 (15:56 +0100)]
omxvideodec: Don't forget to populate output port

11 years agoomx: Flush and stop srcpad when configuring new caps
Sebastian Dröge [Fri, 8 Mar 2013 14:11:27 +0000 (15:11 +0100)]
omx: Flush and stop srcpad when configuring new caps

11 years agoRevert "omx: use no-component-reconfigure hack on the Raspberry PI"
Sebastian Dröge [Thu, 7 Mar 2013 16:40:21 +0000 (17:40 +0100)]
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.

11 years agoomxvideodec: Only negotiate a color format with downstream on the initial caps
Sebastian Dröge [Thu, 7 Mar 2013 16:38:40 +0000 (17:38 +0100)]
omxvideodec: Only negotiate a color format with downstream on the initial caps

11 years agoomxvideodec: Make sure the output port is disabled while we allocate buffers
Sebastian Dröge [Thu, 7 Mar 2013 16:29:43 +0000 (17:29 +0100)]
omxvideodec: Make sure the output port is disabled while we allocate buffers

11 years agoomx: Also wait for disabled output ports to be reconfigured
Sebastian Dröge [Thu, 7 Mar 2013 16:27:05 +0000 (17:27 +0100)]
omx: Also wait for disabled output ports to be reconfigured

11 years agoomxvideodec: Add buffer pool for sharing OpenMAX memory with downstream
Sebastian Dröge [Thu, 7 Mar 2013 13:10:12 +0000 (14:10 +0100)]
omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream

11 years agoomx: Add timeout to the flush operation and move buffer populating to a separate...
Sebastian Dröge [Thu, 7 Mar 2013 10:11:58 +0000 (11:11 +0100)]
omx: Add timeout to the flush operation and move buffer populating to a separate function

11 years agoomx: Remove min buffer count hack for RPi again
Sebastian Dröge [Wed, 6 Mar 2013 16:33:23 +0000 (17:33 +0100)]
omx: Remove min buffer count hack for RPi again

It's not necessary anymore

11 years agoomx: Do number of buffers configuration explicitely
Sebastian Dröge [Wed, 6 Mar 2013 16:05:51 +0000 (17:05 +0100)]
omx: Do number of buffers configuration explicitely

11 years agoomxvideodec: fixes reconfiguration
Josep Torra [Thu, 7 Mar 2013 10:24:54 +0000 (11:24 +0100)]
omxvideodec: fixes reconfiguration

Avoid having fixed fields from previous caps on reconfiguration.

11 years agoomx: use no-component-reconfigure hack on the Raspberry PI
Josep Torra [Thu, 7 Mar 2013 10:02:39 +0000 (11:02 +0100)]
omx: use no-component-reconfigure hack on the Raspberry PI

11 years agoAutomatic update of common submodule
Tim-Philipp Müller [Thu, 7 Mar 2013 00:03:28 +0000 (00:03 +0000)]
Automatic update of common submodule

From 2de221c to 04c7a1e

11 years agoomxvideoenc: drop unused data member
Josep Torra [Fri, 1 Mar 2013 14:32:47 +0000 (15:32 +0100)]
omxvideoenc: drop unused data member

11 years agoomxvideoenc: And set it actually on the right port
Sebastian Dröge [Fri, 1 Mar 2013 11:23:54 +0000 (12:23 +0100)]
omxvideoenc: And set it actually on the right port

11 years agoomxvideoenc: Set the coding type in the subclasses to the specific codec
Sebastian Dröge [Fri, 1 Mar 2013 11:18:08 +0000 (12:18 +0100)]
omxvideoenc: Set the coding type in the subclasses to the specific codec

11 years agoomxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a...
Sebastian Dröge [Fri, 1 Mar 2013 10:49:53 +0000 (11:49 +0100)]
omxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a gboolean

11 years agoomxvideo{dec,enc}: Don't use the input state if it wasn't set yet
Sebastian Dröge [Fri, 1 Mar 2013 10:44:17 +0000 (11:44 +0100)]
omxvideo{dec,enc}: Don't use the input state if it wasn't set yet

11 years agoomxaudioenc: Only enable the output port after we know the output format
Sebastian Dröge [Fri, 1 Mar 2013 10:25:04 +0000 (11:25 +0100)]
omxaudioenc: Only enable the output port after we know the output format

11 years agoomxvideoenc: Only enable the output port after we know the output format
Sebastian Dröge [Fri, 1 Mar 2013 10:24:56 +0000 (11:24 +0100)]
omxvideoenc: Only enable the output port after we know the output format

11 years agoomxvideodec: Only enable the output port after we know the output format
Sebastian Dröge [Thu, 28 Feb 2013 16:02:31 +0000 (17:02 +0100)]
omxvideodec: Only enable the output port after we know the output format

11 years agoomx: Handle errors more gracefully
Sebastian Dröge [Fri, 1 Mar 2013 10:18:18 +0000 (11:18 +0100)]
omx: Handle errors more gracefully

11 years agoomx: Return the OMX_ERRORTYPE from gst_omx_port_update_port_definition
Sebastian Dröge [Thu, 28 Feb 2013 14:48:53 +0000 (15:48 +0100)]
omx: Return the OMX_ERRORTYPE from gst_omx_port_update_port_definition

11 years agoomx: Return port definition update errors
Sebastian Dröge [Thu, 28 Feb 2013 14:37:53 +0000 (15:37 +0100)]
omx: Return port definition update errors

11 years agoomx: Add hack for RPi for the minimum number of buffers required for a port
Sebastian Dröge [Thu, 28 Feb 2013 12:57:43 +0000 (13:57 +0100)]
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.

11 years agoomx: Always tell the component about the right number of buffers that we're going...
Sebastian Dröge [Thu, 28 Feb 2013 12:26:56 +0000 (13:26 +0100)]
omx: Always tell the component about the right number of buffers that we're going to allocate

11 years agoomx: Invert assertion to let it express what was intended
Sebastian Dröge [Thu, 28 Feb 2013 12:07:58 +0000 (13:07 +0100)]
omx: Invert assertion to let it express what was intended

11 years agoomx: Add API for allocating a specific number of buffers and using EGLImages or buffe...
Sebastian Dröge [Thu, 28 Feb 2013 10:19:07 +0000 (11:19 +0100)]
omx: Add API for allocating a specific number of buffers and using EGLImages or buffers allocated elsewhere

11 years agoomx: Refactor code flow a bit if output port settings have changed
Sebastian Dröge [Wed, 27 Feb 2013 15:55:16 +0000 (16:55 +0100)]
omx: Refactor code flow a bit if output port settings have changed

11 years agoomx: Clean up port settings change handling
Sebastian Dröge [Wed, 27 Feb 2013 14:49:56 +0000 (15:49 +0100)]
omx: Clean up port settings change handling

11 years agoomxvideodec: initialize param structure before using it
Josep Torra [Wed, 27 Feb 2013 10:30:14 +0000 (11:30 +0100)]
omxvideodec: initialize param structure before using it

11 years agoomxvideoenc: prevent a NULL pointer access
Josep Torra [Wed, 27 Feb 2013 09:21:39 +0000 (10:21 +0100)]
omxvideoenc: prevent a NULL pointer access

11 years agoomxvideodec: prevent a NULL pointer access
Josep Torra [Tue, 26 Feb 2013 16:25:49 +0000 (17:25 +0100)]
omxvideodec: prevent a NULL pointer access

11 years agoomx: Fix deadlock during reconfiguration
Sebastian Dröge [Mon, 25 Feb 2013 12:11:16 +0000 (13:11 +0100)]
omx: Fix deadlock during reconfiguration

11 years agoomx: Auto-detect the port indizes if possible
Sebastian Dröge [Mon, 25 Feb 2013 11:38:27 +0000 (12:38 +0100)]
omx: Auto-detect the port indizes if possible

11 years agoomx: Refactor querying of component supported caps into its own function
Sebastian Dröge [Mon, 25 Feb 2013 10:42:38 +0000 (11:42 +0100)]
omx: Refactor querying of component supported caps into its own function

11 years agoomx: Refactor waiting for buffers to be released by the component to a separate function
Sebastian Dröge [Mon, 25 Feb 2013 09:41:12 +0000 (10:41 +0100)]
omx: Refactor waiting for buffers to be released by the component to a separate function

11 years agoomx: Add methods to set up and close a tunnel between components
Sebastian Dröge [Fri, 11 Jan 2013 17:44:13 +0000 (17:44 +0000)]
omx: Add methods to set up and close a tunnel between components

11 years agoomxaudioenc: Rename component variable
Sebastian Dröge [Mon, 25 Feb 2013 08:15:53 +0000 (09:15 +0100)]
omxaudioenc: Rename component variable

11 years agoomxvideoenc: Rename component variable
Sebastian Dröge [Mon, 25 Feb 2013 08:15:46 +0000 (09:15 +0100)]
omxvideoenc: Rename component variable

11 years agoomxvideodec: Rename component variable
Sebastian Dröge [Mon, 25 Feb 2013 08:12:22 +0000 (09:12 +0100)]
omxvideodec: Rename component variable

11 years agoomxvideoenc: remove duplicated line
Josep Torra [Fri, 22 Feb 2013 15:27:33 +0000 (16:27 +0100)]
omxvideoenc: remove duplicated line

11 years agoRetry loading libbcm_host.so without an absolute path if that failed
Sebastian Dröge [Fri, 22 Feb 2013 09:42:08 +0000 (10:42 +0100)]
Retry loading libbcm_host.so without an absolute path if that failed

11 years agoAdd missing file from last commit
Sebastian Dröge [Thu, 21 Feb 2013 19:32:42 +0000 (20:32 +0100)]
Add missing file from last commit

11 years agoAdd OpenMAX IL target for Bellagio
Sebastian Dröge [Thu, 21 Feb 2013 10:01:28 +0000 (11:01 +0100)]
Add OpenMAX IL target for Bellagio

Not tested since a very long time though.

11 years agoAllow using external OpenMAX IL headers
Sebastian Dröge [Thu, 21 Feb 2013 09:59:29 +0000 (10:59 +0100)]
Allow using external OpenMAX IL headers

11 years agoUpdate .gitignore
Sebastian Dröge [Thu, 21 Feb 2013 09:14:12 +0000 (10:14 +0100)]
Update .gitignore

11 years agoInstall the RPI config when the RPI target is selected
Sebastian Dröge [Thu, 21 Feb 2013 09:13:16 +0000 (10:13 +0100)]
Install the RPI config when the RPI target is selected

11 years agoSet default hacks for the RPI target and always initialize bcm_host
Sebastian Dröge [Thu, 21 Feb 2013 09:08:07 +0000 (10:08 +0100)]
Set default hacks for the RPI target and always initialize bcm_host

11 years agoAdd configure parameter for setting the OpenMAX IL target
Sebastian Dröge [Thu, 21 Feb 2013 09:05:37 +0000 (10:05 +0100)]
Add configure parameter for setting the OpenMAX IL target

11 years agoomx: Add FIXME for the future
Sebastian Dröge [Tue, 12 Feb 2013 10:55:39 +0000 (11:55 +0100)]
omx: Add FIXME for the future

11 years agoomx: Some minor refactoring and cleanup
Sebastian Dröge [Tue, 12 Feb 2013 10:49:21 +0000 (11:49 +0100)]
omx: Some minor refactoring and cleanup

11 years agoomx: Don't access the port's buffers array if it wasn't allocated yet
Sebastian Dröge [Tue, 12 Feb 2013 10:45:40 +0000 (11:45 +0100)]
omx: Don't access the port's buffers array if it wasn't allocated yet

11 years agoomx: Mark an array as const
Sebastian Dröge [Tue, 12 Feb 2013 10:44:40 +0000 (11:44 +0100)]
omx: Mark an array as const

11 years agoomx: Split enabling/disabling of port into sending the command and waiting for it
Sebastian Dröge [Tue, 12 Feb 2013 10:41:43 +0000 (11:41 +0100)]
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

11 years agoomx: Flushing is also allowed in Paused state
Sebastian Dröge [Tue, 12 Feb 2013 10:37:38 +0000 (11:37 +0100)]
omx: Flushing is also allowed in Paused state

11 years agoomxvideoenc: Set stride, slice height and buffer size
Sebastian Dröge [Tue, 12 Feb 2013 10:28:36 +0000 (11:28 +0100)]
omxvideoenc: Set stride, slice height and buffer size

11 years agoconfig: Add h264 and mpeg2 encoders to the raspberry pi config
Sebastian Dröge [Tue, 12 Feb 2013 10:09:30 +0000 (11:09 +0100)]
config: Add h264 and mpeg2 encoders to the raspberry pi config

Not completely working yet though.

11 years agoomxvideoenc: Properly negotiate OMX color format with the component
Sebastian Dröge [Tue, 12 Feb 2013 10:03:32 +0000 (11:03 +0100)]
omxvideoenc: Properly negotiate OMX color format with the component

11 years agoomxvideoenc: Implement getcaps() vfunc
Sebastian Dröge [Tue, 12 Feb 2013 09:53:24 +0000 (10:53 +0100)]
omxvideoenc: Implement getcaps() vfunc

11 years agoconfigure: use 1.0 gstconfig.h to detect disabled subsystems
Tim-Philipp Müller [Tue, 29 Jan 2013 21:32:53 +0000 (21:32 +0000)]
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.

11 years agoAutomatic update of common submodule
Stefan Sauer [Mon, 28 Jan 2013 19:44:41 +0000 (20:44 +0100)]
Automatic update of common submodule

From a942293 to 2de221c

11 years agoomx: add mpeg2 video decoder
Julian Scheel [Thu, 24 Jan 2013 13:02:36 +0000 (14:02 +0100)]
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>
11 years agoomx: Minimize the time when the messages lock is held
Sebastian Dröge [Fri, 18 Jan 2013 15:47:04 +0000 (16:47 +0100)]
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.