Hi,
I have Android JB built according to the instructions from http://omappedia.org/wiki/4AJ.1.1_OMAP4_Jelly_Bean_Release_Notes and running on Blaze. I have a couple of questions about codecs:
1) Are there any additional steps required to enable audio/video HW-accelerated codecs for Android? It is written on the release page that: "This release was not verified with Android codecs."
2) When I'm trying to play a video, playback starts after quite long delay. logcat shows the following:
E/ASFDummyExtractor( 127): isASFParserAvailable
W/ASFDummyExtractor( 127): ASF parser is not available
E/WVMExtractor( 127): Failed to open libwvm.so
D/DOMX ( 127): hardware/ti/domx/domx/omx_rpc/src/omx_rpc.c:140 RPC_InstanceInit()
D/DOMX ( 127): ERROR: Can't open device, errorno from open = 2
D/DOMX ( 127): hardware/ti/domx/domx/omx_rpc/src/omx_rpc_stub.c:204 RPC_GetHandle()
D/DOMX ( 127): ERROR: Write failed returning status = 0xffffffff
D/DOMX ( 127): hardware/ti/domx/domx/omx_rpc/src/omx_rpc_stub.c:204 RPC_GetHandle()
D/DOMX ( 127): ERROR: failed check:0 - returning error: 0x81001 - Write failed
D/DOMX ( 127): hardware/ti/domx/domx/omx_proxy_common/src/omx_proxy_common.c:2326 OMX_ProxyCommonInit()
D/DOMX ( 127): ERROR: RPC function returned error 0x81001
D/DOMX ( 127): hardware/ti/domx/domx/omx_proxy_common/src/omx_proxy_common.c:2326 OMX_ProxyCommonInit()
D/DOMX ( 127): ERROR: failed check:(eError == OMX_ErrorNone) - returning error: 0x80001001 - Error returned from OMX API in ducati
D/DOMX ( 127): hardware/ti/domx/domx/omx_rpc/src/omx_rpc.c:261 RPC_InstanceDeInit()
D/DOMX ( 127): ERROR: Close failed on omx fd
D/DOMX ( 127): hardware/ti/domx/omx_proxy_component/omx_video_dec/src/omx_proxy_videodec.c:227 OMX_ProxyViddecInit()
D/DOMX ( 127): ERROR: failed check:eError == OMX_ErrorNone - returning error: 0x80001001 - Proxy common init returned error
I/OMXCodec( 127): [OMX.google.mpeg4.decoder] video dimensions are 352 x 288
I/OMXCodec( 127): [OMX.google.mpeg4.decoder] Crop rect is 352 x 288 @ (0, 0)
D/MediaPlayer( 903): getMetadata
I/OMXCodec( 127): [OMX.google.mpeg4.decoder] video dimensions are 480 x 208
I/OMXCodec( 127): [OMX.google.mpeg4.decoder] Crop rect is 480 x 208 @ (0, 0)
I/OMXCodec( 127): [OMX.google.mpeg4.decoder] video dimensions are 480 x 208
I/OMXCodec( 127): [OMX.google.mpeg4.decoder] Crop rect is 480 x 208 @ (0, 0)
I/SoftAAC2( 127): Reconfiguring decoder: 48000 Hz, 2 channels
I/AudioPlayer( 127): mLatencyUs = 348000
W/TimeInterpolator( 127): time is rewinding: -86938 Tf=1 t0=159186035 pos0=-86938 dt=0 now=159186035 last=0 now_last=159182495
D/AudioSpeexSRC( 127): AudioResamplerSpeex::init() mChannelCount=2, mInSampleRate=44100, mSampleRate=44100, mQuality=2
D/AudioSpeexSRC( 127): AudioResamplerSpeex::setSampleRate() mChannelCount=2, mInSampleRate=44100->48000, mSampleRate=44100, mQuality=2
That's because code tries to open missing /dev/rpmsg-omx1 file. "cat /proc/devices" shows that rpmsg_omx exists.
I've checked pre-built 4AJ.1.1 images and found that "/dev/rpmsg-omx1" exists in these images. Why /dev/rpmsg-omx1 is missing in images built according to the http://omappedia.org/wiki/4AJ.1.1_OMAP4_Jelly_Bean_Release_Notes ?
Thanks,
Alexey