大家,
当我开发android原生问题时,我遇到了一个问题。
我编写了一个程序,使用本机mediacodec编码yuv文件(使用硬件H264编码器)。
当我按照正常流程(从java层调用测试代码)时,它运行良好。
但是当我把测试代码变成exec文件时(使用include $(BUILD_EXECUTABLE)),然后将exec文件推到android板上,运行./test,运行下面的代码,并且不要返回:
err = mCodec->dequeueInputBuffer( &indexInBuffer, -1 );
有人遇到过这个问题吗?请帮助我,这让我困惑了很长时间。
可能是权威问题吗?
答案 0 :(得分:1)
dequeueInputBuffer函数的最后一个参数指定超时(以微秒为单位)。根据文档,否定超时表示“无限”。使用超时> = 0,函数将返回。