发布时间:2026/6/14 13:29:24
废旧DVD光驱改造迷你CNC绘图机:Arduino控制与G代码实践
1. 项目概述与核心价值几年前我在整理工作室的旧物时翻出了几台早已被时代淘汰的DVD光驱。看着这些精密的机械结构即将沦为电子垃圾一个想法冒了出来能不能把它们“复活”变成一台能听我指挥、在纸上作画的机器这就是今天要和大家分享的——用废旧DVD驱动器和一块Arduino UNO打造一台属于你自己的迷你CNC绘图机。CNC也就是计算机数控听起来很高大上仿佛只属于工厂车间。但其实它的核心思想很简单让电脑告诉机器“往左走1毫米”、“抬笔”、“落笔”。我们这次要做的就是把DVD光驱里用来精准移动激光头的步进电机变成画笔的“手”用Arduino UNO作为它的大脑接收来自电脑的G代码指令最终在方寸之间绘制出你设计的任何图案或文字。这不仅仅是一个废物利用的环保项目更是一次深入理解自动化控制、机电一体化和数字制造的绝佳实践。无论你是对硬件DIY感兴趣的创客还是想给学生找一个综合性的STEM教学案例的老师甚至是单纯想体验一下“造物”乐趣的朋友这个项目都能让你收获满满。2. 核心硬件拆解与选型思路一台CNC机器无论大小其核心都离不开三个部分执行机构负责运动、控制核心负责解读指令和驱动电路负责给执行机构供电和发号施令。我们这个项目的巧妙之处在于用最低的成本和最容易获取的材料实现了这三者的完美配合。2.1 动力之源废旧DVD驱动器中的步进电机为什么选择DVD驱动器答案就在其内部的双轴激光头载具上。为了以微米级的精度读取光盘数据这个载具通常由两个微型步进电机驱动实现前后寻道和左右聚焦的移动。这正是我们需要的X轴和Y轴直线运动单元。电机类型识别拆开DVD驱动器后你会看到两个电机。带动整个激光头组件沿导轨大幅移动的通常是两相四线制混合式步进电机。而那个带动光盘托盘进出或旋转光盘的是一个直流电机BLDC这个我们用不上。步进电机的优势在于它可以被精确地控制旋转角度和速度实现“走一步停一步”的离散控制非常适合需要精确定位的场合。参数评估虽然不同品牌光驱的电机参数略有差异但通常工作电压在5V-12V之间单步角度步距角为18°或更小通过细分驱动可以更精细。其扭矩足以带动笔尖在纸上滑动。实操心得在拆解前最好给光驱通电手动触发开仓观察哪个电机负责激光头的移动确保你拆下的是正确的步进电机。2.2 控制大脑Arduino UNO与自制CNC ShieldArduino UNO是这个项目当之无愧的大脑。它负责通过USB串口接收来自上位机软件G代码发送器的指令并将其翻译成对电机的控制信号。为什么是UNOUNO拥有丰富的数字I/O口和成熟的社区生态。对于控制两个步进电机和一个伺服电机控制抬笔/落笔的任务其资源绰绰有余。更重要的是围绕UNO有大量现成的电机驱动扩展板Shield设计极大简化了电路连接。核心难点与解决方案驱动能力。Arduino的I/O口输出电流很小约40mA根本无法直接驱动步进电机。因此我们需要一个电机驱动板。原项目作者设计了一块专用的CNC Shield V1PCB。这块板子的核心是集成了两片L293D电机驱动芯片。L293D芯片解析这是一款经典的H桥驱动芯片。简单理解它内部有四个“电子开关”晶体管通过特定的开关组合可以控制电流流过电机的方向从而实现电机的正转和反转。一片L293D可以驱动两个直流电机或一个两相步进电机。我们使用两片正好分别驱动X轴和Y轴的步进电机。自制Shield的替代方案如果无法获得原作者设计的PCB完全可以使用市面上常见的L293D电机驱动模块通常为绿色小板或更强大的A4988、DRV8825等步进电机驱动模块。使用这些模块时你需要用杜邦线将它们与Arduino连接起来。使用A4988这类驱动器优势是支持微步进能让运动更平滑噪音更小但接线和配置会稍复杂一些。2.3 机械结构从散件到稳固平台机械部分是项目的骨架决定了机器的精度和稳定性。运动轴组装拆出两个DVD光驱的激光头移动机构。你需要小心地取下光盘主轴电机无用保留步进电机、丝杆或齿轮齿条和滑动导轨。用一块L型铝材或任何坚固的金属/塑料条作为连接件将两个运动机构垂直固定形成一个经典的十字滑台结构。一个关键细节你需要确定哪个机构作为X轴水平哪个作为Y轴垂直。通常将承载最终笔头的那个轴作为Y轴另一个作为X轴。固定时务必使用水平仪或直角尺辅助确保两个轴互相垂直否则画出的图形会失真。工作台面Bed制作在原项目中作者巧妙地利用了DVD驱动器上盖的薄钢板切割成70x70mm的方形作为绘图平台。这个平台被用热熔胶粘在Y轴的运动部件上。注意事项热熔胶的固定方式在初期调试时很方便但长期使用可能因震动导致松动。更稳固的做法是在铝制连接件上预先钻孔攻丝用螺丝固定一块亚克力板或轻质复合板作为工作台。Z轴笔架制作Z轴负责笔的抬起和落下。作者使用了第三个DVD光驱的滑动部件搭配一个微型伺服电机如SG90来实现。伺服电机可以通过PWM信号精确控制旋转角度我们将它编程为两个位置一个角度对应“抬笔”另一个角度对应“落笔”。笔可以用夹子或收缩管固定在滑动部件上。3. 电路连接与控制系统搭建硬件组装完成后我们需要让电路“活”起来。这是将机械能置于程序控制之下的关键一步。3.1 主控与驱动板连接如果使用自制的CNC Shield V1 PCB事情会简单很多只需将Shield直接插在Arduino UNO上如同盖帽子一样。步进电机连接将X轴步进电机的4根线按照顺序连接到Shield上标有“X”的四个接线端子通常对应A A- B B-。Y轴同理连接到“Y”端子。如果电机转动方向相反只需任意交换同一组A与A- 或B与B-的两根线即可。伺服电机连接伺服电机有三根线电源Vcc 通常红色、地线GND 通常棕色或黑色和信号线Signal 通常橙色或黄色。将其连接到Shield上专用的伺服电机接口。电源连接这是极其重要的一环。Arduino的USB口或板载稳压器无法提供驱动两个步进电机所需的电流。你必须为驱动板提供独立的外部电源。建议使用9V-12V、2A以上的直流电源适配器连接到CNC Shield的电源输入端子。重要警告务必确保电源的GND与Arduino的GND相连即“共地”否则控制信号无法形成回路。注意如果使用独立的L293D模块或A4988模块接线逻辑类似但需要手动连接控制信号。以A4988为例你需要将模块的STEP脉冲、DIR方向、ENABLE使能引脚分别连接到Arduino的指定数字引脚并在代码中做相应定义。同时A4988需要额外调整一个叫Vref的电位器来置输出电流以匹配你的电机避免电流过大烧毁电机或驱动器。3.2 固件烧录与基础测试在连接所有电路之前先单独给Arduino UNO通过USB线上电进行固件烧录。获取并准备代码从原项目资源中下载Arduino源代码.ino文件。用Arduino IDE打开它。关键代码解析这段代码的核心是扮演一个G代码解释器。它通过串口监听来自电脑的指令。当你发送像“G1 X10 Y20 F1000”这样的G代码时代码会解析出“以速度1000 直线移动到X10 Y20的位置”。然后它会计算出X和Y轴步进电机需要走多少步这取决于你的电机步距角和机械传动比并通过特定的时序脉冲发送给驱动芯片。伺服电机的抬笔/落笔动作则由“M03”主轴正转这里被映射为落笔和“M05”主轴停止映射为抬笔等M代码控制。烧录与测试在Arduino IDE中选择正确的板卡类型Arduino/Genuino Uno和端口点击上传。上传成功后你可以先写一个简单的测试程序让每个轴单独运动一下检查电机转向是否正确伺服电机是否能正常动作。这能提前排除大部分接线错误。4. 软件链配置从图像到机器指令硬件和基础固件就绪后我们要解决“画什么”和“怎么画”的问题。这就需要一套从设计到生产的软件流程。4.1 生成G代码Inkscape与Unicorn插件的使用G代码是一种数控机床的通用编程语言它由一系列指令构成告诉机器如何移动。我们不需要手写它而是通过软件从图像自动生成。安装Inkscape这是一款强大且开源免费的矢量图形软件。从官网下载安装即可。安装Unicorn G-code插件这是关键一步。你需要将项目资源包中的Inkscape-unicorn-master/src/文件夹下的所有文件复制到Inkscape的扩展目录。路径通常为Windows:C:\Program Files\Inkscape\share\extensionsmacOS:/Applications/Inkscape.app/Contents/Resources/extensionsLinux:/usr/share/inkscape/extensions复制完成后重启Inkscape。转换流程详解设置画布打开Inkscape进入文件-文档属性。将单位全部设为mm并将页面宽度和高度都设置为40mm这是我们绘图区域的有效范围。导入与矢量化导入你想要绘制的PNG或JPG图片。选中图片进入路径-轮廓化位图。在弹窗中选择边缘检测点击更新预览调整阈值直到轮廓清晰然后点击确定。这会生成一个沿着图像边缘的矢量路径。删除原图现在有了矢量路径就可以删除原始的位图了。路径优化选中矢量路径依次点击路径-对象转路径然后再次点击路径-动态偏移。这个操作可以帮你微调线条的粗细。生成G代码至关重要的一步——定位原点。我们的机器默认将笔尖的初始位置视为坐标原点(00)。在Inkscape中你需要将你的图形移动到画布的右上角。因为插件可能以画布右上角作为G代码的起点。多试几次找到规律。最后文件-另存为选择保存类型为MakerBot Unicorn G-code (*.gcode)输入文件名保存。在随后弹出的参数窗口中设置合适的绘图速度、移动速度、落笔延迟等。一个安全的起步设置是绘图速度100-200 移动速度500-800 Z轴抬笔/落笔高度根据你的伺服电机角度调整。4.2 发送指令G代码发送器的使用生成了.gcode文件后我们需要一个“通讯员”把它一句一句地发送给Arduino。选择发送软件原项目提供了一个专用的G-code Sender EXE。你也可以使用更通用的开源软件如Universal G-code Sender (UGS)或CNCjs。这些软件界面更友好功能也更强大比如可以实时显示绘图进度、手动控制各轴移动Jogging、设置软限位等。连接与发送用USB线连接Arduino和电脑。打开G代码发送软件选择正确的串口COM端口和波特率通常为115200。点击连接。连接成功后软件界面上的控制按钮会变亮。然后点击“加载G代码”选择你刚才生成的.gcode文件。首次运行前的安全检查在点击“开始Cycle Start”之前请务必进行以下操作手动归位使用发送软件的手动控制功能将笔头移动到你认为的“原点”通常是工作台左下角或中心。空跑测试将笔抬起发送M05指令然后开始运行G代码。观察机器是否按预期在移动运动范围是否超出机械限位。这是防止撞机、损坏机械结构的关键步骤。调整进给速率大多数发送软件都有一个“进给速率覆盖Feedrate Override”滑块可以实时调整绘图速度。首次绘图建议从50%开始慢慢增加。5. 校准、调试与精度提升机器能动起来只是第一步让它画得准、画得好才是真正的挑战。这里分享几个关键的校准和调试经验。5.1 解决镜像输出问题这是新手最常遇到的问题之一画出来的图形是左右或上下颠倒的。诊断运行一个简单的测试图形比如一个箭头或不对称的字母“F”。观察输出是哪个方向反了。解决方案软件修正在G代码发送器中通常有“镜像X轴”或“镜像Y轴”的选项勾选即可。这是最简单的办法。硬件修正交换步进电机同一相如A和A-的两根接线可以改变该电机的旋转方向。固件修正在Arduino代码中找到控制X轴和Y轴方向的引脚定义通常是一个DIR_PIN。如果该引脚输出高电平电机正转那么输出低电平就会反转。你可以通过修改代码将对应轴的方向逻辑取反。5.2 运动精度校准与步距计算你的机器走1毫米电机到底需要多少步这个参数不准画出来的图形尺寸就会错误。理论计算首先需要知道你的步进电机单步角度如1.8°以及丝杆的导程即电机转一圈滑块移动的距离。例如DVD光驱丝杆导程常见为3mm。如果电机是1.8°/步转一圈需要200步。那么移动1毫米所需的步数 (200步/圈) / (3毫米/圈) ≈ 66.667步/毫米。实测校准在代码中有一个关键参数叫steps_per_mm每毫米步数。你可以先填入理论值。然后在G代码发送器中用手动控制让X轴移动10毫米用游标卡尺实际测量滑块移动的距离。如果实际移动了9.5毫米那么正确的steps_per_mm (理论值 * 指令距离) / 实际距离 (66.667 * 10) / 9.5 ≈ 70.2。将这个修正后的值更新到Arduino代码中重新上传。对Y轴重复此过程。正交度校准画一个边长为30mm的正方形。用尺子测量对角线的长度。如果两条对角线相等说明X轴和Y轴垂直度良好。如果不相等则需要重新调整两个运动机构的安装角度这是一个细致的机械活。5.3 常见故障排查速查表现象可能原因排查与解决思路电机不转但有嗡嗡声1. 驱动板供电不足或电流设置过低。2. 电机线序接错导致两相通电相位错误。3. 机械阻力过大卡死。1. 检查外部电源电压电流是否达标对于A4988调高Vref。2. 检查电机4根线是否按A A- B B-顺序正确连接。3. 尝试手动转动电机轴检查丝杆和导轨是否顺畅适当润滑。电机只朝一个方向转方向DIR引脚信号错误或接线松动。检查Arduino上DIR引脚到驱动板的连接。在代码或发送器中尝试反转方向信号。绘图尺寸严重失真steps_per_mm参数设置错误。按照上述“实测校准”方法重新校准X轴和Y轴的每毫米步数。图形位置偏移或出界1. 工作原点设置不正确。2. Inkscape中图形位置未对齐。1. 在开始绘图前使用发送器手动将笔尖移动到纸张的起始点并将该点设为软件原点。2. 在Inkscape中确保图形紧贴画布左上角或右上角取决于插件设定。线条断断续续1. 笔尖压力不足或墨水不畅。2. Z轴抬笔高度不够移动时笔尖刮纸。3. 运动速度过快。1. 调整笔架配重或使用出墨更顺畅的笔。2. 增加伺服电机“抬笔”状态的角度值确保笔尖完全离开纸面。3. 在生成G代码或发送器中降低“移动速度”和“绘图速度”。伺服电机不动作1. 信号线接触不良。2. 代码中伺服电机引脚定义错误。3. 电源无法同时为步进电机和伺服电机供电。1. 重新插拔伺服电机接线。2. 检查Arduino代码中servo.attach()函数指定的引脚号是否与实际连接一致。3. 伺服电机动作瞬间电流较大确保电源功率充足或为伺服电机单独供电需共地。6. 优化拓展与创作建议当你的迷你CNC能够稳定工作后就可以考虑让它变得更强大、更好玩。升级驱动与电源将L293D驱动模块升级为A4988或TMC2208等步进电机驱动模块。它们支持16细分微步进能让电机运行极其平稳安静绘图质量尤其是曲线部分会有肉眼可见的提升。同时配备一个12V/5A以上的开关电源确保系统动力充沛。增加限位开关在X轴和Y轴行程的两端安装微型限位开关。在Arduino代码中启用限位功能可以实现开机自动回零Homing这样每次都能从绝对原点开始工作大幅提升重复定位精度和安全性。更换工作头这台机器的本质是一个二轴半X Y 和一个简易Z轴运动平台。你可以把笔架换成激光头模块升级为低功率的激光雕刻机用于在木板、皮革、亚克力板上雕刻图案。安全警告必须配备专用防护眼镜并在完全封闭或隔离的空间操作避免激光反射伤害。小电磨/主轴电机升级为微型数控雕刻机可以雕刻软木、塑料、PCB板制作电路板。小真空吸盘可以作为一个微型拾取放置Pick Place机器。尝试更强大的控制固件如果你对性能有更高要求可以尝试将Arduino UNO更换为性能更强的Arduino Mega 2560并刷入著名的GRBL开源固件。GRBL是一个高度优化的专业级G代码解释器支持加速度控制、圆弧插补、更复杂的指令集配合像Candle、GrblController这样的上位机软件整个系统的性能和易用性会再上一个台阶。这个项目最迷人的地方在于它清晰地展示了从概念到实物的完整制造闭环。你不仅学会了机械组装、电路连接和编程更掌握了如何将一张图片通过矢量软件、G代码最终转化为物理世界中的一笔一画。每一次调试每一次校准都是与机器对话的过程。当它第一次完美地画出你设计的图案时那种成就感是无可替代的。它可能不够精密不够快速但它是完全属于你的、由你赋予生命的创造工具。

相关新闻

Ubuntu 22.04 上三种安装DBeaver的方法,哪种最适合你?(附详细命令与避坑点)
2026/6/15 4:25:14

Ubuntu 22.04 上三种安装DBeaver的方法,哪种最适合你?(附详细命令与避坑点)

Ubuntu 22.04 安装DBeaver终极指南:从原理到避坑实战 当你需要在Ubuntu 22.04上安装DBeaver这款强大的数据库管理工具时,面对官方仓库、Snap和DEB包三种安装方式,是否感到选择困难?每种方法背后都有其设计哲学和适用场景&#xff…

阅读更多
如何永久保存微信聊天记录?留痕工具让你的数字记忆永不消失
2026/6/9 16:04:00

如何永久保存微信聊天记录?留痕工具让你的数字记忆永不消失

如何永久保存微信聊天记录?留痕工具让你的数字记忆永不消失 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/…

阅读更多
番茄小说下载器完整指南:从零开始打造个人数字图书馆
2026/6/14 9:44:00

番茄小说下载器完整指南:从零开始打造个人数字图书馆

番茄小说下载器完整指南:从零开始打造个人数字图书馆 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 你是否曾经在地铁信号中断时,正看到精彩章节却被迫…

阅读更多
从业五年拆解行业乱象:别再被 “伪保姆式服务” 忽悠,真正的定制化技术服务长这样
2026/6/15 9:57:56

从业五年拆解行业乱象:别再被 “伪保姆式服务” 忽悠,真正的定制化技术服务长这样

深耕技术服务行业五年,我对接、测评过数百家服务商。和圈内同行交流时,大家吐槽最多的,就是市面上满天飞的保姆式服务。不少服务商打着「全程陪伴、一对一服务」的旗号引流,但剥开营销包装后,本质仍是流水线标准化作业…

阅读更多
VCS仿真器下,SV DPI接口的3个常见编译错误与避坑指南(含svdpi.h解析)
2026/6/15 9:57:56

VCS仿真器下,SV DPI接口的3个常见编译错误与避坑指南(含svdpi.h解析)

VCS仿真器下SV DPI接口的3个致命编译陷阱与实战解决方案当你在VCS环境中第一次尝试将SystemVerilog与C/C代码通过DPI接口连接时,可能会遇到一些令人抓狂的编译错误。这些错误信息往往晦涩难懂,让人摸不着头脑。本文将深入剖析三个最常见的DPI编译陷阱&am…

阅读更多
从无人机到平衡车:盘点那些让你调参调到头秃的PID实战场景与避坑指南
2026/6/15 9:57:56

从无人机到平衡车:盘点那些让你调参调到头秃的PID实战场景与避坑指南

从无人机到平衡车:PID调参实战中的场景化诊断与精准优化在智能硬件开发领域,PID控制算法就像一位"隐形的操盘手",默默协调着无数机电系统的稳定运行。但这位操盘手的脾气却因场景而异——它能让无人机在狂风中稳如磐石,…

阅读更多
【Linux企业级应用】LVS+Keepalived高可用001篇
2026/6/15 9:57:56

【Linux企业级应用】LVS+Keepalived高可用001篇

文章目录 LVS + Keepalived 双机热备(DR模式高可用)完整实战 一、整体架构与思路 核心要点 二、IP规划示例 三、安装软件 两台Director(master & backup)上都装 Real Server上只需要标准网络工具(不用装LVS) 四、关键网络配置 1️⃣ Director 端 —— VIP不需要手动绑…

阅读更多
深入VS链接器:除了main写错,LNK2019报错还可能藏着这些‘坑’(附排查清单)
2026/6/15 9:57:56

深入VS链接器:除了main写错,LNK2019报错还可能藏着这些‘坑’(附排查清单)

深入VS链接器:LNK2019报错的系统性排查指南当Visual Studio抛出LNK2019错误时,大多数开发者第一反应是检查main函数拼写。但真实项目中,这个错误往往像冰山一角,隐藏着更复杂的链接问题。本文将带您超越基础检查,构建一…

阅读更多
Windows Agent Arena任务开发指南:创建自定义桌面自动化任务的完整流程
2026/6/15 8:57:56

Windows Agent Arena任务开发指南:创建自定义桌面自动化任务的完整流程

Windows Agent Arena任务开发指南:创建自定义桌面自动化任务的完整流程 【免费下载链接】WindowsAgentArena Windows Agent Arena (WAA) 🪟 is a scalable OS platform for testing and benchmarking of multi-modal AI agents. 项目地址: https://git…

阅读更多
别再只用BERT了!用Transformers库的AutoModel,5分钟搞定文本相似度计算(附代码对比)
2026/6/14 0:57:30

别再只用BERT了!用Transformers库的AutoModel,5分钟搞定文本相似度计算(附代码对比)

超越BERT:用Transformers库高效实现文本相似度计算的三种实战方案在自然语言处理领域,文本相似度计算是信息检索、问答系统和推荐系统等应用的核心技术。传统方法如TF-IDF或Word2Vec已逐渐被基于Transformer的预训练模型所取代。Hugging Face的Transform…

阅读更多
Prompt Engineering:重构人机协作的工程化方法论
2026/6/14 0:57:30

Prompt Engineering:重构人机协作的工程化方法论

1. 项目概述:这不是“写提示词”,而是重构人机协作的底层逻辑“Prompt Engineering”这个词,这两年被讲得太多,也太轻飘。很多人把它理解成“给AI发指令的技巧”,甚至简化为“多加几个形容词”“换种说法再试一次”。我…

阅读更多
Anthropic提示层归零:模型即协议的工程实践
2026/6/14 0:57:30

Anthropic提示层归零:模型即协议的工程实践

1. 项目概述:这不是一次普通更新,而是一次架构级“蒸发”“Anthropic Just Shipped the Layer That’s Already Going to Zero”——这个标题一出来,我正在调试一个Claude调用链的终端前停了三秒。不是因为震惊,而是因为熟悉&…

阅读更多
TEKLauncher:终极ARK模组管理与性能优化解决方案
2026/6/15 0:57:55

TEKLauncher:终极ARK模组管理与性能优化解决方案

TEKLauncher:终极ARK模组管理与性能优化解决方案 【免费下载链接】TEKLauncher Launcher for ARK: Survival Evolved 项目地址: https://gitcode.com/gh_mirrors/te/TEKLauncher 你是否为ARK: Survival Evolved复杂的模组管理和服务器连接问题而烦恼&#xf…

阅读更多
如何3分钟免费解锁Cursor Pro:终极AI编程助手破解方案
2026/6/15 0:57:55

如何3分钟免费解锁Cursor Pro:终极AI编程助手破解方案

如何3分钟免费解锁Cursor Pro:终极AI编程助手破解方案 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your tri…

阅读更多
21.2 mcp-server-chart 图表化作用
2026/6/15 0:57:55

21.2 mcp-server-chart 图表化作用

如何检查 langchain_mcp_adapters 版本和 antv/mcp-server-chart 安装 1. 检查 langchain_mcp_adapters 版本 在终端(确保已激活虚拟环境)中运行: pip show langchain_mcp_adapters输出示例: Name: langchain-mcp-adapters Ve…

阅读更多
GIT修改用户名
2026/6/14 11:53:59

GIT修改用户名

在GIT中修改用户名可按以下步骤操作: 查看当前git的用户名,使用命令git config --list或git config user.name。修改git用户名,使用命令git config --global user.name "xxx(新的用户名)",将其中…

阅读更多
Win11Debloat:让你的Windows系统重获新生的终极优化工具
2026/6/15 2:21:34

Win11Debloat:让你的Windows系统重获新生的终极优化工具

Win11Debloat:让你的Windows系统重获新生的终极优化工具 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and …

阅读更多
技术深度解析:m4s-converter实现原理与B站缓存视频转换最佳实践
2026/6/14 15:49:58

技术深度解析:m4s-converter实现原理与B站缓存视频转换最佳实践

技术深度解析:m4s-converter实现原理与B站缓存视频转换最佳实践 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter m4s-converter是一个…

阅读更多