Jump to content



Photo

History of PinSound and VPinMAME?


  • Please log in to reply
8 replies to this topic

#1 MrGrynch

MrGrynch

    Enthusiast

  • Members
  • PipPipPip
  • 127 posts

  • Flag: United States of America

  • Favorite Pinball: Blood Machines, Fish Tales, Attack from Mars

Posted 16 August 2023 - 06:18 PM

Hello!

 

I am about to release a significant update to the AltSound processing code for VPinMAME.  I'm in the process of creating documentation for AltSound, and need some background on the relationship of PinSound and Virtual Pinball.

 

The original AltSound format used the PinSound library structure.  It was later replaced by the current CSV-based structure.  I assume this was done because of issues with the people who make PinSound?

 

VPinMAME still supports PinSound, but requires their software to be running concurrently for it to work.  Was this done as a compromise, and the developers of PinSound approve of this arrangement?

 

If anyone knows the history and the current status between PinSound and VPinMAME, I would appreciate any information.

 

Thanks!

 -G

 



#2 Carny_Priest

Carny_Priest

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,257 posts
  • Location:Austin, TX

  • Flag: United States of America

  • Favorite Pinball: EATPM

Posted 16 August 2023 - 09:14 PM

I don't think that there is a current relationship between PinSound and VPinMAME. And I don't think that there was any particular incident(s) that led to a break. If anything PinSound was running up against PPS and they resolved it by becoming a licensed product. I believe the hashing/encryption of their folder structure stemmed more from getting legal with PPS than anything to do with VPinMAME. It was always a proprietary technology and PinSound simply quit working with VPinMAME to keep it working. Not much drama. This was about the time that they transitioned their branding of the software from PinSoundStudio to PinSoundStudioPro. It being the internet, the old software v18.8.3 is still passed around and I'm guessing that the old unencrypted sound packs are still in people's archives. Still works with current vPinMAME as far as I know. I haven't tested it in years.

 

I recall that altsound was not a response to PinSound but was added to the source at the same time. VPinMAMEdev always wanted to have an open-source alternative if need be. But I don't recall it being a competition.

 

Search for PinSound within the following thread. You'll probably get enough about what was happening over time.

 

https://www.vpforums...showtopic=27063



#3 Carny_Priest

Carny_Priest

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,257 posts
  • Location:Austin, TX

  • Flag: United States of America

  • Favorite Pinball: EATPM

Posted 16 August 2023 - 09:25 PM

Oh, good luck with the release of the new altsound. I'm sure it is very much anticipated. If I have it right, PinSound pack authors distribute through a community website. And I believe that they have to submit to a PinSound intermediary to apply the proper hashing to folder names. Altsound is great for vpin authors if only because there is no need to go through a gatekeeper. I've been out of it too long to know if there is any sort of intermingling between real machine owners and vpin users with regard to publishing alternative soundtracks. Aside from PinSound hardware, I haven't seen any instances of monetization of these packs by authors. I don't see that there will be a shitstorm the likes of what is going on with DMD colorization.  



#4 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 17 August 2023 - 03:53 PM

I pretty much know it exactly, at least the PinMAME side..  :)

 

Back in the days when PinSound was still pretty unknown and small, i saw that they featured their own VPinMAME.dll on their site that in addition featured PinSound support via their interface.

So i simply asked (in fear that this will bitrot away like other projects before, that i then had to hunt for the source code in a postprocess in the past) if they would be willing to share the source, in order to release it within the official repository, which would also benefit them, as they would always be up to date with the .dll.

They fortunately agreed, i cleaned it up a bit, they provided some additions, and it all worked out (thanks again for that!!).

 

Then it got a bit calm in general, and i feared that at some point the whole PinSound project could be abandonded. As it relied on the external connection to their propietary software, i thought that i would simply give it a go with a simplistic implementation that interprets their folders, etc., in order to keep the existing PinSound packages alive for the future. Also the fact that other platforms (starting with Linux incl. Arm based CPUs, later-on macOS, Android, iOS) were getting more and more important for us to support (which still misses some work to this day though!).

 

At some point they decided to 'encrypt'/obfuscate the folders, etc, which made my implementation kinda void with the new packages (which was a mixed bag for me, after all quite some packages were made by the community for their company for free if you think about it, but it seems like this was still all okay with their EULA, and they are a company that need to make a living after all).

 

Then we received a patch that added the newer .csv based packages, which then kinda like became the new standard for all the packages that were released on VPU, etc.

 

So i don't think there was ever any hostility or something between the 2 projects. More like different interests (both understandable IMHO).



#5 MrGrynch

MrGrynch

    Enthusiast

  • Members
  • PipPipPip
  • 127 posts

  • Flag: United States of America

  • Favorite Pinball: Blood Machines, Fish Tales, Attack from Mars

Posted 18 August 2023 - 11:41 AM

I pretty much know it exactly, at least the PinMAME side..  :)

 

Back in the days when PinSound was still pretty unknown and small, i saw that they featured their own VPinMAME.dll on their site that in addition featured PinSound support via their interface.

So i simply asked (in fear that this will bitrot away like other projects before, that i then had to hunt for the source code in a postprocess in the past) if they would be willing to share the source, in order to release it within the official repository, which would also benefit them, as they would always be up to date with the .dll.

They fortunately agreed, i cleaned it up a bit, they provided some additions, and it all worked out (thanks again for that!!).

 

Then it got a bit calm in general, and i feared that at some point the whole PinSound project could be abandonded. As it relied on the external connection to their propietary software, i thought that i would simply give it a go with a simplistic implementation that interprets their folders, etc., in order to keep the existing PinSound packages alive for the future. Also the fact that other platforms (starting with Linux incl. Arm based CPUs, later-on macOS, Android, iOS) were getting more and more important for us to support (which still misses some work to this day though!).

 

At some point they decided to 'encrypt'/obfuscate the folders, etc, which made my implementation kinda void with the new packages (which was a mixed bag for me, after all quite some packages were made by the community for their company for free if you think about it, but it seems like this was still all okay with their EULA, and they are a company that need to make a living after all).

 

Then we received a patch that added the newer .csv based packages, which then kinda like became the new standard for all the packages that were released on VPU, etc.

 

So i don't think there was ever any hostility or something between the 2 projects. More like different interests (both understandable IMHO).

 

So if I understand the timeline:

  • VPin AltSound didn't exist prior to PinSound
  • VPinMAME always relied on PinSound software to support PinSound for physical machines (sound option 2)
  • The current CSV format was developed around the same time as the incorporation of PinSound into the VPinMAME official repository
  • The PinSound library parser was written to support existing PinSound packages some time later
  • PinSound format changed to use an encrypted/obfuscated library
    • This change was not made to prevent PinSound libraries from being used for Virtual Pinball
    • After this change PinSound no longer works with VPinMAME at all

Do I have that basically right?

 

Thank you @toxie and @Carny_Priest.  This is very helpful information!

 -G



#6 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 19 August 2023 - 07:18 AM

AFAIR:

 

VPin AltSound didn't exist prior to PinSound - yes, 100% for sure

 

VPinMAME always relied on PinSound software to support PinSound for physical machines (sound option 2) - yup, thats how it started, the patch from the PinSound team, along with my option 1 interpre/implementation

 

The current CSV format was developed around the same time as the incorporation of PinSound into the VPinMAME official repository - No, CSV was way later than that, more around the time when the obfuscation happened (= ~4 years after sound option 1/2/3 support). I think(!) mainly to modernize and make things more intuitive, especially as the existing packages were then pretty much 'legacy'/a thing of the past, and the new, obfuscated, packages not usable.

 

The PinSound library parser was written to support existing PinSound packages some time later - i looked up the SVN/git history, actually i already started it in 2015, before we received the patch from PinSound, but of course their implementation was already in public use via their own released VPinMAME.dll.

 

PinSound format changed to use an encrypted/obfuscated library

  • This change was not made to prevent PinSound libraries from being used for Virtual Pinball
  • After this change PinSound no longer works with VPinMAME at all

In principle correct. Note that the obfuscation (from my understanding) happened mainly because of potential competition (other companies producing sound hardware for real machines, e.g. https://tiltaudio.com/).



#7 MrGrynch

MrGrynch

    Enthusiast

  • Members
  • PipPipPip
  • 127 posts

  • Flag: United States of America

  • Favorite Pinball: Blood Machines, Fish Tales, Attack from Mars

Posted 19 August 2023 - 02:36 PM

Again, thanks Toxie for the information!



#8 Carny_Priest

Carny_Priest

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,257 posts
  • Location:Austin, TX

  • Flag: United States of America

  • Favorite Pinball: EATPM

Posted 19 August 2023 - 04:34 PM

Yes, I do recall that initial altsound implementation came around the same time as the PinSound implementation and that it was reworked after PinSound began hashing files and folders. I don't recall that the hashing was done because of clone hardware, but that makes total sense. 



#9 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 20 August 2023 - 03:12 PM

About the last one: There i'm also not 100% sure, but it could be one of the reasons, as it was roughly also at that point in time. And/Or the 'rehosting'/changing of 'their' sound packages on VP-related sites.