Xboxにはエンコーダ(=ドルビーインタラクティブコンテンツエンコーダ)が搭載されているので、きっと簡単にドルビーデジタル対応できるだろうと考えていたのですが、実際はけっこう大変でした。リアルタイムにエンコードは出来るけれどプリ・エンコードされたデータは直接出力できない仕様だったんです。ストリーミングは非常に困難でした。ADX」という技術が応用できるのではないか、という話になりました。ADXの機能のひとつで、非同期型のマルチストリーム再生とは対照的に、複数の音声トラックを1つのファイルにまとめて再生することができます。同期した複数の音声を切り替えて再生することができるので、これはドルビーデジタル対応に使えるのではないかと考えた訳です。実際にAIXに5.1chデータを組み込んでストリームしてみたら、上手く行きました。PS2でのドルビーデジタル対応を検討していた時、いくつかドルビーデジタルに対応したソフトを調べたのですが、ドルビーデジタルとアナログの同時出力に対応したソフトって、実はほとんどないんですよ。そこで、ウチはその同時出力に対応しよう、ということになりました。それは、とても理想的な仕組みだと思います。それで実際に試してみたのですが、最初、オンメモリに小さな容量の5.1chデータを置いて鳴らすというところまではスムーズにできました。その後、ストリーミングに挑戦していくわけですが...、これがなかなか大変でした。PS2の場合、エンコーダは搭載されていませんから、プリ・エンコードしたAC3ストリームを用意しなければなりません。言っても、AC3ストリームを直接流すことはできないので、IEC61937形式に変換しなければなりません。そこで、AC3の英文資料を片っ端から読み漁り、パケットの分割方法とか、パディングの仕方とか、どうやってS/PDIFとしてデータを吐き出すかとか、いろいろな情報を集めていきました。それらの情報をもとにADXで音を鳴らしてみたら、今度は内部的な問題が発生し、音がブチブチと途切れてしまったんです。そこで、ADX自体の内部調整が必要だということが判明しました。社内のADX開発チームに改良をお願いしていたのですが、当時、他の案件で手一杯でなかなか進まなかったんです。そんな時にジョンさんと何度かお会いする機会があって、会うたびに「どうですか?」って聞かれて、苦しかったです(笑)。ハハハ、それはすみませんでした(笑)。結局、対応できるまでに10ヶ月以上かかってしまいました。デジタルとアナログの同時出力を実現した例って、今までに無かったので、そのためのリサーチと調整が大変でしたね。「理論的に可能」であっても「技術的に可能」かどうか見当が付かなかったんです。具体的にどうやって実現するかという、基本的なところから模索する必要がありました。情報収集が大変でした(笑)。対応して頂けたのは、私たちにとっても、デベロッパーさんにとっても、本当に嬉しいことだと思います。オプティカルケーブルを繋いでいる人もそうでない人もいるわけですから、デジタルとアナログの同時出力によって、オプションで選択しなければいけないような面倒をユーザに強いる必要がなくなりますからね。オペレーションはなるべく少なくして、ユーザ側の負担をできるだけ軽くしたいですからね。開発時も仕様がシンプルになりますから、メリットは大きいと思います。苦労して対応した甲斐があったなぁ、と。いう意味では、ミドルウェアベンダーさんって、ユーザとデベロッパーとの橋渡し的な役割をはたしていますよね。確かにそうかもしれませんね。~当サイト内の他社商標について~。