---
title: Auto-Captioning & Automation
url: https://docs.kaltura.com/docs/rich-media-cms-apis/content-management/captions-auto-captioning-automation
---

## Auto-Captioning & Automation


### REACH Auto-Ordering Rules

REACH can auto-order captioning tasks based on triggers:

- **Entry READY status:** Auto-caption every new entry
- **Category entry addition:** Auto-caption entries added to specific categories
- **Flavor asset readiness:** Auto-caption when a specific quality version is ready
- **Caption asset READY:** Cascade to translation (caption completes → trigger translation task)

Configure rules in the REACH profile. See REACH API for rule configuration.

### Opt-Out

Set the `blockAutoTranscript` flag on entries to prevent auto-captioning:


```bash
curl -X POST "$KALTURA_SERVICE_URL/service/media/action/update" \
  -d "ks=$KALTURA_KS" \
  -d "format=1" \
  -d "entryId=$KALTURA_ENTRY_ID" \
  -d "mediaEntry[objectType]=KalturaMediaEntry" \
  -d "mediaEntry[blockAutoTranscript]=1"
```


### Caption Moderation

When a KS includes the `enableCaptionModeration` privilege, newly added captions have `displayOnPlayer=false`. Captions must be explicitly approved before the player displays them. Use this for compliance workflows that require human review before publication.

### Accuracy-Based Deduplication

When multiple captions exist for the same entry + language, the system automatically sets `displayOnPlayer=true` on the caption with the highest `accuracy` value. This handles the machine-to-human caption upgrade path: when REACH delivers a human caption (99%+ accuracy) for an entry that already has a machine caption (~85% accuracy), the human caption automatically wins display priority.

### Caption Copy on Trim/Clip/Replace

- **Clip/Trim:** Captions are auto-copied to the new entry with time offsets adjusted to match the clip boundaries.
- **Entry replacement:** Old captions are deleted and new captions are copied from the replacement entry.
