Przelicza jedno tempo na drugie na potrzeby rozciągania w czasie: współczynnik tempa dla atempo i rubberband, nową długość pliku w czasie i próbkach, długości uderzeń i taktów oraz zmianę wysokości, jaką przyniosłaby zmiana prędkości bez rozciągania w czasie (varispeed). Polecenia ffmpeg wynikają z pomiaru w artykule o rozciąganiu w czasie.
Tempo docelowe, procent i półtony są powiązane: pole edytowane jako ostatnie wyznacza tempo docelowe. Długość w sekundach, m:ss lub h:mm:ss.
| Co | Tempo wyjściowe | Tempo docelowe | Próbki w tempie docelowym |
|---|
Współczynnik tempa to tempo docelowe podzielone przez tempo wyjściowe: ze 120 na 132 BPM to tempo 1,1, ze 128 na 124 BPM to 0,96875. Plik wydłuża się o odwrotność. Polecenia przekazują współczynnik jako dokładny ułamek, np. 124/128; ffmpeg oblicza go jako wyrażenie. atempo przyjmuje od 0,5 do 100, ale według dokumentacji powyżej 2 pomija pojedyncze próbki, dlatego narzędzie dzieli większe i mniejsze współczynniki na łańcuch.
Wybór metody wynika z pomiaru przy tempie od 0,9 do 1,1: z channels=together rubberband utrzymał każde uderzenie w granicach 0,48 ms od jego miejsca, a obraz stereo przy korelacji 0,92, za cenę narastania przed każdym uderzeniem i spadków na równych tonach. transients=smooth pozostawił czyste tony prawie bez zmian, ale ściszył miks o 2,6 do 3,0 dB. atempo najlepiej zachował brzmienie i poziom, ale przesuwał pojedyncze uderzenia nawet o 10,84 ms i uszkodził ton 55 Hz.
Sprawdzono w ffmpeg 7.1.5 na 10-sekundowym sygnale testowym przy współczynnikach od 0,4 do 2,5: oba polecenia rubberband trafiły w obliczoną długość co do próbki we wszystkich siedmiu przypadkach, varispeed z dokładnością do jednej próbki, a obliczoną wysokość z dokładnością do 0,01 półtonu. atempo odbiegało o −30,4 do +8,0 ms, w zmierzonym zakresie od 0,9 do 1,1 najwyżej o 4,6 ms; przy zmianie ze 128 na 124 BPM brakowało 4,58 ms.
Podręcznik ISRC (4. wydanie 2021, A.10.2) rozróżnia: jeśli nagranie zmienia długość tylko przez tempo lub wyciszenie, nowy ISRC jest wymagany od różnicy 10 sekund; poniżej nagranie zachowuje kod.
Jak atempo i rubberband przy ±5 i ±10 % radzą sobie z timingiem, transjentami, czystymi i bogatymi w alikwoty tonami oraz obrazem stereo, mierzy artykuł „Rozciąganie w czasie o 10 procent w atempo i rubberband”.
Kiedy nowa wersja potrzebuje własnego ISRC, łącznie z regułą 10 sekund dla zmian tempa, pokazuje poradnik „Metadane wydawnictwa 2026”.
Jak DAW w 2026 roku rozciągają audio do tempa projektu, z warpingiem Ableton Live jako punktem odniesienia, porównuje artykuł „Top 5 DAW w 2026 roku”.
Źródła: ffmpeg Filters Documentation (atempo, rubberband, asetrate) · Rubber Band Library · ISRC Handbook, 4th Edition 2021, A.10.2 (IFPI)
Obliczenie zakłada stałe tempo; zmiany tempa w obrębie pliku i swing nie są uwzględniane. asetrate przyjmuje tylko całe herce, więc varispeed odbiega od dokładnej częstotliwości najwyżej o 0,5 Hz, czyli najwyżej o 0,02 centa. Która metoda brzmi lepiej, pomiar nie rozstrzygał testem odsłuchowym.