问题标签 [qbuffer]

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 投票
2 回答
1624 浏览

c++ - 来自 void 指针和内存大小的 QBuffer

我正在寻找在 C++ Qt5.6 中从void * data和创建 QBuffer 的最简单和或优雅的方法long data_size

我尝试将 void 转换为 char 指针并使用 theQByteArray::fromRawData()和 usingQDataStream来填充QByteArray. 在这两种情况下,我都没有成功。

0 投票
1 回答
790 浏览

c++ - Qt Buffer Underrun 播放 RAW 音频

我尝试播放void * data以长度存储的音频,data_size但收到消息:“缓冲区下溢!”

0 投票
1 回答
399 浏览

c++ - QtAV 和缓冲区的清理

我正在 Qt 中编写一个应用程序,它允许来自字节数组的视频流。作为视频输出组件,我使用的是 QtAV ( http://www.qtav.org/ )。在我的例子中,这个组件的输入是一个 QIODevice (QBuffer),其中有一个 QByteArray 和我的数据。我将在流式传输期间将数据放入 QByteArray 中,但我不知道如何删除我尚未读取的数据。我的问题是,一段时间后,QByteArray 的维度非常大,我不知道如何减少分配的内存。

谢谢

安杰洛

0 投票
1 回答
970 浏览

python - PyQt5:QMediaPlayer 无法从 QBuffer 重放音频

QBuffer在 RAM 中有一个带有临时 wav 文件的文件,我想让用户在任何时候都可以听到他想要的次数。但是,它只允许播放一次,并且不允许重播。如果我从文件 ( QUrl.fromLocalFile) 播放音频,它可以重播它。有什么不同?如何解决?

1)要从 RAM 播放 wav 文件,我使用以下代码:

然后,如果我调用self.mediaplayer.play(),它将播放文件到最后。但是,所有后续调用self.mediaplayer.play()都没有效果。这不是我想要的。

2)如果我从文件中初始化媒体播放器,使用:

它工作正常 - 如果我play()在上一次播放结束后调用,QMediaPlayer 只会重复播放。

0 投票
1 回答
2571 浏览

c++ - 捕获到缓冲 QT

我正在尝试使用 QT 捕获图像,并将图像缓冲区写入 QBuffer 类的对象,而不是将其保存到文件中。

到目前为止,这是我的代码:

是否可以将图像捕获到缓冲区而不将其保存到文件中?

0 投票
1 回答
657 浏览

c++ - 无法读取写入的 Qt QBuffer 字节

这里有点混乱:我正在尝试这样做:

这将输出以下内容:

最后一行真的让我很困惑。我认为 .write() 方法的返回值应该说明写入了多少字节?为什么它们不可用?

而且,后来,我尝试了以下操作:

考虑到前面的 bytesAvailable 结果,这些调用的输出并不太令人惊讶。他们输出以下内容:

所以我觉得我错过了一步,你必须在写入和可供读取的数据之间做一些事情。也许某种寻求或什么?但我似乎错过了文档中的说明。

任何提示将不胜感激。谢谢!

0 投票
1 回答
765 浏览

qt - QBuffer 在 QByteArray 的开头而不是结尾写入字节

我有以下代码:

当我打印以控制台我的字节数组的内容时:

控制台打印:

如上所示,2类型为 的quint32,由 的小端十六进制值正确表示0x02000000,但是,它被添加到字节数组的开头而不是结尾。如何将我的值附加到字节数组的末尾?

0 投票
2 回答
423 浏览

c++ - QByteArray 包括浮点数

我是 C++ 和 QT 的新手,我实际上正在编写一个声音信号发生器的项目。但我的问题是,

我正在创建要在 qbytearray 中实现的浮点数,我将使用它来填充 qbuffer。但我无法浮动到 qbytearray 中,它会发出警告说“失去精度”。qbytearray 仅包含从 -100 到 100 的整数值。我需要具有所需精度的浮点数。

你能帮助我吗 ?

0 投票
0 回答
430 浏览

qt - 使用 QMediaplayer 从缓冲区播放视频并在视频播放时附加缓冲区

我尝试从缓冲区播放视频并在播放时附加缓冲区,以便两个或多个视频在没有任何延迟的情况下相互播放,因为它们是一个视频,我尝试使用 QMediaPlaylist 并在运行时附加列表,它工作但我在播放按钮中使用此代码的视频之间存在明显延迟

和一个在运行时附加第二个视频的按钮,在这里我做了很多不同的尝试

第一个附加数组但它不起作用,就像我将缓冲区设置为 ReadWrite flage 并且结果相同,结果是只播放第一个视频并且它停止了,所以你能帮我制作这个工作?我在代码中做错了什么让第二个视频在第一个视频之后无法顺利运行,这就是我想要的结果。

0 投票
1 回答
1334 浏览

c++ - 通过 QTextStream 反复读写 QBuffer

我正在尝试QBuffer通过QTextStream. 首先我构造两个对象:

然后我写了三个不同部分的信息并将它们读回:

当然我没有得到我之前写的数据部分,而是累积的数据:

我可以进行自适应搜索调用以获取正确的数据,但我希望无限增长QBuffer

我尝试s.reset()在写入之间进行调用,但结果是一样的。直接在缓冲区上调用reset()oropen()/close()会产生残缺的结果(这是预期的,因为绕过了流):

我可能会为每个周期构建一个新缓冲区,打开它并将其附加到流中,但这很慢。

这个用例是否有适当且快速的解决方案?