很抱歉打扰你,但我还有一个关于 vlcj 的问题。对于这个学校项目,我需要知道如何捕获我正在MediaPlayer上播放的视频的时间戳,并将此信息添加到数据库中。
目前我正在使用 getTime()方法:
start = (int)mediaPlayerComponent.getMediaPlayer().getTime();
“start”是存储此信息的数据库的列名(整数类型)。可以实现这样的当前回放时间但是如果我能像时间戳一样抓住摄像机(你知道录制视频的时间),这将对我将来使用的程序有很大的帮助。
我在网上搜索了vlcj的 API 但我找不到信息。你能救我吗?
提前感谢任何可能的答案,祝你有愉快的一天。
答案 0 :(得分:0)
好的,所以据我所知,没有“直接”解决方案,但我的老师建议我做一个五步而不是一步。并且感谢她现在可以在录制时获得视频的时间。所以这是说明:
//I'll take the time where I'm in the video
long time = mediaPlayerComponent.getMediaPlayer().getTime();
//I'll take the lenght of the video
long lenght = mediaPlayerComponent.getMediaPlayer().getLength();
//Now I need to know the path
File file = choosed.getSelectedFile();
String uri = file.getPath();
Path path = Paths.get(uri);
//I'll take the last time this video was modified and
//transform that information in milliseconds
FileTime fileTime = Files.getLastModifiedTime(path);
long lastModifiedTime = fileTime.toMillis();
//I'll make a simple equation
start = (lastModifiedTime - lenght) + time;
我在long类型中更改了起始整数类型,因为它具有更易读的代码,并且没有:“start =(int)(lastModifiedTime - lenght)+(int)time”。
我希望这可以帮助别人。对不起我的英语,祝你有愉快的一天!
P.S。忘了添加一个 manual page您可以在其中转换毫秒时间 年,月,日,小时......