Repository navigation
SwiftVideo 0.1.0-alpha.5: clip and track speed and filters
Pre-releaseThis experimental release brings playback speed and ordered filters from main into the Media3 preview alpha. Release commit: b5251c1.
Changes
- Set constant forward playback speed independently on clips and tracks. Clip and track rates multiply; each rate and the combined rate must stay between 0.25x and 4x. Audio preserves pitch.
- Apply ordered visual filters to clips or inherit them from tracks. Clip filters run before track filters, per clip; track filters are not a post-composite effect bus.
- Add ordered low-pass, high-pass, and parametric EQ audio filters.
- Edit clip or track speed and filters in the SwiftUI example, with undo and redo.
- Use source-aware duration, cache, and seek calculations in the Android preview.
Install
.package(url: "https://github.com/shial4/SwiftVideo.git", exact: "0.1.0-alpha.5")See the guide, API reference, and test report.
Verification and limitations
Local macOS (51 tests), iOS (51), Android core (39), and editor model tests (6) pass. Both example apps build. Coverage is 95.48% for iOS, 95.50% for Android core, and 90.84% for Media3.
The final Android instrumentation run executes 67 tests. The new speed, EQ, and retimed preview/seek cases pass, but seven assertions fail: four BT.709 color assertions and three direct-player paused-seek assertions. An earlier run also failed the 0.5x preview/export audio RMS comparison; it passed the final rerun, but the intermittent mismatch is unresolved. All assertions remain enabled. This release does not pass the Android stable release gate.
The alpha uses Media3 1.12.0-alpha02, with Android compile/target SDK 37 and minimum SDK 28. Hosted alpha CI and physical-device validation are unverified. Stable 0.0.1 is unchanged.