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

По тюнеру DVB T2

Начать новую темуОтветить на тему Страница 3 из 5 [ Сообщений: 70 ] На страницу   Пред.  1, 2, 3, 4, 5  След.
Версия для печати Пред. тема | След. тема
АвторСообщение
Сообщение Добавлено: 28 окт 2015, 13:37. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
нашел проблему, Спасибо за помощь, вся проблема была в самой DELPHI 7, Откомпилировал проект в DELPHI XE8
ни чего не меняя все стал выполнять
hr := pTopology.GetControlNode(0, 1, node_types_list[i], pUnk);

Сигналы получил все.


Вопрос еще такой как получить SNR сигнал?

Но вопросы еще будут по PLP но это позже .


Спасибо всем за помощь кто помогал.
Профиль 
Сообщение Добавлено: 29 окт 2015, 15:46. Заголовок сообщения:  Re: По тюнеру DVB T2
Beholder
Аватара пользователя
Зарегистрирован:
    19 авг 2004, 11:47
Сообщения: 190
Tolyan249
Как я и предполагал ранее, проблема в конвертации заголовочных файлов DirectShow. Delphi7 тут не причем, мы часть заголовков конвертировали сами и это все гарантированно работало.

SNR получить средствами Microsoft невозможно, т.е. просто не предусмотрено в API. У нас свое расширение KsPropertу, при этом даже фильтр "Microsoft DVB-X Network Provider" не требуется для работы. Хотя все MS KsPropertу поддерживаются.
Профиль 
Сообщение Добавлено: 30 окт 2015, 19:00. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
Ясно спасибо.

Вопрос По PLP

topology



if (hr = S_OK) then
hr := pUnk.QueryInterface(IID_IBDA_DigitalDemodulator, demodulytor);

демодулятор найден.
добавил функции в



type
IBDA_DigitalDemodulator = interface(IUnknown)
['{EF30F379-985B-4d10-B640-A79D5E04E1E0}']
(*** IBDA_DigitalDemodulator methods ***)
function put_ModulationType(var pModulationType: ModulationType): HResult; stdcall;
function get_ModulationType(out pModulationType: ModulationType): HResult; stdcall;
function put_InnerFECMethod(var pFECMethod: FECMethod): HResult; stdcall;
function get_InnerFECMethod(out pFECMethod: FECMethod): HResult; stdcall;
function put_InnerFECRate(var pFECRate: BinaryConvolutionCodeRate): HResult; stdcall;
function get_InnerFECRate(out pFECRate: BinaryConvolutionCodeRate): HResult; stdcall;
function put_OuterFECMethod(var pFECMethod: FECMethod): HResult; stdcall;
function get_OuterFECMethod(out pFECMethod: FECMethod): HResult; stdcall;
function put_OuterFECRate(var pFECRate: BinaryConvolutionCodeRate): HResult; stdcall;
function get_OuterFECRate(out pFECRate: BinaryConvolutionCodeRate): HResult; stdcall;
function put_SymbolRate(var pSymbolRate: ULONG): HResult; stdcall;
function get_SymbolRate(out pSymbolRate: ULONG): HResult; stdcall;
function put_SpectralInversion(var pSpectralInversion: SpectralInversion): HResult; stdcall;
function get_SpectralInversion(out pSpectralInversion: SpectralInversion): HResult; stdcall;
function put_PLP(var plpnum: ULONG): HResult; stdcall;
function get_PLP(out plpnum: ULONG): HResult; stdcall;

end;

функции вроде описал но дает ошибку.


KSPROPSETID_BdaDigitalDemodulator нашел, куда и как применить KSPROPERTY_BDA_PLP_NUMBER.


На си нашел


public void SetPlpId(int plp)
{
KsPropertyHelper.KSSetNode(ksProperty, KSPropSets.KSPROPSETID_BdaDigitalDemodulator,
(int)KSPROPERTY_BDA_DIGITAL_DEMODULATOR.KSPROPERTY_BDA_PLP_NUMBER, plp);
}

public int GetPlpCount()
{
return (int)KsPropertyHelper.KSGetNode(ksProperty, KSPropSets.KSPROPSETID_BdaDigitalDemodulator,
(int)KSPROPERTY_BDA_DIGITAL_DEMODULATOR.KSPROPERTY_BDA_PLP_NUMBER, typeof(int));
}
}



protected void SetPlp(int plp)
{
var plpSupported = KsPropertyHelper.KSSupported(GetGraph().TunerPin, KSPropSets.KSPROPSETID_BdaDigitalDemodulator,
(int)KSPROPERTY_BDA_DIGITAL_DEMODULATOR.KSPROPERTY_BDA_PLP_NUMBER);

if (plpSupported.HasFlag(KSPropertySupport.Set))
KsPropertyHelper.KSSetNode(GetGraph().TunerPin, KSPropSets.KSPROPSETID_BdaDigitalDemodulator,
(int)KSPROPERTY_BDA_DIGITAL_DEMODULATOR.KSPROPERTY_BDA_PLP_NUMBER, plp);
}



можете ли вы дать готовый пример получения и установки PLP.


Спасибо за помощь.
Последний раз редактировалось Tolyan249 03 ноя 2015, 03:47, всего редактировалось 1 раз.
Профиль 
Сообщение Добавлено: 01 ноя 2015, 16:29. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
Помогите решить вопрос по PLP.
Последний раз редактировалось Tolyan249 11 ноя 2015, 03:48, всего редактировалось 2 раз(а).
Профиль 
Сообщение Добавлено: 03 ноя 2015, 03:44. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
Вопрос такой еще? как можно получить EPG, Телетехт , субтитры ,если таковы есть ?



Спасибо.
Профиль 
Сообщение Добавлено: 05 ноя 2015, 19:33. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
Попробовал через DVBTLocator2 дает ошибку.

CLSID_DVBTLocator2: Tguid = '{EFE3FA02-45D7-4920-BE96-53FA7F35B0E6}';
IID_IDVBTLocator2: Tguid = '{448A2EDF-AE95-4b43-A3CC-747843C453D4}';

type
IDVBTLocator2 = interface(IUnknown)
function get_PhysicalLayerPipeId(plp: integer): HRESULT; stdcall;
function put_PhysicalLayerPipeId(plp: integer): HRESULT; stdcall;
end;


procedure PlPgraph;
var
locator2: IDVBTLocator2;
hr:hresult;
begin
hr:=CoCreateInstance(CLSID_DVBTLocator2,nil,CLSCTX_INPROC,IID_IDVBTLocator2,locator2);
if (FAILED(hr)) then
begin
WriteLog(SysErrorMessage(hr));
exit;
end;


end;



Пмогите решить проблему с PLP.
Профиль 
Сообщение Добавлено: 20 ноя 2015, 12:02. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
Добрые люди помогите решить вопрос с PLP -KSPROPERTY_BDA_PLP_NUMBER, не знаю как это использовать и примеров не могу найти, есть на си, но не могу перевести в pas. Может кто поможет в этом вопросе. застрял на этом месте, проект программы не движется. весь нет перебрал, то ли еще только начинают писать под DVB-T2 информацию не могу найти. Помогите пожалуйста,может кому еще пригодиться.


Спасибо за помощь ,понимание.
Профиль 
Сообщение Добавлено: 09 янв 2016, 13:58. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
17-01-16
Люди добрые помогите вопрос решить по переключению PLP ,застрял на одном месте,программа дальше не пишится. уже месяц почти в нете не могу найти. Уважаемые Модераторы сайта beholder ,помогите пожалуйста решить этот вопрос можно даже за деньги.


Добрые люди помогите решить вопрос по переключению PLP.

можно за деньги в пределах разумного , пишите на мыло tomoct@mail.ru

Спасибо за помощь.
Профиль 
Сообщение Добавлено: 22 апр 2016, 11:03. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    28 сен 2006, 05:01
Сообщения: 830
Откуда: Russia,Moscow
А как узнавать кол-во PLP в потоке?

У ProgDVB какая-то ошибка, он позволяет установить PLP задав его вслепую (и принимает соответствующие каналы), но кнопка поиска plp не работает. Автор пишет что он использует для всего этого KSPROPERTY_BDA_PLP_NUMBER…
Подскажите что надо сделать чтобы узнать кол-во доступных PLP?
Профиль WWW ICQ 
Сообщение Добавлено: 22 апр 2016, 17:14. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
KSPROPERTY_BDA_PLP_NUMBER вот его я найти и не могу. пытаюсь у администраторов добится , пока молчат. Тоже программа стоит, работает, но plp не переключает.
Профиль 
Сообщение Добавлено: 22 апр 2016, 17:39. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    28 сен 2006, 05:01
Сообщения: 830
Откуда: Russia,Moscow
Ну, у ProgDVB - переключение PLP успешно работает. Однако, только вручную. На автомате - не работает т.к. не может получить кол-во доступных PLP.
Вот хочу узнать как надо получать кол-во доступных PLP. Тогда вероятно автор ProgDVB это починит у себя в софте.
Профиль WWW ICQ 
Сообщение Добавлено: 23 апр 2016, 06:35. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
viewtopic.php?f=10&t=14365&start=15
В этой теме я выкладывал(сами файлы, и проект на си) как это можно получить на СИ,но я пишу на delphi.
Профиль 
Сообщение Добавлено: 07 авг 2016, 10:20. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    28 сен 2006, 05:01
Сообщения: 830
Откуда: Russia,Moscow
А как узнать кол-во существующих PLP на частоте?

Вот у ProgDVB проблема - говорят что бехолдер не умеет детектировать кол-во PLP. И если вещание начинается сразу с PLP1 (нету PLP0) - то ProgDVB его не ловит на автомате.

Объясните там авторам ProgDVB как узнавать кол-во PLP. Или реально бехолдер этого не может (а дешёвая астромета - может)?
Профиль WWW ICQ 
Сообщение Добавлено: 09 сен 2016, 16:38. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    28 сен 2006, 05:01
Сообщения: 830
Откуда: Russia,Moscow
Никто не знает как кол-во PLP узнать?
Профиль WWW ICQ 
Сообщение Добавлено: 28 сен 2017, 17:06. Заголовок сообщения:  Re: По тюнеру DVB T2
Зарегистрирован:
    17 авг 2012, 07:26
Сообщения: 62
Уже 2 года прошло так и не могу решить вопрос по PLP ,может кто что подскажет, и в интернете не нашел и сам догнать не могу что только не перепробовал, если нахожу только на Cи. Можно на мыло отправить.

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