用于在内存中将MP4转换为MPEG-2 TS的Java库?

时间:2014-04-29 23:40:51

标签: ffmpeg javafx mp4 h.264 mpeg2-ts

SO ......

我有一个Java FX应用程序,它使用Media类运行嵌入式HTTP Live Streaming服务器进行视频播放(不是实时流式传输,视频点播)。视频播放由多个文件组成,这些文件实际上存储了一组RTP数据包。当我的HttpHandler被调用来处理文件的get请求(.m3u8索引文件中的条目)时,我计划...

  • 将文件加载到内存中
  • 创建RAW H264数据包的字节数组
  • 将RAW H264转换(换行?)为MPEG-2 TS(ffmpeg -i video.h264 video.ts)
  • 将MPEG-2 TS内容写入响应正文以便可以播放

...我的一个要求是我无法创建本地文件,即使是临时文件。所以我无法创建.h264文件,使用ffmpeg创建.ts文件,读取ts文件,然后将内容写入响应正文。

据我所知,Xuggler不使用流而JCodec很慢。我相信我可以深入研究并理解MPEG-2 TS格式并简单地将RAW H264转换为适当的格式,但这似乎是之前应该完成的许多不必要的工作。

任何人都知道将RAW H264转换为MPEG-2 TS的简单方法吗?或者MP4到MPEG-2 TS?我可以使用MP4Parser快速在内存中创建MP4数据,我只需要一个可以生成MPEG-2 TS数据的java库,谢谢!

1 个答案:

答案 0 :(得分:0)

您有几个选择:(1)FFMPEG-Java和(2)jjmpeg。然而,它们都有点陈旧,尽管后者自2013年开始有更多近期活动。但这些应该是一个良好的开端。

祝你好运!