video_compress_kit 0.0.3
video_compress_kit: ^0.0.3 copied to clipboard
Hardware-accelerated video compression for Flutter using native platform APIs. Zero binary bloat — uses MediaCodec on Android and VideoToolbox on iOS.
0.0.3 #
- Faststart (Android): Now supported on both platforms — Android uses a custom
Mp4FastStartpost-processor (pure Kotlin, same algorithm as FFmpeg'sqt-faststart.c). - Comprehensive tests: Full test coverage for the app-facing API layer.
- Documentation: Added
docs/FASTSTART_ALGORITHM.mdalgorithm deep-dive.
0.0.2 #
- Image compression: New
compressImage()API supporting JPEG, PNG, and WebP output. - Per-session progress & cancellation:
compressVideo()now requires asessionIdfor concurrent compression support. Cancel a specific session or all at once. - H.264 profile selection: Choose Baseline, Main, or High profile via
CompressionConfig.h264Profile. - Bitrate modes: VBR, CBR, or Constant Quality (CRF-like) via
CompressionConfig.bitrateMode. - CQ quality: Quality-based encoding (0–100) via
CompressionConfig.cqQuality. - BT.709 color standard: HD color space via
CompressionConfig.colorStandard. - Faststart: Moov atom at front for faster streaming via
CompressionConfig.faststart(iOS only). - New exported types:
ImageCompressionConfig,ImageCompressionResult,ImageFormat,H264Profile,BitrateMode,ColorStandard.
0.0.1 #
- Initial release.
- Hardware-accelerated video compression using native platform APIs.
- Support for Android (MediaCodec) and iOS (VideoToolbox / AVFoundation).
- Configurable quality presets, bitrate, resolution, and frame rate.
- Media info extraction and thumbnail generation.
- Compression progress stream.
- Cancel in-progress compression.