1

私のチームは、Media Center と統合してダッシュボードの中央にビデオを表示する WPF (C#) アプリケーションを作成しました。基本的に、アプリケーションは Media Center を介して TV チャンネルの録画を開始し、10 秒待ってから、録画中のファイルの再生を開始します。アプリケーションが開始されてから 1 年で、約 50 のヘルプ デスク チケットが作成されました。そのうち 45 は Media Center の統合とセットアップ専用です。

Media Center アプリケーションをまとめて削除し、Web カメラのように TV チューナーからのフィードを直接表示するようにするには、実装とアーキテクチャを大幅に変更する必要があると判断しました。残念ながら、ここのチームの誰もこれまでにこれを行ったことがなく、これが行われているリソースやサンプルを見つけることもできません.

TV チューナーからストリームを取得し、Windows フォームまたは WPF アプリケーションで表示できる実用的なコード サンプルを探しています。サードパーティのコンポーネントやソフトウェアを購入することさえいとわない. 一体、私はこれを行う方法を知っている人にお金を払っても構わないと思っています!

正しい方向に向けてください。

ビデオのコード

<MediaKit:MediaUriElement x:Name="MediaContainer" Volume="1" 
     Stretch="Uniform" HorizontalAlignment="Center" 
     UnloadedBehavior="Manual" LoadedBehavior="Play" 
     Height="820.00020739959" Width="1393.843"/>

ビデオを記録するためのコード

DeletePreviousRecordings();
MediaCenterControl mcc = new MediaCenterControl();
mcc.StopAllRecordings();
DateTime recordingStartTime;
DateTime endTime = DateTime.Now.Subtract(TimeSpan.FromDays(1));
int loopCount = 0;
do
{
    if (loopCount++ >= 5)
    {
        // TODO: Show error
        break;
    }
    recordingStartTime = DateTime.Now;
    RecordingEndTime = recordingStartTime.AddMinutes(RecordDuration);
}   //loop count was added below so it knew not to throw until five shots have been missed @ scheduling.
while ((endTime = mcc.RecordMedia(recordingStartTime, Settings1.Default.RecordChannel, RecordDuration, loopCount)) < DateTime.Now);
if (endTime > DateTime.Now)
    RecordingEndTime = endTime;
}
4

1 に答える 1

2

これは間違いなく実行できますが、1 つのテレビ チューナーに絞り込む必要があります。私は実際に WinTV-HVR-1950 を使用してこれを動作させています。しばらく時間がかかりましたが、信号を取得してアプリケーションに送信するには、hauppage ドライバーを操作する必要があります。そのコードを調べる必要がありますが、解決策があると思います。

于 2011-04-20T23:43:39.497 に答える