Skip to content

Instantly share code, notes, and snippets.

View cambiata's full-sized avatar

Jonas Nyström cambiata

View GitHub Profile

DaVinci Resolve Scripting Documentation

Updated as of 08 March 2019


In this package, you will find a brief introduction to the Scripting API for DaVinci Resolve Studio. Apart from this README.txt file, this package contains folders containing the basic import modules for scripting access (DaVinciResolve.py) and some representative examples.

Overview

As with Blackmagic Design Fusion scripts, user scripts written in Lua and Python programming languages are supported. By default, scripts can be invoked from the Console window in the Fusion page, or via command line. This permission can be changed in Resolve Preferences, to be only from Console, or to be invoked from the local network. Please be aware of the security implications when allowing scripting access from outside of the Resolve application.

@cambiata
cambiata / SimpleSvg.fuse
Last active October 9, 2023 17:09
SimpleSvg - Proof of concept Fuse for displaying Svg
-- SimpleSvg.Fuse
-- Proof of concept Fuse for displaying Svg content using the fuse drawing api
-- This file should be put in the Fustion/Fuses folder
-- (On windows, something like C:\ProgramData\Blackmagic Design\Fusion\Fuses)
require('SimpleSvgGraphics')
FuRegisterClass("SimpleSvg", CT_SourceTool, {
REGS_Name = "SimpleSvg",
//================================================================
#[derive(Debug)]
pub struct SomeCloneables<T>
where
T: Clone,
{
items: Vec<Option<T>>,
}
//----------------------------------------------------------------
use std::collections::HashMap;
static GLOBAL_COUNTER: std::sync::atomic::AtomicUsize = std::sync::atomic::AtomicUsize::new(0);
#[derive(Hash, Eq, PartialEq, Debug)]
struct TypeA {
a: usize,
id: usize,
}
@cambiata
cambiata / Rust Image Viewer - Cargo.toml
Last active June 15, 2023 15:51
Rust image viewer from scratch: Matt Davies - https://www.youtube.com/watch?v=1yofBPRx864
[package]
name = "testwinit"
version = "0.1.0"
edition = "2021"
authors = ["Matt Davies"]
description = "Rust image viewer from scratch - https://www.youtube.com/watch?v=1yofBPRx864"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
type LoadingState =
| { type: 'empty' }
| { type: 'loading', progress: number }
| { type: 'success', result: number }
| { type: 'error', msg: string }
const loadingMachine = createMachine({
id: 'machine',
initial: 'active',
import { createMachine, interpret, send, sendParent, assign } from 'xstate';
type Child1Context =
| { type: 'empty' }
| { type: 'data', value: number }
| { type: 'error', msg: string }
const child1Machine = createMachine<Child1Context>({
id: 'timer',
initial: 'active',
type FetchMachineContext =
| {
status: 'text',
text: string,
}
| {
status: 'empty'
}
export type FetchMachineEvent =
@cambiata
cambiata / Rust iterator implementation.rs
Created January 15, 2023 11:56
Rust iterator implementation
#[derive(Debug)]
pub struct TestItem {
val: usize,
}
#[derive(Debug)]
pub struct TestItems<'a> {
items: &'a Vec<&'a TestItem>,
idx: usize,
pos: usize,
class Signal {
constructor(initialValue) {
console.log('constuctor ' + initialValue);
this.value = initialValue;
this.listeners = [];
console.log(this.value);
console.log(this);
}