この回答に基づいて、次のコマンドでffmpegを使用してビデオを回転できます。
ffmpeg -i input -vf transpose=2 output
映画のフォルダーをバッチ処理するには、選択したプログラミング言語を使用して、ファイルを反復処理できます。ここでは、Python 2.7以降のLinuxを使用しました。folder_movies
パスを編集してpath_to_ffmpeg
、ムービーを設定するだけですextension
。
import os # import os module
import subprocess # import subprocess module
# set the path to your video folder
folder_movies = '/home/user/Desktop/test/'
# set ffmpeg path
path_to_ffmpeg = "/opt/ffmpeg/ffmpeg"
# set file extension
ext = ".mp4"
# collect all videos in folder_movies
movie_files = [f for f in os.listdir(folder_movies) if f.endswith(ext)]
# iterate through the files
for i in movie_files:
# setup correct filepath for mov's
file_path = os.path.join(folder_movies,i)
# generate new file path
new_path = os.path.splitext(file_path)[0] + '_rotated_90' + ext
# call ffmpeg with the correct arguments
# command: ffmpeg -i input -vf transpose=2 output
subprocess.call([path_to_ffmpeg, "-i", file_path, "-vf", "transpose=2", "-c:a", "copy", new_path])
その後、ムービーフォルダは次のようになります。
Pythonを使用する利点は、コードがクロスプラットフォームで実行されることです。考慮する必要がある唯一のことは、ディレクトリへのパスとffmpeg実行可能ファイルです。これをWindowsマシンで実行するには、パスを次のようなものに置き換えるだけです。
# folder_movies = '/home/user/Desktop/test/' # linux or osx
folder_movies = r'c:\some\directory\test' # windows, the r is important
folder_movies = 'c:/some/directory\test' # windows (alternative)
# path_to_ffmpeg = '/opt/ffmpeg/ffmpeg' # linux or osx
path_to_ffmpeg = r'c:\Program Files\ffmpeg\ffmpeg' # windows, the r is important
path_to_ffmpeg = 'c:/Program Files/ffmpeg\ffmpeg' # windows (alternative)
注:私はffmpegのエキスパートではありません。直接バッチ処理する方法があるかもしれません。