Add identifiers to AIGC audio
This document describes how to add data identifiers to audio files.
Background
According to the "Measures for Identifying AI-Generated and Synthesized Content", starting from September 1, 2025, all content generated by artificial intelligence (AI), such as images, audio, and videos, must include both visible and invisible identifiers. These identifiers can be metadata tags or digital watermarks. This ensures that the source of the content is traceable and identifiable.The Secure Access Service Edge (SASE) platform provides the CreateWmEmbedTask API. This API helps enterprises manage content identifiers efficiently and meet compliance requirements.
Audio watermark parameter descriptions
Name | Type | Required | Description | Example value | |
WmType | string | Yes | The watermark type. Valid values:
| PureAudio | |
Filename | string | Yes | The name of the file to embed the watermark in. The backend uses the file extension to verify the file type. | abc.mp3 | |
FileUrl | string | Yes | The URL from which the file can be downloaded. The URL must be accessible over the public network. | https://example.com/abc.mp3 | |
WmInfoSize | long | No | The bit width of the watermark information. The default value is 32. This parameter must be the same for both embedding and extracting. For example, if you use a 40-bit software development kit (SDK) for embedding, you must also set this value to 40 for extracting. Enumeration values:
| 32 | |
WmInfoUint | string | No | The watermark information in decimal format. If you set this parameter, you cannot set WmInfoBytesB64. The value range depends on the WmInfoSize parameter:
| 123*** | |
WmInfoBytesB64 | string | No | The watermark information as a Base64-encoded string. If you set this parameter, you cannot set WmInfoUint. | aGVsbG8gc2F***** | |
ImageEmbedLevel | long | No | Image watermark parameter: A larger value provides higher robustness but reduces visual quality. The default value is 2. Valid values: 0 to 4. | 2 | |
ImageEmbedJpegQuality | long | No | Image watermark parameter: The desired JPEG compression quality factor for the output image. The default value is 95. Valid values: 1 to 100. | 95 | |
AudioControl | object | No | Audio control parameters. | ||
MetadataControl | object | No | Audio metadata control parameters. | ||
XmpKvBase64 | string | No | The metadata in Base64 format. For the format before conversion, see the following code: Note
| QUlHQz17IkxhYm********ZC85WkNpSm9ZcXlrSG5vcEpnQllZWE1BPT0ifQ== | |
Enable | boolean | No | Specifies whether to enable the feature. true: The item is displayed. false: The item is not displayed. | true | |
Metadata format description
The XmpKvBase64 field requires metadata in Base64 format. Before you convert the data to Base64, it must meet the following format requirements.
Key | Description | Example value |
Label | Indicates whether the content is AI-generated:
| 1 |
ContentProducer | The code or name of the service provider, used to identify the content producer.
For more information, see Cybersecurity Standards Practice Guide. | 001191******M000100Y43 |
ProduceID | The content production ID. A unique identifier used by the production platform to trace the synthesized content. | 123456 |
ReserveCode1 | Reserved field. Can store information for the generation and synthesis service provider to implement security protection and ensure content and identifier integrity. A hashing mechanism based on ContentProducer and ProduceID can be used for secure storage and verification of key information. | d41d8cd98f00b204e9800998ecf8427e |
ContentPropagator | The name, number, or code of the distribution platform. For services that provide AI-generated synthetic content, this can be the same as ContentProducer. | 001191******M000100Y43 |
PropagatorID | The content distribution ID. A unique number assigned by the distribution platform to the distributed synthetic content. | 123456 |
ReserveCode2 | Reserved field. Can be used by the content distribution service provider to implement security protection and ensure content and identifier integrity. A hashing mechanism based on ContentProducer and ProduceID can be used for secure storage and verification of key information. | d41d8cd98f00b204e9800998ecf8427e |
For example, consider a production platform company named AA with the Unified Social Credit Code 91******M000100Y43.
AIGC={
"Label": "1",
"ContentProducer": "0011913301****",
"ProduceID": "LGg1FYm0Tj-s4Ek****",
"ReservedCode1": "LBkc9peJ0GoxPECtYBct7vfZZgZvwy4FZrhe/DJovt****",
"ContentPropagator": "001191330106MA2C****",
"PropagateID": "LGg1FYm0Tj-s4Ek_****",
"ReservedCode2": "LBkc9peJ0GoxPECtYBct7vfZZgZvYYXMA****"
}Example
{
"WmType": "PureAudio",
"FileUrl": "https://******.oss-cn-hangzhou.aliyuncs.com/test.mp3",
"Filename": "test.mp3",
"WmInfoSize": 32,
"WmInfoUint": "1234567890",
"InvisibleEnable": true,
"AudioControl": {
"MetadataControl": {
"XmpKvBase64": "QUlHQyUzRCU3QiUwQSUyMCUyMCUyMCUyMCUyMkxhYmVsJTIyJTNBJTIwJTIyMSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMkNvbnRlbnRQcm9kdWNlciUyMiUzQSUyMCUyMjAwMTE5MTMzMDEqKioqJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyUHJvZHVjZUlEJTIyJTNBJTIwJTIyTEdnMUZZbTBUai1zNEVrKioqKiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMlJlc2VydmVkQ29kZTElMjIlM0ElMjAlMjJMQmtjOXBlSjBHb3hQRUN0WUJjdDd2ZlpaZ1p2d3k0RlpyaGUvREpvdnQqKioqJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyQ29udGVudFByb3BhZ2F0b3IlMjIlM0ElMjAlMjIwMDExOTEzMzAxMDZNQTJDKioqKiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMlByb3BhZ2F0ZUlEJTIyJTNBJTIwJTIyTEdnMUZZbTBUai1zNEVrXyoqKiolMjIlMkMlMEElMjAlMjAlMjAlMjAlMjJSZXNlcnZlZENvZGUyJTIyJTNBJTIwJTIyTEJrYzlwZUowR294UEVDdFlCY3Q3dmZaWmdadllZWE1BKioqKiUyMiUwQSU3RA==",
"Enable": true
}
}
}Verification
Because you cannot add visible watermarks to audio files, you must use the AI-Generated Synthetic Content Identifier Service Platform to verify the audio file with the embedded identifier. If the identifier information is successfully extracted, the audio identifier embedding task is complete and valid.
After the watermark embedding task is successful, copy the value of the
TaskIdparameter from the response.Call the GetWmEmbedTask - Query watermark embedding task details operation. Use the
TaskIdvalue as a parameter to retrieve the URL of the watermarked file (FileUrl).Open the FileUrl in a browser to download the audio file.
Log on to the AI-Generated Synthetic Content Identifier Service Platform.
In the top navigation bar, choose .
Upload the audio file and click Start Detection to view the results.