Skip to main content
OCF, sound, and proxy files hold a limited amount of fields. They are designed to be minimal, only holding essential data. There might be cases where you want to extend the reports with other data from your other favorite apps.

Features

custom_prop

Extend Logs and Clips

You can add fields to the log and clips.Log fields are added to the log object. This is useful if you want to add a custom fields to the shooting day. Clip fields are added to Clips, and extends or overrides properties in the standard Clip schema.
import_custom

Import from file

You can optionally import data from a CSV file. Toggle Import from file on to list your schema under other imports.When Import from file is enabled, all fields must have a column property. The column should match the header column in your CSV file.

Defining a Schema

Let’s start by defining the schema inside the project settings. Choose a name for your schema that you can use to select it.

Sync Method

Custom Schema To be able to match our schema with clips, we need to define the sync method. You can choose to match the clips by clip name or timecode. When syncing by clip name, clip is required. The value need to be identical to the OCF clip name. When syncing by timecode, tc_start and tc_end are required. The values need to be within the timecode range of the OCF clip.
Choose clip as the sync method. The clip type needs to be in the schema. All clips in your .dayta file need to be identical to the OCF clip ID.
config.yaml
custom_schemas:
  - id: MySchema
    active: true
    order: 1
    sync: clip # sync method
    clip_fields:
      - type: clip # Required
.dayta
ocf:
  clips:
    - clip: A_0001C001
custom:
  - schema: MySchema
    clips:
      - clip: A_0001C001 # value must be identical to OCF clip
Choose tc as the sync method. The tc_start and tc_end types need to be in the schema. OCF clips also need to have TC to match with.
config.yaml
custom_schemas:
  - id: MySchema
    active: true
    order: 1
    sync: tc # sync method
    clip_fields:
      - type: tc_start # Required
      - type: tc_end   # Required
.dayta
ocf:
  clips:
    - clip: A_0001C001
    - tc_start: 15:14:02:22
    - tc_end: 15:14:03:18
custom:
  - schema: MySchema
    clips:
      - tc_start: 15:14:02:22
      - tc_end: 15:14:03:18

Field Types

You can choose from a selection of data types to define your fields. Basic types solves most use cases when you want to extend with new properties. Metadata types are used when you want to override the property in the standard schema.
Keys are used to access the value in the log and clips.
For the basic types you will define the key by setting key_name, metadata types has the type as the key.
config.yaml
custom_schemas:
  - id: MySchema
    active: true
    order: 1
    sync: clip
    clip_fields:
      - type: clip
      - type: text
        key_name: location ## Choose a key to access value with
.dayta
custom:
  - schema: MySchema
    clips:
      - clip: A_0001C001
        location: street ## Access the value using the key
      - clip: A_0001C002
        location: apartment
Example of how to access the value using the key:
{log.clips.map(clip => (
    <p>{clip.location}</p>
))}

Types

It’s text. Nothing more, nothing less.
A list/array of text.Example:["applebox", "boom", "clapperboard"]
A list of nested lists.Example:
[
  ['Johnny', 'Bravo', 'Gaffer'],
  ['Jane', 'Doe', 'Video Assist']
]
Key-value pairs inside an object.Example:
{
 Location: 'Studio 1',
 UserInfo1: 'bananas, oat milk, 12 eggs, avocados (ripe, but not too ripe)'
}
A list of key-value objects.Example:
[
 {
   tc: '25:25:25.25',
   urgency: '0',
   issue: 'Operator fell asleep. Shot turned into 20 minutes of clouds'
 },
 {
   tc: '01:23:45.67',
   urgency: '5',
   issue: 'Camera overheated'
 }
]
The value must match the type format. Use with caution.
type/keyFormatExample
clipstring”A001C001”
tc_starttimecode”00:00:01:00”
tc_endtimecode”00:00:10:00”
durationtimecode”00:00:09:00”
camera_modelstring”ARRI Alexa”
reelstring”A001”
fpsnumber24
sensor_fpsnumber24
lensstring”50mm”
shutternumber180
resolutionstring”1920x1080”
codecstring”ProRes 4444”
gammastring”Log-C”
einumber800
wbnumber5600
tintstring”-1”
lutstring”bg-tint”

Priority

If multiple schemas have the same key, the priority will determine which value is used. A higher number means higher priority. The priority is set by the order property in the schema.
config.yaml
custom_schemas:
  - id: MySchema
    active: true
    order: 1