音ズレの問題
- Windows Server 2003 の WMSからブロードキャストしていて、Silverlightで作成した専用のプレーヤーで受信しています。
2時間を超えるクリップなのですが、最初から再生していて1時間位すると、音がだいぶずれてしまっていました(はっきりとは確認していませんが、音の方が遅れてしまったような気がします)。
1時間くらい経って、1秒くらいはずれていたような印象です。おしゃべりのシーンですが、口と声が全く合っていない状況で、一般的に許容できない範疇と思われ、実用上問題があると判断されます。
プレーヤーを埋め込んでいるWebページを再表示させたら一端ズレは解消されました(その後1時間経ったらまたずれるかも知れません)。
つまり送出側に問題はなさそうですから、Silverlightそのものに何か問題があるのでしょうか?
対処法などはありますでしょうか?
どうしてもなければ、とてもめんどうですが映像を15分位ずつに区切って連続で放送する(clipBeginやclipEnd等を利用できる?)ことを考えようと思っています。
うまい対処法があると助かるのですが。
回答
- 音がずれた後、Silverlightの画面のWebページをリロードすればその時点で音ズレが解消される、と言う情報だけでは元のwmvの音がずれていないという事を照明するのに不足はあるのでしょうか?
では、どのように証明すればいいのでしょうか?
音声と映像の再生速度が物理的にズレるのは当然で、むしろ、それを補正する仕組みが実装されていない限りハードウエアの性能、特性、誤差によっては人間が関知できるほどのズレになってしまうことは当然ではないですか?
特に、音声の再生速度はハードウエアやデバイスドライバに依存していると思われますから、ハードウエアの誤差の影響を強く受ける気がします。
その音声の再生速度に応じて映像のフレームレートを微調整するよう仕組みになっていないのであればズレが生じることは当然だと思われます。
まぁ、私の錯覚だったのでしょう。
Silverlight、残念です。- 回答としてマーク西猫 2009年6月9日 3:30
すべての返信
- WMSから長時間のストリーミングで音が大きくずれる、という問題は今のところ聞いたことがありません。
エンコード前の元のメディアファイルそのもので音ズレはありませんか。あるいは、エンコード後のファイルをWindows Media Playerで再生した場合は音のズレは生じていないことは確認されていますか。
エンコードのプロファイルや設定、再生に利用したマシン環境など、もうすこし詳しい情報をいただけませんか。
もし1時間程度で音がずれることが確実で事実上問題があるような状況ならば、たとえば、http://videos.visitmix.com/MIX09/KEY01のように138分のビデオを流すことはできないと思います。ほかにも長尺のビデオストリーミングはオンデマンドやライブでも利用されています。
この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。 - 音がずれた後、Silverlightの画面のWebページをリロードすればその時点で音ズレが解消される、と言う情報だけでは元のwmvの音がずれていないという事を照明するのに不足はあるのでしょうか?
では、どのように証明すればいいのでしょうか?
音声と映像の再生速度が物理的にズレるのは当然で、むしろ、それを補正する仕組みが実装されていない限りハードウエアの性能、特性、誤差によっては人間が関知できるほどのズレになってしまうことは当然ではないですか?
特に、音声の再生速度はハードウエアやデバイスドライバに依存していると思われますから、ハードウエアの誤差の影響を強く受ける気がします。
その音声の再生速度に応じて映像のフレームレートを微調整するよう仕組みになっていないのであればズレが生じることは当然だと思われます。
まぁ、私の錯覚だったのでしょう。
Silverlight、残念です。- 回答としてマーク西猫 2009年6月9日 3:30
もう少し詳しい情報を頂けませんか。本当に問題であるならば、ディスカッションを途中で終了するのはあまり好ましくありません。
まずWebページをリロードすると音ズレが解消されるという情報があいまいだと思います。リロードするということは、Silverlightのアプリケーションが再読み込みされているので、オンデマンドストリーミングならばメディアの再生位置は先頭に変わっているはずです。そうでないとすれば、これはライブストリーミングのシナリオを想定されていますか。ライブストリーミングにおいても今までに米国などで大きなイベントの中継で使われており、音ズレの話が問題となっていれば、他にも指摘があるかと思います。
3600秒で1秒程度、というSilverlightで再生中に音がズレていると指摘されているメディアの時刻で、元のメディア・エンコード前のソースで映像と音声の音がズレていないかどうか、という話をまず確認しなければ、この問題は正しく解決できないと思います。また単純にWMPとWMSでの再生においてはどうなのかも確認が必要だと思います。
また再生環境やSilverlightのバージョンが示されていないので、Silverlightのトラブルだったとしても開発チームにフィードバックが難しいです。
証明するいちばん簡単な方法は、どこかにそのアプリケーションとメディアファイル、ストリーミングの公開ポイントのURIを公開していただければと思います。それがあれば、米国のSilverlightチームに確認をとることもできます。
Silverlight 2はソフトウェアデコード、ソフトウェアレンダリングなので、再生可能なフレームレートは環境によって変わります。またビデオの解像度やビットレートが高すぎれば、Silverlightによらず、メディア再生の品質はハードウェアやネットワークに依存します。なお、Silverlight自体はアプリケーション実行時にプラグインに対してフレームレートの設定が可能です。
http://msdn.microsoft.com/ja-jp/library/cc838147(VS.95).aspx
Silverlight 3からはハードウェアアクセラレーションを利用できるので、CPU負荷を下げられる可能性があります。
もう少しディスカッションを続けませんか。
この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。もうひとつ気になる点があります。
もしかして、ストリーミング用のメディアが、可変ビットレート(VBR)でエンコードされているということはありませんか。
通常は固定ビットレート(CBR)でエンコードするため、ストリーミングの間に転送されるデータ量は一定になりますが、もしVBRが使われていると、音がずれる原因につながるかもしれません。
もしVBRを利用されている場合、CBRでエンコードしていただければ、音ズレが発生する可能性は低くなると思います。
長尺のメディアであってもストリーミングの場合は、クライアントが保持するストリーミングデータは短いものにすぎず、何時間が経過しようとも、今までの再生時間が音ズレを生み出すとは到底考えられません。
エンコードのプロファイル情報を教えていただけませんか。
この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。


