linux之flv转mp4
370 字
2 分钟
linux之flv转mp4
前言
为了让我的录播机能在线播放,所以找了个脚本,这个脚本是群里面一位大佬发出来的,非常感谢这位大佬的脚本。
准备
提前安装好ffmpeg
使用
sudo ./脚本 "文件夹路径/*.flv"脚本
#!/bin/bash
# 用法:# ./convert.sh "/path/to/*.flv"## 可选通过环境变量传入 FFMPEG 路径:# FFMPEG="/path/to/ffmpeg" ./convert.sh "/path/to/*.flv"
# 颜色RED='\033[0;31m'YELLOW='\033[1;33m'GREEN='\033[0;32m'NC='\033[0m'
# 检查传入的参数# 如果传入参数小于 1 个if [ $# -lt 1 ]; then echo -e "${RED}Missing argument!${NC}" echo "Usage example:" echo " ./convert.sh \"/path/to/*.flv\"" exitelif [ $# -gt 1 ]; then echo -e "${RED}Too much argument!${NC}" echo -e "${YELLOW}Note${NC}: Did you forget quotes?" echo "Usage example:" echo " ./convert.sh \"/path/to/*.flv\"" exitfi
# 匹配的文件名SOURCE_PATTERN="$1"
# 检查 FFMPEG 名字或路径if [ -z "${FFMPEG}" ]; then # 如果没有传入则设置默认为 ffmpeg FFMPEG=ffmpegelse echo -e "${YELLOW}[NOTE] Using custom ffmpeg path: \"${FFMPEG}\"${NC}" echo ""fi
# 在匹配到的每个文件里循环,文件名为 sourcefor source in $SOURCE_PATTERN; do # 设置 target 为 source 去掉后缀名再加上 ".mp4" target="${source%.*}.mp4" # 如果 source 是一个存在的文件 if [ -f "$source" ]; then # 如果 target 存在 if [ -e "$target" ]; then # 输出文件已存在提示 echo -e "${YELLOW}[SKIP]${NC} MP4 exist: $target" else # 否则输出运行的提示 echo -e "${GREEN}[RUN ]${NC} convert \"$source\" to \"$target\"" # 运行 FFMPEG $FFMPEG -hide_banner -nostats -loglevel warning -i "$source" -c copy "$target" fi fidone如果出现“解释器错误:没有那个文件或目录”尝试运行以下命令
sed -i.bak 's/\r$//g' zhuanma.sh文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
相关文章智能推荐
1
biliup → AstrBot(QQ) 录播完成通知 修复
服务器biliup 录制上传后通过 watch_backup.py 监听备份目录,经 push_lite 推送到 AstrBot QQ 群的通知链路修复记录
2
Rustdesk服务部署
服务器因为工作需要,所以在服务器上部署Rustdesk服务
3
本地化Ai大模型Agent部署
服务器最近AI的那么火token又那么贵,所以我想本地化部署一个Ai大模型顺便部署Agent,这样就能无限使用了,感谢老东家的给我提供设备
4
k8s集群部署
服务器2025-08-04
5
我的第二个QQ机器人AstrBot
服务器2025-07-21
随机文章随机推荐



