当前位置: 首页> 文旅> 文化 > 免费的企业建站系统_青岛本地生活网_网页搜索排名提升_代写新闻稿

免费的企业建站系统_青岛本地生活网_网页搜索排名提升_代写新闻稿

时间:2025/7/13 6:36:07来源:https://blog.csdn.net/2401_83810334/article/details/142799160 浏览次数:0次
免费的企业建站系统_青岛本地生活网_网页搜索排名提升_代写新闻稿

某些时候,由于上传限制,我们可能想把视频切分成尽量少且满足大小限制的片段,不改变视频原先的格式

实现思路:得到视频的总时长,总文件大小,根据大小限制,确定分割片段个数,
得到每段时长,截取视频片段输出文件

获取视频的总时长(单位秒)

 local duration=$(ffprobe -v error -show_entries format=size -of csv=p=0 "$video_path")

在这里插入图片描述
获取视频的大小(字节B)

 local size=$(ffprobe -v error -show_entries format=duration -of csv=p=0 "$video_path")

输出文件夹使用文件名

local output_dir="$video_dir/$video_base"

在这里插入图片描述
代码出现问题,显示语法错误
排查发现

ffprobe -v error -show_entries format=total_time -of csv=p=0 *  这里的参数应该是format=duration
#!/bin/bash
split_video() {local video_path="$1"local video_name=$(basename "$video_path")local video_dir=$(dirname "$video_path")local video_base="${video_name%.*}"local output_dir="$video_dir/$video_base"# 创建输出文件夹mkdir -p "$output_dir"# 获取视频时长local total_time=$(ffprobe -v error -show_entries format=duration -of csv=p=0 "$video_path")# 计算分割数量local child_num=$(echo "$(du -BM "$video_path" | cut -f1 | tr -d 'M') / 10" | bc)((child_num++))local child_time=$(echo "$total_time / $child_num" | bc -l)# 分割视频for ((i=0; i<child_num; i++)); dostart_time=$(echo "$i * $child_time" | bc -l)output_path="$output_dir/${video_base}($((i + 1))).${video_name##*.}"ffmpeg -i "$video_path" -ss "$start_time" -t "$child_time" -c copy "$output_path" -ydoneread -p "所有视频片段已创建于 $output_dir. 是否删除原文件 $video_path? (y/n): " confirm_deleteif [[ "$confirm_delete" == "y" ]]; thenrm "$video_path"echo "已删除 $video_path"elseecho "未删除 $video_path"fi
}# 检查输入参数
if [ "$#" -ne 1 ]; thenecho "用法: $0 <视频文件路径>"exit 1
fi
# 确保输入的文件存在
video_file="$1"
if [ ! -f "$video_file" ]; thenecho "文件 $video_file 不存在"exit 1
fi
split_video "$video_file"
关键字:免费的企业建站系统_青岛本地生活网_网页搜索排名提升_代写新闻稿

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: