
帮我看看这个程序哪里错了 怎么做一个Java的视频音频啊 总是报错
以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:
【您想要解决的问题】: 您想要解决的问题是如何在Java中创建一个音频视频播放器,并且您遇到了程序运行时的错误,需要找出问题所在并解决。
【图片内容】: 图片中显示了一段Java代码,这段代码是用于创建一个视频播放器的示例。代码中包含了一些错误和异常信息,显示程序在运行时遇到了问题。
【问题出现原因】:
Applicationt应该是Application,public String DurationToString(Duration duration)(应该是public String DurationToString(Duration duration) {。MediaException:MEDIA_UNAVAILABLE,这表明程序无法找到指定的视频文件路径E:\\2.mp4,可能是因为文件不存在或者路径错误。【问题解决方案】:
E:\\2.mp4存在,并且路径正确。【提供代码】: 以下是修正后的代码示例:
import javafx.application.Application;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.stage.Stage;
import javafx.util.Duration;
public class VedioPlayerDemo extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Media media = new Media(new File("E:\\2.mp4").toURI().toString());
MediaPlayer mediaPlayer = new MediaPlayer(media);
MediaView mediaView = new MediaView(mediaPlayer);
primaryStage.setTitle("Video Player Demo");
primaryStage.setScene(new javafx.scene.Scene(mediaView, 800, 600));
primaryStage.show();
mediaPlayer.play();
}
public static void main(String[] args) {
launch(args);
}
public String durationToString(Duration duration) {
int time = (int) duration.toSeconds();
int hour = time / 3600;
int minute = (time - hour * 3600) / 60;
int second = time % 60;
return String.format("%02d:%02d:%02d", hour, minute, second);
}
}
修改点:
VedioPlayerDemo和方法声明中的语法错误。String.format来格式化时间字符串。E:\\2.mp4是正确的路径。【代码运行方式】:
.java文件。【代码预期运行结果】:
如果一切正常,程序将启动一个窗口,播放位于E:\\2.mp4的视频文件。
预期运行结果:
- 窗口标题:Video Player Demo
- 窗口大小:800x600像素
- 视频播放:开始播放位于E:\2.mp4的视频文件
【推荐相关链接】: