sh脚本工具集锦(文件批量操作、音视频相关)持续更新

1 文件夹目录下所有图片转换成视频文件

pic_2_videos.sh:

powershell 复制代码
#!/bin/bash
# 放到图片文件夹目录下,把所有jpeg图片推成视频文件
# sh pic_2_videos.sh 0
# 0: pad to 1920*1080 ; 1 or other no pad
pad_1920=$1

if [[ $pad_1920 = 0 ]]
then
    files=`ls|grep jpeg`
    for file in $files;do
      # 取图片文件名称
      file_name=${file%.*}
      echo $file_name" processing..."
      # scale把原图修改下分辨率,缺少的地方不剪切不拉伸而是加黑边,再把所有处理后的图片二次处理成视频
      ffmpeg -r 25 -loop 1 -i $file_name.jpeg -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" -pix_fmt yuv420p -vcodec libx264 -b:v 600k -r:v 25 -preset medium -crf 30 -s 1920x1080 -vframes 250 -r 25 -t 10 $file_name.mp4
    done
else
    files=`ls|grep jpeg`
    for file in $files;do
      file_name=${file%.*}
      echo $file_name" processing..."
      # 不 pad
      ffmpeg -r 25 -loop 1 -i $file_name.jpeg -pix_fmt yuv420p -vcodec libx264 -b:v 600k -r:v 25 -preset medium -crf 30 -s 1920x1080 -vframes 250 -r 25 -t 10 $file_name.mp4
    done
fi

2 文件夹目录下所有文件按照序列顺序重新命名

rename.sh:

powershell 复制代码
#!/bin/bash
# 放到文件目录下,执行 rename.sh prefix_ mp4 所有mp4文件会自动重新命名为 prefix_1.mp4、prefix_2.mp4、prefix_3.mp4....
i=1
prefix=$1
type=$2
file_list=`ls |grep $type`
for file in $file_list;
do
  new_str=$prefix"_"$i".$type"
  echo $new_str
  mv $file $new_str
  (( i++ ))
  sleep 0.2
done

3 h265视频文件不能播放、音频编码异常导致不能播放

查了下音频编码格式不兼容,ffprobe 查看视频音频编码确实是pcm_alaw

重新编码成h264

toh264.sh:

powershell 复制代码
#!/bin/bash
# 脚本复制到文件目录下,执行sh toh264.sh即可。sh toh264.sh aa:会跳过名称包含aa的视频文件
exclude_filter=$1
if [[ -z $filter ]]
then
    files=`ls|grep mp4`
else
    files=`ls|grep mp4 |grep -v $exclude_filter`
fi

for file in $files;do
	echo $file
	ffmpeg -i $file -map 0 -c:a copy -c:s copy -c:v libx264 new_$file
	rm -rf $file
done
相关推荐
希和20276 小时前
免费AI视频生成工具汇总(国内优先,适合做漫剧、短视频,Obsidian笔记版)
人工智能·笔记·音视频
謓泽9 小时前
【插件】用写网页的方式做视频?HyperFrames 让我重新理解了“做视频“这件事!
gpt·ai·大模型·音视频·媒体·claude·视频
无忧_wy10 小时前
MoneyPrinterTurbo 自动化视频生成实战指南
运维·人工智能·自动化·音视频
和粒科技1 天前
热重分析仪TG 309 Libra Classic
测试工具
联犀1 天前
联犀 Go SIMD 实战:视频转码从 16.5ms 到 5.46ms
开发语言·golang·音视频
9527华安2 天前
FPGA纯verilog实现DP视频接口,支持2K60帧分辨率,提供3套工程源码和技术支持
fpga开发·音视频·dp
MetaEnchanter2 天前
视频章节怎么整理:填好时间点,导出前检查这几处
音视频
小豆庄2 天前
测试视频里的人脸车牌敏感信息自动化脱敏方案
计算机视觉·目标跟踪·ffmpeg·音视频·边缘计算·视频·敏捷流程
光泽雨2 天前
WPF 音视频四大核心方案对比
wpf·音视频
揽秀亭长2 天前
音频转乐谱如何实现?四类AI 扒谱工具的流程
音视频