Commit graph

52 commits

Author SHA1 Message Date
Tim-Philipp Müller
8f93c2448e mfc: fix compilation with newer GLib versions
that don't include pthread.h any more from public headers.
We could just fix this by including pthread.h ourselves,
but we may just as well use atomic ops for this and
simplify the code a little.

https://bugzilla.gnome.org/show_bug.cgi?id=693322
2013-02-09 18:48:04 +00:00
Sebastian Dröge
1e9aaee3ec mfc: Add support for RGB 2013-01-05 19:33:52 +01:00
Sebastian Dröge
f5ef0dd7ee mfc: Set variables to NULL to prevent usage after free/unref 2013-01-03 12:09:15 +01:00
Sebastian Dröge
6e05f1ba12 mfc: Fix leak of input/output buffer storage in the MFC decoder library 2013-01-03 10:53:01 +01:00
Sebastian Dröge
24b5dd72bd mfc: Fix typo 2013-01-03 10:10:57 +01:00
Sebastian Dröge
204ec7efd5 mfc: Only add crop metadata if required 2013-01-02 17:23:51 +01:00
Sebastian Dröge
83ea8f1256 fimc: Do STREAMON/STREAMOFF only once and not once per buffer 2013-01-02 16:53:19 +01:00
Sebastian Dröge
718fe99018 mfc: Require one more output buffer than returned by the driver 2013-01-02 16:38:47 +01:00
Sebastian Dröge
8ed8347866 mfc: Prefer NV12 over I420/YV12 2013-01-02 16:09:15 +01:00
Sebastian Dröge
710b7c3f2e mfc: The first frame produces output in our case 2013-01-02 15:40:10 +01:00
Sebastian Dröge
0fbfe0225c mfc: Request input buffers explicitely 2013-01-02 14:32:32 +01:00
Sebastian Dröge
644ef86728 mfc: Don't STREAMOFF if no STREAMON happened yet 2013-01-02 14:27:53 +01:00
Sebastian Dröge
954ad79320 mfc: Check if the MFC hardware exists before registering the element 2013-01-02 14:23:22 +01:00
Sebastian Dröge
83a8138b4a mfc: Check device capabilities before doing anything else 2013-01-02 14:16:06 +01:00
Sebastian Dröge
4abcec4ce8 mfc: Include codec_data in the buffer with the next frame 2013-01-02 12:33:42 +01:00
Sebastian Dröge
b765e33b86 mfc: Set format field of the instance struct 2013-01-02 11:56:20 +01:00
Sebastian Dröge
43ea557b9c mfc: Implement support for crop metadata 2013-01-02 11:56:20 +01:00
Sebastian Dröge
0489f52776 mfc: Check if the hardware is available in GstVideoDecoder::open() 2013-01-02 10:27:28 +01:00
Sebastian Dröge
8835cb5814 mfc: Add support for h263 and MPEG1/2 2013-01-01 11:05:24 +01:00
Sebastian Dröge
c3c33d88d4 mfc: Don't reconfigure if we get compatible caps 2012-12-31 15:59:08 +01:00
Sebastian Dröge
bee7328210 mfc: Only create the MFC context in ::set_format() 2012-12-31 15:59:08 +01:00
Sebastian Dröge
9739f58a7f mfc: Recreate fimc context if settings change 2012-12-31 15:59:08 +01:00
Sebastian Dröge
3a4ade2966 mfc: Some refactoring 2012-12-31 15:59:08 +01:00
Sebastian Dröge
7a8845243c mfc: Do zerocopy if we get EGLImage buffers 2012-12-31 15:59:07 +01:00
Sebastian Dröge
37603c7dbd mfc: Some minor fixes 2012-12-31 15:59:07 +01:00
Sebastian Dröge
2cf73892e1 mfc: Fix double-unmap of the codec data 2012-12-31 15:59:07 +01:00
Sebastian Dröge
30fd0ded4f mfc: Pass codec_data to the codec if there's some 2012-12-31 15:59:07 +01:00
Sebastian Dröge
cfe1ff1c08 mfc: Refactor fimc code a bit 2012-12-31 15:59:07 +01:00
Sebastian Dröge
3b172723d6 mfc: Downgrade an error to debug output 2012-12-31 15:59:07 +01:00
Sebastian Dröge
410eb82aff mfc: Some fimc cleanup 2012-12-31 15:59:07 +01:00
Sebastian Dröge
64230003d9 mfc: Add profile/level and width/height constraints 2012-12-31 15:59:07 +01:00
Sebastian Dröge
817d30f130 mfc: Don't leak buffers when setting new dest settings for a direct buffer 2012-12-31 15:59:07 +01:00
Sebastian Dröge
21258a52cd mfc: Add initial MPEG4 support 2012-12-31 15:59:07 +01:00
Sebastian Dröge
fbf42806dc mfc: Add some more debug output 2012-12-31 15:59:06 +01:00
Sebastian Dröge
fe5b268a1c mfc: Implement tracking of frames using the v4l2_buffer timestamp 2012-12-31 15:59:06 +01:00
Sebastian Dröge
35400051fa mfc: Reset some more variables on ::reset() 2012-12-31 15:59:06 +01:00
Sebastian Dröge
8c433b8fb9 mfc: Also add support for YV12 2012-12-31 15:59:06 +01:00
Sebastian Dröge
2212880093 mfc: Add support for video meta 2012-12-31 15:59:06 +01:00
Sebastian Dröge
6111f89365 mfc: Implement negotiation to NV12 or I420 based on downstream caps 2012-12-31 15:59:06 +01:00
Sebastian Dröge
c77e820a52 mfc: Workaround for wrongly reported strides by FIMC 2012-12-31 15:59:06 +01:00
Sebastian Dröge
52f8649586 mfc: Add proper support for MFC decoder strides 2012-12-31 15:59:06 +01:00
Sebastian Dröge
94acf4189c mfc: Try with I420 for now, it's easier to debug 2012-12-31 15:59:06 +01:00
Sebastian Dröge
440dec8a68 mfc: Add some more debug output 2012-12-31 15:59:06 +01:00
Sebastian Dröge
048a09682f mfc: Don't require stride to be set on src parameters 2012-12-31 15:59:06 +01:00
Sebastian Dröge
dd56c6b5b6 mfc: The mfc decoder library is dual licensed too
Apache License 2.0 and LGPL2+
2012-12-31 15:59:05 +01:00
Sebastian Dröge
dedbb443ed mfc: Use CAMIF/FIMC for hardware color format conversion and de-tiling 2012-12-31 15:59:05 +01:00
Sebastian Dröge
1ca618fa6a mfc: Only unref the outbuf if it doesn't belong to the frame 2012-12-31 15:59:05 +01:00
Sebastian Dröge
902e72874a mfc: Port to GStreamer 1.0 2012-12-31 15:59:05 +01:00
Sebastian Dröge
01da756491 mfc: Add initial decoder element implementation
This does not copy the output to any output buffers yet.
Other than that should be basically functional already.
2012-12-31 15:59:05 +01:00
Sebastian Dröge
5d6c33d7e4 mfc: Add plugin and decoder skeleton 2012-12-31 15:59:05 +01:00