Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 设置http/网络播放的最小缓冲区阈值_Android_Vlc_Libvlc - Fatal编程技术网

Android 设置http/网络播放的最小缓冲区阈值

Android 设置http/网络播放的最小缓冲区阈值,android,vlc,libvlc,Android,Vlc,Libvlc,在一个视频播放器项目中,我想使用来自慢速源的LibVLC http流 然而,我不能让它先流,然后不断下载数据。球员总是在中间停下来 我正在使用GIT的vlc android 这是媒体播放器的设置代码: ArrayList<String> options = new ArrayList<>(); options.add("--no-sub-autodetect-file"); options.add("--swscale-mode=0"); options.add("--n

在一个视频播放器项目中,我想使用来自慢速源的LibVLC http流

然而,我不能让它先流,然后不断下载数据。球员总是在中间停下来

我正在使用GIT的vlc android

这是媒体播放器的设置代码:

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();
ArrayList options=new ArrayList();
添加(“--无子自动检测文件”);
选项。添加(“--swscale mode=0”);
选项。添加(“--network caching=60000”);
if(BuildConfig.DEBUG){
options.add(“-vvv”);//冗长
}
libVLC=新的libVLC(选项);
mediaPlayer=neworg.videolan.libvlc.mediaPlayer(libvlc);
mediaPlayer.setEventListener(这个);
final IVLCVout vout=mediaPlayer.getVLCVout();
vout.setVideoView(视频视图);
凭证设置子标题视图(子标题视图);
发票(本);
附件视图();
最终媒体=新媒体(libVLC,getIntent().getData());
media.setHWDecoderEnabled(真、假);
media.addOption(“:network caching=60000”);
media.addOption(“:时钟抖动=0”);
媒体添加选项(“:时钟同步=0”);
mediaPlayer.setMedia(媒体);
mediaPlayer.play();
我希望在媒体对象上设置
:网络缓存
就足够了,但它似乎始终没有数据

如何配置LibVLC以消除结巴?一些缓冲时间是可以的

流类型是通过HTTP提供的MOV文件。

libvlc选项请尝试:

ArrayList<String> options = new ArrayList<String>();
options.add("--audio-time-stretch"); // time stretching
options.add("-vvv"); // verbosity
options.add("--no-audio"); // no audio
options.add("--aout=none");
options.add("--no-sub-autodetect-file");
options.add("--swscale-mode=0");
options.add("--network-caching=400");
options.add("--no-drop-late-frames");
options.add("--no-skip-frames");
options.add("--avcodec-skip-frame");
options.add("--avcodec-hw=any");
Media m = new Media(libvlc, Uri.parse(URL));
m.setHWDecoderEnabled(true, true);
m.addOption(":network-caching=5000");
m.addOption(":clock-jitter=0");
m.addOption(":clock-synchro=0");
m.addOption(":codec=all");
mMediaPlayer.setMedia(m);
mMediaPlayer.play();