MoreRSS

site iconTjSky | 秋风于渭水修改

90后。编程爱好者。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

TjSky | 秋风于渭水的 RSS 预览

Bilibili、YouTube等视频网站频繁出现缓冲卡顿的解决方案

2025-06-09 23:05:19

某一天开始,我发现电脑在使用外接 USB 音响播放 B 站视频时,大约在播放 1、2 分钟后,会突然卡住,缓冲一段时间后再开始播放,之后就一直重复缓冲、播放几秒到十几秒再次缓冲的过程,之后发现不仅仅是 bilibili,其实 YouTube 等其他视频网站都存在这个问题。
在一番搜索查找后终于知道问题所在:这个看似是网络卡顿的现象,居然是瑞昱(Realtek)的音频驱动导致的,不用 Realtek 驱动就可以解决问题。

Bilibili、YouTube等视频网站频繁出现缓冲卡顿的解决方案


播放缓冲卡顿故障表现细节

故障前提

  1. 必须是win10或win11系统
  2. 使用瑞昱(Realtek)声卡并安装了 Realtek 官方驱动

故障表现

  1. 在使用外接USB音响、蓝牙耳机、有线耳机、笔记本自己的音响等播放 Bilibili、YouTube、奈飞 等视频网站内视频时。如果视频一直在播放大概率不会出问题。
  2. 如果中间暂停视频一段时间后再播放,再次播放一段时间后会突然卡住,显示正在缓冲,缓冲一段时间后再开始播放,之后就一直重复缓冲、播放几秒到十几秒再次缓冲的过程。(如果暂停后马上恢复播放则大概率不会出现问题)

  3. 此时网络实际很通畅、使用视频网站的测试工具也显示不存在网络问题。

  4. USB音响可以通过拔下再插上恢复正常,蓝牙耳机可以通过关闭蓝牙再打开恢复正常,最不济可以通过重启电脑恢复正常。

  5. 但是过一段时间又出现上述状况,而且浏览器类型(起码我测试chrome、edge、Firefox都一样)、浏览器扩展(无痕模式、安全模式都有这个问题)、网络情况(获取直链后用工具下载时无任何问题)、用什么播放器(用potplayer播放网络URL也会出现这个问题)等等都无关。

故障解决

定位故障点

这个问题困扰了我很久,但奇怪的是我用蓝牙耳机播放时几乎从来不会出现这个问题,不过因为我一般都是用蓝牙耳机为主,对我影响不大,所以这个问题也就一直放着没管。

直到我看到了这篇文章《如何解决B站暂停视频后一直缓冲问题 – 龙鲲博客》 如同醍醐灌顶,我电脑的现象和博主的简直如出一辙。至于为何我用蓝牙耳机反而不会像原文所说的那样有问题呢,可能因为我使用了替换的蓝牙驱动吧。

卸载Realtek(R) Audio 的官方驱动

简单说就是 Realtek(R) Audio 的官方驱动有bug,卸载官方驱动后换成 Windows 自带的通用驱动,并防止 Windows 自动更新将驱动为 Realtek(R) Audio 官方驱动即可。

  1. 在开始菜单按钮上右键或在开始菜单里搜索「设备管理器」,找到「设备管理器」启动。
  2. 点开「声音、视频和游戏控制器」,找到「Realtek(R) Audio」,右键单击,选择「更新驱动程序」
    更新驱动程序

  3. 点击 「浏览我的计算机以查找驱动程序软件」

  4. 点击 「让我从计算机上的可用驱动程序列表中选择」

  5. 取消勾选「显示兼容硬件」,在左侧厂商框里找到并点击「Microsoft」,在右侧型号框内找到「High Definition Audio 设备 版本:XX.XX.XXX.YYYY [YYYY/MM/DD]」,选择版本号最大,日期最近的那个。

进阶步骤

因为有可能 windows 系统更新时还会自动安装 Realtek(R) Audio 的官方驱动,所以最好还是禁止一下。

通过组策略禁止自动更新驱动

仅限 Windows 专业版、企业版、服务器版等有组策略的系统
1. 按 「Win + R」,输入 「gpedit.msc」,回车打开「组策略编辑器」

  1. 依次展开:「计算机配置」 → 「管理模板」 → 「Windows 组件」 → 「Windows 更新」 → 「管理从 Windows 更新提供的更新」 → 双击左侧的「Windows 更新不包括驱动程序」 → 选择 已启用 → 点击「确定」

  1. (可选步骤)以管理员身份,在命令行中执行 gpupdate /force 让组策略强制生效。

通过注册表禁止自动更新驱动

  1. 按 「Win + R」,输入 「regedit」,回车,同意 UAC 提示。(如果有的话)
  2. 依次展开:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
    在窗口右侧,右键 → 新建 → [DWORD (32 位) 值」,命名为 ExcludeWUDriversInQualityUpdate

  1. 双击该值,将数值数据改为 「1」 → 点击 「确定」
  2. 重启系统生效。

(可选) 进行一次【完全重启】

因为 windows 从 win8 开始默认会开一个叫“快速启动”的小功能。
快速启动结合了传统关机和休眠模式的特点:在系统关闭或重启时,会仅将内核会话和设备驱动状态保存到硬盘的 hiberfil.sys 文件中。

如果你的系统硬件较新,系统也是比较新的win10、win11版本,理论上系统会在你更改驱动后自动将下一次启动进行完整重启,不执行“快速启动”。
但是这只是理论上,偶尔还是会出现。更新了驱动,系统还是来个快速启动,直接获取保存的驱动状态,就有可能导致音频驱动加载出错, Realtek(R) Audio 音频设备直接消失。如果出现了这个情况请再尝试下边的步骤解决问题。

方案一:彻底关闭快速启动
  1. 右键点击 开始菜单 → 选择 “终端(以管理员身份运行)” 或 “命令提示符(以管理员身份运行)”。
  2. 以管理员身份运行powercfg /h off此命令会同时禁用休眠和快速启动。如需重新开启,输入 powercfg /h on
  3. 代价就是每次系统启动需要的时间多了5、6秒(SSD),如果你是机械硬盘可能会更久比如20多秒。
方案二:只完整重启一次,不关闭快速启动
  1. 点击开始菜单的 “电源”图标 → 按住 Shift键 同时点击 “重启”。
  2. 系统进入 “高级启动”界面 → 选择 “继续退出并进入Windows”。

The post Bilibili、YouTube等视频网站频繁出现缓冲卡顿的解决方案 appeared first on 秋风于渭水.

如何正确拉取超大体积的git项目——开发小技巧

2025-05-14 15:48:33

最近遇到一个体积相当大的仓库(40GB+),结果在安利给群内小伙伴时,很多人遇到了直接使用 git clone 克隆仓库到本地时,对本地网络的稳定性有巨大挑战,一旦网络波动导致传输中断,就只能从头下载。
很多人拉项目时习惯git clone一把梭哈,这并不是一个很好的习惯,众所周知国内访问github属于玄学,而且有些项目非常大,搞不好需要好几个小时才能拉取完,长时间+不稳定的网络,很容易出意外。本文就是介绍两种应对超大体积项目的拉取的办法「Git LFS」和「Git fetch」。


Git 的 git clone 命令本身是不直接支持断点续传的,git clone 本质上是创建一个新仓库,并一次性拉取远程所有数据(包括提交历史、分支、标签等)。如果中途中断本地目录会处于不完整状态,直接重试 git clone 会失败,如果你退出终端本地目录也会被清空。

使用 Git Large File Storage(Git LFS)

简单介绍一下 Git LFS

Git Large File Storage(Git LFS)是一个用于管理大型文件的Git扩展工具,旨在解决Git原生对大文件支持不足的问题。

Git LFS 优点

  • Git LFS用轻量级文本指针(如oid sha256:…)替换实际大文件,避免仓库臃肿。
  • 大文件内容存储在专用服务器(如GitHub LFS、块储存、自建储存、CDN),仅按需下载。
  • 支持单个文件GB级别存储,突破Git对文件大小的限制。(比如 github 是单文件小于100MB,单文件大于50MB会出现警告)
  • 因为大文件实际是分离储存的,可以优化拉取速度。
  • 安装Git LFS 并配置好后,日常 git 操作时,几乎是无感的,Git LFS 会自动处理大文件。

Git LFS 缺点

  • 需要项目创建者配合从一开始就使用 Git LFS,如果项目没有采用,对于想要克隆拉取项目的人是没有办法去使用 Git LFS 的。
  • 额外的大文件储存和下载都是需要开发者额外掏钱的,像是GitHub就只有10 GiB的免费空间和流量可用,超过的部分需要额外收费。(如果你是pth之类的AI模型文件,huggingface之类的平台给了免费的 LFS 空间)

不要 git clone 一把梭哈,改用 git fetch 分步拉取

简单介绍一下 git fetch 分步拉取

Git LFS 更多面对的是项目中部分文件体积很大的情况,比如Unity项目中的.asset文件、PSD源文件、CSV数据集。但还有一种情况,项目中每个文件体积都不大,可能只有几兆到十几兆,但是项目中文件数量极多,几百上千个,加到一起后整个项目体积也到了 GB 规模。这个时候更适合分步拉取的方式。

和 git clone 相比 git fetch 的优势

  • git fetch 基于 Git 对象模型,天然支持断点续传。
  • 即使多次中断,只要本地 .git 目录未损坏,均可通过反复执行 git fetch 逐步补全数据。
  • 如果中断期间远程仓库新增了提交,git fetch 会同时下载新增内容和未完成的旧内容,最终保持本地与远程一致。

和 git clone 相比 git fetch 的缺点

除了操作稍微多了几个步骤,没任何额外的缺点。

git fetch 分布拉取的方法

  1. 先手动创建空仓库并构建.git文件
mkdir your-repo && cd your-repo
git init
git remote add origin https://github.com/user/repo.git
  1. 分步拉取数据
git fetch origin --progress  # 如果中间传输中断,就在目录下再执行一次这个命令即可。
  1. 等待拉取完毕(以下仅为举例,请根据实现终端显示为准),这时候项目所有内容都会被打包在.git/objects/pack目录下的.pack文件内。
Resolving deltas: 100% (9999/9999), done.
From https://github.com/user/repo.git
 * [new branch]      master     -> origin/master
 * [new tag]         v1.0       -> v1.0
 * [new tag]         v1.1       -> v1.1
 * [new tag]         v1.2       -> v1.2
 * [new tag]         v2.0       -> v2.0
 * [new tag]         v2.1       -> v2.1
 * [new tag]         v2.2       -> v2.2
 * [new tag]         v2.3       -> v2.3
 * [new tag]         v2.4       -> v2.4
 * [new tag]         v3.0       -> v3.0
  1. 将需要的分支检出,比如我们检出 master 主分支。
git checkout master
  1. 其他优化建议

使用浅克隆减少首次下载量,比如只拉取最新分支

git clone --depth 1 https://github.com/user/repo.git

之后再补全历史(或者就干脆不补全,节约点空间)

git fetch --unshallow

总结

总的来说 Git LFS 主要是应对项目中出现几个巨大体积文件的情况,git fetch 主要是应对一次开机无法完成下载的超大型仓库或不稳定网络环境,比直接 git clone 一把梭哈更加灵活。

PS:顺带提一嘴,如果多次中断和重新拉取,可能会在.git/objects/pack目录下出现很多个.pack文件。如果需要清理的的话,在项目目录下执行git gc --auto
再PS:不用在意.pack文件的巨大体积,因为工作目录下你看到的具体文件,是通过硬链接、符号链接构建的,工作目录内的文件和 .pack 中的对象共享同一份数据,并不会真实占用双倍物理空间。实际占用大概是1.2~1.3倍空间,因为.pack文件还是有一定的压缩的。

The post 如何正确拉取超大体积的git项目——开发小技巧 appeared first on 秋风于渭水.

GitHub 阻止中文用户访问了 吗?(附临时解决方案)

2025-04-29 14:43:46

引言

今天群里不小小伙伴都表示在访问 GitHub 时遇到了「对本网站的访问受到限制」 (access to this site has been restricted) 、「访问已被限制」(Access has been restricted)的提示。

之前 GitHub 曾因失误部署了屏蔽所有中国 IP 地址的规则,中国 IP 地址访问时会出现禁止访问提示,之后 GitHub 更新了规则,中国 IP 地址重新可以访问了。GitHub 给出的解释当初是部署错误。

如果之前是失误那现在肯定就是故意的了,这次如果你使用代理访问,并且使用的是中文 (仅限 zh_CN),那么你就有可能被 GitHub 阻止访问。



情况

那么问题来了,GitHub 是打算主动屏蔽所有中国用户吗?
经过我和群内小伙伴们的测试,答案是:应该不是,看起来更像是 GitHub 针对中文爬虫设定的反爬措施。

实际触发这个限制的条件逻辑是:
1. 基于IP或者UA等判断(比如是不是机房IP,代理IP,常见爬虫UA,模拟浏览器头)
2. 基于一些流量模型判断(比如访问频率过高,访问范围过广)
3. 是不是请求头的语言部分包含 zh_CN
4. 只有上边每一层检测,都触发了“是”,那么才会触发访问限制。
5. 并且这个限制是分功能的,不是完全不可用,有可能你可以在浏览器中浏览项目,编辑文件,但你这时却无法在 浏览器内 raw,无法在终端里 git clone。

也就是说,对于正常的中文用户,如果你的IP比较干净,不是使用奇形怪状的浏览器访问,都是可以正常访问 GitHub 的。

碎碎谈

感觉 GitHub 大概率是为了反爬虫、反抓取,毕竟现在 AI 训练爬虫在对 GitHub 疯狂抓取用来训练模型。微软虽然家大业大也没钱了嘛。不过国内爬虫是有多少啊,都能让 GitHub 把语言当作一个过滤条件了。之前那次屏蔽中国IP,搞不好起因也是这个,只是个某个管理错误的把中国的IP段全部给拉黑了。
不过把请求头语言项作为爬虫检查项,意义不大吧,这个特征也不难改……

如果你使用的代理 IP 质量不佳,IP 被万人骑,实在太黑了,导致被 GitHub 拦截了,比较简单的办法就是:
– 换个IP
– 使用一些浏览器请求头修改扩展,将请求头语言部分改成 accept-language = en_US,en;q=0.9,zh;q=0.8 (英语优先,中文备选)。
– 直接去浏览器设置里修改网页首选语言(所有网页都会收到影响,比如不登录状态下谷歌和bing就会给你返回英文网页和英文搜索结果优先了)

以Header Editor 4.1.1 为例,修改请求头

启用请求头修改前,部分位于https://camo.githubusercontent.com的图报HTTP429「Access has been restricted」

启用请求头修改后,马上恢复正常。

The post GitHub 阻止中文用户访问了 吗?(附临时解决方案) appeared first on 秋风于渭水.

WIN11更新后,C盘下莫名多出的神秘空文件夹inetpub不是BUG,不要删

2025-04-17 10:05:18

微软明确说明 Windows 11用户在安装4月累积更新(KB5055523)后,不能删除系统创建的“inetpub”文件夹!!如果已经删了,需要按步骤恢复这个“inetpub”文件夹,以提高系统安全性。


最近很多人在安装微软发布的 Windows 11 4月累积更新(KB5055523)后,发现系统C盘根目录下神秘出现了一个名为 “inetpub” 的空文件夹。当时大家一致认为这又是伟大的阿三程序员写出新bug了。

“inetpub” 文件夹通常是微软 Internet 信息服务 (IIS) 创建的,IIS 是微软推出的 Web 服务器软件,用于在Windows 11上托管网站或应用程序,一般情况下只有在启用 IIS 后根目录才会出现 “inetpub” 文件夹,但在此次更新中,即使用户未启用 IIS 该文件夹也会自动创建。看起来十分不正常,于是大家都认为这是个 bug。

于是很多科技博主都表示 “这个 “inetpub” 文件夹可以删除,本身这个文件夹也是空的,测试删除后不会对系统造成任何负面影响”,我也受不了C盘有个陌生文件夹,就给删了,结果尴尬了……

但其实这个操作是为了修复漏洞“CVE-2025-21204”的,估计微软没想到大家会如此在意系统根目录出现陌生文件夹,在更新日志中压根没提到会有这个操作,考虑到用户删除“inetpub”后会影响系统安全,微软最近又更新日志添加了这个文件夹的说明

注意:直接手动重建这个文件夹对修复漏洞“CVE-2025-21204”是没有作用的!需要按正确步骤恢复

恢复方式一:
1. 点开开始菜单
2. 在搜索框里搜索开启或关闭 Windows 功能并打开
3. 勾选 IIS 服务 (Internet Information Services) 并点击确定
4. 等待 1、2 分钟 IIS 服务会完成安装,此时会自动创建“inetpub”文件夹
5. 随后关闭 IIS 服务

恢复方式二(微软的推荐做法):
1. 设置 → Windows更新 → 更新历史记录
2. 拉到底,选「卸载更新」
3. 找到 「用于Microsoft Windows的安全更新(KB5055523)」,点击卸载,等待卸载完毕后,重启电脑
4. 重启后,再次检查系统更新,并重新安装「适用于 Windows 11 Version 24H2 的 04 累积更新,适合基于 x64 的系统 (KB5055523)」即可自动恢复“inetpub”文件夹。

The post WIN11更新后,C盘下莫名多出的神秘空文件夹inetpub不是BUG,不要删 appeared first on 秋风于渭水.

Claw Cloud Run 免费容器来了,无需信用卡,Github账号满180天,终身每月送5$

2025-04-16 15:20:54

Claw Cloud Run是 Claw Cloud 旗下的轻应用平台,你可以理解成 Vercel、Netlify 之类的东西,既是 PaaS 平台,也有 Serverless 服务,还能跑类 Docker 项目(不是直接用 Docker 跑的,是自动适配,用 Serverless 形式跑的),可以快速部署 Alist、Rsshub、Memos、Uptime Kuma、Chatgpt-next-web等程序。甚至可以用来跑 Minecraft 游戏服务器,注册即送 5 刀额度,如果绑定一个注册超过180天的 Github 账号可以永久享受每月5美元的额度。每个可用区有4H 8G 10G 资源,一共 10 GB 流量。


有白嫖自然是很开心的嘛,虽然Vercel也挺好用的,但是Claw Cloud Run还有免费的数据库可用,跑一些个人项目会更加方便一点,最主要是,新加坡区和日本区到国内的速度相当不错:

注册页链接 (有AFF)

如果不想走我的AFF的话,自己谷歌一下「Claw Cloud Run」就能找到官网了。

使用注册超过180天的github账号登录的话,可以享受每月5刀的赠送,不需要信用卡。
如果没有的话,则只会赠送一次5刀的额度。

注意:每月送的5刀的账户,还是免费计划而不是爱好计划。送你的5刀是让你抵扣使用费用的。
根据页面上的预计费用,Alist 每天0.04刀,WordPress 每天0.06刀,通过适当自行缩小容器配置,算下来每个月免费部署4、5个自用项目还是没问题。

如何缩小容器配置

默认他一个项目最小给1H1G,对于有些小项目,实在太奢侈了,适当改小可以有效降低部署费用。
我有个给贴吧自动签到的脚本,这玩意本地跑才占用几M好不,所以我只给了0.1核64M内存。每天仅需1分钱(其实用不到的,只是因为显示上最小差值是 0.01元)。

  1. 进入应用列表
  2. 点进需要修改的项目
  3. 左上角有个「Update」,点进去
  4. 愉快的把CPU和内存改小就好了。

PS: Claw Cloud(阿爪云,又名阿里云青春版)小道消息称,这是阿里云在新加坡开的马甲(因为他们基础设施都是用的阿里云的)。不过也有一种可能是基于阿里云的二道贩子在蹭热度,这在云服务提供商中也并不少见。

友情提醒
1. 目前 Claw Cloud 的 Janpan 和 Singapore 非常拥挤,随便一个项目开机都要好几分钟,请尽量避开日本和新加坡区。
2. 他家服务稳定性比较,嗯,最近可能人多,有点炸裂,如果项目出问题了,请重启项目解决。

The post Claw Cloud Run 免费容器来了,无需信用卡,Github账号满180天,终身每月送5$ appeared first on 秋风于渭水.

谷歌这是在干啥?强制给我开个广告拦截收入挽回?

2025-03-23 11:47:56

我也没开广告拦截收入挽回啊,谷歌就偷偷通过扩展静默注入广告拦截收入挽回代码了?
我对大家拦截站内广告的态度是:不喜欢看那就拦截掉,不想看广告是用户的权利。

开始我还以为谷歌这是广告营收下滑了,着急了。
结果去查了一下。啥,营收反而涨了?
哦,不会就是靠这种方式涨的吧

随后我再仔细一看,好嘛
反反广告拦截收入挽回也被自动注入了
去广告拦截器拦截了广告拦截收入挽回会被检测

但问题是,我压根就没开这个功能,adsense 内这个选项也是关闭状态,这完全是谷歌自作主张自行强制加入的。

从“不作恶”到“做正确的事”
从“技术导向”到“资本导向”
谷歌公司正在向下一个波音公司一路狂奔……

The post 谷歌这是在干啥?强制给我开个广告拦截收入挽回? appeared first on 秋风于渭水.