Does my Short have audio? Check probe.has_audio before captions
Transcribing a silent clip returns inspect_source_has_no_audio. Probe has_audio first with a frames:false video inspect, then caption only clips with a voice.

Call POST /v1/video-inspect with frames: false and read probe.has_audio. If it is false, skip transcription: transcribe: true on a silent clip returns inspect_source_has_no_audio. The probe-only call returns no stills, so it is the cheap check. Read from the Sume docs on 2026-10-06.
Why would a Short have no audio?
A Timeline render in audio.mode: "silence" with no soundtrack, a clip exported with the audio dropped by video-trim (audio: "drop"), or a generated clip that ships without a track. Any of these will fail a transcription request.
What does the call look like?
Inspect is a sync-capable route: the default waits up to 30 seconds, and a longer run returns 202 for polling. The source limit is 1800 seconds.
import os, requests
r = requests.post(
"https://api.sume.com/v1/video-inspect",
headers={"Authorization": "Bearer " + os.environ["SUME_API_KEY"],
"Idempotency-Key": "probe-short-001"},
json={"video_url": "https://media.sume.com/artifacts/artf_demo/short.mp4",
"frames": False},
timeout=60,
)
print(r.status_code, r.json())What next if it has audio?
Send the same clip with transcribe: true and segmentation: {"mode": "sentence"}. Speech-to-text is $0.01 per audio minute, and sentence segments come back without gaps.
Sources
Related posts
More in Developers
- Eight concurrent jobs_wait calls per principal on Sume hosted MCP
Sume's hosted MCP bounds waits per process and per principal, workspace plus owner. Batch ids into one jobs_wait instead of sending many parallel waits.
- Envoy's 15 s route timeout vs a 30 s Sume sync call
Envoy's RouteAction timeout defaults to 15s. Sume sync mode can wait 30 s. Behind Envoy or Istio, use async, or raise the route timeout above the sync wait.
- Estimate a batch image cost from the Sume catalog in Python
Read a model's price from GET /v1/images/models/{id}/endpoints and multiply by n and count. A 14-line Python estimator, with the quality and size caveat.
- Excel VBA: submit an AI video job and poll it with Application.OnTime
An Excel macro posts a Wan 3.0 job to Sume with ServerXMLHTTP, saves the job id in a cell and re-checks status with Application.OnTime without blocking Excel.
Written by Sume