关于 C++ 标准文件流 fstream 对 UTF-8/Unicode 编码文件名的支持的参考文章

一年又一年 | C/C++ | 2019-06-02

参考文章:

https://stackoverflow.com/questions/30829364/open-utf8-encoded-filename-in-c-windows

https://stackoverflow.com/questions/821873/how-to-open-an-stdfstream-ofstream-or-ifstream-with-a-unicode-filename

https://stackoverflow.com/questions/6975267/c-saving-file-with-unicode-name-problem-how-to-save-utf-8-filenames-correctl


阅读全文>>

4236 次浏览 0 条评论 标签:无

对网易云音乐将云盘上传/本地播放的音乐关联匹配到曲库相应条目行为的观察

从他处下载的歌曲A,上传云盘后,匹配成曲库中对应的歌曲A条目。

将歌曲A中间几秒静音,上传云盘后,依旧能匹配成歌曲A。
查看曲库的歌曲A条目,出现云盘标记,播放听到的是做过静音处理的版本。

歌曲A,meta 信息全部被故意修改成歌曲C的,但是依旧能匹配成歌曲A,但仍可确定匹配受到了 meta 的影响,测试中发现带有错误 meta 的歌曲A的日文版,被匹配成歌曲A的英文版拉取了歌词。(错误的 meta 是英文的,但并不是歌曲A英文版的 meta)

首先播放歌曲A,匹配到了歌词。之后将歌曲A文件换成与歌曲A完全不同的歌曲B,保持路径相同文件名相同。再次播放,呈现的依旧是上次匹配到的歌曲A的歌词。

首次频谱分析拉到结果后会将匹配结果按文件路径缓存。重启可使缓存失效,重新进行频谱分析匹配。

meta 会影响频谱分析(听歌识曲)匹配结果,但 meta 对匹配结果的影响仅作用于由频谱匹配相似决定的歌曲范围之内。

换言之,在 meta 中把曲名设置成 Hop 并不能使得一首不是 Hop 的曲子匹配结果为 Hop,
而当这首曲子在匹配到一堆频谱相似的不同版本时,曲名为 Hop 会影响最终选择哪个版本作...

阅读全文>>

6482 次浏览 1 条评论 标签:无

在解决安卓 QQ 聊天记录因故乱码时,有关其加密密钥和纠错重建逻辑的新发现

※本文旨在描述笔者自己遇到的情况和一些新发现,供您作为预案参考,而非任何面向大众的方案。

现在网络上介绍安卓 QQ (手机QQ)聊天记录数据库基本情况(比如异或加密和表结构)的文章和资源已经相对很丰富了,本文就不再赘述。相关技术此前笔者也略有些了解,但没有实际复现研究细节。

直到近日,笔者因一些原因,不慎搞炸了手Q的聊天记录(历史聊天信息乱码),于是终于有机会(被迫)将这方面的技术拿出来检验是否依旧可行,并尝试用其挽回。

※ 切勿模拟复现以下描述所对应的情况,除非您知晓这其中的高风险度。数据无价,意外丢失追悔莫及。


在过程中,笔者参考历史文章公开的技术情况,基本确认了既往的技术到目前(手机 QQ 7.8)为止,依旧适用和有效,进而复现了相关操作。

由于笔者的个人情况的特殊性,在此过程中走了些苦路,不过也观察和发现了一些似乎还没有人公开发表的新技术,主要是关于安卓手机 QQ 对待聊天数据库加密密钥选取、保存和异常重建的一些基本逻辑和现象。大纲如下:


聊天数据库异或加密存在密钥文件 —— 一般情况下密钥为 IMEI 已经不是什么新闻,但因为密钥文件(手机QQ应用数据目录/f...

阅读全文>>

易语言组件字体属性的陷阱

一年又一年 | 易语言 | 2019-02-25

陷阱 1:

当你在易语言 IDE 的窗口属性栏里对组件设置字体字号时:

你选择了一款字体,字体大小为 9 号。

❌ 你以为易语言会做的事情:

  • 存字号,也就是存数字 9.

✔ 易语言实际做的事情:

  • 按照当前的 DC_DPI[1],计算并存这个字号所对应的逻辑大小[2],9 号在 96 DPI 下的逻辑大小是 -12 (0xfffffff4),在 101 DPI 下的逻辑大小 -13 (0xfffffff3).

[1] DC_DPI 指:对屏幕 DC 取 GetDeviceCaps 得到的 LOGPIXELSX/LOGPIXELSY[3].
[2] 逻辑大小的计算方式是 -MulDiv(fontSize, DC_DPI, 72),MulDiv(a, b, c) 等价于 四舍五入(a*b/c).
[3] 通常该值为 96,但笔者的桌面环境设置了自定义缩放,缩放比例是 105%,因为这个比例较小,Windows 不会对不支持 DPI 缩放的程序强行拉伸缩放,而是通过类似调整屏幕 DC 的 DPI 到 96*缩放系数(96*105%=101,即对应的 DPI 为 ...

阅读全文>>

3172 次浏览 1 条评论 标签:无

Ubuntu Firefox 无法播放音视频

症状

Ubuntu Firefox 无法在线播放 mp3、mp4(H.264) 等媒体。例如,使用网易云音乐网页版无法播放音乐,观看 YouTube 的部分视频提示无法播放,在 YouTube 的 HTML5 播放器兼容检查页面上 H.264 和 MSE & H.264 两者为叉,即不支持。


Ubuntu Desktop 预装的 Firefox 或 使用 apt 直接安装的 Firefox 对于 AVC/H.264、mp3 等一部分媒体的解码需要动态链接到一些外部解码器。

这些外部解码器因编码专利或许可协议的限制,需要自行安装这些限制性包(restricted packages)。

ubuntu-restricted-addonsubuntu-restricted-extras 整合了 Ubuntu 常用的限制性包(包括但不限于一些编解码器)。

关于这两个包的更多信息,可以分别参考 https://packages.ubuntu.com/bionic/ubuntu-restricted-addonshttps://packag...

阅读全文>>

Win10 锁屏界面背景选择“Windows 聚焦”无效/不更新解决方案

症状

  1. 在 Windows 设置>个性化>锁屏界面,将 背景 选择为 Windows 聚焦;
  2. 切换到设置其他选项页,再切换回 个性化>锁屏界面,发现背景选项变为图片,即刚才选择 Windows 聚焦 的操作无法生效。

解决方法

开始->设置->隐私->后台应用

设置里的隐私,后台应用按钮要保持打开,否则Windows聚焦不可选,默认变成图片

—— By LucissZ,来源:windows 聚焦功能失效,不能更换锁屏壁纸

评价

这个 Bug 该怎么说呢... 从程序的角度来看,可以理解这是为什么;但是显然从用户的角度看,这种隐含功能依赖的 Bug 是很遗憾的。

阅读全文>>

iyn.me 加入 HSTS Preload List 进程

不晚于 2017:域名所属服务加入 Strict-Transport-Security 头,max-age 为 6 个月,非 Preload.

2018-12 中旬:Strict-Transport-Security 头中 max-age 改为 1 年,Preload;并向 https://hstspreload.org/ 提交加入 Preload List 申请,进入等待合并阶段.

2019-1-8:域名合并进入 Chromium HSTS Preload List.

相关 Commit:https://chromium.googlesource.com/chromium/src/+/b7251156ba0a1357e40c2ed9dbeb6ecb77f25619
Commit Review:https://chromium-review.googlesource.com/c/chromium/src/+/1399249

2019-1-14:域名合并进入 Firefox HSTS Preload List.

相关 Revision:https://hg.mozilla.org/mo...

阅读全文>>

2320 次浏览 0 条评论 标签:HSTS preload

一种下载 HLS(m3u8) 视频并无压制合并封装为 mp4 的方法 (FFmpeg)

通常情况下,一则 HLS 视频由 .ts 分段和 .m3u8 分段索引构成。本文将介绍一种使用 FFmpeg Tool 实现 HLS 视频下载、无压制合并封装成 mp4 的方法。

ffmpeg -i "http://website/.m3u8" -c:v copy -c:a copy -bsf:a aac_adtstoasc 1.mp4 

使用 FFmpeg 以 HLS 视频作为输入(-i "http://website/.m3u8"), FFmpeg 将自动解析 m3u8 并下载 ts 分段视频,随后复制视频流与音频流(-c:v copy -c:a copy),重新混流封装成 mp4,并输出到文件1.mp4

阅读全文>>

[BUG] Adobe Photoshop CC 2015 功能缺陷致资源管理器打开文件夹弹出两个新窗口

问题

最近发现,在 Windows 资源管理器中双击我的桌面文件夹中的子文件夹时,会弹出两个管理窗口。

排查

仔细检查后,确定了该问题的三个基本情况:

  1. 并非键盘卡键或鼠标双击过快导致;
  2. 右键文件夹,在菜单中选择打开亦然如此,再次证明这并非输入错误,而是 shell 层级的问题;
  3. 仅在桌面文件夹这一目录下才会发生;
  4. 反复开关文件夹选项中的在新窗口/在同一窗口中打开不同文件夹并不能解决。

既然只发生在桌面文件夹,那是否是什么 desktop.ini 之类的文件导致的问题呢?
但看了一番后很遗憾地发现 desktop.ini 之类的 shell 配置文件并没有异常。

...

阅读全文>>

3597 次浏览 0 条评论 标签:打开文件夹 新窗口 Adobe bug

FFmpeg tool 下载/转推 HLS (.m3u8) 直播流媒体速度慢

Slow HLS Stream Download FFmpeg

I can successfully download a HLS stream from a .m3u8 link. However, the 
problem that I am facing is extremely slow download speeds. When using 
Streamlink...

阅读全文>>

9325 次浏览 0 条评论 标签:FFmpeg HLS m3u8

[杂谈]B站17年10月新番,超清画质悄然变成1080P,从淡定到茫然

最初我发现这件事情是看一部十月新番时感觉字幕变清晰了,于是顺手右键看视频信息,惊奇地发现超清画质是1080P分辨率了。

仔细看了看,不只是翻译字幕,OP和ED中的原生字幕也很清晰,应该是原生1080P,而不是插值分辨率(即不是从720P拉伸到1080P加字幕)

过了几天,又看了几个新番,刻意观察了,超清都是1080P,所以似乎这偶然,也不是压制配置出错而导致的意外。

...

阅读全文>>

4286 次浏览 3 条评论 标签:哔哩哔哩 画质 超清 1080P

正式上线iyn.me

如题。

阅读全文>>

4250 次浏览 1 条评论 标签:无

[转载] Find Out Why Your External Manifest is Being Ignored.

3577 次浏览 0 条评论 标签:无

群互联

一年又一年 | 作品 | 2015-04-30
见 http://cqp.cc/t-19230

阅读全文>>

3550 次浏览 0 条评论 标签:无

Windows10一个细节改动

发现了Windows10一个细节改动
鼠标悬在一个带有(可用的)滚动条编辑框上,
然后滚动鼠标滚轮
即使焦点不在该编辑框上,该编辑框的滚动条也会滚动。
这一特性在Windows8.1 with Update里是没有的。

[小白]一年 2014/10/2 11:40:21
相反的,就算焦点在某个编辑框上,但是鼠标不在该编辑框的区域内,滚动滚轮无效

事后我发现,所有的组件都...

阅读全文>>

4129 次浏览 2 条评论 标签:无
Ɣ回顶部