Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
| c3tracker:start [2025/06/19 01:04] – [CRS Ticket Tracker] andi | c3tracker:start [2025/06/19 11:37] (current) – andi | ||
|---|---|---|---|
| Line 20: | Line 20: | ||
| * [[https:// | * [[https:// | ||
| + | == Ticket Properties | ||
| - | == Concepts | + | see [[properties]] |
| - | + | ||
| - | The C3 Ticket Tracker enables the (semi-)automated recording, editing & release of multilingual videos. In order to complete a release successfully, | + | |
| - | + | ||
| - | === Ticket types and hierarchy | + | |
| - | + | ||
| - | One of the really good features of the C3 tracker is that propertyies are inherited through the hierarchy: | + | |
| - | + | ||
| - | * Project settings (Conference or Series) | + | |
| - | * Meta ticket (Parent with Fahrplan-ID & -Metadata) | + | |
| - | * Recording ticket (Language, etc) | + | |
| - | - Main encoding ticket (MP4) | + | |
| - | - additional encoding tickets, e.g. WebM, MP3, Opus, SD formats, etc. | + | |
| - | + | ||
| - | + | ||
| - | === Ticket states and pipeline | + | |
| - | + | ||
| - | For each ticket type, the tracker has a predefined set of states, which can be enabled and disabled on an per project basis. Here is an example workflow with only one manual `checking` step: | + | |
| - | + | ||
| - | {{drawio> | + | |
| - | + | ||
| - | This allows quite flexible pipelines, which are described in more detail in [[setup]] – for now lets focus on a typical one: | + | |
| - | + | ||
| - | {{drawio> | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Let's look into the steps done by worker scripts | + | |
| - | + | ||
| - | ==== Recording | + | |
| - | ===== A: Recording Scheduler | + | |
| - | + | ||
| - | [[https:// | + | |
| - | + | ||
| - | Schedules and transitions tickets from `scheduled` via `recording` to `recorded`, optionally filters by room. Skips opt-out events, but does not perform any real task besides transitioning the recording ticket. | + | |
| - | + | ||
| - | - **Inputs**: CRS ticket in `scheduled` state | + | |
| - | - **Outputs**: | + | |
| - | - **Notes**: Uses `CRS_ROOM`, `Record.StartedBefore`, | + | |
| - | + | ||
| - | ===== B: Create virtual project files | + | |
| - | + | ||
| - | [[https:// | + | |
| - | + | ||
| - | Mounts raw video segments via FUSE. Checks and sets cut marks, stores metadata like duration and framerate. | + | |
| - | + | ||
| - | - **Inputs**: Ticket in `recording` → `preparing` state | + | |
| - | - **Outputs**: | + | |
| - | - **Notes**: Supports DV and TS formats | + | |
| - | + | ||
| - | ===== C: Finalize | + | |
| - | + | ||
| - | [[https:// | + | |
| - | + | ||
| - | Validates cut marks, adds intro/outro clips if defined, and calculates cut durations. Fails tickets with incomplete data. | + | |
| - | + | ||
| - | - **Inputs**: Ticket in `finalizing` state | + | |
| - | - **Outputs**: | + | |
| - | - **Notes**: Verifies intro/outro file paths and presence | + | |
| - | + | ||
| - | + | ||
| - | ==== Encoding | + | |
| - | + | ||
| - | ===== D: Encoding | + | |
| - | + | ||
| - | [[https:// | + | |
| - | + | ||
| - | Runs encoding tasks from job XML. Skips if Voctomix is detected. Supports VAAPI acceleration and logs execution times. | + | |
| - | + | ||
| - | - **Inputs**: Ticket in `encoding` state | + | |
| - | - **Outputs**: | + | |
| - | - **Notes**: Uses CRS:: | + | |
| - | + | ||
| - | ===== E: Postencoding | + | |
| - | + | ||
| - | [[https:// | + | |
| - | + | ||
| - | Runs audio processing and remuxing. Can optionally delegate to Auphonic for audio leveling and rendering. | + | |
| - | + | ||
| - | - **Inputs**: Ticket in `postencoding` state | + | |
| - | - **Outputs**: | + | |
| - | - **Notes**: Supports audio hash checking and production reuse | + | |
| - | + | ||
| - | ===== F: Upload from Encoder (local) to Releasing host | + | |
| - | + | ||
| - | [[https:// | + | |
| - | + | ||
| - | Uploads processed files to the target via ssh from encoder/ | + | |
| - | + | ||
| - | - **Inputs**: Ticket in `postprocessing` state | + | |
| - | - **Outputs**: | + | |
| - | - **Notes**: Validates file presence, honors opt-out and skip-hosts | + | |
| - | + | ||
| - | ==== Publishing | + | |
| - | + | ||
| - | https:// | + | |
| - | + | ||
| - | + | ||
| - | {{drawio> | + | |
| - | + | ||
| - | {{: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | == Usage during event | + | |
| - | + | ||
| - | + | ||
| - | === Task: Cut | + | |
| - | + | ||
| - | see [[operation: | + | |
| - | + | ||
| - | {{c3_tracker_-_schnitt_mit_kdenlive.mp4}} | + | |
| - | * [[https:// | + | |
| - | + | ||
| - | + | ||
| - | * TODO: [[events: | + | |
| - | + | ||
| - | === Task: Check | + | |
| - | + | ||
| - | see [[operation: | + | |
| - | + | ||
| - | + | ||
| - | Ticket types and states | + | |
| - | + | ||
| - | * Parent tickets for each [[: | + | |
| - | * one recording ticket for each parent | + | |
| - | * several encoding tickets, one for each format – e.g. MP4 HD, MP4 SD, WebM, MP3, Opus | + | |
| - | + | ||
| - | + | ||
| - | == Project setup | + | |
| - | + | ||
| - | * Create tracker project (you can also clone a matching project to have prefilled | + | |
| - | * Import schedule.xml | + | |
| - | * Set all master tickets from staging to staged via mass-edit | + | |
| - | * Adjust project properties, recommendations: | + | |
| - | * Compare project properties with previous instalment of the same event | + | |
| - | + | ||
| - | see [[c3tracker: | + | |
| - | + | ||
| - | === User Roles | + | |
| - | User accounts can have different roles depending on what the user should be able to do: | + | |
| - | * " | + | |
| - | * " | + | |
| - | * " | + | |
| - | * " | + | |
| - | + | ||
| - | more details on https:// | + | |
| - | + | ||
| - | + | ||
| - | == Recording | + | |
| - | Files that should be handled by the tracker (input files) should be named as follows: | + | |
| - | < | + | |
| - | < | + | |
| - | </ | + | |
| - | + | ||
| - | Files need to be placed in directories according to the room name | + | |
| - | < | + | |
| - | Note that names are stripped from frab and combined with the word " | + | |
| - | </ | + | |
| - | + | ||
| - | Naming for intro and outro: | + | |
| - | * Intro < | + | |
| - | * Outro: outro.dv | + | |
| - | + | ||
| - | == Postprocessing | + | |
| - | + | ||
| - | === Cut | + | |
| - | The cutting process requires start and end marks. The tracker accepts frame numbers. If your player does not show frame numbers you can approximate with the formula | + | |
| - | < | + | |
| - | seconds * 25 | + | |
| - | </ | + | |
| - | assumed you have 25 frames per second. Note that this means you cut per second not per frame !!! | + | |
| == Trackerfahrer Scripts | == Trackerfahrer Scripts | ||
| Line 199: | Line 28: | ||
| see [[scripts]] | see [[scripts]] | ||
| - | == Ticket Properties | ||
| - | see [[properties]] | ||