【发布时间】:2014-09-18 22:08:26
【问题描述】:
我正在制作一个使用 MediaCodec API 的应用。 该应用程序在两部手机上运行。第一部手机从 sdcard 读取视频,然后使用 MediaCodec 编码器将帧编码为 avc 格式,然后将帧流式传输到另一个设备。第二个设备有一个 MediaCodec 解码器正在运行。解码器解码帧并将它们呈现在 Surface 上。 代码运行良好,但是当帧的大小变得更大时,第一个设备有时无法流式传输视频,并且编码器停止报告以下日志:
E/OMX-VENC-720p( 212): Poll timedout, pipeline stalled due to client/firmware ETB: 496, EBD: 491, FTB: 492, FBD: 492
所以我想在编码器端实现跳帧。 跳过帧而不将它们流式传输到其他设备的最佳方法是什么。 ?
PS。在单独的说明中,如果有人可以建议我将视频流式传输到其他设备的任何其他方式,那就太好了。
【问题讨论】:
-
你需要实时流媒体还是延迟几秒就可以了?
-
我正在实时流式传输
标签: android video-encoding android-mediacodec