diff options
author | Justin McPherson <justin.mcpherson@nokia.com> | 2010-04-15 09:08:00 (GMT) |
---|---|---|
committer | Justin McPherson <justin.mcpherson@nokia.com> | 2010-04-15 09:08:00 (GMT) |
commit | e85223d233c0e1d6beca748332b8fbaba3ebbf2d (patch) | |
tree | 3f6b3df4e7255403ed1b26413240ea7008bf5883 /src/multimedia/audio/qaudioinput_mac_p.h | |
parent | 29bb0a4f0fc135337658e5fa273edb06eefaae3d (diff) | |
download | Qt-e85223d233c0e1d6beca748332b8fbaba3ebbf2d.zip Qt-e85223d233c0e1d6beca748332b8fbaba3ebbf2d.tar.gz Qt-e85223d233c0e1d6beca748332b8fbaba3ebbf2d.tar.bz2 |
Create Mediaservices lib, separate from Multimedia.
Diffstat (limited to 'src/multimedia/audio/qaudioinput_mac_p.h')
-rw-r--r-- | src/multimedia/audio/qaudioinput_mac_p.h | 169 |
1 files changed, 0 insertions, 169 deletions
diff --git a/src/multimedia/audio/qaudioinput_mac_p.h b/src/multimedia/audio/qaudioinput_mac_p.h deleted file mode 100644 index 7aa4168..0000000 --- a/src/multimedia/audio/qaudioinput_mac_p.h +++ /dev/null @@ -1,169 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtMultimedia module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of other Qt classes. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - - -#ifndef QAUDIOINPUT_MAC_P_H -#define QAUDIOINPUT_MAC_P_H - -#include <CoreServices/CoreServices.h> -#include <CoreAudio/CoreAudio.h> -#include <AudioUnit/AudioUnit.h> -#include <AudioToolbox/AudioToolbox.h> - -#include <QtCore/qobject.h> -#include <QtCore/qmutex.h> -#include <QtCore/qwaitcondition.h> -#include <QtCore/qatomic.h> - -#include <QtMultimedia/qaudio.h> -#include <QtMultimedia/qaudioformat.h> -#include <QtMultimedia/qaudioengine.h> - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -class QTimer; -class QIODevice; -class QAbstractAudioDeviceInfo; - -namespace QtMultimediaInternal -{ -class QAudioInputBuffer; -} - -class QAudioInputPrivate : public QAbstractAudioInput -{ - Q_OBJECT - -public: - bool isOpen; - int periodSizeBytes; - int internalBufferSize; - qint64 totalFrames; - QAudioFormat audioFormat; - QIODevice* audioIO; - AudioUnit audioUnit; - AudioDeviceID audioDeviceId; - Float64 clockFrequency; - UInt64 startTime; - QAudio::Error errorCode; - QAudio::State stateCode; - QtMultimediaInternal::QAudioInputBuffer* audioBuffer; - QMutex mutex; - QWaitCondition threadFinished; - QAtomicInt audioThreadState; - QTimer* intervalTimer; - AudioStreamBasicDescription streamFormat; - AudioStreamBasicDescription deviceFormat; - QAbstractAudioDeviceInfo *audioDeviceInfo; - - QAudioInputPrivate(const QByteArray& device, QAudioFormat const& format); - ~QAudioInputPrivate(); - - bool open(); - void close(); - - QAudioFormat format() const; - - QIODevice* start(QIODevice* device); - void stop(); - void reset(); - void suspend(); - void resume(); - void idle(); - - int bytesReady() const; - int periodSize() const; - - void setBufferSize(int value); - int bufferSize() const; - - void setNotifyInterval(int milliSeconds); - int notifyInterval() const; - - qint64 processedUSecs() const; - qint64 elapsedUSecs() const; - - QAudio::Error error() const; - QAudio::State state() const; - - void audioThreadStart(); - void audioThreadStop(); - - void audioDeviceStop(); - void audioDeviceFull(); - void audioDeviceError(); - - void startTimers(); - void stopTimers(); - -private slots: - void deviceStopped(); - -private: - enum { Running, Stopped }; - - // Input callback - static OSStatus inputCallback(void* inRefCon, - AudioUnitRenderActionFlags* ioActionFlags, - const AudioTimeStamp* inTimeStamp, - UInt32 inBusNumber, - UInt32 inNumberFrames, - AudioBufferList* ioData); -}; - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QAUDIOINPUT_MAC_P_H |