Commit graph

420 commits

Author SHA1 Message Date
Sebastian Dröge
67dc871116 omx: Reset some more buffer fields as required 2013-03-14 17:26:51 +01:00
Sebastian Dröge
5bab4a05f0 omx: The hack to disable usage of EOS buffers is not necessary anymore on RPi 2013-03-14 17:01:08 +01:00
Sebastian Dröge
ec687f1414 omx: Reset the flags for output ports when releasing a buffer, not for input ports 2013-03-14 17:00:42 +01:00
Sebastian Dröge
02335ef953 omx: Only unref caps after usage of its fields 2013-03-14 15:03:02 +01:00
Sebastian Dröge
bda1e97abd omxvideodec: Simplify bufferpool implementation 2013-03-14 14:51:32 +01:00
Sebastian Dröge
9128ba5018 omxvideodec: Improve min/max buffer counts handling 2013-03-14 12:52:46 +01:00
Sebastian Dröge
22dce51dd4 omx: Handle the OMX_EventBufferFlag to detect EOS too 2013-03-14 12:51:54 +01:00
Sebastian Dröge
acf15e84a9 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 13:10:28 +01:00
Sebastian Dröge
b9af5f4f31 omxvideoenc: Properly check the nVersion field 2013-03-13 10:21:49 +01:00
Sebastian Dröge
68c8196912 omxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that 2013-03-13 09:38:07 +01:00
Sebastian Dröge
1ebd34e637 omxvideodec: Make sure to always get the right buffer 2013-03-13 09:38:03 +01:00
Sebastian Dröge
f4ad6e0858 omxvideodec: Make sure the buffer is released to the pool if it's not the one we wanted 2013-03-13 09:37:58 +01:00
Sebastian Dröge
ef357cce80 omxvideodec: Drop too late frames instead of finishing them 2013-03-13 09:37:43 +01:00
Sebastian Dröge
fa7be0b618 omx: Release buffers to the correct port 2013-03-13 09:37:36 +01:00
Sebastian Dröge
303b6c4dc5 omx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL 2013-03-13 09:37:02 +01:00
Sebastian Dröge
f505dad87a 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-13 09:35:20 +01:00
Sebastian Dröge
3544fa5ae3 omx: Don't set profile/level in other encoders if downstream caps don't specify any 2013-03-11 13:59:15 +01:00
Sebastian Dröge
77f95de529 omxh264enc: If caps specify no profile/level use the component's defaults 2013-03-11 13:49:38 +01:00
Sebastian Dröge
3c13502b75 omxvideoenc: Always allocate output buffers from the loop function 2013-03-11 13:45:04 +01:00
Sebastian Dröge
bd53faacc9 omxh264enc: The h264 encoders are supposed to output byte-stream/au 2013-03-11 13:13:22 +01:00
Sebastian Dröge
79a1fed0e0 omxvideoenc: Wait until the Executing state is reached before passing buffers to the component 2013-03-11 11:52:57 +01:00
Sebastian Dröge
448ea34b75 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:39:25 +01:00
Sebastian Dröge
8bf902b69d omxaudioenc: Disable output port when setting a new format 2013-03-11 10:29:44 +01:00
Sebastian Dröge
f518ce5ed9 omxvideoenc: Disable output port when setting a new format 2013-03-11 10:29:30 +01:00
Sebastian Dröge
00be69f4a0 omxvideodec: Disable output port when setting a new format
Based on a patch by Josep Torra <n770galaxy@gmail.com>
2013-03-11 10:22:07 +01:00
Sebastian Dröge
65174bbd7f omx: Catch errors when releasing buffers to a port and handle them 2013-03-11 10:04:10 +01:00
Sebastian Dröge
eac2078056 omxvideoenc: Use the correct video codec state when filling an input buffer 2013-03-10 12:09:23 +01:00
Sebastian Dröge
98cf9f6fe2 omxvideoenc: Store correct input state 2013-03-10 12:05:50 +01:00
Sebastian Dröge
fb3b213b3e omxvideoenc: Allocate output buffers as early as possible 2013-03-10 11:31:55 +01:00
Sebastian Dröge
b9bf849a39 omx: Log unknown events 2013-03-10 11:03:18 +01:00
Josep Torra
bd071327da omx: Fix deadlock in encoders and add explainatory comments. 2013-03-09 14:14:40 +01:00
Josep Torra
7423e3e023 omxvideodec: fix printf format identifier 2013-03-09 13:27:08 +01:00
Josep Torra
cde5df17fa omx: Minor changes on debuging info 2013-03-09 13:24:30 +01:00
Josep Torra
6d8bf76391 omxvideodec: avoid a deadlock 2013-03-09 13:24:16 +01:00
Sebastian Dröge
aa6be53375 omxvideodec: Don't forget to populate output port 2013-03-08 15:58:01 +01:00
Sebastian Dröge
c014b1c9a3 omx: Flush and stop srcpad when configuring new caps 2013-03-08 15:50:20 +01:00
Sebastian Dröge
716adfa5be Revert "omx: use no-component-reconfigure hack on the Raspberry PI"
This reverts commit e123b2089f.

It's not required anymore after the fix from the last commit.
2013-03-07 17:40:21 +01:00
Sebastian Dröge
ed0de9d699 omxvideodec: Only negotiate a color format with downstream on the initial caps 2013-03-07 17:38:40 +01:00
Sebastian Dröge
bbd30a96bd omxvideodec: Make sure the output port is disabled while we allocate buffers 2013-03-07 17:29:43 +01:00
Sebastian Dröge
20c9ae0823 omx: Also wait for disabled output ports to be reconfigured 2013-03-07 17:27:05 +01:00
Sebastian Dröge
0cd96e8c6b omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream 2013-03-07 14:10:12 +01:00
Sebastian Dröge
7a1eaec3b9 omx: Add timeout to the flush operation and move buffer populating to a separate function 2013-03-07 13:57:00 +01:00
Sebastian Dröge
001b7f0ed9 omx: Remove min buffer count hack for RPi again
It's not necessary anymore
2013-03-07 13:56:50 +01:00
Sebastian Dröge
60861f3990 omx: Do number of buffers configuration explicitely 2013-03-07 13:56:44 +01:00
Josep Torra
cc495aeb16 omxvideodec: fixes reconfiguration
Avoid having fixed fields from previous caps on reconfiguration.
2013-03-07 11:24:54 +01:00
Josep Torra
e123b2089f omx: use no-component-reconfigure hack on the Raspberry PI 2013-03-07 11:02:39 +01:00
Josep Torra
118c023f55 omxvideoenc: drop unused data member 2013-03-01 15:32:47 +01:00
Sebastian Dröge
0b348473fa omxvideoenc: And set it actually on the right port 2013-03-01 12:24:09 +01:00
Sebastian Dröge
eef92abf28 omxvideoenc: Set the coding type in the subclasses to the specific codec 2013-03-01 12:18:08 +01:00
Sebastian Dröge
42937eaea0 omxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a gboolean 2013-03-01 11:49:53 +01:00