Sebastian Dröge
ae7ed44e6b
omxvideoenc: Try harder to deallocate the buffers after errors happened
2011-07-25 10:47:28 +02:00
Sebastian Dröge
9e1cfa300b
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-25 10:46:49 +02:00
Sebastian Dröge
7350dcc8cd
omxvideoenc: Add initial support for stride conversion
2011-07-21 11:15:14 +02:00
Sebastian Dröge
254bee9be9
omx: Set default roles for the components if none were set from the config file
2011-07-21 10:38:26 +02:00
Sebastian Dröge
a86debaf36
omx: Failure to set the component role is fatal
2011-07-21 10:36:19 +02:00
Sebastian Dröge
644fa35789
omxvideoenc: Add support for setting codec_data on the srcpad caps
2011-07-21 07:53:25 +02:00
Sebastian Dröge
182a488f49
omxvideoenc: Free/drop GstVideoFrames that resulted in an empty buffer
2011-07-21 07:44:34 +02:00
Sebastian Dröge
34da745dc5
basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame
2011-07-21 07:44:10 +02:00
Sebastian Dröge
c0d304f819
omxvideoenc: Remove obsolete TODO comment
2011-07-21 07:31:05 +02:00
Sebastian Dröge
e8b2ffe6f4
omx: Use libgstopenmax.so for the plugin filename and openmax for the plugin name
...
Resolves conflicts with gst-openmax.
2011-07-20 11:09:54 +02:00
Sebastian Dröge
2343decb3c
omxvideoenc: Add video encoder base class and MPEG4 video encoder
...
Unfortunately requires lots of hacks again to work properly with
Bellagio.
2011-07-20 11:08:18 +02:00
Sebastian Dröge
9619d9c95d
basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass
2011-07-20 11:08:18 +02:00
Sebastian Dröge
fdd049a41c
basevideoencoder: Delay sending of serialized sink events until finish_frame()
2011-07-20 11:08:18 +02:00
Sebastian Dröge
159093cd6a
basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder
2011-07-20 11:08:18 +02:00
Sebastian Dröge
92643716e4
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-20 08:19:01 +02:00
Sebastian Dröge
71d176f71a
omx: Improve debug output a bit
2011-07-19 12:29:51 +02:00
Sebastian Dröge
b6558570bf
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:54 +02:00
Sebastian Dröge
4616d804ac
omx: Add infrastructure to enable special hacks for broken OpenMAX implementations
2011-07-19 10:33:15 +02:00
Sebastian Dröge
f3f3bd1dff
omx: When acquiring a buffer from an input port always wait until all output ports are reconfigured
2011-07-18 13:10:49 +02:00
Sebastian Dröge
9377aefb87
omxvideodec: Add support for converting between omx and gst rowstrides
2011-07-18 08:41:20 +02:00
Sebastian Dröge
51dbc82ef4
omx: Provide all buffers to output ports after enabling them
2011-07-14 10:34:09 +02:00
Sebastian Dröge
41feed55b7
omxvideodec: Add support for NV12 / OMX_COLOR_FormatYUV420SemiPlanar
2011-07-14 08:29:03 +02:00
Sebastian Dröge
961445aa1b
omxvideodec: Only flush the component ports after we passed input to them
2011-07-14 07:58:41 +02:00
Sebastian Dröge
252624c7cc
omxvideodec: Only change states downwards if an upper state was reached
2011-07-13 21:19:34 +02:00
Sebastian Dröge
f0cbbad0f1
omx: Add support for setting the component-role
2011-07-13 20:37:02 +02:00
Sebastian Dröge
0a9fe2f146
omx: Improve error reporting by formatting the error codes better and also providing their string representation
2011-07-13 20:22:51 +02:00
Sebastian Dröge
5f5d2edd16
build: Dist autogen.sh
2011-07-13 14:36:14 +02:00
Sebastian Dröge
9ab5f79784
build: Only require GStreamer >= 0.10.29 and GLib >= 2.16
2011-07-13 14:35:51 +02:00
Sebastian Dröge
5732b44606
build: Dist gstomx.conf
2011-07-13 14:04:47 +02:00
Sebastian Dröge
96fc0375d6
build: Clean _stdint.h on "make distclean"
2011-07-13 14:04:20 +02:00
Sebastian Dröge
8a78da68a6
omxvideodec: Fix typo
2011-07-13 14:02:50 +02:00
Sebastian Dröge
0966307189
omx: Dist gstomx.h
2011-07-13 13:59:50 +02:00
Sebastian Dröge
fb0ca24654
omxvideodec: Set SYNCFRAME flag on the OMX buffers for non-delta units
2011-07-13 12:46:50 +02:00
Sebastian Dröge
f5690ff412
omxvideodec: Free all pending frames when resetting the decoder
...
Workaround for https://bugzilla.gnome.org/show_bug.cgi?id=654529
2011-07-13 12:37:44 +02:00
Sebastian Dröge
af159705c9
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 10:02:20 +02:00
Sebastian Dröge
1b08dfa2a6
omxvideodec: Fix deadlock when finishing old frames that are left over by the decoder
2011-07-13 09:31:22 +02:00
Sebastian Dröge
24e0196d1d
omxh264dec: It's called H.264, not H264
2011-07-12 11:37:28 +02:00
Sebastian Dröge
a24cdd41bc
omxvideodec: Make sink/src pad template caps configurable
2011-07-12 11:36:42 +02:00
Sebastian Dröge
2023754bcf
omx: Allow to set a preferred configuration directory with the GST_OMX_CONFIG_DIR environment variable
2011-07-12 11:13:50 +02:00
Sebastian Dröge
113d18caea
omxvideodec: Make core/component-name and in/outport index configurable
2011-07-12 11:04:16 +02:00
Sebastian Dröge
940febae88
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 11:04:11 +02:00
Sebastian Dröge
6bd84629ed
omxh264dec: Rename from omxh264videodec to omxh264dec
2011-07-12 08:54:22 +02:00
Sebastian Dröge
4fede99e2d
omxh264videodec: Require alignment=au and stream-format={avc,bytestream}
2011-07-12 08:40:48 +02:00
Sebastian Dröge
0c72a15019
basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state
...
The subclass might want to access the old state.
2011-07-12 08:36:01 +02:00
Sebastian Dröge
99c9f57460
basevideodecoder: Track present position on discont before resetting it
2011-07-12 08:36:01 +02:00
Sebastian Dröge
99da6b1db1
basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events
2011-07-12 08:36:00 +02:00
Sebastian Dröge
07e3936abf
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-12 08:36:00 +02:00
Sebastian Dröge
9edd003406
basevideodecoder: Set the correct lists to NULL after freeing
2011-07-12 08:36:00 +02:00
Sebastian Dröge
9a2b87f196
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:36:00 +02:00
Sebastian Dröge
079098c3d6
omxh264videodec: Add h.264 video decoder
2011-07-12 08:34:44 +02:00