Giter Club home page Giter Club logo

maya-capture-gui's Introduction

Playblasting in Maya done with GUI

A visual interface for maya-capture.

WARNING: Preview release


Features

  • Set up your playblasts visually (with direct feedback).
  • Produce consistent predictable playblasts.
  • Callbacks to allow custom encoding prior to opening viewer.
  • Avoid unwanted overscan; playblast what you render.

Installation

To install, download this package and capture and place both in a directory where Maya can find them.


Usage

To show the interface in Maya run:

import capture_gui
capture_gui.main()

Advanced

Callbacks

Register a pre-view callback to allow a custom conversion or overlays on the resulting footage in your pipeline (e.g. through FFMPEG)

import capture_gui

# Use Qt.py to be both compatible with PySide and PySide2 (Maya 2017+)
from capture_gui.vendor.Qt import QtCore

def callback(options):
    """Implement your callback here"""

    print("Callback before launching viewer..")

    # Debug print all options for example purposes
    import pprint
    pprint.pprint(options)

    filename = options['filename']
    print("Finished callback for video {0}".format(filename))


app = capture_gui.main(show=False)

# Use QtCore.Qt.DirectConnection to ensure the viewer waits to launch until
# your callback has finished. This is especially important when using your
# callback to perform an extra encoding pass over the resulting file.
app.viewer_start.connect(callback, QtCore.Qt.DirectConnection)

# Show the app manually
app.show()

Register preset paths

Register a preset path that will be used by the capture gui to load default presets from.

import capture_gui.presets
import capture_gui

path = "path/to/directory"
capture_gui.presets.register_path(path)

# After registering capture gui will automatically load
# the presets found in all registered preset paths
capture_gui.main()

Register tokens and translators

Register a token and translator that will be used to translate any tokens in the given filename.

import capture.tokens
import capture_gui

# this is an example function which retrieves the name of the current user
def get_user_name():
    import getpass
    return getpass.getuser()

# register the token <User> and pass the function which should be called
# when this token is present.
# The label is for the right mouse button menu's readability.
capture.tokens.register_token("<User>",
                              lambda options : get_user_name(),
                              label="Insert current user's name")

Known issues

Viewport Plugin show menu close button sometimes appears off screen when torn off

Tearing off the show menu in the Viewport Plugin results in a menu with an off screen title bar when torn off near the top edge of the screen. This makes it hard to close the menu. To fix this either close the capture GUI (to close the menu) or make a new torn off version of the show menu at a lower position on screen (this will close the previous torn off menu).

maya-capture-gui's People

Contributors

aardschok avatar bigroy avatar mottosso avatar tokejepsen avatar

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.