Esempio n. 1
0
        static public VTVideoEncoder [] GetEncoderList()
        {
            IntPtr array;

            if (VTCopyVideoEncoderList(IntPtr.Zero, out array) != VTStatus.Ok)
            {
                return(null);
            }

            var dicts = NSArray.ArrayFromHandle <NSDictionary> (array);
            var ret   = new VTVideoEncoder [dicts.Length];
            int i     = 0;

            foreach (var dict in dicts)
            {
                ret [i] = new VTVideoEncoder(
                    dict [VTVideoEncoderList.CodecType] as NSNumber,
                    dict [VTVideoEncoderList.CodecName] as NSString,
                    dict [VTVideoEncoderList.DisplayName] as NSString,
                    dict [VTVideoEncoderList.EncoderID] as NSString,
                    dict [VTVideoEncoderList.EncoderName] as NSString);
                i++;
            }
            CFObject.CFRelease(array);
            return(ret);
        }
Esempio n. 2
0
        static public VTVideoEncoder [] GetEncoderList()
        {
            IntPtr array;

            if (VTCopyVideoEncoderList(IntPtr.Zero, out array) != VTStatus.Ok)
            {
                return(null);
            }

            var dicts = NSArray.ArrayFromHandle <NSDictionary> (array);
            var ret   = new VTVideoEncoder [dicts.Length];
            int i     = 0;

            foreach (var dict in dicts)
            {
                ret [i++] = new VTVideoEncoder(dict);
            }
            CFObject.CFRelease(array);
            return(ret);
        }