1

I have been trying to use VTCompressionSessionEncodeFrame to encode some CMSampleBuffers, but when I try to use it I always get this error: Expression type 'OSStatus' (aka 'Int32') is ambiguous without more context

I have tried to find out what it is but with no success, here is the code I am using:

var compressed = VTCompressionSessionEncodeFrame(session: vtCompressionSession, imageBuffer: imageBuff!, presentationTimeStamp: nil, duration: CMTime.invalid, frameProperties: nil, infoFlagsOut: infoFlags)

I do not reference the variable compressed anywhere else in the code as well.

All help is appreciated.

Asra
  • 151
  • 1
  • 11

1 Answers1

0

I figured it out! I changed

var compressed = VTCompressionSessionEncodeFrame(session: vtCompressionSession, imageBuffer: imageBuff!, presentationTimeStamp: nil, duration: CMTime.invalid, frameProperties: nil, infoFlagsOut: infoFlags)

to

var output: VRCompressionOutputHandler? = nil
VTCompressionSessionEncodeFrame(session: vtCompressionSession, imageBuffer: imageBuff!, presentationTimeStamp: nil, duration: CMTime.invalid, frameProperties: nil, infoFlagsOut: infoFlags, outputHandler: output)
Asra
  • 151
  • 1
  • 11