Xavier Claessens
515398a9ff
amc: Move MediaCodec JNI wrapper into its own module
...
This will facilitate adding another implementation based on
NdkMediaCodec instead of JNI.
2019-08-20 08:53:55 -04:00
Xavier Claessens
9b9e39be24
amc: Fix crash when a sync_meta survives its sink
...
_amc_gl_free() could be called after the GstAmcVideoDec has been
finalized, in the case downstream still has a ref to a buffer.
2019-08-14 16:37:19 +00:00
Tim-Philipp Müller
7853700b50
meson: add more plugins to plugins list
...
Makes sure their path gets added to the uninstalled environment
and makes sure they get included in the docs.
2019-05-30 20:41:57 +02:00
Roman Shpuntov
1465a7ecdd
androidmedia: added path /system/vendor/etc to dependency
2019-05-03 19:10:22 +07:00
Tim-Philipp Müller
c39fd4d898
androidmedia: add Hardware tag to element metadata
2019-02-19 23:45:34 +00:00
Matthew Waters
b907187ade
androidmedia: also install java sources
...
As needed by our ndk-build integration
2018-12-07 07:46:27 +00:00
Jordan Petridis
1f562870ee
Run gst-indent through the files
...
This is required before we enabled an indent test in the CI.
https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33
2018-11-28 14:18:26 +00:00
Matthew Waters
7dc7607475
androidmedia/meson: we also depend on gmodule and orc
2018-08-31 18:08:55 +10:00
Nirbheek Chauhan
4af7637012
meson: Add build files for androidmedia and opensles
...
Note that androidmedia requires Android gstgl
2018-08-29 14:58:19 +05:30
Jan Schmidt
39365948ff
androidmedia: Invert the transform matrix from the decoder
...
The transform from mediacodec applies to the texture coords, but
GStreamer affine meta applies to the video geometry, which is the
opposite - so invert it to get display correct for decoders
that require transforming
2018-06-15 05:01:20 +10:00
Justin Kim
297f7e4f04
ahc: enable autofocus callback
...
It should be enabled to set autofocus properly, but
it seems to be commented out mistakenly from the first commit.
https://bugzilla.gnome.org/show_bug.cgi?id=790945
2018-01-26 10:13:00 +00:00
Tim-Philipp Müller
06e4403fdb
gl: update plugins to use GstGL from -base
2017-12-19 12:02:31 +00:00
Ursula Maplehurst
236398ee3f
androidmedia: when flushing, better handle IllegalStateException received from getOutputBuffer
...
1. Similar to 880f3d8
, don't consider not getting an output buffer as
an error during flushing. I've seen the following sometimes when
encoding:
W GStreamer+amcvideoenc: java.lang.IllegalStateException
W GStreamer+amcvideoenc: at android.media.MediaCodec.getBuffer(Native Method)
W GStreamer+amcvideoenc: at android.media.MediaCodec.getOutputBuffer(MediaCodec.java:2886)
2. For amcvideodec/enc, call _find_nearest_frame (which grabs a fresh
reference on a GstVideoCodecFrame) after we have an output buffer,
so as to not leak the reference, in case getting an output buffer
fails.
Otherwise, if we get an error grabbing the output buffer, we leak
the reference to the frame. This can cause issues with a
v4l2bufferpool feeding the encoder not being able to clean itself
up properly due to buffers still being marked as in-use.
https://bugzilla.gnome.org/show_bug.cgi?id=791258
2017-12-06 10:32:02 +02:00
Matthew Waters
4d2382fb27
amc: actually use the provided application class loader
...
For the camera and sensor
Fixes a couple of ClassNotFound java exceptions when initializing GStreamer
off the main thread.
2017-09-05 21:16:33 +10:00
Sebastian Dröge
732012a78e
amcvideodec: Unref downstream caps after usage
...
https://bugzilla.gnome.org/show_bug.cgi?id=782771
2017-05-18 14:34:46 +03:00
Nicolas Dufresne
4261692187
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-16 14:05:52 -04:00
shakin chou
febbaaddcf
amcvideodec/enc: Correctly check for no PTS on input buffers
...
MediaCodec gives us a presentation timestamp of 0 if it does not know
anything, but GStreamer gives us GST_CLOCK_TIME_NONE. Don't mix up these
two.
https://bugzilla.gnome.org/show_bug.cgi?id=780190
2017-04-26 13:40:28 +03:00
Thibault Saunier
78022a6e0c
docs: Port all docstring to gtk-doc markdown
2017-04-12 12:57:57 -03:00
Matthew Waters
956c4d0bde
gl/format: use our own GL format enum's instead of gstvideo's
...
They can describe in more detail (such as component sizes) the requested format.
2017-03-13 21:10:58 +11:00
Sebastian Dröge
aca89aeeaa
amcvideoenc: Encoder output is generally not properly parsed
...
Don't claim it is and let h264parse and other parsers do their job.
https://bugzilla.gnome.org/show_bug.cgi?id=774772
2017-02-08 00:05:47 +02:00
Sebastian Dröge
7817f85759
amcvideoenc: Set timestamps on header buffers too
...
https://bugzilla.gnome.org/show_bug.cgi?id=774772
2017-02-08 00:05:47 +02:00
Sebastian Dröge
c27091d67f
amcvideoenc: Encoded H264 is generally not AU aligned
...
Claiming that it is, can cause h264parse to skip some parsing steps and
the output stays unaligned.
https://bugzilla.gnome.org/show_bug.cgi?id=774772
2017-02-08 00:05:47 +02:00
Edward Hervey
e99e69843a
androidmedia: Use proper instance name
2017-01-13 14:46:36 +01:00
Matthew Waters
ed03fd6d3f
amcvideodec: fix build error from change in libgstgl
...
gstamcvideodec.c: In function 'gst_amc_video_dec_src_query':
gstamcvideodec.c:2412:55: error: 'self' undeclared (first use in this function)
if (gst_gl_handle_context_query ((GstElement *) self, query,
2017-01-13 21:17:33 +11:00
Matthew Waters
03b539bdfc
gl: update sys dependants for function removals
...
4315a4b54d
forgot to change the androidmedia/videotoolbox/caopengllayer
sources as required.
2017-01-13 13:01:28 +11:00
Sebastian Dröge
9988ad9c42
androidmedia: Add support for Opus in the decoder
2017-01-05 15:05:42 +02:00
Sebastian Dröge
8b46e1b95a
androidmedia: Silently skip COLOR_FormatAndroidOpaque when converting to caps
...
This is special and handled in the decoder when doing rendering to a
surface. Printing a warning for this is just unnecessary noise
2017-01-05 15:05:42 +02:00
Sebastian Dröge
5619690ae1
androidmedia: Add support for VP9
2017-01-04 20:59:39 +02:00
Sebastian Dröge
eca6c35601
androidmedia: Actively request the Java VM from the application
...
This is more consistent with how we already request the application
class loader and other application resources elsewhere.
2017-01-03 18:53:39 +02:00
Ursula Maplehurst
d741c9ecc3
androidmedia: some files are missing in the release tarball
...
https://bugzilla.gnome.org/show_bug.cgi?id=776591
2016-12-30 07:37:23 +01:00
Sebastian Dröge
3357ddb0e1
amcaudiodec: Set "is-adts" to 1 for ADTS AAC
...
Otherwise it fails to decode.
https://bugzilla.gnome.org/show_bug.cgi?id=740101
2016-12-15 14:09:25 +02:00
Sebastian Dröge
e6651a733b
amc: Allow registering codecs, camera or sensors if any of the others failed
...
https://bugzilla.gnome.org/show_bug.cgi?id=774048
2016-11-08 13:52:17 +02:00
Sebastian Dröge
56ee6c4cee
ahs: Don't assert on deinit if initialization failed before
...
Initialization failure is handled correctly by just not registering the
ahssrc element.
https://bugzilla.gnome.org/show_bug.cgi?id=774048
2016-11-08 13:45:17 +02:00
Matthew Waters
41a6448918
gl: GST_GL_TYPE -> GST_TYPE_GL
...
Some deprecated symbols are kept for backwards compatibility
2016-11-03 16:16:12 +11:00
Thibault Saunier
2fb716409c
Use the new API to post flow ERROR messages on the bus
...
https://bugzilla.gnome.org/show_bug.cgi?id=770158
2016-08-26 19:23:31 -03:00
Sebastian Dröge
3db0fa37b7
amc: Fix call to realloc() to allocate the correct size of items
2016-08-08 11:29:04 +02:00
Sebastian Dröge
2ff2ad9353
androidmedia: Run gst-indent over everything once again
2016-08-01 19:57:06 +03:00
Sebastian Dröge
8748ce94f4
amc: If we find multiple codecs with the same name, just merge them
...
On the ODroid C1+ the H265 and H264 have the same name but are listed as two
different codecs. We have to handle them as the same one that supports both,
as otherwise we will register the same GType name twice which fails and we
then only have H265 support and not H264 support.
2016-08-01 19:57:03 +03:00
Sebastian Dröge
cce42ea5a6
amc: Use a GQueue for O(1) append instead of a GList
2016-08-01 10:15:04 +03:00
Sebastian Dröge
74158bbf37
amc: Print generated raw/encoded caps in debug logs
2016-07-29 08:54:00 +03:00
Martin Kelly
a04e6b0cb2
new plugin: Android hardware sensor source
...
ahssrc is a new plugin that enables Gstreamer to read from the
android.hardware.Sensor Android sensors. These sensors are treated as
buffers and can be passed through and manipulated by the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=768110
2016-07-14 17:13:30 -04:00
Matthew Waters
989200820d
glmemory: add the texture type to allocate to parameters
...
Rather than assuming something. e.g. zerocopy on iOS with GLES3 requires
the use of Luminance/Luminance Alpha formats and does not work with
Red/RG textures.
2016-06-29 18:04:28 +10:00
Xavier Claessens
26b66a1db5
ahcsrc: Avoid a div by 0 warning
...
https://bugzilla.gnome.org/show_bug.cgi?id=767302
2016-06-06 21:19:33 +03:00
Xavier Claessens
1ee15d1385
amcvideoenc: Do not call gst_object_unref on GstCaps
...
https://bugzilla.gnome.org/show_bug.cgi?id=767298
2016-06-06 17:53:01 +01:00
Tim-Philipp Müller
889a1a9b90
androidmedia: fix error debug message when camera doesn't exist
...
Makes no sense to include the system error here since errno
will likely not be set and then it says 'system error: success'
which is confusing.
https://bugzilla.gnome.org/show_bug.cgi?id=767087
2016-05-31 20:41:14 +01:00
Justin Kim
fe62233b83
ahcsrc: release resources in 'finalize' function
...
In general, 'dispose' function is used for dropping all references
and 'finalize' is called for releasing instances.
https://bugzilla.gnome.org/show_bug.cgi?id=763309
2016-05-31 12:58:06 +01:00
Martin Kelly
8c236a9f2e
ahc: fix potential NULL deref
...
This bug was found via cppcheck static analysis.
If android.hardware.Camera.getParameters returns NULL, then object will
be NULL, and we won't allocate params. This means that the GST_DEBUG
statement referencing params->object will be invalid. Fix this by
exiting early if android.hardware.Camera.getParameters returns NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=766638
2016-05-20 09:16:28 +03:00
Martin Kelly
537ba5d109
ahc: fix typo in doc blurb
...
https://bugzilla.gnome.org/show_bug.cgi?id=766679
2016-05-19 20:47:58 +01:00
Sebastian Dröge
00d961a839
amcaudiodec: Set layout=interleaved in raw audio caps
...
Otherwise the GAP event fallback negotiation will fail to produce complete
srcpad caps, and thus fail.
https://bugzilla.gnome.org/show_bug.cgi?id=766289
2016-05-11 23:49:36 +03:00
Justin Kim
c8e34e93b2
androidmeida: replace with new surfacetexture for ahcsrc
...
GstAmcSurfaceTexture is more clear and simple than GstAGSurfaceTexture.
https://bugzilla.gnome.org/show_bug.cgi?id=763099
2016-05-06 09:18:00 +03:00