Can Not play dvr-ms files (1 Viewer)

STR1DER

New Member
February 1, 2007
1
0
I have experienced the same problem. I have two machines running MCE 2005 at my place, so this has been a pain. I didn't realize what was going on because I just made the jump from RC2 to to the final release. My concern is that this may be a Microsoft proprietary thing.....I hope not.
 

snakeman65

Portal Pro
January 21, 2007
68
6
40
Aylesbury
Home Country
United Kingdom United Kingdom
Just to point out, this is NOT a tv-server bug. This bug is in media portal itself.

I've now confirmed that it is DEFINATELY the DirectShowUtil.cs that has the bug. Restoring build 13892 of this file allows it to work while 16124 is broken.

The code working (around line 599):
hr = graphBuilder.Render(pins[0]);
if (hr == 0)

and broken:

hr = 0;
if (TryConnect(graphBuilder, info.achName, pins[0]))

From what I understand so far, the difference that is causing the problem is that in the earlier revision IGraphBuilder.Render was called, which allows IGraphBuilder to build its own Graph, in the later code, the graph is built manually, i'm not sure why this was done but it breaks the dvr-ms support.
 

iosub

Portal Pro
April 26, 2006
573
30
San Sebastian
Hi
After the pacth you founded to fix the DVR-MS bug now we are able to play DRV-MS files, but DVD navigation stop working..
I have create some graph and Jpg to show you the diferences..
core1 is without the patch
core2 is with the patch

These graph are created when playing a DVD

In core1.jpg "the subpicture PIN" IS connected to PIN on EVR... so there IS navigation
as you can see on core2.jpg "the subpicture PIN" is not connected to PIN on EVR... so there is no navigation

Can you try to fix this?
Where you able to speack with eabin the developer how make the fix before?

Thanks For your help!
 

snakeman65

Portal Pro
January 21, 2007
68
6
40
Aylesbury
Home Country
United Kingdom United Kingdom
ok, I think this may work but don't have time to test as i'm no longer using media portal. Try this:

in DirectShowUtil.cs around line 599 change:

hr = 0;
if (TryConnect(graphBuilder, info.achName, pins[0]))
//if ((hr=graphBuilder.Render(pins[0])) == 0)
{
Log.Info(" render ok");
}
else
{
Log.Error(" render {0} failed:{1:x}", pinInfo.name, hr);
bAllConnected = false;
}

to:


hr = 0;
if (TryConnect(graphBuilder, info.achName, pins[0]))
//if ((hr=graphBuilder.Render(pins[0])) == 0)
{
Log.Info(" render ok");
}
else
{
Log.Error(" render {0} failed:{1:x}, trying alternative graph builder", pinInfo.name, hr);

if ((hr = graphBuilder.Render(pins[0])) == 0)
{
Log.Info(" render ok");
}
else
{
Log.Error(" render failed:{0:x}", hr);
bAllConnected = false;
}


This should use the mp created graph for everything and fallback to the ms one if the mp one fails. If this works it may possibly be good enough to submit as a patch.

Chris
 

snakeman65

Portal Pro
January 21, 2007
68
6
40
Aylesbury
Home Country
United Kingdom United Kingdom
I'm back to media center. The scheduling in media portal is just useless. I try media portal about twice a year to see if its improved enough, every time i'm disappointed. Its getting close though, the rule based scheduling thing looks good but I HAVE to be able to do it from the 10ft interface and its not there yet.
 

iosub

Portal Pro
April 26, 2006
573
30
San Sebastian
Yes, You are right.. The scheculing on MCE is so simple and good that the scheduling in MP is useless, specialy if the show change the time or move from one day to another. This is automaticaly done in MCE.

My only reason to be in MP is because the client server arquitecture and also because it support diferent Card type, I have DVB-C DVB-S and DVB-T. That's someting tha MCE doesn't support

I agree with you, Scheduling on MP should be just a copy of the Scheduling on MCE.. That will make MP-- near perfect.

Thanks For you help.--
I will try the patch now.. Will tell you someting
 

iosub

Portal Pro
April 26, 2006
573
30
San Sebastian
ok, I think this may work but don't have time to test as i'm no longer using media portal. Try this:

in DirectShowUtil.cs around line 599 change:

hr = 0;
if (TryConnect(graphBuilder, info.achName, pins[0]))
//if ((hr=graphBuilder.Render(pins[0])) == 0)
{
Log.Info(" render ok");
}
else
{
Log.Error(" render {0} failed:{1:x}", pinInfo.name, hr);
bAllConnected = false;
}

to:


hr = 0;
if (TryConnect(graphBuilder, info.achName, pins[0]))
//if ((hr=graphBuilder.Render(pins[0])) == 0)
{
Log.Info(" render ok");
}
else
{
Log.Error(" render {0} failed:{1:x}, trying alternative graph builder", pinInfo.name, hr);

if ((hr = graphBuilder.Render(pins[0])) == 0)
{
Log.Info(" render ok");
}
else
{
Log.Error(" render failed:{0:x}", hr);
bAllConnected = false;
}


This should use the mp created graph for everything and fallback to the ms one if the mp one fails. If this works it may possibly be good enough to submit as a patch.

Chris
WORKS!!! PERFECT!!

Milion on Thanks!!!
Iosu
 

Users who are viewing this thread

Top Bottom