Android 组播视频流
我正在开发一个用于视频多播流的小型演示播放器。
在当前状态下:
- 我有一个可用的 UDP 多播套接字 (Android) 和一个视频流媒体 (PC)。
- 我有一个可以打开 HTTP/RTSP 流的视频播放器 (MediaPlayer/VideoView)。
- 视频以 MPEG 2 TS 格式传输 - 我可以使用 HTTP Stream 打开视频。
问题是我无法使用播放器打开 UDP 流。
这是代码:
VideoView videoView = (VideoView) findViewById(R.id.VideoView);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
Uri video = Uri.parse("udp://239.192.1.31:1234");
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();
注意: 我使用 tcpdump 来确保我正在接收 UDP 多播流。
I'm developing a small demo player for Video Multicast Stream.
In the current state:
- I have a working UDP Multicast socket (Android) and a video Streamer (PC).
- I have a Video player (MediaPlayer/VideoView) that can open HTTP/RTSP Streams.
- The Video is streamed in MPEG 2 TS - I can open the video using HTTP Stream.
The problem is that I can't open the UDP Stream with the player.
Here is the code:
VideoView videoView = (VideoView) findViewById(R.id.VideoView);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
Uri video = Uri.parse("udp://239.192.1.31:1234");
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();
Note:
I used tcpdump to make sure I was receiving the UDP Multicast stream.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Android MediaPlayer 不支持 udp:// 协议,您必须使用像 Vitamio 这样的库 http:// /www.vitamio.org/en/
The udp:// protocol is not supported in the android MediaPlayer, you have to use a library like Vitamio instead http://www.vitamio.org/en/
您还可以使用 exoplayer 。它是一个仅由谷歌管理的开源播放器。
您还可以通过编写自己的提取器和数据源来扩展
you can also use exoplayer . It is an open source player managed by google only.
You can also extend by writing your own extractor and data source