Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Pengo Wray

16
Posts
4
Topics
15
Followers
10
Following
A member registered Mar 05, 2019 · View creator page →

Creator of

Recent community posts

Hiya Madame Berry,
There's no way to ignore specific sources currently, but you can stop your browser being picked up by turning off "media controls" (in your browser). For instructions google something like "turn off media controls chrome". Doing this will also stop the browser hijacking your media controls (play/pause) when you're using deezer etc, but will also stop Streamling from picking up youtube titles etc.

I did originally plan to add some way to ignore specific sources/apps (or browsers generally), but it's still on the to-do list.

The silent crashes have been a problem and, yeah, I need to add better logging to get to the bottom of it. I noticed it crashes more when CPU usage is high but I don't know why that should be. Lately it hasn't crashed for me at all for me over many hours (which also makes debugging harder). I rarely stream these days so haven't been highly motivated to make many updates but I like to work on it occasionally.

I'd say there are no crash logs except I found some once that I think Windows makes automatically. If you can track them down I'll take a look.

Also I should mention Streamling doesn't specifically prioritize Chrome or anything else, but rather prioritizes the loudest source.

Hope that helps somewhat

Hiya. I did investigate Plexamp, but I couldn't find any way to get the song info out of it for Streamling Overlay, so I have no way of supporting it currently (that I know of).

Plex proper should work though (both the windows app and web versions).

For Plex, Streamling gets the song info from SMTC* (System Media Transport Controls) which means if you see Windows' popup the track info when you use media keys on your keyboard (e.g. hit a play/pause key) then Streamling can get it. Plex uses SMTC but Plexamp doesn't. I don't know why. Maybe you could encourage them to add support for the MediaSession API?

Note: SystemMediaTransportControls is variously called:

  • "desktop overlay" by Spotify,
  • "Media Session Service" by Chrome,
  • "media control feature" (or SMTC) by Firefox, 
  • "MediaSession API" by w3c (web specification)
  • "Windows' volume OSD" (On Screen Display),
  • "Windows' volume box"

For the purposes of Streamling the above are all effectively the same thing, so an app like Plexamp just needs to support any of the above and it will automatically be supported. Alternatively if Plexamp adds the artist and song title to the app's title (like Spotify does) I could add support too.

This was a fun play through. Hope you keep developing it

...and arrow keys for movement

Other games in the jam have recommended playing in Chrome (and not Firefox) to avoid choppy music. I only get choppy music in Firefox for this one too.

YouTube Music Desktop App is properly supported now.

Added.

Hi sparklinghallow, 

I'm hoping you mean the unofficial "YouTube Music Desktop App" because that's the one I've started adding support for. And hoping it's not too late. Support is added to the new release I just put out but it doesn't work that well currently. It only gives the song title and sometimes that breaks too. 

I might have another go at it some time but I'm hoping their dev team make it a little easier. I made a request with them. I might eventually try integrating the companion app connection thing that it has but it adds a bunch of extra steps for users to use it that way (and for me to integrate it). It would be nice as an option though.

So anyway, you can try using the new Streamling 1.6 release with ytmdesktop but it might be a little broken and disappointing for now

Streamling Overlay app now supports VirtualDJ by Atomix Productions. Here's the setup instructions.

In Settings > Mapping > Keyboard > ONINIT, you need to make the following ONINIT action:

repeat_start 'streamling_loop' 2500ms & set '@$streamling_d1' `deck 1 get_artist_title` & set '@$streamling_d1_vump' `deck 1 get_vu_meter_peak` & set '@$streamling_d1_ia' `deck 1 is_audible` & set '@$streamling_d2' `deck 2 get_artist_title` & set '@$streamling_d2_vump' `deck 2 get_vu_meter_peak` & set '@$streamling_d2_ia' `deck 2 is_audible` &  set '@$streamling_clock' `get_clock 24` & save_config

That's it. Streamling should now pick up your current track in VirtualDJ.

Note: this will save your VirtualDJ settings every 2.5 seconds. Hopefully this isn't a problem for you.

How it works: While VirtualDJ is open, every few seconds Streamling polls VirtualDJ's settings.xml. which now contains variables with the current tracks you're spinning and other details like their volume. If you're using both turntables, the loudest one (according to its vu_meter_peak) will be shown by Streamling Overlay.  If a track isn't audible it won't be shown.

In theory, up to 6 turntables are supported, but you'd need to add work out the above ONINIT action, and extend it to add a bunch of d3, d4, d5, and d6 variables. Comment below if you try it.

If you have a suggestion for a better way of exporting text from VirtualDJ (using vdjscript) let me know. I found a forum post requesting a "log_to_file" command, which would be great, but the post was from 2015 and had no replies. The other option might be to make a VirtualDJ plugin in C/C++.

Happy VDJing.

(5 edits)

If you're a user of butt ("broadcast using this tool"), you can add song metadata to your butt stream with the help of Streamling.

  1. Make sure Streamling Overlay app is running
  2. In butt, go to settings > stream > Update song name from file: 
    • %UserProfile%/Documents/streamling/livetext/nowplaying-minimal.txt
  3. (Also in butt): Make sure the "Activate" checkbox is checked.
  4. That's it, you're done. Butt will now receive the current artist and song title of whatever music you're playing in any music player supported by Streamling Overlay while both are running.

You can alternatively choose the filenowplaying-minimal-ascii7.txt(which is found in the same directory) if you want artists and song titles to use only the basic US-ASCII characters. Diacritics will be removed; Any Unicode character that can't be represented will be replaced with "?". I recommend you just use nowplaying-minimal.txt though which contains Unicode and is supported by butt.

You can also adjust other settings, such as "Update song name delay" or "Extend song name" if you want to. You don't need to copy those settings from the screenshot.

Note: Unlike other setup instructions, these are to setup sending metadata to butt, not the other way around. I guess you worked that out by now. Though Streamling has a built-in Icecast server which butt can connect to, Streamling cannot receive metadata from butt so there's little reason to connect to it. Maybe it's useful for testing. But testing what? I don't know. It was useful for quickly making a screenshot of butt in use I guess. Instructions for setting up Streamling's Icecast server are in the Traktor setup instructions, by the way, which, again, are not useful for butt. Anyway, enjoy your broadcast, butt user.

screenshot of butt
Screenshot of Butt with "Update song name from file" set to: %UserProfile%/Documents/streamling/livetext/nowplaying-minimal.txt
(8 edits)

These are instructions for Streamling Overlay v1.5. It may change in future versions.

For now, setting up Streamling to work Traktor Pro involves editing a text file.

How it works under the hood: Traktor Pro communicates with Streamling by sending an audio stream which includes song metadata. The stream uses the Icecast protocol, which is typically used for broadcasting internet radio, but here it's just to get two apps to talk to each other on the same PC. Streamling picks up the song metadata which Traktor embeds in the ogg vorbis data and discards the rest. Easy, right? Let's set up Streamling so it listens for Icecast streams.

Enable Streamling's Icecast server

Find the config file for Streamling Overlay. You can find it via this hidden right-click menu, or navigate in explorer to %UserProfile%/Documents/streamling/config/


Fig 1: A shortcut to C:\Users\YOUR USERNAME\Documents\streamling\config\


Close Streamling so we can edit config.json.

  • Open config.json in your fav text editor
  • Change "icecast-server":"off"  to   "icecast-server":"on"
  • You can also choose an icecast-server-password here (replace "hackme"). Do not use an important password.
  • Save
  • You can re-open Streamling Overlay now. It will be running an Icecast server now (Sorry, there's currently there's no user feedback to let you know)

Fig 2. Turning on icecast server by editing config.json in a text editor

For reference, here's the default config but with the icecast server turned on:

{"config":{"port":"9696","auto-port":"on","start-server-on-launch":"on","debug":"off","check-for-updates":"on","icecast-server":"on","icecast-server-port":"8000","icecast-server-user":"source","icecast-server-password":"hackme","uncertainty-timer":"00:01:30"}}

If you mess up the file you can delete it and new default config will be created when you launch Streamling Overlay app.

Connect to Streamling's Icecast server in Traktor Pro

In Traktor Pro 3, open preferences (a cog at the top right)


Fig 3. Traktor Pro 3 broadcast settings

Under the Broadcasting tab, set up the following:

  • Address: localhost
  • Port: 8000
  • Password: hackme  (or whatever you set)
  • Format: must be Ogg Vorbis. Might as well be the lowest quality as we're ignoring audio.
  • Mount path and Metadata Settings are ignored
  • Traktor Pro always uses the username "source".


With Streamling Overlay running, hit the "Broadcast" button. If the light stays solid, then the link has been established. (Again, apologies as there's no indicator on the Streamling Overlay app for this as yet)

Fig 4. The "broadcast" button for connecting to Streamling Overlay.


That's it.

  • Spin some tunes. The track names will appear on your Streamling Overlay.

Notes:

  • Tracks by the artist "Native Instruments" are ignored. This is to avoid showing the names of drum samples, etc on your stream.
  • You can also edit the Uncertainty Timer in config.json. It counts down how long Streamling Overlay will display a track name when it has no indication whether it's actually playing or not. Songs played on Traktor Pro are displayed for 90 seconds by default.
(2 edits)

Streamling now supports displaying song titles from Pretzel Rocks !

To get song titles from the Pretzel Rocks app, follow this one time setup:

  1. Open "Pretzel" windows app
  2. Login if you haven't already
  3. Click your profile pic (top right)
  4. Navigate to the setting: File Output > Save Now Playing JSON file
  5. Set the JSON file to:

%UserProfile%\Documents\Streamling\incoming\pretzel.json

or

C:\Users\YOUR_USERNAME\Documents\Streamling\incoming\pretzel.json

If the file already exists, "Yes," replace it.


Setup:

Pretzel Rocks instructions gif


Sorry, Streamling doesn't give any indication yet if the json file isn't found or isn't getting updated.