Dao Huy (Lucas)

Dao Huy (Lucas)

Subtitle & caption specialist, Da Nang, Vietnam

Native Vietnamese linguist. I deliver broadcast and digital-cinema captions and subtitles to spec, every file independently QC-verified.

BA in EnglishIELTS 7.0HSK 5Upwork Top-Rated Plus4.99/5 from 80 reviewsTop 1%7+ years, 200+ projects

Built to standard

Built to the standards your delivery is checked against.

Netflix Timed Text Style GuideCEA-608 / CEA-708 (ATSC, FCC)SMPTE ST 2052-1 (IMSC)DCI / SMPTE ST 428-7WCAG 2.1 AAADACVAA

Each standard maps to a checkpoint your file has to pass. CEA-608 and CEA-708 are what a broadcast decoder and OTT ingest read, SMPTE ST 2052-1 (IMSC) carries 708 as a timed-text sidecar, and SMPTE ST 428-7 under DCI is what a DCP mastering house needs. WCAG 2.1 AA, ADA and CVAA are the accessibility rules a US delivery is measured against, so captions are readable, well timed and correctly positioned.

Output ready for the delivery specs of

NetflixAmazon Prime VideoApple TV+Disney+ / DMEDBBC (EBU-TT)YouTubeTikTokDCI cinema

Delivery-spec targets, not affiliations. Files are produced to each platform's public delivery specification.

Selected clients and partner agencies

TransPerfectOmnicom (Magnon Sancus)Arizona State UniversityArgos MultilingualVerbolabsScale AIAndovarCrowdinA US media-localization agency

Some work is under NDA; logos available on request.

Every delivery target, mapped to a format

No guesswork on the spec: I map your delivery target to the exact caption format it ingests.

OTT / streamingiTT, TTML, SMPTE ST 2052-1
BroadcastSCC, MXF OP1A (CEA-608/708)
Digital cinemaDCP XML (SMPTE ST 428-7), Interop
Screener / reviewSRT, WebVTT, burn-in MP4

What the work looks like

Placement, SDH detail and QC, shown rather than described.

Placement inside the subtitle-safe band.

Broadcast and OTT placement

Pop-on CEA-608 and CEA-708 in the subtitle-safe band, raised to clear names and lower-thirds.

[engine revving]>> DRIVER: We need to move, now.

SDH adds the speaker ID and the sound cue.

SDH with speaker IDs and sound cues

Toggle SDH to see the speaker change and sound cue that plain subtitles drop.

After
We need to move, now.
Before
timecode drift +8f, 61 chars/linewe really need to get moving right now before they come back around the corner

Drag to compare the flagged caption and the fix.

QC catches what an editor hides

An overflowing, late caption fixed to a clean, on-time two-liner.

Three-layer QC before anything ships

Broadcast and cinema files fail on decoders, not in an editor preview. Every delivery goes through three passes and an independent decode.

1. Rough pass

Spot and draft every caption against the script, source audio and shot changes.

2. Alignment and timing

Tune reading speed, line breaks and positioning; align to shot changes and clear names and lower-thirds.

3. Independent senior QC

Decode the result on a separate decoder, check conformance to the target spec, and sign it off.

Characters-per-second held to spec on every event
Safe-title and safe-area violation check per caption
Multi-device and projection playback testing
Independent CEA-608 and CEA-708 decode with caption-inspector
NDA and secure handling for unreleased films and pre-air episodes; screeners are deleted on delivery.

Specs and tolerances

Reading speed: CPS 15 to 17
Characters per line: CPL 37 to 42
Formats: SCC, MXF OP1A, SMPTE ST 2052-1, DCP XML, Interop, SRT, VTT
Frame rates: 23.976, 24, 25, 29.97 DF, 59.94
Positioning raised to clear names and lower-thirds
Independently QC-verified with caption-inspector
Throughput: up to ~60 video minutes per day
Toolchain: caption-inspector, CCExtractor, FFmpeg, Subtitle Edit, Aegisub, Adobe Premiere Pro

How a project runs

1

Scope and spec

You send the master and delivery profile. I confirm frame rate, timecode and the exact formats.

2

Author

I time and write the captions to the reading-speed, line-length and positioning rules for the target.

3

Encode and wrap

I produce the deliverables: SCC, MXF OP1A, SMPTE ST 2052-1 or DCP XML, plus a burned-in preview.

4

QC and deliver

I decode independently, fix anything that drifts, and deliver with a report.

Recent delivery

English SDH for six episodes, around 160 minutes, with true CEA-608 and CEA-708 embedded and independently QC-verified, for a US media-localization agency. NDA available on request.
Just reviewed the captions and they look great.

End client, via a US media-localization agency

4.99/5 from 80 Upwork reviews, Top-Rated Plus, top 1%

Frequently asked questions

Do you work to the Netflix Timed Text Style Guide?

Yes. I build subtitles and SDH to the Netflix Timed Text Style Guide targets, including reading speed, characters per line, line breaks and positioning, and I deliver iTT or IMSC (SMPTE ST 2052-1) when that is the required format. I build to the public spec and am not affiliated with Netflix.

Can you sign an NDA?

Yes. NDA and secure handling are standard for unreleased films and pre-air episodes. Screeners are deleted on delivery.

What is your turnaround?

Throughput is up to around 60 finished video minutes per day, so a typical episode turns around in a day or two once the spec is confirmed. Send the runtime and deadline and I confirm an exact schedule.

Which delivery formats do you provide?

SCC and MXF OP1A embeds for broadcast, SMPTE ST 2052-1 (IMSC) and iTT or TTML for OTT, DCP subtitle XML (SMPTE ST 428-7) and Interop for cinema, plus SRT, WebVTT and a burned-in preview.

How do you verify the captions decode correctly?

Every file is decoded on a separate decoder with caption-inspector, so the exact CEA-608 and CEA-708 output and positioning are checked before delivery, not just previewed in the authoring tool.

Do you meet US accessibility requirements?

Yes. Captions are built to WCAG 2.1 AA, ADA and CVAA expectations for readable, well-timed and correctly positioned captions.

Request a quote

Send the master and target profile. Typical response within 10 minutes.

What do you need?

This opens your email app with the details filled in. Nothing is sent until you press send.

Request a quote

Typical response within 10 minutes

Get QuoteWhatsApp