lucky1

SAM Build with modular DMD drivers for pindmd1,2,3 and PIN2DMD

554 posts in this topic

Yeah I don't have a working PROC setup yet. But it's on my mental TODO list. ;)

Share this post


Link to post
Share on other sites

I try to use the recording feature and fail. It seems to need a video codec, but I'm not sure which one and how/where to install?

Trying to install LAV filter (from Pinballx page) did not helped.

Running PinMame Test button starts - then crash PinMame. The log shows that it did not found the video codec and failed because that.

(For testing I used a Windows 10 notebook with fresh installed general VPX10.2 setup.exe, selecting DMDExt. The notebook did not had a real DMD connected)

Log:

 [1] 2017/01/08 19:32:33.447  INFO | [vpm] Open() 
 [1] 2017/01/08 19:32:33.464  INFO | [vpm] PM_GameSettings(0) 
 [1] 2017/01/08 19:32:33.464  INFO | Disabling game colorization 
 [1] 2017/01/08 19:32:33.469  INFO | Setting game name: apollo13 
 [1] 2017/01/08 19:32:33.469  INFO | Setting color: #FFFF5820 
 [1] 2017/01/08 19:32:33.548  INFO | Bit-convertion disabled. 
 [1] 2017/01/08 19:32:33.548  INFO | Opening virtual DMD... 
 [8] 2017/01/08 19:32:33.646 DEBUG | PinDMDv1 device not found. 
 [8] 2017/01/08 19:32:33.664 DEBUG | PinDMDv2 device not found. 
 [8] 2017/01/08 19:32:33.664 DEBUG | PinDMDv3 device not found. 
 [8] 2017/01/08 19:32:33.678 DEBUG | PIN2DMD device not found. 
 [8] 2017/01/08 19:32:33.678  INFO | Added VirtualDMD renderer. 
 [8] 2017/01/08 19:32:33.698  WARN | Error creating X264 encoded stream: No compatible MPEG-4 encoder found.. 
 [8] 2017/01/08 19:32:33.705  INFO | MJPEG encoder found. 
 [8] 2017/01/08 19:32:33.735  INFO | Writing video to C:\Users\Thomas\Desktop\video\apollo13.avi. 
 [8] 2017/01/08 19:32:33.735  INFO | Added video renderer. 
 [8] 2017/01/08 19:32:33.750  INFO | Resizing Virtual DMD to 128x32. 
 [8] 2017/01/08 19:32:33.750  INFO | Sending unprocessed 2-bit data from "Passthrough Source" to "Dmd" 
 [8] 2017/01/08 19:32:33.766 ERROR | Destination "Video Writer" is not 2-bit compatible. 
 [8] 2017/01/08 19:32:33.766 ERROR |    bei LibDmd.RenderGraph.AssertCompatibility(IDestination dest, Object castedDest, String what) in C:\Development\dmd-extensions\LibDmd\RenderGraph.cs:Zeile 400.
   bei LibDmd.RenderGraph.AssertCompatibility(ISource src, Object castedSource, IDestination dest, Object castedDest, String what, String whatDest) in C:\Development\dmd-extensions\LibDmd\RenderGraph.cs:Zeile 388.
   bei LibDmd.RenderGraph.StartRendering(Action onCompleted, Action`1 onError) in C:\Development\dmd-extensions\LibDmd\RenderGraph.cs:Zeile 234.
   bei PinMameDevice.DmdExt.<SetupGraphs>b__21_0(RenderGraph graph)
   bei System.Collections.Generic.List`1.ForEach(Action`1 action)
   bei PinMameDevice.DmdExt.SetupGraphs()
   bei PinMameDevice.DmdExt.<CreateVirtualDmd>b__20_0()
   bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   bei System.Threading.ThreadHelper.ThreadStart() 

Any suggestion what MPEG-4 encoder is needed/requested?

Share this post


Link to post
Share on other sites

I have to say "Thanks Guys", and thanks again lucky1 ... Color DMDs are very nice at my Cab, also without DMD Hardware :) 

Share this post


Link to post
Share on other sites

@Westworld: Yeah I might have broken that feature in a previous refactoring. Will look into it, but it's not a codec problem as far as I can see.

I'll probably post a new binary later today.

Share this post


Link to post
Share on other sites

Fuck me, how many posts do I need to type in twice because of this buggy IPBoard. Grmpf...

Anyway, here's a new build. I've included dmdext.exe as well, so @bent98 please have a try with PBFX2. Also try crazy frame rates like --fps=120.

@roar and @Jodannar, please check if you still got stuttering. I've benchmarked PinDMD3 a little and I'm getting around 8mbps on the bus which takes 1ms to send over a colored 2-bit frame. So as Lucky1 said, it's probably not a bandwidth issue.

@Westworld the video problem should be fixed as well.

DmdDevice.zip

Share this post


Link to post
Share on other sites

Just to confirm I just need to replace my dmdext.exe and I dont need to use the dmddevice,dll?

Share this post


Link to post
Share on other sites
6 hours ago, bent98 said:

Just to confirm I just need to replace my dmdext.exe and I dont need to use the dmddevice,dll?

As I explained above, if you just care about PBFX2 it's dmdext.exe, otherwise you're welcome to test VPM with the DLL as well.

Share this post


Link to post
Share on other sites

Question for the DmdDevice.ini, is there a Way to save different Tables/Roms here ?
Atm. there is just one Position and Size for all ...

Because i have different directb2s Files and then different Places for the DMD ( i havent Hardware, on Screen only )

Share this post


Link to post
Share on other sites

Just tried, still crash for me.

The log does not show an issue with video anymore, now reports:

 [1] 2017/01/10 19:44:33.903  INFO | No altcolor folder found, ignoring palettes. 
 [1] 2017/01/10 19:44:33.923  INFO | [vpm] Open() 
 [1] 2017/01/10 19:44:33.923  INFO | [vpm] PM_GameSettings(0) 
 [1] 2017/01/10 19:44:33.923  INFO | Disabling game colorization 
 [1] 2017/01/10 19:44:33.923  INFO | Setting game name: apollo13 
 [1] 2017/01/10 19:44:33.923  INFO | Setting color: #FFFF5820 
 [1] 2017/01/10 19:44:33.953 ERROR | Die Datei oder Assembly "dmdext, Version=1.4.0.0, Culture=neutral, PublicKeyToken=null" oder eine Abhängigkeit davon wurde nicht gefunden. Es wurde versucht, eine Datei mit einem falschen Format zu laden. 
 [1] 2017/01/10 19:44:33.975 ERROR |    bei PinMameDevice.DmdExt.Init()
   bei PinMameDevice.DmdDevice.GameSettings(String gameName, UInt64 hardwareGeneration, IntPtr options) 


Sorry, German system, translated "The file or assembly "dmdext..." or a dependance was not found. It was tried to read a file with a wrong format.

My installation:
fresh installed general VPX10.2 setup.exe, selecting DMDExt. No real DMD connected.
I replaced dmddevice,dll and dmdext.exe, both inside VPinmame folder. 

For testing I launched dmdext.exe with console as dmdext.exe test -> works, I get the virtual DMD displayed.
I added VPinmame folder to PATH.

What else could I have missed?

thanks...

Share this post


Link to post
Share on other sites

@stefanaustria: Hmm yeah that would of course somehow be possible. Main problem is just that we can only have one nested level in .ini files. I'll figure something out.

@Westworld that looks like a compilation issue. You're using 32-bit VPinMAME, right? Here's another build I've just tested. Make sure you run the 32-bit setup.exe.

By the way: @DJRobX, you can now add ignorear = true to if you want the dots weirdly sized as well. And @CarnyPriest, H/VFlip are now switched.

DmdDevice.dll

Share this post


Link to post
Share on other sites

Ok thanks i.a., maybe this could be anything like that:

[main]
left = 450
top = 50
width = 610
height = 150

[mt_145c]
left = 400
top = 70
width = 614
height = 153

next, next, ...
 

Share this post


Link to post
Share on other sites
21 minutes ago, freezy said:

@stefanaustria: Hmm yeah that would of course somehow be possible. Main problem is just that we can only have one nested level in .ini files. I'll figure something out.

@Westworld that looks like a compilation issue. You're using 32-bit VPinMAME, right? Here's another build I've just tested. Make sure you run the 32-bit setup.exe.

By the way: @DJRobX, you can now add ignorear = true to if you want the dots weirdly sized as well. And @CarnyPriest, H/VFlip are now switched.

DmdDevice.dll

Thanks, I'll give it a test later today, I think.

Share this post


Link to post
Share on other sites

I know this is a stretch...but what about the possibility of also having Future Pinball integration with dmdext? More so to take advantage of the colour dots?

I know macro has recently gotten full RGB colour dmd support working with FP and real DMDs.  FutureDMD (based on macro's pre-colour work) works well enough for virtual FP DMD's on a monitor, but it doesn't have nice full RGB colour or dots, and can cause some crashing on some tables because of its custom opengl file it uses.

Just throwing this out there out of curiosity....

Share this post


Link to post
Share on other sites
4 minutes ago, TerryRed said:

I know this is a stretch...but what about the possibility of also having Future Pinball integration with dmdext? More so to take advantage of the colour dots?

I know macro has recently gotten colour dmd support working with FP and real DMDs.  FutureDMD (based on macro's pre-colour work) works well enough for virtual FP DMD's on a monitor, but it doesn't have nice dots, and can cause some crashing on some tables because of its custom opengl file it uses.

Just throwing this out there out of curiosity....

Should´t be too hard to add dmddevice.dll support to fp-intercept. The old source is public but color version is not.

Share this post


Link to post
Share on other sites
On 1/9/2017 at 5:56 PM, freezy said:

Fuck me, how many posts do I need to type in twice because of this buggy IPBoard. Grmpf...

Anyway, here's a new build. I've included dmdext.exe as well, so @bent98 please have a try with PBFX2. Also try crazy frame rates like --fps=120.

@roar and @Jodannar, please check if you still got stuttering. I've benchmarked PinDMD3 a little and I'm getting around 8mbps on the bus which takes 1ms to send over a colored 2-bit frame. So as Lucky1 said, it's probably not a bandwidth issue.

@Westworld the video problem should be fixed as well.

DmdDevice.zip

I had trouble getting this dmddevice.dll to work with the colour roms for me. When I updated my dll in the vpinmame directory and tried to play a colour rom I'd get nothing on my pinDMD3,

Old DLL from the other day coloured roms work in colour with the Colorize DMD option NOT checked in Game Options

New DLL from this post coloured roms display in just orange with the Colorize DMD option NOT checked in Game Options. If I check Colorize DMD in game options then nothing is displayed on my pinDMD3.

All tests done with Use external DMD (dll) checked in Default Options.

Share this post


Link to post
Share on other sites
50 minutes ago, roar said:

I had trouble getting this dmddevice.dll to work with the colour roms for me. When I updated my dll in the vpinmame directory and tried to play a colour rom I'd get nothing on my pinDMD3,

Old DLL from the other day coloured roms work in colour with the Colorize DMD option NOT checked in Game Options

New DLL from this post coloured roms display in just orange with the Colorize DMD option NOT checked in Game Options. If I check Colorize DMD in game options then nothing is displayed on my pinDMD3.

All tests done with Use external DMD (dll) checked in Default Options.

Double check that all versions of the DLL file being used are "unblocked". (and all your other DLL, EXE, BAT files within VP, VPinMAME, Pinballx ,etc directories)

I haven't been able try the new version yet, myself.

Share this post


Link to post
Share on other sites
45 minutes ago, TerryRed said:

Double check that all versions of the DLL file being used are "unblocked". (and all your other DLL, EXE, BAT files within VP, VPinMAME, Pinballx ,etc directories)

I haven't been able try the new version yet, myself.

Double checked... all the dll's, exe's and bat's are unblocked for sure. PinballX is out of the equation at the moment... actually so is VP, I'm just running the vpinmame setup.exe to test it before launching any particular game in VP.

Share this post


Link to post
Share on other sites

I know I always had issues with the Test program of PinMAME crashing with certain roms...yet they would work correctly when launched in the game....   at least that was the case with these newer coloured Stern roms.

Share this post


Link to post
Share on other sites
4 minutes ago, TerryRed said:

I know I always had issues with the Test program of PinMAME crashing with certain roms...yet they would work correctly when launched in the game....   at least that was the case with these newer coloured Stern roms.

It's actually not crashing... it is just not playing the ROM in colour... then if I check the colorize check box and see nothing the ROM is actually running because if I run it through VP I coin up and play the game and hear the sound. I suspect I've done something again :) Just not sure what that is yet. Got the Mustang LE colour rom working and it is another beauty. I need someone else to come over and play though because I don't get enough to time to watch the DMD while I'm actually playing.

Share this post


Link to post
Share on other sites

As silly as it sounds....try recording yourself playing....even with a cell phone.

Those newer coloured roms look amazing by comparison....  

I'm using a virtual DMD, and for me the colorize option has no effect if there is a pallet file for the rom present....it will always use the palette file's colours no matter what.  If I get rid of the palette file, then my custom colours work fine.

This was with an older version of the DLL, not the recent ones posted in the last few days.

Share this post


Link to post
Share on other sites

Woah Wait What?  We can use this for colored Stern roms on a virtual DMD now?? :blink: Dang it I have to pay more attention  

Thanks to everybody involved in this, now i have more to do 

@TerryRed there is a program to easily import many colored roms all at once, I think it's Pinbulbs? Was made by BigBoss if i remember correctly.  Sorry my cab is down right now so don't remember exactly but i do have the files to import into the program which changes totan and others not Stern quite easily

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now