中国de音楽4

中国在住の日本人音楽家による、日々の日記です。

ひたすら検証

 月曜日、上海は曇り時々雨。気温は 15度。
 朝 6時半に起きて 7時半前に家を出て息子を小学校まで送ってくる。雨が降ってなくて良かった。昨夜は結構降っていたのだ。
 帰宅してからは某中国向けゲームの作曲業務のツメの作業である。実は先週くらいから午前中はチョボチョボとこの作曲作業をしていたのだが、なかなかエンジンがかからずに遅々として進まなかった。しかしいよいよ納期が近付いて来た(汗)ケツに火が点いてから慌てるのは昔からの悪い癖だ。でも息子が学校に行ってから、午前11時くらいまでの 2〜3時間の自宅での集中力ったら無い。我ながら自分で関心してしまう程の集中力である。毎日フルタイムでこうだと良いのにね。
 そんなこんなで知恵熱で半ば放心状態で午後から出社。出社してからは今月末のビデオの現場の実験〜検証である。先週末にバックアップ用の MacBook Airで検証したので、今日は本番用の MacBook Proでの検証。目を皿の様にしてコマ落ちやノイズ等々が無いかを確認。同時にバックアップマシンも走らせて同期のタイミングを計る。

 本番用の映像作品『第一部』を暫く走らせていたら、なんとトラブル発生。約 30分を過ぎた辺りから2台のマシンの同期が徐々にズレ始めるじゃないか…。どうもバックアップマシンの方が若干速い。最初は位相がズレた様な音になり、徐々にショートディレイ風になってきて、1時間半の終わり間際には約 0.5秒近くもズレていた。
 …とは言え、実は予想通りだったりする。原因は【ワードクロック】である。コレは以前担当した花火大会の時と全く同様の現象なのでまず間違いない。今日はコレを確かめる為に、わざわざ大袈裟なセッティングにして、敢えてAudio I/Fのクロックを両方とも Internalにして再生を開始してみたのだ。
 去年の年末の上映会イベントの時は、このズレが怖かったので『念のため』クロックジェネレーターを使って 2台の Audio I/Fを S/PDIFで同期していたのだが、この時点では完全な検証が取れていなかったので、あくまで『保険』としての位置付けとしての処置だった。当時は、正直、マルチトラックシーケンサー下での Audio I/F動作状況と、ビデオ放映下での Audio I/F動作状況とは異なるのでは無いか?と疑っていたからだ。
 今まで個人的な解釈としては、ビデオ再生時に於けるオーディオインターフェースの動作は、例えば 30fps等、CPU側で生成するイワユル『フレームレート』に依存して、あくまで『映像』がメインで、映像に付随して裏側のスレッドで音声処理が動作していると思っていた。つまりプレイヤーの再生速度は『映像エンジン』側のクロックに異存するのではないだろうか?と踏んでいたのだ。故に、仮にオーディオ再生エンジンのクロック(44.1KHzとか48KHzとか)が、2台それぞれの I/Fの中のクロックが完全に同期していなかったとしても、ビデオ再生の速度には影響しない筈…と思っていたのだが、今日の実験検証で、これが間違っていた事が判った。
 正解は『ビデオ再生時でも再生速度はオーディオ I/Fのクロックに異存する』という事だ。

 つまり、何らかのバックアップシステムを組む際、例えば 2台のMacでそれぞれ別の Audio I/Fを接続している様な場合は、それぞれの『オーディオ側の』ワードクロックをちゃんと同期しておかないと、内部の水晶発振器(クォーツ)の精度如何では音声のみならず映像もどんどんズレて行く…という事が解った。本来、クォーツなのだから 1日に1秒もズレない筈なのだが、ワタクシが所有する Focusrite Saffire Pro24という古い I/Fに搭載されいている内部クロックは非常に「せっかち」で 1.5時間で 0.5秒くらい進むらしい。『進む』というのは 48KHzなら本来 1秒間に 48,000回のパルスを正確に生成しなければイケナイ所を、多分48,005とか多めに刻んでる…という意味である。でも考えてみたらクォーツの腕時計だって 1つ1つそれぞれ個体差が有るのだから、I/Fに搭載されている水晶発振器だって誤差があって当然だわな(今までそんな事気にした事すら無かったケド)故に長尺のコンテンツには注意が必要って事だ。
 因みに、本番用の映像作品『第二部』の再生テストは Roland OCTA-CAPTUREをクロックマスターにして S/PDIFを使って Saffireをスレーブにして動作させてみた所、1時間45分間、全くズレなかった。位相の山一つ分すらズレていない。スゲー。なんだかスッキリした。
 一応外部のクロックジェネレーター(サンプリング周波数生成用のWord Clock Generator)も持ってるので、本来ならジェネレーターを使った方が正確なクロックが出せるのだが、本番の『トラブル発生率』を鑑みると可能な限りシンプルにした方が良い。特にクロックジェネレータなんて『心臓』みたいな機材だから、もし仮にコレの電源が接触不良なんか起こしたらマスターもスレーブも両方とも死んでしまうからね。上海ならUPSを準備できるが重慶までUPSを持って行く事は出来ないので。やはり安全第一とする!(笑)
 いやぁ…また一つ勉強になった。世の中知らない事はまだまだ多いね。でも考えてみたら、30fpsって一秒間に30コマだけど、48KHzって一秒間に48,000コマなので、そりゃオーディオのクロックから映像タイミングを割り出した方がソフトウェア的には良いに決まってるわな。ワタクシはまだまだ想像力が足りないらしい。日々コレ精進ですな。
ブログランキング・にほんブログ村へ
にほんブログ村