Текущее время: 28 ноя 2022, 08:58 • Часовой пояс: UTC + 3 часа
Сообщения без ответов | Активные темы

По тюнеру DVB T2

Начать новую темуОтветить на тему Страница 1 из 5 [ Сообщений: 70 ] На страницу   1, 2, 3, 4, 5  След.
Версия для печати Пред. тема | След. тема
АвторСообщение
Сообщение Добавлено: 08 сен 2015, 09:51. Заголовок сообщения:  По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
здравствуйте. Вопрос такой что есть поддержка в драйвере KSPROPERTY_BDA_PLP_NUMBER , в directshow 9 , я не нашел этого описания, как мне это использовать где можно найти пример.

Спасибо. Пишу на delphi/
Профиль 
Сообщение Добавлено: 09 сен 2015, 15:21. Заголовок сообщения:  Re: По тюнеру DVB T2
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:47
Сообщения: 190
Добрый день.

Вам самому придется добавлять определение для KSPROPSETID_BdaDigitalDemodulator. Вот перечисляемый тип данного property set:
Код:
typedef enum {
    KSPROPERTY_BDA_MODULATION_TYPE = 0,
    KSPROPERTY_BDA_INNER_FEC_TYPE,
    KSPROPERTY_BDA_INNER_FEC_RATE,
    KSPROPERTY_BDA_OUTER_FEC_TYPE,
    KSPROPERTY_BDA_OUTER_FEC_RATE,
    KSPROPERTY_BDA_SYMBOL_RATE,
    KSPROPERTY_BDA_SPECTRAL_INVERSION,
    KSPROPERTY_BDA_GUARD_INTERVAL,
    KSPROPERTY_BDA_TRANSMISSION_MODE,
    KSPROPERTY_BDA_ROLL_OFF,
    KSPROPERTY_BDA_PILOT,
    KSPROPERTY_BDA_SIGNALTIMEOUTS,
    KSPROPERTY_BDA_PLP_NUMBER
} KSPROPERTY_BDA_DIGITAL_DEMODULATOR;

Параметр для KSPROPERTY_BDA_PLP_NUMBER размером sizeof(ULONG). При передаче put запроса параметр задает номер PLP от 0 до 254. При указании любого числа <= 0, драйвер переключится на авто режим выборки PLP, который задается микрокодом демодулятора. Этот режим используется по умолчанию при управлении через BDA интерфейсы.

Драйвер принимает как get так и put вызовы.
Профиль 
Сообщение Добавлено: 09 сен 2015, 18:45. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Спасибо огромное за разъяснения, и что ответили. буду пробовать если что отпишусь.
Профиль 
Сообщение Добавлено: 09 сен 2015, 18:58. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Да Это описано в directshow 9

KSPROPSETID_BdaDigitalDemodulator : TGUID = '{EF30F379-985B-4d10-B640-A79D5E04E1E0}';
{$EXTERNALSYM KSPROPSETID_BdaDigitalDemodulator}

type
KSPROPERTY_BDA_DIGITAL_DEMODULATOR = (
KSPROPERTY_BDA_MODULATION_TYPE,
KSPROPERTY_BDA_INNER_FEC_TYPE,
KSPROPERTY_BDA_INNER_FEC_RATE,
KSPROPERTY_BDA_OUTER_FEC_TYPE,
KSPROPERTY_BDA_OUTER_FEC_RATE,
KSPROPERTY_BDA_SYMBOL_RATE,
KSPROPERTY_BDA_SPECTRAL_INVERSION,
KSPROPERTY_BDA_GUARD_INTERVAL,
KSPROPERTY_BDA_TRANSMISSION_MODE
);

{$EXTERNALSYM KSPROPERTY_BDA_DIGITAL_DEMODULATOR}
TKSPropertyBDADigitalDemodulator = KSPROPERTY_BDA_DIGITAL_DEMODULATOR;

Просто добавить то что не хватает из вашего описания , и оставить тот же TGUID = '{EF30F379-985B-4d10-B640-A79D5E04E1E0}';

или нужен другой TGUID ?

Спасибо.
Профиль 
Сообщение Добавлено: 10 сен 2015, 14:44. Заголовок сообщения:  Re: По тюнеру DVB T2
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:47
Сообщения: 190
Вам нужно добавить новые значения после KSPROPERTY_BDA_TRANSMISSION_MODE. Это перечисляемый тип.

GUID тот же самый, только новые ID для KsProperty.
Профиль 
Сообщение Добавлено: 10 сен 2015, 15:09. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Ясно понятно, Спасибо огромное за разъяснения. буду пробовать отпишусь,что получилось.
Профиль 
Сообщение Добавлено: 14 сен 2015, 12:10. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Вопрос такой,можно ли получить с DVB T2 карты весь поток, что бы вывести все каналы разом?
Если можно то как,указывать pid как c dvb s2,или как то по другому.

Спасибо.
Профиль 
Сообщение Добавлено: 15 сен 2015, 16:03. Заголовок сообщения:  Re: По тюнеру DVB T2
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:47
Сообщения: 190
Вывести все каналы одновременно из всех DVB-T2 PLP в один общий TS поток невозможно. Т.е. каждая PLP выглядит как изолированная труба.

Внутри каждой PLP все каналы идут в общем TS потоке, фильтруются программно по PID. Стандартная практика получения PID каждого канала основана на сканировании PAT/PMT/SDT таблиц из TS потока. У Microsoft есть готовые программные инструменты для сканирования TS в виде COM объектов, но все это сделано достаточно "топорно".

ПО Beholder использует собственные инструменты для сканирования и демультиплексирования TS потока.
Профиль 
Сообщение Добавлено: 16 сен 2015, 14:47. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    29 май 2011, 10:27
Сообщения: 661
У нас в кабельном под прием 2 эфирных мультиплексов задействовано 4 физических тюнера, иначе тоже никак...
T7, T8
Профиль 
Сообщение Добавлено: 16 сен 2015, 16:03. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Писал программы для DVB S и S2 , разбор потока TS у меня есть , как получить название каналов это есть,
Думаю так:
1-Узнать сколько PLP их id или номер.
2-переключать PLP в тюнере
3-Получить TS поток этого PLP
4-Разобрать его, по данным названия каналов, найти PID(video,audio) и 2 служебных PID не помню как они называются.

Только если TS поток такой же как используется в DVB S или S2.

Пока думаю так, если что отпишусь.

если в PLP0 идет 3-программы телевидения и 2 радио ,то их можно сразу вывести(показать) с одного PLP?



и еще не большой вопрос:

(
При передаче put запроса параметр задает номер PLP от 0 до 254.
При указании любого числа <= 0, драйвер переключится на авто режим выборки PLP )

это если отправить 0-драйверу ,он перейдет в режим авто PLP, Что это за режим авто PLP.



Спасибо огромное за ответы и помощь.
Профиль 
Сообщение Добавлено: 17 сен 2015, 16:57. Заголовок сообщения:  Re: По тюнеру DVB T2
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:47
Сообщения: 190
Цитата:
Только если TS поток такой же как используется в DVB S или S2.

Такой-же, стандарт ISO общий.

Цитата:
если в PLP0 идет 3-программы телевидения и 2 радио ,то их можно сразу вывести(показать) с одного PLP?

Да, они же замуксированы в общий TS поток. У каждой программы свои метки времени (PCR).

Цитата:
Что это за режим авто PLP.

Это автоматический выбор первого PLP ID, потому как вы не можете знать заранее, сколько PLP на текущем мультиплексе и с какого PLP ID идет отсчет.
Профиль 
Сообщение Добавлено: 18 сен 2015, 06:10. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Ясно, спасибо огромное за информацию.
Профиль 
Сообщение Добавлено: 29 сен 2015, 20:31. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Кому интересно нашел исходники фильтров ,плагинов на DELPHI для написания своих программ, поддерживает [ DVB s, DVB C, DVB T , DVB ATS ], проверил ,откомпилировал ,работает,каналы находит.

Да простят меня модераторы за ссылку для страницы где можно скачать эти библиотеки.
[ http://www.dsp-worx.de/?n=11 ]
Профиль 
Сообщение Добавлено: 04 окт 2015, 09:08. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Здравствуйте. Подскажите как и какой подключить фильтр для получения потока MEDIASUBTYPE_MPEG2_TRANSPORT, фильтры все соединил до MPEG-2 demultiplexer,все нормально,
ошибок нет, К фильтру MPEG-2 demultiplexer не могу ни чего подключить, там 5-пинов из которых 3 только работают, это 1-пин,5-пин и MPEG2 Stream. Нету пинов (Video и Audio). Мне нужно получить весь поток который идет с фильтра DVB-T Capture? там данные идут по 188 байт, или можно этот поток взять с фильтра MPEG-2 demultiplexer ? Но там надо указать pid видео и звука. Застрял на одно месте.

Нашёл что можно добавить фильтр Samlegrabber к фильтру DVB-T Capture.
Ошибок нет но и потока в Samlegrabber я не получаю.


И еще вопрос как можно получить уровень сигнала?

Спасибо.
Вложения:
DVB_T2_beholder.PNG
DVB_T2_beholder.PNG [ 19.15 КБ | Просмотров: 24904 ]
2.PNG
2.PNG [ 20.64 КБ | Просмотров: 24898 ]
Профиль 
Сообщение Добавлено: 04 окт 2015, 12:06. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 60
Сигналы получил но только 2 а не как у все з



procedure TForm1.Timer1Timer(Sender: TObject);
var
FTuner: ITuner;
strength:integer;
Trigger:integer;
begin
if FTuner=nil then exit;
FTuner.get_SignalStrength(strength);
FTuner.TriggerSignalEvents(Trigger);

gauge1.MaxValue:=100;
gauge1.Progress:= strength;

gauge2.MaxValue:=100;
gauge2.Progress:= Trigger
end;

Получение сигнала в FTuner больше нет ни каких.

установил частоту и bandwidth , уровень сигнала появился и меняется в не больших
пределах, т.е. сигнал идет в реальном времени.
Trigger всегда показывает 100% сигнала .
strength колеблется от 60 до 65.

SNR сигнал как найти?

Cигнал появился только тогда когда была запущена программа beholder потом закрыта,видимо настройки тюнера остались при закрытии программы beholder.


И ещё один вопрос , какие параметры указать тюнеру что бы он показал уровень сигнала?


0-перевести тюнер для приёма в DVB T формат (DVB_TERRESRIAL)
1-указать частоту
2-FEC
3- BandWidth(ширина канала)
4- модуляцию 64QAM
5-

и еще что я не знаю.


в directshow нашел что нужно установить но откуда взять данные не понятно,и что задавать.
или данные идут в потоке MPEG 2 ТS настройки тюнера ,если так то тогда как их взять от туда?
или установить в ручную?


var
DVBTLocator: IDVBTLocator;

DVBTLocator.put_Bandwidth();
DVBTLocator.put_LPInnerFEC();
DVBTLocator.put_LPInnerFECRate() ;
DVBTLocator.put_HAlpha();
DVBTLocator.put_Guard();
DVBTLocator.put_Mode();
DVBTLocator.put_OtherFrequencyInUse()
DVBTLocator.put_CarrierFrequency()
DVBTLocator.put_InnerFEC() ;
DVBTLocator.put_InnerFECRate();
DVBTLocator.put_OuterFEC();
DVBTLocator.put_OuterFECRate() ;


данные программ скорее всего одинаковые по всей России DVB T2, кроме канала вещания.(моё мнение)




Спасибо.
Профиль 
Показать сообщения за:  Поле сортировки:    
Начать новую темуОтветить на тему  Страница 1 из 5  [ Сообщений: 70 ]  На страницу   1, 2, 3, 4, 5  След.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Найти:  
Перейти:  
cron