Bootstrap

vlc for android 字幕方块乱码

使用的手机是小米4c,MIUI7 6.1.7Beta。VLC 2.0.6。

VLC下载地址:http://get.videolan.org/vlc-android/2.0.6/

加载中文字幕显示方块块的问题,

最好的方法是重新编译供个人使用。

根据之前在linux和windows上遇到的问题,是设置的字幕字体不支持中文,在android手机上也可以这样设置。

为了确保手机能正常使用,不覆盖/system/fonts中的字体文件,而采取修改libvlc.so中的字符串替换默认加载字体的方法。

1. 下载https://github.com/adobe-fonts/source-han-sans/blob/release/OTF/SimplifiedChinese/SourceHanSansSC-Normal.otf

2. 将SourceHanSansSC-Normal.otf重命名为DroidSans-Subt.ttf

3. 将文件放入/system/fonts,前提有root权限并且对system目录可写。(这里我使用幸运破解器突破系统对system目录的限制)

4. 将/data/app/org.videolan.vlc-1/lib/arm64/libvlc.so中的字符串DroidSans-Bold替换为DroidSans-Subt.(先进行备份)

     方法有多种,可以用命令busybox sed -i 's/DroidSans-Bold/DroidSans-Subt/g'   /data/app/org.videolan.vlc-1/lib/arm64/libvlc.so

     或者用vim -b /data/app/org.videolan.vlc-1/lib/arm64/libvlc.so和xxd命令 编辑二进制文件。

5. 重启进程。


测试发现libvlc.so会在某些情况下(可能是手机重启)还原。我利用幸运破解器,为其创建了一个自定义破解。

org.videolan.vlc.txt

[BEGIN]
vlc font DroidSan-Bold.ttf -> DroidSan-Subt.ttf

[LIB]
{"name":"libvlc.so"}

{"original":"42 6F 6C 64 2E 74 74 66"}
{"replaced":"53 75 62 74 2E 74 74 66"}

[END]
Congratulations! Font changed!

Patch created by 837468220.



参考文档: 1.https://www.v2ex.com/t/184352

;