ffmpeg 批量转换视频脚本
时间: 2023-08-31 12:03:28 浏览: 476
ffmpeg是一种功能强大的开源工具,可用于处理和转换多媒体文件,包括音频和视频。如果需要对多个视频文件进行批量转换,可以使用以下脚本:
1. 在本地创建一个文本文件,命名为"convert.txt",并将需要转换的视频文件路径按行复制到该文件中。
2. 打开终端或命令行界面,进入ffmpeg所在目录。
3. 使用以下命令执行批量转换脚本:
```shell
ffmpeg -f concat -safe 0 -i convert.txt -c copy output.mp4
```
其中,"convert.txt"是包含视频文件路径的文本文件名,"-c copy"用于复制输入文件的编码方式,可以保持视频质量不变,"output.mp4"是转换后的输出文件名。
4. 执行脚本后,ffmpeg将依次读取"convert.txt"文件中的视频文件路径,并将它们合并为单个输出文件"output.mp4"。
5. 执行完毕后,你将在当前目录下得到一个合并后的视频文件"output.mp4"。
通过这个脚本,你可以方便地进行视频批量转换,而无需一一手动操作。同时,你还可以根据需要调整ffmpeg的参数,如改变输出文件格式、视频分辨率、帧率等。这样,你可以根据自己的需求轻松地转换多个视频文件。
相关问题
FFmpeg批量导出视频分辨率参数
FFmpeg是一个功能强大的多媒体处理工具,用于转换、截取、合并视频和音频文件。如果你想通过FFmpeg批量导出视频并改变其分辨率,你可以使用`-vf`(video filter)选项配合`scale`滤镜来设置分辨率。基本命令结构如下:
```bash
ffmpeg -i input_video.mp4 -vf "scale=<output_width>:<output_height>" output_video_%d.mp4
```
这里的 `<output_width>` 和 `<output_height>` 需要替换为你想要的目标分辨率,例如 `-vf "scale=1920:1080"` 将视频缩放到1920x1080像素。`%d` 是一个占位符,每次输出会自动生成一个编号。
要批量处理,你需要将这个命令放入一个文本文件(如batch.txt),然后使用`for`循环或者`find`+`xargs`等脚本语言对每个输入文件执行该操作。例如:
```sh
for file in *.mp4; do
ffmpeg -i "$file" -vf "scale=1920:1080" "${file%.mp4}_scaled.mp4"
done
```
这将处理当前目录下所有`.mp4`文件,并保持原名基础上添加"_scaled"后缀的新命名规则。
FFmpeg批量查看视频分辨率参数
FFmpeg是一个强大的跨平台多媒体处理工具,它可以用于转换、截取、合并等视频和音频文件操作。如果你想批量查看视频的分辨率参数(如宽度和高度),你可以使用FFmpeg的`ffprobe`命令,它是一个命令行实用程序,专门用于提取媒体信息。
以下是使用`ffprobe`检查视频分辨率的基本语法:
```sh
ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv="p=0" your_video_file.mp4
```
这里解释一下参数:
- `-v error`:设置输出级别为错误级别,只显示错误信息。
- `-select_streams v:0`:选择第一视频流(如果有多个视频流)。
- `-show_entries stream=width,height`:仅显示宽度和高度属性。
- `-of csv="p=0"`:将结果格式化为CSV,并用逗号分隔,便于进一步处理。
运行这个命令,FFmpeg会返回视频的宽度和高度值,例如 "1920x1080"。
如果你需要对多个视频文件批量操作,可以将上述命令放入一个脚本中,循环遍历每个视频文件路径。
阅读全文
相关推荐













