| Index: media/capture/video/android/video_capture_device_factory_android.cc
|
| diff --git a/media/capture/video/android/video_capture_device_factory_android.cc b/media/capture/video/android/video_capture_device_factory_android.cc
|
| index 6b04cdc8bd766e87bdd80758c9e7803eae92b599..239dcc8d45e5b5a2d5ad8a2065f7eee04c1befb6 100644
|
| --- a/media/capture/video/android/video_capture_device_factory_android.cc
|
| +++ b/media/capture/video/android/video_capture_device_factory_android.cc
|
| @@ -35,14 +35,14 @@ VideoCaptureDeviceFactoryAndroid::createVideoCaptureAndroid(
|
| }
|
|
|
| std::unique_ptr<VideoCaptureDevice> VideoCaptureDeviceFactoryAndroid::Create(
|
| - const VideoCaptureDevice::Name& device_name) {
|
| + const VideoCaptureDeviceDescriptor& device_descriptor) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| int id;
|
| - if (!base::StringToInt(device_name.id(), &id))
|
| + if (!base::StringToInt(device_descriptor.device_id, &id))
|
| return std::unique_ptr<VideoCaptureDevice>();
|
|
|
| std::unique_ptr<VideoCaptureDeviceAndroid> video_capture_device(
|
| - new VideoCaptureDeviceAndroid(device_name));
|
| + new VideoCaptureDeviceAndroid(device_descriptor));
|
|
|
| if (video_capture_device->Init())
|
| return std::move(video_capture_device);
|
| @@ -51,10 +51,10 @@ std::unique_ptr<VideoCaptureDevice> VideoCaptureDeviceFactoryAndroid::Create(
|
| return std::unique_ptr<VideoCaptureDevice>();
|
| }
|
|
|
| -void VideoCaptureDeviceFactoryAndroid::GetDeviceNames(
|
| - VideoCaptureDevice::Names* device_names) {
|
| +void VideoCaptureDeviceFactoryAndroid::GetDeviceDescriptors(
|
| + VideoCaptureDeviceDescriptors* device_descriptors) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| - device_names->clear();
|
| + device_descriptors->clear();
|
|
|
| JNIEnv* env = AttachCurrentThread();
|
|
|
| @@ -74,24 +74,38 @@ void VideoCaptureDeviceFactoryAndroid::GetDeviceNames(
|
| const int capture_api_type =
|
| Java_VideoCaptureFactory_getCaptureApiType(env, camera_id, context);
|
|
|
| - VideoCaptureDevice::Name name(
|
| - base::android::ConvertJavaStringToUTF8(device_name),
|
| - base::IntToString(camera_id),
|
| - static_cast<VideoCaptureDevice::Name::CaptureApiType>(
|
| - capture_api_type));
|
| - device_names->push_back(name);
|
| + VideoCaptureDeviceDescriptor descriptor;
|
| + descriptor.friendly_name =
|
| + base::android::ConvertJavaStringToUTF8(device_name);
|
| + descriptor.device_id = base::IntToString(camera_id);
|
| + descriptor.capture_api = static_cast<VideoCaptureApiType>(capture_api_type);
|
| + device_descriptors->push_back(descriptor);
|
|
|
| DVLOG(1) << "VideoCaptureDeviceFactoryAndroid::GetDeviceNames: camera "
|
| - << "device_name=" << name.name() << ", unique_id=" << name.id();
|
| + << "device_name=" << descriptor.friendly_name
|
| + << ", unique_id=" << descriptor.device_id;
|
| }
|
| }
|
|
|
| +void VideoCaptureDeviceFactoryAndroid::GetDeviceInfo(
|
| + const VideoCaptureDeviceDescriptor& device_descriptor,
|
| + VideoCaptureDeviceInfo* device_info) {
|
| + DCHECK(device_info);
|
| + device_info->descriptor = device_descriptor;
|
| + GetDeviceSupportedFormats(device_descriptor,
|
| + &(device_info->supported_formats));
|
| + // Android cameras are not typically USB devices, and the model_id is
|
| + // currently only used for USB model identifiers, so this implementation just
|
| + // indicates an unknown device model.
|
| + device_info->model_id = "";
|
| +}
|
| +
|
| void VideoCaptureDeviceFactoryAndroid::GetDeviceSupportedFormats(
|
| - const VideoCaptureDevice::Name& device,
|
| + const VideoCaptureDeviceDescriptor& device,
|
| VideoCaptureFormats* capture_formats) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| int id;
|
| - if (!base::StringToInt(device.id(), &id))
|
| + if (!base::StringToInt(device.device_id, &id))
|
| return;
|
| JNIEnv* env = AttachCurrentThread();
|
| base::android::ScopedJavaLocalRef<jobjectArray> collected_formats =
|
| @@ -127,7 +141,7 @@ void VideoCaptureDeviceFactoryAndroid::GetDeviceSupportedFormats(
|
| format.obj()),
|
| pixel_format);
|
| capture_formats->push_back(capture_format);
|
| - DVLOG(1) << device.name() << " "
|
| + DVLOG(1) << device.friendly_name << " "
|
| << VideoCaptureFormat::ToString(capture_format);
|
| }
|
| }
|
|
|