Доступ к TV Tuner Stream/Feed в WPF
Моя команда создала приложение WPF (C#), которое интегрируется с Media Center для показа видео в центре информационной панели. По сути, приложение начинает запись телеканала через Media Center, ожидает 10 секунд и начинает воспроизведение файла во время его записи. За год, прошедший с момента запуска приложения, у нас было создано около 50 заявок в службу поддержки, 45 из которых предназначены специально для интеграции и настройки Media Center.
Мы определили, что нам нужно внести серьезные изменения в реализацию и архитектуру, чтобы удалить приложение Media Center вместе и попытаться показать канал с ТВ-тюнера напрямую, как если бы вы были веб-камерой. К сожалению, никто из команды здесь не делал этого раньше, и мы не можем найти никаких ресурсов или примеров того, как это делается.
Я ищу рабочие примеры кода, которые могут взять поток с ТВ-тюнера и показать его в приложении Windows Form или 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;
}
1 ответ
Это определенно можно сделать, но вам придется сузить до одного ТВ-тюнера. У меня фактически это работает, используя WinTV-HVR-1950. Это заняло у меня какое-то время, но вы должны покончить с драйверами hauppage, чтобы получить сигнал и отправить его в приложение. Мне придется поискать этот код, но я думаю, что у меня может быть ваше решение.