gpt4 book ai didi

c++ - 在位置 X 停止播放来自 QMediaPlayer 的视频

转载 作者:太空狗 更新时间:2023-10-29 21:32:56 25 4
gpt4 key购买 nike

我是 Qt 的新手,我在我的一个 GUI 项目中使用 QMediaPlayer,我想在某个位置 X 停止加载的视频(用户在 Line Edit 上的输入)我该如何做到这一点?我知道我可以通过执行 player->setPosition(Y) 来设置起始位置,其中 Y 是一个整数,但是结束位置呢?

最佳答案

一个较小的选择是使用 position()它将当前位置返回为 qint64 - 如果您调用 play() QMediaPlayer 的方法然后使用类似

的东西
  while (player.position() < input) {}
player.stop(); // Or player.pause();

它将等到 input位置达到。但这种方法的缺点是阻塞 while循环并且不知道预期的应用程序我不知道这是否合适。使用 QMediaPlayer::positionChanged 可能更好信号(根据 QMediaPlayernotifyInterval 发出),类似于

  connect(player, SIGNAL(positionChanged(qint64)), this, SLOT(checkPosition());

假设this是接收器,两者都是 playerinput范围使得它们可用于插槽 checkPosition() . checkPosition()然后看起来像

  checkPosition() {
if (player.position() > input()) {
player.stop(); // Or player.pause();
}
}

当然你也可以通过playerinputcheckPosition()插槽,但为了简单起见我忽略了它。希望这会有所帮助。

关于c++ - 在位置 X 停止播放来自 QMediaPlayer 的视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53474376/

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