| Index: media/base/mac/videotoolbox_glue.mm
|
| diff --git a/media/base/mac/videotoolbox_glue.mm b/media/base/mac/videotoolbox_glue.mm
|
| index 7cffc46a79116c80301bc12c40a62d69550fcad2..18a4f0017b48cdaf7feecc73b12a2141c953a39f 100644
|
| --- a/media/base/mac/videotoolbox_glue.mm
|
| +++ b/media/base/mac/videotoolbox_glue.mm
|
| @@ -34,6 +34,9 @@ struct VideoToolboxGlue::Library {
|
| typedef CVPixelBufferPoolRef (*VTCompressionSessionGetPixelBufferPoolMethod)(
|
| VTCompressionSessionRef);
|
| typedef void (*VTCompressionSessionInvalidateMethod)(VTCompressionSessionRef);
|
| + typedef OSStatus (*VTCompressionSessionCompleteFramesMethod)(
|
| + VTCompressionSessionRef,
|
| + CoreMediaGlue::CMTime);
|
| typedef OSStatus (*VTSessionSetPropertyMethod)(VTSessionRef,
|
| CFStringRef,
|
| CFTypeRef);
|
| @@ -43,12 +46,14 @@ struct VideoToolboxGlue::Library {
|
| VTCompressionSessionGetPixelBufferPoolMethod
|
| VTCompressionSessionGetPixelBufferPool;
|
| VTCompressionSessionInvalidateMethod VTCompressionSessionInvalidate;
|
| + VTCompressionSessionCompleteFramesMethod VTCompressionSessionCompleteFrames;
|
| VTSessionSetPropertyMethod VTSessionSetProperty;
|
|
|
| CFStringRef* kVTCompressionPropertyKey_AllowFrameReordering;
|
| CFStringRef* kVTCompressionPropertyKey_AverageBitRate;
|
| CFStringRef* kVTCompressionPropertyKey_ColorPrimaries;
|
| CFStringRef* kVTCompressionPropertyKey_ExpectedFrameRate;
|
| + CFStringRef* kVTCompressionPropertyKey_MaxFrameDelayCount;
|
| CFStringRef* kVTCompressionPropertyKey_MaxKeyFrameInterval;
|
| CFStringRef* kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration;
|
| CFStringRef* kVTCompressionPropertyKey_ProfileLevel;
|
| @@ -86,12 +91,14 @@ class VideoToolboxGlue::Loader {
|
| LOAD_SYMBOL(VTCompressionSessionEncodeFrame)
|
| LOAD_SYMBOL(VTCompressionSessionGetPixelBufferPool)
|
| LOAD_SYMBOL(VTCompressionSessionInvalidate)
|
| + LOAD_SYMBOL(VTCompressionSessionCompleteFrames)
|
| LOAD_SYMBOL(VTSessionSetProperty)
|
|
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_AllowFrameReordering)
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_AverageBitRate)
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_ColorPrimaries)
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_ExpectedFrameRate)
|
| + LOAD_SYMBOL(kVTCompressionPropertyKey_MaxFrameDelayCount)
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_MaxKeyFrameInterval)
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration)
|
| LOAD_SYMBOL(kVTCompressionPropertyKey_ProfileLevel)
|
| @@ -189,6 +196,13 @@ void VideoToolboxGlue::VTCompressionSessionInvalidate(
|
| library_->VTCompressionSessionInvalidate(session);
|
| }
|
|
|
| +OSStatus VideoToolboxGlue::VTCompressionSessionCompleteFrames(
|
| + VTCompressionSessionRef session,
|
| + CoreMediaGlue::CMTime completeUntilPresentationTimeStamp) const {
|
| + return library_->VTCompressionSessionCompleteFrames(
|
| + session, completeUntilPresentationTimeStamp);
|
| +}
|
| +
|
| OSStatus VideoToolboxGlue::VTSessionSetProperty(VTSessionRef session,
|
| CFStringRef propertyKey,
|
| CFTypeRef propertyValue) const {
|
| @@ -202,6 +216,7 @@ KEY_ACCESSOR(kVTCompressionPropertyKey_AllowFrameReordering)
|
| KEY_ACCESSOR(kVTCompressionPropertyKey_AverageBitRate)
|
| KEY_ACCESSOR(kVTCompressionPropertyKey_ColorPrimaries)
|
| KEY_ACCESSOR(kVTCompressionPropertyKey_ExpectedFrameRate)
|
| +KEY_ACCESSOR(kVTCompressionPropertyKey_MaxFrameDelayCount)
|
| KEY_ACCESSOR(kVTCompressionPropertyKey_MaxKeyFrameInterval)
|
| KEY_ACCESSOR(kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration)
|
| KEY_ACCESSOR(kVTCompressionPropertyKey_ProfileLevel)
|
|
|