Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions ATTRIBUTION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Attribution

OpenScreen thanks the following open-source projects for inspiring and contributing code:

## Zoom & Pan Animation

The zoom and pan animation system in OpenScreen was inspired by and ported from [Recordly](https://github.com/Recordly-dev/Recordly).

The following functions in `src/components/video-editor/videoPlayback/` were ported from Recordly:

- `mathUtils.ts` — `easeOutScreenStudio()`, `cubicBezier()`, and `clamp01()`
- `zoomRegionUtils.ts` — zoom region strength, chaining, and connected pan transition logic

We apologize for the omission and thank Recordly's maintainers for their excellent work.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,10 @@ _I'm new to open source, idk what I'm doing lol. If something is wrong please ra

Contributions are welcome! If you’d like to help out or see what’s currently being worked on, take a look at the open issues and the [project roadmap](https://github.com/users/siddharthvaddem/projects/3) to understand the current direction of the project and find ways to contribute.

## Attribution

Third-party attributions are listed in [ATTRIBUTION.md](./ATTRIBUTION.md).

## License

This project is licensed under the [MIT License](./LICENSE). By using this software, you agree that the authors are not liable for any issues, damages, or claims arising from its use.
3 changes: 3 additions & 0 deletions src/components/video-editor/videoPlayback/mathUtils.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
// Ported from Recordly (https://github.com/Recordly-dev/Recordly).
// See ATTRIBUTION.md for details.

export function clamp01(value: number) {
return Math.max(0, Math.min(1, value));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
// Ported from Recordly (https://github.com/Recordly-dev/Recordly).
// See ATTRIBUTION.md for details.

import type { ZoomFocus, ZoomRegion } from "../types";
import { ZOOM_DEPTH_SCALES } from "../types";
import { TRANSITION_WINDOW_MS, ZOOM_IN_TRANSITION_WINDOW_MS } from "./constants";
Expand Down