Linux コマンドを使用してオーディオ形式を変換および結合する方法

Linux コマンドを使用してオーディオ形式を変換および結合する方法

FFmpeg flacをインストールする

eric@ray:~$ sudo apt install FFmpeg flac

lame faacをインストールする

eric@ray:~$ sudo apt install lame faac

.ape拡張子のビデオをm4a(mp4)形式に変換する

1. まず、ffmpegコマンドまたはflacコマンドを使用してmav形式に変換し、次にlameを使用してwavをmp4形式に変換します。

eric@ray:~/Music$ ffmpeg -i Gracie-Theme.ape Gracie-Theme.wav

##または eric@ray:~/Music$ flac -d Gracie-Theme.flac Gracie-Theme.wav

2. lameコマンドを使用してMP3に圧縮する

##lame コマンドを使用: VBR 動的ビット レート圧縮を使用します。0 は最高品質、9 は最低品質、デフォルトは 4 です。

eric@ray:~/Music$ lame -v Gracie-Theme.wav

##または、faac エンコーディングを使用して m4a (mp4) または mp3 形式のファイルを取得します。100 は最高品質が 100% であることを意味します。 

eric@ray:~/Music$ faac -w -q 100 Gracie-Theme.wav -o Gracie-Theme.mp4

3. ffmpeg を使用して圧縮し、m4a 形式を取得することもできます。

#ここではffmpegの組み込みaacエンコーディングを使用し、ビットレートを320kに固定します

eric@ray:~/Music$ ffmpeg -i Gracie-Theme.wav -strict experimental -c:a aac -b:a 320k Gracie-Theme.m4a

#ffmpeg を使って 1 つのコマンドで解凍と圧縮を行うこともできます: -map_metadata は曲のメタデータ (名前、歌手など) を保持することを意味します。eric@ray:~/Music$ ffmpeg -i Gracie-Theme.flac -ab 320k -map_metadata 0 Gracie-Theme.m4a

4. バッチスクリプト

#!/bin/bash

*.ape 形式のファイルの場合;
する
ffmpeg -i "$FILE" temp.wav;
lame -b 320 temp.wav "${FILE%.*}.mp3";
rm temp.wav
終わり

複数の曲を含むape/flacファイルの場合

この場合、通常はキュー ファイルがあり、アルバム名、歌手名、各曲の名前、ape/flac ファイルの時間範囲が含まれます。まず上記の方法を使用してファイル全体を MP3 形式に変換し、次に mp3splt ツールを使用して分割します。

cue ファイルを mp3 に分割します。

eric@ray:~/Music$mp3splt -c song.cue -o @n.@t song.mp3

共通パラメータ:

@a: 歌手名

@b: アルバムタイトル

@t:曲名

@n: トラック番号

オーディオの統合

# オーディオの結合(2つのオーディオが重なる)

eric@ray:~/Music$ffmpeg -i first.mp3 -i second.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f mp3 third.mp3

#2 つのオーディオの結合 eric@ray:~/Music$ffmpeg -i d1.mp3 -i d2.mp3 -filter_complex '[0:0] [1:0] concat=n=2:v=0:a=1 [a]' -map [a] j5.mp3

#3 つのオーディオの結合 eric@ray:~/Music$ffmpeg -i title.wav -i content.WAV -i end.wav -filter_complex '[0:0] [1:0] [2:0] concat=n=3:v=0:a=1 [a]' -map [a] synthesis.wav

参考文献

FFmpeg および AAC エンコーディング ガイド https://trac.ffmpeg.org/wiki/Encode/AAC

オーディオ形式の変換とスプライシングを実現する上記の Linux コマンド メソッドは、エディターが皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • LinuxテキストファイルとWINテキストファイルの改行形式変換コマンドの詳しい説明

<<:  Linux システムが VMware にインストールされているかどうかを確認する方法

>>:  JavaScript 組み込みの日付と時刻の書式設定のサンプル コード

推薦する

MySQL データベースの操作とデータ型

目次1. データベース操作1.1 データベースの表示1.2 データベースを作成する1.3 データベー...

HTML テーブルタグチュートリアル (11): 水平方向の配置属性 ALIGN

水平方向では、テーブルの配置を左、中央、右に設定できます。基本的な構文<テーブル配置=&quo...

Reactプロジェクトで要素を使用する方法

React プロジェクトで要素フレームワークを使用するのは今回が初めてです。非常に単純な問題に遭遇し...

Nginx がサーバーの生存状態をパッシブにチェックする詳細な説明

導入定期的にヘルスチェックを送信して、アップストリーム グループ内の HTTP サーバーのヘルスを監...

Vite2.0の落とし穴

目次Viteプロジェクトビルドの最適化他のやっとこれは前回の記事の補足です。設定プロジェクトで遭遇し...

Vue が scss (mixin) をグローバルに導入

目次1. ミックスイン.scss 2. 単一ファイルの使用3. グローバルマウント3.1 依存関係の...

Ajax の JavaScript ソリューションにおける parsererror エラー ケースの詳細な説明

ajax の parsererror エラー (バックグラウンドからフロントエンドに送信される js...

MySQL インストール図の概要

MySQL 5.5 のインストールと設定方法のグラフィックチュートリアルMySQL 5.5 のインス...

centos7.2 オフラインインストール mysql5.7.18.tar.gz

ネットワークが分離されているため、MySQL は yum を使用してインストールできません。ここでは...

ページに間隔を空けてグリッドレイアウトを完璧に実装する方法

典型的なレイアウト例上の写真のように、正方形の真ん中に一定の隙間があり、その隙間は固定されています。...

Docker ベースの ELK を素早く構築する方法

[概要] この記事では、自作の Docker プラットフォームをベースに完全な ELK システムを素...

Ubuntu Server 16.04 MySQL 8.0 のインストールと設定のグラフィックチュートリアル

Ubuntu Server 16.04 MySQL 8.0 のインストールと設定のグラフィックチュー...

CSS スタイルのリセットとクリア (異なるブラウザで同じ効果を表示するため)

異なるブラウザ間でページの表示を一致させるためには、フロントエンド開発において CSS スタイルのク...

HTMLのmarquee属性でテキストを踊らせる

構文: <marquee> …</marquee>モバイル属性マーキーを使用...

Vue でインデックスをキー属性値として使用することが推奨されないのはなぜですか?

目次序文キーの役割差分アルゴリズムにおけるキーの役割ヘッドノードを同期するテールノードを同期する新し...