Форум для тех, кто программирует под Android
Anonymous
Библиотека VLC для приложения Android - черный экран
Сообщение
Anonymous » 18 фев 2025, 01:08
Я попробовал несколько реализаций, но совершенно не смог заставить это работать, это всегда просто черный экран. Кажется, библиотека довольно старая и не видит, что она часто используется на форумах, особенно недавно ... это просто больше не работает или что -то в этом роде? < /P>
Вот моя деятельность: < /p>
Код: Выделить всё
import android.os.Bundle;
import android.util.Log;
import com.creativelabs.iptvplayer.R;
import org.videolan.libvlc.LibVLC;
import org.videolan.libvlc.Media;
import org.videolan.libvlc.MediaPlayer;
import org.videolan.libvlc.util.VLCVideoLayout;
import java.util.ArrayList;
public class TestActivity extends FragmentActivity {
private static final boolean USE_TEXTURE_VIEW = false;
private static final boolean ENABLE_SUBTITLES = true;
private static final String IPTV_URL = "https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4";
private VLCVideoLayout mVideoLayout = null;
private LibVLC mLibVLC = null;
private MediaPlayer mMediaPlayer = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_act);
final ArrayList options = new ArrayList();
options.add("--no-drop-late-frames");
options.add("--no-skip-frames");
options.add("--avcodec-hw=any"); // Enable hardware acceleration
options.add("--network-caching=1000"); // Improve streaming performance
options.add("-vvv"); // Enable verbose logging
mLibVLC = new LibVLC(this, options);
mMediaPlayer = new MediaPlayer(mLibVLC);
mVideoLayout = findViewById(R.id.video_layout);
}
@Override
protected void onDestroy() {
super.onDestroy();
mMediaPlayer.release();
mLibVLC.release();
}
@Override
protected void onStart() {
super.onStart();
mMediaPlayer.attachViews(mVideoLayout, null, ENABLE_SUBTITLES, USE_TEXTURE_VIEW);
final Media media = new Media(mLibVLC, IPTV_URL);
media.setHWDecoderEnabled(true, false); // Enable hardware decoding (optional)
media.addOption(":network-caching=3000");
mMediaPlayer.setMedia(media);
media.release();
mMediaPlayer.play();
}
@Override
protected void onStop() {
super.onStop();
mMediaPlayer.stop();
mMediaPlayer.detachViews();
}
}
Чего мне не хватает, пожалуйста?
Подробнее здесь:
https://stackoverflow.com/questions/794 ... ack-screen
1739830115
Anonymous
Я попробовал несколько реализаций, но совершенно не смог заставить это работать, это всегда просто черный экран. Кажется, библиотека довольно старая и не видит, что она часто используется на форумах, особенно недавно ... это просто больше не работает или что -то в этом роде? < /P> Вот моя деятельность: < /p> [code]import android.os.Bundle; import android.util.Log; import com.creativelabs.iptvplayer.R; import org.videolan.libvlc.LibVLC; import org.videolan.libvlc.Media; import org.videolan.libvlc.MediaPlayer; import org.videolan.libvlc.util.VLCVideoLayout; import java.util.ArrayList; public class TestActivity extends FragmentActivity { private static final boolean USE_TEXTURE_VIEW = false; private static final boolean ENABLE_SUBTITLES = true; private static final String IPTV_URL = "https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4"; private VLCVideoLayout mVideoLayout = null; private LibVLC mLibVLC = null; private MediaPlayer mMediaPlayer = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test_act); final ArrayList options = new ArrayList(); options.add("--no-drop-late-frames"); options.add("--no-skip-frames"); options.add("--avcodec-hw=any"); // Enable hardware acceleration options.add("--network-caching=1000"); // Improve streaming performance options.add("-vvv"); // Enable verbose logging mLibVLC = new LibVLC(this, options); mMediaPlayer = new MediaPlayer(mLibVLC); mVideoLayout = findViewById(R.id.video_layout); } @Override protected void onDestroy() { super.onDestroy(); mMediaPlayer.release(); mLibVLC.release(); } @Override protected void onStart() { super.onStart(); mMediaPlayer.attachViews(mVideoLayout, null, ENABLE_SUBTITLES, USE_TEXTURE_VIEW); final Media media = new Media(mLibVLC, IPTV_URL); media.setHWDecoderEnabled(true, false); // Enable hardware decoding (optional) media.addOption(":network-caching=3000"); mMediaPlayer.setMedia(media); media.release(); mMediaPlayer.play(); } @Override protected void onStop() { super.onStop(); mMediaPlayer.stop(); mMediaPlayer.detachViews(); } } [/code] Чего мне не хватает, пожалуйста? Подробнее здесь: [url]https://stackoverflow.com/questions/79446634/vlc-library-for-android-app-black-screen[/url]