MP2 - Source code for TvEngine3? (currently only available as package) | Page 3

Discussion in 'Plugin Development' started by Tuggax, June 16, 2017.

Tags:
  1. netexplorer
    • Premium Supporter

    netexplorer MP Donator

    Joined:
    January 21, 2009
    Messages:
    727
    Likes Received:
    69
    Ratings:
    +101 / 1
    Home Country:
    Germany Germany
    Show System Specs
    There was a plug-in called TVWishlist for that purposes, but the developer left MediaPortal.


     
  2. Google AdSense Guest Advertisement



    to hide all adverts.
  3. Owlsroost
    • Team MediaPortal

    Owlsroost Development Group

    Joined:
    October 28, 2008
    Messages:
    5,506
    Likes Received:
    2,777
    Location:
    Cambridge
    Ratings:
    +4,063 / 1
    Home Country:
    United Kingdom United Kingdom
    Show System Specs
    ...with the source code for it here - huha001/TvWishList
     
  4. bilkusg

    bilkusg Portal Member

    Joined:
    March 12, 2011
    Messages:
    14
    Likes Received:
    2
    Ratings:
    +2 / 0
    Home Country:
    United Kingdom United Kingdom
    I'm still working on this - I can rebuild the TVServer and use it no problem on my live system. But the SetupTV GUI doesn't work - it crashes as soon as I start it. According to the event log: BadImageFormatException. If I try to run the TVServer in debug mode it complains about TvBusinessLayer.dll which is strange because it was just rebuilt at the same time....

    So I'm obviously building this bit wrongly somehow. Any ideas?
     
  5. morpheus_xx
    • Team MediaPortal

    morpheus_xx Lead Dev MP2

    Joined:
    March 24, 2007
    Messages:
    10,856
    Likes Received:
    4,680
    Ratings:
    +6,704 / 11
    Home Country:
    Germany Germany
    Show System Specs
    That usually happens due to different CPU platforms.

    You should set all SetupTV project (as start project) in build config to "x86". Other libraries might remain AnyCPU, but if you want to be sure use x86 there as well.

    Some more details:
    If the main executable is targeting AnyCPU, it will take the 64 bit .NET framework on 64 bit systems. Then it will fail to load x86 targeted assemblies.
     
  6. bilkusg

    bilkusg Portal Member

    Joined:
    March 12, 2011
    Messages:
    14
    Likes Received:
    2
    Ratings:
    +2 / 0
    Home Country:
    United Kingdom United Kingdom
    I've now confirmed that the problem with SetupTV was as you suggested and changing the project to build x86 fixed the problem. I have the functionality I want more or less working, but haven't yet found a way of turning it into a separate plugin for MP2. That's the next stage.....

    Incidentally, quite a lot of the dlls expected by the TVLibrary nuget package as references aren't built by the instructions above so you either need to retain the distributed copies of those files or struggle with building lots more of MP1......
    Or have I missed something silly ( again? )
     
  7. morpheus_xx
    • Team MediaPortal

    morpheus_xx Lead Dev MP2

    Joined:
    March 24, 2007
    Messages:
    10,856
    Likes Received:
    4,680
    Ratings:
    +6,704 / 11
    Home Country:
    Germany Germany
    Show System Specs
    I can think about the native filters (like TsReader.ax and TsWriter.ax), they need to be build from the DirectShowFilters solution. But they require C++ and SDKs to be available. I usually try to avoid C++ compilation ;)

    Depending on what you plan to code, it would be possible to develop just a TvEngine pluign without the need to change or compile any TvEngine core code itself. There are some examples floating around yet, they only have the TvEngine binaries as references and build a single plugin dll. This dll can then be placed into the plugin folder and will be loaded at startup.
     
  8. bilkusg

    bilkusg Portal Member

    Joined:
    March 12, 2011
    Messages:
    14
    Likes Received:
    2
    Ratings:
    +2 / 0
    Home Country:
    United Kingdom United Kingdom
    OK. So I've done some work on this, and I'm not quite sure where to take it in order to contribute back to the community. Essentially, there turn out to be three issues with fixing the OTA EPG for Freeview in the UK so that it handles schedules nicely.
    1. Various inconsistencies in the data - adding New to program titles, changing the description of the same program by adding flags for sign-language on repeats
    2. Series and episode information either missing, or in one of about 20 possible formats embedded in the program description. I've produced a series of pattern matches wh so far have managed to extract whatever it can from the current program descriptions, and populate the episode and series info on the database, as well as updating the description text to be consistent.
    In principle, I can see how to write a plugin which would scan all existing EPG program data and fix it up. I can't see how to write a plugin which would intercept the original download and get it right first time, although patching the source to do this is easy ( and that's what I've done so far )
    3. There are currently only two algorithms available to try and avoid multiple recordings of the same program. One uses just the title, and won't work for most programs in the UK where the title doesn't change between episodes. The other only works if the season and episode information is present, and even with the changes in 1 and 2 above, quite a few programs don't seem to provide this. So what I really want is the following:
    - If season and episode are present in the recorded program and the potential recording, use those to decide if this is a duplicate
    - If not, compare the description text after cleaning it to remove flags and making any episode information consistent in format.
    The trouble is that this would require adding a new option to the scheduler code, and I can't see any way to do that without a patch to the source - there's no obvious plugin hook to use instead.
    Now I'm quite happy to submit a patch once I've tested it all a bit more, but should this be a patch to the morpheus_xx fork, or should I try and get the upstream MP1 code patched first ( which would retain consistency with MP1, but probably take a long time to filter back to MP2 via the fork.
    Or should I just post my diffs here and let anyone who wants to incorporate them do their own thing?
     
    • Like Like x 2
  9. azzuro
    • Team MediaPortal

    azzuro Test Group

    Joined:
    May 10, 2007
    Messages:
    8,214
    Likes Received:
    2,294
    Occupation:
    technician HVAC
    Location:
    France - IDF
    Ratings:
    +3,920 / 13
    Home Country:
    France France
    Show System Specs
    hello @bilkusg

    about your patch, if your work is done on official MP1 release branch, the best is to fork it and share your own branch with us, need to know if this change can have an issue on MP1 client / server, maybe @Owlsroost can help / look.
    if your change is done on the morpheus fork, so your change will be applied to his fork only.
    but, thank you for your contribution.
     
  10. ge2301
    • Team MediaPortal

    ge2301 MP2 Design

    Joined:
    January 11, 2014
    Messages:
    5,983
    Likes Received:
    1,469
    Gender:
    Male
    Occupation:
    Automotive Industry
    Location:
    Stuttgart (But living abroad)
    Ratings:
    +2,232 / 2
    Home Country:
    Germany Germany
    comment from @morpheus_xx would be better
     
    • Agree Agree x 1
  11. morpheus_xx
    • Team MediaPortal

    morpheus_xx Lead Dev MP2

    Joined:
    March 24, 2007
    Messages:
    10,856
    Likes Received:
    4,680
    Ratings:
    +6,704 / 11
    Home Country:
    Germany Germany
    Show System Specs
    I think the better way is to submit the patch to the main MP1 repository. I merge changes from there before every MP2 release, so I will get them in time.
     
    • Like Like x 1
Loading...

Users Viewing Thread (Users: 0, Guests: 0)

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice
  • About The Project

    The vision of the MediaPortal project is to create a free open source media centre application, which supports all advanced media centre functions, and is accessible to all Windows users.

    In reaching this goal we are working every day to make sure our software is one of the best.

             

  • Support MediaPortal!

    The team works very hard to make sure the community is running the best HTPC-software. We give away MediaPortal for free but hosting and software is not for us.

    Care to support our work with a few bucks? We'd really appreciate it!