Android的媒体codeC的HEVC [英] Android MediaCodec for HEVC
问题描述
我在寻找到使用Android的媒体codec类脱code HEVC。有没有对项目做任何的例子?
I'm looking into using the android MediaCodec class to decode HEVC. Are there any examples of projects that do this?
在present我配置去codeR具有以下内容:
At present I configure the decoder with the following:
AMEDIAFORMAT_KEY_MIME: "video/hevc"
AMEDIAFORMAT_KEY_MAX_HEIGHT: 4320
AMEDIAFORMAT_KEY_MAX_WIDTH: 8192
AMEDIAFORMAT_KEY_HEIGHT: 1600
AMEDIAFORMAT_KEY_WIDTH: 3840
AMEDIAFORMAT_KEY_FRAME_RATE: 24
AMEDIAFORMAT_KEY_PUSH_BLANK_BUFFERS_ON_STOP: 1
在使用这个设置,我没有得到任何视频输出。我也试着设置 CSD-0
, CSD-1
和 CSD-2
到VPS,分别为SPS和PPS,但没有运气。
When using this setup, I get no video output. I've also tried setting csd-0
, csd-1
and csd-2
to the VPS, SPS and PPS respectively, but have had no luck.
我得到在控制台下面的错误,但已经保证了它是不相关的:
I get the following error in the console, but have been assured it is unrelated:
01-19 15:40:36.048: E/OMXNodeInstance(17230): OMX_GetExtensionIndex OMX.google.android.index.storeMetaDataInBuffers failed
01-19 15:40:36.048: E/ACodec(17230): [OMX.google.hevc.decoder] storeMetaDataInBuffers failed w/ err -2147483648
我发现, dequeueOutputBuffer
总是返回 1
。看来,已排队通过
他们是从 dequeueInputBuffer
将返回指数queueInputBuffer 获得前dequeueOutputBuffer
。
I have found that dequeueOutputBuffer
is always returning -1
. It appears that dequeueInputBuffer
is returning indices that have been queued by queueInputBuffer
before they are obtained from dequeueOutputBuffer
.
有没有人设法去$ C C HEVC视频的Android?
Has anyone managed to decode HEVC video on Android?
推荐答案
这个问题似乎是与分辨率 - 512x216没有工作,给了上述症状,但1920x800的罚款。我问过<一个href="http://stackoverflow.com/questions/28068537/android-media$c$cc-hevc-supported-resolutions">another什么是支持的分辨率问题。
The problem seems to be with the resolution - 512x216 didn't work and gave the above symptoms, but 1920x800 worked fine. I've asked another question about what resolutions are supported.
这篇关于Android的媒体codeC的HEVC的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!