Feature/rv live review link - #180
Open
camerontarget14 wants to merge 8 commits into
Open
Conversation
Signed-off-by: Cameron Target <camerontarget@gmail.com>
Signed-off-by: Cameron Target <camerontarget@gmail.com>
Signed-off-by: Cameron Target <camerontarget@gmail.com>
in RV" Signed-off-by: Cameron Target <camerontarget@gmail.com>
Opening a playlist from DNA with no RV running spawned two RV windows (the first showing an error) and in-review sync tracked the wrong one. Two root causes: - The launch rvlink carried the sessionFromVersionIDs -eval, which a cold-booting RV executes before its ShotGrid machinery is up: the eval errors and the session stays empty. - The URL used -reuse 0, which a *running* RV handles by spawning a brand-new RV process, so the retry opened a second window while DNA stayed connected to the first one's network port. Fix: the backend now returns two baked rvlink URLs, both with -reuse 1 so everything stays in one window. The launch URL only brings RV up with networking (or enables networking on a running RV); the frontend sends the load URL — carrying the -eval — only after the sync session is connected, when RV is warm enough to honor it. Verified cold end-to-end: single window, no error dialog, playlist loads, and playhead moves sync in_review live. Signed-off-by: Cameron Target <camerontarget@gmail.com>
Collaborator
Author
Signed-off-by: Cameron Target <camerontarget@gmail.com>
stowed. Also added RV sync to settings modal. Signed-off-by: Cameron Target <camerontarget@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
The feature: DNA can now mirror "in review" from a running RV session. Since Autodesk's Live Review cloud has no public API, we sidestepped it entirely — the DNA backend speaks RV's documented TCP network protocol to the presenter's local RV, which always knows what's on screen. Works with plain RV + ShotGrid integration; Live Review isn't required.
Backend (
dna/rv_sync/):dna-view-changedevent whenever the source under the playhead changes — no polling.tracking.infometadata and writes it to the playlist's existingin_reviewfield, broadcasting status over the existing WebSocket.Frontend:
RvSyncMenupopover (mirrors the transcription join-call UX): Connect to RV scans localhost and auto-connects; Open playlist in RV launches RV via a bakedrvlink://URL with networking on and the playlist's versions pre-loaded (using SG's own allowlistedsessionFromVersionIDseval, which bootstraps the tk engine).The three bug fixes after first field test:
bind()replaces per event, so the "already bound" guard was actively harmful in long-lived RV processes.Testing
How I Tested
Ran DNA and RV on my Mac.