View Single Post
Old 12-05-2016, 12:58 PM   #3
RobU
Human being with feelings
 
RobU's Avatar
 
Join Date: Sep 2009
Posts: 863
Default

Quote:
Originally Posted by Teddy View Post
I've been playing around with the new web interface system this weekend, and threw together my own interface with a more traditional layout.

During the process I made some experiences I thought it would be nice to share. This layout includes some elements that I think might make things easier for other people wanting to make their own.

It's based on knockout.js
The code in the original index.html is kind of tied to that layout, with styling-javascript popping up in the middle of the update procedure. I've tried to decouple it, and use a knockout.js viewmodel for updating the view. This makes it easy to change the layout and styling without having to worry about things not functioning right. Play around with it: all the bindings I've set up so far are in "logic-custom.js".

Hammer.js for touch events
Although setting up hammer.js to work with knockout.js was a bit of a hassle, it gives you quite a bit flexibility. I made two custom touch events: tap and panupdown. The first is a click/touch event that works on both desktop and mobile (even androids shitty touch events are handled here). The other is used on pan and volume adjustment: Just drag your finger up and down to adjust the value.

Thoughts on the web interface system
I think this really is a step in the right direction, but it would be better if Reaper pushed values when they actually change through websockets. That way it would be more responsive and work more like OSC. And there should really be a way to tell if there is a dialog message in reaper! Now, there's no way to tell...

Does anyone know how to scale the volume adjustments correctly??
Adjusting pan are now much smoother than when adjusting volume. This is because when I'm adjusting pan, I suspend the updates from reaper and update the UI directly. I would like to do the same for volume, but I can't figure out the proper steps (the logarithmic stuff is throwing me off)... Does anyone know how to do this correctly? Now I send TRACK/id/VOL/+1 or -1 to reaper to adjust the volume relative to the old value....

Have fun. Hope someone makes something interesting...

Download it here
https://stash.reaper.fm/v/29089/reaper-mixer.zip
That looks great, Teddy Off to give it a try
__________________
Return of the Dub Cadet - https://open.spotify.com/album/2t98A...lQ&dl_branch=1
RobU is offline   Reply With Quote