一年前,我开源了这个网盘,详见Windows风格的个人网盘,支持文档在线编辑,这一年期间,这个网盘进行了大量的更新,具体如下:

新增支持的功能如下:

  • 支持 OnlyOffice (Word、Excel、PowerPoint) 在线编辑和多人协作
  • 支持给文件添加桌面快捷方式
  • 支持自动备份指定文件夹中的所有文件
  • 支持点对点语音/视频聊天和屏幕分享(基于 WebRTC)
  • 支持 Karaoke,自建曲库,在家想唱就唱
  • 集成 aria2,支持 HTTP、FTP、BT等多种下载协议
  • 支持服务重启,支持自动更新系统

各功能如下:

添加快捷方式

我们在使用电脑时,通常会把常用的文件放在桌面上以方便使用,这个网盘同样也支持该功能。参考 Windows 的快捷方式的功能,当在文件上右键时(只支持文件,不支持文件夹),可添加桌面快捷方式,刷新页面即可在桌面上看到文件;在桌面上右键快捷方式,可以选删除快捷方式,或者打开文件所在位置,是不是和在 Windows 上操作几乎一样。

自动备份

现在的电子设备或多或少都会在使用过程中出现故障,导致重要数据丢失,因此对重要的数据进行备份就显得极其重要。本网盘支持将数据自动备份到另一块磁盘上。

网盘支持备份指定文件夹中的所有数据,为什么要指定文件夹而不是默认备份所有文件呢?因为,如果数据全部备份,那么就需要两块很大的磁盘,这不是浪费吗。我们存在磁盘中的文件,很多并不是重要的文件,没必要为了不重要的文件而占用过多的存储资源,因此,只需要将你认为重要的文件夹进行备份就可以了。如果你是土豪,就想备份所有文件,那么请把根目录下的文件夹全部设置成自动备份。

在需要备份的文件夹上右键,点击开启自动备份,然后每天(可设置每天、每两天、每 n 天...)凌晨 5:20 开始自动备份文件,如果你删除了文件,自动备份时,也会同步删除备份的文件。在文件夹上右键,点击取消自动备份,那么则不会再自动备份了,但是已经备份的文件不会被自动删除,需要手动去删除。

当然了,也可以手动立即开始备份数据。在设置->系统里,点击备份文件,即可立即开始备份,同时可以看到所有开启了自动备份的文件夹,在列表中可以打开文件夹所在位置和取消自动备份。

语音/视频聊天

们常用的视频聊天软件是 QQ 和微信,常用的会议软件有腾讯会议、钉钉、飞书等,使用它们的话,你的聊天内容和会议内容就会被它们监控和保存,隐私严重受到威胁,特别是腾讯,你的 QQ 号、微信号、以及数据等都不是属于你的,腾讯可以向某些人提供你的所有数据,而你还不知道。这就是为什么大公司都自建内部通讯和会议软件,而作为个人,需要有一种通信方式来交流重要敏感的信息。

WebRTC 是一项开源的基于网页的应用技术,它允许用户在不安装任何插件的情况下就可以发送实时媒体流,实现浏览器之间的点对点通信,它的安全性远超任何软件。基本上现代浏览器都支持 WebRTC,不限任何设备,所以只要有浏览器,就可以进行视频聊天。

在设置里点击视频聊天,首先需要创建聊天室,然后所有用户可通过聊天室加入聊天。系统会对加入聊天的用户进行验证,避免未登陆的用户进入聊天室;用户通过验证后,系统会辅助用户之间建立连接,然后就是用户之间的点对点通信了,和系统就没有任何联系了。

支持多个聊天室同时聊天,支持多对多的用户视频聊天;支持禁用麦克风、禁用摄像头、切换前后置摄像头、禁扬声器、分享屏幕的功能。理论上支持无限多用户在一个聊天室进行聊天,实际支持的用户数受限于设备的性能和网络带宽。一个聊天室只能使用一次,如果未使用,2天后也不能再使用了。

分享屏幕时,支持分享浏览器标签页、分享窗口和分享整个屏幕,特别注意:分享屏幕时,需要勾选同时分享系统音频,否则在分享屏幕时,无法关闭自己的麦克风。特别提醒:手机浏览器不支持分享屏幕。

虽然视频聊天理论上可以支持很多很多用户同时聊天,但是每增加一个用户,带宽就会显著增加,所以为了支持更多用户同时聊天,增加了语音聊天的功能,可以大大减少带宽的占用。

如果需要在非局域网的场景下进行视频聊天,那么需要部署 TURN 服务器,需要有公网 IP。

下载工具

aria2 是一个轻量级的多协议命令行下载工具,支持 HTTP、FTP、BT 等多种协议,支持多连接下载和断点续传。

进入需要下载文件的目录,然后点击 新建文件 -> 新建下载任务,在输入框中填入下载的 URL 或者 magnet 种子链接即可,如果需要 cookie 才能下载,则需要填入 cookie,否则可以不填 cookie。如果你已经有了 torrent 格式的种子文件,那么先把种子文件上传至网盘,然后双击即可。

下载 BT 种子文件时,会去先获取可用的 tracker 列表,默认使用的是这个地址,但是这个地址国内大部分时间是无法访问的,可以使用以下两个地址替换:地址1、地址2。然后会自动解析 BT 种子文件,如下图,请选择文件进行下载(一次只能选一个)。

m3u8 是一种广泛用在互联网视频和音频流的文件格式,m3u8 文件通常用于定义多媒体播放列表(内容如下),很多视频网站播放视频用的就是 m3u8 格式。如需下载 m3u8 格式的视频流,可直接 新建下载任务 并将 m3u8 文件的链接粘贴进来,就会下载视频流并自动合并成 mp4 视频。

#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:19
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-KEY:METHOD=AES-128,URI="/G1131016/500kb/hls/key.key"
#EXTINF:10.36,
/G1131016/500kb/hls/Lf3Ryo8k.js
#EXTINF:9.92,
/G1131016/500kb/hls/yGTGe1Pc.js
......

如需查看当前正在下载的任务,点击 下载列表 即可。点击暂停可以暂停下载任务,点击取消可以取消下载,下载完成后,即可在目录里看到下载的文件。注意:m3u8 文件下载无法在列表中查看。

Karaoke(卡拉OK)

功能介绍

网上有很多卖破解版的 K 歌软件,首先是曲库有限,其次是搞不好哪天官方把漏洞堵上了就不能用了,使用体验极差。而网上找到的一些开源的 K 歌软件,基本上都是有音乐没有 MV,且曲库来源第三方,很多歌都没有,基本没法用。那么就只能自己动手实现 K 歌功能。具体可看这篇博客:https://www.cnblogs.com/leeyoshinari/p/18491725

本 KTV 系统适合不闲麻烦且非土豪的家庭/个人使用,本系统需要自建曲库,在此基础上支持点歌、切歌、原唱/伴奏切换、音量调整、暂停等 K 歌软件的核心功能,所有功能支持手机端控制,且全系统、全平台都可以使用。

自建曲库

为什么要自建曲库呢?绝大部分人唱歌可能来来回回也就不过百首,喜欢唱歌的人盲猜会有千首吧,因此不管那些 K 歌软件的曲库是多少万首,只要你想唱的歌没有,那它就不是一个好的曲库。任何 K 歌软件的曲库都是很有限的,如果曲库里没有你想唱的歌,你也没有任何办法,它不受你个人的控制。自建曲库的好处就是整个互联网都将是你的曲库,国内各大视频网站、短视频平台的歌曲 MV 都可以下载下来作为你的曲库(网上有很多下载方法,即使不能下载也还是有办法),如果喜欢国外歌曲,那么 Youtube 也可以是你的曲库,所以完全可以唱任何你想唱的歌,看你想看的 MV。且对于大部分人,自建曲库的时间成本很低的,完全可以均分到日常 K 歌中。

歌曲下载

很多歌曲都可以在 B 站找到,大部分都有带 K 歌字幕的视频,这种视频就非常适合下载下来作为曲库;如果实在找不到带 K 歌字幕的视频,普通的 MV 视频也是可以的,就是 K 歌体验不是很好。另外,像腾讯、爱奇艺、优酷等视频网站也可以看有没有 MV;像微博这种,如果有合适的视频的话也是可以用的;实在不行,抖音、快手等也是可以的。

视频预处理

歌曲视频需要处理才能使用,步骤依次是从视频中提取音频、把音频中的人声和伴奏分离、去掉视频中的音频、把视频元数据放到视频头部。

分离人声和伴奏的这步操作及其重要,是自建曲库的核心步骤。有很多 K 歌软件的伴奏和人声分离不是很好,伴奏中带有人声,但是近些年人工智能大模型的出现,人声和伴奏的分离效果越来越好了。以下汇总了免费的人声和伴奏分离软件:

1、ultimatevocalremover:简称 UVR,号称天花板级别的音频处理软件,可选择不同的模式和下载不同的模型,具体用法可网上查阅资料。Windows 和 Mac 电脑直接下载即可运行,Linux 系统需要自己编译部署;

2、vocal-separate:极简的人声和伴奏分离软件,效果还可以,速度也挺快的。Windows 系统直接下载就可以用,Mac 和 Linux 系统需要自己部署;

3、Replay:还不错的人声和伴奏分离软件,全平台支持下载安装即可使用,需要自己下载训练好的模型;

4、Adobe Audition:Adobe 公司出品的音频处理软件,没用过,但既然敢拿出来卖,效果应该很不错。网上有很多破解版的可以用哦。

通过使用上述软件分离歌曲的人声和伴奏,最终会生成 2 个音频文件,分别是人声的音频和伴奏的音频。如果音频格式不是 mp3,请将它们转换成 mp3 格式。

开始K歌

进入 K 歌视频播放页面即可开始 K 歌,该页面主要就是视频播放,外加简单的控制功能。

温馨提示:正式 K 歌时,可设置浏览器全屏展示 或者 视频全屏播放,这样用户体验最好。

特别注意:由于浏览器的安全限制(Google 浏览器和 Edge 浏览器有,其他浏览器未测试),在第一次进入网页或者刷新网页后,第一次播放视频需要手动触发,无法自动播放。官方给出的解释是:避免未经用户操作自动发出声音。

一个比较鸡肋的小功能:如果你家里每个房间都有电视屏幕,想每个房间同时播放歌曲的 MV,那么每个设备都可以打开这个 K 歌页面,通过手机端就可以同时控制这些页面的歌曲播放。

手机端控制

手机扫码即可快速打开控制台页面(微信扫码或者浏览器扫码),然后就可以愉快的用手机来控制 K 歌了。控制台界面如下:



说实话,这个页面样式就是参考全民K歌的手机点歌页面,展示了当前正在唱的歌和下一首歌、切歌、原唱/伴奏切换、音量调整、开始/暂停、重唱、各种互动音效等,可以点歌,也可以查看已点歌曲列表,总之这个页面的功能基本上满足 K 歌需求。

多对多控制

理论上,播放歌曲视频的页面可以打开任意多个,手机控制页面也可以打开任意多个,基于 SSE(Server-Send Events) 实现这种多对多的关系。切歌、调整音量、原唱/伴奏切换等操作会实时同步到每一个客户端,每个客户端的数据和 K 歌状态展示完全一致。当然也可以用 WebSocket 实现。

自动更新系统

考虑到大家在使用这个系统时,无法感知系统是否有更新,且手动更新很麻烦,所以增加了系统更新的功能,很像 Windows 系统的更新。首先需要点击 检查更新,如果检测到有更新,下载 按钮会点亮,点击下载最新版本;下载完成后,重启更新 按钮会点亮,点击 重启更新 即可自动完成系统更新。

强烈建议自动更新前,先查看系统更新日志,万一自动更新失败,可以手动去更新。

自动更新的功能已全面支持 Windows、Linux、MacOS 等操作系统,在第一次部署的时候需要按照后面的部署步骤操作,就像 Windows 系统一样,第一次安装比较麻烦,后面更新就很方便了。

设置

设置里包含系统、账号、个性化、多媒体、游戏、终端、系统更新等多个功能。

系统

可以查看教程、重启服务、查看系统资源使用情况、设备相关信息、备份文件、清理临时文件,如下:



账号

可以修改用户昵称、修改用户头像、修改用户登陆密码和退出登陆,其中上传的头像的格式必须是jpg,图像的长宽最好一样。

多媒体

可以视频/语音聊天,播放本地视频,也可以打开音乐播放器听歌,更可以 K 歌哦。

项目地址

https://github.com/leeyoshinari/WinHub,欢迎使用,欢迎star

Windows 风格的个人网盘,支持OnlyOffice、支持音视频聊天、支持自动更新的更多相关文章

  1. 玩转Windows Azure存储服务——网盘

    存储服务是除了计算服务之外最重要的云服务之一.说到云存储,大家可以想到很多产品,例如:AWS S3,Google Drive,百度云盘...而在Windows Azure中,存储服务却是在默默无闻的工 ...

  2. [置顶] gis海量资源网盘提供VIP账号无广告高速下载 (更新更多资源)

    资源网盘下载地址:http://laoheitan.bego.cc/ 城通网盘 vip帐号共享 省去 烦人的 广告  多任务同时下载 独乐乐 不如众乐乐 好人 勿改密码. 获取到 vip下载连接后 请 ...

  3. 百度网盘不限速!VIP视频免费看!这两款插件被无数人安利!

    今天给给位推荐两款,我一直在使用的浏览器插件,简直爆炸!全网VIP视频随意看,所有网页上的视频,你想要的全部都能下载! 这两款插件堪称日常必备插件,只要你使用浏览器,就一定需要下面这些插件功能:快速下 ...

  4. 如何基于 ZEGO SDK 实现 Windows 一对一音视频聊天应用

    互联网发展至今,实时视频和语音通话越来越被大众所依赖. 今天,我们将会继续介绍如何基于ZEGO SDK实现音视频通话功能,前两篇文章分别介绍了Android,Flutter平台的实现方式,感兴趣的小伙 ...

  5. 下载百度网盘破解 获得 所下载视频URL 粘贴到thunder

    Chrome:方法1. 进入谷歌商城,搜索baidudl.安装即可. 方法2. 下载baidudl.zip.解压获得baidudl文件夹.进入chrome://extensions/,勾选右上角Dev ...

  6. WP8 对音视频格式支持的完整说明

    Supported media codecs for Windows Phone http://msdn.microsoft.com/en-us/library/windowsphone/develo ...

  7. 分享一个开源的网盘下载工具BaiduPCS-Go

    大家在使用网盘的时候,一定忍受不了限速下载的速度.今天给大家分享一个开源的网盘下载项目BaiduPCS-Go.Go语言编写,仿 Linux shell 文件处理命令的百度网盘命令行客户端.多平台支持, ...

  8. mac百度网盘破解版

    以下资源来源于网络收集分享,如有问题请联系我删除!来源入口,后面链接挂了,可去原网址访问! 还在为Mac百度网盘下载速度慢而烦恼吗?百度云盘又是一个非常实用的分享工具,可支持图片.视频.音乐.文档.种 ...

  9. 关于Pandownload和百度网盘

    本周,百度网盘第三方客户端 Pandownload 被查,开发者被“跨省追捕”:百度网盘“用户激励计划”在未充分告知用户的情况下,利用用户自己的电脑做 P2P 上传节点.这两件事再度引发了对百度网盘的 ...

  10. 可在广域网部署运行的QQ高仿版 -- GG叽叽V2.0,增加网盘和远程磁盘功能(源码)

    尽力2~3周发布一个版本,我这次也没有失言.这段时间内,我仿照QQ的微云功能,在GG中增加了网盘的功能,而且,我还自创了一个QQ没有的新的功能:远程磁盘.正如远程桌面一样,远程磁盘允许我们像访问本地磁 ...

随机推荐

  1. WebUploader 文件上传,兼容ios和安卓

    var upImg = WebUploader.create({ auto: true, swf: 'webuploader-0.1.5/Uploader.swf', // 图片接收服务端. serv ...

  2. 20240719 CVTE 笔试

    岗位:嵌入式软件开发工程师(Linux方向) 题型:20 道不定项选择题,2 道编程题 1.不定项选择题 1.1 如下哪个命令可以帮助你知道 shell 的用法 (D) more help pwd m ...

  3. SqlLite查看工具

    有时候想查看下sqllite,又不需要功能齐全的客户端,SQLiteSpy是个临时应急的好工具(也许本身功能就很强,没仔细研究). https://files.cnblogs.com/files/ja ...

  4. Codeforces Round 975 Div.2 C题 解析

    C题 题目链接:Problem - C - Codeforces 题目描述 思路 对于这道题,首先我们能想到最小的组数肯定是数量最多的那个卡片的数量(mx),因为这个值的每一个卡片不能在同一个组里面. ...

  5. 3张大图剖析HttpClient和IHttpClientFactory在解决DNS解析问题上的殊途同归

    在开发者便利度角度,我们很轻松地使用HttpClient对象发出HTTP请求,只需要关注应用层协议的BaseAddr.Url.ReqHeader.timeout. 实际在HttpClient在源码级别 ...

  6. 数字IC知识点:处理多个时钟

    1. 多时钟域 图1.多时钟域 对于工程师来说,开发含多个时钟(见图1)的设计是一种挑战. 这样的设计中可能有以下任何一个,或者全部类型的时钟关系: 时钟的频率不同 时钟频率相同,但相位不同 以上两种 ...

  7. Linux中的用户管理-创建删除修改

    用户管理 一.用户分类 用户分为三类: 1.管理员 root root UID:0 #拥有最高权限 默认系统中就一个 UID即user ID 类似于身份号码,唯一的,不可重复 2.虚拟用户 作用:在运 ...

  8. Impala学习--代码生成(Code Generation)

    代码生成 (Code Generation) Table of Contents 1 概述 2 为何使用代码生成 3 llvm 4 Impala使用IR 5 示例 6 总结 1 概述 Cloudera ...

  9. Redis迁移工具之Redis-shake

    Redis-shake is a tool for synchronizing data between two redis databases. Redis-shake是一个用于在两个redis之间 ...

  10. 自有Jar包生成Docker镜像

    前言 经常会有些自己写的一些SpringBoot小项目,为了实现一些小的功能/需求,但是部署的时候,不管是生成jar包,还是war包部署到tomcat中,都容易因为需要部署的环境(比如java版本.t ...