| Index: media/base/mac/videotoolbox_glue.h
|
| diff --git a/media/base/mac/videotoolbox_glue.h b/media/base/mac/videotoolbox_glue.h
|
| deleted file mode 100644
|
| index 9a978bf09da268f3146bd379be91fe92a4f71db2..0000000000000000000000000000000000000000
|
| --- a/media/base/mac/videotoolbox_glue.h
|
| +++ /dev/null
|
| @@ -1,116 +0,0 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef MEDIA_BASE_MAC_VIDEOTOOLBOX_GLUE_H_
|
| -#define MEDIA_BASE_MAC_VIDEOTOOLBOX_GLUE_H_
|
| -
|
| -#include <stdint.h>
|
| -
|
| -#include "base/macros.h"
|
| -#include "media/base/mac/coremedia_glue.h"
|
| -#include "media/base/media_export.h"
|
| -
|
| -// VideoToolbox API is available in and after OS X 10.9 and iOS 8 (10.8 has
|
| -// support for software encoding, but this class exposes the 10.9 API level).
|
| -// Chromium requires OS X 10.9 or iOS 9. This class is defined to try and load
|
| -// the VideoToolbox library at runtime. If it succeeds, clients can use
|
| -// VideoToolbox via this class.
|
| -// Note that this file is necessary because Chromium still targets OS X 10.6 for
|
| -// deployment. It should be deprecated soon, see crbug.com/579648.
|
| -class MEDIA_EXPORT VideoToolboxGlue {
|
| - public:
|
| - class Loader;
|
| -
|
| - // Returns a glue object if VideoToolbox is supported or null otherwise.
|
| - // Using a glue object allows to avoid expensive atomic operations on every
|
| - // function call. The object has process life duration and must not be
|
| - // deleted.
|
| - static const VideoToolboxGlue* Get();
|
| -
|
| - // Originally from VTErrors.h
|
| - typedef UInt32 VTEncodeInfoFlags;
|
| - enum {
|
| - kVTEncodeInfo_Asynchronous = 1UL << 0,
|
| - kVTEncodeInfo_FrameDropped = 1UL << 1,
|
| - };
|
| -
|
| - // Originally from VTCompressionSession.h
|
| - typedef struct OpaqueVTCompressionSession* VTCompressionSessionRef;
|
| - typedef void (*VTCompressionOutputCallback)(
|
| - void* outputCallbackRefCon,
|
| - void* sourceFrameRefCon,
|
| - OSStatus status,
|
| - VTEncodeInfoFlags infoFlags,
|
| - CoreMediaGlue::CMSampleBufferRef sampleBuffer);
|
| -
|
| - // Originally from VTSession.h
|
| - typedef CFTypeRef VTSessionRef;
|
| -
|
| - // Originally from VTCompressionProperties.h
|
| - CFStringRef kVTCompressionPropertyKey_AllowFrameReordering() const;
|
| - CFStringRef kVTCompressionPropertyKey_AverageBitRate() const;
|
| - CFStringRef kVTCompressionPropertyKey_ColorPrimaries() const;
|
| - CFStringRef kVTCompressionPropertyKey_DataRateLimits() const;
|
| - CFStringRef kVTCompressionPropertyKey_ExpectedFrameRate() const;
|
| - CFStringRef kVTCompressionPropertyKey_MaxFrameDelayCount() const;
|
| - CFStringRef kVTCompressionPropertyKey_MaxKeyFrameInterval() const;
|
| - CFStringRef kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration() const;
|
| - CFStringRef kVTCompressionPropertyKey_ProfileLevel() const;
|
| - CFStringRef kVTCompressionPropertyKey_RealTime() const;
|
| - CFStringRef kVTCompressionPropertyKey_TransferFunction() const;
|
| - CFStringRef kVTCompressionPropertyKey_YCbCrMatrix() const;
|
| -
|
| - CFStringRef kVTEncodeFrameOptionKey_ForceKeyFrame() const;
|
| -
|
| - CFStringRef kVTProfileLevel_H264_Baseline_AutoLevel() const;
|
| - CFStringRef kVTProfileLevel_H264_Main_AutoLevel() const;
|
| - CFStringRef kVTProfileLevel_H264_Extended_AutoLevel() const;
|
| - CFStringRef kVTProfileLevel_H264_High_AutoLevel() const;
|
| -
|
| - CFStringRef
|
| - kVTVideoEncoderSpecification_EnableHardwareAcceleratedVideoEncoder()
|
| - const;
|
| - CFStringRef
|
| - kVTVideoEncoderSpecification_RequireHardwareAcceleratedVideoEncoder() const;
|
| -
|
| - // Originally from VTCompressionSession.h
|
| - OSStatus VTCompressionSessionCreate(
|
| - CFAllocatorRef allocator,
|
| - int32_t width,
|
| - int32_t height,
|
| - CoreMediaGlue::CMVideoCodecType codecType,
|
| - CFDictionaryRef encoderSpecification,
|
| - CFDictionaryRef sourceImageBufferAttributes,
|
| - CFAllocatorRef compressedDataAllocator,
|
| - VTCompressionOutputCallback outputCallback,
|
| - void* outputCallbackRefCon,
|
| - VTCompressionSessionRef* compressionSessionOut) const;
|
| - OSStatus VTCompressionSessionEncodeFrame(
|
| - VTCompressionSessionRef session,
|
| - CVImageBufferRef imageBuffer,
|
| - CoreMediaGlue::CMTime presentationTimeStamp,
|
| - CoreMediaGlue::CMTime duration,
|
| - CFDictionaryRef frameProperties,
|
| - void* sourceFrameRefCon,
|
| - VTEncodeInfoFlags* infoFlagsOut) const;
|
| - CVPixelBufferPoolRef VTCompressionSessionGetPixelBufferPool(
|
| - VTCompressionSessionRef session) const;
|
| - void VTCompressionSessionInvalidate(VTCompressionSessionRef session) const;
|
| - OSStatus VTCompressionSessionCompleteFrames(
|
| - VTCompressionSessionRef session,
|
| - CoreMediaGlue::CMTime completeUntilPresentationTimeStamp) const;
|
| -
|
| - // Originally from VTSession.h
|
| - OSStatus VTSessionSetProperty(VTSessionRef session,
|
| - CFStringRef propertyKey,
|
| - CFTypeRef propertyValue) const;
|
| -
|
| - private:
|
| - struct Library;
|
| - VideoToolboxGlue();
|
| - Library* library_;
|
| - DISALLOW_COPY_AND_ASSIGN(VideoToolboxGlue);
|
| -};
|
| -
|
| -#endif // MEDIA_BASE_MAC_VIDEOTOOLBOX_GLUE_H_
|
|
|