给视频添加文字时,中文显示乱码,英文显示正常,这个是为什么,
给视频添加字幕时,提示can't find selected font provider fontselect: failed to find any fallback for font: (微软雅黑, 700, 0)
请问是要设置什么配置才能识别字体吗
vue使用ffmpeg.js的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
5条回答 默认 最新
关注 下午好🌅🌅🌅
本答案参考ChatGPT-3.5问题1:中文显示乱码的原因
- ffmpeg.js默认使用ASCII编码,在处理中文字符时就会出现乱码。
- 解决方案:更改编码方式为UTF-8,这样就可以正常显示中文字符了。
问题2:无法识别字体
- ffmpeg.js需要在运行时访问字体文件,如果找不到文件或者访问权限不足,就会提示找不到字体。
- 解决方案:提供正确的字体文件路径,并确保运行时有访问权限。
修改代码示例:
import FFmpeg from 'ffmpeg.js' // 更改编码方式为UTF-8 const code = 'utf-8' const ffmpeg = FFmpeg.create({ log: true, printErr: msg => console.error(msg), print: msg => console.log(msg), MEMFS: [ { name: 'test.mp4', data: videoData }, { name: 'test.ttf', data: fontData } ], arguments: ['-i', 'test.mp4', '-vf', `drawtext=fontfile=test.ttf: text='中文': fontcolor=white@0.8: fontsize=30: x=100: y=100, format=yuv420p`, '-strict', '-2', 'out.mp4'], stdin: null, cwd: '/', preRun: null, postRun: null, onRuntimeInitialized: null, locateFile: (filename) => '/ffmpeg/' + filename }) // 提供正确的字体文件路径 const fontData = fs.readFileSync(path.resolve(__dirname, '../fonts/yahei.ttf'))
解决 无用评论 打赏 举报
悬赏问题
- ¥15 孟德尔随机化怎样画共定位分析图
- ¥18 模拟电路问题解答有偿
- ¥15 Matlab在app上输入带有矩阵形式的初始条件发生错误
- ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
- ¥15 误删注册表文件致win10无法开启
- ¥15 请问在阿里云服务器中怎么利用数据库制作网站
- ¥60 ESP32怎么烧录自启动程序
- ¥50 html2canvas超出滚动条不显示
- ¥15 java业务性能问题求解(sql,业务设计相关)
- ¥15 52810 尾椎c三个a 写蓝牙地址