Python版video2mp4にメタ情報を追加する
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[今さらPython]]
Python版video2mp4は何気に愛用しているんだけど、こいつが呼び出してる ffmpeg にはメタ情報の追加が可能。
アルバム名、アーティスト、そしてタイトルだ。
うちの車はAndroid auto任せでナビも何もないけど、音楽プレイヤーだけはついているのだ……表示にアーティスト名も何もないのは寂しいので、追加できるようにスクリプトを改造する事にした。
* Python版video2mp4.py * [#v95f9023]
#!/usr/bin/python3
import os
import re
import subprocess
import sys
p = re.compile(r'\.(avi|mov|mkv|webm|flv)$',flags=re.IGNORECASE)
p2 = re.compile(r'\-(rem(|ove)|del(|ete)|erase)$',flags=re.IGNORECASE)
# メタ情報
p_album = re.compile(r'\-(album)=(.+)$',flags=re.IGNORECASE)
p_artist = re.compile(r'\-(artist)=(.+)$',flags=re.IGNORECASE)
p_title = re.compile(r'\-(title)=(.+)$',flags=re.IGNORECASE)
f_album = ''
f_artist = ''
f_title = ''
myself = os.path.basename(__file__)
otx = '.mp4'
otx2 = ''
f_rem = False
if(myself == "putaudio"):
otx = '.ogg'
otx2 = '-vn '
p = re.compile(r'\.(avi|mov|mkv|webm|flv|mp4)$',flags=re.IGNORECASE)
for i in sys.argv:
if(p2.search(i) != None):
f_rem = True # あとで戻り値判定をいれ、実行OKなら元ファイルを消すようにする。
elif(p.search(i) != None):
j = re.sub(p,otx,i)
if(not os.path.isfile(j)):
print("不在:"+j)
x = ''
if(f_artist != '' and f_album != '' and f_title != ''):
x = "nice -n 20 ffmpeg "+otx2+"-i \""+i+"\" -metadata ALBUM=\""+f_album+"\" -metadata ARTIST=\""+f_artist+"\" -metadata TITLE=\""+f_title+"\" \""+j+"\""
else:
x = "nice -n 20 ffmpeg "+otx2+"-i \""+i+"\" \""+j+"\""
if(x != ''):
print(x)
subprocess.run(x,shell=True)
elif(p_album.search(i) != None):
x_album = p_album.search(i)
f_album = re.sub('^.+=','',x_album.group())
elif(p_artist.search(i) != None):
x_artist = p_artist.search(i)
f_artist = re.sub('^.+=','',x_artist.group())
elif(p_title.search(i) != None):
x_title = p_title.search(i)
f_title = re.sub('^.+=','',x_title.group())
* 実行 [#m745b21b]
ソースを見ればわかると思うが、video2mp4.pyは、うちでは video2mp4 および putaudio という名前でシンボリックリンクしている。
putaudioの名で呼ばれると、動画などからテキストを抜き出すツールとして動作する。
$ putaudio -album="CADILLAC Best" -artist="CADILLAC" -title="悲しきRadio Station" 'CADILLAC _ 悲しきRadio Station (Single Version).avi'
:
(色々)
:
$ _
あとは適当なプレイヤーで再生して、メタ情報を確認してみよう。
* メタ情報 [#d5905c79]
アルバム: CADILLAC Best
アーティスト: CADILLAC
タイトル: 悲しきRadio Station
え?こんなバンド知らない?
昔『MamiのRadiかるコミュニケーション』ってラジオ番組で紹介されてた、れっきとした日本のバンドらしいです、はい。
終了行:
[[今さらPython]]
Python版video2mp4は何気に愛用しているんだけど、こいつが呼び出してる ffmpeg にはメタ情報の追加が可能。
アルバム名、アーティスト、そしてタイトルだ。
うちの車はAndroid auto任せでナビも何もないけど、音楽プレイヤーだけはついているのだ……表示にアーティスト名も何もないのは寂しいので、追加できるようにスクリプトを改造する事にした。
* Python版video2mp4.py * [#v95f9023]
#!/usr/bin/python3
import os
import re
import subprocess
import sys
p = re.compile(r'\.(avi|mov|mkv|webm|flv)$',flags=re.IGNORECASE)
p2 = re.compile(r'\-(rem(|ove)|del(|ete)|erase)$',flags=re.IGNORECASE)
# メタ情報
p_album = re.compile(r'\-(album)=(.+)$',flags=re.IGNORECASE)
p_artist = re.compile(r'\-(artist)=(.+)$',flags=re.IGNORECASE)
p_title = re.compile(r'\-(title)=(.+)$',flags=re.IGNORECASE)
f_album = ''
f_artist = ''
f_title = ''
myself = os.path.basename(__file__)
otx = '.mp4'
otx2 = ''
f_rem = False
if(myself == "putaudio"):
otx = '.ogg'
otx2 = '-vn '
p = re.compile(r'\.(avi|mov|mkv|webm|flv|mp4)$',flags=re.IGNORECASE)
for i in sys.argv:
if(p2.search(i) != None):
f_rem = True # あとで戻り値判定をいれ、実行OKなら元ファイルを消すようにする。
elif(p.search(i) != None):
j = re.sub(p,otx,i)
if(not os.path.isfile(j)):
print("不在:"+j)
x = ''
if(f_artist != '' and f_album != '' and f_title != ''):
x = "nice -n 20 ffmpeg "+otx2+"-i \""+i+"\" -metadata ALBUM=\""+f_album+"\" -metadata ARTIST=\""+f_artist+"\" -metadata TITLE=\""+f_title+"\" \""+j+"\""
else:
x = "nice -n 20 ffmpeg "+otx2+"-i \""+i+"\" \""+j+"\""
if(x != ''):
print(x)
subprocess.run(x,shell=True)
elif(p_album.search(i) != None):
x_album = p_album.search(i)
f_album = re.sub('^.+=','',x_album.group())
elif(p_artist.search(i) != None):
x_artist = p_artist.search(i)
f_artist = re.sub('^.+=','',x_artist.group())
elif(p_title.search(i) != None):
x_title = p_title.search(i)
f_title = re.sub('^.+=','',x_title.group())
* 実行 [#m745b21b]
ソースを見ればわかると思うが、video2mp4.pyは、うちでは video2mp4 および putaudio という名前でシンボリックリンクしている。
putaudioの名で呼ばれると、動画などからテキストを抜き出すツールとして動作する。
$ putaudio -album="CADILLAC Best" -artist="CADILLAC" -title="悲しきRadio Station" 'CADILLAC _ 悲しきRadio Station (Single Version).avi'
:
(色々)
:
$ _
あとは適当なプレイヤーで再生して、メタ情報を確認してみよう。
* メタ情報 [#d5905c79]
アルバム: CADILLAC Best
アーティスト: CADILLAC
タイトル: 悲しきRadio Station
え?こんなバンド知らない?
昔『MamiのRadiかるコミュニケーション』ってラジオ番組で紹介されてた、れっきとした日本のバンドらしいです、はい。
ページ名: