1.第一种

用webrtc进行音视频通话,前提是先默认chrome开启音视频,代码如下,其中两处写了重点

class WebRTC:def __init__(self):# chrome浏览器设置ch_option = webdriver.ChromeOptions()prefs = {# chrome不弹出的“是否接受xxx通知”'profile.default_content_setting_values.notifications': 2,# chrome开启麦克风--重点"profile.default_content_setting_values.media_stream_mic": 1,# chrome开启摄像头--重点"profile.default_content_setting_values.media_stream_camera": 1  }ch_option.add_experimental_option('prefs', prefs)# chrome不显示是收到自动软件控制ch_option.add_experimental_option('excludeSwitches', ['enable-automation'])# 忽略证书错误,不需要手动点高级选项ch_option.add_argument('--ignore-certificate-errors')# 为媒体流使用假设备来替换实际的摄像头和麦克风# ch_option.add_argument('--use-fake-device-for-media-stream')# 通过选择媒体流的默认设备(例如 WebRTC)绕过媒体流信息栏。与 --use-fake-device-for-media-stream 一起使用。# ch_option.add_argument('--use-fake-ui-for-media-stream')  path = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))# chrome驱动路径chrome_driver = path + r'/data/browser_driver/chromedriver.exe'  self.browser = webdriver.Chrome(executable_path=chrome_driver, options=ch_option)

上述代码亲测成功,使用的主机物理摄像头和麦克风。

2.第二种

class WebRTC:def __init__(self):# chrome浏览器设置ch_option = webdriver.ChromeOptions()prefs = {# chrome不弹出的“是否接受xxx通知”'profile.default_content_setting_values.notifications': 2}ch_option.add_experimental_option('prefs', prefs)# chrome不显示是收到自动软件控制ch_option.add_experimental_option('excludeSwitches', ['enable-automation'])# 忽略证书错误,不需要手动点高级选项ch_option.add_argument('--ignore-certificate-errors')# 同时开启麦克风和摄像头--重点ch_option.add_argument('--use-fake-ui-for-media-stream')  path = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))# chrome驱动路径chrome_driver = path + r'/data/browser_driver/chromedriver.exe'  self.browser = webdriver.Chrome(executable_path=chrome_driver, options=ch_option)

3.例外情况

# 使用--use-fake-ui-for-media-stream,不要带--use-fake-device-for-media-stream
ch_option.add_argument('--use-fake-ui-for-media-stream')
# 为媒体流使用假设备来替换实际的摄像头和麦克风
ch_option.add_argument('--use-fake-device-for-media-stream')

这种情况无法使用物理摄像头和麦克风。

实际验证结果:用webrtc和手机APP进行通话,手机端:显示webrtc为绿屏(假视频),听到滴滴滴的声音

selenium+chrome使用webrtc音频或视频时,默认开启麦克风和摄像头相关推荐

  1. vue element-upload上传视频或音频获取视频时长

    做这步操作主要是后端要求传视频的时长duration这个字段,获取方法 第一种: <el-upload class="upload-demo":multiple=" ...

  2. Firefox 66 将阻止自动播放音频和视频

    百度智能云 云生态狂欢季 热门云产品1折起>>>   当我们点击一个链接,或者打开新的浏览器选项卡时,浏览器就开始自动播放视频和声音,这是一件十分烦人的事.Chrome 浏览器早已对 ...

  3. Android 播放视频时横竖屏的调整

    我个人看视频的时候喜欢横屏看,这样视频图像显得还大,所以在做自己的播放器的时候默认就是横屏显示.这样在播放横屏录制的视频时没有问题,但是一旦播放竖屏录制的视频问题就大了,图像都是偏转90度的.这可怎么 ...

  4. html javascript 音频、视频、 mp3 、mp4 的播放、暂停、重新播放、获取音频时长、视频自动全屏播放

    html javascript 音频.视频. mp3 .mp4 的播放.暂停.重新播放.获取音频时长 视频 https://www.bilibili.com/video/BV1WE411o7Ft?fr ...

  5. Chrome播放视频时只有声音没有画面

    问题 win7下Chrome在线播放视频时只有声音,没有画面 解决 打开Chrome,点击右上角菜单,选择设置 -> 高级 -> 系统,取消使用硬件加速模式(如果可用): 重启Chrome ...

  6. 使用声网sdk音视频时,播放本地音频心得

    注意: 使用声网sdk音视频时,需要使用声网sdk内部的播放音频api 否则在iOS12系统上,通过avplayer播放时,使用replaceItem的方式切换AVPlayerItem时会出现声音消失 ...

  7. win10系统,python3.8环境,chrome浏览器,selenium框架,实现腾讯视频自动登录

    文章目录 环境 代码演示 总结 环境 win10系统,python3.8环境,chrome浏览器,selenium框架,实现腾讯视频自动登录 代码演示 from selenium import web ...

  8. CentOS7 Selenium chrome截图时,文字呈方框乱码状态解决

    在CentOS7使用Selenium chrome截图时,图片中文字为乱码状态,如下图: 在centos上安装了宋体字体解决了这个问题 系统:centos 7 下载宋体文件:点击下载 把文件放到 /u ...

  9. 关于java 上传的音频或视频文件获取时长及视频封面

    1.引入依赖,由于在Github上面的maven依赖,下载不下来,需要手动下载jar,然后安装到本地的maven仓库 <!-- https://mvnrepository.com/artifac ...

最新文章

  1. FIR滤波器的Matlab实现
  2. 多线程:中断(interrupt、interrupted、executor)
  3. java 脚本语言交互_Java学习笔记--脚本语言支持API
  4. SQL Express自动备份
  5. Taro+react开发(87):图片引入
  6. node.js Websocket消息推送---GoEasy
  7. c++实现KMP算法中的Next[ ]
  8. CentOS下MySQL主从同步配置
  9. 【jQuery笔记Part3】02-jQuery抖动效果
  10. Ubuntu16.04安装Mono4.2.1 C#开发环境
  11. REHL5 mail不能自动外发邮件
  12. 190730每日一句
  13. MATLAB雷达信号处理
  14. 计算机光盘无法格式化,win10无法格式化dvd光盘
  15. android充电指示灯颜色修改
  16. C语言:使用指针,封装一个函数, // 使输入的奇数从小到大排列,奇数排列完毕之后,再把偶数从大到小进行排列, // 最终输出整个
  17. pytorch训练的pt模型转换为onnx(nn.DataParallel()、model、model.state_dict())
  18. --MBTI 性格测试
  19. 如何使用C语言动态定义数组长度
  20. 人工智能的四波浪潮以及未来的发展方向

热门文章

  1. FastReport 金额大小写转换自定义函数
  2. uni-app 第三方授权登录
  3. Python .format()函数使用方法
  4. 解决 Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。(酷狗音乐占用8000端口)
  5. 锐捷交换机处理环路问题
  6. 小猫爬山(DFS+剪枝)
  7. 拼多多改销量10+是怎么回事
  8. 征服英语的二十二条军规
  9. c语言中怎么用scanf给二维数组赋值,关于VC++6.0无法用scanf()输入浮点值赋给二维数组的问题...
  10. hive------内部函数与自定义函数