7

Expression Encoder SDK を使用して Web カメラのライブ録画をエンコードし、IIS 7.5 および Media Services 4 をサポートする Web サーバーに公開し、SmoothStreamingClient で表示しています。

ただし、リアルタイムの会議ソリューションを目指しているため、ローカル プレビューとリモート再生の間の 20 秒の待ち時間を大幅に短縮する必要があります。

2 秒のレイテンシーを得るために Live Smooth Streaming を構成できることをいくつかの場所で読みましたが、そのようなソリューションを構成する方法を説明するチュートリアルは見つかりませんでした。消費する側。

これは、キャプチャしたビデオをエンコードするために使用しているコードです。

// Aquires audio and video devices
EncoderDevice video = EncoderDevices.FindDevices(EncoderDeviceType.Video).Count > 0 ? EncoderDevices.FindDevices(EncoderDeviceType.Video)[0] : null;
EncoderDevice audio = EncoderDevices.FindDevices(EncoderDeviceType.Audio).Count > 0 ? EncoderDevices.FindDevices(EncoderDeviceType.Audio)[0] : null;

// Create a new device source. We use the first audio and video devices on the system
job = new LiveJob();
LiveDeviceSource deviceSource = job.AddDeviceSource(video, audio);

// sets preview window to winform panel hosted by xaml window
deviceSource.PreviewWindow = new PreviewWindow(new HandleRef(prevWindow, prevWindow.GetHandle));

// Make this source the active one
job.ActivateSource(deviceSource);

job.ApplyPreset(LivePresets.VC1IISSmoothStreamingLowBandwidthStandard);

PushBroadcastPublishFormat format = new PushBroadcastPublishFormat();
format.PublishingPoint = new Uri(path);

// Adds the publishing format to the job
job.PublishFormats.Add(format);

job.StartEncoding();

このコードに追加して、待ち時間を短縮できるものはありますか? そうでない場合、Smooth Streaming が提供するはずのいわゆる「低遅延サポート」をどこで設定できますか?

前もって感謝します!

4

1 に答える 1

1

IIS は、モバイル ストリームのセグメント サイズの変更のみをサポートしていると思います。ただし、これらのセグメント サイズを小さくしてから、何らかの方法でモバイル デバイスを模倣すると、レイテンシーが確実に低下します。

「ライブ スムーズ ストリーミング パブリッシング ポイント」セクションの詳細タブで、セグメントの先読みを下げることもできます。

全体として、この機能が IIS でサポートされているようには見えません。私のアドバイスは、現在の状態の HTTP ストリーミングで最大 2 秒未満の遅延が発生することはないため、会議用の別のソリューションに目を向けることです。

于 2011-07-03T06:10:45.430 に答える