@browser-mc/webcodecs-avif 0.0.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -17,6 +17,8 @@ await fetch('/upload', {
17
17
  });
18
18
  ```
19
19
 
20
+ `encodeImageToAvif` defaults to AV1 4:4:4 chroma (`chromaSubsampling: '444'`). Pass `chromaSubsampling: '420'` when smaller 4:2:0 output or broader baseline-style compatibility is preferred.
21
+
20
22
  ## Mux An Existing AV1 Still Frame
21
23
 
22
24
  ```ts
@@ -62,7 +64,7 @@ node packages/webcodecs-avif/test/encode-jpeg-to-avif.mjs
62
64
  ## Notes
63
65
 
64
66
  - Requires WebCodecs for encoding/decoding.
65
- - Alpha is rejected until auxiliary alpha item muxing is implemented.
67
+ - Alpha can be kept with `alpha: 'keep'`, which writes an auxiliary alpha AVIF item.
66
68
  - The muxer writes a minimal still-image AVIF and does not preserve arbitrary source AVIF boxes.
67
- - `av1C`, `pixi`, and `colr` are derived from the AV1 Sequence Header OBU. Profile compatibility brands are emitted only when the encoded image meets the matching AVIF profile constraints.
69
+ - `av1C` and `pixi` are derived from the AV1 Sequence Header OBU. `colr` uses source `VideoFrame.colorSpace` metadata when available, then falls back to the AV1 Sequence Header. Profile compatibility brands are emitted only when the encoded image meets the matching AVIF profile constraints.
68
70
  - Container-specific mux helpers live in `@browser-mc/media-container`; this package re-exports the AVIF helpers for convenience.
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export type EncodeAvifOptions = {
6
6
  width?: number;
7
7
  height?: number;
8
8
  codec?: string;
9
+ chromaSubsampling?: '444' | '420';
9
10
  bitrate?: number;
10
11
  av1Config?: Uint8Array;
11
12
  alpha?: 'discard' | 'keep';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,YAAY,GACb,MAAM,6BAA6B,CAAC;AAErC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CA4DxI;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC,CAEpI;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAiBlF;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAE3E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,YAAY,GACb,MAAM,6BAA6B,CAAC;AAErC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;CAC5B,CAAC;AAMF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAIxI;AAyKD,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC,CAEpI;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAiBlF;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAE3E"}
package/dist/index.js CHANGED
@@ -4,12 +4,29 @@ export { findSequenceHeaderObu, makeAv1Config, muxStillAvif, } from '@browser-mc
4
4
  export async function encodeImageToAv1(source, options = {}) {
5
5
  assertWebCodecs();
6
6
  if (options.alpha === 'keep')
7
- throw new Error('AVIF alpha is not supported yet; auxiliary alpha items are not muxed');
7
+ return encodeImageToAv1WithAlpha(source, options);
8
+ return encodeImageToAv1Color(source, options);
9
+ }
10
+ async function encodeImageToAv1WithAlpha(source, options) {
11
+ const alphaSource = extractAlphaCanvas(source, options);
12
+ const [color, alpha] = await Promise.all([
13
+ encodeImageToAv1Color(source, { ...options, alpha: 'discard' }),
14
+ encodeImageToAv1Color(alphaSource, {
15
+ ...options,
16
+ alpha: 'discard',
17
+ codec: options.codec ?? codecForSubsampling(options.chromaSubsampling ?? '444', 8),
18
+ bitrate: options.bitrate ?? alphaBitrate(source, options),
19
+ }),
20
+ ]);
21
+ return { ...color, alpha };
22
+ }
23
+ async function encodeImageToAv1Color(source, options = {}) {
8
24
  const width = options.width ?? sourceWidth(source);
9
25
  const height = options.height ?? sourceHeight(source);
10
- const codec = options.codec ?? 'av01.0.08M.08';
26
+ const codec = options.codec ?? preferredCodecForSource(source, options.chromaSubsampling);
11
27
  const bitrate = options.bitrate ?? Math.max(80_000, Math.round(width * height * (options.quality ?? 0.8) * 0.7));
12
- const support = await VideoEncoder.isConfigSupported({
28
+ const colorSpace = source instanceof VideoFrame ? source.colorSpace.toJSON() : undefined;
29
+ const encoderConfig = {
13
30
  codec,
14
31
  width,
15
32
  height,
@@ -17,12 +34,68 @@ export async function encodeImageToAv1(source, options = {}) {
17
34
  framerate: 1,
18
35
  alpha: options.alpha ?? 'discard',
19
36
  latencyMode: 'quality',
20
- });
37
+ };
38
+ const support = await supportedEncoderConfig(encoderConfig, options.codec === undefined && codec.endsWith('.10'));
21
39
  if (!support.supported)
22
40
  throw new Error(`VideoEncoder does not support ${codec}`);
23
41
  const config = support.config;
24
42
  if (!config)
25
43
  throw new Error(`VideoEncoder did not return a normalized config for ${codec}`);
44
+ let shouldCloseFrame = false;
45
+ const frame = source instanceof VideoFrame ? source : makeOwnedFrameFromCanvasSource(source);
46
+ let metadataConfig;
47
+ let chunks = [];
48
+ try {
49
+ try {
50
+ ({ chunks, metadataConfig } = await encodeFrame(frame, config));
51
+ }
52
+ catch (error) {
53
+ if (!(source instanceof VideoFrame) || !config.codec.endsWith('.08') || !isHighBitdepthOrHdrFrame(source))
54
+ throw error;
55
+ const fallbackFrame = makeCanvasSdrFrame(source, width, height);
56
+ try {
57
+ ({ chunks, metadataConfig } = await encodeFrame(fallbackFrame, config));
58
+ }
59
+ finally {
60
+ fallbackFrame.close();
61
+ }
62
+ }
63
+ }
64
+ finally {
65
+ if (shouldCloseFrame)
66
+ frame.close();
67
+ }
68
+ function makeOwnedFrameFromCanvasSource(canvasSource) {
69
+ shouldCloseFrame = true;
70
+ return makeFrameFromCanvasSource(canvasSource);
71
+ }
72
+ const chunk = concat(chunks);
73
+ const decoderConfig = {
74
+ ...(metadataConfig ?? { codec, codedWidth: width, codedHeight: height, description: options.av1Config }),
75
+ colorSpace,
76
+ };
77
+ const sequenceHeaderObu = findSequenceHeaderObu(chunk);
78
+ if (!sequenceHeaderObu)
79
+ throw new Error('Encoded AV1 chunk does not contain a Sequence Header OBU');
80
+ const generatedAv1Config = makeAv1Config(config.codec, sequenceHeaderObu);
81
+ if (options.av1Config && !bytesEqual(options.av1Config, generatedAv1Config)) {
82
+ throw new Error('Provided av1Config does not match the encoded AV1 Sequence Header OBU');
83
+ }
84
+ const av1Config = generatedAv1Config;
85
+ return { chunk, decoderConfig, av1Config, width, height };
86
+ }
87
+ function makeFrameFromCanvasSource(canvasSource) {
88
+ return new VideoFrame(canvasSource, { timestamp: 0, duration: 1_000_000 });
89
+ }
90
+ function makeCanvasSdrFrame(source, width, height) {
91
+ const canvas = new OffscreenCanvas(width, height);
92
+ const context = canvas.getContext('2d', { colorSpace: 'srgb' });
93
+ if (!context)
94
+ throw new Error('Could not create 2D canvas context');
95
+ context.drawImage(source, 0, 0, width, height);
96
+ return makeFrameFromCanvasSource(canvas);
97
+ }
98
+ async function encodeFrame(frame, config) {
26
99
  let metadataConfig;
27
100
  const chunks = [];
28
101
  let rejectEncoderError = () => { };
@@ -37,33 +110,69 @@ export async function encodeImageToAv1(source, options = {}) {
37
110
  metadataConfig = metadata.decoderConfig;
38
111
  },
39
112
  });
40
- let shouldCloseFrame = false;
41
- const frame = source instanceof VideoFrame ? source : makeFrameFromCanvasSource(source);
42
113
  try {
43
114
  encoder.configure(config);
44
115
  encoder.encode(frame, { keyFrame: true });
45
116
  await Promise.race([encoder.flush(), encoderError]);
46
117
  }
47
118
  finally {
48
- encoder.close();
49
- if (shouldCloseFrame)
50
- frame.close();
119
+ if (encoder.state !== 'closed')
120
+ encoder.close();
51
121
  }
52
- function makeFrameFromCanvasSource(canvasSource) {
53
- shouldCloseFrame = true;
54
- return new VideoFrame(canvasSource, { timestamp: 0, duration: 1_000_000 });
55
- }
56
- const chunk = concat(chunks);
57
- const decoderConfig = metadataConfig ?? { codec, codedWidth: width, codedHeight: height, description: options.av1Config };
58
- const sequenceHeaderObu = findSequenceHeaderObu(chunk);
59
- if (!sequenceHeaderObu)
60
- throw new Error('Encoded AV1 chunk does not contain a Sequence Header OBU');
61
- const generatedAv1Config = makeAv1Config(codec, sequenceHeaderObu);
62
- if (options.av1Config && !bytesEqual(options.av1Config, generatedAv1Config)) {
63
- throw new Error('Provided av1Config does not match the encoded AV1 Sequence Header OBU');
122
+ return { chunks, metadataConfig };
123
+ }
124
+ function extractAlphaCanvas(source, options) {
125
+ const width = options.width ?? sourceWidth(source);
126
+ const height = options.height ?? sourceHeight(source);
127
+ const canvas = new OffscreenCanvas(width, height);
128
+ const context = canvas.getContext('2d');
129
+ if (!context)
130
+ throw new Error('Could not create 2D canvas context');
131
+ context.drawImage(source, 0, 0, width, height);
132
+ const image = context.getImageData(0, 0, width, height);
133
+ for (let offset = 0; offset < image.data.length; offset += 4) {
134
+ const alpha = image.data[offset + 3];
135
+ image.data[offset] = alpha;
136
+ image.data[offset + 1] = alpha;
137
+ image.data[offset + 2] = alpha;
138
+ image.data[offset + 3] = 255;
64
139
  }
65
- const av1Config = generatedAv1Config;
66
- return { chunk, decoderConfig, av1Config, width, height };
140
+ context.putImageData(image, 0, 0);
141
+ return canvas;
142
+ }
143
+ function alphaBitrate(source, options) {
144
+ const width = options.width ?? sourceWidth(source);
145
+ const height = options.height ?? sourceHeight(source);
146
+ return Math.max(40_000, Math.round(width * height * (options.quality ?? 0.8) * 0.35));
147
+ }
148
+ async function supportedEncoderConfig(config, allowEightBitFallback) {
149
+ const support = await VideoEncoder.isConfigSupported(config);
150
+ if (support.supported || !allowEightBitFallback)
151
+ return support;
152
+ return VideoEncoder.isConfigSupported({
153
+ ...config,
154
+ codec: config.codec.replace(/\.10(?=$|[.])/u, '.08'),
155
+ });
156
+ }
157
+ function preferredCodecForSource(source, chromaSubsampling) {
158
+ const subsampling = chromaSubsampling ?? '444';
159
+ if (!(source instanceof VideoFrame))
160
+ return codecForSubsampling(subsampling, 8);
161
+ return codecForSubsampling(subsampling, isHighBitdepthOrHdrFrame(source) ? 10 : 8);
162
+ }
163
+ function codecForSubsampling(chromaSubsampling, bitDepth) {
164
+ const profile = chromaSubsampling === '444' ? 1 : 0;
165
+ return `av01.${profile}.08M.${String(bitDepth).padStart(2, '0')}`;
166
+ }
167
+ function isHighBitdepthOrHdrFrame(source) {
168
+ const colorSpace = source.colorSpace;
169
+ const format = source.format ?? '';
170
+ const transfer = String(colorSpace.transfer ?? '');
171
+ const primaries = String(colorSpace.primaries ?? '');
172
+ const usesHdrTransfer = transfer === 'pq' || transfer === 'hlg' || transfer === 'smpte2084' || transfer === 'arib-std-b67';
173
+ const usesHdrPrimaries = primaries === 'bt2020';
174
+ const usesHighBitdepthFormat = /(?:P010|P012|P016|I\d+P1[026]|10|12|16)/.test(format);
175
+ return usesHdrTransfer || usesHdrPrimaries || usesHighBitdepthFormat;
67
176
  }
68
177
  export async function encodeImageToAvif(source, options = {}) {
69
178
  return muxStillAvif(await encodeImageToAv1(source, options));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,14 @@
1
1
  {
2
2
  "name": "@browser-mc/webcodecs-avif",
3
- "version": "0.0.1",
3
+ "version": "0.2.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/tamaina/browser-media-converter",
10
+ "directory": "packages/webcodecs-avif"
11
+ },
7
12
  "exports": {
8
13
  ".": {
9
14
  "types": "./dist/index.d.ts",
@@ -11,8 +16,8 @@
11
16
  }
12
17
  },
13
18
  "dependencies": {
14
- "@browser-mc/binary": "^0.0.1",
15
- "@browser-mc/media-container": "^0.0.1"
19
+ "@browser-mc/media-container": "^0.2.0",
20
+ "@browser-mc/binary": "^0.0.1"
16
21
  },
17
22
  "files": [
18
23
  "dist",
@@ -22,10 +27,11 @@
22
27
  "access": "public"
23
28
  },
24
29
  "scripts": {
25
- "prebuild": "pnpm --filter @browser-mc/media-container build",
26
- "build": "tsc -p tsconfig.json",
27
- "pretypecheck": "pnpm --filter @browser-mc/media-container build",
28
- "typecheck": "tsc -p tsconfig.json --noEmit",
29
- "test": "pnpm build"
30
+ "build": "pnpm --filter @browser-mc/webcodecs-avif... build:package",
31
+ "build:package": "tsc -p tsconfig.json",
32
+ "typecheck": "pnpm --filter @browser-mc/webcodecs-avif... typecheck:package",
33
+ "typecheck:package": "tsc -p tsconfig.json --noEmit",
34
+ "test": "pnpm build && pnpm test:package",
35
+ "test:package": "node test/encode-jpeg-to-avif.mjs"
30
36
  }
31
37
  }