RTSP live stream на Android

Я пытаюсь сделать прямую трансляцию на Android. Я пробовал много способов, но ни один из них работал. Как это сделать?

Это пример RTSP:

mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(KralStream.getTvStreamUrl().toString());
mMediaPlayer.setDisplay(holder);
mMediaPlayer.prepareAsync();
mMediaPlayer.setOnBufferingUpdateListener(this);
mMediaPlayer.setOnCompletionListener(this);
mMediaPlayer.setOnPreparedListener(this);
mMediaPlayer.setOnVideoSizeChangedListener(this);
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mMediaPlayer.setLooping(true);

Exeption: 05-26 10: 22: 46.186:
ОШИБКА / MediaPlayerService (10157):
создать PVPlayer 05-26 10: 23: 06.382:
ОШИБКА / PlayerDriver (10157): команда
PLAYER_INIT завершился с ошибкой или
инфо -1 05-26 10: 23: 06.382:
ОШИБКА / MediaPlayer (23800): ошибка (1,
-1) 05-26 10: 23: 06.382: ОШИБКА / MediaPlayer (23800): Ошибка (1, -1)

RTSP:

VideoView videoView = (VideoView)findViewById(R.id.videoView1);
Uri uri = Uri.parse("rtsp://strm-3.tr.medianova.tv/rkraltv/rkraltv");
videoView.setVideoURI(uri);
videoView.start();

Выдает это сообщение:

«Извините,это видео
не могу играть ". Исключения; 05-26
10: 40: 08.979:
ОШИБКА / MediaPlayerService (10157):
создать PVPlayer 05-26 10: 40: 09.188:
INFO / ActivityManager (10163): отображается
активность
com.giantrabbit.nagare / .KralTvNow: 433
мс (всего 433 мс) 05-26 10: 40: 11.702:
WARN / PowerManagerService (10163): Таймер
0x3-> 0x3 | 0x1 05-26 10: 40: 29.061:
WARN / MediaPlayer (24284): информация / предупреждение
(1, 26) 05-26 10: 40: 29.061:
ИНФОРМАЦИЯ / MediaPlayer (24284): Информация (1,26)
05–26, 10: 40: 29.100:
ОШИБКА / PlayerDriver (10157): команда
PLAYER_INIT завершился с ошибкой или
инфо -1 05-26 10: 40: 29.104:
ОШИБКА / MediaPlayer (24284): ошибка (1,
-1) 05-26 10: 40: 29.108: ERROR / MediaPlayer (24284): Error (1, -1)

RTSP:

mPreview = (SurfaceView) findViewById(R.id.surface);
holder = mPreview.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
extras = getIntent().getExtras();

public void play() {
    try {
        Uri video = KralStream.getTvStreamUrl();
        Toast.makeText(this, video.toString(), Toast.LENGTH_SHORT).show();
        mMediaPlayer = new MediaPlayer();
        mMediaPlayer.setDataSource(path);
        mMediaPlayer.setDisplay(holder);
        mMediaPlayer.prepare();
        mMediaPlayer.setOnBufferingUpdateListener(this);
        mMediaPlayer.setOnCompletionListener(this);
        mMediaPlayer.setOnPreparedListener(this);
        mMediaPlayer.setOnVideoSizeChangedListener(this);
        mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    }
    catch (Exception e) {
        Log.e(TAG, "error: " + e.getMessage(), e);
    }
}

Exeption:

05-26 10: 36: 57.589:
ОШИБКА / MediaPlayerService (10157):
создать PVPlayer 05-26 10: 37: 20.542:
ОШИБКА / PlayerDriver (10157): команда
PLAYER_INIT завершился с ошибкой или
инфо -1 05-26 10: 37: 20.542:
ОШИБКА / MediaPlayer (24240): ошибка (1,
-1) 05-26 10: 37: 20.565: WARN / PlayerDriver (10157):
PVMFInfoErrorHandlingComplete 05–26
10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): ошибка:
Ошибка подготовки: status = 0x1 05-26
10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240):
java.io.IOException: Ошибка подготовки .:
status = 0x1 05-26 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.media.MediaPlayer.prepare (Собственный
Метод) 05-26 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
com.giantrabbit.nagare.KralTvNow.play (KralTvNow.java:162)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
com.giantrabbit.nagare.KralTvNow.surfaceCreated (KralTvNow.java:215)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.SurfaceView.updateWindow (SurfaceView.java:536)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.SurfaceView.dispatchDraw (SurfaceView.java:339)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.ViewGroup.drawChild (ViewGroup.java:1638)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): на
android.view.ViewGroup.dispatchDraw (ViewGroup.java:1367)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): на
android.view.ViewGroup.drawChild (ViewGroup.java:1638)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): на
android.view.ViewGroup.dispatchDraw (ViewGroup.java:1367)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.View.draw (View.java:6796)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.widget.FrameLayout.draw (FrameLayout.java:352)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.ViewGroup.drawChild (ViewGroup.java:1640)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.ViewGroup.dispatchDraw (ViewGroup.java:1367)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.View.draw (View.java:6796)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.widget.FrameLayout.draw (FrameLayout.java:352)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
com.android.internal.policy.impl.PhoneWindow $ DecorView.draw (PhoneWindow.java:1894)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.ViewRoot.draw (ViewRoot.java:1407)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.ViewRoot.performTraversals (ViewRoot.java:1163)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.view.ViewRoot.handleMessage (ViewRoot.java:1727)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.os.Handler.dispatchMessage (Handler.java:99)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.os.Looper.loop (Looper.java:123)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
android.app.ActivityThread.main (ActivityThread.java:4627)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
java.lang.reflect.Method.invokeNative (Собственный
Метод) 05-26 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
java.lang.reflect.Method.invoke (Method.java:521)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240):в
com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:871)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:629)
05–26, 10: 37: 20.682:
ОШИБКА / MediaPlayerDemo (24240): в
dalvik.system.NativeStart.main (Собственный
Метод) 05-26 10: 37: 20.737:
ИНФОРМАЦИЯ / MediaPlayer (24240): Информация (1,26)
05–26, 10: 37: 20.737:
ОШИБКА / MediaPlayer (24240): Ошибка (1, -1)
05–26, 10: 37: 20.868:
INFO / ActivityManager (10163): отображается
активность
com.giantrabbit.nagare / .KralTvNow:
25864 мс (всего 25864 мс) 05–26
10: 37: 23.777:
WARN / PowerManagerService (10163): Таймер
0x3-> 0x3 | 0x1

Это пример HTTP:

mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource("http://ikral.garantisistem.com:1935/ikral/smil:kral.smil/playlist.m3u8");
mMediaPlayer.setDisplay(holder);
mMediaPlayer.prepareAsync();
mMediaPlayer.setOnBufferingUpdateListener(this);
mMediaPlayer.setOnCompletionListener(this);
mMediaPlayer.setOnPreparedListener(this);
mMediaPlayer.setOnVideoSizeChangedListener(this);
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mMediaPlayer.setLooping(true);

Исключение:

05-26 10: 16: 24.276:
ОШИБКА / MediaPlayerService (10157):
создать PVPlayer 05-26 10: 16: 24.292:
ОШИБКА / (10157): IIIIIII Внутри
Конструктор
PVMFMemoryBufferWriteDataStreamImpl
05–26, 10: 16: 24.346:
INFO / PlayerDriver (10157): буферизация
(100) 05-26 10: 16: 24.346:
ОШИБКА / (10157): IIIIIII Внутри
Конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ОШИБКА / (10157):
IIIIIII Внутренний конструктор
PVMFMemoryBufferReadDataStreamImpl
05–26, 10: 16: 24.350:
WARN / MediaPlayer (23736): информация / предупреждение
(1, 26) 05-26 10: 16: 24.354:
ОШИБКА / PlayerDriver (10157): команда
PLAYER_INIT завершился с ошибкой или
инфо -10 05-26 10: 16: 24.354:
ОШИБКА / MediaPlayer (23736): ошибка (-10,
-10) 05-26 10: 16: 24.354: WARN / PlayerDriver (10157):
PVMFInfoErrorHandlingComplete 05–26
10: 16: 24.393: ИНФОРМАЦИЯ / MediaPlayer (23736):
Информация (1,26) 05-26 10: 16: 24.393:
ОШИБКА / MediaPlayer (23736): ошибка
(-10, -10)

HTTP:

VideoView videoView = (VideoView)findViewById(R.id.videoView1);
Uri uri = Uri.parse("http://ikral.garantisistem.com:1935/ikral/smil:kral.smil/playlist.m3u8");
videoView.setVideoURI(uri);
videoView.start();

Выдает сообщение:

«Извините, это видео не удалось воспроизвести».

enter image description here

8
задан Abhijeet 21 March 2016 в 03:42
поделиться