Questions about the TV application in mediaportal software (1 Viewer)

A

Anonymous

Guest
Hi folks,
I am new to Mediaportal and during the past days I was tracing the sourcecode and trying to understand how my DVB-T card is working there.
I am not that experienced with directx and multimedia applications so I tried to get some additional information from the internet.
I finally stuck at the 3dapp.cs. It seems like the main windows where all menus and also the tv app is "drawed" on. But I can't exactly see how and where this drawing especially for the tv is done.
And how do you access the functions of the card? By BDA or DirectX?
Please give me some hints so I can understand better what's going on there.
I reviewed the examples from microsoft for tv controls, but I couldn't get much out of it. Can you regard me some good sources to get more informations?
Thank you in advance and I am looking forward to contribute to Mediaportal in the future.
Greetings
 

samuel337

Portal Pro
August 25, 2004
772
0
Melbourne, Australia
Re: Questions about the TV application in mediaportal softwa

WernerMeier said:
And how do you access the functions of the card? By BDA or DirectX?

I'm no expert in MP, so take this with a pinch of salt ;-)

Check out the TVCapture project in MP. For DVB-T cards, check out the DVBGraphBDA.cs file in particular. MP connects to the card using DirectShow which is part of DirectX which then connects to the card using BDA.

Sam
 
A

Anonymous

Guest
Thanks for the reply, I think I am getting closer to understand it.

Can you please tell me the steps to make to get the tv working?
1. How is the tv card beeing accessed?
2. How to build the graph for it?
3. How to connect DirectShow to BDA then?

MP is a really big project so I am having troubles getting all together in my brain :)
greetings
 

samuel337

Portal Pro
August 25, 2004
772
0
Melbourne, Australia
WernerMeier said:
Thanks for the reply, I think I am getting closer to understand it.

Can you please tell me the steps to make to get the tv working?
1. How is the tv card beeing accessed?
2. How to build the graph for it?
3. How to connect DirectShow to BDA then?

MP is a really big project so I am having troubles getting all together in my brain :)
greetings

Um... have you actually checked out DVBGraphBDA.cs yet? The TV card is being accessed using DirectShow by creating a graph. It builds the graph using information from CaptureCardDefinitions.xml, using (I think...) the DirectShowUtil class to do build it. DirectShow connects to the card via the BDA drivers itself - no work is done by MP; MP simply tells DirectShow what to do.

If you check out that file, and track down the various functions that it calls (most of them are in the Core project) you should get a pretty good idea. Of course, understanding all the DirectShow terminology (e.g. filters, graphs, pins etc) would be helpful - do a google search and there should be some good info out there.

HTH

Sam
p.s. it's nice to be humble sometimes, but this time I'm really not an expert on it because I haven't really checked that bit out ;-)
 
A

Anonymous

Guest
Thank you for your answer. I am getting a better idea each day.
Now I am trying to remove all components not needed for DVB-T to identify the ones related to it, to get an better overview.
For now just one question is left: which part actually displays the tv image on the control and do I need to render it all the times as MP does ist?

I read about DirectShow with filters and graphs and I think I understand it.
It is basically an easy technology as far as I can see, and you can do amazing things with it.

I think I will have some more question but really thank you so far for helping me!
greetings
 

samuel337

Portal Pro
August 25, 2004
772
0
Melbourne, Australia
WernerMeier said:
Thank you for your answer. I am getting a better idea each day.
Now I am trying to remove all components not needed for DVB-T to identify the ones related to it, to get an better overview.
For now just one question is left: which part actually displays the tv image on the control and do I need to render it all the times as MP does ist?

I read about DirectShow with filters and graphs and I think I understand it.
It is basically an easy technology as far as I can see, and you can do amazing things with it.

I think I will have some more question but really thank you so far for helping me!
greetings

Here's where my knowledge gets really fuzzy...

From what I can gather, after Timeshifting is setup by MP through DVBGraphBDA.cs, there is a property somewhere that gives the file path to the timeshifting file. MP passes this file path to gPlayer.cs (in the Core project) which then decides what type of video it is, in this case - it uses the StreamBufferPlayer9.cs code to play it. I imagine that in the MyTV screen, it is just the gPlayer class drawn into a specific size.

I'm not sure how it works when timeshifting is not on though...

HTH

Sam
 

Users who are viewing this thread

Top Bottom