Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Apr 12 03:07

    brunchboy on master

    Finish QLC+ integration example. (compare)

  • Apr 11 20:38

    brunchboy on master

    Add first draft of QLC integrat… (compare)

  • Apr 11 17:17
    brunchboy commented #51
  • Apr 11 11:38
    mganss commented #51
  • Apr 11 04:53

    brunchboy on master

    Remove redundant color table #5… (compare)

  • Apr 11 04:28
    brunchboy closed #51
  • Apr 11 04:28

    brunchboy on master

    Support more cue color codes, c… (compare)

  • Apr 11 04:24
    brunchboy commented #51
  • Apr 10 21:52

    brunchboy on master

    Embed async HTTP client so expr… (compare)

  • Apr 10 21:03
    brunchboy labeled #126
  • Apr 10 21:03
    brunchboy opened #126
  • Apr 10 19:55

    brunchboy on master

    Fix running phrase trigger cue … (compare)

  • Apr 08 10:29
    mganss commented #51
  • Apr 06 14:04
    mganss commented #51
  • Apr 06 13:39
    brunchboy commented #51
  • Apr 06 11:01
    mganss opened #51
  • Mar 28 19:24

    brunchboy on master

    Draw playback position marker i… (compare)

  • Mar 28 07:13

    brunchboy on master

    Clean up unused imports and loc… Fix calls to some functions who… Fix display of player position … (compare)

  • Mar 28 05:38

    brunchboy on master

    Add link to change log, #119 [s… (compare)

  • Mar 28 05:32
    brunchboy commented #111
supersport05
@supersport05

Hi @brunchboy Please forgive me for the super rookie question, but I've got this hooked up where i'm able to get the default 2-deck view working in my OBS stream. What i'd like to do is modify it to show the master deck's artist / track title / maybe even cover art, but not both. I only really need the text, not really any of the fancy waveforms etc. When I read the user guide for the OBS overlay, it says

"Beat Link Trigger ships with a default template that is served unless you specify your own templates folder, which you can do by clicking Choose on the Templates Folder row. It will allow you to navigate to and select any folder your system, as long as there is a readable overlay.html file in that folder. "

Question i have is, where do i get such an overlay.html file? I was trying to just copy the default's html code and delete stuff, save that as overlay.html. But it isn't recognized by OBS Overlay Webserver when I attempt use it. Is this something I can create? Am I even on the right track to accomplish this?

James Elliott
@brunchboy
That should be all you need to do, yes.
Where did you get the overlay.html you are starting with?
James Elliott
@brunchboy
I’m not at my computer right now @supersport05 but I will take a look later and see if I can help clarify.
supersport05
@supersport05

@brunchboy I just created it...perhaps that's no bueno. I just copied / pasted the html from the default template and pasted it into a text editor on my mac, saved it as "overlay.html". I can now get it to recognize my overlay.html file, but when i run it it just shows me the code itself. Not the interpretation of the code

No worries man, appreciate your help

Looking through github, i found where you post the template overlay.html file. I opened it up in a text editor and see there are many many more lines than what shows on github (~2200 vs 200-ish). Guess you must be using something to compile the overlay.html file itself, not just simple text editor....
James Elliott
@brunchboy
It sounds like you are following the exact right path. I need you to be very precise and explicit about the steps you are trying though in order to be able to help. For example, what do you mean when you say “when I run it it just shows me the code itself”. What does “run” mean in that sentence?
Have you placed your edited version of overlay.html into a folder, and configured BLT to serve the OBS overlay from that folder?
I am re-reading the user guide now to remind me how this is supposed to work, it’s been out of my head for too many months for me to remember. :smile:
Also, sounds like something went horribly wrong. I can’t imagine how you got 2200 lines vs 200. What do you mean by “where I post” the file? Did you clone the repo from GitHub?
There are 226 lines in the overlay.html template. If you opened something with 2200 lines in it, then that was something else.
James Elliott
@brunchboy
Ok, @supersport05 I think I understand what happened, you must have hit “Save” in your browser while you were looking at the page describing overlay.html on GitHub. What you saved was the entire GitHub page, with the user interface for browsing GitHub and all the other stuff on the page; my overlay source was only a tiny fraction of what was there, and it was formatted in a way that can’t be used. That won’t work. You’ll need to either learn how to clone the beat-link-trigger repository and get the file that way, or click the raw button on the top of the listing on the GitHub UI before trying to save that page.
And when you do that, many browsers are going to want to add .txt to the filename, you’ll need to take that back off and verify that the lines you got match what the file is supposed to have in it. You may want a code editor rather than just a text editor, too.
James Elliott
@brunchboy
Do you have any web developer friends who could perhaps help you tweak the template? If not, you’re going to have to become a bit of one. :smile:
Oh, another thing you could try is to just drag to select all the lines of my overlay.html source on that GitHub page, and copy and paste them into your editor. Once you get to a point where you can get BLT behaving the same with your Templates folder as it was with the built-in one, then you can start trying to remove the parts of the template you don’t want.
supersport05
@supersport05

There are 226 lines in the overlay.html template. If you opened something with 2200 lines in it, then that was something else.

I went here...and downloaded a copy of this file:

https://github.com/Deep-Symmetry/beat-link-trigger/blob/master/resources/beat_link_trigger/templates/overlay.html

I tried opening the file up in a text editor "Brackets", and it appears to have copied the entire page i guess (2200 lines) lol

James Elliott
@brunchboy
Yes, you downloaded a copy of the GitHub page describing the file and letting you do all kinds of GitHub actions, not the file itself. :smile:
supersport05
@supersport05

Oh, another thing you could try is to just drag to select all the lines of my overlay.html source on that GitHub page, and copy and paste them into your editor. Once you get to a point where you can get BLT behaving the same with your Templates folder as it was with the built-in one, then you can start trying to remove the parts of the template you don’t want.

On it. I once knew a hint of HTML CSS and JS...but you know what they say happens if you don't use it.... :D

James Elliott
@brunchboy
I know, if I were more web-focused I would make more varieties of templates available and you might not even have to do this work! But I’m not, I am rusty at that side of things, so it is best for me to focus on the parts of Beat LInk Trigger that only I can do, and hope that some web developer will get interested and help us out and create some great templates.
supersport05
@supersport05
No worries...i'll hack and stumble my way through this. I think what i'm after is literally deleting and reformatting things. I was just confused earlier because i was using inspect from google chrome and instead of seeing things like "{Player1:Track}.... i was seeing it already hardcoded "Player 1 - Paul van Dyk". So i was confused where to put the template parameters.
James Elliott
@brunchboy
Yes, if you look at the output from BLT, the parameters will already be replaced. Good luck and thanks for trying this! Please share your results when you’re happy (and of course feel free to keep asking questions).
supersport05
@supersport05
Sure thing! Making progress...all the hard work was already done before I got here...I'm just removing things and formatting :D
supersport05
@supersport05

@brunchboy K, so i've got my overlay.html file outputting almost exactly how I want it i.e. master deck's track title in big letters, artist name under that & cover art left of both lines. Formatting is nearly correct. I have it loaded in OBS and OBS shows the right stuff.

Trouble is when I change tracks, OBS doesn't update. If I click the "Open in Browser" button in OBS Overlay Web Server it shows the updated information, but I have to it manually. I'm guessing I'm missing some setting the OBS Overlay Web Server side that watches when the master deck changes and updates.

FWIW, when I change tracks and watch BLT, it shows the Master track update instantly.

supersport05
@supersport05
Just uncommented out some stuff...and things are updating...just not MY code. I must've messed up the updating part of the code...Sorry for the learning curve here. :(
James Elliott
@brunchboy
Sorry, I was cooking and eating dinner. Without seeing what you have done, it’s impossible for me to guess what might be wrong. At this point it might also be helpful to get help from an OBS forum as well, because I know very little about that side of things.
Looking over my code, there was a loop to update the page periodically. If you took out some of the elements that it was trying to update, I could imagine it would crash. You need to make sure the update code is consistent with what you actually have on the page. You might see error messages in the browser Javascript console if you open the page in the browser and let it sit for a while, and that might help you debug the issue.
James Elliott
@brunchboy
If you have added your own elements, rather than just moving and changing the styling on mine, then you need to add code to update your own new elements (and you need to assign them IDs that will allow that to work). This will require understanding some related JavaScript, HTML, and DOM concepts.
I am sorry this is complex, but it was the only way to get things to look decent as an OBS overlay. I used to just render everything in the template, and configure the page to refresh several times a second, but unfortunately OBS doesn’t do double-buffering, so that caused the entire overlay to flicker horribly.
And again, I’m sorry I can’t be a ton of help here, this is really web developer territory. If you could get someone from OBS interested in helping make this work well, that would be awesome.
densma1
@densma1
im testing CDJ-3000 with BLT. unfortunately the phase meter no longer works on CDJ-3000 if ableton link is the master.
everything else works and stays on sync except the ability to see master phase. not sure if that's Carabiner issue or BLT. type 2 phase meter is replaced with stacked wave
James Elliott
@brunchboy
Thanks for the report. I’m surprised so much works. I don’t know if or when I will be able to work with a 3000, so if you can find a way to fix this, pull requests in the dysentery, and beat link projects would be most welcome!
densma1
@densma1
Im not a programmer. not sure how to fix it. I just plan to use it with my ears lol.
it maybe due to changes in phase meter on cdj-3000. new stacked waveform and removed type 2 phase meter.
i personally prefer type 2 to type 1. hopefully they will bring it back
James Elliott
@brunchboy
I don’t know what the different types are, is there a diagram anywhere? In any case, we should be able to get the same results that any older player has with the 3000, so there must be something different between what the fake CDJ in Beat Link is sending and what the 3000 expects (unless the new phase meter also doesn’t work with older CDJs).
From what you’re saying, though, the waveform display on the XDJ-XZ sounds similar.
Anyone can contribute to the protocol analysis in dysentery, as long as they are willing to learn how to run Wireshark and read network traffic captures. :smile:
densma1
@densma1
I dont have XZ anymore but XZ didnt have phase meter. DJS-1000 /1000MK2 does.
see screen shot. shows beat link of the other player
yes. my DJS-1000 can read and display beat on phase meter from Abelton link, if its the master. act like another pro-link
same for 1000mk2
densma1
@densma1
I think it may be cdj-3000 issue not backward compatible yet. I dont have other deck to test apart from djs-1000
DJS-1000 on pro-link with cdj-3000 shows the same thing. no phase meter.
Kevinnns
@Kevinnns
@densma1 I thought Phase 1 vs Phase 2 meters are a setting in Rekordbox that you can push in My Settings and save to your USB and all that
Don't think changing that would make it work with BLT or anything though, probably the way they are sending grid information is a bit different. I've seen with past releases that it took Pioneer some time to allow interaction with older devices in a mixed network as well. So might be as you're expecting
densma1
@densma1
@Kevinnns yea.. using shortcut on XDJ-1000 and other CDJs standalone let you select phase 1 or 2. both shows beat meter for master deck and same for ableton link through carabiner link. since its not working with older pro-link device means its not supported yet. it might something new with introduction of stacked wave form. Pioneer going to hold on to get people to upgrade to 3000.
James Elliott
@brunchboy
So this sounds like really good news then, and Beat Link is working remarkably well with the 3000s? I still do need to add support for real players with numbers up to six (and displaying all of them in Player Status), but that is something I can do speculatively, and wait for someone with six CDJ-3000s to tell me how it actually works in practice. :smile:
densma1
@densma1
yes. really good news. maybe someone will be kind enough to send you 6 cdj-3000 for testing
Pim W
@PimW_gitlab
Hi James, i've copy-pasted both logs for you. There are some small differences, but i am not sure how relevant these are.
java -jar /home/pi/Downloads/open-beat-control-0.1.0.jar --bridge --latency 1
2020-Sep-21 20:40:23 INFO [open-beat-control.logs:87] - Open Beat Control version 0.1.0-SNAPSHOT-77-0x949a built Wed May 13 03:03:36 UTC 2020
2020-Sep-21 20:40:23 INFO [open-beat-control.logs:88] - Java version 11.0.7, OpenJDK Server VM, Raspbian
2020-Sep-21 20:40:23 INFO [open-beat-control.logs:89] - Operating system version Linux 4.19.118-v7l+
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by clojure.lang.InjectedInvoker/0x6fcabc28 (file:/home/pi/Downloads/open-beat-control-0.1.0.jar) to method sun.nio.ch.DatagramSocketAdaptor.bind(java.net.SocketAddress)
WARNING: Please consider reporting this to the maintainers of clojure.lang.InjectedInvoker/0x6fcabc28
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
2020-Sep-21 20:40:23 INFO [open-beat-control.core:193] - Running OSC server on port 17002
2020-Sep-21 20:40:23 INFO [open-beat-control.core:206] - Waiting for Pro DJ Link devices...
2020-Sep-21 20:40:23 INFO [open-beat-control.core:165] - Trying to connect to Carabiner daemon on port 17000 with latency 1
2020-Sep-21 20:40:23 INFO [org.deepsymmetry.libcarabiner.Runner:261] - Starting Carabiner 1.1.3 on port tcp://127.0.0.1:17000
2020-Sep-21 20:40:24 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:3, name:DJS-1000, address:192.168.2.4]
2020-Sep-21 20:40:24 INFO [org.deepsymmetry.beatlink.VirtualCdj:883] - Found matching network interface eth0 (eth0), will use address /192.168.2.20/24 [/192.168.2.255]
2020-Sep-21 20:40:24 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:17, name:rekordbox, address:192.168.2.9]
2020-Sep-21 20:40:24 INFO [beat-carabiner.core:324] - Connected to Carabiner daemon, version: 1.1.3
2020-Sep-21 20:40:31 INFO [open-beat-control.core:135] - Virtual CDJ running as Player 5
2020-Sep-21 20:40:31 WARN [org.deepsymmetry.beatlink.Util:263] - Do not know any Pro DJ Link packets received on port 50002 with type 0x10.
2020-Sep-21 20:40:31 WARN [org.deepsymmetry.beatlink.VirtualCdj:397] - Ignoring unrecognized packet sent to update port.
2020-Sep-21 20:40:31 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:1, name:XDJ-XZ, address:192.168.2.3]
2020-Sep-21 20:40:31 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:2, name:XDJ-XZ, address:192.168.2.3]
2020-Sep-21 20:40:31 WARN [org.deepsymmetry.beatlink.VirtualCdj:2500] - Ignoring mixer device number assignment offer; we are not claiming a device number!
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.dbserver.ConnectionManager:308] - Player 3 doesn't answer rekordbox port queries, connection refused, not yet ready?
2020-Sep-21 20:40:31 WARN [org.deepsymmetry.beatlink.VirtualCdj:2500] - Ignoring mixer device number assignment offer; we are not claiming a device number!
2020-Sep-21 20:40:31 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:33, name:XDJ-XZ, address:192.168.2.3]
2020-Sep-21 20:40:31 WARN [org.deepsymmetry.beatlink.VirtualCdj:2500] - Ignoring mixer device number assignment offer; we are not claiming a device number!
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:3, name:"DJS-1000".
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:2, name:"XDJ-XZ".
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:1, name:"XDJ-XZ".
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:17, name:"rekordbox".
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.CrateDigger:91] - CrateDigger starting because MetadataFinder[running:true, passive:false, loadedTracks:{}, mountedMediaSlots:[], mountedMediaDetails:[], metadataCacheFiles:{}] has.
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:354] - Recording rekordbox collection mount.
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:947] - Reporting media mounted in SlotReference[player:17, slot:COLLECTION]
2020-Sep-21 20:40:31 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:33, name:"XDJ-XZ".
2020-Sep-21 20:40:31 WARN [org.deepsymmetry.beatlink.CdjStatus:607] - Received CDJ status packet with reported payload length of 292 and actual payload length of 256
2020-Sep-21 20:40:31 INFO [beat-carabiner.core:261] - Realigning to beat 15 by 0.6210299999999993
2020-Sep-21 20:40:31 INFO [beat-carabiner.core:261] - Realigning to beat 17 by 0.6282999999999994
2020-Sep-21 20:40:31 INFO [beat-carabiner.core:261] - Realigning to beat 18 by 0.991658000000001
2020-Sep-21 20:40:32 INFO [org.deepsymmetry.beatlink.dbserver.ConnectionManager:308] - Player 3 doesn't answer rekordbox port queries, connection refused, not yet ready?
2020-Sep-21 20:40:32 INFO [beat-carabiner.core:261] - Realigning to beat 19 by 0.9991209999999988
2020-Sep-21 20:40:32 INFO [beat-carabiner.core:261] - Realigning to beat 20 by 0.9989230000000013
2020-Sep-21 20:40:33 INFO [beat-carabiner.core:261] - Realigning to beat 23 by 0.9998889999999996
2020-Sep-21 20:40:34 INFO [org.deepsymmetry.beatlink.dbserver.ConnectionManager:308] - Player 3 doesn't answer rekordbox port queries, connection refused, not yet ready?
2020-Sep-21 20:40:34 INFO [beat-carabiner.core:261] - Realigning to beat 24 by 0.9990389999999998
2020-Sep-21 20:40:37 INFO [org.deepsymmetry.beatlink.dbserver.ConnectionManager:308] - Player 3 doesn't answer rekordbox port queries, connection refused, not yet ready?
2020-Sep-21 20:40:37 INFO [org.deepsymmetry.beatlink.dbserver.ConnectionManager:323] - Player 3 never responded with a valid rekordbox dbserver port. Won't attempt to request metadata.
2020-Sep-21 20:40:41 INFO [beat-carabiner.core:261] - Realigning to beat 40 by 0.9998689999999968
ava -jar /home/pi/Downloads/open-beat-control-0.1.1-Preview.jar --bridge --latency 1
2020-Sep-21 20:41:29 INFO [open-beat-control.logs:86] - Open Beat Control version 0.1.1-SNAPSHOT-2-0x9cc7 built Sat Sep 12 23:21:06 UTC 2020
2020-Sep-21 20:41:30 INFO [open-beat-control.logs:87] - Java version 11.0.7, OpenJDK Server VM, Raspbian
2020-Sep-21 20:41:30 INFO [open-beat-control.logs:88] - Operating system version Linux 4.19.118-v7l+
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by clojure.lang.InjectedInvoker/0x6fbabc28 (file:/home/pi/Downloads/open-beat-control-0.1.1-Preview.jar) to method sun.nio.ch.DatagramSocketAdaptor.bind(java.net.SocketAddress)
WARNING: Please consider reporting this to the maintainers of clojure.lang.InjectedInvoker/0x6fbabc28
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
2020-Sep-21 20:41:30 INFO [open-beat-control.core:193] - Running OSC server on port 17002
2020-Sep-21 20:41:30 INFO [open-beat-control.core:206] - Waiting for Pro DJ Link devices...
2020-Sep-21 20:41:30 INFO [open-beat-control.core:165] - Trying to connect to Carabiner daemon on port 17000 with latency 1
2020-Sep-21 20:41:30 INFO [org.deepsymmetry.libcarabiner.Runner:261] - Starting Carabiner 1.1.4 on port tcp://127.0.0.1:17000
2020-Sep-21 20:41:31 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:17, name:rekordbox, address:192.168.2.9]
2020-Sep-21 20:41:31 INFO [org.deepsymmetry.beatlink.VirtualCdj:883] - Found matching network interface eth0 (eth0), will use address /192.168.2.20/24 [/192.168.2.255]
2020-Sep-21 20:41:31 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:3, name:DJS-1000, address:192.168.2.4]
2020-Sep-21 20:41:31 INFO [beat-carabiner.core:324] - Connected to Carabiner daemon, version: 1.1.4
2020-Sep-21 20:41:37 INFO [open-beat-control.core:135] - Virtual CDJ running as Player 5
2020-Sep-21 20:41:37 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:1, name:XDJ-XZ, address:192.168.2.3]
2020-Sep-21 20:41:37 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:2, name:XDJ-XZ, address:192.168.2.3]
2020-Sep-21 20:41:37 INFO [open-beat-control.core:216] - Pro DJ Link Device Found: DeviceAnnouncement[device:33, name:XDJ-XZ, address:192.168.2.3]
2020-Sep-21 20:41:37 WARN [org.deepsymmetry.beatlink.VirtualCdj:2574] - Ignoring mixer device number assignment offer; we are not claiming a device number!
2020-Sep-21 20:41:37 WARN [org.deepsymmetry.beatlink.VirtualCdj:2574] - Ignoring mixer device number assignment offer; we are not claiming a device number!
2020-Sep-21 20:41:37 INFO [org.deepsymmetry.beatlink.dbserver.ConnectionManager:308] - Player 3 doesn't answer rekordbox port queries, connection refused, not yet ready?
2020-Sep-21 20:41:37 WARN [org.deepsymmetry.beatlink.VirtualCdj:2574] - Ignoring mixer device number assignment offer; we are not claiming a device number!
2020-Sep-21 20:41:37 WARN [org.deepsymmetry.beatlink.CdjStatus:607] - Received CDJ status packet with reported payload length of 292 and actual payload length of 256
2020-Sep-21 20:41:37 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:2, name:"XDJ-XZ".
2020-Sep-21 20:41:37 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:351] - Processing device found, number:17, name:"rekordbox".
2020-Sep-21 20:41:37 INFO [org.deepsymmetry.beatlink.data.MetadataFinder:354] - Recording rekordbox collection mount.