Starting work on Techno Trend Premium support (1 Viewer)

draktheas

Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    Linux Support

    Does anyone know if there are any Linux Drivers for the TTPremium line of cards? I just want to know if I need take Linux support into consideration when developing the filter for this project.

    Anyone?

    Thanks,
    Drak
     

    CodeMonkey

    Portal Pro
    December 8, 2004
    360
    30
    North America
    Home Country
    United States of America United States of America
    Re: Linux Support

    draktheas said:
    Does anyone know if there are any Linux Drivers for the TTPremium line of cards? I just want to know if I need take Linux support into consideration when developing the filter for this project.

    Anyone?

    Thanks,
    Drak

    I'm not sure I understand the reason for the question, but MP does not run under Linux and I doubt there is a DirectShow for Linux so my answer would be no (unless I'm missing the point of the question in the first place :) ).
     

    JMS

    Portal Member
    June 17, 2005
    15
    0
    K?swinter-Thomasberg
    Re: Linux Support

    draktheas said:
    Does anyone know if there are any Linux Drivers for the TTPremium line of cards? I just want to know if I need take Linux support into consideration when developing the filter for this project.

    Anyone?

    Thanks,
    Drak

    Actually I'm although not sure what you want to do but for DVB unter Linux this could be a good starting point.

    Jochen
     

    draktheas

    Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    Thanks for the answers. I wasn't sure if MediaPortal ran under Linux or not. It was not clear to me that it did or didn't. That was the point of the question. I guess I have my answer.

    Started work on the DirectShow filters last night. I am going to have to spend some time writing in some stream seperation and parsing code so that I can map the appropriate data to the right output pins from the raw stream that I have access to. Other than that, it should be pretty straight forward.

    I am not sure that I can submit all of my changes in a patch as I have had to touch more files than I would have liked. Most of it was to get the TTPremium card in the selection list for the setup program in the first place. But I guess I will cross that bridge when I come to it.

    Drak
     

    draktheas

    Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    Just a quick update. I haven't dropped off the face of the earth. :)

    I have been having some issues getting the pins from the Directshow filter for the TTPremium card, using the latest (2.19) drivers. It took all weekend to figure out that I need to use moniker binding, because it is a WDM driver. Since I have never worked with WDM drivers before, I didn't even know you had to connect to the filter differently through Directshow than you do with normal directshow filters.

    Hopefully, now that I have figured that out, it will be smoother sailing.

    I will keep you posted,
    Drak
     

    draktheas

    Retired Team Member
  • Premium Supporter
  • December 17, 2005
    77
    2
    So I have come to the point where I am going to develop the final solution for TTPremium support. After some experimentation I have come to only one path to implementing the support. I am not happy about the path I have to take, but none-the-less it's the only path I can see to get it to work.

    I am going to create a DShow source filter that uses the TTPremium SDK through the C# wrappers. This will allow it to connect to the filters MP uses for parsing the NIT (table that describes where to tune the channels) and EIT (table with information about programs) to access the stream in the way they need to. Unfortunately I have the round trip of Native DLL (sdk) -> C# (my wrapper) -> Native DLL (dshow filter) for all data packets. I was hoping I could write support directly in the DShow filter to the TTPremium SDK thus everything stays native all the way and there is no marshalling. For those non-programmers, marshalling from native to non-native code costs CPU cycles and depending on the type of marshalling potentially a lot of CPU cycles. But due to the way that TechnoTrend created their SDK, there is no way to make that work. Unless someone out there knows how to make Directshow and MFC/ATL play nice with each other????

    Anyway, that is my plan. It is not a lot of work, now that I know exactly what I have to do but my time is limited, so I am hoping to get a significant portion of it done this weekend.

    Drak
     

    cleao

    Portal Pro
    March 2, 2005
    87
    0
    59
    Évora, Portugal
    Congratulations,
    I'm folowing your development with the most interest because of the possible use of mdplugi*ns , I'm not a programmer but if you need help in other way just call...

    Keep on the good work, never give up... :wink:
     

    CodeMonkey

    Portal Pro
    December 8, 2004
    360
    30
    North America
    Home Country
    United States of America United States of America
    draktheas said:
    So I have come to the point where I am going to develop the final solution for TTPremium support. After some experimentation I have come to only one path to implementing the support. I am not happy about the path I have to take, but none-the-less it's the only path I can see to get it to work.

    I am going to create a DShow source filter that uses the TTPremium SDK through the C# wrappers. This will allow it to connect to the filters MP uses for parsing the NIT (table that describes where to tune the channels) and EIT (table with information about programs) to access the stream in the way they need to. Unfortunately I have the round trip of Native DLL (sdk) -> C# (my wrapper) -> Native DLL (dshow filter) for all data packets. I was hoping I could write support directly in the DShow filter to the TTPremium SDK thus everything stays native all the way and there is no marshalling. For those non-programmers, marshalling from native to non-native code costs CPU cycles and depending on the type of marshalling potentially a lot of CPU cycles. But due to the way that TechnoTrend created their SDK, there is no way to make that work. Unless someone out there knows how to make Directshow and MFC/ATL play nice with each other????

    Anyway, that is my plan. It is not a lot of work, now that I know exactly what I have to do but my time is limited, so I am hoping to get a significant portion of it done this weekend.

    Drak

    Glad to see such progress! I understand your marshalling concerns, but if it is only for the EIT and NIT tables it would not be marshalled very often, and not for much data when it did happen, correct? We have similar issues where I work interfacing to legacy COM objects using a managed/unmanaged bridge and haven't noticed a performance hit of any kind. I think your plan of moving ahead and implementing is the right one. Full speed ahead :)
     

    Users who are viewing this thread

    Top Bottom