吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 12677|回复: 311
收起左侧

[Windows] 极简版录屏小工具-原创

    [复制链接]
william0712 发表于 2024-9-23 10:47
本帖最后由 william0712 于 2024-9-25 11:04 编辑
       录屏工具保存了一大堆了,弯弯绕绕的功能太多了,眼花撩乱,我只想要一个“开录-保存”就完了,不想看到太多乱七八糟的功能,于是它诞生了“屏幕录制小工具”,python写的,没有过多的功能,只有一个,就是录屏,完了保存MP4,没了。由于真的太小了,请允许我屏取运行截图截大些吧,以下是运行后,在桌面上显示的大小。有改进建议的欢迎提出,如果觉得它对您有那么一丁点用,请给个免费评分,谢了。
QQ截图20240923093207.jpg

0925停更日志:
1.有部份人反馈,发现特殊情况下会引发“NoneType'  object has no attribute 'notify';
2.由于当时设计框架时,想着先录再自主保存,想着也没多大,所以也没创建临时文件的形式去保存帧,把它们全部存在内存当中,录完再存,结果昨天做内存监控时发现,这是个吃内存大户,录得越久就越大;
3.加上不小心把代码全目录都删了,想重新改一下都没法弄了,算了停更吧,哪天要用时,再重头改一个合适的。
4.当然大内存用户用起来还是很快的,毕竟用也还能用,问题不大,感谢各位亲的点赞支持,这里谢过了,撤退了。

0924更新:
1.加入暂停机制;
2.点击开始录制之后自动隐藏;
3.加入快捷键CTRL+2暂停,CTRL+3停止录制并保存;
4.停止录制之后自动恢复主窗口显示。


QQ截图20240923103619.jpg

是那句,火绒查毒无问题,python打包的,360安全卫士可能会报毒,就算代码里只有一条print "Hello world!",它也报毒,无语了,自行选择,360真的是越来越垃圾了
由于涉及了FFMPEG和好几个库,打包出来就60多M了,代码只有95行,下载链接放123盘了,支持浏览器直下。
-----------------------------------------------------------------------------------------------------------------------------------------------------
下载链接:https://www.123684.com/s/EG5A-fg0AH

PY代码如下:
[Python] 纯文本查看 复制代码
import mss
import mss.tools
import cv2
import numpy as np
import tkinter as tk
from tkinter import messagebox, filedialog
import os

# 获取屏幕大小
with mss.mss() as sct:
    screen_size = (sct.monitors[1]['width'], sct.monitors[1]['height'])

# 定义编码器
fourcc = cv2.VideoWriter_fourcc(*'mp4v')

recording = False
frames = []  # 用于存储录制的帧
output_writer = None


def start_recording():
    global recording, start_button_text
    if not recording:
        recording = True
        start_button_text.set("录制中")
        record_screen()


def stop_recording():
    global recording, frames, output_writer, start_button_text
    if recording:
        recording = False
        start_button_text.set("开始录制")

        try:
            # 让用户选择保存位置和文件名
            output_file = filedialog.asksaveasfilename(defaultextension=".mp4", filetypes=[("MP4 files", "*.mp4")])
            if not output_file:
                return

            if os.path.exists(output_file):
                choice = messagebox.askyesnocancel(
                    "文件已存在",
                    f"文件 {output_file} 已存在,是否覆盖?"
                )
                if choice is None:
                    return
                elif choice == False:
                    return

            output_writer = cv2.VideoWriter(output_file, fourcc, 20.0, screen_size)

            # 将所有帧写入视频文件
            for frame in frames:
                output_writer.write(frame)

            output_writer.release()
            frames.clear()
            messagebox.showinfo("停止", "已停止录制并保存文件。")
        except Exception as e:
            messagebox.showerror("错误", str(e))
        finally:
            output_writer = None


def record_screen():
    if recording:
        with mss.mss() as sct:
            monitor = {'top': 0, 'left': 0, 'width': screen_size[0], 'height': screen_size[1]}
            img = sct.grab(monitor)
            frame = np.array(img)
            # 确保颜色空间正确
            frame = cv2.cvtColor(frame, cv2.COLOR_BGRA2BGR)
            frames.append(frame)  # 存储每一帧
        root.after(15, record_screen)  # 根据需要调整刷新率


# 创建GUI
root = tk.Tk()
root.title("屏幕录制小工具 by.KOG丛林")
frame = tk.Frame(root)
frame.pack()

# 使用 StringVar 来动态更新按钮上的文本
start_button_text = tk.StringVar(value="开始录制  ")

# 开始录制按钮
start_button = tk.Button(frame, textvariable=start_button_text, command=start_recording)
start_button.pack(side=tk.LEFT)

# 停止录制按钮
stop_button = tk.Button(frame, text="  停止录制", command=stop_recording)
stop_button.pack(side=tk.LEFT)

root.mainloop()

免费评分

参与人数 85吾爱币 +78 热心值 +75 收起 理由
阿墨 + 1 谢谢@Thanks!
higzgz + 1 我很赞同!
luoyi437 + 1 谢谢@Thanks!
yox + 1 谢谢@Thanks!
利剑之锋 + 1 + 1 热心回复!
ZYF666 + 1 + 1 谢谢@Thanks!
aaalpaaalp + 1 + 1 热心回复!
Tori97 + 1 热心回复!
heiyue003 + 1 + 1 我很赞同!
xn2103 + 1 + 1 6啊
StoreDS + 1 谢谢@Thanks!
是个俗人 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Taylor20200522 + 1 + 1 热心回复!
rebirthboy + 1 我很赞同!
foreveryyii + 1 + 1 谢谢@Thanks!
wyp858 + 1 + 1 我很赞同!
nakasou + 2 + 1 我很赞同!
Zed丶小灰狼 + 1 + 1 热心回复!
fengyingchun + 1 + 1 谢谢@Thanks!
renshaowei + 1 + 1 热心回复!
liulaoshi1314 + 1 + 1 谢谢@Thanks!
hnyaojie + 1 + 1 有老哥能来转下链接吗?
weidechan + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
自治州制作 + 1 + 1 热心回复!
sblpp + 1 谢谢@Thanks!
mrpizi1221 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lishuofang + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
post927 + 1 + 1 谢谢@Thanks!
yx69 + 1 + 1 我很赞同!
leonsaga + 1 + 1 谢谢@Thanks!
抱薪风雪雾 + 1 + 1 谢谢@Thanks!
xb0wxh + 1 + 1 谢谢@Thanks!
52rap + 1 + 1 谢谢@Thanks!
Pony21 + 1 + 1 热心回复!
canty胖胖 + 1 + 1 用心讨论,共获提升!
jh95wxg + 1 + 1 用心讨论,共获提升!
wuai3456 + 1 + 1 谢谢@Thanks!
koibito2ma + 1 + 1 我很赞同!
策士 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
yiwenji + 1 热心回复!
yxpp + 1 谢谢@Thanks!
chrisdong919 + 1 + 1 我很赞同!
某些人 + 1 + 1 谢谢@Thanks!
NxxzCraft + 1 + 1 谢谢@Thanks!
jokony + 1 + 1 用心讨论,共获提升!
rootcup + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wuya3 + 1 + 1 谢谢@Thanks!
zzdzxx + 1 + 1 谢谢@Thanks!
海盗的骷髅旗 + 1 + 1 谢谢@Thanks!
cpckly + 1 谢谢@Thanks!
long8586 + 1 + 1 谢谢@Thanks!
jikic + 1 + 1 热心回复!
SenseView + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
rengui + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
zhanglianyun + 1 + 1 热心回复!
tocabd + 1 + 1 谢谢@Thanks!
你好漂亮 + 1 + 1 我很赞同!
Guzhouxingke + 1 + 1 我很赞同!
VIP中P + 1 + 1 谢谢@Thanks!
爱的太迟 + 1 + 1 谢谢@Thanks!
突破1996 + 1 + 1 我很赞同!
huangqiao + 1 + 1 谢谢@Thanks!
woxobo + 1 + 1 谢谢@Thanks!
n99675 + 1 + 1 谢谢@Thanks!
dTb + 1 + 1 谢谢@Thanks!
sjb5201314 + 1 + 1 谢谢@Thanks!
lough_007 + 1 + 1 谢谢@Thanks!
psj736213 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
dogox + 1 + 1 我很赞同!
abcbbb007 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
aleewuu + 1 + 1 多谢 下来试试
bin_chb + 1 + 1 谢谢@Thanks!
heiker1986 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
tesng + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
山里红数码 + 1 + 1 如果加一个快捷键就完美了,期待更新
flysea163 + 1 + 1 谢谢@Thanks!
yanglinman + 1 谢谢@Thanks!
way824325223 + 1 谢谢@Thanks!
kmshzi + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
zHiHz + 1 + 1 我很赞同!
wzs0777 + 1 可否生成GIF格式的啊
wyh21cn + 1 + 1 我很赞同!
sza114514 + 1 + 1 谢谢@Thanks!
myFreefly + 1 + 1 能不能添加下(开启、暂停、停止)快捷键,并且录屏时操作界面自动隐藏。
cux666 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

LUYAJUN 发表于 2024-9-23 13:33
录屏软件的普遍缺点就是无法在开始处做到同步,先先点击录屏点击播放时,录屏还没有开始,先点录屏时,视频还未播放,所以录完后的mp4仍然需要掐头去尾才能满意
lazhou 发表于 2024-9-24 11:27
KO2点了开始录制后,软件没有反应,昨天的KO是好的,请大佬检查修复一下!
 楼主| william0712 发表于 2024-9-25 16:40
古覚 发表于 2024-9-25 11:41
收藏试用,python打包成exe都好大,有方法精简的,忘了

已经在打包时用UPX压缩过了,60多M变成40多M了
 楼主| william0712 发表于 2024-10-7 08:58
wwwxxxddd999 发表于 2024-10-4 08:47
期待楼主更新,快捷键的加入和录屏时隐藏,期待这个软件越来越完善

现在这个就有了
lazhou 发表于 2024-9-23 11:17
好用,就是录屏时自身没有彻底隐藏,从资源管理器切换到桌面时录到录屏软件自身界面,希望大佬能做进一步优化,录屏时完全隐藏,用快捷键停止录屏,并显示录屏界面更好,当然一般用已很方便了,谢谢大佬分享!
dqjyj 发表于 2024-9-23 10:55
谢谢分享
yt1010306 发表于 2024-9-23 10:55
本帖最后由 yt1010306 于 2024-9-23 10:57 编辑

收藏试用,66M的不极简了,编译的时候能压缩大小吗?
cux666 发表于 2024-9-23 11:02
支持原创,感谢分享!
jtui6999 发表于 2024-9-23 11:03
谢谢分享。
良辰、星仔 发表于 2024-9-23 11:06
感谢楼主分享,Python编译的文件都挺大的
天涯心灵 发表于 2024-9-23 11:07
不能启动 启动失败  不知道啥原因啊
cygtheone 发表于 2024-9-23 11:21
哇哈哈哈,这么小
kenxy 发表于 2024-9-23 11:34
感谢楼主分享,如果可以加一个录制和停止快捷键可能会更方便一点
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-21 22:07

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表