SDK for TT 1.2 Premium / Nexus-T / SS1 (1 Viewer)

smokeman

Portal Member
December 1, 2004
33
0
it's great to see someone looking into this,
It is going to be another few months before I get around to it.
We are just digging the basement for my new house :)
 

draktheas

Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    So after a little research (and I mean a little), there are a few ways I could go with this:

    1) Hardcode the functionality we need into several places in MP and talk directly to the TT API. This is not good as it will polute the current MP code base with a lot of special case code and it's not very useful given that MP appears to want to link to a Directshow graph with it's components.

    2) Build a Directshow graph that talks to the TT API and has output pins that I can link to the components used in MP. This seems to be the way that the SS2 was done. However, the SS2 already had a Directshow filter to hook into. So I would have to write the filter, the DVBGraphTTPremium component, and the appropriate code in the device scan to pickup the new TT Directshow filter.

    3) Attempt to create a BDA driver that talks to the TT API. As I don't know much about the requirements of BDA, this would take more time and be more error prone. But this would also be the most flexible approach as it would allow any software supporting BDA to access the TT Premium card through my work.

    I am heavily leaning toward option 2 right now, because it seems to be the most flexible given the current knowledge that I have. Any opinions, advise, or comments?

    Drak
     

    JMS

    Portal Member
    June 17, 2005
    15
    0
    K?swinter-Thomasberg
    draktheas said:
    Yeh, I have downloaded and looked at the DVB.NET wrapper. However, it is missing some key functionality in order to implement the TT Premium in Media Portal.

    I am not sure if DVB.NET is even actively being updated anymore.

    :D Is is - the last beta update is around 4 days old, current release notes can be found in the forum. Although my main development path is still recording and as I mentioned in the Hauppauge Forum (the link some posts above) I don't think that the existing implementation can provide much help in everything around user interface. Personally if I would decide to open the TT Premium access I would prefer option 3) in the previous post. I didn't dive into all the Direct Show stuff very deep and scratched only the surface (while extending DVB.NET to the Nova-SE2/Nova-S Plus) but the required funcionality of a BDA support doesn't seem so complicated. Although having the PID limitiation of 8 filters at a time will make a standard graph including the BDA TIF almost impossible since it would eat up most of the capacity. The most tricky part would be around that - a tuner and TS generating capture filter doesn't sond that hard [opinion after surface scratching - remember].

    Jochen
     

    hani

    Portal Member
    December 9, 2005
    22
    0
    I don't know much about the BDA thing
    but I have implemented a "hard code" wrapper(hardware mode only) around the TT API.
    I built my code on the top of the current SS2 implementation(GUI only)
    personllay I did not like to do it this way but it was the only option
    available to me.
    I have stopped working on it for a while but I woud love to join the developement team and share my code with you guys.

    most of the DVB application using TT API some of them using dvbcore.
    and others trying to use Directshow filters,
    but I think BDA is the way to go, this may anable other people outside
    the MP develpment team to contribute.

    I suggest creating sticky in the develepment area so we can share
    all the info with other developers(Agree and the others....)

    JMS I really like your VCR.NET, keep up the good work
     

    draktheas

    Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    After a little more research and superb amounts of frustration at the lack of documentation for BDA. I have decided that BDA drivers are beyond my capabilities as a developer.

    If anyone has a good source for BDA development information, I would be happy to look it over and re-evaluate my opinion. But at this point I am not familiar enough with driver development or BDA to do this kind of work.

    So I am going to go with the second option which is to develop a Directshow source filter that provides the seperate output pins that I can hook into MP. This will most closely mirror the development of the SS2 solution for MP and as well as being a lot easier for me or others to maintain in the long run.

    I am curious, has anyone attempted to develop a Directshow filter in .NET or C# yet? I have found a couple of sources through a google search, but no confirmed .NET Directshow filters or example code. I can certainly experiment with this option, but I would rather not waste time if it is a dead end. Ultimately, I may have to write in C++ just for performance reasons anyway. I would just like to know if this is even a concrete option at this point.

    Thanks all,
    Drak
     

    JMS

    Portal Member
    June 17, 2005
    15
    0
    K?swinter-Thomasberg
    The DVB.NET 2.6 Beta for which I provided a link above includes a skeleton Direct Show filter (see BDA\JMS\DVB\Provider\BDA\DirectShow\Filters and therein PIDFilter and PIDPin). For my purpose it's working but it has some major limitiations (maybe at least you can take a look on it):

    1. It's an In-Memory filter and not registered or creatable from the outside. Personally I think this is not a major issue but I didn't check.

    2. It's a consuming only filter. So it doesn't deal with memory allocation or pushing samples through the graph. As a BDA outsider as well I have the strong feeling that this can be much of work to do.

    3. It's not stable - ok, it is right now BUT when I create the graph in an application which is marked with [STAThread] - which is the normal case - it leaks memory! On a [MTAThread] it runs fine. I think this is some issue with garbage collection in the concreate situation with a STA main thread and .NET code running on COM created threads - it has to do with the automatically created Run-time-Callable Wrappers which will not be freed. I reported this to Microsoft but got no response (here, I don't know, if you can see the thread without registering). For now and my goal I got a work-around but this is not sufficient - especially the trick will no longer work with .NET 2.0.

    To summerize: don't give up so fast and try to have Fun 8)

    Jochen
     

    draktheas

    Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    Thanks for the info. I will take a look at the filter you have. I am by no means giving up on this project. I am just not going the BDA route as referenced in my last post.

    Thanks again,
    Drak
     

    Users who are viewing this thread

    Similar threads

    Thanks for that. I'll give it a try.
    Thanks for that. I'll give it a try.
    I was wondering whether anyone could recommend a specification for dedicated MP1 client machines where we get the best bang for...
    Replies
    27
    Views
    2K
    Just to be clear, I am talking about the GitHub access to the source code - using the Code button. I noticed that there is a link 'MediaPortal 1.36 Release' at the right-hand side of the page that takes me to page that has a link to the source code at the bottom of the page. That link seems to be virus free (according to Windows 10)...
    Just to be clear, I am talking about the GitHub access to the source code - using the Code button. I noticed that there is a link...
    I have tried to download the MediaPortal-1 of vs 1.36 source code and Windows 10 is saying it contains a virus. I have never had a...
    Replies
    1
    Views
    317
    I eventually came across the TwinHan driver CD that was included with the original product. The CD contains numerous drivers for the different TwinHan tuner models, but the drivers are for Win 2K (32-bit only) and Win XP (32-bit and 64-bit). The drivers install directly on Vista, and the drivers can be installed on Win 7 and Win 10...
    I eventually came across the TwinHan driver CD that was included with the original product. The CD contains numerous drivers for...
    Hi, went from a 1.29 install (working, reinstalled for other reasons) on a fairly fresh and fully updated Windows 10 system for a...
    Replies
    24
    Views
    3K
    When I tested MP 2.5 some months ago using TVE3.5, I found that "scan for channels" failed to find any channels when I selected a DVB-T2 tuner (a TBS 6284) :(, but succeeded when I used a DVB-T tuner (a Pinnacle 2000i) :). Obviously the Pinnacle found only those channels broadcast in DVB-T MUXes (in the UK we have both DVB-T MUXes and...
    When I tested MP 2.5 some months ago using TVE3.5, I found that "scan for channels" failed to find any channels when I selected a...
    Hi all Running 1.7.1.0 TV Server as part of a full upgrade to MP2 2.5 setup After some problems with retuning (solved -...
    Replies
    3
    Views
    776
    It's getting weirder..... If I remove all the IP cards in the TVServer setup and then add them back I can scan the M3u and tune the stations but if I rescan it on the same card it just keeps updating the 1 channel. My brain is melting.........
    It's getting weirder..... If I remove all the IP cards in the TVServer setup and then add them back I can scan the M3u and tune the...
    Having great fun with this still. I have a fairly good PC setup, Ryzen 5 8500g, Msi Pro 650M-P with 32GB of RAM with a TBS 6281 and...
    Replies
    2
    Views
    239
    Top Bottom