TikTok branded effect music: 15 to 60 seconds, MP3 or WAV, from a clip

A TikTok branded effect official music track runs 15 seconds to one minute as MP3 or WAV. Pull that range from your own video with Sume audio detach.

5 min readSume
All posts

A TikTok branded effect's official music track must be an MP3 or WAV file between 15 seconds and one minute long (read 2026-10-03). If your brand already has a jingle inside a video, Sume's audio detach can lift it out as a durable wav or 128 kbps mp3 for a chosen range. It cannot compose or license a track, and the page says nothing about who may supply the music, so rights remain your question to settle with TikTok.

Here is the part of the spec that concerns the audio, and a short recipe for cutting a 30-second range.

The audio facts on TikTok's page

The Branded Effect page lists an official music cover image, an official music track and several text fields. For the track it states the formats (MP3 or WAV) and the length window (15 seconds to one minute). The song name field takes up to 60 English characters, with 12 recommended (read 2026-10-03). The page does not list a sample rate, bit rate or loudness target for the track, so there is nothing numeric to match beyond format and length.

Music-related rows from TikTok Ads Help, read 2026-10-03
ItemTikTok's valueSume lever
Track formatMP3 or WAVformat: wav or mp3
Track length15 seconds to one minuterange with start and end
Song nameUp to 60 English characters, 12 recommendedNot a Sume field
Cover image800 x 800 px, 10 MB or lessSeparate image step

Cut the range with audio detach

Audio detach reads one media.sume.com video and returns a new audio artifact. The default format is a sample-exact wav (pcm_s16le); mp3 is 128 kbps. range takes start and an optional end in seconds, and the output is capped at 900 seconds, so a 15 to 60 second window is well inside it. channels can stay at the source default or be set to mono, and sample_rate accepts 16000, 44100 or 48000. A source with no audio track fails with detach_source_has_no_audio, so check the probe first.

The script below detaches seconds 12 to 42 as wav and prints the length it reports. The job costs $0.01 under the current public rate (confirm in GET /v1/catalog). The result carries audio_url and duration_seconds.

import os, time, requests
BASE = "https://api.sume.com"
H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}

def run(path, body, key):
    r = requests.post(BASE + path, headers={**H, "Idempotency-Key": key}, json=body)
    r.raise_for_status()
    job = r.json()["request_id"]
    while True:
        s = requests.get(f"{BASE}/v1/jobs/{job}/status", headers=H).json()["status"]
        if s in ("completed", "failed", "canceled"):
            break
        time.sleep(3)
    return s, (requests.get(f"{BASE}/v1/jobs/{job}/result", headers=H).json() if s == "completed" else None)

status, res = run("/v1/audio-detach", {
    "video_url": "https://media.sume.com/artifacts/artf_demo/brand-spot.mp4",
    "format": "wav", "range": {"start": 12, "end": 42}}, "effect-track-001")
if res:
    d = res["duration_seconds"]
    print(res["audio_url"], d, "OK" if 15 <= d <= 60 else "outside 15-60 s")
else:
    print(status)

The rest of the effect package

The track is one file in a larger submission, and the same page lists the others. The icon is a PNG with a 144 x 144 px safe area, a 162 x 162 px export size and a file size under 60 KB, with 20 px round corners. The cover image is 800 x 800 px at 10 MB or less, with the brand placed in a 260 px diameter centre circle. Text fields have English-character limits: effect name 30 (under 18 recommended), hint text 48 (under 24 recommended), external link text 30, landing page title 20 and sponsor text 30 (read 2026-10-03).

Keep these in one folder with the track so a reviewer sees the whole set. Most of these files are made outside Sume. What Sume can supply is the audio range and, if you keep your campaign video there, a probe through video inspect to confirm the source actually has an audio track before you spend a job.

Choose the 15 to 60 second window

A longer window is not always better. The effect is a short interactive experience, and the track plays under it, so a clean 20 to 30 second section that loops or ends naturally is easier to live with than a full minute cut off mid-chorus. Listen for a start on a downbeat and an end on a phrase boundary, then set start and end to match.

Make two or three candidate ranges and compare them. Each detach is a separate job with its own Idempotency-Key; pick keys that name the range, such as effect-track-12-42, so a retry of the same request is safe and a different range is not mistaken for a repeat. Save the chosen range and the source video in your notes.

Limits worth stating plainly

Sume's detach is an extraction, not a mastering step. It does not normalize loudness, trim silence or add a fade, and its docs reject client af, filter and codec fields. If the range starts or ends mid-phrase, choose better boundaries by listening before you submit, and compare the stored duration with the 15 to 60 second window.

Also check where the music comes from. A track pulled from a finished ad may contain licensed material that was cleared for that ad only. TikTok's page lists the file requirements, not a rights policy, so ask the music owner before you submit the file for an effect.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume