@meframe/core 0.1.0 → 0.1.1
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/dist/cache/CacheManager.d.ts +1 -1
- package/dist/cache/CacheManager.d.ts.map +1 -1
- package/dist/cache/CacheManager.js +2 -2
- package/dist/cache/CacheManager.js.map +1 -1
- package/dist/cache/l1/AudioL1Cache.d.ts +1 -1
- package/dist/cache/l1/AudioL1Cache.d.ts.map +1 -1
- package/dist/cache/l1/AudioL1Cache.js +2 -2
- package/dist/cache/l1/AudioL1Cache.js.map +1 -1
- package/dist/controllers/PlaybackController.d.ts.map +1 -1
- package/dist/controllers/PlaybackController.js +1 -1
- package/dist/controllers/PlaybackController.js.map +1 -1
- package/dist/model/CompositionModel.d.ts.map +1 -1
- package/dist/model/CompositionModel.js +4 -5
- package/dist/model/CompositionModel.js.map +1 -1
- package/dist/model/types.d.ts +6 -0
- package/dist/model/types.d.ts.map +1 -1
- package/dist/model/types.js.map +1 -1
- package/dist/orchestrator/CompositionPlanner.d.ts +0 -1
- package/dist/orchestrator/CompositionPlanner.d.ts.map +1 -1
- package/dist/orchestrator/CompositionPlanner.js +4 -12
- package/dist/orchestrator/CompositionPlanner.js.map +1 -1
- package/dist/orchestrator/ExportScheduler.d.ts.map +1 -1
- package/dist/orchestrator/ExportScheduler.js +1 -0
- package/dist/orchestrator/ExportScheduler.js.map +1 -1
- package/dist/orchestrator/GlobalAudioSession.d.ts +1 -1
- package/dist/orchestrator/GlobalAudioSession.d.ts.map +1 -1
- package/dist/orchestrator/GlobalAudioSession.js +2 -1
- package/dist/orchestrator/GlobalAudioSession.js.map +1 -1
- package/dist/orchestrator/Orchestrator.d.ts.map +1 -1
- package/dist/orchestrator/Orchestrator.js +2 -7
- package/dist/orchestrator/Orchestrator.js.map +1 -1
- package/dist/stages/compose/LayerRenderer.d.ts +5 -0
- package/dist/stages/compose/LayerRenderer.d.ts.map +1 -1
- package/dist/stages/compose/LayerRenderer.js +91 -89
- package/dist/stages/compose/LayerRenderer.js.map +1 -1
- package/dist/stages/compose/instructions.d.ts +6 -6
- package/dist/stages/compose/instructions.d.ts.map +1 -1
- package/dist/stages/compose/types.d.ts +6 -0
- package/dist/stages/compose/types.d.ts.map +1 -1
- package/dist/workers/stages/compose/{video-compose.worker.B-_C-_y6.js → video-compose.worker.C8728Oi3.js} +97 -98
- package/dist/workers/stages/compose/video-compose.worker.C8728Oi3.js.map +1 -0
- package/dist/workers/worker-manifest.json +1 -1
- package/package.json +1 -1
- package/dist/workers/stages/compose/video-compose.worker.B-_C-_y6.js.map +0 -1
|
@@ -6,6 +6,10 @@ export interface AudioComposeConfig {
|
|
|
6
6
|
format?: 'f32-planar' | 'f32' | 's16' | 's32';
|
|
7
7
|
}
|
|
8
8
|
type TimeUs = number;
|
|
9
|
+
export interface ClipRenderConfig {
|
|
10
|
+
width?: number | string;
|
|
11
|
+
height?: number | string;
|
|
12
|
+
}
|
|
9
13
|
export interface AudioTrackConfig {
|
|
10
14
|
startTimeUs: number;
|
|
11
15
|
durationUs?: number;
|
|
@@ -234,6 +238,7 @@ export interface VideoLayer extends Layer {
|
|
|
234
238
|
type: 'video';
|
|
235
239
|
videoFrame: VideoFrame;
|
|
236
240
|
rcFrame?: any;
|
|
241
|
+
renderConfig?: ClipRenderConfig;
|
|
237
242
|
crop?: {
|
|
238
243
|
x: number;
|
|
239
244
|
y: number;
|
|
@@ -245,6 +250,7 @@ export interface ImageLayer extends Layer {
|
|
|
245
250
|
type: 'image';
|
|
246
251
|
source: ImageBitmap | ImageData | null;
|
|
247
252
|
attachmentId?: string;
|
|
253
|
+
renderConfig?: ClipRenderConfig;
|
|
248
254
|
crop?: {
|
|
249
255
|
x: number;
|
|
250
256
|
y: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/stages/compose/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;CAC/C;AAED,KAAK,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/stages/compose/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -843,41 +843,46 @@ class LayerRenderer {
|
|
|
843
843
|
const parsed = parseFloat(strValue);
|
|
844
844
|
return isNaN(parsed) ? void 0 : parsed;
|
|
845
845
|
}
|
|
846
|
+
/**
|
|
847
|
+
* Calculate dimensions from renderConfig
|
|
848
|
+
* Returns dimensions maintaining aspect ratio when only one dimension is specified
|
|
849
|
+
*/
|
|
850
|
+
calculateDimensionsFromConfig(sourceWidth, sourceHeight, renderConfig) {
|
|
851
|
+
if (!renderConfig) {
|
|
852
|
+
return { width: sourceWidth, height: sourceHeight };
|
|
853
|
+
}
|
|
854
|
+
const width = this.parseDimension(renderConfig.width, this.width);
|
|
855
|
+
const height = this.parseDimension(renderConfig.height, this.height);
|
|
856
|
+
if (width && height) {
|
|
857
|
+
return { width, height };
|
|
858
|
+
} else if (width) {
|
|
859
|
+
return {
|
|
860
|
+
width,
|
|
861
|
+
height: Math.round(sourceHeight / sourceWidth * width)
|
|
862
|
+
};
|
|
863
|
+
} else if (height) {
|
|
864
|
+
return {
|
|
865
|
+
width: Math.round(sourceWidth / sourceHeight * height),
|
|
866
|
+
height
|
|
867
|
+
};
|
|
868
|
+
} else {
|
|
869
|
+
return { width: sourceWidth, height: sourceHeight };
|
|
870
|
+
}
|
|
871
|
+
}
|
|
846
872
|
getLayerDimensions(layer) {
|
|
847
873
|
if (layer.type === "image") {
|
|
848
874
|
const imageLayer = layer;
|
|
849
875
|
if (imageLayer.source) {
|
|
850
876
|
const imgWidth = imageLayer.source.width;
|
|
851
877
|
const imgHeight = imageLayer.source.height;
|
|
852
|
-
|
|
853
|
-
if (isAttachment) {
|
|
854
|
-
const targetWidthRaw = imageLayer.targetWidth;
|
|
855
|
-
const targetHeightRaw = imageLayer.targetHeight;
|
|
856
|
-
const targetWidth = this.parseDimension(targetWidthRaw, this.width);
|
|
857
|
-
const targetHeight = this.parseDimension(targetHeightRaw, this.height);
|
|
858
|
-
if (targetWidth && targetHeight) {
|
|
859
|
-
return { width: targetWidth, height: targetHeight };
|
|
860
|
-
} else if (targetWidth) {
|
|
861
|
-
return {
|
|
862
|
-
width: targetWidth,
|
|
863
|
-
height: imgHeight / imgWidth * targetWidth
|
|
864
|
-
};
|
|
865
|
-
} else if (targetHeight) {
|
|
866
|
-
return {
|
|
867
|
-
width: imgWidth / imgHeight * targetHeight,
|
|
868
|
-
height: targetHeight
|
|
869
|
-
};
|
|
870
|
-
}
|
|
871
|
-
}
|
|
872
|
-
return { width: imgWidth, height: imgHeight };
|
|
878
|
+
return this.calculateDimensionsFromConfig(imgWidth, imgHeight, imageLayer.renderConfig);
|
|
873
879
|
}
|
|
874
880
|
} else if (layer.type === "video") {
|
|
875
881
|
const videoLayer = layer;
|
|
876
882
|
const videoFrame = videoLayer.videoFrame;
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
};
|
|
883
|
+
const videoWidth = videoFrame.displayWidth || videoFrame.codedWidth;
|
|
884
|
+
const videoHeight = videoFrame.displayHeight || videoFrame.codedHeight;
|
|
885
|
+
return this.calculateDimensionsFromConfig(videoWidth, videoHeight, videoLayer.renderConfig);
|
|
881
886
|
}
|
|
882
887
|
return { width: this.width, height: this.height };
|
|
883
888
|
}
|
|
@@ -922,11 +927,27 @@ class LayerRenderer {
|
|
|
922
927
|
this.ctx.translate(-centerX, -centerY);
|
|
923
928
|
}
|
|
924
929
|
renderVideoLayer(layer) {
|
|
925
|
-
const { videoFrame, crop } = layer;
|
|
930
|
+
const { videoFrame, crop, renderConfig } = layer;
|
|
926
931
|
const videoWidth = videoFrame.displayWidth || videoFrame.codedWidth;
|
|
927
932
|
const videoHeight = videoFrame.displayHeight || videoFrame.codedHeight;
|
|
928
|
-
|
|
929
|
-
|
|
933
|
+
let renderX;
|
|
934
|
+
let renderY;
|
|
935
|
+
let renderWidth;
|
|
936
|
+
let renderHeight;
|
|
937
|
+
if (renderConfig) {
|
|
938
|
+
const dimensions = this.calculateDimensionsFromConfig(videoWidth, videoHeight, renderConfig);
|
|
939
|
+
renderWidth = dimensions.width;
|
|
940
|
+
renderHeight = dimensions.height;
|
|
941
|
+
renderX = Math.round((this.width - renderWidth) / 2);
|
|
942
|
+
renderY = Math.round((this.height - renderHeight) / 2);
|
|
943
|
+
} else {
|
|
944
|
+
const naturalScale = this.height / videoHeight;
|
|
945
|
+
const dimensions = this.calculateRenderDimensions(videoWidth, videoHeight, naturalScale);
|
|
946
|
+
renderX = dimensions.x;
|
|
947
|
+
renderY = dimensions.y;
|
|
948
|
+
renderWidth = dimensions.width;
|
|
949
|
+
renderHeight = dimensions.height;
|
|
950
|
+
}
|
|
930
951
|
if (crop) {
|
|
931
952
|
this.ctx.drawImage(
|
|
932
953
|
videoFrame,
|
|
@@ -934,23 +955,17 @@ class LayerRenderer {
|
|
|
934
955
|
crop.y,
|
|
935
956
|
crop.width,
|
|
936
957
|
crop.height,
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
958
|
+
renderX,
|
|
959
|
+
renderY,
|
|
960
|
+
renderWidth,
|
|
961
|
+
renderHeight
|
|
941
962
|
);
|
|
942
963
|
} else {
|
|
943
|
-
this.ctx.drawImage(
|
|
944
|
-
videoFrame,
|
|
945
|
-
dimensions.x,
|
|
946
|
-
dimensions.y,
|
|
947
|
-
dimensions.width,
|
|
948
|
-
dimensions.height
|
|
949
|
-
);
|
|
964
|
+
this.ctx.drawImage(videoFrame, renderX, renderY, renderWidth, renderHeight);
|
|
950
965
|
}
|
|
951
966
|
}
|
|
952
967
|
renderImageLayer(layer) {
|
|
953
|
-
const { source, crop } = layer;
|
|
968
|
+
const { source, crop, renderConfig } = layer;
|
|
954
969
|
if (source instanceof ImageData) {
|
|
955
970
|
if (crop) {
|
|
956
971
|
const tempCanvas = new OffscreenCanvas(crop.width, crop.height);
|
|
@@ -960,56 +975,43 @@ class LayerRenderer {
|
|
|
960
975
|
} else {
|
|
961
976
|
this.ctx.putImageData(source, 0, 0);
|
|
962
977
|
}
|
|
978
|
+
return;
|
|
979
|
+
}
|
|
980
|
+
if (!source) return;
|
|
981
|
+
const imgWidth = source.width;
|
|
982
|
+
const imgHeight = source.height;
|
|
983
|
+
let renderX;
|
|
984
|
+
let renderY;
|
|
985
|
+
let renderWidth;
|
|
986
|
+
let renderHeight;
|
|
987
|
+
if (renderConfig) {
|
|
988
|
+
const dimensions = this.calculateDimensionsFromConfig(imgWidth, imgHeight, renderConfig);
|
|
989
|
+
renderWidth = dimensions.width;
|
|
990
|
+
renderHeight = dimensions.height;
|
|
991
|
+
renderX = 0;
|
|
992
|
+
renderY = 0;
|
|
963
993
|
} else {
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
renderWidth = imgWidth / imgHeight * targetHeight;
|
|
986
|
-
} else {
|
|
987
|
-
renderWidth = imgWidth;
|
|
988
|
-
renderHeight = imgHeight;
|
|
989
|
-
}
|
|
990
|
-
} else {
|
|
991
|
-
const naturalScale = this.width / imgWidth;
|
|
992
|
-
const dimensions = this.calculateRenderDimensions(imgWidth, imgHeight, naturalScale);
|
|
993
|
-
renderWidth = dimensions.width;
|
|
994
|
-
renderHeight = dimensions.height;
|
|
995
|
-
}
|
|
996
|
-
const renderX = isAttachment ? 0 : Math.round((this.width - renderWidth) / 2);
|
|
997
|
-
const renderY = isAttachment ? 0 : Math.round((this.height - renderHeight) / 2);
|
|
998
|
-
if (crop) {
|
|
999
|
-
this.ctx.drawImage(
|
|
1000
|
-
source,
|
|
1001
|
-
crop.x,
|
|
1002
|
-
crop.y,
|
|
1003
|
-
crop.width,
|
|
1004
|
-
crop.height,
|
|
1005
|
-
renderX,
|
|
1006
|
-
renderY,
|
|
1007
|
-
renderWidth,
|
|
1008
|
-
renderHeight
|
|
1009
|
-
);
|
|
1010
|
-
} else {
|
|
1011
|
-
this.ctx.drawImage(source, renderX, renderY, renderWidth, renderHeight);
|
|
1012
|
-
}
|
|
994
|
+
const naturalScale = this.width / imgWidth;
|
|
995
|
+
const dimensions = this.calculateRenderDimensions(imgWidth, imgHeight, naturalScale);
|
|
996
|
+
renderWidth = dimensions.width;
|
|
997
|
+
renderHeight = dimensions.height;
|
|
998
|
+
renderX = Math.round((this.width - renderWidth) / 2);
|
|
999
|
+
renderY = Math.round((this.height - renderHeight) / 2);
|
|
1000
|
+
}
|
|
1001
|
+
if (crop) {
|
|
1002
|
+
this.ctx.drawImage(
|
|
1003
|
+
source,
|
|
1004
|
+
crop.x,
|
|
1005
|
+
crop.y,
|
|
1006
|
+
crop.width,
|
|
1007
|
+
crop.height,
|
|
1008
|
+
renderX,
|
|
1009
|
+
renderY,
|
|
1010
|
+
renderWidth,
|
|
1011
|
+
renderHeight
|
|
1012
|
+
);
|
|
1013
|
+
} else {
|
|
1014
|
+
this.ctx.drawImage(source, renderX, renderY, renderWidth, renderHeight);
|
|
1013
1015
|
}
|
|
1014
1016
|
}
|
|
1015
1017
|
renderTextLayer(layer) {
|
|
@@ -2026,10 +2028,12 @@ function materializeLayer(layer, frame, imageMap, globalTimeUs) {
|
|
|
2026
2028
|
opacity: layer.opacity ?? 1
|
|
2027
2029
|
};
|
|
2028
2030
|
if (layer.type === "video") {
|
|
2031
|
+
const payload = layer.payload;
|
|
2029
2032
|
return {
|
|
2030
2033
|
...baseLayer,
|
|
2031
2034
|
type: "video",
|
|
2032
|
-
videoFrame: frame
|
|
2035
|
+
videoFrame: frame,
|
|
2036
|
+
renderConfig: payload.renderConfig
|
|
2033
2037
|
};
|
|
2034
2038
|
}
|
|
2035
2039
|
if (layer.type === "text") {
|
|
@@ -2053,14 +2057,9 @@ function materializeLayer(layer, frame, imageMap, globalTimeUs) {
|
|
|
2053
2057
|
...baseLayer,
|
|
2054
2058
|
type: "image",
|
|
2055
2059
|
source,
|
|
2056
|
-
attachmentId: payload.attachmentId
|
|
2060
|
+
attachmentId: payload.attachmentId,
|
|
2061
|
+
renderConfig: payload.renderConfig
|
|
2057
2062
|
};
|
|
2058
|
-
if (payload.targetWidth !== void 0) {
|
|
2059
|
-
imageLayer.targetWidth = payload.targetWidth;
|
|
2060
|
-
}
|
|
2061
|
-
if (payload.targetHeight !== void 0) {
|
|
2062
|
-
imageLayer.targetHeight = payload.targetHeight;
|
|
2063
|
-
}
|
|
2064
2063
|
if (payload.animation && globalTimeUs !== void 0) {
|
|
2065
2064
|
const animState = computeAnimationState(payload.animation, globalTimeUs);
|
|
2066
2065
|
if (!animState.visible) {
|
|
@@ -2462,4 +2461,4 @@ export {
|
|
|
2462
2461
|
VideoComposeWorker,
|
|
2463
2462
|
videoCompose_worker as default
|
|
2464
2463
|
};
|
|
2465
|
-
//# sourceMappingURL=video-compose.worker.
|
|
2464
|
+
//# sourceMappingURL=video-compose.worker.C8728Oi3.js.map
|