Hello,
I'm running Android 2.3.3 on an iMX53, and have a C++ player using FFMpeg 0.10.2, to play MP4 videos (h264).
After playing videos for a long period of time (> 5h), I see the following error in the logcat:
05-01 12:20:49.670 2831 17021 I Decoder : opening file /mnt/sdcard/video.mp4
05-01 12:20:49.720 2831 17021 I OMXCodec: [OMX.Freescale.std.video_decoder.avc.v3.hw-based] allocating 1 buffers of size 1048576 on input port
05-01 12:20:49.730 2831 17021 I OMXCodec: [OMX.Freescale.std.video_decoder.avc.v3.hw-based] allocating 3 buffers of size 38016 on output port
05-01 12:20:49.800 2149 17023 I OMXPlayer: LEVEL: 1 FUNCTION: FilterOneBuffer LINE: 2046
05-01 12:20:49.800 2149 17023 I OMXPlayer: FilterOneBuffer: malloc memory failure:
05-01 12:20:49.800 2831 2837 E OMXCodec: [OMX.Freescale.std.video_decoder.avc.v3.hw-based] ERROR(0x8000100b, 0)
05-01 12:20:49.800 2149 17023 I OMXPlayer: LEVEL: 1 FUNCTION: FlushInputBuffer LINE: 2482
05-01 12:20:49.800 2149 17023 I OMXPlayer: FlushInputBuffer: failure state transition, current state=1
The error code seems to be a corrupted stream (OMX_Core.h: OMX_ErrorStreamCorrupt = (OMX_S32) 0x8000100B). But if I play the same video by itself, I don't see any error.
Any idea what's going on ? Any help would be appreciated.
thanks
Solved! Go to Solution.
hi
The failure happens becasue of the following reasons possibly, according to Media Codec lib and VPU lib/driver.
1. user-space 'malloc' function returns fail
2. mmap function or kzalloc of VPU driver returns fail. (drivers/mxc/vpu/mxc_vpu.c)
You might check if exhausted memory causes this problem?
-Max
hi
The failure happens becasue of the following reasons possibly, according to Media Codec lib and VPU lib/driver.
1. user-space 'malloc' function returns fail
2. mmap function or kzalloc of VPU driver returns fail. (drivers/mxc/vpu/mxc_vpu.c)
You might check if exhausted memory causes this problem?
-Max