You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决MELT脚本水印功能生成中文乱码问题

MELT中文水印乱码解决办法

以下是针对MELT脚本中文水印乱码的具体解决步骤:

  • 确保脚本与文本文件编码为UTF-8

    1. 保存bash脚本时选择UTF-8编码(不要带BOM);
    2. 检查水印文本文件(如中文d中文的-1001.txt),同样用UTF-8无BOM格式保存,避免编码不兼容导致乱码。
  • 设置UTF-8环境变量
    在脚本开头添加编码环境变量,强制shell和MELT用UTF-8处理字符:

    export LC_ALL=en_US.UTF-8
    export LANG=en_US.UTF-8
    
  • 指定支持中文的字体
    MELT默认字体通常不包含中文字符集,需要在watermark参数后添加font选项,指定系统已安装的中文字体(比如Noto Sans CJK SC、SimHei等,根据你的系统调整字体名称)。

修改后的完整脚本示例:

#!/bin/bash
# 配置UTF-8编码环境
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

/home/eyinhe/playback/temp/Shotcut/Shotcut.app/melt \
-profile hdv_720_25p \
colour:black out=349 length=349 \
-track \
test.mp4 in=0 out=249 -blank 0 -attach watermark:"+中文d中文的-1001.txt" font="Noto Sans CJK SC" \
test1.mp4 in=0 out=100 -blank 0 -attach watermark:"+中文d测试-1002.txt" font="Noto Sans CJK SC" \
-transition composite:25%/25%:50%x50% in=0 out=349 a_track=0 b_track=1 sliced_composite=1 \
-consumer avformat:/home/eyinhe/playback/temp/001.mp4 acodec=aac vcodec=libx264

如果问题仍存在,可以尝试将水印文本直接写入参数(适合短文本),比如:

-attach watermark:text="你的中文水印内容" font="Noto Sans CJK SC"

以此排除文本文件读取时的编码问题。

内容的提问来源于stack exchange,提问作者ddddccc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 05:46:11