问题标签 [qtmultimedia]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6463 浏览

linux - 如何使用 PyQt5 QtMultimedia

有些人似乎能够将 QtMultimedia 与 PyQt5 一起使用。根据旧的stackoverflow帖子,它不包含在PyQt5中,那么将它组合在一起的方法是什么?

我正在使用 linux (ubuntu 14.04) 并且 PyQt5 已经安装。

0 投票
2 回答
2249 浏览

c++ - 使用 QtMultimedia 播放自定义 avi 数据流

我需要播放包含经典视频流、音频流和自定义数据流的自定义 AVI 文件。

自定义流包含由一些自定义小部件可视化的数据;这些小部件只需要在适当的时间将每个自定义帧写入缓冲区。

我们的应用程序基于 Qt,并且已经使用QMediaPlayer/QVideoWidget来播放传统视频,但是额外的自定义流使事情变得更加复杂,因为 AFAIKQMediaPlayer只播放视频/音频而忽略了其他所有内容。

我想避免对整个qt-multimedia.


到目前为止,我的想法是:

  1. 编写一个自定义媒体播放器类,使用 对视频进行解复用和解码ffmpeg,实现计时,QAudioOutput用于播放音频,生成QVideoFrame要在视频上播放的 s 流,并将自定义数据写入某个缓冲区以进行可视化。

    问题:为了避免编写代码来重新缩放/转换视频帧,我想重用QVideoWidget,但它似乎只适用于“真实” QMediaPlayer

  2. 解复用输入文件并QMediaPlayer与 AV 流一起馈送。 将输入解复用ffmpeg(可能将解码留给 Qt 后端),让一个QIODevice仅从输入文件中检索视频/音频流,另一个用于检索数据流。用 播放视频/音频QMediaPlayer

    问题:同步数据流的时间,QMediaPlayer正确处理标头和元数据。


我稍微倾向于选项 1,只是因为它给了我更多的控制权,但我想知道我是否错过了一个更简单的解决方案(甚至仅限 Windows)。

0 投票
1 回答
1408 浏览

ios - Qt 5.4 QML VideoOutput 在 iOS 上不起作用

我正在尝试使用 Qt 或 Qml 在 iOS 应用程序中播放带声音的视频。我的环境是:

  • Qt 5.4
  • OSX 优胜美地 10.10.2
  • iPad 2 (iOS 8.3) 和 Iphone6+ (iOS 8.3)

测试代码(QML版本):

测试代码(C++ 版本):

我的项目文件(.pro):

源测试:

  • 来自资源:qrc://videos/vid2.mp4
  • 在存储上成功复制后从本地文件:/var/mobile/Containers/Data/Application/12BD0B54-46B3-439F-9869-E06E1AC6CD87/Library/Application Support/data/vid1.mp4
  • 来自网络视频:http://www.rmh.de/9d0386eada217cd63a752458aeca89d6/9d0386eada217cd63a752458aeca89d6.mp4

执行 Android 或 OS X 时一切正常,而在 iOS 设备和 iOS 模拟器上执行均失败。

我尝试添加,QTPLUGING但应该是,Creator 发现它正在复制。我尝试使用QMAKE_BUNDLE_DATA,但这也不起作用。我在 QML 版本上得到白屏,在 C++ 版本上得到黑屏。

谢谢你的帮助。

0 投票
1 回答
1585 浏览

c++ - Qt 不在其他设备上播放声音

我想做的就是在 Qt 中编写一个播放简单 .wav 文件的程序。这在我的 Qt 运行的 PC 上完美运行,但是每当我想在另一台计算机上运行程序时都没有声音。我在任何地方都找不到解决这个问题的方法。

这是我到目前为止所尝试的:

  • 不同的库:QSound、QSoundEffect、QMediaPlayer
  • 在 .pro 文件中实现 QT += 多媒体(当然)
  • 确保文件路径正确(即使使用绝对路径):

QFile dir("C:/Sounds/countdown3.wav"); if(dir.exists()){ ui->labelSound->setText("File found!"); ui->pushButtonPlay->setEnabled(true); ui->labelplay->setEnabled(true); ui->pushButton->setEnabled(false); } else ui->labelSound->setText("File not available!");

(当我重命名文件时,我收到“文件不可用!”消息,所以这是可行的。)

要将程序从我的电脑部署到我的笔记本电脑,我将以下内容放入一个文件夹中:

  • 播放声音.exe
  • 平台/qwindows.dll
  • icudt53.dll
  • icuin53.dll
  • icuuc53.dll
  • libgcc_s_dw2-1.dll
  • libstdc++-6.dll
  • libwinpthread-1.dll
  • Qt5Core.dll
  • Qt5Gui.dll
  • Qt5Multimedia.dll
  • Qt5Network.dll
  • Qt5Widgets.dll

和带有 countdown3.wav 的“声音”文件夹到 C:/ -drive。还是没有声音:(

我错过了什么?

我希望你能帮帮我!

0 投票
2 回答
467 浏览

c++ - 添加 QSound 后应用程序部署不起作用

我有一个可以部署在其他机器上的应用程序(Visual Studio)。我添加了模块QtMultimedia 以使用QSound该类。

想要重新部署我的应用程序,可执行文件首先表明我需要Qt5Multimedia.dll然后Qt5Network.dll(我没有在我的项目中添加)。

现在我的应用程序没有启动,但没有错误消息,我不明白......我在互联网上没有找到太多。

0 投票
0 回答
432 浏览

c++ - 修改QMediaPlayer的音频输出流

我正在尝试将音频播放器从 Qt4 移植到 Qt5,并从 Phonon 移植到 QtMultimedia。QMediaPlayer 一切正常,除了我找不到任何方法来修改 QMediaPlayer 的输出和系统声音之间的音频流。我想对音频应用后处理效果。

有什么办法可以做到这一点?也许通过子类 QMediaPlayer?我已经检查了 QAudioOutput 和 QAudioDecoder 类,但我必须实现很多东西才能获得与 QMediaPlayer 相同的行为。

谢谢!

0 投票
0 回答
763 浏览

c++ - Ubuntu 上的 Qmultimedia 和 gstreamer 错误

我无法使用 Qt 读取任何视频文件。我已经尝试了 Qt 示例,但它仍然无法正常工作。我已经安装了使用 GStreamer 读取视频文件所需的所有软件包。

在 QtCreator 调试窗口中,我收到以下消息:

我已经搜索了很长时间,但没有找到任何解决方案......有人有吗?

[编辑] 我可以使用 QGraphicVideoItem 而不是 QVideoWidget 来解决这个问题,但现在我遇到了另一个问题:

谢谢

PS:对不起,我的英语大概...

0 投票
1 回答
333 浏览

c++ - Windows 7 上缺少相机服务

请注意,这个问题几乎有重复,但它们不是重复的

使用 Qt 5.4.2 我打开了相机示例并构建了它。当我运行它时,我得到了错误The camera service is missing.

C:\Qt\5.4\mingw491_32\plugins\mediaservice我确实有这些文件:

我没有将它们部署到构建目录,但我也没有更改qt.conf默认指向的默认插件路径,C:\Qt....因此它应该找到它们。它发现plugins/platforms/qwindows.dll插件很好,也没有部署。

有谁知道为什么找不到多媒体插件?

0 投票
1 回答
8973 浏览

c++ - QT 中的未知模块:多媒体

我已经下载了 qt-everywhere-opensource-src-5.4.1 并构建并安装了静态。接下来我构建了 QMultimedia 并安装了。

当包含 QT += 多媒体时,我从 .pro 中得到“QT 中的未知模块:多媒体”。

我在 /usr/local/Qt-5.4.1/include 中有 QtMultimedia、QtMultimediaQuick_p 和 QtMultimediaWidgets。在 /usr/local/Qt-5.4.1/plugins 中还有媒体服务、播放列表格式 在 /usr/include 中也有 QtMobility、QtMultimediaKit

我正在运行 Ubuntu 15.0

我发现的所有相关问题都没有帮助。

0 投票
1 回答
449 浏览

c++ - QT5.5 相机预览错误

我正在尝试使用QCameraQT 类型在我的 QT5.5 应用程序中使用相机。我正在做的一个简单例子是

当我运行这个示例时,我得到“没有可用的 m_videoSink!” 在命令行上。QT 在 Ubuntu 12.04 上构建,安装了 libgstreamer0.10-0、libgstreamer0.10-dev 和 libgstreamer-plugins-base0.10-0。QT 是用-qt-xcb. 我不知道这里有什么问题。有人有想法吗?

PS:当然,我确保第 2 行打印 >= 1 ;)。