Jump to content

Search the Community

Showing results for tags 'rv'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Company news
    • General announcements
  • ftrack Studio (main app)
    • General discussion
    • Feature requests
    • API
    • Help
    • Actions and Widgets
    • ftrack Go
  • ftrack Review
    • General discussion
    • Feature requests
    • Help
  • Connect and Integrations
    • Releases
    • General discussion
    • Feature requests
    • Early Access Integrations & Connect
    • Help
  • Advisory Forum
  • Tech preview
    • API

Categories

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Location


Interests

Found 2 results

  1. Hi all, I was testing ftrack integration with RV and encountered some difficulties to handle the data between them. Hope that someone knows any workarounds. Before anything, the long story short: Is it possible to query real entityId and entityType from tempdata? To explain what I tested and what are my thoughts, I made an simple graph showing a flow chart of how ftrack-RV integration works. It is important to say that those tests are based on how RV works in Windows 10 environment with an normal RV installation. --- Windows 10 RV 7.5.1 ftrack-connect 1.1.2 --- ,─────, ( ftrack ) '─────' ├───────────────────────────────────────────────────────┐ ↓ ↓ ┌──────────┐ ┌─────┐ │ play in RV button │ │ Actions │ └──────────┘ └─────┘ │ ↓ ↓ ┌───────────┐ ┌─────────┐ │ ftrack Connect -> RV │ │ RVLINK protocol │ └───────────┘ └─────────┘ ↓ │ ,────────────────────────────────────────, ↓ ( "C:\Program Files\Shotgun\RV-7.5.1\bin\rv.exe" rvlink://baked/...(assetVersion) ) defined in ftrack_connect_rv_hook.py ┌──────────────────────────────┐ '────────────────────────────────────────' │ call registry HKEY_CLASSES_ROOT\rvlink\shell\open\command │ └──────────────────────────────┘ │ ↓ ┌──────────────────────────────────────────────────┐ │ "C:\Program Files\Shotgun\RV-7.5.1\bin\rvpush.exe" -tag rvlink url "rvlink://baked/...(tempdata)" │ or whatever is in the registry └──────────────────────────────────────────────────┘ │ / \ < rvpush could find a rv.exe instance with networkTag rvlink already running? \ / │ ├───────────────┐ │ │ │ YES │ NO ↓ │ ,─────────────────, │ ( connect to already running rv.exe )│ '─────────────────' │ / \ < RVPUSH_RV_EXECUTABLE_PATH is defined? \ / │ ├─────┐ │ │ │ YES │ NO │ ↓ │ ,────────────────────────────────────────────────────, │ ( "C:\Program Files\Shotgun\RV-7.5.1\bin\rv.exe" -networkTag rvlink -network rvlink://baked/...(tempdata) ) ↓ '────────────────────────────────────────────────────' ,────────────────, ( call RVPUSH_RV_EXECUTABLE_PATH ) '────────────────' When a user selects an AssetVersion and pushes the "play selection in RV button", a rvlink protocol is called, rvpush.exe runs and rv.exe is launched. In this chain of executions, the rvlink url(passed to rv.exe as an argument) includes a tempdata information, instead of the information from selected entity. This tempdata info is read by RV, passed to FtrackMode.generateUrl, which generates and returns an temporary url. something like below: https://DOMAIN.ftrackapp.com/widget?view=freview_nav_v1&itemId=freview&theme=dark&auth_token=AUTHTOKEN&entityId=ENTITYID&entityType=tempdata This url is accessible from any browser, but I couldn't query entityId nor entityType of the item selected in the ftrack's webUI. On the other hand, when launching RV using Actions and ftrack-connect, real entityId and entityType are passed to RV, allowing me to handle those information easily. However, it has its cons: a.) to use it, I need an running instance of ftrack-connect b.) it always launches a new instance of RV About b.), customizing ftrack_rv_hook.ApplicationLauncher._getApplicationLaunchCommand function seems to solve the problem. Here is a sample code that shows how I implemented a custom launch process. def _getApplicationLaunchCommand(self, application, context=None): command = None if sys.platform in ('win32', ): # command = [application['path']] # ======================================================================================== # # CUSTOM LAUNCH PROCESS environment = self._getApplicationEnvironment(application, context) server = environment.get('FTRACK_SERVER') event = environment.get('FTRACK_CONNECT_EVENT') event_decode = base64.b64decode(event) event_obj = json.loads(event_decode) selection = event_obj.get('selection', '') rvlink_str = "-flags ModeManagerPreload=ftrack ftrackUrl=%s params='%s'" % ( server, selection ) rvlink_encoded = codecs.encode(rvlink_str, 'hex') # do not use normal command that calls rv.exe # instead, call an instance of cmd, start a rvlink protocol and call rvpush command = [ "cmd.exe", "/c", 'start', "", "rvlink://baked/%s" % rvlink_encoded ] # ======================================================================================== # else: self.logger.warning( 'Unable to find launch command for {0} on this platform.' .format(application['identifier']) ) return command With this code, I could call rvlink protocol using ftrack-connect RV launcher, instead of launching new RV instances every time. About a.), the only way I could solve was editing HKEY_CLASSES_ROOT\rvlink\shell\open\command in a way that launches RV with required environment variables. This allows me to launch a RV that mimics a RV instance launched from ftrack-connect, without the need of a running ftrack-connect instance. The problem is that, when calling RV from "play Selection in RV" button, I only have tempdata. As so, solving a.) does not solves my problem at all. I have the same problem as when I launched a ftrack instance without ftrack-connect, indeed. So I return to my first question: Is it possible to query real entityId and entityType from tempdata? I've already checked other posts in the forum: https://forum.ftrack.com/topic/987-ftrack-rv-integration https://forum.ftrack.com/topic/26-installation-guide-for-rv And some helps pages: https://help.ftrack.com/en/articles/1040451-review https://help.ftrack.com/en/articles/1040536-reviewing-in-hiero-player-or-rv Maybe I'm missing something or misunderstanding how integration works. I'll be glad if anyone could correct me or show me any workaround to reach entityId when using ftrack-RV integration without ftrack-connect's Actions. Thanks in advance. Best Regards, Honda
  2. Hi there, I recently switched away from Ftrack to Shotgun because the publishing tools seems so broken and limited in Ftrack. Shotgun does it much better, but the program as a whole is terrible and a pain to use. Ftrack is far superior when it comes to ease of use - with the excepting of publishing. I quickly switched back to Ftrack and now have to figure out a solution to my issue. Both programs seem to have terrible documentation and I can't figure this out. We have a small studio and I am a VFX supervisor. We have a pipeline that works perfectly for a studio our size and I don't want to mess around with it too much. My issue is that Ftrack seems to be be very rigid when it comes to publishing files. It wants to create it's own file structure which in my opinion is a complete disaster. I'm really not sure how anyone works this way. I want the artists to be able to submit shots for review that retain the naming convention of the shot they submitted, and retain the path on our server to the shot. I want to open a group of shots submitted throughout the day in RV - launched from Ftrack and review, annotate and make notes from within RV (on the original shots) that then get transferred to the shot tasks for the artist to see. Pretty straightforward. What I don't want is for Ftrack to copy the shot to some other location on my server, place it in a folder within a folder within a folder within a folder within a folder and rename the file "movie.mov". Before I ask how I can do this, I'm just wondering if someone can just give me a straight up answer if this is even possible. We've spent days trying to solve this. There are very few but broad and unhelpful documents about publishing, but otherwise the internet seems to be devoid of any useful help on this issue. Thank you so much for your help! cheers, Mike Ritchie
×
×
  • Create New...