调查lib的Java代码,我发现无法在某处保存播放视频。但是,VLC核心具有这样的功能,根据this doc,您可以复制流并保存它,将其重定向到文件。
我认为我们可以在创建lib实例时提供相应的参数,所以我尝试在libvlcjni.c
中初始化库时添加一个选项:
“ - SOUT =复制{DST =标准{存取=文件,MUX = TS,DST = /存储/模拟/ 0 / example.mp4}, DST =显示}“
但似乎没有用。还有其他想法吗?
答案 0 :(得分:1)
您可以使用libvlc同时将正在播放的视频保存到文件中(至少以下内容对我有用):
final ArrayList<String> args = new ArrayList<>();
args.add("-vvv");
mLibVLC = new LibVLC(this, args);
mMediaPlayer = new MediaPlayer(mLibVLC);
<code associating surface for display...>
Media media = new Media(mLibVLC, Uri.parse(SAMPLE_URL));
media.addOption(":sout=#duplicate{dst=file{dst=" + <file name> + "},dst=display}");
mMediaPlayer.setMedia(media);
mMediaPlayer.play();
答案 1 :(得分:0)
猜猜,目前没有办法通过libvlc
来做到这一点。
但是,有人计划使用此功能,see their milestones at gitlab