小编the*_*pus的帖子

Android上的UDP视频流

我有一个Android项目,我需要构建一个客户端应用程序来接收UDP或RTP单播视频流并播放它们.不幸的是,我似乎无法让这个工作,并广泛搜索解决方案!

我正在测试Xoom(Android 3.2)和Nexus S(Android 2.3.6)并且知道他们可以在使用MX Player(第三方媒体播放器应用程序)作为客户端时播放内容,但我不能让本机媒体播放器播放内容.我尝试过使用简单的VideoView和MediaPlayer,但都失败了相同的错误代码,我真的找不到任何有用的信息.

该视频采用带有aac音频的H.264编码.

此外,服务器是我无法访问的第三方解决方案(除了指定udp或rtp),但正如我所说,使用MX Player时,可以播放流.

这是我的代码的媒体播放器部分:

public class Main extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    try {
        MediaPlayer player = new MediaPlayer();
        SurfaceView surface = (SurfaceView) findViewById(R.id.video);

        player.setDisplay(surface.getHolder());

        player.setDataSource(this, Uri.parse("udp://192.168.0.78:1234"));

        player.prepare();

        player.setOnPreparedListener(new OnPreparedListener() {

            @Override
            public void onPrepared(MediaPlayer mp) {
                Log.d("SimpleVideoPlayer", "Starting player");
                mp.start();
            }
        });

        player.setOnErrorListener(new OnErrorListener() {

            @Override
            public boolean onError(MediaPlayer mp, int what, int extra) {
                Log.d("SimpleVideoPlayer", "error with code: " + what);
                return false;
            } …
Run Code Online (Sandbox Code Playgroud)

android udp video-streaming media-player

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

android ×1

media-player ×1

udp ×1

video-streaming ×1