media_stream_request.cc revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "content/public/common/media_stream_request.h" 6 7#include "base/logging.h" 8 9namespace content { 10 11bool IsAudioMediaType(MediaStreamType type) { 12 return (type == MEDIA_DEVICE_AUDIO_CAPTURE || 13 type == content::MEDIA_TAB_AUDIO_CAPTURE || 14 type == content::MEDIA_LOOPBACK_AUDIO_CAPTURE); 15} 16 17bool IsVideoMediaType(MediaStreamType type) { 18 return (type == MEDIA_DEVICE_VIDEO_CAPTURE || 19 type == content::MEDIA_TAB_VIDEO_CAPTURE || 20 type == content::MEDIA_DESKTOP_VIDEO_CAPTURE); 21} 22 23MediaStreamDevice::MediaStreamDevice() 24 : type(MEDIA_NO_SERVICE), 25 video_facing(MEDIA_VIDEO_FACING_NONE) { 26} 27 28MediaStreamDevice::MediaStreamDevice( 29 MediaStreamType type, 30 const std::string& id, 31 const std::string& name) 32 : type(type), 33 id(id), 34 video_facing(MEDIA_VIDEO_FACING_NONE), 35 name(name) { 36#if defined(OS_ANDROID) 37 if (name.find("front") != std::string::npos) { 38 video_facing = MEDIA_VIDEO_FACING_USER; 39 } else if (name.find("back") != std::string::npos) { 40 video_facing = MEDIA_VIDEO_FACING_ENVIRONMENT; 41 } 42#endif 43} 44 45MediaStreamDevice::MediaStreamDevice( 46 MediaStreamType type, 47 const std::string& id, 48 const std::string& name, 49 int sample_rate, 50 int channel_layout, 51 int frames_per_buffer) 52 : type(type), 53 id(id), 54 video_facing(MEDIA_VIDEO_FACING_NONE), 55 name(name), 56 input(sample_rate, channel_layout, frames_per_buffer) { 57} 58 59MediaStreamDevice::~MediaStreamDevice() {} 60 61bool MediaStreamDevice::IsEqual(const MediaStreamDevice& second) const { 62 const AudioDeviceParameters& input_second = second.input; 63 return type == second.type && 64 name == second.name && 65 id == second.id && 66 input.sample_rate == input_second.sample_rate && 67 input.channel_layout == input_second.channel_layout; 68} 69 70MediaStreamRequest::MediaStreamRequest( 71 int render_process_id, 72 int render_view_id, 73 int page_request_id, 74 const GURL& security_origin, 75 MediaStreamRequestType request_type, 76 const std::string& requested_audio_device_id, 77 const std::string& requested_video_device_id, 78 MediaStreamType audio_type, 79 MediaStreamType video_type) 80 : render_process_id(render_process_id), 81 render_view_id(render_view_id), 82 page_request_id(page_request_id), 83 security_origin(security_origin), 84 request_type(request_type), 85 requested_audio_device_id(requested_audio_device_id), 86 requested_video_device_id(requested_video_device_id), 87 audio_type(audio_type), 88 video_type(video_type) { 89} 90 91MediaStreamRequest::~MediaStreamRequest() {} 92 93} // namespace content 94