Skip to content

Cum să modifici viteza audio fără a schimba pitch-ul cu FFmpeg

DodaTech Updated 2025-01-15 3 min read

In this tutorial, you'll learn about Cum să modifici viteza audio fără a schimba pitch. We cover key concepts, practical examples, and best practices.

Problema

Vrei să accelerezi sau să încetinești un fișier audio fără a schimba înălțimea tonului (pitch-ul). Filtrul atempo face exact asta, dar are limitări de interval care pot cauza erori.

Soluția rapidă

Fix 1: Accelerare Audio Simplă

GRESIT — atempo cu valoare în afara intervalului suportat:

ffmpeg -i input.mp3 -af "atempo=2.5" output.mp3
# [atempo @ ...] Value 2.5 is out of range [0.5, 100.0]

CORECT — folosește valori în intervalul 0.5-100.0:

# De 2 ori mai rapid:
ffmpeg -i input.mp3 -af "atempo=2.0" output.mp3

# De 1.5 ori mai rapid:
ffmpeg -i input.mp3 -af "atempo=1.5" output.mp3

Fix 2: Încetinire Audio

# De 2 ori mai lent:
ffmpeg -i input.mp3 -af "atempo=0.5" output.mp3

# Ușor mai lent (vorbire normală):
ffmpeg -i input.mp3 -af "atempo=0.8" output.mp3
# 0.8 = 80% din viteza originală

Fix 3: Accelerare Extremă (peste 100x)

# atempo suportă doar până la 100.0:
ffmpeg -i input.mp3 -af "atempo=100.0" output.mp3

# Pentru accelerare mai mare, lanțuiește atempo:
ffmpeg -i input.mp3 -af "atempo=100.0,atempo=100.0" output.mp3
# 100.0 * 100.0 = 10000x accelerare

Fix 4: Lanț de atempo pentru Factori Precise

# Pentru factori care nu sunt în intervalul 0.5-100.0:
# De 200 de ori mai rapid = 100 * 2:
ffmpeg -i input.mp3 -af "atempo=100.0,atempo=2.0" output.mp3

# De 0.25 ori (4x mai lent) = 0.5 * 0.5:
ffmpeg -i input.mp3 -af "atempo=0.5,atempo=0.5" output.mp3
# Lanțul de atempo se înmulțește: 0.5 * 0.5 = 0.25

Fix 5: Combinare Video + Audio (Accelerare Sincronă)

ffmpeg -i input.mp4 -filter_complex \
    "[0:v]setpts=0.5*PTS[vout]; \
     [0:a]atempo=2.0[aout]" \
    -map "[vout]" -map "[aout]" output.mp4
# Video 2x + Audio 2x (pitch neschimbat)

Fix 6: Efect "Chipmunk" (Viteză Mare cu Pitch Ridicat)

# Dacă vrei să accelerezi și pitch-ul să crească (fără atempo):
ffmpeg -i input.mp3 -af "asetrate=48000*2,aresample=48000" output.mp3
# dublează sample rate-ul → pitch mai înalt + mai rapid

Folosește DodaTech's Audio Speed Changer pentru a ajusta viteza audio cu preview.

Prevenție

  • Păstrează atempo în intervalul 0.5-100.0.
  • Lanțuiește atempo pentru factori extremi.
  • Sincronizează atempo cu setpts pentru video: factori invers proporționali.
  • Testează pe un segment scurt (5-10 secunde).
  • Folosește aresample după atempo pentru a evita probleme de sample rate.

Greșeli comune

  1. Valori atempo în afara intervalului — atempo suportă doar 0.5-100.0.
  2. A tempo inversat — atempo=2.0 accelerează (nu încetinește).
  3. Audio desincronizat de video — setpts și atempo trebuie să fie invers proporționale.
  4. Un singur atempo pentru factori extremi — lanțuiește atempo-urile.
  5. Calitate slabă la factori mari — atempo > 4.0 poate produce artefacte audio.

Aceste greșeli apar frecvent în codul FFmpeg real. Contribuitorii DodaTech au identificat aceste modele prin analiza proiectelor open-source și a sistemelor de producție.

Exercițiu practic

Accelerează un fișier audio de 3 ori fără a schimba pitch-ul, apoi combină-l cu un video accelerat corespunzător.

Acest exercițiu întărește conceptele prezentate în acest ghid. Încearcă să-l implementezi înainte de a verifica soluțiile online.

FAQ

### De ce atempo nu poate accelera peste 100x?

Este o limitare tehnică a algoritmului WSOLA (Waveform Similarity Overlap-Add). Lanțuiește mai multe atempo-uri pentru factori mai mari.

Cum fac un efect "slow motion" audio?

Folosește atempo=0.5 pentru jumătate din viteză, atempo=0.25 pentru un sfert. Pentru slow-motion extrem, lanțuiește: atempo=0.5,atempo=0.5,atempo=0.5 = 0.125x.

A tempo afectează calitatea audio?

Da, factori extreme (sub 0.5 sau peste 4.0) pot produce artefacte audio. Folosește rubberband pentru calitate mai bună la factori extreme.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro