我正在尝试录制,编码并最终在Android上创建一个短片(使用API 16),并结合MediaCodec和Mp4Parser(封装到.mp4中)。
一切正常,除了.mp4的持续时间:它总是3秒长 - 并以大约两倍于'正确'的速度运行。
queueInputBuffer
我试图调整每个可以想象的参数 - 但似乎没有任何区别 - 电影总是3秒长 - 并且总是播放得太快。
那么播放seepd的主要内容是什么?如何以'natuarl'速度制作电影?
答案 0 :(得分:0)
我明白了:当用mp4parser封装时(如果你的目标是API< 18需要),你需要在mp4parser的API中设置速度。如果您没有使用Android的内置多路复用器(仅在API18中提供),那么您向queueInputBuffer
提供的演示时间似乎没有任何区别。
我偶然发现了github上的this问题,表明需要以下内容:
new H264TrackImpl(new FileDataSourceImpl(rawDataFile), "eng", 100, 10);