PySide6.QtMultimedia.QAudioBuffer¶
- class QAudioBuffer¶
QAudioBuffer类表示具有特定格式和采样率的音频样本集合。更多…概要¶
方法¶
def
__init__()def
byteCount()def
duration()def
format()def
frameCount()def
isValid()def
sampleCount()def
startTime()def
swap()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
QAudioBuffer被QAudioDecoder类用来将解码后的音频数据传递给应用程序。音频缓冲区包含特定QAudioFormat的数据,可以使用format()查询。它还带有时间和持续时间信息的标签。要访问存储在缓冲区中的数据,请使用
data()或constData()方法。音频缓冲区是显式共享的,在大多数情况下,您应该在修改数据之前调用
detach()。- __init__()¶
创建一个新的、空的、无效的缓冲区。
- __init__(other)
- Parameters:
其他 –
QAudioBuffer
从
other创建一个新的音频缓冲区。音频缓冲区是显式共享的,你应该在缓冲区上调用detach()来制作一个可以修改的副本。- __init__(data, format[, startTime=-1])
- Parameters:
data –
QByteArrayformat –
QAudioFormatstartTime – int
从提供的
data中创建一个新的音频缓冲区,使用给定的format。该格式将决定如何从data中解释样本的数量和大小。如果提供的
data不是计算出的帧大小的整数倍,多余的数据将不会被使用。这个音频缓冲区将复制
data的内容。startTime(以微秒为单位)表示此缓冲区在流中的开始时间。如果此缓冲区不是流的一部分,则将其设置为-1。- __init__(numFrames, format[, startTime=-1])
- Parameters:
numFrames – int
format –
QAudioFormatstartTime – int
创建一个新的音频缓冲区,为给定的
format格式的numFrames帧分配空间。单个样本将初始化为该格式的默认值。startTime(以微秒为单位)表示此缓冲区在流中的开始时间。如果此缓冲区不是流的一部分,则将其设置为-1。- byteCount()¶
- Return type:
整数
返回此缓冲区的大小,以字节为单位。
- duration()¶
- Return type:
整数
返回此缓冲区中音频的持续时间,以微秒为单位。
这取决于
format()和frameCount()。- format()¶
- Return type:
返回此缓冲区的
format。此格式的多个属性会影响如何从
frameCount()计算duration()或byteCount()。- frameCount()¶
- Return type:
整数
返回此缓冲区中完整音频帧的数量。
音频帧是同一时间点上每个通道的一个样本的交错集合。
- isValid()¶
- Return type:
布尔
如果这是一个有效的缓冲区,则返回true。一个有效的缓冲区包含超过零帧的数据,并且具有有效的格式。
- sampleCount()¶
- Return type:
整数
返回此缓冲区中的样本数量。
如果此缓冲区的格式具有多个通道,则此计数包括所有通道。这意味着一个总共有1000个样本的立体声缓冲区将有500个左样本和500个右样本(交错),并且此函数将返回1000。
另请参阅
- startTime()¶
- Return type:
整数
返回流中此缓冲区开始的时间(以微秒为单位)。
如果此缓冲区不是流的一部分,将返回-1。
- swap(other)¶
- Parameters:
其他 –
QAudioBuffer
将音频缓冲区与
other交换。