Last update:2026-07-15 18:17:46
Media Packaging allows you to transform the container format of your audio and video files without changing their content quality. This process helps preserve media integrity while adapting files to different delivery requirements.
Atomile supports a wide range of media formats.
Video Formats:
Audio Formats:
For streaming formats such as HLS and DASH, Atomile supports segment sharing across manifests. This means that your .mpd (DASH) and .m3u8 (HLS) files can share identical segments, significantly reducing storage usage in Object Storage.
Structure your fops command as shown below:
<op>/<Format>
/vn/<value>
/an/<value>
/segtime/<value>
/fastStartSeg/<value>
/dash_hls_playlist/<value>
/segtype/<value>
|saveas/<Urlsafe_Base64_Encode(bucket:savedfilename)>
| Parameter | Required | Description |
|---|---|---|
op |
Yes | Operation type. Use avthumb for packaging. |
format |
Yes | Target format, such as mp4, flv, m3u8, or mpd. |
an |
No | Audio track control: • 0 (default) - Keep the audio track• 1 - Remove the audio track |
vn |
No | Video content control: • 0 (default) - Keep the video content• 1 - Remove the video content |
segtime |
No | Segment duration for HLS and DASH in seconds. Supported range: 1 to 120.Default behavior: • For non- m3u8/mpd inputs: 10-second segments• For m3u8/mpd inputs without transcoding: only the manifest is generated• For m3u8/mpd inputs with transcoding: the system calculates the duration dynamically |
fastStartSeg |
No | HLS only. Sets shorter initial segments for faster playback startup. Format: MxNs, where:• M = number of segments• N = duration in secondsExample: 5x3s creates five 3-second segments at the beginning. |
segtype |
No | DASH only. Defines the output format of DASH segments: • mp4 - MP4 segments• m4s (default) - M4S segments |
dash_hls_playlist |
No | Controls whether an HLS playlist is generated from DASH content: • 1 - Generate both MPD and M3U8 files for cross-platform compatibility• 0 (default) - Generate only the MPD file for DASH-focused delivery |
saveas |
Yes | Output location as a URL-safe Base64-encoded string, in the format Urlsafe_Base64_Encode(bucket:savedfilename). |
This example packages a video named test.flv from the vod-test001 bucket into MP4 format.
Pseudocode:
curl -v -X POST \
-d "bucket=Urlsafe_Base64_Encode(vod-test001)&key=Urlsafe_Base64_Encode(test.flv)&fops=Urlsafe_Base64_Encode(avthumb/mp4|saveas/Urlsafe_Base64_Encode(vod-test001:test.mp4))&force=1&separate=1" \
-H "Authorization: AccessKey:EncodeSign" \
--url "http://mgrDomain/fops"
Actual Request:
curl -v -X POST \
-d "bucket=dm9kLXdjcy10ZXN0MDAx&key=dGVzdC5mbHY=&fops=YXZ0aHVtYi9tcDR8c2F2ZWFzL2RtOWtMWGRqY3kxMFpYTjBNREF4T25SbGMzUXViWEEw&force=1&separate=1" \
-H "Authorization: AccessKey:EncodeSign" \
--url "http://mgrDomain/fops"
This example packages a video named test.mp4 into HLS format with 15-second segments.
Pseudocode:
curl -v -X POST \
-d "bucket=Urlsafe_Base64_Encode(vod-test001)&key=Urlsafe_Base64_Encode(test.mp4)&fops=Urlsafe_Base64_Encode(avthumb/m3u8/segtime/15|saveas/Urlsafe_Base64_Encode(vod-test001:test.m3u8))&force=1&separate=1" \
-H "Authorization: AccessKey:EncodeSign" \
--url "http://mgrDomain/fops"
Actual Request:
curl -v -X POST \
-d "bucket=dm9kLXdjcy10ZXN0MDAx&key=dGVzdC5tcDQ=&fops=YXZ0aHVtYi9tM3U4L3NlZ3RpbWUvMTV8c2F2ZWFzL2RtOWtMWGRqY3kxMFpYTjBNREF4T25SbGMzUXViVE4xT0E9PQ==&force=1&separate=1" \
-H "Authorization: AccessKey:EncodeSign" \
--url "http://mgrDomain/fops"
This example packages a video named test.mp4 into DASH format.
Pseudocode:
curl -v -X POST \
-d "bucket=Urlsafe_Base64_Encode(vod-test001)&key=Urlsafe_Base64_Encode(test.mp4)&fops=Urlsafe_Base64_Encode(avthumb/mpd|saveas/Urlsafe_Base64_Encode(vod-test001:test.mpd))&force=1&separate=1" \
-H "Authorization: AccessKey:EncodeSign" \
--url "http://mgrDomain/fops"
Actual Request:
curl -v -X POST \
-d "bucket=dm9kLXdjcy10ZXN0MDAx&key=dGVzdC5tcDQ=&fops=YXZ0aHVtYi9tcGR8c2F2ZWFzL2RtOWtMWGRqY3kxMFpYTjBNREF4T25SbGMzUXViWEJr&force=1&separate=1" \
-H "Authorization: AccessKey:EncodeSign" \
--url "http://mgrDomain/fops"