feat: declare explicit media provider capabilities

This commit is contained in:
Peter Steinberger
2026-04-06 15:24:16 +01:00
parent 29df67c491
commit cd5b1653f6
46 changed files with 1623 additions and 393 deletions

View File

@@ -126,7 +126,9 @@ describe("video-generation runtime", () => {
defaultModel: "vid-v1",
models: ["vid-v1"],
capabilities: {
supportsAudio: true,
generate: {
supportsAudio: true,
},
},
generateVideo: async () => ({
videos: [{ buffer: Buffer.from("mp4-bytes"), mimeType: "video/mp4" }],
@@ -177,7 +179,9 @@ describe("video-generation runtime", () => {
mocks.getVideoGenerationProvider.mockReturnValue({
id: "openai",
capabilities: {
supportsSize: true,
generate: {
supportsSize: true,
},
},
generateVideo: async (req) => {
seenRequest = {

View File

@@ -53,30 +53,24 @@ function resolveVideoGenerationModeCapabilities(params: {
if (mode === "generate") {
return {
mode,
capabilities: capabilities.generate ?? capabilities,
capabilities: capabilities.generate,
};
}
if (mode === "imageToVideo") {
return {
mode,
capabilities: capabilities.imageToVideo ?? {
...capabilities,
enabled: (capabilities.maxInputImages ?? 0) > 0,
},
capabilities: capabilities.imageToVideo,
};
}
if (mode === "videoToVideo") {
return {
mode,
capabilities: capabilities.videoToVideo ?? {
...capabilities,
enabled: (capabilities.maxInputVideos ?? 0) > 0,
},
capabilities: capabilities.videoToVideo,
};
}
return {
mode,
capabilities,
capabilities: undefined,
};
}