Commit Graph

1379 Commits

Author SHA1 Message Date
doananh234 f2a55ca25c
Merge 46d741a51a into 7e2a913e13 2026-03-28 19:09:39 +01:00
Aspen 7e2a913e13
Update OpenCut logo in README (#741) 2026-03-28 19:07:36 +01:00
kcfancher 63496d05a2
Fix transcription sample-rate handling (#740)
Fix for #703.

Adds an optional sampleRate parameter to the decodeAudioToFloat32() function. The caption transcriber passes in a value of 16000 to prepare audio in the format Whisper expects.
2026-03-28 19:06:40 +01:00
Maze Winther f2eed05d36 fix blog build when marble cms isn't available 2026-03-24 14:18:39 +01:00
anh doan 46d741a51a
chore: handle validate hex color 2026-03-23 17:13:34 +07:00
anh doan 14ea50ab5e
Merge branch 'feat/effects-package' of github.com:doananh234/OpenCut into feat/effects-package 2026-03-23 16:56:55 +07:00
anh doan 4f74ec9057
chore: add util for get effectParams 2026-03-23 16:41:42 +07:00
anh doan 04c3eed7e0
fix: improve handle error in face-mesh 2026-03-23 16:32:25 +07:00
doananh234 464245c293
Update apps/web/src/services/face-mesh/face-mesh-provider.ts
chore: remove logger

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-03-23 15:52:41 +07:00
anh doan 39de9fdf8b
Merge branch 'feat/effects-package' of github.com:doananh234/OpenCut into feat/effects-package
# Conflicts:
#	apps/web/tsconfig.tsbuildinfo
2026-03-23 15:33:48 +07:00
anh doan 22a42d509b
fix: review coderabbit 2026-03-23 15:29:45 +07:00
anh doan 6cbc8d9d1b
test(effects): add unit tests for chromatic aberration, glitch, sharpen, and vignette effects
- Implement tests for chromatic aberration effect definition, verifying type, name, category, parameters, and renderer behavior.
- Add tests for glitch effect definition, covering type, name, parameters, and rendering logic.
- Create tests for sharpen effect definition, ensuring correct parameter defaults and rendering.
- Introduce tests for vignette effect definition, validating parameters and rendering behavior.

These tests enhance coverage for the new effects introduced in the @opencut/effects package.
2026-03-23 15:21:10 +07:00
anh doan 7e40be9922
test(effects): add unit tests for chromatic aberration, glitch, sharpen, and vignette effects
- Implement tests for chromatic aberration effect definition, verifying type, name, category, parameters, and renderer behavior.
- Add tests for glitch effect definition, covering type, name, parameters, and rendering logic.
- Create tests for sharpen effect definition, ensuring correct parameter defaults and rendering.
- Introduce tests for vignette effect definition, validating parameters and rendering behavior.

These tests enhance coverage for the new effects introduced in the @opencut/effects package.
2026-03-23 14:36:05 +07:00
anh doan 81adac6e1e
feat(effects): add @opencut/effects package with 24 effects and presets
Add a standalone effects package that extracts effect definitions,
GLSL shaders, and registry from @opencut/web into a reusable package.

## Package (@opencut/effects)

- Registry: register/get/has/getAll effects with Map-based lookup
- Categories: COLOR_TONE, ARTISTIC, BEAUTY with display metadata
- Types: Effect, EffectDefinition, EffectContext, WebGLEffectPass

### Effects (24 total)

**Color & Tone (8):** brightness, contrast, saturation, hue-shift,
temperature, exposure, gamma, color-balance

**Artistic (10):** blur, vignette, film-grain, sharpen, pixelate,
chromatic-aberration, glitch (2-pass), neon-glow (2-pass),
sketch (2-pass), oil-paint (2-pass)

**Beauty (6):** skin-smooth (bilateral filter), face-brighten,
eye-enhance, teeth-whiten, blush, slim-face

### Presets (12)

- Instagram: clarendon, juno, lark, gingham, valencia, nashville
- Cinematic: teal-and-orange, vintage-film, noir, bleach-bypass
- Beauty: soft-glow, portrait

## Web App Integration

- Migrate blur effect from web app to package
- Update imports via re-export pattern (backward compatible)
- Pass time param for animated effects (film-grain, glitch)
- Add face-mesh service using MediaPipe Face Mesh (lazy-loaded)
- Beauty effects auto-detect faces and pass EffectContext
- Async renderVisual for face detection pipeline

## Tests

152 unit tests covering registry, all effect definitions, and presets
2026-03-23 13:32:46 +07:00
Maze Winther 26d523ebad fix: fallback to opus codec 2026-03-09 00:10:31 +01:00
Maze Winther 0be9275a2d dialog: decrease gap 2026-03-04 17:18:28 +01:00
Maze Winther a2d08719f9 refactor: remove foreground variant from button, make it default 2026-03-04 17:16:01 +01:00
Maze Winther ca3e5c98e6 add context menu (w/ brand options) to header logo
allows downloading brand assets directly from the logo in the header
2026-03-04 17:11:32 +01:00
Maze Winther 5ca2de25c6 fix: auto scroll on link 2026-03-04 16:53:04 +01:00
Maze Winther ed8815c755 checker pattern for brand asset cards (branding page) 2026-03-04 16:45:03 +01:00
Maze Winther 24dac1232c rename branding page to brand 2026-03-04 02:56:08 +01:00
Maze Winther 46e55674de feat: branding page 2026-03-04 01:48:39 +01:00
Maze Winther 8e8f1c3596 chore: upgrade tailwind-related deps 2026-03-04 01:47:40 +01:00
Maze Winther 4e0483e425 replace opencut assets 2026-03-03 14:39:56 +01:00
Maze Winther 31dc78637f fix: outline button styling 2026-03-03 14:39:17 +01:00
Maze Winther 705faea56f feat: add changelog link to footer 2026-03-03 14:24:04 +01:00
Maze Winther 21f12ff763 button color 2026-03-03 14:22:14 +01:00
Maze Winther 719e0d4398 fix: invert logos in /sponsors when dark mode 2026-03-03 07:01:17 +01:00
Maze Winther df518cbf4e close effects after last effect removal + spacing 2026-03-02 21:00:28 +01:00
Maze Winther d9a214ef07 fix content-collections implicit content deprecation 2026-03-02 20:50:07 +01:00
Maze Winther dc58c10e64 changelog: fix date 2026-03-02 20:37:42 +01:00
Maze Winther 8fd9b96f80 fix changelog opengraph image 2026-03-02 20:36:28 +01:00
Maze Winther 5216f4398f changelog open graph image 2026-03-02 18:37:04 +01:00
Maze Winther 3a2ec3c291 changelog: improve phrasing for timeline clip gap description 2026-03-02 18:31:37 +01:00
Maze Winther a87b344ba5 Merge branch 'dev' 2026-03-02 17:48:39 +01:00
Maze Winther a635ae9e14 fix inconsistency in blur intensity 2026-03-02 17:43:42 +01:00
Maze Winther 88bf59d6b4 fix effects button in light mode 2026-03-02 17:42:11 +01:00
Maze Winther d62eb6aa9e Merge branch 'main' of https://github.com/OpenCut-app/OpenCut 2026-03-02 17:33:01 +01:00
Maze Winther fbb00cf9cc style: hover of copy markdown button 2026-03-02 17:29:43 +01:00
Maze Winther a63cdcfe7e changelog: update description 2026-03-02 17:28:19 +01:00
Maze Winther 1b870fd9a0 changelog: fix phrasing 2026-03-02 17:15:23 +01:00
Maze Winther c7a00b6af1 feat: copy changelog release as markdown 2026-03-02 17:03:23 +01:00
Maze Winther 9b6a1f7973 disable react-scan in prod 2026-03-02 16:53:30 +01:00
Maze Winther eee3233c97 fix linter 2026-03-02 16:50:55 +01:00
Maze Winther 14ae9b4f11 remove z-index 2026-03-02 16:43:43 +01:00
Maze Winther 565d2595da clcik to seek on keyframes 2026-03-02 16:40:41 +01:00
Maze Winther a526066b61 feat: wire ui to have keyframes for: opacity, text color, and all background properties 2026-03-02 16:36:10 +01:00
Maze Winther b0165da764 fix: selecting multiple effects didn't work 2026-03-02 16:30:50 +01:00
Maze Winther 228e2e4342 docs: keyframes system 2026-03-02 16:02:32 +01:00
Maze Winther 81e7a7fb32 feat: implement keyframe support for more properties at the core (no ui yet) 2026-03-02 15:08:21 +01:00