Azure Video Translation: 337–361 seconds in NotStarted despite fast HTTP 201 — request engineering investigation

Adrian Tudor 0 Reputation points
2026-10-18T16:39:07.26+00:00

We are requesting review by a Microsoft engineer and escalation to the Azure AI Speech / Video Translation product team for a recurring delay after translation creation is accepted and before the iteration changes from NotStarted to Running.

Observed issue A short video can spend approximately 5.6–6.0 minutes in NotStarted even though the creation request returns HTTP 201 in less than half a second. The operations eventually succeed. We need evidence-based guidance on the cause and a supported mitigation; we are not claiming that cold start or model loading has been proven.

Workload and workflow

  • Same original 70.875-second MP4, Romanian to Italian, one speaker.
  • PlatformVoice: it-IT-Alessio:DragonHDLatestNeural.
  • Submitted through our normal application UI, without changing application code or the translation workflow during these tests.
  • Flow: Fast Transcription -> transcript review -> text translation -> Video Translation with supplied transcript/translation metadata -> iteration status polling -> local output/subtitle rendering.
  • The same source transcript text was retained in these three runs. We are not claiming byte-identical internal Azure inputs or measuring Video Translation's automatic transcription path.
  • The calling App Service had Always On enabled and Health Check configured at /health. Health requests returned HTTP 200 while the Video Translation iteration remained NotStarted. These checks concern our App Service, not the readiness of the managed Video Translation backend.

Measurements from three runs on 18 October 2026

Run (anonymized) NotStarted observed (s) Running observed (s) Azure application step incl. preparation (s) Full application created-to-completed (s)
A 337.014 117.127 460.3 672.787
B 169.335 77.246 252.5 457.442
C 360.622 114.031 480.5 631.815

NotStarted is measured from the first worker polling observation of NotStarted to the first observation of Running. Running is measured from that observation to the first observation of Succeeded. These are polling-based durations, not Azure internal transition timestamps. The Azure step includes preparation before polling, and the full application time additionally includes transcription, human review and local rendering; those totals must not be conflated with HTTP latency.

For run C, AzureDiagnostics recorded CreateOrReplaceTranslation HTTP 201 with a duration of 410 ms. State reads around the test were fast (approximately 40 ms on average in the resource-level diagnostics). Nevertheless the iteration spent 360.622 s in NotStarted. Fast Transcription took about 2.8 s and the preceding text translation about 0.9 s. No HTTP 429 or 5xx errors appeared in the diagnostics consulted for these runs.

Controls and limitations

  • No deliberate worker restart was performed for runs B and C. Enabling Health Check before run A had caused a worker restart approximately ten minutes earlier, so run A is not a no-restart control.
  • The application completion-to-next-submission gaps were approximately 5 h 44 min before B and 3 h 30 min before C. They are NOT clean Speech inactivity intervals: resource-wide diagnostics showed other translation activity during the gaps, and preparing the latest UI submission also generated a token request. Resource-level aggregate counts cannot all be attributed to our test job.
  • Additional resource activity was also observed after run C had entered Running. We cannot identify its origin from the evidence available.
  • Diagnostic ingestion can lag. Absence of a row in a partial query is not proof of no activity.
  • Repeating the same video and keeping the caller healthy did not reliably eliminate the delay. This does not distinguish backend activation, scheduling/capacity, routing or caching.

Questions for Microsoft engineering

  1. Is a recurring roughly six-minute NotStarted interval after a successful, fast HTTP 201 a known Video Translation behavior or issue? What can keep an accepted iteration in this state?
  2. Which customer-accessible logs, correlation fields or metrics can distinguish queue/capacity waiting from backend activation, routing or other preparation? Request/response latency alone does not explain the asynchronous delay.
  3. Is there a documented, supported way to reduce this delay without changing the application's functional workflow? If keep-alive reads, provisioned capacity, a region/voice choice or another setting are applicable, please identify the supported mechanism and its limitations rather than assuming App Service Always On warms Video Translation.
  4. Does the supplied-metadata workflow described above require any additional operation to start processing promptly after creation?

Please have a Microsoft engineer review these measurements and, if necessary, escalate this report to the Video Translation product team. We would appreciate a service-specific human response and a reference to any known issue or documented mitigation. An AI-generated hypothesis alone cannot establish the internal cause.

This public report contains no subscription/resource identifiers, credentials, signed URLs, source media or raw logs. If further correlation evidence is needed, please identify an official secure channel and whether a no-cost investigation route is available.

Azure Speech in Foundry Tools
0 comments No comments

1 answer

Sort by: Oldest
  1. Jerald Felix 19,080 Reputation points Volunteer Moderator
    2026-10-29T17:24:20.2733333+00:00

    Hello Adrian Tudor,

    Greetings! Thanks for raising this question in the Q&A forum

    Your measurements show that the delay occurs inside the managed Video Translation workflow after Azure accepts the request. An HTTP 201 Created confirms that the translation resource was created, but it does not confirm that backend processing started. The observed NotStarted state means the iteration exists but has not begun execution.

    The evidence does not establish whether the internal cause is capacity scheduling, backend activation, routing, or another preparation stage. Microsoft currently documents no six-minute startup interval or startup-time SLA for Video Translation.

    1. Confirm that no start operation is missing

    Creating only a translation does not initiate processing. An iteration must also be created. When autoCreateFirstIteration is set to true, Azure creates that first iteration automatically.

    Because your iteration is visible as NotStarted and later progresses to Running and Succeeded, the required iteration already exists. There is no additional documented start or resume operation for the supplied MetadataJson workflow. See How to use Video Translation and the Iteration REST API.

    Treat the wait as asynchronous service-side time

    The 410 ms create-request duration measures only the synchronous API operation. It does not include the time spent waiting for backend processing capacity. App Service Always On, health checks, token requests, or repeated status reads cannot warm the separate managed Video Translation backend.

    The roughly 337–361 second pattern is worth engineering investigation, but it should not be labeled a cold start without service-side correlation.

    Do not apply undocumented capacity workarounds

    The published Azure Speech quota controls cover capabilities such as speech-to-text, Fast Transcription, speech translation, and text-to-speech. Video Translation is not listed with an adjustable concurrency quota or provisioned-capacity option: Azure Speech quotas and limits.

    There is therefore no documented basis for recommending keep-alive requests, a specific polling interval, another voice, or a pricing-tier change as a fix. Region or voice comparisons can be useful diagnostic tests, but they are not guaranteed mitigations.

    Make the application tolerant of the asynchronous delay

    Continue polling until Succeeded or Failed, but use a moderate interval such as 5–10 seconds with backoff. Keep the client-side timeout above the longest observed queue and processing duration. Do not automatically create another translation when an accepted iteration remains NotStarted, because that can create duplicate work.

    Request service-side correlation

    This requires the Video Translation product team to inspect internal events. Open an Azure technical support request against the affected Speech resource and provide:

    Speech resource region and pricing tier

    API version

    Translation ID and iteration ID for runs A, B, and C

    UTC submission and state-transition timestamps

    Operation-Id, x-ms-request-id, correlation headers, and sanitized responses

    Voice it-IT-Alessio:DragonHDLatestNeural

    The 337.014, 169.335, and 360.622 second NotStarted measurements

    The matching CreateOrReplaceTranslation diagnostic rows

    Confirmation that no 429 or 5xx response occurred

    A sanitized request showing the supplied metadata and autoCreateFirstIteration setting

    Do not publish resource identifiers, signed URLs, or raw media in Q&A. Share them only through the support request’s secure upload channel.

    The current Microsoft known-issues page does not identify this Video Translation symptom. Azure technical support normally requires a support plan, as documented in Create an Azure support request. A Microsoft Q&A moderator may be able to facilitate product-team review or a one-time support route, but that is discretionary and cannot be guaranteed from the public forum.

    If this answer helps you kindly accept the answer which will help others who have similar questions.

    Best Regards,

    Jerald Felix

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.