【问题标题】:Play video in Android from a bytes stream从字节流在 Android 中播放视频
【发布时间】:2011-02-01 11:13:04
【问题描述】:

有没有办法在 Android 中从字节流中播放视频? 我正在使用特定的通信中间件,所以我不能只将 http/rtsp 链接传递给 MediaPlayer 对象。

我想知道是否可以使用本地 http/rtsp 链接包装我的流,这样我就可以播放流,而不是等到文件下载后才播放它。

我的中间件在 TCP 上工作,所以我还认为我可以用 tcp 数据报包装我的 rtsp 数据报,并在删除 TCP 标头后以某种方式在客户端上解释它们。

我真的很惊讶我不能只将字节流传递给 MediaPlayer。 提前致谢。

【问题讨论】:

  • 这是一个有趣的话题...我能想到的最好方法是在 app 目录中创建临时文件,作为实现某种缓冲区的一种方式。
  • 你不能只将一些字节传递给解码器并让它解码图片..除非它是 MPEG4 流......否则你可以做一些工作。你能告诉我这是什么类型的视频流吗?如果是 h264,它是什么配置文件级别?你有它的 SDP 吗?
  • 我正在尝试使用手机录制的 3gp 文件。首先,我尝试在获得最小值(大约 2000 KB)后将缓冲区复制到一个文件中,然后用它创建一个 MediaPlayer,但是这样做时 prepare() 会崩溃。我不知道如何创建 SPD 会话。事实是我对解码知之甚少。教程链接将不胜感激。感谢回复

标签: android http streaming video-streaming rtsp


【解决方案1】:

Android 中的自定义流并不像我想象的那么简单。我已经设法做到了,但仅限于非常具体的视频。交错不佳的 MPEG4 视频似乎是可流式传输的。 我得到的最高票价是流式传输此视频:

http://www.pocketjourney.com/downloads/pj/video/famous.3gp

正如 Cipi 回答我的那样,大多数格式不能只打包在字节缓冲区中并将其传递给 MediaPlayer。他们需要一些标题、尾部等。我不确定上述文件中包含哪种格式,但我猜它是 MPEG4。

【讨论】:

  • 你能显示一些代码吗?我也在尝试做同样的事情。
  • 16kbps无法通过android中的media payer类播放
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-07
  • 2015-11-21
  • 2012-09-06
  • 1970-01-01
  • 1970-01-01
  • 2012-03-18
相关资源
最近更新 更多