IAB Tech Lab gave the industry 19 more days. Public comment on AAMP 3.0 and OpenProposal, the draft standard for AI agents that read and buy media proposals, now closes Tuesday, November 10, instead of October 22. Tech Lab’s announcement says the extension came “due to overwhelming feedback,” and ppc.land reported it from Tech Lab’s October 23 LinkedIn post. The README on GitHub still says October 22, so the press release got updated before the documentation, which makes Tech Lab exactly like every company I’ve worked for.
In September I wrote that sellers should try filling out a Proposal object for their best package and note the fields they couldn’t complete. I went back to it with audio in mind, since that’s where I’ve been building this year. The gap is in the creative.
The spec knows audio exists
The draft has 71 fields, and a line item’s channel can be display, video, audio, CTV, DOOH or native. There’s a worked audio example: a streaming line item with a produced :30 included, a host read available for $9.00 more per thousand, a frequency cap counted per listener, a seller-reported 92% completion rate and a $60,000 commitment. An agent could resolve that buy without a human on either side.
What the agent can’t resolve is what the spot is. A line item’s formats field holds ids like audio/host-read-30s, and its specs field is “as defined by the referenced format registry entry.” The draft’s fourth open question says the registry “has no entries for audio/*, ctv/* or dooh/*” and “cannot currently answer for half the declared channels.” Credit to the working group for writing that down. Most drafts leave it for the implementers to find.
I expected to write that this draft lets agents buy TV and not audio, but the CTV example points at ctv/instream-15s, which resolves to nothing too. The difference is what breaks when the spec is missing. Video ads have moved through VAST for well over a decade, and a 15-second instream file is a known shape. Tech Lab folded audio into VAST 4.1 in 2018, so delivery is covered for audio as well. What the draft has no way to describe is how the spot has to sound.
Where an audio ad goes wrong
Most brand review happens on the script. Audio has a failure that kind of review can’t catch.
In August I built an MVP called Soundcheck that checks AI-generated audio ads against a brand’s standards before they air. On its first live run it flagged 5 of 12 spots in a simulated campaign. The defect with the most media money behind it was one I hadn’t planted: the synthetic voice turned the founder’s name, Renata Oyelaran, into “renata ollerenshaw” in the hero spot. The script was correct. Anyone reviewing it on paper would have signed off.
A host read has its own version of this with a human voice. The seller’s talent performs the creative, so the brand’s mandatory copy and the way it says its own name have to reach the host somehow. Today that lives in a brief or an email. The draft’s line item has no field for it.
The assets[] object is thin too. It carries an asset id, a format reference, a URL or tag, a submission timestamp and an approval status. Nothing records whether the voice was synthetic. Article 50 of the EU AI Act has applied since August 2. It requires providers of generative systems to mark synthetic audio in a machine-readable format and requires deployers to disclose deepfake audio. Generative systems already on the market before August 2 have until December 2 to add the marking. An agent buying audio in Europe needs to know what it’s buying before it commits, and right now the object has nowhere to put it.
What I asked for
My comment proposes seeding the registry with produced :15, :30 and :60 audio formats plus host-read :30 and :60, each declaring a duration tolerance, codec, sample rate, a loudness target with a true-peak ceiling, and VAST delivery. It adds a host-read requirements object the buyer supplies, with mandatory copy, prohibited claims, a pronunciation guide, verbatim or talking points, and whether a synthetic voice is allowed. And it adds a provenance object to every asset: synthetic or not, the generator and model version, a voice-consent reference, the disclosure method and a file hash.
The last ask is a fallback rule. If a format id has no registry entry, the line item should carry its specs inline, and the agent should treat that format as requestable, which in this draft means the seller has to say yes. Only three of the 71 fields need that round trip today. An unregistered audio format looks just as settled to an agent as a 300x250 banner, and it shouldn’t.
CTV and DOOH need the same fallback. I left their registry entries to people who sell those channels every day.
If you sell or buy audio
You don’t need to be a Tech Lab member to comment, just a GitHub account. Every comment gets a written disposition, and the comment process says “implementation feedback outranks opinion,” so one specific host read that went sideways will carry more weight than a general objection. Say you’re filing in the extended window, because that same process doc still labels anything after October 22 as post-comment. Leave out client names and rates. The repo is public.
I filed mine on issue #5, the format registry thread. Comments close November 10.
Update, November 6. Konstantin Mirin of Postindustria, an IAB Tech Lab member, took the audio parts of that comment into an open pull request. It adds a voice key that is either human_only or synthetic_permitted, a pronunciation_guideon the host-read example and an optional provenance object, and its description credits my comment. It hasn’t been merged and has no reviews yet, so none of it is in the draft. I asked that a receiver report a synthetic read that arrives under a human-only spec. He held off, because buyers have no channel yet to report on assets the seller built. That’s still open, and it’s the next thing worth commenting on before November 10.
