GStreamer on Android 6.0 - anyone?

Sebastian Dröge sebastian at centricular.com
Thu Oct 29 01:33:25 PDT 2015


On Mi, 2015-10-28 at 16:55 -0700, Carl Kovamees wrote:
> Sebastian Dröge-3 wrote
> > Are the decoders working? And can you get a debug log with amc*:6?
> 
> At the moment I'm not in a position to test the decoder easily -
> sorry.  
> 
> Attached is the debug log.

The problem here is the following:
> 10-28 19:57:25.244  21787-21838/com.example.android.camera2video D/GStreamer+amcvideoenc﹕ 0:00:01.296578123 0x9ea670c0 gstamcvideoenc.c:1291:gst_amc_video_enc_set_format:<amcvideoenc-omxqcomvideoencoderavc0> Configuring codec with format: {mime=video/avc, frame-rate=30.0, slice-height=240, color-format=21, height=240, width=320, bitrate=1000000, i-frame-interval=0, stride=320}
> 10-28 19:57:25.245  21787-21829/com.example.android.camera2video E/ACodec﹕ [OMX.qcom.video.encoder.avc] storeMetaDataInBuffers (output) failed w/ err -1010
> 10-28 19:57:25.246  21787-21829/com.example.android.camera2video W/ACodec﹕ do not know color format 0x7fa30c04 = 2141391876
> 10-28 19:57:25.247  21787-21829/com.example.android.camera2video W/ACodec﹕ do not know color format 0x7f000789 = 2130708361
> 10-28 19:57:25.250  21787-21829/com.example.android.camera2video E/ACodec﹕ [OMX.qcom.video.encoder.avc] configureCodec returning error -1010
> 10-28 19:57:25.250  21787-21829/com.example.android.camera2video E/ACodec﹕ signalError(omxError 0x80001001, internalError -1010)
> 10-28 19:57:25.250  21787-21828/com.example.android.camera2video E/MediaCodec﹕ Codec reported err 0xfffffc0e, actionCode 0, while in state 3
> 10-28 19:57:25.250  21787-21838/com.example.android.camera2video E/MediaCodec﹕ configure failed with err 0xfffffc0e, resetting...
> 10-28 19:57:25.256  21787-21829/com.example.android.camera2video I/OMXClient﹕ Using client-side OMX mux.
> 10-28 19:57:25.298  21787-21817/com.example.android.camera2video V/RenderScript﹕ 0xaec19000 Launching thread(s), CPUs 4
> 10-28 19:57:25.324  21787-21838/com.example.android.camera2video E/GStreamer+amcvideoenc﹕ 0:00:01.377070520 0x9ea670c0 gstamcvideoenc.c:1295:gst_amc_video_enc_set_format:<amcvideoenc-omxqcomvideoencoderavc0> Failed to configure codec
> 10-28 19:57:25.324  21787-21838/com.example.android.camera2video W/GStreamer+amcvideoenc﹕ 0:00:01.377156353 0x9ea670c0 gstamcvideoenc.c:1296:gst_amc_video_enc_set_format:<amcvideoenc-omxqcomvideoencoderavc0> error: Failed to call Java method: android.media.MediaCodec$CodecException: Error 0xfffffc0e
>     android.media.MediaCodec$CodecException: Error 0xfffffc0e
>             at android.media.MediaCodec.native_configure(Native Method)
>             at android.media.MediaCodec.configure(MediaCodec.java:1778)

You should also catch error messages in your application, that would've
told you already that the encoder failed to configure :)

So the problem here seems to be that the QCOM encoder does not like the
color format we selected for it. That's the old problem that the
MediaCodec API does not give us enough information about which actual
color formats the codec wants.


This will need some debugging on your side to find the correct one for
this specific hardware. Take a look further up to see which possible
color formats it supports:

> 10-28 19:57:24.246  21787-21787/com.example.android.camera2video I/GStreamer+amc﹕ 0:00:00.298949114 0xb36ff1a0 gstamc.c:1703:scan_codecs Color format 0: 0x7fa30c04
> 10-28 19:57:24.246  21787-21787/com.example.android.camera2video I/GStreamer+amc﹕ 0:00:00.299007552 0xb36ff1a0 gstamc.c:1703:scan_codecs Color format 1: 0x7f000789
> 10-28 19:57:24.246  21787-21787/com.example.android.camera2video I/GStreamer+amc﹕ 0:00:00.299059791 0xb36ff1a0 gstamc.c:1703:scan_codecs Color format 2: 0x7f420888
> 10-28 19:57:24.246  21787-21787/com.example.android.camera2video I/GStreamer+amc﹕ 0:00:00.299112812 0xb36ff1a0 gstamc.c:1703:scan_codecs Color format 3: 0x15
> 10-28 19:57:24.246  21787-21787/com.example.android.camera2video D/GStreamer+amc﹕ 0:00:00.299165833 0xb36ff1a0 gstamc.c:2018:accepted_color_formats Unknown color format 0x7f000789, ignoring

It claims to support the two color formats that in the first log it claims to know nothing about. And it doesn't indeed know about color format 21, which is what we tried.

You'll have to try the other ones to see if any of them work for this
codec, and also try to understand what exactly these color formats are.
If we support them in the decoder, you can check there how they're
handled... otherwise reverse engineering is needed.

-- 
Sebastian Dröge, Centricular Ltd · http://www.centricular.com

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 949 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20151029/005720bb/attachment.sig>


More information about the gstreamer-devel mailing list