Expand description
Professional clip management and logging system for OxiMedia.
This crate provides comprehensive clip management functionality for professional video editing and logging workflows, including:
- Clip Database: Store and manage video clips with metadata
- Subclip Creation: Create subclips with in/out points
- Clip Grouping: Organize clips into bins, folders, and collections
- Professional Logging: Keywords, markers, ratings, and notes
- Take Management: Track multiple takes of the same shot
- Proxy Association: Link clips to proxy versions
- Smart Collections: Auto-updating collections based on criteria
- Search and Filter: Advanced search and filtering capabilities
- Import/Export: EDL, XML, CSV, JSON export
§Example
use oximedia_clips::{ClipManager, Clip, Rating};
use oximedia_core::types::Rational;
use std::path::PathBuf;
// Create a clip manager
let manager = ClipManager::new(":memory:").await?;
// Create a new clip
let mut clip = Clip::new(PathBuf::from("/path/to/video.mov"));
clip.set_name("Interview Take 1");
clip.set_rating(Rating::FourStars);
clip.add_keyword("interview");
clip.add_keyword("john-doe");
// Save the clip
let clip_id = manager.add_clip(clip).await?;
// Search for clips
let results = manager.search("interview").await?;Re-exports§
pub use ai_tagging::AiTagger;pub use ai_tagging::AiTaggerConfig;pub use ai_tagging::ClipInfo;pub use ai_tagging::TagSource;pub use ai_tagging::TagSuggestion;pub use camera_metadata::CameraMetadata;pub use camera_metadata::CameraMetadataExt;pub use camera_metadata::CameraMetadataStore;pub use clip::Clip;pub use clip::ClipId;pub use clip::ClipMetadata;pub use clip::SubClip;pub use clip_waveform::ClipWaveformGenerator;pub use clip_waveform::WaveformData;pub use clip_waveform::WaveformThumbnail;pub use group::Bin;pub use group::BinId;pub use group::Collection;pub use group::CollectionId;pub use group::Folder;pub use group::FolderId;pub use group::SmartCollection;pub use logging::Favorite;pub use logging::Keyword;pub use logging::Rating;pub use marker::Marker;pub use marker::MarkerId;pub use marker::MarkerType;pub use note::Annotation;pub use note::Note;pub use note::NoteId;pub use proxy::ProxyLink;pub use proxy::ProxyQuality;pub use proxy_meta::ProxyManagerSpec;pub use proxy_meta::ProxyMetadata;pub use proxy_meta::ProxySpec;pub use proxy_meta::ProxyValidationError;pub use take::multi_criteria::rank_takes_multi_criteria;pub use take::multi_criteria::MultiCriteriaTakeSelector;pub use take::multi_criteria::TakeScoreWeights;pub use take::multi_criteria::TakeWeights;pub use take::Take;pub use take::TakeId;pub use take::TakeSelector;
Modules§
- ai_
tagging - AI-powered clip tagging via rule-based heuristics.
- bin
- Hierarchical clip bin management with nested child bins.
- bin_
organizer - Bin organization and automatic clip sorting.
- camera_
metadata - Camera-specific metadata for video clips.
- clip
- Core clip types and management.
- clip_
ai_ tag - Automatic keyword suggestion for clips based on visual content analysis.
- clip_
audit - Clip audit trail and change logging.
- clip_
bin - Clip bin management for organizing clips into named containers.
- clip_
collaboration - Multi-user clip annotation with Operational-Transform-based conflict resolution.
- clip_
compare - Clip comparison and difference analysis.
- clip_
export - Clip export job management for queuing and tracking export operations.
- clip_
face_ index - Face-based clip search and grouping.
- clip_
favorites - Quick-access favourite collections and recent clips list.
- clip_
fingerprint - Clip fingerprinting for deduplication and identification.
- clip_
history - Clip edit history and undo/redo support.
- clip_
merge - Clip merging and concatenation utilities.
- clip_
metadata - Extended clip metadata attributes for
OxiMedia. - clip_
playlist - Playlist management for organized clip playback.
- clip_
relations - Clip relationship graph for
OxiMedia. - clip_
relations_ bidirectional - Bidirectional clip relation graph with automatic symmetry enforcement.
- clip_
scene_ detect - Automatic scene detection and subclip creation at scene boundaries.
- clip_
search - Clip search engine for querying clips by various fields.
- clip_
tag - Structured tagging system for clips.
- clip_
timeline - Clip timeline placement and sequencing.
- clip_
transcode_ status - Clip transcode status tracking: proxy generation and transcode progress per clip.
- clip_
versioning - Clip versioning module for tracking edit history with undo/redo support.
- clip_
waveform - Audio waveform generation for timeline thumbnails.
- database
- Database storage and management.
- export
- Export system for clips and lists.
- group
- Clip organization and grouping.
- import
- Import and scanning system.
- logging
- Professional logging system.
- marker
- Frame-accurate marker system.
- note
- Annotations and notes system.
- offline
- Offline / missing media detection for clips.
- proxy
- Proxy media management.
- proxy_
link - Proxy link registry for
OxiMediaclips. - proxy_
meta - Proxy generation metadata for clip management.
- rating
- Clip rating and flagging system.
- rating_
store - Star rating and colour label system for clips.
- search
- Search and filtering system.
- storyboard
- Storyboard generation from clips.
- subclip
- Subclip management - create and organize subclips from parent clips.
- sync
- Multi-clip synchronization utilities.
- take
- Take management for multi-take shots.
- trim
- Smart clip trimming - automatic in/out point detection.
- usage
- Clip usage tracking across sequences.
- version
- Clip version management.
Structs§
- Clip
Manager - Main clip management system.
Enums§
- Clip
Error - Errors that can occur during clip operations.
Type Aliases§
- Clip
Result - Result type for clip operations.