「私をボールゲームに連れて行ってください!」


1908年 Jack Norworth Albert Von Tilzer チェンソング“私はボールゲームに私を取る”バラードアメリカ  の大好きな娯楽と同義の古典的なステープルされています.114歳以上では、元のバージョンの“ボールゲームに私を取る”はtwo-minute Edison Wax Cylinder 歌手とパフォーマーEdward Meeker , すぐに最愛のクラシックになる.野球のシーズンがこの時に進行しているApril 7th 私たちは手袋をほこり、私たちのコウモリを拾う時間について考え、私たちのPythonの環境にステップアップしてくださいDolby.io ミュージックのマスタリング.
代表的にオーディオエンジニアによって実行され、マスタリングは、通常、曲を作成する最後のステップとして適用される労働集約的なポスト製造プロセスであり、良いから素晴らしいトラックを取る最終的なポーランド語です.1908年に「ボールゲームに連れて行ってください」と記録されて、製作されたので、マスタリングとポスト生産技術は非常に限られていました、そして、それゆえに、オリジナルの記録に音楽マスタリングアルゴリズムを適用することの影響を調査することはおもしろいかもしれません、そして、トラックの口当性に関してある影響.

バージョンを選ぶ


我々は“ボールゲームにテイクミーアウト”を開始する前に、我々は最初の曲のバージョンを選択する必要があります.私たちはよく7回の真中に演奏されたキャッチーな曲を聞きながら、そのバージョンはオリジナルではなく、著作権保護の対象となります.このプロジェクトのために、私たちはhere , として利用可能になりましたpublic domain and free to use . 残念ながら、1908曲の最高品質のバージョンは、MP 3として格納されます.一方、APIでは、無料のロスレスオーディオコーデック(flac)または他のロスレスファイルタイプは、彼らはポストプロダクションプロセスをマスター中に最高の結果を生成するとして好ましいです.  

音楽マスタリングAPI :


手で我々の歌で、それは重い持ち上げの大多数をすることになるツールを紹介する時です.畝The  Dolby.io  Music Mastering API  プログラムは、特定のジャンルやスタイルに固有のサウンドプロファイルの数を介してプログラムをマスターすることができます音楽強化ツールです.しかし、あなたがクレジットカードをプラットホームに加えるならば、あなたがサインアップして、更なる公認クレジットを提出するならば、会社はあなたに試験クレジットを提供しません.
このプロジェクトについては、試用層は十分に利用できる場合はsign up here .
したら、アカウントを作成し、ログインし、アプリケーションのタブに移動すると、“選択”MySense firstCountアプリを選択してください.

ドルビーのスクリーンショットの例.ダッシュボード.
それは注意してくださいすべてのDobly.io メディアメディアAPIは[ Con - rest Framework ]に付属していますhttps://www.redhat.com/en/topics/api/what-is-a-rest-api#:~:text=A%20REST%20API%20(also%20known,by%20computer%20scientist%20Roy%20Fielding.) meaning 彼らは言語不可知論だ.このプロジェクトの目的のために、私はPythonでツールを使用するが、それは他の言語で動作します.

を追加します。IOサーバ


音楽マスタリングAPIを利用するために、我々は最初にMP 3ファイルをクラウドに保存する必要があります.これは、クラウドサービスプロバイダAWS , または、あなたはDolby.io メディアストレージプラットフォーム.簡単にするために、我々はDolby.io 残りのAPI呼び出しでアクセスできるプラットフォーム.
始めるためには、Pythonリクエストパッケージをインポートし、ローカルマシン上のMP 3ファイルへのパスを指定する必要があります.
import requests #Requests is useful for making HTTP requests and interacting with REST APIs
file_path = "Take-Me-Out-to-the-Ball-Game.mp3"
次に、リクエストパッケージと相互作用するURLを指定する必要がありますDolby.io メディア入力アドレス.入力URLに加えて、私たちはまたリクエストを認証するヘッダをフォーマットする必要がありますDolby.io 当社のAPIキーを使用したサーバー.

url = "https://api.dolby.com/media/input"
headers = {
    "x-api-key": "YOUR DOLBY.IO MEDIA API KEY",
    "Content-Type": "application/json",
    "Accept": "application/json",
}
最後に、サーバーに追加されると、ファイルを与えたい名前を指定する本体をフォーマットする必要があります.

body = {
    "url": "dlb://input-example.mp3",
}
URL、ヘッド、および本文をすべて正しくフォーマットして、我々は我々がMP 3ファイルをアップロードすることができる予め署名されたURLをつくるためにリクエストパッケージを使うことができます.
response = requests.post(url, json=body, headers=headers)
response.raise_for_status()
presigned_url = response.json()["url"]

print("Uploading {0} to {1}".format(file_path, presigned_url))
with open(file_path, "rb") as input_file:
    requests.put(presigned_url, data=input_file)

マスタリングジョブの開始


一旦オーディオファイルが雲に移されるならば、我々はマスター仕事を呼び出し始めます.音楽マスタリングAPIは、ヒップホップやロックなどのオーディオジャンルの選択に一致する定義済みの“プロファイル”の数が含まれています.最高の結果のために、ロックのプロフィールでロックロックの曲をマスターする必要がありますが、プロファイルを選ぶのプロセスは、少しの実験を必要とすることができます.
別のサウンドプロファイルを使用して創造的な意図に一致するので、APIは、3つの異なるプロファイルを持つ曲の30秒のセグメントをマスターすることができます“プレビューバージョン”を提供するいくつかの試行を取ることができます.私たちは、この情報を含めるためにこの要求の本体をフォーマットします.
body = {
    "inputs": [
        {"source": "dlb://input-example.mp3", "segment": {"start": 36, "duration": 30}} #36 seconds is the start of the iconic chorus.
    ],
    "outputs": [
        {
            "destination": "dlb://example-master-preview-l.mp3",
            "master": {"dynamic_eq": {"preset": "l"}} #Lets master with the Vocal profile
        },
        {
            "destination": "dlb://example-master-preview-m.mp3",
            "master": {"dynamic_eq": {"preset": "m"}} #Lets master with the Folk profile
        },
        {
            "destination": "dlb://example-master-preview-n.mp3",
            "master": {"dynamic_eq": {"preset": "n"}} #Lets master with the Classical profile
        }

    ]
}
ヘッダはファイルをアップロードするために使用したものと同じですDolby.io サーバーとURLの変更は、音楽マスタリングエンドポイントに一致します.
url = "https://api.dolby.com/media/master/preview"
headers = {
    "x-api-key": "YOUR DOLBY.IO MEDIA API KEY",
    "Content-Type": "application/json",
    "Accept": "application/json",
}
我々は、プロファイルの選択を提供し、マスタリングジョブを開始するには、リクエストパッケージを使用することができます.

response = requests.post(url, json=body, headers=headers)
response.raise_for_status()
print(response.json())
job_id = response.json()["job_id"]
このプロセスは、完了する分を取ることができます.ジョブのステータスを確認するには、同じURLに別のリクエストを書式設定することができます.

url = "https://api.dolby.com/media/master/preview"
headers = {
        "x-api-key": "YOUR DOLBY.IO MEDIA API KEY",
        "Content-Type": "application/json",
        "Accept": "application/json",
    }
params = {"job_id": job_id}
response = requests.get(url, params=params, headers=headers)
response.raise_for_status()
print(response.json())
要求からの応答はジョブの進行を0 %〜100 %の間で出力する.

マスターファイルのダウンロード中


私たちのファイルを使用すると、3つのマスタープレビューをダウンロードする時間ですので、違いを聞くことができますマスター.ファイルをダウンロードするためのワークフローは、残りのDolby.io サイアピスワーク.ファイルをアップロードしたりジョブを起動したりするのと同じように、APIキーでヘッダーをフォーマットし、ドルビーのマスタリング出力を指し示すボディを作ります.IOサーバ.
import shutil #File operations package useful for downloading files from a server.

url = "https://api.dolby.com/media/output"
headers = {
        "x-api-key": api_key,
        "Content-Type": "application/json",
        "Accept": "application/json",
    }

for profile in ["l","m","n"]:

    output_path = "out/preview-" + profile + ".mp3"

    preview_url = "dlb://example-master-preview-" + profile + ".mp3"
    args = {"url": preview_url}

    with requests.get(url, params=args, headers=headers, stream=True) as response:
        response.raise_for_status()
        response.raw.decode_content = True
        print("Downloading from {0} into {1}".format(response.url, output_path))
        with open(output_path, "wb") as output_file:
            shutil.copyfileobj(response.raw, output_file)

ジョブのワークフローのマスタリングの結果をダウンロードするファイルを探してから.
マスタリングされたファイルをローカルで、我々は両方を聞くことができますし、オリジナルと私たちのマスターのいずれかの違いを聞く.畝
1908年にエドワードMeekerによって歌われた“ボールゲームに私を取る”のオリジナルバージョン.
ドルビーと“ボールゲームに私を取る”のマスターバージョン.Ioクラシック音楽プロフィール(プロフィールN)は、広い力学に集中して、オーケストラ器具のために暖かい完全なトーンです.
また、マスターの微妙な違いを聞くことができます.
ドルビーと“ボールゲームに私を取る”のマスターバージョン.Ioボーカル音楽プロフィール(プロフィールL)は、ボーカルをハイライトするために中程度の頻度に集中します.
ドルビーと“ボールゲームに私を取る”のマスターバージョン.io民俗音楽プロフィール(プロフィールM)は、音響器具を混合で光らせるように十分な中間周波数明快さで軽いタッチに集中します.
ドルビーと“ボールゲームに私を取る”のマスターバージョン.Ioクラシック音楽プロフィール(プロフィールN)は、広い力学に集中して、オーケストラ器具のために暖かい完全なトーンです.
このデモの目的のために、私たちは最後の3つのプロファイルをマスターするが、しかし14 different music mastering profiles そこから選ぶ.私のテストから、私は「古典的な」プロフィール(プロフィールN)が好きです、しかし、誰でも異なっています.畝

もっと現代的な例


クラシックはまだ現代的な音をしていないが、トラックはそれが少し明確に、それゆえに聞くためにもっと楽しくすることができます.一般的にはDolby.io 現代音楽のために構築された音楽をマスターしています.この調査の目的のために、私たちは、オリジナルの「フィックス」を解決しようとするよりむしろ、ポストプロダクションマスタリングが影響を及ぼすのを見たかったです.畝
現在、ドルビー.IOチームにはdemo hosted here それはあなたがAPIのユースケースをよりよく例示するライセンス現代的なトラックの例の前後に聞くことができます.ドルビーだから.Ioは彼らがコンテンツをホストするのを許されるそれらの歌への許可を所有します、しかし、このプロジェクトのために、私は興味がある誰でも、著作権法を侵害することを恐れずに彼ら自身のためにそれを調べることができます.

ドルビー.音楽のマスタリングデモavailable here .
音楽マスタリングAPIは、あなたがさらに調査に興味を持っている何かであるならdolby.io documentation ざっと目を引いたりlive demo mentioned above , さもなければ、素晴らしい野球シーズン前と「ルート、ルート、ホームチームのためのルート」に興奮しましょう.