首页 > 其他分享 >ffmpeg批量mov转换mp4格式脚本

ffmpeg批量mov转换mp4格式脚本

时间:2024-08-21 13:04:45浏览次数:12  
标签:ffmpeg libx265 mov echo mp4 file directory input

vim convertMP4.sh

 

输入脚本:

#!/bin/bash

# 检查是否提供了输入目录路径
if [ -z "$1" ]; then
    echo "Usage: $0 <input_directory>"
    exit 1
fi

# 获取输入目录路径
input_directory="$1"

# 检查输入目录是否存在
if [ ! -d "$input_directory" ]; then
    echo "Error: Directory $input_directory does not exist."
    exit 1
fi

# 遍历输入目录下的所有 .mov 文件
for file in "$input_directory"/*.mov; do
    # 检查文件是否存在
    if [ ! -f "$file" ]; then
        echo "No .mov files found in the directory."
        exit 1
    fi
    
    # 获取文件名(不包括扩展名)
    filename=$(basename "$file" .mov)
    # 定义输出文件名
    output_file="$input_directory/${filename}.mp4"
    
    # 执行转换
    ffmpeg -i "$file" -c:v libx264 -preset slow -crf 22 -c:a aac -b:a 192k "$output_file"
done

echo "Conversion completed."
# 执行转换(转为4K压缩无损)
    ffmpeg -i "$file" -vf "scale=3840:2160" -c:v libx265 -x265-params lossless=1 -c:a aac -b:a 192k "$output_file"

 

 

解释
-vf "scale=3840:2160":此选项将视频分辨率调整为 4K(3840x2160)。
-c:v libx265:使用 libx265 编码器,这种编码器在处理高分辨率视频时更有效,并支持无损模式。
-x265-params lossless=1:设置 libx265 编码器为无损模式,以尽量保持原始画质。
-c:a aac -b:a 192k:音频部分使用 aac 编码器,码率设置为 192 kbps。你可以根据需要调整音频码率,虽然这不会影响视频画质。

 

 

 

授权:

chmod +x convertMP4.sh

 

执行脚本:

 

./convertMP4.sh /tmp/mov

 

标签:ffmpeg,libx265,mov,echo,mp4,file,directory,input
From: https://www.cnblogs.com/todarcy/p/18371377

相关文章

  • Qt+ffmpeg环境搭建
    Qt+ffmpeg环境搭建各平台常见视频开发库举例:iOS:AVFoundationAudioUnitAndroid:MediaPlayer,MediaCodecWindows:DirectShowLinux:GStreamerFFmpeg库是一个跨平台的视频开发库,还有libVLC也是一个跨平台的视频开发库掌握了其中一个库,也能很快上手其它库,因为音视频解......
  • Ros2 Moveit2 - Robot Model and Robot State
    RobotModelandRobotState 在本节中,我们将向您介绍用于在MoveIt中使用运动学的C++API。RobotModel和RobotState类RobotModel 和 RobotState 类是提供对机器人运动学访问权限的核心类。RobotModel 类包含所有链接和关节之间的关系,包括从URDF加载的关节限制属......
  • ROS2 Moveit2 - URDF 和 SRDF
    URDFMoveIt2从URDF(统一机器人描述格式)开始,这是用于在ROS和ROS2中描述机器人的原生格式。在本教程中,您将找到URDF的资源、重要提示以及MoveIt2特定要求的列表。URDF资源URDFROSWiki页面-URDF ROSWiki页面是关于URDF的大部分信息的来源。URDF教程-......
  • 电影《异形夺命舰》百度云下载/迅雷下载[HD-1280P/2.21GB/MP4] 高清版资源
        电影《异形:夺命舰》——星际深渊中的生存与恐惧 《异形:夺命舰》下载资源:c.crmuscy.site在浩瀚无垠的宇宙深处,隐藏着无数未知的奥秘与恐怖。当人类的探索之舟驶入这片未知的领域,一场惊心动魄的生存之战悄然拉开序幕。电影《异形:夺命舰》以其独特的视角、......
  • FFmpeg的入门实践系列一
    欢迎诸位来阅读在下的博文~在这里,在下会不定期发表一些浅薄的知识和经验,望诸位能与在下多多交流,共同努力!江山如画,客心如若,欢迎到访,一展风采文章目录参考环境本系列的适用人群FFmpeg的简介FFmpeg的下载与编译1.下载FFmpeg通过官方网站下载:通过Git克隆仓库:2.解压源......
  • Ros2 MoveIt2 MoveGroup C++接口
     在MoveIt中,最简单的用户界面是通过 MoveGroupInterface 类。它为用户可能想要执行的大多数操作提供了易于使用的功能,特别是设置关节或姿势目标、创建运动计划、移动机器人、将对象添加到环境中以及从机器人上连接/分离对象。此接口通过ROS主题、服务和操作与 MoveGrou......
  • python列表方法-insert、pop、remove
    1.pop方法python中pop方法从列表中删除一个元素(默认是最后一个元素),并且返回这个元素a=[100,200,300,400]a.pop()400a[100,200,300]列表a调用pop方法,删除最后一个元素400返回。2.insert方法python中insert方法用于将一个对象插入列表a=[100,200,300,400]a.inse......
  • FFmpeg开发笔记(四十八)从0开始搭建直播系统的开源软件架构
    ​音视频技术的一个主要用途是直播,包括电视直播、电脑直播、手机直播等等,甚至在线课堂、在线问诊、安防监控等应用都属于直播系统的范畴。由于直播系统不仅涉及到音视频数据的编解码,还涉及到音视频数据的实时传输,因此直播领域采用的网络技术标准比较高,实现起来也比一般的WEB系统复......
  • C#实现国产Linux视频录制生成mp4(附源码,银河麒麟、统信UOS)
    随着信创国产化浪潮的来临,在国产操作系统上的应用开发的需求越来越多,最近有个客户需要在银河麒麟或统信UOS上实现录制摄像头视频和麦克风声音,将它们录制成一个mp4文件。那么这样的功能要如何实现了?一.技术方案要完成这些功能,具体来说,需要解决如下几个技术问题:(1)麦克风数据采集......
  • 一个简单的Rtmp推流客户端(QT录音,OpenCV摄像,FFmpeg编码推流)
            RTMP(Real-TimeMessagingProtocol)是一种实时流媒体传输协议,常用于音视频直播。        RTMP推流客户端是一种能够将音视频数据推送到直播服务器的工具。QT录音是利用Qt库实现的录音功能。OpenCV摄像是利用OpenCV库实现的对摄像头的控制和图像处理功......