diff options
author | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2019-11-05 09:34:48 +0100 |
---|---|---|
committer | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2019-11-05 13:58:57 +0100 |
commit | f422fbde120f791b29d01cf76079599c68ffa868 (patch) | |
tree | b6524378b3accab6af149e7197875b30dc2175a7 /src/plugins/avfoundation/camera/avfmediaassetwriter.mm | |
parent | 8b92454d6fffcee7a8cf1fb5e0c92920c77733c8 (diff) |
AVFMediaAsserWriter: remove deprecated declration
Interface in headers should not contain i-var declarations, these days
it must be in implementation part. Also, replace quite suspicious
'load' with 'loadAquire' to pair 'storeRelease'. Since I have QT_USE_NAMESPACE
in *.mm file, no need in ugly QT_PREPEND_NAMESPACE macro anymore.
Change-Id: Ia19e3c5b68687030c97e8e8e982ae89627e909f9
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
Diffstat (limited to 'src/plugins/avfoundation/camera/avfmediaassetwriter.mm')
-rw-r--r-- | src/plugins/avfoundation/camera/avfmediaassetwriter.mm | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/src/plugins/avfoundation/camera/avfmediaassetwriter.mm b/src/plugins/avfoundation/camera/avfmediaassetwriter.mm index 9030adb2c..2d40b9087 100644 --- a/src/plugins/avfoundation/camera/avfmediaassetwriter.mm +++ b/src/plugins/avfoundation/camera/avfmediaassetwriter.mm @@ -47,6 +47,7 @@ #include "avfmediacontainercontrol.h" #include <QtCore/qmetaobject.h> +#include <QtCore/qatomic.h> QT_USE_NAMESPACE @@ -79,6 +80,8 @@ enum WriterState WriterStateAborted }; +using AVFAtomicInt64 = QAtomicInteger<qint64>; + } // unnamed namespace @interface QT_MANGLE_NAMESPACE(AVFMediaAssetWriter) (PrivateAPI) @@ -93,32 +96,35 @@ enum WriterState @private AVFCameraService *m_service; - QT_PREPEND_NAMESPACE(AVFScopedPointer)<AVAssetWriterInput> m_cameraWriterInput; - QT_PREPEND_NAMESPACE(AVFScopedPointer)<AVCaptureDeviceInput> m_audioInput; - QT_PREPEND_NAMESPACE(AVFScopedPointer)<AVCaptureAudioDataOutput> m_audioOutput; - QT_PREPEND_NAMESPACE(AVFScopedPointer)<AVAssetWriterInput> m_audioWriterInput; + AVFScopedPointer<AVAssetWriterInput> m_cameraWriterInput; + AVFScopedPointer<AVCaptureDeviceInput> m_audioInput; + AVFScopedPointer<AVCaptureAudioDataOutput> m_audioOutput; + AVFScopedPointer<AVAssetWriterInput> m_audioWriterInput; + AVCaptureDevice *m_audioCaptureDevice; // Queue to write sample buffers: - QT_PREPEND_NAMESPACE(AVFScopedPointer)<dispatch_queue_t> m_writerQueue; + AVFScopedPointer<dispatch_queue_t> m_writerQueue; // High priority serial queue for video output: - QT_PREPEND_NAMESPACE(AVFScopedPointer)<dispatch_queue_t> m_videoQueue; + AVFScopedPointer<dispatch_queue_t> m_videoQueue; // Serial queue for audio output: - QT_PREPEND_NAMESPACE(AVFScopedPointer)<dispatch_queue_t> m_audioQueue; + AVFScopedPointer<dispatch_queue_t> m_audioQueue; - QT_PREPEND_NAMESPACE(AVFScopedPointer)<AVAssetWriter> m_assetWriter; + AVFScopedPointer<AVAssetWriter> m_assetWriter; - QT_PREPEND_NAMESPACE(AVFMediaRecorderControlIOS) *m_delegate; + AVFMediaRecorderControlIOS *m_delegate; bool m_setStartTime; - QT_PREPEND_NAMESPACE(QAtomicInt) m_state; -@private + QAtomicInt m_state; + CMTime m_startTime; CMTime m_lastTimeStamp; NSDictionary *m_audioSettings; NSDictionary *m_videoSettings; + + AVFAtomicInt64 m_durationInMs; } - (id)initWithDelegate:(AVFMediaRecorderControlIOS *)delegate @@ -500,4 +506,9 @@ enum WriterState } } +- (qint64)durationInMs +{ + return m_durationInMs.loadAcquire(); +} + @end |