XVID Compression Problem with SVN Build: 06-08-2006 / 20:01 (1 Viewer)

htpcoz

Portal Pro
July 25, 2005
127
1
Brisbane
Home Country
OK it appears that the current versions of the Elecard decoder have changed their class IDs, which is why I think people are having problems with this.

It is hard to find out just exactly what elecard version you need to work with the current version of MP.

I have downloaded the elecard mpeg decoder & streaming pack 1.0.50824 (from http://www.elecard.com/ftp/pub/mpeg/decoder/EMpgDec20.zip ) this is not the latest but it does appear to work for me, and is referenced by other topics in this forum (https://forum.team-mediaportal.com/viewtopic.php?t=1431&highlight=elecard+convert).

Now once you have this version, MP will still not work, so I did some hacking around in the code and managed to find where the old moniker is referenced, and changed it to the new CLSID, and hey presto, works perfectly!

in DVRMS2XVID.cs change

string strVideoCodecMoniker = @"@device:sw:{083863F1-70DE-11D0-BD40-00A0C911CE86}\{F50B3F13-19C4-11CF-AA9A-02608C9BABA2}";

to

string strVideoCodecMoniker = @"@device:sw:{083863F1-70DE-11D0-BD40-00A0C911CE86}\{BC4EB321-771F-4E9F-AF67-37C631ECA106}";

The build that I have done is based on a recent SVN, but the quality of my build is suspect as it appears that other parts of the SVN I've build against are broken. So ideally it would be good to get this sort of change put back into the source tree.

Note this won't work with more recent versions of the elecard MPEG player, as they have changed the name of the filter to "MainConcept" which seems to break other things.

So the options are;

1) find the old version of the elecard decoder (whatever that version is?)

2) Change the MP code to refer to the new CLSID (or at least make it configurable)

What do you think?
 

Noelix

Portal Pro
February 18, 2006
393
1
Salt Lake City, UT
Home Country
United States of America United States of America
htpcoz said:
So the options are;

1) find the old version of the elecard decoder (whatever that version is?)

2) Change the MP code to refer to the new CLSID (or at least make it configurable)

What do you think?

Ok I tried installing the version you linked to in your post - I get the same error (again):
Code:
7/16/2006 8:19:06 PM DVR2XVID:Unable create graph: The system cannot find the file specified. (Exception from HRESULT: 0x80070002)

I think the solution is that the MP code has to be updated to reflect the latest version of the Elecard codec. Also I can't get that auto-compress feature to work at all. DVR2WMV requires the Elecard codec as well, so the only thing working is the DVR2MPG function, which seems to work pretty well. I use an automated process involving Dirmon and Mencoder outside of MP to then convert those MPGs automatically into XVID avis. However this process that I have doesn't update the MP database - is there an easy way to do that where someone already has some established instructions for? Because I'm having to view my tv programs under 'my videos', which isn't as great because of the naming conventions I have to use.
 

htpcoz

Portal Pro
July 25, 2005
127
1
Brisbane
Home Country
Sorry I didn't make it clear in my previous post, yes you need this version of the elecard codec PLUS MP needs to be changed to reference the correct ClassID.

The question with merging this codes is should the modification be based on this older (but not oldest) version of the elecard codec, or the new version (I couldn't get the latest version working with the same modification that worked with the older versions so something else is wrong).

The other problem is, if the modification is applied to the main tree anyone using the old version of the codec will break. Another option might be to use the friendly name instead of the moniker (haven't tried that one yet, as I'm back on the road).

Who is the developer looking after the transcoder portion of the core ?
 

AKALuke

Portal Member
June 6, 2006
37
0
Good work.

And some good questions.

I don't pretend to know how all this works but ideally we'd have a configurable section that would allow us to specify what to use and the available parameters. This is probably one to add to the wish list - in the meantime I'd settle for a change to MP to use the Elecard version currently availble via the ftp link you mentioned above.


As a short term fix:
1. Add an option to specify which version of the Elecard codec use:
- The oldest one which is currently in the MP code (the default - so we don't break working copies)
- The newer one which you referenced in the FTP link above

????

Luke.
 

AKALuke

Portal Member
June 6, 2006
37
0
ps - I used a hex editor to change core.dll as above - that fixed the elecard error message issue - I now get (a bit further on):
Code:
18/07/2006 12:26:40 PM DVR2XVID: connect mpeg2 video codec->xvid codec
18/07/2006 12:26:40 PM DVR2XVID: connect mpeg2 audio codec->mp3 codec
18/07/2006 12:26:40 PM DVR2XVID:FAILED:unable to connect mpeg2 audio codec->mpeg3:0x80040217
18/07/2006 12:26:40 PM DVR2XVID: cleanup

What Audio and Video codecs are you using under TV Settings (and are they the ones used by the compression feature?)
 

htpcoz

Portal Pro
July 25, 2005
127
1
Brisbane
Home Country
I Just looked at the code and it seems to be hardcoded to use the MPA Audio Decoder filter, I'd say if you don't have the MPV/MPA codecs installed as a part of the install it will fail.

Nice hack with the binary editor! Unfortunately the Audio codec specified in the code is using the friendly name "MPA Decoder Filter" rather than the moniker. Perhaps you can use the editor to change that string to the audio codec you have installed (so long as the string is shorter than the existing one :)).

You can probably just grab the MPA codec and register it manually, that would probably get you past that problem.

I want to see if perhaps we can use other codecs in replacement... the thing would be if we could just use the MPEG codec that is the one selected for LiveTV that would be perfect as it would just reuse that configuration, I'm just not sure how interchangeable the pin configurations are between these different codecs.
 

GSteele

Portal Pro
April 6, 2006
74
0
Hi All,

This seems the closest I've seen to a solution by the sounds of it. I've downloaded the Elecard Decoder, but where is this file DVRMS2XVID.cs???

htpcoz said:
Now once you have this version[Elecard Decoder], MP will still not work, so I did some hacking around in the code and managed to find where the old moniker is referenced, and changed it to the new CLSID, and hey presto, works perfectly!

in DVRMS2XVID.cs change

string strVideoCodecMoniker = @"@device:sw:{083863F1-70DE-11D0-BD40-00A0C911CE86}\{F50B3F13-19C4-11CF-AA9A-02608C9BABA2}";

to

string strVideoCodecMoniker = @"@device:sw:{083863F1-70DE-11D0-BD40-00A0C911CE86}\{BC4EB321-771F-4E9F-AF67-37C631ECA106}";

The build that I have done is based on a recent SVN, .....

I looked in the registry just in case the string value was in there, the CLSID is there, obviously due to the Elecard reg @ install, but the string strVideoCodecMoniker doesn't exist.

I'm running 2.0.4 also tried latest svn but this file doesn't seem to exist. Is it in the raw source and we then have to compile it?

Is it possible to post the modified file? or get this included in the latest releases?

Thanks for any help you can give.

Greg
 

Users who are viewing this thread

Top Bottom