大家好,我试着用Android MediaCodec来编码。我遵循"grafika“的代码,但我发现编码视频丢失了一些帧。我检查我的输入,每一帧都是不同的,但在我的编码输出视频中,例如,第71帧与第72帧相同,第99帧与第100帧相同。另一帧与输入序列相同。
我使用OpenGL ES,并在encode中使用surface。我的帧率是30,码率是1920*1080*30,Iframe intervel是1s。
媒体解码器编码有问题吗?
发布于 2017-01-23 06:09:31
如果通过Surface将帧发送到编码器,则可能需要传递(单独)每个帧的正确呈现时间,因为编码器可能无法获得正确的呈现时间。换句话说,从MediaCodec中拉出输出缓冲区后,可能需要更正输出缓冲区信息的presentationTimeUs的值。
https://stackoverflow.com/questions/40857222
复制相似问题