空飛ぶロボットのつくりかた

ロボットをつくるために必要な技術をまとめます。ロボットの未来についても考えたりします。

ffmpegとpythonで動画をいじろう

ffmpegのインストー

sudo apt-get install ffmpeg

動画の変換

ffmpeg -i test1.MOV -strict -2 test1.mp4

動画の結合

ffmpeg -i test1.mp4 -i test2.mp4 -strict -2 -filter_complex "concat=n=2:v=1:a=1" output.mp4

動画の倍速方法

(TBD)

pythonでフォルダ内の指定ファイルをの取り込み

import os 
files = os.listdir('<dir path>')
 
for file in files:
    print file

こちらだとワイルドカードが使える

import glob
 
files = glob.glob('<dir path>/*.*')
 
for file in files:
    print file

pythonでコマンド実行するには

import subprocess
cmd = "ls -a"
subprocess.call( cmd, shell=True  ) 

フォルダ内の.MOVファイルをmp4ファイルに変換して、結合するdamedameコード

video_con.py

import sys
import glob
import subprocess
import os

args = sys.argv
files = glob.glob(args[1]+"/*")
num = 0

join_mov = str("")

for file in zipfiles:
    num += 1
    slice = file[0:-4]
    cmd1 = "ffmpeg -i "+file+" -strict -2 "+slice+".mp4"
    subprocess.call( cmd, shell=True  )
    join_mov += " -i "+ slice+".mp4"

cmd2 = "ffmpeg"+join_mov+" -strict -2 -filter_complex "+"\"concat=n="+str(num)+":v=1:a=1\" output.mp4"
subprocess.call( cmd2, shell=True  )

実行方法

python video_con.py <path>

たとえば~/video/test/*の.movファイルを変換したいとすると以下のように記述

python video_con.py ~/video/test