Как воспроизвести видео YouTube в приложении Android с помощью libvlc-all: 3.2.0? - PullRequest
0 голосов
/ 02 ноября 2019

Я создавал андроид плеер для воспроизведения живых потоков на YouTube. Мое требование - воспроизвести поток в VLC org.videolan.libvlc.util.VLCVideoLayout. Я следовал примеру приложения https://code.videolan.org/videolan/libvlc-android-samples. Когда я пытался воспроизвести видео на YouTube, он не воспроизводится, а только пустой экран.

Я использовал следующий код.

1,В макете XML-файла

<org.videolan.libvlc.util.VLCVideoLayout
        android:id="@+id/vlc_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:keepScreenOn="true"
        android:fitsSystemWindows="false"
        />

2. В классе деятельности

final ArrayList<String> args = new ArrayList<>();
args.add("--no-drop-late-frames");
args.add("--no-skip-frames");
args.add("--rtsp-tcp");
args.add("-vvv");
mLibVLC = new LibVLC(this, args);
mMediaPlayer = new MediaPlayer(mLibVLC);

mVideoLayout = findViewById(R.id.vlc_layout);
mMediaPlayer.attachViews(mVideoLayout, null, ENABLE_SUBTITLES, USE_TEXTURE_VIEW);
String url = "https://www.youtube.com/watch?v=H9mXFeGsGEE";
final Media media = new Media(mLibVLC, Uri.parse(url));
mMediaPlayer.setMedia(media);
media.release();
mMediaPlayer.play();
файл Gradel

repositories {
    google()
    maven {
        url "https://dl.bintray.com/videolan/Android"
    }
    jcenter()
}
dependencies {
    implementation 'org.videolan.android:libvlc-all:3.2.0'
}
Если мы дадим любую другую потоковую ссылку (hls), это сработает. Но не повезло с видео на YouTube.

Может кто-нибудь помочь решить это?

1 Ответ

0 голосов
/ 04 ноября 2019

Для видео на YouTube необходимо проанализировать мультимедиа и затем воспроизвести один из его подпунктов.

...