Git Product home page Git Product logo

resolvecollaboration's People

Contributors

jonnyhyman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

resolvecollaboration's Issues

Mission Control Server Crash - Resolve Database Create

The Mssion Control UI Crashes when trying to make a Resolve Database:
The following code appears in PowerShell after crash.

Windows 10
Resolve 17

File "C:\Users\XXXXXXXXX\Downloads\ResolveCollaboration-main\ResolveCollaboration-main\rmc\rmc_server.py", line 534, in database_create
cursor.execute(f"CREATE DATABASE {databasename} WITH OWNER='{username}'")
psycopg2.errors.SyntaxError: syntax error at or near "'michael333'"
LINE 1: CREATE DATABASE testdatabase WITH OWNER='michael333'

Fully-featured payware?

If you're interested, 👍 this and post other ideas below!

I'm trying to gauge interest for a paid version of this app, which would be far more powerful, adding:

  • Client
    • High performance, written in native languages (C++ Windows/Linux, Swift macOS)
    • 2 Factor Authentication
    • Embedded Wireguard Tunnel
    • Extended Userlist (IP/Location, Machine ID, Productivity)
    • Centralized Cloud Sync Info (Dropbox, Drive, etc…)
    • Interplanetary File System decentralized (peer-to-peer) project media storage and sync
    • Filecoin long-term project media storage and archiving
  • Server
    • Same as client, and...
    • Scalable to thousands of users
    • Seamless support for linked-star tunnels or maybe mesh networks?
    • More user information and security features (IP/Location lock, Machine ID lock, etc…)
  • Admin app:
    • Control unlimited number of servers from afar through a powerful admin web app

[Server] Leaked authentication server sockets

In spooky circumstances, the server app sometimes keeps authentication server sockets open even after closing the app. This is because the forked python processes are not killed properly. This seems to happen mostly after a crash of the server app

If this occurs, go to Activity Monitor/Task Manager, and quit any of the remaining processes manually, (they will be python processes) then start the server again

A deeper fix will be to provide a cleaner crash handling (upon unhandled exception, we should close all authentication sockets and then quit the app!)

Running rmc_server.py does not make GUI pop up on Windows 10/11

I downloaded, installed everything and when I run python rmc_server.py .
When I clicked it, windows asked if I would allow python to make changes to my computer, but after I answered yes, nothing happens as shown in the picture below.

Please help. Thanks!

Screenshot 2022-01-03 015145

Server Latency Issues with Mission Control

Is there anyway to speed up the latency between Client and Hosts?

I have been using DaVinci Mission Control for the past few weeks and I am really delighted with how well it works (at least when it does works). One common issue with my team members is server latency.

Editing on the Wireguard connection hasn't really been a big issue; however, my team members often have issues navigating through the project files in the media library. It works but there is often about 3-10 second load time whenever they click on a file. I suspect this is because every data packet is encrypted because of the Wireguard VPN Tunnel.

Although I do appreciate the encryption is there perhaps to speed this process up or even use a different VPN Tunnel to alleviate latency issues?

server doesn't run on Windows 10

I've been following the instructions for windows and got to this command.

"python rmc_server.py"

When I run that, "User Account Control" takes over the screen and asks if I want to let Python 3.9.5 make changes to my device. I click 'yes', and then I'm back to my screen waiting for a UI that never appears. The command doesn't exit, it just sits there.

Happy to provide more information if there's anything I can poke around and determine. rmc_client.py appears to run, or at least pops up a UI.

image

Network Configuration Problem ?

Hi,

Thanks for making this app a reality, I really needed that !

Here's my setup :

  • Mac mini with Mac OS 10.14.6 with DaVinci Project Server 17.1 as the server
  • Win 10 PC, iMac Pro (Catalina), Mac Pro Trashcan (Catalina) as clients

I installed all the pip package but when I launch the .app on the server it starts, I can switch to server mode, I can enter a passsword. But when I click on OK it crashes. Log file attached :)

resolvecollaboration_crash_macos10.14.6.txt

Any ideas ?

Thanks !

EDIT: I have the same problem on the python version on WIN10. But I have no logs. What am I missing ?

[Server] Turn into executable

macOS:

  • move all sudo commands to subprocess calls, which ask for sudo password each time, OR:
  • capture computer password at startup, hold throughout, use echo "password" | sudo -S ... to run commands as sudo automatically. but then we're holding computer passwords in memory. dodgy?

Windows:

  • require uac-admin on startup (doable with pyinstaller)
  • test that all privileges are actually given

[Server] Support spaces in postgres

Currently, spaces in usernames/database names will totally break hba_conf.

  • Need to add double-quotes to the hba conf format string.

  • While you're at it, make the role password mandatory in the "Create database" dialog so that there isn't a crash when it's an empty field in creating the database in the database list

[Client] A better way to do media mapping, stills gallery, proxy media, etc...

Currently, Resolve requires a restart after each change of the media mappings (Preferences > Media Mapping). This feature is pretty crucial for distance collaboration - to ensure two users don't have to keep relinking every time they come into the project.

  • The media mappings are stored in the System preferences file /Users/jonnyhyman/Library/Preferences/Blackmagic Design/config.dat, which is just plain text, so can be modified on the fly.

  • The first one in the list is used to store gallery stills and cache files, but those directories are not shared between machines, generally

The real question is how to force Resolve to update media mappings without restarting Resolve...

feature/idea: add docker/unraid?

Iv attempted to run this on unraid in a vm with mixed results (the fault of my vm)
running the app in a docker container would be much more elegant if there could be a webUI

Resolve Error: Cannot Enable Collaboration | Clients can't see each other via Wireguard

My friend and I get this error by DVR (DaVinci Resolve) when connecting to a project:

One person can connect to a project without any issues but the second person will get this error. Has BMD made some changes to DVR and now it's not fooled by the VPN approach anymore?

What we've set up:

  • Resolve Collaboration Server in W10 VM on my home server.
  • Port-forwarded the respective ports and pointed a domain to my router.
  • Created the necessary PostgreSQL databases and users (connected to them on the project server via the default user postgres.
  • Successfully authenticated all clients with the server via the URL.
  • Exported the Wireguard configuration, opened the tunnel on the server, and activated the connection on the clients.
  • Successfully added our databases on the clients in the Resolve Project Manager by using our usernames and the server's Wireguard IP of 9.0.0.1.
  • Enabled sharing for the databases on the server, and enabled collaboration for the projects we want to collaborate on.

Our systems:

  • Windows 10 20H2 (R9 3900, GTX 1660S, 30Mb/s upload to collaborator)
  • Windows 10 20H2 (old 4 Thread-CPU, onboard-GPU)
  • both DVR 17.3.1 (one Studio, one Free)

Media is stored locally on both of our machines and made to have the same path. Everything is live-synced via NextCloud.

server_log.txt

Accessing database via local network and Resolve Mission Control at the same time..?

I've been using a shared database for 3+ years at my office.
Thanks to all the instruction on YouTube and web articles like this one from mixing light.

https://mixinglight.com/color-grading-tutorials/creating-a-shared-database-a-huge-workflow-enhancement-for-a-small-facility/

Recently, I've been trying to access it from remote location or want freelance editors to access the database via internet. I found this amazing app on YouTube and made it work perfectly. The problem is I can access the database remotely via fireguard but not be able to access it locally like previous method.
My goal is to access it remotely and locally at same time. I see some methods like creating database on AWS, but I'd like to have somewhat stable access when accessing from local network.

Do you guys have any suggestions..?

best,

Server on Windows

Wireguard not opening when activating tunnel.

On Command Prompt:
... Installed configuration True
b''
... Set profile to Private True
b''
... Enabled Connection sharing False
Command powershell Set-NetConnectionSharing "Wireguard_rmcs" $true returned error 1

Is there a way to fix this?

Thanks
Joe

[Server] .app/.exe without sudo/admin requirement

Using some combination of pexpect or echo "password" | sudo ..., and runas /user:Admin on Windows, we need to enable the server app to be run as a .app/.exe, while asking sudo/admin permission for executing specific tasks, rather than the whole program.

Connecting to server...

Hello,

First, really thank you for this tutorial!
When i'm on Resolve Mission Control Client, i just try to authenticate but it never connect. I've followed all the steps you mentionned as 55555 Port... I'm on Windows 10. I can give you more details if you want.

InkedCapture_LI

"Active Authentication" closes right after enabling

Authentication server keep closing right away after clicking the button and in terminal I keep getting this error:
"[Errno 48] error while attempting to bind on address ('0.0.0.0', 5432): address already in use"
I set my subnet to 42.0.0.0/24.

Incompatible Database [Mac M1]

I am as far as I can connect to the tunnel and save the config file.
DR Project Server 17.3 says "incompatible" on the database.

In DRS 17.3.1 says Failed to create data base even though it's in PS.

"... database error for pizza : relation "public.Sm2SysIdEntry" does not exist
LINE 1: ...stSeen","ClientAddr","UserDefinedClientName" FROM public."Sm...
^

... database error for pizza : current transaction is aborted, commands ignored until end of transaction block"

Screen Shot 2021-09-21 at 9 11 31 AM

Screen Shot 2021-09-21 at 9 07 03 AM

[Issue/Question] Setting up wireguard | Authenticating | Domains don't work

I've been attempting to establish a connection but am unable to find the Wireguard file I'm supposed to add. Where can I find that?


Furthermore, I've been trying to authenticate without success (maybe because there's no Wireguard connection?). I'm successfully connecting to the server via WAN but get a Server Authentication Error: INAVLID REQUEST on the client, and Invalid request message (could be UNAME or SPASS) on the server. The log outputs the following:

... {'name': 'Server', 'Pk': PublicKey('PUBLIC_KEY_REMOVED'), 'ip': IPv4Address('9.0.0.1')} did not decrypt message from ('IP_REMOVED', 61044)
... {'name': 'Tobias', 'Pk': '', 'ip': '9.0.0.3'} did not decrypt message from ('IP_REMOVED', 61044)

I have two users: Tobias, and Ruben. I attempted to connect with both, the log always says Tobias.


Lastly, because my public IP changes daily, I tried to input my domain - which I already successfully use for the Resolve Project Server. It does not support domains. Please add support for domains as this would be the preferred way to connect for many users.


  • Server in Windows 10 VM with ports 4444 and 51820 forwarded
  • Clients are Windows 10, one in same LAN, one in the WAN

[Server] Log file with timestamps

We need to have the server append to a logfile with timestamps, for info like:

  • Who authenticated, from what IP, and when?
  • When was a user deleted from the userlist?
  • ...

authentication failure

On the client side (macOS) I'm seeing "Server Authentication Error: INVALID REQUEST" displayed at the bottom of the Mission Control Client window.

On the server side (win10) I see "Invalid request message (Invalid username or server password)" at the bottom of its UI window, and in the terminal window it relates:

... {'name': 'Server', 'Pk': PublicKey('TBor0Lp5z1bNPdHl7XdM4bKiuLBKpQZiUhFkgKDiFh4='), 'ip': IPv4Address('9.0.0.1')} did not decrypt message from ('10.0.1.199', 51648)
... {'name': 'zach', 'Pk': '', 'ip': '9.0.0.9'} did not decrypt message from ('10.0.1.199', 51648)

My server on the local network is at 10.0.1.101, client at 10.0.1.199. I see the same error messages when I aim the client at the WAN IP, which is port forwarded to the server. I'm definitely using the right username and password for the server, I've reset and gone through the process a few times with simpler and simpler passwords and different usernames just to be sure. The client is connecting to the server, but the authentication isn't happening. Same result happens whether the tunnel is activated or not. I've tried disabling windows firewall and that had no effect.

image

pip install PyQt5==5.15.2

I am unable to get this module to install using Terminal.
I can successfully install 'pip install PyQt6' , however, your UI does not work on PyQt6
I get error codes once running 'sudo python rmc_server.py'

Any thoughts?

Any way to port this GUI to PyQt6?

Mac M1 13" Laptop

Remove 9.0.0.0/24 as default server address

Most of the range of 9.0.0.0 are dedicated private IP addresses and should not be used for private networking like this. According to some folks from Wireguard this is prone to cause issues with routing at some point. A recommended alternative was the 10.0.0.0 range.

See Wikipedia/Reserved IP Adresses for more information.

File "rmc_server.py", line 56

Hello,
I've been trying to figure out how to collaborate on resolve projects and was thrilled to try your coding fix. Ran into this issue when trying to launch the server app. Any help would really be appreciated.

File "rmc_server.py", line 56
SyntaxError: Non-ASCII character '\xe2' in file rmc_server.py on line 56, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

Thanks,
Bryan

Server stuck on "Authentication server opening..."

Along side the issue in the title, Poweshell is outputting the following once the Activate Authentication button is pressed:

Process Process-1:
Traceback (most recent call last):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\multiprocessing\process.py", line 315, in _bootstrap
    self.run()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\multiprocessing\process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\Administrator\ResolveCollaboration\rmc\auth\server.py", line 77, in tcp_server
    async_server = loop.run_until_complete(coro)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 641, in run_until_complete
    return future.result()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\asyncio\streams.py", line 84, in start_server
    return await loop.create_server(factory, host, port, **kwds)
TypeError: BaseEventLoop.create_server() got an unexpected keyword argument 'loop'

Thanks in advance

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.