public HRESULT GetStringLength(Guid guidKey, out uint pcchLength) { var hr = _type.GetStringLength(guidKey, out pcchLength); Trace("guid: " + guidKey.ToName() + " len: " + pcchLength + " hr: " + hr); return(hr); }
public static string GetString(this IMFMediaType input, Guid key, string defaultValue = null) { if (input == null) { throw new ArgumentNullException(nameof(input)); } if (input.GetStringLength(key, out var length).IsError) { return(defaultValue); } var s = new string('\0', (int)length); input.GetString(key, s, length, IntPtr.Zero).ThrowOnError(); return(s); }
public static string GetString(this IMFMediaType obj, Guid key, string defaultValue = null) { if (obj == null) { throw new ArgumentNullException(nameof(obj)); } if (obj.GetStringLength(key, out var length).IsError) { return(defaultValue); } var s = new string('\0', (int)length); length++; obj.GetString(key, s, length, ref length).ThrowOnError(); return(s); }