Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
648 views
in Technique[技术] by (71.8m points)

android - Mediacodec jelly-bean

I'm working with media codec for an .mp4 file on jelly-bean and getting this in logcat

02-27 12:12:13.645: A/ACodec(6760): frameworks/av/media/libstagefright/ACodec.cpp:1041 CHECK(def.nBufferSize >= size) failed.
02-27 12:12:13.645: A/libc(6760): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 6778 (CodecLooper)

Can anyone tell me what is this? and how to solve it?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You provided not much info, so the answer follows:

Looks like it is internal check of libstagefright library.

I faced same error on Samsung Tab 2 on decoder's configuration.

mDecoder = MediaCodec.createDecoderByType(mime);

After the decoder is created it is configured by input format received from the extractor(aka demuxer)

MediaFormat inputFormat = extractor.getTrackFormat(i);

mDecoder.configure(inputFormat, null, null, 0); // <-- crashes here

Fix (place it before mDecoder.configure):

inputFormat.setInteger(MediaFormat.KEY_MAX_INPUT_SIZE, 0);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...