Canon Ivis HF S11の動画ファイル取り込み (Ubuntu)
UbuntuにてデジタルビデオカメラのCanon Ivis HF S11のファイルを取り込む方法が見当たらなかったので
pythonでファイル取り込み用のスクリプトを書いてみました。
取り込みというよりも、手動コピー → ファイル名変換といったものですけどね。
PIXELA Transfer UtilityがUbuntuにインストール出来ないので似たようなものが欲しいと思ったんです。<使い方>
1.ビデオカメラをUSBで接続
2.SDカードまたは本体からcpiファイルとmtsファイルをローカルの一つのディレクトリにコピー
3.このスクリプトにそのディレクトリパスを引数として渡して起動
起動例
$ python canon.py '/home/hoge/video/canon'
そうするとディレクトリ内にcpiやmtsファイルの作成日付のyyyymmdd形式のディレクトリを作成し
cpiとmtsファイルをyyyymmddHHMMSS.cpi、yyyymmddHHMMSS.mtsというファイル名に変換してコピーします。
canon.py
#!/usr/bin/python # _*_ coding: UTF-8 _*_ ''' Canon デジタルビデオカメラのmtsとcpiファイルのコピー Ver1.0 ''' import os, time, sys, shutil '引数のチェック' argvs = sys.argv if (len(argvs) != 2): print 'Usage: # python %s filename' % argvs[0] quit() 'カレントディレクトリの移動' os.chdir(argvs[1]) print os.getcwd() 'ファイルコピー処理' filelist = os.listdir(argvs[1]) for fl in filelist: ext = fl.split('.')[1].lower() if ext == 'cpi' or ext == 'mts': fs = os.stat(fl) prefix_dir = time.strftime('%Y%m%d', time.localtime(fs.st_mtime)) prefix_file = time.strftime('%Y%m%d%H%M%S', time.localtime(fs.st_mtime)) print prefix_file if not os.path.exists(prefix_dir): os.mkdir(prefix_dir) shutil.copy(fl, '%s/%s.%s' % (prefix_dir, prefix_file, ext))
<課題>
- 起動したら本体かSDカードか聞いてくるようにして選択することによりローカルに一度コピーしなくても動くようにしたい
- 既存の作成日付のものは処理をスキップしたい