GeekyEggo / SoundDeck

Sound Deck is a powerful audio-focused plugin for the Elgato Stream Deck.
GNU General Public License v3.0
45 stars 5 forks source link

Update 5.0 #42

Closed BlazingD closed 2 years ago

BlazingD commented 3 years ago

Hello there,

I know the update just came out less than 24 hours ago but, I saw a missed opportunity when I watched the update video and actually went through the new Music tab. I saw that there is no native way to play the songs that they have on a loop without a work around by using multi-action and delays. I found your app just to see if there is an app already available that does just that.

I was wondering if you were thinking about adding support for the streamdeck audio file type?

Thank you for your time!

GeekyEggo commented 3 years ago

Hey @BlazingD, I'm keen to add support for the new .streamDeckAudio files, and from a bit of investigation I've managed to reverse engineer the file format and get it working within Sound Deck. As a result of my findings, I did discover a minor bug with regards to how I'm handling files, so will look to address that too.

I'm hoping to have a release by the end of the week, it would be great if you'd be able to help test it?

GeekyEggo commented 3 years ago

@BlazingD I have added preliminary support for Stream Deck Audio files; if you have some time, I'd be really grateful if you could do some testing on it, and let me know if you have any problems.

Download Sound Deck 2.1.0-beta.

BlazingD commented 3 years ago

Hey sorry for the late response. I would love to try out this tonight actually. I will stream in about an hour so I will try to set it up and test it out.

GeekyEggo commented 3 years ago

Awesome; one thing to note, if you find you’re having problems playing files, try copying them to a different location (Stream Deck might be locking them).

BlazingD commented 3 years ago

Ok cool gotcha!

ryantheleach commented 3 years ago

Surprising speed on the RE!

It's a wonder that Elgato didn't provide an interface and API for plugin authors to interact with their new store. You'd have thought if they had bothered obfuscating it this deeply, that they would have attempted to remove (honest) incentive to do so.

I'm forced to wonder whether the SD does any dialling home when it plays the sounds back itself, because if they have the license to act as distributor, maybe it's restricted to only their internal plugins, maybe the reason they didn't add music playlist support is they financially don't want you using this as backing music, and only use it sporadically for highlighting a mood?

GeekyEggo commented 3 years ago

It's a wonder that Elgato didn't provide an interface and API for plugin authors to interact with their new store

It would've been a welcome addition, that's for sure; having looked under the hood, the new store is making API calls to what appears to be public endpoint, so people could interact with it, but it would be subject to change at any time.

I'm forced to wonder whether the SD does any dialling home when it plays the sounds back itself

Not from what I could see.

I do also wonder why Elgato chose to implement the encoding the way they did; for some insight, the .streamDeckAudio files are just .wav files, but with the bytes re-arranged slightly. The previews within the store are .mp3 files which can also be downloaded; if you navigate to %AppData%\Elgato\StreamDeck\Audio\catalog.json you'll notice the preview_url information.

ryantheleach commented 3 years ago

wonder why Elgato

An educated guess is they were forced to not distribute the 'raw' files as-is in order to acquire their license. I havn't read through any licensing regarding this, (you were damned fast) Presumably the licensor care a little less about MP3's then wav's (as their normal audience cares quite a bit more about quality then most streamers), but probably assumed they would audio watermark the previews anyway.

Which makes sense, as if you remove the ease of 95% of people doing it, you've already saved yourself a heap of effort.

Because given these tools, opportunistic pirate types first thought would be "how can I use this in post production on youtube to grow my channel, surely they can't tell the difference between me using the sounds live in a vod, then clipping that into youtube, vs using the sounds directly" So they made it just slightly harder to use in post-production software, then dragging the downloaded wavs into their pirated copy of premiere.

However! The conspirator in me, wonders if the 'correct' decoding is very subtly off, so they can target it differently with contentid systems...

So that way, if the Elgato library ever leaked somewhere in entirety, decoded, they'd know where the source was, if people without a SD could use them in their (not stream related) youtube videos / tv shows / movies / podcasts / music.

It's going to be very , very interesting in how this ends up getting copyright striked (or not) on youtube, and just how far they are allowed to push. But maybe the deal they had was very lucrative.

BlazingD commented 3 years ago

So, after using the plugin through different use cases everything works fine.

GeekyEggo commented 2 years ago

Closing, merged as part of 8706a9c93dd54c926c9ccc42a0ab5e124a09c4d6.