Video Emotion API

Reprocess Video

Changed on

Reprocess an already uploaded and completed video file. This is useful when insights need to be regenerated or logic has been updated on the backend. Reprocessing can optionally notify your system via a callback URL.

language is optional. Without it the video keeps the language it already has (detected from the audio when it has none). With it, the video and its companion audio are processed in that language, and the video remembers it for later reprocesses. It is checked before anything is charged, so an unsupported code is refused with 422 invalid_language and costs nothing. It is only used by a request that starts a run (a failed video, or reprocess=true); on a request that does not, it is ignored.

The video's companion audio is transcribed again in that language, as part of the video's charge: a failed one as before, and a completed one too (its language-range edits are discarded). One that is still processing is not restarted; fix it with PUT /v1/audios/{audio_id} once it has finished. One busy with a language-range job is refused with 409 audio_busy. GET on the video returns the stored multilingual and expected_languages, but not the stored language.

multilingual and expected_languages are the language hints (expected_languages is the set of languages the audio may contain, up to 5; see the field descriptions). Each is optional and, unlike on the audio endpoint, an omitted one keeps what the video has: multilingual=false turns the switch off and an empty expected_languages removes the set, which is how a video returns to unrestricted detection. They are checked with language before anything is charged (an invalid one is 422 invalid_language and costs nothing), and language must be in the set the video will have: naming only language outside the stored set is refused the same way, so send the set too (or an empty one) to change both. Naming any of the three also re-runs a completed companion audio, and the companion is given the video's resulting hints.

put/v1/videos/{video_id}

Request

  • Base URL
    https://api.imentiv.ai (the document declares no server; this is the origin it was published from)
  • Auth
    • API key in header X-API-Key
    • or HTTP bearer

Path parameters

video_idstring required

Unique identifier of the video to reprocess

Request body application/x-www-form-urlencoded

callback_urlstring nullable

The callback url to notify video reprocessing is completed. Give a valid URL. Must be an https URL on a publicly reachable host.

reprocessboolean

Set to 'True' to reprocess an already completed video; defaults to 'False'.

languagestring nullable

Language of the video's audio track as a language code such as hu or pt-BR (a region is ignored, so zh-yue becomes zh: send yue for Cantonese). Use it when automatic detection got the language wrong. Omit to keep the video's current language (auto-detect if it has none). Unlike the audio endpoint, a later reprocess that omits it re-sends this language rather than auto-detecting again. Unsupported codes are refused with 422 invalid_language. With expected_languages (sent or stored) it must be one of them.

multilingualboolean nullable

Opt in to mixed-language transcription: the speech may switch language, and each stretch is transcribed in the language it is spoken in. Once the audio completes, the lines that are not in its main language are also translated into the main language and billed as a translation, on top of transcription (auto_translation reports it). This is input only; the languages actually detected are reported separately. Omitted keeps what is stored. false turns it off.

expected_languagesstring nullable

Comma-separated codes of the languages the audio may contain, the main one included (e.g. en,ja), 1 to 5 after duplicates are removed. Case and whitespace are ignored, a region is dropped (pt-BR is pt) and an alias maps to the Whisper spelling (iw is he); Cantonese is yue. Language detection is restricted to the set, with or without multilingual. If language is also sent it must be one of them (422 invalid_language otherwise). If language is omitted, detection still runs, restricted to the set. An unknown code, or more than 5, is refused with 422 invalid_language before anything is charged. Omitted keeps what is stored. Send the field empty to remove the stored set.

Response

Successful Response

idstring required
messagestring required
statusstring required

Changes

    • breaking

      the response's property type changed from array to string for status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      the response property became required for the status

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property