「英検3級 文で覚える単熟語」のCDから取り込んだ全部の音声ファイルを自動で文単位に分割する

英語学習
スポンサーリンク

この記事には「英検3級文で覚える単熟語」(以下「文単」と略記)の1枚のCDまるごとの音声ファイルを文の単位に自動で分割する方法が書いてあります。

大雑把な流れとしては
1.文単の音声ファイルをmp3としてPCに取り込む。
2.mp3音声をmp3DirectCutで分割する。
3.バッチファイルを実行してファイルをフォルダに振り分ける
です。
以下で細かく説明していきます。

スポンサーリンク

何で文に分割するか

長良川の英語学習法は長文の音声の聞き取りです。そのときに文単位でのリピートを使います。アプリの区間リピートの機能を使えば文単位でのリピートも可能ですがこれは結構手間がかかります。文のリピート再生の一番簡単な方法は文に分割することです。

スポンサーリンク

文単の音声ファイルをmp3としてPCに取り込む

分割にはmp3DirectCutというソフトを使うので、文単のCDをmp3として取り込みます。
やり方は以下のページで説明しています。なおこの記事では文単のCD1を取り込んでの作業について書いています。

「 英検3級 文で覚える単熟語」の音声をmp3として取り込む
英語学習テキスト「 英検3級 文で覚える単熟語」の音声CDをmp3音声としてPCに取り込む方法です。 方法 dvdドライブにcdを挿入します。 「Windows Media Player」が起動します。左上の「田」の字のようなアイコンをクリ...

注意点としては取り込んだmp3ファイルのファイル名が「01 トラック 1.mp3」など先頭が0埋めされた2桁の数字であることが必要です。上のページのやり方をすればそうなると思います。

スポンサーリンク

mp3DirectCutのインストール

mp3DirectCutをインストールされてない方は以下のページを参考にしてインストールしてください。

404 NOT FOUND | 長良川ノート
スポンサーリンク

無音区間を使った自動分割

mp3DirectCutを使ってmp3を分割していきます。テキストの音声には一瞬無音になるところ(長文の音声なら文末とか文意の切れ目など)があります。この無音区間を自動で検出し、そこでファイルを分割します。「無音区間を使った自動分割」を使って分割しますので、以下のページの説明を読んできてください。

スポンサーリンク

文単mp3ファイルに適用する音圧レベルと長さ

文で分割される(ピリオドやクエストマーク)ように「音圧レベル」「長さ」を色々変えて何回か分割してみました。全部が思った通りには分割できませんでしたが一番いいと思った値は以下です。
・音圧レベル:-18.1db
・長さ   ;0.5sec

だいたい文で分割されます。

この値でCDまるごとのmp3ファイルを分割します。

スポンサーリンク

「バッチ処理」で「無音区間を使った自動分割」を複数のファイルに適用する

↑の記事で実行した「無音区間を使った自動分割」はある一つのmp3ファイルに対しての操作です。この操作を複数のファイルに適用することを考えます。

バッチ処理のための準備①

ctr + shift + Pで「無音区間の検出」を開きます。「音圧レベル」を「-18.1」、「長さ」を「0.5」「無音区間の検出後のスキップ」を「0」に設定し、そのまま「閉じる」ボタンをクリックして閉じます。

バッチ処理のための準備②

分割されたファイルにつける名前のルールを指定しておきます。ctr + T で「ファイルの分割」を開きます。「作成ファイル名」は「%F-%N」にします。そうしたら「キャンセル」をクリックしてそのまま閉じます。

バッチ処理を実行する

ctr + B で「バッチ処理」ダイアログを開きます。左上の「ソース」の下の「…」をクリックして自動分割を適用するファイルが保存されているフォルダを選択します。次に右側の「動作」で「無音区間の検出」にチェックを入れます(「注意」ダイアログが出るので「OK」をクリック)。さらに下の「出力先」で「選択フォルダ/現在のフォルダ」をクリックし、分割されたファイルの保存先を指定します。「開始」をクリックすると処理が始まります。(途中で停止するときは「開始」右の「停止」を押してください。処理が大量なので間違えたときに処理が終わるまで待っていると時間がかかります。)

全部のmp3ファイルが分割されると指定した保存フォルダは以下の画像のようになっていると思います。 

このままでは使いにくいのでファイル名「01」から始まるファイルは「01」というフォルダに移動し、ファイル名も連番になるように変更します。この操作を「バッチファイル」を作成し、実行することで行います(上で書いたバッチ処理とは別のことです)。

スポンサーリンク

バッチファイルの作成

メモ帳(などエディタ)を起動します。以下のコードをコピペし、ファイル名を「move_rename.bat」などと拡張子を「bat」にして保存します。保存先は分割したmp3ファイルのあるフォルダです(上の画像のフォルダ)。

@echo off
setlocal enabledelayedexpansion

for /L %%i in (1, 1, 76) do (
	set num=%%i
	if %%i lss 10 (
		set num=0!num!
 	)
	mkdir !num! 
	
	for %%f in (!num!*) do move "%%f" !num!
	cd !num!
	set fnm=1
	for %%g in (*.mp3) do (
		if !fnm! lss 10 (
			set fnm=0!fnm!
			ren "%%g" !fnm!.mp3
			set fnm=!fnm:~1!
 		)else (
			ren "%%g" !fnm!.mp3
		)
		set /a fnm=fnm+1
	)
	cd ..
)
endlocal
pause

このバッチファイルでやっていることのおおざっぱな説明は次の通りです。
・01から76という名前のフォルダを作成する(76は文単のCD1のファイル数です。CD2は74です)
・各フォルダにそのフォルダと同じファイル名で始まるファイルを移動する。
・ファイル名を連番になるように変更する。

スポンサーリンク

バッチファイルを実行

このバッチファイルをダブルクリックして実行します。このバッチファイルは大量のファイルを処理します。もしものときのために実行前にバックアップを取っておいてください。

バッチファイルの実行によって連番を振られたフォルダが作成され、その中に連番に変名されたmp3ファイルができます。 

この記事は以上です。

Bitly