Vista and EVR support (1 Viewer)

Status
Not open for further replies.

Eabin

Retired Team Member
  • Premium Supporter
  • September 18, 2006
    465
    43
    attached is my current version, which has been working stable for me the last 2 hours (what a long time this can be sometimes :eek:) )


    edit: frodo: your code-cleanups will get lost with the current code since i had too many changes for a easy merge. sorry for that.
     

    Frodo

    Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    53
    The Netherlands
    Home Country
    Netherlands Netherlands
    Eabin, its in svn
    First results :
    - playing .wmv files is perfect, i tried playing 5 movies and all are ok
    But... playing .ts files is far from perfect
    - most files dont play, they cause MP to hangup
    - if they play, then i can only play them 1 time. The second time i try to play them MP hangs up

    Offcourse when using vmr9, all plays ok

    vmr9 log:
    Code:
    26-07-2007 08:01:26 [15b0]----------v0.37---------------------------
    26-07-2007 08:01:26 [15b0]QueryInterface
    26-07-2007 08:01:26 [15b0]riid: {A38D9567-5A9C-4F3C-B293-8EB415B279BA}
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:26 [15b0]GetDeviceID
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:26 [15b0]QueryInterface
    26-07-2007 08:01:26 [15b0]riid: {FA993888-4383-415A-A930-DD472A8CF6F7}
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:26 [15b0]GetService
    26-07-2007 08:01:26 [15b0]guid: {1092A86C-AB1A-459A-A336-831FBC4D11FF}
    26-07-2007 08:01:26 [15b0]riid: {A0CADE0F-06D5-4CF4-A1C7-F3CDD725AA75}
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:26 [15b0]QueryInterface
    26-07-2007 08:01:26 [15b0]riid: {1BD0ECB0-F8E2-11CE-AAC6-0020AF0B99A3}
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:26 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:27 [15b0]QueryInterface
    26-07-2007 08:01:27 [15b0]riid: {FA99388A-4383-415A-A930-DD472A8CF6F7}
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:27 [15b0]InitServicePointers
    26-07-2007 08:01:27 [15b0]Found mixers: 1
    26-07-2007 08:01:27 [15b0]Found clock: 1
    26-07-2007 08:01:27 [15b0]Found event sink: 1
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:27 [15b0]Negotiate Media type
    26-07-2007 08:01:27 [15b0]RenegotiateMediaOutputType
    26-07-2007 08:01:27 [15b0]Testing media type...
    26-07-2007 08:01:27 [15b0]New media type successfully negotiated!
    26-07-2007 08:01:27 [15b0]Getting aspect ratio 'DirectShow style'
    26-07-2007 08:01:27 [15b0]New format: 720x576, Ratio: 5:4
    26-07-2007 08:01:27 [15b0]guid: {00000016-0000-0010-8000-00AA00389B71}
    26-07-2007 08:01:27 [15b0]ReallocSurfaces
    26-07-2007 08:01:27 [15b0]ReleaseSurfaces()
    26-07-2007 08:01:27 [15b0]Releasing device
    26-07-2007 08:01:27 [15b0]ReleaseSurfaces() done
    26-07-2007 08:01:27 [15b0]Releasing device: 79
    26-07-2007 08:01:27 [15b0]ReallocSurfaces done
    26-07-2007 08:01:27 [15b0]Setting media type on mixer
    26-07-2007 08:01:27 [15b0]QueryInterface
    26-07-2007 08:01:27 [15b0]riid: {FA99388A-4383-415A-A930-DD472A8CF6F7}
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:27 [15b0]ReleaseServicePointers
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:27 [15b0]QueryInterface
    26-07-2007 08:01:27 [15b0]riid: {FA99388A-4383-415A-A930-DD472A8CF6F7}
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:27 [15b0]InitServicePointers
    26-07-2007 08:01:27 [15b0]Found mixers: 1
    26-07-2007 08:01:27 [15b0]ERR: Could not get IMFClock interface
    26-07-2007 08:01:27 [15b0]Found event sink: 1
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:27 [15b0]QueryInterface
    26-07-2007 08:01:27 [15b0]riid: {FA99388A-4383-415A-A930-DD472A8CF6F7}
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:27 [15b0]ReleaseServicePointers
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:27 [15b0]QueryInterface
    26-07-2007 08:01:27 [15b0]riid: {FA99388A-4383-415A-A930-DD472A8CF6F7}
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::AddRef()
    26-07-2007 08:01:27 [15b0]InitServicePointers
    26-07-2007 08:01:27 [15b0]Found mixers: 1
    26-07-2007 08:01:27 [15b0]Found clock: 1
    26-07-2007 08:01:27 [15b0]Found event sink: 1
    26-07-2007 08:01:27 [15b0]EVRCustomPresenter::Release()
    26-07-2007 08:01:27 [15b0]ProcessMessage 3
    26-07-2007 08:01:27 [15b0]Starting scheduler!
    26-07-2007 08:01:27 [1104]dangerous and unlikely time to schedule [04CF2B28]: 18576112155667412. scheduled time: 4800000, now: -18576112150867412
    26-07-2007 08:01:27 [1334]Not processing data in pause mode
    26-07-2007 08:01:27 [1184]OnClockStart
    <------ mp shows black screen ---------->
    
    <----- stop playback------------------->
    26-07-2007 08:02:13 [15b0]OnClockPause
    26-07-2007 08:02:13 [15b0]OnClockStop
    26-07-2007 08:02:13 [15b0]ProcessMessage 4
    26-07-2007 08:02:13 [15b0]Ending Scheduler (getting lock)
    26-07-2007 08:02:13 [15b0]Waiting for scheduler to end...
    <------ mp now hangs ------------------>
     

    Eabin

    Retired Team Member
  • Premium Supporter
  • September 18, 2006
    465
    43
    i'm not sure why this would happen. seems to be the clock is corrupted.

    could you please search for "dangerous and unlikely time to schedule" in evrcustompresenter.cpp and set the 1st parameter value (which is the return value) to -1 in that case, this should fix the freeze, because the scheduler thinks it has to wait for 18576112155667412 hundred ns, which tends to be quite long these days. -1 tells the scheduler to present the frame immediately.

    thanks,
    erwin

    edit: just out of curiousity: does this happen with tsfilesource and tsreader?
     

    Frodo

    Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    53
    The Netherlands
    Home Country
    Netherlands Netherlands
    I (think) i fixed it.
    My fix is in SVN and looks like:
    lines 480-485
    Code:
    	if (hnsDelta > 10000000 )
    	{
    		Log("dangerous and unlikely time to schedule [%p]: %I64d. scheduled time: %I64d, now: %I64d",
    			pSample, hnsDelta, hnsPresentationTime, hnsTimeNow);
        hnsDelta=1;
    	}

    I simply set the hnsDelta=1 and now it seems to work perfectly
    but will have todo more testing

    Frodo
     

    Eabin

    Retired Team Member
  • Premium Supporter
  • September 18, 2006
    465
    43
    your fix should do just as well as the one i proposed. but i would like to know the cause of this. could you upload some test-files which cause the problem, or does it happen with all .ts files?
     

    Frodo

    Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    53
    The Netherlands
    Home Country
    Netherlands Netherlands
    it happens with all .ts files i've tested.
    One more thing, the aspect ratio is still not correct
    Note these lines:
    26-07-2007 08:01:27 [15b0]New media type successfully negotiated!
    26-07-2007 08:01:27 [15b0]Getting aspect ratio 'DirectShow style'
    26-07-2007 08:01:27 [15b0]New format: 720x576, Ratio: 5:4

    When I play the file with vmr9, it reports 720x576 ratio: 4:3

    I think the problem here is that some video codecs report a wrong aspect ratio
    for the first couple of video frames.
    Vmr9 continously checks the aspect ratio but the evr seems to do this
    only once at the start of the file.

    Frodo
     

    Eabin

    Retired Team Member
  • Premium Supporter
  • September 18, 2006
    465
    43
    unfortunately, the above bugfix is no good. it will lead to a situation where the decoder will have samples ready that have a real sampling time in the future, and if we display them immediately, the decoder will decode the next frame, we will decide its unlikely to be a good sampling time.... ---> this will lead to frames playing as fast as possible, without any synchronization. i am trying to figure out a better bugfix to this issue.

    then i will look into the AR bug.

    btw, frodo: i am trying to reproduce the problem with the negative current time, but the error doesn't seem to appear with my .ts files. could you try to upload one of them somewhere for me, please?

    edit2: a closer look to your log file reveals that the clock has not been started when trying to get the scheduling time. this should be checked, i will fix it.
     

    joboehl

    Retired Team Member
  • Premium Supporter
  • July 30, 2006
    431
    4
    Home Country
    Brazil Brazil
    Eabin, frodo, thanks for your work btw.

    Just another issue I had last night (first time EVR worked forme, yeah!!!!).

    DVD navigation seems not to be working with EVR enabled. Works on with VMr9.

    I'll do some more testing.
     

    Eabin

    Retired Team Member
  • Premium Supporter
  • September 18, 2006
    465
    43
    please try the attached files. this should be a better bugfix, and should avoid a blocking scheduler at any cost too (no more freezing of MP even with awfully long scheduling times)

    edit: uploaded wrong zip-file.
     

    Frodo

    Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    53
    The Netherlands
    Home Country
    Netherlands Netherlands
    Your fix works and is now in svn
    .ts files play fine, even multiple times

    Aspect ratio is still wrong offcourse

    Frodo
     
    Status
    Not open for further replies.

    Users who are viewing this thread

    Similar threads

    You can find ton of guide here: https://www.avsforum.com/threads/madvr-player-support-thread.2215490/?post_id=39123050#post-39123050
    You can find ton of guide here: https://www.avsforum.com/threads/madvr-player-support-thread.2215490/?post_id=39123050#post-39123050
    Hi, I have a problem if I set madVR as Video Render. When I try to play my .mkv files I have an 'Unable to play. Video COdec...
    Replies
    3
    Views
    1K
    MP1 MP2 1.31.0 Cannot view Changelog anymore DE
    Hi all, I don't frequently update my MediaPortal and before seeing if it's really useful I used to browse the Changelog to determine if this update is necessary for my system or not. Today I wanted to check the Changelog for version 1.34 (1.31 installed on my system) and I was asked for a “Jira” login. I tried to use the same one as...
    Hi all, I don't frequently update my MediaPortal and before seeing if it's really useful I used to browse the Changelog to...
    Hi all, I don't frequently update my MediaPortal and before seeing if it's really useful I used to browse the Changelog to...
    Replies
    0
    Views
    440
    We have just released MediaPortal 1.35 - Horizon x86 and x64 version. Highlights of this release Bugfixes: [MP1-5221] - Core: Fix FrameGrabbing for EVR [MP1-5222] - TV Server: Fix ISO-8859-10/14 DVB text encodings [MP1-5224] - Fix Card "CancelTune" request Since Pre-Release : New: Since Pre-Release : Improvement / Rework...
    We have just released MediaPortal 1.35 - Horizon x86 and x64 version. Highlights of this release Bugfixes: [MP1-5221] - Core...
    We have just released MediaPortal 1.35 - Horizon x86 and x64 version. Highlights of this release Bugfixes: [MP1-5221] - Core...
    Replies
    0
    Views
    2K
    MP1 MP2 1.34 STB blasting for IPTV DE
    I'm downsizing my big honkin' HTPC case to a mini PC, which means the tried and true Hauppauge Colossus card that bridges the set top box into Mediaportal needs replaced with a different solution. I currently have HDMI from the STB to the colossus. Mediaportal is controlling the STB through a USBUIRT blaster and the blaster is...
    I'm downsizing my big honkin' HTPC case to a mini PC, which means the tried and true Hauppauge Colossus card that bridges the set...
    I'm downsizing my big honkin' HTPC case to a mini PC, which means the tried and true Hauppauge Colossus card that bridges the set...
    Replies
    0
    Views
    668
    • Sticky
    All good now!!
    All good now!!
    We have just released MediaPortal 1.36 - Polar Express x86 and x64 version. Highlights of this release Bugfixes: [MP1-5229] -...
    Replies
    2
    Views
    950
    Top Bottom