有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Vlcj如何使用Java获取时间戳?

很抱歉打扰您,但我还有一个关于vlcj的问题。对于这个学校项目,我需要知道如何捕捉我当前在MediaPlayer上播放的视频的时间戳,并将这些信息添加到数据库中

目前我正在使用getTime()方法:

start = (int)mediaPlayerComponent.getMediaPlayer().getTime();

“开始”是存储此信息的数据库的列名(整数类型)。现在的播放时间是这样的,但是如果我能像摄像机一样捕捉到时间戳(你知道视频是什么时候录制的),这将对我的程序将来的使用有很大的帮助

我在网上搜索了vlcj的API,但找不到相关信息。你能帮我吗

提前感谢您的回答,祝您有愉快的一天


共 (1) 个答案

  1. # 1 楼答案

    好的,就我所知,没有一个“直接”的解决方案,但是我的老师建议我用五步而不是一步。多亏了她,现在才有可能知道录像录制的时间。以下是说明:

    //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 integer类型,以获得更可读的代码,而没有:“start=(int)(lastModifiedTime-lenght)+(int)time”

    我希望这能帮助别人。对不起我的英语,祝你有一个愉快的一天

    请注意,忘记添加一个 link其中可以在中转换毫秒时间 年,月,日,小时