Closed dewiweb closed 4 years ago
As noted in wiki status, Lawo is only tested for POC on the Radio software, and is not in any working condition. Plans are to implement it sooner than later. But it depends on someone to sponsor it, or when it fits into my timeline. Right now, main focus is running GUI inside Sofie, and multitouch on touch screens.
But it's high on my own list as it's something that would helt a lot of people.
Hi Dewiweb,
While digging a bit further into a future Lawo implementation, I discovered that selecting Lawo or Studer protocol would cause Sisyfos to crash. (And need crashing until the settings.json file in storage folder is deleted.
This is fixed in latest develop branch and in tag: v2.9.4 (if you run it as docker)
@olzzon
I have an onair emulator in Ember but not Ember+ and I am not able to get Directory or other and always crc error.
If you have an Private email, I could share the emulator and you could try if you want and let us know the satus
Best Regards Youssef
Hi yboujraf,
As mentioned before Ember is NOT working, so unless you´re developing the code you have to wait. It will come.
I do have the emulator etc. But currently there are more important things (for us) to be made.
Hi @yboujraf If you could post me the tree structure for your LAWO MC, then I´ll do a preliminary test protocol. I'm currently testing the latest NodeJS Ember+ (dufourgilles fork) using the Lawo Relay VRX4. I'm working in the "feat/lawo-mc" branch, if you wish to sneak peak :)
Dear @olzzon
For your information, the repository you mentioned was fully tested by me with the MC²56 MKIII & NOVA73HD on latest release of V1. Never tested on V2.
FYI : I am still using latest release of Version 1 of the library you referred because, in Version 2 (this is more a refactoring) all the commands are incompatible with the version of the owner, NRKO and EVS repositories. V2 makes a break of your previous code and performance too is affected.
=> I tested all the use cases : QualifiedNodes, QualifiedParameters, QualifiedMatrix and QualifiedFunctions and subscribe to streamidentifiers ;-)
Normally with the library, you could expand all in one file and in your case, you need only the node path"2" where all the signals are in the INP path (faders).
Just for your information INP is a target & source on the Matrix. That means if you need the COMM 1 (Commentary 1) source on it you need to assign it first.
Remarks : the path could be different between the screen capture and the expand of the Signals node (depend of the config loaded).
I hope it will help you to finalize your Ember+ connector.
This library is not compliant with the first version of ember Studer is using to connect with the Console or Route6k or other.
If you want I have the emulator of the On air3000 and Vista server but CRC error ;-) when trying a connect and keepAlive.
I hope this answer will help you to finalize your connector and make @dewiweb happy.
Best regards, Youssef
Thanks a lot Youssef, Thats great info for further implementation. Last summer I gave up on Studer, and also gave up on rewriting the Node-Ember. So I think the v2 refactoring is great news, and though there are some issues, it's a way better code than v1, and Sisyfos (in feat/lawo-mc branch) has been refactored to the new V2.
Regarding Lawo is it on V2 that you have tested these parts? I Tried to get V2 to run on Studer with no luck, so when Lawo is running I´ll dig into that.
Thanks 😊
Dear @olzzon
Your are welcome.
It took 3 weeks and 16 hours/day to test the V1 and to fix issues with the owner of the forked repo of EVS and finally not in the contributor ;-)
All are tested with EmberPlusViewer, vsmStudio and the code itself.
It works without issues and it is enough for me but dependent of the EVS fork and ASN from EVS fork too.
it works too but as told, no way to back to V1, performance not good if you compared from V1 and the refactoring is not enough. Promise issues and too much duplication of codes herited from previous fork) If you spent time you will discover that some manufacturers are not respecting the ember+ specifications ;-) then when you think you fixed an issue you discover a new one.
=>the idea is to become independent of EVS forks and/or rewrite from scratch a new EmberLib in TypeScript more typed and not find "any" anywhere
If you have chance to have a connector for that I am your guy for testing it.
Best Regards, Youssef
Here My MC2 tree, It's most efficient for us to control GPC channels (linkable with input or outup channels). So, I send you .ember and .xml tree files with GPC1 paths.
Regards, Dewiweb
Here the test log of lawo-mc branch with the first error:
yarn run v1.21.1 $ node dist/server/index.js --loggerConsoleLevel=verbose Elastic Ip : 0.0.0.0 Elastic Port : 9200 {"message":"Setting up Ember connection","level":"info"} info: Setting up Ember connection {"message":"Connecting to Ember","level":"info"} info: Connecting to Ember {"level":"info","message":"OSC Automation listening on port 5255"} info: OSC Automation listening on port 5255 {"level":"info","message":"Setting up MainThreadHandlers"} info: Setting up MainThreadHandlers {"level":"info","message":"SETTINGS UP STATE"} info: SETTINGS UP STATE {"message":"Initialising WebServer","level":"info"} info: Initialising WebServer {"level":"info","message":"Listening for Automation via OSC over UDP."} info: Listening for Automation via OSC over UDP. Getting Directory {"level":"info","message":"Client connected :ANrRU2AywXwh4u7UAAAA"} info: Client connected :ANrRU2AywXwh4u7UAAAA {"level":"info","message":"SETTING UP SOCKET IO MAIN HANDLERS"} info: SETTING UP SOCKET IO MAIN HANDLERS {"message":"Set faderlevel Channel : 1 Level : 0.73","level":"verbose"} Directory : TreeNode { _parent: null, _subscribers: Set {}, elements: Map { 2 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '2', _seqID: 106, contents: [NodeContents] }, 25030 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '25030', _seqID: 106, contents: [NodeContents] }, 300809 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '300809', _seqID: 106, contents: [NodeContents] }, 915053 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '915053', _seqID: 106, contents: [NodeContents] }, 1012547 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '1012547', _seqID: 106, contents: [NodeContents] }, 1012633 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '1012633', _seqID: 106, contents: [NodeContents] }, 1012697 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '1012697', _seqID: 106, contents: [NodeContents] }, 1012701 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '1012701', _seqID: 106, contents: [NodeContents] }, 1012704 => QualifiedNode { _parent: [TreeNode], _subscribers: Set {}, path: '1012704', _seqID: 106, contents: [NodeContents] } } } {"message":"Set faderlevel Channel : 1 Level : 0.72","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.71","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.7","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.71","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.73","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.74","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.75","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.76","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.77","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.76","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.74","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.71","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.69","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.67","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.66","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.64","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.61","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.59","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.58","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.56","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.55","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.54","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.53","level":"verbose"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"info","message":"Client connected :st7N84ihiHUeaAGQAAAB"} info: Client connected :st7N84ihiHUeaAGQAAAB {"level":"info","message":"SETTING UP SOCKET IO MAIN HANDLERS"} info: SETTING UP SOCKET IO MAIN HANDLERS {"level":"info","message":"Get snapshot list"} info: Get snapshot list {"level":"info","message":"Get snapshot list"} info: Get snapshot list {"level":"info","message":"Settings initial store on :st7N84ihiHUeaAGQAAAB"} info: Settings initial store on :st7N84ihiHUeaAGQAAAB {"level":"info","message":"Settings initial store on :st7N84ihiHUeaAGQAAAB"} info: Settings initial store on :st7N84ihiHUeaAGQAAAB {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"message":"Set faderlevel Channel : 1 Level : 0.52","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.51","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.5","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.49","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.48","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.47","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.46","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.45","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.44","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.42","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.41","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.39","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.37","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.34","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.32","level":"verbose"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"message":"Set faderlevel Channel : 1 Level : 0.3","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.28","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.26","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.24","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.22","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.2","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.18","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.16","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.15","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.14","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.13","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.11","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.1","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.09","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.08","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.07","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.02","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.04","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.06","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.08","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.09","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.11","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.14","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.19","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.24","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.3","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.37","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.4","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.44","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.48","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.53","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.58","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.62","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.65","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.69","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.73","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.76","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.78","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.8","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.82","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.83","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.85","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.87","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.89","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.9","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.91","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.92","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.93","level":"verbose"} {"message":"Set faderlevel Channel : 1 Level : 0.94","level":"verbose"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} {"message":"Set faderlevel Channel : 2 Level : 0.74","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.7","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.66","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.59","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.52","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.44","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.36","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.27","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.18","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.08","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.08","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.19","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.31","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.42","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.53","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.62","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.69","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.73","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.76","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.78","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.79","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.8","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.81","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.82","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.83","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.85","level":"verbose"} {"message":"Set faderlevel Channel : 2 Level : 0.87","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0.57","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0.31","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0.24","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0.16","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0.09","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0.03","level":"verbose"} {"message":"Set faderlevel Channel : 3 Level : 0","level":"verbose"} {"level":"verbose","message":"Snapshot /home/regie/sisyfos-audio-controller/storage/default.shot Saved to storage folder"} Sending out Level : undefined Ember Error TypeError: Cannot read property 'isParameter' of undefined at /home/regie/sisyfos-audio-controller/node_modules/node-emberplus/EmberClient/EmberClient.js:593:23 at new Promise (<anonymous>) at EmberClient.setValue (/home/regie/sisyfos-audio-controller/node_modules/node-emberplus/EmberClient/EmberClient.js:592:16) at EmberMixerConnection.sendOutLevelMessage (/home/regie/sisyfos-audio-controller/dist/server/utils/mixerConnections/EmberMixerConnection.js:142:30) at EmberMixerConnection.updateFadeIOLevel (/home/regie/sisyfos-audio-controller/dist/server/utils/mixerConnections/EmberMixerConnection.js:170:14) at Timeout._onTimeout (/home/regie/sisyfos-audio-controller/dist/server/utils/MixerConnection.js:277:39)
Hi Deviweb,
First focus will be Ruby implementation, and then later MC2 implementation. If you mail me your email address I can invite you to the Sisyfos slack channel on: http://sofietv.slack.com#sisyfos unless it's already public :)
Dear
I am interresting too.
Youssef Boujraf - Chat @ Spike [e6qd5]
On February 24, 2020 at 11:22 GMT, Kasper Olsson Hans notifications@github.com wrote:
Hi Deviweb,
First focus will be Ruby implementation, and then later MC2 implementation. If you mail me your email address I can invite you to the Sisyfos slack channel on:http://sofietv.slack.com#sisyfos
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
Does anyone of you have a way to convert an XML dump XML to .EmBER fileformat for tinyEmberplus to read, or another way to create a new one? In the files received from @dewiweb the .EmBER files are empty when I load them in TinyEmberPlus
Hello @olzzon , What's the best way to send you my email address anonymously (not in issue flow)!
@dewiweb go to my GitHub profile, it should be there
As NRK has build Lawo support into Sisyfos this case will be closed
Hi olzzon, What's is the best way to test your audio controller with a mc² lawo console (ember+ implementation)? Which controls are available?