录屏格式转换上传后台转二进制存数据库以blob流返前端显示

.  录屏软件 EV

.  源文件 mp4 原画 jing精细编码

.  转换工具 格式工厂

.  转为 webm p8编码 30帧/s 720p

.  传到数据库 转为blob

.  前端请求 以blob格式返回 

.  前端把流处理一下

    url=window.URL.createObjectURL(result)

.  让视频显示

    document.querySelector('video').src=url

要实现这样的功能,你可以使用Python的`pyautogui`和`opencv-python`库来捕获屏幕以及监控键盘事件。这里提供一个简单的思路: 1. 使用`pyautogui`库的`screenshot`函数来获取屏幕截图。 2. 使用`cv2`库(`opencv-python`)来处理图像并保视频帧。 3. 使用`keyboard`库来监听键盘事件,检测F12按键的按下。 以下是一个简单的代码示例: ```python import pyautogui import cv2 import keyboard # 录屏参数设置 fourcc = cv2.VideoWriter_fourcc(*"XVID") out = cv2.VideoWriter("output.avi", fourcc, 20.0, (pyautogui.size().width, pyautogui.size().height)) # 开始和结束标志 is_recording = False def record_screen(): global is_recording while True: # 检查是否按下F12键 if keyboard.is_pressed('f12'): if is_recording: # 如果正在录制,则停止录制 is_recording = False else: # 如果没有录制,则开始录制 is_recording = True # 等待一段时间,避免F12的重复触发 keyboard.wait(0.1) if is_recording: # 获取屏幕截图 img = pyautogui.screenshot() frame = cv2.cvtColor(np.array(img), cv2.COLOR_RGB2BGR) out.write(frame) # 静默模式下,不需要显示屏幕截图 # pyautogui.imshow(frame) # pyautogui.waitKey(1) # 运行录屏函数 record_screen() # 释放资源 out.release() cv2.destroyAllWindows() ``` 在运行这段代码之前,请确保已经安装了所需的库: ```bash pip install opencv-python pyautogui keyboard numpy ``` 请注意,这段代码会创建一个名为`output.avi`的视频文件,在桌面或者其他指定路径下。`record_screen`函数会一直运行,直到你按下F12键结束录制。录制的视频默认保在脚本运行的同一目录下。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值