| Index: services/video_capture/mojo_media_conversions.cc
|
| diff --git a/services/video_capture/mojo_media_conversions.cc b/services/video_capture/mojo_media_conversions.cc
|
| index 276baf5aac2e4621eed976b69cdd2ca4418ec96a..3c85d7e1604cc9487d5f715dae7ed6cfe237e264 100644
|
| --- a/services/video_capture/mojo_media_conversions.cc
|
| +++ b/services/video_capture/mojo_media_conversions.cc
|
| @@ -65,4 +65,106 @@ media::PowerLineFrequency ConvertFromMojoToMedia(
|
| return media::PowerLineFrequency::FREQUENCY_DEFAULT;
|
| }
|
|
|
| +media::VideoCaptureDeviceDescriptor ConvertFromMojoToMedia(
|
| + mojom::VideoCaptureDeviceDescriptorPtr descriptor) {
|
| + return media::VideoCaptureDeviceDescriptor(
|
| + descriptor->display_name, descriptor->device_id, descriptor->model_id,
|
| + ConvertFromMojoToMedia(descriptor->capture_api),
|
| + ConvertFromMojoToMedia(descriptor->transport_type));
|
| +}
|
| +
|
| +media::VideoCaptureApi ConvertFromMojoToMedia(mojom::VideoCaptureApi api) {
|
| + switch (api) {
|
| + case mojom::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE:
|
| + return media::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE;
|
| + case mojom::VideoCaptureApi::WIN_MEDIA_FOUNDATION:
|
| + return media::VideoCaptureApi::WIN_MEDIA_FOUNDATION;
|
| + case mojom::VideoCaptureApi::WIN_DIRECT_SHOW:
|
| + return media::VideoCaptureApi::WIN_DIRECT_SHOW;
|
| + case mojom::VideoCaptureApi::MACOSX_AVFOUNDATION:
|
| + return media::VideoCaptureApi::MACOSX_AVFOUNDATION;
|
| + case mojom::VideoCaptureApi::MACOSX_DECKLINK:
|
| + return media::VideoCaptureApi::MACOSX_DECKLINK;
|
| + case mojom::VideoCaptureApi::ANDROID_API1:
|
| + return media::VideoCaptureApi::ANDROID_API1;
|
| + case mojom::VideoCaptureApi::ANDROID_API2_LEGACY:
|
| + return media::VideoCaptureApi::ANDROID_API2_LEGACY;
|
| + case mojom::VideoCaptureApi::ANDROID_API2_FULL:
|
| + return media::VideoCaptureApi::ANDROID_API2_FULL;
|
| + case mojom::VideoCaptureApi::ANDROID_API2_LIMITED:
|
| + return media::VideoCaptureApi::ANDROID_API2_LIMITED;
|
| + case mojom::VideoCaptureApi::ANDROID_TANGO:
|
| + return media::VideoCaptureApi::ANDROID_TANGO;
|
| + case mojom::VideoCaptureApi::UNKNOWN:
|
| + return media::VideoCaptureApi::UNKNOWN;
|
| + }
|
| + NOTREACHED();
|
| + return media::VideoCaptureApi::UNKNOWN;
|
| +}
|
| +
|
| +media::VideoCaptureTransportType ConvertFromMojoToMedia(
|
| + mojom::VideoCaptureTransportType transport_type) {
|
| + switch (transport_type) {
|
| + case mojom::VideoCaptureTransportType::MACOSX_USB_OR_BUILT_IN:
|
| + return media::VideoCaptureTransportType::MACOSX_USB_OR_BUILT_IN;
|
| + case mojom::VideoCaptureTransportType::OTHER_TRANSPORT:
|
| + return media::VideoCaptureTransportType::OTHER_TRANSPORT;
|
| + }
|
| + NOTREACHED();
|
| + return media::VideoCaptureTransportType::OTHER_TRANSPORT;
|
| +}
|
| +
|
| +mojom::VideoCaptureDeviceDescriptorPtr ConvertFromMediaToMojo(
|
| + const media::VideoCaptureDeviceDescriptor& descriptor) {
|
| + mojom::VideoCaptureDeviceDescriptorPtr result =
|
| + mojom::VideoCaptureDeviceDescriptor::New();
|
| + result->display_name = descriptor.display_name;
|
| + result->device_id = descriptor.device_id;
|
| + result->model_id = descriptor.model_id;
|
| + result->capture_api = ConvertFromMediaToMojo(descriptor.capture_api);
|
| + result->transport_type = ConvertFromMediaToMojo(descriptor.transport_type);
|
| + return result;
|
| +}
|
| +
|
| +mojom::VideoCaptureApi ConvertFromMediaToMojo(media::VideoCaptureApi api) {
|
| + switch (api) {
|
| + case media::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE:
|
| + return mojom::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE;
|
| + case media::VideoCaptureApi::WIN_MEDIA_FOUNDATION:
|
| + return mojom::VideoCaptureApi::WIN_MEDIA_FOUNDATION;
|
| + case media::VideoCaptureApi::WIN_DIRECT_SHOW:
|
| + return mojom::VideoCaptureApi::WIN_DIRECT_SHOW;
|
| + case media::VideoCaptureApi::MACOSX_AVFOUNDATION:
|
| + return mojom::VideoCaptureApi::MACOSX_AVFOUNDATION;
|
| + case media::VideoCaptureApi::MACOSX_DECKLINK:
|
| + return mojom::VideoCaptureApi::MACOSX_DECKLINK;
|
| + case media::VideoCaptureApi::ANDROID_API1:
|
| + return mojom::VideoCaptureApi::ANDROID_API1;
|
| + case media::VideoCaptureApi::ANDROID_API2_LEGACY:
|
| + return mojom::VideoCaptureApi::ANDROID_API2_LEGACY;
|
| + case media::VideoCaptureApi::ANDROID_API2_FULL:
|
| + return mojom::VideoCaptureApi::ANDROID_API2_FULL;
|
| + case media::VideoCaptureApi::ANDROID_API2_LIMITED:
|
| + return mojom::VideoCaptureApi::ANDROID_API2_LIMITED;
|
| + case media::VideoCaptureApi::ANDROID_TANGO:
|
| + return mojom::VideoCaptureApi::ANDROID_TANGO;
|
| + case media::VideoCaptureApi::UNKNOWN:
|
| + return mojom::VideoCaptureApi::UNKNOWN;
|
| + }
|
| + NOTREACHED();
|
| + return mojom::VideoCaptureApi::UNKNOWN;
|
| +}
|
| +
|
| +mojom::VideoCaptureTransportType ConvertFromMediaToMojo(
|
| + media::VideoCaptureTransportType transport_type) {
|
| + switch (transport_type) {
|
| + case media::VideoCaptureTransportType::MACOSX_USB_OR_BUILT_IN:
|
| + return mojom::VideoCaptureTransportType::MACOSX_USB_OR_BUILT_IN;
|
| + case media::VideoCaptureTransportType::OTHER_TRANSPORT:
|
| + return mojom::VideoCaptureTransportType::OTHER_TRANSPORT;
|
| + }
|
| + NOTREACHED();
|
| + return mojom::VideoCaptureTransportType::OTHER_TRANSPORT;
|
| +}
|
| +
|
| } // namespace video_capture
|
|
|