Build MediaPortal 1 from source code (1 Viewer)

Jeymo

New Member
February 16, 2023
2
0
Home Country
Ireland Ireland
Hi,
I am working on a project that is being based on MediaPortal 1. I can install and run the application via the installer but I want to run the application by building it from source code. I followed the instructions listed in the build prerequisites on the wiki and I successfully built the project. The issue is when I goto the directory of any of the build outputs the MediaPortal executable doesn't do anything when clicked on.

build-png.211227

The directory with the output is as follows.
BuildDirectory.png
I can't tell if anything is wrong with the folder but by comparison by the eye it looks the same as the folder with contains the MediaPortal downloaded by the installer.
I will also include the output from Visual Studio that was produced by the build, hopefully it will give some insight into what is wrong with my build attempt.
 

Attachments

  • build.png
    build.png
    12.8 KB
  • BuildOuput.txt
    32.6 KB

CyberSimian

Test Group
  • Team MediaPortal
  • June 10, 2013
    2,879
    1,808
    Southampton
    Home Country
    United Kingdom United Kingdom
    I followed the instructions listed in the build prerequisites on the wiki and I successfully built the project. The issue is when I goto the directory of any of the build outputs the MediaPortal executable doesn't do anything when clicked on.
    I have never built MP from the source, but perhaps @doskabouter can offer some advice?

    -- from CyberSimian in the UK
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    Hello,
    Yes build from NSIS to see if it failed too, maybe some GIT repository it not downloaded, we can see in log :
    File not found - MediaInfo.Wrapper.dll for ex.

    Long time i didn't build MP from scratch :(
     

    Jeymo

    New Member
    February 16, 2023
    2
    0
    Home Country
    Ireland Ireland
    Hi,
    So I tried to build the nsis script as you suggested. I am unsure of the process as I have never used the application before but, I loaded the DeployToolUNPacker from the MediaPortal-1\Tools\InstallationScripts directory.
    Script used for nsis script
    nsis.png

    As you can see from the image above the script build was aborted, in addition to this it was aborted around the point where it was meant to create the build report so I can't see where it went wrong. Does anyone have any ideas?
     

    CyberSimian

    Test Group
  • Team MediaPortal
  • June 10, 2013
    2,879
    1,808
    Southampton
    Home Country
    United Kingdom United Kingdom
    Does anyone have any ideas?
    Sadly, it seems that no one has any ideas on how to build MP successfully. Clearly there is a solution to your problem, but you have to ask what is the probability that you will find that solution? I suspect that the probability is near zero.

    You may want to consider basing your project on a different media center solution. This Wikipedia page summarises various media center applications, seven of which are open source and may be suitable for your project.

    -- from CyberSimian in the UK
     

    Pablik

    Development Group
  • Team MediaPortal
  • August 19, 2010
    682
    1,093
    Home Country
    Czech Republic Czech Republic
    Hi,
    recently I was building experimental 64bit version of MediaPortal ported to SharpDX
    and these files and directories bellow are absolutely necessary to start MediaPortal.
    For other problems check the log folder in MediaPortal config folder.


    Code:
    ------------------------------------------------------------
    Application folder:
    ------------------------------------------------------------
    plugins\ExternalPlayers\
    plugins\process\
    plugins\windows\Common.GUIPlugins.dll
    plugins\windows\GUIHome.dll
    Bass.Net.dll
    BassRegistration.dll
    Common.Utils.dll
    Core.dll
    CSCore.dll
    Databases.dll
    Dialogs.dll
    DirectShowLib.dll
    fontEngine.dll
    Interop.X10.dll
    Ionic.Zip.dll
    log4net.dll
    MediaInfo.Wrapper.dll
    MediaPortal.exe
    MediaPortal.exe.config
    RemotePlugins.dll
    SharpLibHid.dll
    sqlite.dll
    Utils.dll

    Code:
    ------------------------------------------------------------
    Config folder: C:\ProgramData\Team MediaPortal\MediaPortal\
    ------------------------------------------------------------
    MediaPortal.xml
    keymap.xml
    language\ [all necessary language xml files]
    skin\ [all necessary skin files]
     

    Sebastiii

    Development Group
  • Team MediaPortal
  • November 12, 2007
    16,583
    10,403
    France
    Home Country
    France France
    @Pablik This is great about your porting and all is working ?
    Maybe you can share your work ;)

    @Jeymo When setup rig is done, all is working, but yes building is tricky part :(
     

    Pablik

    Development Group
  • Team MediaPortal
  • August 19, 2010
    682
    1,093
    Home Country
    Czech Republic Czech Republic
    @Sebastiii
    first I thought it would be too difficult to move from Microsoft.DirectX to SharpDX but at the end I have managed to make it, though it took me a few days of hard work.
    Some DirectX methods/structs uses different names or they are placed somewere else and some structs are missing(like CustomVertex). Handling the DirectX device is slightly different (I took liberty to use some part of code from MP2).
    Well, I'm supprised that there is no problem with GUI at all. So far it is working without issuses including well known plugins. TV plugin is working too.
    TV server is 32bit - no need to go for 64bit version except for some dll needed for TV plugin.
    Had some problem with DVBT subs - crash. MP uses packing attr for structs which causes misaligned fields on 64bit platform. After fix the TV playback with subs is fine now.
    So here is my experience of 64bit version:

    Pros:
    • GUI seems to me a bit faster. It looks like 64bit platform has its own benefit. For example: generating Weather World Geo Clock image takes 250ms on 32 bit, but only 150ms on 64bit.
    • LAV 64bit: yes - the boost of SW HEVC decoding is huge. On 32bit it is impossible to watch DVB-T2 HEVC FullHD 50p stream on my older NUC, but now the CPU load keeps around 30% without frame dropping.

    Cons (so far):
    • Reclock: yes Reclock is 32bit only, so I had to switch to MediaPortal Audiorenderer + EVR. Looks like it is working well, at least no dropping frames.
    • Missing 64bit version of bass_wadsp.dll. No sure what is for (some winamp effect lib?)
    • MiniDisplay LCD native driver libraries: this is the same problem - 32bit only. I'm trying to create simple external app as proxy server for executing native methods. Looks like my old Soundgraph LCD is working, but need some more testing.
    • Other plugins: no problem if source code is available - they can be recompiled. At least for OnlineVides, MovingPictures, TVseries, etc. For OnlineVides I'm using LAV source splitter, have some trouble to compile georgius's MPIPTV Source Splitter, but LAV can be used too. I'll try to ask doskabouter for some help.

    Problems (both original 32bit and 64bit version):
    • Have some issues with BDReader but LAV Source Splitter is working perfectly. Tested on FullHD 59i LPCM m2ts stream: after start of playback the sound is cca 1s behind the video; dropping frames; after playback there is no sound at all from GUI. Looks like something is not properly disposed - at least there is no 'dtor' in evr.log after playback
    • DVBT subs eneabled causing dropping a frames. Creating/updating texture takes a lot of time (more then 20ms which leeds to drop a frame on 50p stream). So I tried to divide the process on two parts: create texture on callback and lock/update the texture on first render. Seems to be better now.

    I'll prepare modified source code so you can test it as you like. This take me some time - I have my own custom changes which needs to be separated.
    But keep in mind that this is experimental test, there still can be a bugs.
     

    Pablik

    Development Group
  • Team MediaPortal
  • August 19, 2010
    682
    1,093
    Home Country
    Czech Republic Czech Republic
    @Sebastiii Hi, here is promissed x64 SharpDX code. Package holds necessary code changes against version 1.30.
    Also I have attached package of compiled application.

    Update: to test compiled application, please make sure:
    • LAV filters 64bit version is installed
    • register necessary MediaPortal direct show filters. The package has a batch file "install_filters.bat" to register needed filters.
    • the 64bit version uses the same configuration data as 32bit version. I recommend to backup the config folder first before testing the x64 version.
     

    Attachments

    • MediaPortal x64.7z
      14.5 MB
    • MediaPortal-1-x64-Release_1.30.0_Changes.zip
      321.1 KB
    Last edited:

    Users who are viewing this thread

    Top Bottom