2015-04-10 1 views
0

Я использовалКак правильно выбрать IMediaEncodingProperties из GetAvailableMediaStreamProperties (MediaStreamType.Photo) из MediaCapture?

IReadOnlyList<IMediaEncodingProperties> supportedResolutions = _mediaCapture.VideoDeviceController.GetAvailableMediaStreamProperties(MediaStreamType.Photo) 

, чтобы получить разрешение.

Чтобы у меня было 40 IMediaEncodingProperties. В этом первом 18 IMediaEncodingProperties имеет подтип как «YUY2», следующий 22 имеет подтип «MJPG».

Мы получим 4 IMediaEncodingProperties для такого же разрешения, как для 640 × 480

Первые IMediaEncodingProperties

-  supportedResolutions[0] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.IMediaEncodingProperties {Windows.Media.MediaProperties.VideoEncodingProperties} 
    -  [Windows.Media.MediaProperties.VideoEncodingProperties] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.VideoEncodingProperties 
      Bitrate 147456000 uint 
    -  FrameRate {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
      Denominator 1 uint 
      Numerator 30 uint 
      Height 480 uint 
    +  PixelAspectRatio {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
      ProfileId 0 int 
    +  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
      Subtype "YUY2" string 
      Type "Video" string 
      Width 640 uint 
    +  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
      Subtype "YUY2" string 
      Type "Video" string 

Второй IMediaEncodingProperties

-  supportedResolutions[1] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.IMediaEncodingProperties {Windows.Media.MediaProperties.VideoEncodingProperties} 
-  [Windows.Media.MediaProperties.VideoEncodingProperties] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.VideoEncodingProperties 
     Bitrate 147456000 uint 
-  FrameRate {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
     Denominator 1 uint 
     Numerator 15 uint 
     Height 480 uint 
+  PixelAspectRatio {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
     ProfileId 0 int 
+  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
     Subtype "YUY2" string 
     Type "Video" string 
     Width 640 uint 
+  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
     Subtype "YUY2" string 
     Type "Video" string 

девятнадцатом IMediaEncodingProperties

-  supportedResolutions[18] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.IMediaEncodingProperties {Windows.Media.MediaProperties.VideoEncodingProperties} 
-  [Windows.Media.MediaProperties.VideoEncodingProperties] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.VideoEncodingProperties 
     Bitrate 221184000 uint 
-  FrameRate {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
     Denominator 1 uint 
     Numerator 30 uint 
     Height 480 uint 
-  PixelAspectRatio {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
     Denominator 1 uint 
     Numerator 1 uint 
     ProfileId 0 int 
+  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
     Subtype "MJPG" string 
     Type "Video" string 
     Width 640 uint 
+  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
     Subtype "MJPG" string 
     Type "Video" string 

20-IMediaEncodingProperties

-  supportedResolutions[19] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.IMediaEncodingProperties {Windows.Media.MediaProperties.VideoEncodingProperties} 
-  [Windows.Media.MediaProperties.VideoEncodingProperties] {Windows.Media.MediaProperties.VideoEncodingProperties} Windows.Media.MediaProperties.VideoEncodingProperties 
     Bitrate 221184000 uint 
-  FrameRate {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
     Denominator 1 uint 
     Numerator 15 uint 
     Height 480 uint 
+  PixelAspectRatio {Windows.Media.MediaProperties.MediaRatio} Windows.Media.MediaProperties.MediaRatio 
     ProfileId 0 int 
+  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
     Subtype "MJPG" string 
     Type "Video" string 
     Width 640 uint 
+  Properties {Windows.Media.MediaProperties.MediaPropertySet} Windows.Media.MediaProperties.MediaPropertySet 
     Subtype "MJPG" string 
     Type "Video" string 

Что дифферент между этими IMediaEncodingProperties. Что я должен использовать для съемки неподвижной фотографии?

ответ

1

Похоже, что разница между этими четырьмя составляет их Числа и Битрейт. Я не уверен, что любой из этих свойств вступает в игру с Photo, поскольку я бы связал их только с видео, но, чтобы быть в безопасности, возможно, захватить тот, у которого наибольшее битрейт и наибольшее соотношение числитель/знаменатель.