[Videos] Adding madVR support (3 Viewers)

madshi

Portal Member
August 13, 2011
10
2
Home Country
Germany Germany
From my point of view, I'm willing to work with any media player developer who's interested in integrating madVR. I'm even willing to add custom interfaces to madVR, if that's necessary. What I'm not willing to do is totally change the way madVR works (e.g. letting the media player take over D3D presentation) because that would result in major losses in madVR functionality/benefits.

madVR is not really feature complete yet. I've still lots of things on my to do list, and I'm sinking a *lot* of manpower into it. So it's a question worth asking if every media player should reinvent the wheel to try to match what I've done (and what I'll be adding in the future). Of course it's very possible to match or even exceed madVR with a different implementation, but it would require tons of effort, if I may say so. I don't think anybody has any idea how much time I've already spent on this project. Although admittedly a big chunk of my time went into achieving max compatability with all the different decoders and media players etc out there. So writing a renderer just for one media player and just some specific decoders would save quite a bit of time. Anyway, even after all the time I spent, madVR still only just includes the most basic algorithms at the moment. I'm still mainly working on adding all the missing features. Only afterwards I'll spend more time on improving image quality. But still, recently I've added anti-ringing scaling and Jinc resampling, both of which are IMHO better than what any other renderer (that I know of) can currently do, unless you use AviSynth to perform processing outside of the renderer. But again: Of course it's possible to match or exceed what I've done and what I'll do in the future, it will just require a lot of work.

The bottom line was that switching to/supporting MadVR is more work than it's worth. Actually we do not gain anything from a switch, because what madvr can we we can also do on our own without to rely on 3rd party code.

How in depth was your research? If you just try to achieve the same scaling quality that madVR offers, that should be quite doable (although you'd have to figure out how to do anti-ringing scaling and Jinc resampling). But that's just one of very many things madVR offers. There are a lot of things that cost a lot of time to implement properly, which may not be obvious on a quick check. E.g. do you plan to do chroma upsampling and color conversion yourself (instead of letting the GPU do that)? If you want to support DXVA2 deinterlacing (or DXVA2 decoding or DXVA2 scaling) at the same time, you've got a problem, because DXVA2 outputs NV12 surfaces, and pixel shaders can't access those. This is just one example of hidden problems, of course. Another example: Do you plan to support IVTC (playing DVD movies or 60i broadcasted movies at 24Hz refresh rate)? DXVA2 can't do that. I've written a full blown IVTC algorithm with automatic cadence detection for PAL, NTSC, Anime etc to make this work with madVR. How about monitor management (automatically detecting different monitor via EDID, allowing different settings per monitor etc)? Not difficult to do, but costs development time, too. How about 3D presentation? For win7, you'll need to support 3 different APIs, because ATI, NVidia and Intel all have their own custom solutions. This all costs a lot of time to implement and test. Does it really make sense for every media player to do the same work all over again?

It's all your decision, of course, and I don't mind much either way. But of course I'm happy if media player devs decide to add support for madVR.
 

Andy22

Portal Member
September 10, 2011
46
4
Hehe u did forget the possible "clean" solution to finally get Anime subtitles to work unscaled with xy-vsfilter :) I often have to fiddle with MPC-HC internal subtitle rendering, since it skips or badly positions those. Those errors do not appear with xy-vsfilter, but since it sits before MadVR it don't looks as good. So i really hope the latest changes + new xy-vsfilter will improve this, which also means i'm finally free to use Zoomplayer again :)
 
Last edited:

madshi

Portal Member
August 13, 2011
10
2
Home Country
Germany Germany
From what I last heard, a new xy-vsfilter version with support for the new subtitle interface might come sooner than I expected, maybe in the next 2-3 weeks or so. Really looking forward to that.
 

infinite.loop

Retired Team Member
  • Premium Supporter
  • December 26, 2004
    16,163
    4,133
    127.0.0.1
    Home Country
    Austria Austria
    Maybe @tourettes / @Owlsroost can answer you madshi :)
    Best would be @Scythe42 but he is sadly not able comment currently, and I don't know when this will change.

    Ofc i also understand the problems of using MadVR from a license standpoint, since its closed source.
    This actually a very big concern in general.

    When you tie your application to any 3rd party project (close source or not, even thought closed source makes this much worse) then this is a huge risk for your application. Especially when it is a vital component/feature.

    We have already seen that with Live555, gentle and mtn (and others). This was also one of the mean reason to do a _lot_ on our own from scratch in MP2 (UPNP, MPF, ...). To rely as less as possible on other projects:
    a) on which you have no influence at all
    b) can always stop to exists/be active at any time
    c) might get bought up by some company (i.e. like yahoo bought Meedio).

    Sure one could say "just support both". Well in an ideal world we might. But thats plain impossible with the small team we have.
    That said. Someone could always start this as a new project on github, and we could look at including this in an upcoming version. :)
     
    Last edited:

    pur_berger

    Super User
  • Team MediaPortal
  • Super User
  • May 14, 2007
    1,679
    309
    51
    Vienna
    Home Country
    Austria Austria
    Hm – I was going through this whole thread by accident – and it’s sort of funny that dev’s all over the world act the same – it’s always as soon something foreign is coming some sort of defensive procedure is taking place – this nearly would have killed our company at 2000 … until one of our lead-dev’s said „hm – maybe there is an option …”

    What I want to say – every comment in this thread is one side (the MePo one) a list of why this is not going to work and on the other (the user) a complaint why the alternative is much better. How about taking a step back and try to do it in a positive way – what can be done? What is necessary? I see a very capable dev on one side (doing all this alone?!) and a very creative team on the other (for my opinion the best MediaCenter Software available). Strange enough very often something great is the outcome …

    To make it clear – I’m fine which what MePo delivers – for me the Animesubitles are working – the Picturequality is OK – but I don’t feel that it has no room for improvement.
     
    Last edited:

    azzuro

    Test Group
  • Team MediaPortal
  • May 10, 2007
    9,948
    5,617
    France - IDF
    Home Country
    France France
    Thx for All Devs (and users), MP or not for joined this conversation, it will only be beneficial !

    and may include, for future collaboration .. (y)
    Do not forget our passion : we want all one thing : BEST HTPC OF THE WORLD
     
    Last edited:

    doveman

    Portal Pro
    February 12, 2008
    2,326
    178
    Home Country
    United Kingdom United Kingdom
    Personally, I feel that there's other areas that need more urgent attention to make MP the best HTPC software. I probably don't understand what benefit MadVR would bring or I just don't play material that has problems with the EVR renderer but I can't say I've ever noticed any problems with the current output, other than banding on Freeview and BR Rips which apparently is due to the source, although some people have suggested this doesn't happen with their STB (I don't have one to compare).

    IMHO I think the TV (Freeview) scanning and channel configuration and streaming videos should be priorities as these are both not very user-friendly or reliable (OnlineVideos frequently crashes MP or the videos suddenly start playing fast with no sound) and these are things that I feel users will expect to work well, what with all the STB with streaming video and SMART TVs available now. Of course it may well be that the devs who are able/willing to work on those areas are not the same as those who could possibly work on MadVR support, I'm just saying I'd hate to see time and resources diverted into an area that a lot of users will probably not care about.
     

    jameson_uk

    Retired Team Member
  • Premium Supporter
  • January 27, 2005
    7,258
    2,528
    Birmingham
    Home Country
    United Kingdom United Kingdom
    Hm – I was going through this whole thread by accident – and it’s sort of funny that dev’s all over the world act the same – it’s always as soon something foreign is coming some sort of defensive procedure is taking place – this nearly would have killed our company at 2000 … until one of our lead-dev’s said „hm – maybe there is an option …”

    What I want to say – every comment in this thread is one side (the MePo one) a list of why this is not going to work and on the other (the user) a complaint why the alternative is much better. How about taking a step back and try to do it in a positive way – what can be done? What is necessary? I see a very capable dev on one side (doing all this alone?!) and a very creative team on the other (for my opinion the best MediaCenter Software available). Strange enough very often something great is the outcome …

    To make it clear – I’m fine which what MePo delivers – for me the Animesubitles are working – the Picturequality is OK – but I don’t feel that it has no room for improvement.
    MadVR is something I would like to see but at the fundamental issue is that until someone steps forward to implement it then we can discuss the benefits till the cows come home but nothing is going to happen :rolleyes:

    The team is relatively small anyway but the number of people capable of implementing this even smaller... (most of MP is C# but this will be C++)

    It is a massive bit of work. The MP code around this area is old and cumbersome (still includes a lot of code from before EVR even existed) and it is likely to be so old that integration with MadVR would prove very difficult.

    As doveman said there are other more pressing issues that are likely to get attention way before this.

    So whilst I would love to see this, I am not holding out much hope that a C++ dev comes along who wants to pick apart this area of the MP code and invest a significant amount of time to develop MadVR support :(
     

    tourettes

    Retired Team Member
  • Premium Supporter
  • January 7, 2005
    17,301
    4,800
    Oh, an in addition to that previous post - any volunteers to start to work with the madVR integration?

    Quoting myself from a really old post. We still lack development resources.

    I could myself take a peek / try to have some proof of concept with the madVR + MP1 integration at some point (with current combination of work the Blu-ray support, audio renderer and few other areas and the personal free time probably not anytime soon :(). But before starting that there should be two things on madVR's side:

    1) API should have a presentation callback that provides the video frame as texture
    2) Renderer should implement the MediaPortal audio renderer's control interface

    I'm still really skeptic that I find the required free time anytime soon (next year).
     

    Users who are viewing this thread

    Top Bottom