gpt4 book ai didi

java - 具有速度控制(恒定音高)的javafx中的视频播放器

转载 作者:搜寻专家 更新时间:2023-11-01 03:51:02 26 4
gpt4 key购买 nike

我正在使用 javafx 中的视频播放器。在那个视频播放器中,我想要像播放、暂停、停止和速度控制这样的 Controller 。

我添加了一个滚动条来调整视频的速度

我希望在调整速度时,视频的音高不能改变。但是当我调整视频的速度时,它的音高会发生变化。

如何在调整速度的同时保持视频的音高不变?谁能帮忙?

这是我在视频播放器中控制种子的代码:

// Add spped slider
speedSlider = new Slider();
HBox.setHgrow(speedSlider, Priority.ALWAYS);
speedSlider.setMinWidth(10);
//speedSlider.setMaxWidth(Double.MAX_VALUE);
speedSlider.setMaxWidth(100);
speedSlider.setPrefWidth(70);
speedSlider.setValue(50);
speedSlider.valueProperty().addListener(new InvalidationListener()
{
public void invalidated(Observable ov) {
if (speedSlider.isValueChanging() || speedSlider.isPressed()) {
double rate = speedSlider.getValue()/10;
if(rate<1)
rate = 0.5;
else if(rate < 2)
rate = 0.6;
else if(rate < 3)
rate = 0.7;
else if(rate < 4)
rate = 0.8;
else if(rate < 5)
rate = 0.9;
else if(rate < 6)
rate = 1;
else if(rate < 7)
rate = 1.1;
else if(rate < 8)
rate = 1.2;
else if(rate < 9)
rate = 1.3;
else
rate = 1.4;
mp.setRate(rate);
}
}
});
mediaBarControl.getChildren().add(speedSlider);

最佳答案

我认为播放速度自然会影响音频输出的音高。但是,如果您必须这样做,我认为您可能希望在每次调整速度后降低每个分析样本的音高(取决于您的操作)。

关于java - 具有速度控制(恒定音高)的javafx中的视频播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28040602/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com