0

(我的英语不是很好,但我会尽力而为。)

我正在开发一个将收到的 h.264 流式视频/音频帧保存到剪辑中的 Android 应用程序。我遇到了这里提到的一个问题,“缺少编解码器特定数据”。

我尝试了一些方法来解决这个问题。

  1. 分配预定义的编解码器特定数据。我从这篇文章
    中 借来的,它工作得非常完美——但仅限于我的个人手机(Sony Xperia Z3,Android 5.1.1)。大多数测试设备只是粉碎。(Android 4.3/4.4)。
  2. 从视频流本身解析编解码器特定数据。
    在我的手机上它粉碎了。但不知何故适用于某些设备。我以这段代码为例。
  3. 创建一个编码器来对接收到的视频帧进行编码,然后将它们传递给 MediaMuxer。
    是的,这是一个愚蠢的想法,它不起作用。
  4. 创建一个解码器来解码接收到的视频帧,将它们传递给编码器,然后将编码的帧传递给 MediaMuxer,保存。
    应用程序无法从编码器获取任何空闲缓冲区。僵局。

现在我的想法已经不多了。

我得到的最后希望是使用 ffmpeg。
但是我发现的资源是来自视频文件的编码/解码视频,而不是来自流。
有什么建议么?

提前致谢。:)

4

1 回答 1

1

经过一周的尝试,包括周末学习 h.264 规范等等。

我发现问题不在于视频。

导致应用崩溃的是音频。


结案,感谢观看。:\

于 2015-12-22T02:35:13.593 回答