Skip to content

Commit 59cf930

Browse files
samohovetscursoragentJonnyBurgerclaude
authored
@remotion/renderer: add AV1 codec support (#6771)
* Add AV1 codec support to renderer and CLI Co-authored-by: Igor Samokhovets <samohovets@users.noreply.github.com> * Add AV1 WebM and Opus compatibility Co-authored-by: Igor Samokhovets <samohovets@users.noreply.github.com> * Update Cargo.toml * Rebuild compositor binaries and update Cargo.lock Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Update Cargo.toml * update binareis * update docs * another docs sweep * be more correct about linux * shorten AV1 availability docs per PR review Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * warn users about slow AV1 encoding speed when codec is selected Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * shorten AV1 warning message Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Igor Samokhovets <samohovets@users.noreply.github.com> Co-authored-by: Jonny Burger <jonathanburger11@gmail.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent d08c4f5 commit 59cf930

File tree

90 files changed

+143
-16
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

90 files changed

+143
-16
lines changed

packages/cli/src/image-formats.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ export const getVideoImageFormat = ({
3232
codec === 'h264-mkv' ||
3333
codec === 'h264-ts' ||
3434
codec === 'h265' ||
35+
codec === 'av1' ||
3536
codec === 'vp8' ||
3637
codec === 'vp9' ||
3738
codec === 'prores' ||

packages/cli/src/test/codec.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ describe('Codec tests setCodec', () => {
1111
'h265',
1212
'vp8',
1313
'vp9',
14+
'av1',
1415
undefined,
1516
];
1617
validCodecInputs.forEach((entry) =>

packages/cli/src/test/final-output-codec.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ describe('Codec tests valid codec input', () => {
1010
'h265',
1111
'vp8',
1212
'vp9',
13+
'av1',
1314
'mp3',
1415
'aac',
1516
'wav',
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import {expect, test} from 'bun:test';
2+
import {getVideoImageFormat} from '../image-formats';
3+
4+
test('returns jpeg for av1 codec', () => {
5+
expect(getVideoImageFormat({codec: 'av1', uiImageFormat: null})).toBe('jpeg');
6+
});
7+
8+
test('returns png if codec is undefined', () => {
9+
expect(getVideoImageFormat({codec: undefined, uiImageFormat: null})).toBe(
10+
'png',
11+
);
12+
});

0 commit comments

Comments
 (0)