diary/Kojima/2015-08-19
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[diary/Kojima]]
・動画と音声の分割,結合(その2)
画像で困ればnetpbm,動画で困ればffmpeg,と言われている通...
この手の作業を自動化するにはffmpegが使えるのでは,とあれ...
ffmpegの場合,-vn オプションを指定すれば画像が,-an オプ...
この機能を指定すればステレオ片チャンネルの動画ファイルか...
[[このあたり:https://trac.ffmpeg.org/wiki/AudioChannelMan...
自前で5.1chなデータなんてのも作れるらしい.
とりあえずやりたいことは片チャンネルを欠くステレオ音声を...
ということで,音声をモノラルで取りだすのはこんな感じ.
ffmpeg -y -i $infile -vn -ac 1 -af "volume=5dB" temp.aac
一方,音声なしの動画データは -an で作れ,CODECを変える必...
ffmpeg -y -i $infile -an -vcodec copy temp.mp4
最終的にこれらを一つにまとめるには,-i オプションで入力フ...
ffmpeg -i temp.mp4 -i temp.aac $newfile
これらをまとめてシェルのforループから回せるように,st2mon...
#!/bin/sh
infile=$1
ffmpeg -y -i $infile -vn -ac 1 -af "volume=5dB" temp.aac
ffmpeg -y -i $infile -an -vcodec copy temp.mp4
ffmpeg -i temp.mp4 -i temp.aac New/$infile
あとは,作業用ディレクトリに変換が必要な動画ファイルを集...
$ ls
316-1-01.mp4 316-1-06.mp4 316-1-11.mp4 316-2-04.mp4 ...
316-1-02.mp4 316-1-07.mp4 316-1-12.mp4 316-2-05.mp4 ...
316-1-03.mp4 316-1-08.mp4 316-2-01.mp4 316-2-06.mp4 ...
316-1-04.mp4 316-1-09.mp4 316-2-02.mp4 316-2-07.mp4 ...
316-1-05.mp4 316-1-10.mp4 316-2-03.mp4 316-2-08.mp4 ...
先に作ったスクリプトに食わせてやるだけ.
$ for i in 316*.mp4 ; do
> ../st2mono.sh $i
> done
(temp.aac作成)
ffmpeg version 2.5.4 Copyright (c) 2000-2015 the FFmpeg ...
built on Feb 28 2015 15:37:07 with gcc 4.8.4 (GCC)
configuration: --prefix=/usr --libdir=/usr/lib64
..
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '316-1-01.mp4':
...
Duration: 00:04:00.47, start: 0.021333, bitrate: 918 k...
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637...
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D...
...
size= 2427kB time=00:04:00.44 bitrate= 82.7kbits/s ...
video:0kB audio:2427kB subtitle:0kB other streams:0kB gl...
(temp.mp4作成)
ffmpeg version 2.5.4 Copyright (c) 2000-2015 the FFmpeg ...
...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '316-1-01.mp4':
...
Duration: 00:04:00.47, start: 0.021333, bitrate: 918 k...
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637...
Metadata:
handler_name : VideoHandler
Stream #0:0(und): Video: h264 ([33][0][0][0] / 0x002...
Metadata:
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
...
video:22958kB audio:0kB subtitle:0kB other streams:0kB g...
(両者を合成)
ffmpeg version 2.5.4 Copyright (c) 2000-2015 the FFmpeg ...
...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'temp.mp4':
...
Duration: 00:04:00.47, start: 0.021000, bitrate: 784 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x316376...
...
Input #1, aac, from 'temp.aac':
Duration: 00:04:02.13, bitrate: 82 kb/s
Stream #1:0: Audio: aac (LC), 48000 Hz, mono, fltp, 8...
[libx264 @ 0x70e120] using SAR=1/1
[libx264 @ 0x70e120] using cpu capabilities: MMX2 SSE2Fa...
[libx264 @ 0x70e120] profile High, level 3.0
...
Output #0, mp4, to 'New/316-1-01.mp4':
Metadata:
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #1:0 -> #0:1 (aac (native) -> aac (libfaac))
Press [q] to stop, [?] for help
frame= 7207 fps=128 q=-1.0 Lsize= 24891kB time=00:04:0...
video:22205kB audio:2427kB subtitle:0kB other streams:0k...
[libx264 @ 0x70e120] frame I:38 Avg QP:20.25 size: 2...
[libx264 @ 0x70e120] frame P:2598 Avg QP:23.53 size: ...
[libx264 @ 0x70e120] frame B:4571 Avg QP:28.00 size: ...
[libx264 @ 0x70e120] consecutive B-frames: 4.1% 27.3% 2...
...
このスクリプトで作成した動画ファイルは,無事モノラル音声...
#ref("mono_01.jpg")
GUIなaudacityとavidemuxでやるのに比べて,
スクリプト経由でffmpegを回すと人手がかからないのでずっと...
こういう処理がちゃっちゃと組めるのがLinux/Unix環境の魅力...
- と言っても、人手なら2、3つ間違えたら気づくミスを、スク...
#comment
終了行:
[[diary/Kojima]]
・動画と音声の分割,結合(その2)
画像で困ればnetpbm,動画で困ればffmpeg,と言われている通...
この手の作業を自動化するにはffmpegが使えるのでは,とあれ...
ffmpegの場合,-vn オプションを指定すれば画像が,-an オプ...
この機能を指定すればステレオ片チャンネルの動画ファイルか...
[[このあたり:https://trac.ffmpeg.org/wiki/AudioChannelMan...
自前で5.1chなデータなんてのも作れるらしい.
とりあえずやりたいことは片チャンネルを欠くステレオ音声を...
ということで,音声をモノラルで取りだすのはこんな感じ.
ffmpeg -y -i $infile -vn -ac 1 -af "volume=5dB" temp.aac
一方,音声なしの動画データは -an で作れ,CODECを変える必...
ffmpeg -y -i $infile -an -vcodec copy temp.mp4
最終的にこれらを一つにまとめるには,-i オプションで入力フ...
ffmpeg -i temp.mp4 -i temp.aac $newfile
これらをまとめてシェルのforループから回せるように,st2mon...
#!/bin/sh
infile=$1
ffmpeg -y -i $infile -vn -ac 1 -af "volume=5dB" temp.aac
ffmpeg -y -i $infile -an -vcodec copy temp.mp4
ffmpeg -i temp.mp4 -i temp.aac New/$infile
あとは,作業用ディレクトリに変換が必要な動画ファイルを集...
$ ls
316-1-01.mp4 316-1-06.mp4 316-1-11.mp4 316-2-04.mp4 ...
316-1-02.mp4 316-1-07.mp4 316-1-12.mp4 316-2-05.mp4 ...
316-1-03.mp4 316-1-08.mp4 316-2-01.mp4 316-2-06.mp4 ...
316-1-04.mp4 316-1-09.mp4 316-2-02.mp4 316-2-07.mp4 ...
316-1-05.mp4 316-1-10.mp4 316-2-03.mp4 316-2-08.mp4 ...
先に作ったスクリプトに食わせてやるだけ.
$ for i in 316*.mp4 ; do
> ../st2mono.sh $i
> done
(temp.aac作成)
ffmpeg version 2.5.4 Copyright (c) 2000-2015 the FFmpeg ...
built on Feb 28 2015 15:37:07 with gcc 4.8.4 (GCC)
configuration: --prefix=/usr --libdir=/usr/lib64
..
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '316-1-01.mp4':
...
Duration: 00:04:00.47, start: 0.021333, bitrate: 918 k...
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637...
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D...
...
size= 2427kB time=00:04:00.44 bitrate= 82.7kbits/s ...
video:0kB audio:2427kB subtitle:0kB other streams:0kB gl...
(temp.mp4作成)
ffmpeg version 2.5.4 Copyright (c) 2000-2015 the FFmpeg ...
...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '316-1-01.mp4':
...
Duration: 00:04:00.47, start: 0.021333, bitrate: 918 k...
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637...
Metadata:
handler_name : VideoHandler
Stream #0:0(und): Video: h264 ([33][0][0][0] / 0x002...
Metadata:
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
...
video:22958kB audio:0kB subtitle:0kB other streams:0kB g...
(両者を合成)
ffmpeg version 2.5.4 Copyright (c) 2000-2015 the FFmpeg ...
...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'temp.mp4':
...
Duration: 00:04:00.47, start: 0.021000, bitrate: 784 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x316376...
...
Input #1, aac, from 'temp.aac':
Duration: 00:04:02.13, bitrate: 82 kb/s
Stream #1:0: Audio: aac (LC), 48000 Hz, mono, fltp, 8...
[libx264 @ 0x70e120] using SAR=1/1
[libx264 @ 0x70e120] using cpu capabilities: MMX2 SSE2Fa...
[libx264 @ 0x70e120] profile High, level 3.0
...
Output #0, mp4, to 'New/316-1-01.mp4':
Metadata:
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #1:0 -> #0:1 (aac (native) -> aac (libfaac))
Press [q] to stop, [?] for help
frame= 7207 fps=128 q=-1.0 Lsize= 24891kB time=00:04:0...
video:22205kB audio:2427kB subtitle:0kB other streams:0k...
[libx264 @ 0x70e120] frame I:38 Avg QP:20.25 size: 2...
[libx264 @ 0x70e120] frame P:2598 Avg QP:23.53 size: ...
[libx264 @ 0x70e120] frame B:4571 Avg QP:28.00 size: ...
[libx264 @ 0x70e120] consecutive B-frames: 4.1% 27.3% 2...
...
このスクリプトで作成した動画ファイルは,無事モノラル音声...
#ref("mono_01.jpg")
GUIなaudacityとavidemuxでやるのに比べて,
スクリプト経由でffmpegを回すと人手がかからないのでずっと...
こういう処理がちゃっちゃと組めるのがLinux/Unix環境の魅力...
- と言っても、人手なら2、3つ間違えたら気づくミスを、スク...
#comment
ページ名: