In einem Video-Player-Projekt möchte ich LibVLC http Streaming von einer langsamen Quelle verwenden.Min-Buffer-Schwelle für HTTP-/Netzwerk-Wiedergabe einstellen
Allerdings kann ich es nicht zu Stream FIRST bekommen, und dann kontinuierlich Daten herunterladen. Der Spieler wird immer dazwischen stehen bleiben.
Ich benutze VLC-Android von GIT.
Dies ist der Media Player Setup-Code:
ArrayList<String> options = new ArrayList<>();
options.add("--no-sub-autodetect-file");
options.add("--swscale-mode=0");
options.add("--network-caching=60000");
if (BuildConfig.DEBUG) {
options.add("-vvv"); // verbosity
}
libVLC = new LibVLC(options);
mediaPlayer = new org.videolan.libvlc.MediaPlayer(libVLC);
mediaPlayer.setEventListener(this);
final IVLCVout vout = mediaPlayer.getVLCVout();
vout.setVideoView(videoView);
vout.setSubtitlesView(subtitleView);
vout.addCallback(this);
vout.attachViews();
final Media media = new Media(libVLC, getIntent().getData());
media.setHWDecoderEnabled(true, false);
media.addOption(":network-caching=60000");
media.addOption(":clock-jitter=0");
media.addOption(":clock-synchro=0");
mediaPlayer.setMedia(media);
mediaPlayer.play();
Ich hatte gehofft, dass auf dem Medienobjekt die :network-caching
Einstellung ist genug, aber es scheint immer noch die ganze Zeit aus Daten auszuführen.
Wie wird LibVLC so konfiguriert, dass das Stottern beseitigt wird? Einige Pufferzeiten sind in Ordnung.
Der Streamtyp ist eine MOV-Datei, die über HTTP bedient wird.