You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fal video: route-declared limits, text_to_video at planning, and a generic adapter #94
Route-declared video limits.fx-routes-v1 has no member for a route's aspect ratios, minimum duration, default tier or a tier's size, so fal-queue keeps them as constants (9:16 and 16:9, 3 seconds, 720p at 9:16, short sides 360 to 2160) and its check does not judge the size of another tier. A capped route (cap_usd alone) has neither tiers nor max_units, so a capped fal video route is held to the adapter's defaults (360p, 720p, 1080p, 4k; 3 to 10 seconds).
text_to_video while planning. A step without a first_frame implies no feature, so on a route that does not declare text_to_video it is refused only when the call is sent (at $0, as before). gg-video does not judge it.
A generic fal video adapter. fal's video request shapes diverge by endpoint (Grida Models v1.20261013.6, 12 endpoints): the first frame is image_url on 6 and start_image_url on 1; duration is an integer on 3, a string "4" to "30" (or auto) on 3, and "4s", "6s" or "8s" on 6; no endpoint records an end frame. fal-queue fits only endpoints with the built-in route's shape.
Found while building the AI provider contract (plan, #69, #79).
Update from Grida Models v1.20261014.1 (pinned in #106): it records 22 fal video endpoints. The first frame is image_url on 10 and start_image_url on 1; duration is an integer on 8, a number on 2, a string "4" to "30" (or auto) on 4, "4s"/"6s"/"8s" on 6, and untyped on 2; an end frame (end_image_url) is recorded on 3, so "no endpoint records an end frame" no longer holds. The shapes still diverge, so the generic adapter still waits.
Activity
softmarshmallow commentedon Oct 15, 2026
Update from Grida Models
v1.20261014.1(pinned in #106): it records 22 fal video endpoints. The first frame isimage_urlon 10 andstart_image_urlon 1;durationis an integer on 8, a number on 2, a string"4"to"30"(orauto) on 4,"4s"/"6s"/"8s"on 6, and untyped on 2; an end frame (end_image_url) is recorded on 3, so "no endpoint records an end frame" no longer holds. The shapes still diverge, so the generic adapter still waits.