1// qaudioformat.sip generated by MetaSIP
2//
3// This file is part of the QtMultimedia Python extension module.
4//
5// Copyright (c) 2021 Riverbank Computing Limited <info@riverbankcomputing.com>
6//
7// This file is part of PyQt5.
8//
9// This file may be used under the terms of the GNU General Public License
10// version 3.0 as published by the Free Software Foundation and appearing in
11// the file LICENSE included in the packaging of this file.  Please review the
12// following information to ensure the GNU General Public License version 3.0
13// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
14//
15// If you do not wish to use this file under the terms of the GPL version 3.0
16// then you may purchase a commercial license.  For more information contact
17// info@riverbankcomputing.com.
18//
19// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
20// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21
22
23class QAudioFormat
24{
25%TypeHeaderCode
26#include <qaudioformat.h>
27%End
28
29public:
30    enum SampleType
31    {
32        Unknown,
33        SignedInt,
34        UnSignedInt,
35        Float,
36    };
37
38    enum Endian
39    {
40        BigEndian,
41        LittleEndian,
42    };
43
44    QAudioFormat();
45    QAudioFormat(const QAudioFormat &other);
46    ~QAudioFormat();
47    bool operator==(const QAudioFormat &other) const;
48    bool operator!=(const QAudioFormat &other) const;
49    bool isValid() const;
50    void setSampleSize(int sampleSize);
51    int sampleSize() const;
52    void setCodec(const QString &codec);
53    QString codec() const;
54    void setByteOrder(QAudioFormat::Endian byteOrder);
55    QAudioFormat::Endian byteOrder() const;
56    void setSampleType(QAudioFormat::SampleType sampleType);
57    QAudioFormat::SampleType sampleType() const;
58    void setSampleRate(int sampleRate);
59    int sampleRate() const;
60    void setChannelCount(int channelCount);
61    int channelCount() const;
62    qint32 bytesForDuration(qint64 duration) const;
63    qint64 durationForBytes(qint32 byteCount) const;
64    qint32 bytesForFrames(qint32 frameCount) const;
65    qint32 framesForBytes(qint32 byteCount) const;
66    qint32 framesForDuration(qint64 duration) const;
67    qint64 durationForFrames(qint32 frameCount) const;
68    int bytesPerFrame() const;
69};
70