Jeśli mam plik .mp4 ze strumieniem wideo i strumieniem audio. Po wykonaniu tego polecenia:Czy istnieje sposób uzyskania dokładnie 1-sekundowego klipu przy użyciu ffmpeg z przychodzącym kodekiem AAC do AAC
ffmpeg -i input.mp4 -ss 00:00:14.000 -t 00:00:01.000 -vn -c:a libfaac audio.m4a
Wynikiem jest czas trwania: 00: 00: 01.02, początek: 0,021179. Chcę się upewnić, że czas rozpoczęcia zaczyna się od 0, więc resample go za pomocą:
ffmpeg -i audio.m4a -ss 00:00:00.000 -t 00:00:01.000 -c:a libfaac audio2.m4a
Wynikiem tego polecenia ma Czas trwania: 00: 00: 01.02, start: 0.000000. Czy istnieje sposób, aby uzyskać dokładną 1 sekundę jako wynik końcowy z wartością 0 dla początku?
W poprzednich próbach użyłem flag -map 0: 1 -ab 128k -ar 44100 ale zapewnia to samo wyniki.
Mogę podać pełne wyjście z ffmpeg, jeśli zajdzie taka potrzeba.
Dzięki.
kilka pytań: Jaka jest częstotliwość próbkowania audio w oryginalnym pliku? 44100 lub 48000 Hz? Czy oryginalny dźwięk również jest AAC? Jeśli tak, to czy chcesz transkodować audio (co spowoduje utratę pokoleniową), zamiast bezstratnego remuxingu? –
Oto informacje o strumieniu audio: Strumień nr 0: 1 (pol): Dźwięk: aac (mp4a/0x6134706D), 48000 Hz, mono, fltp, 96 kb/s Co do drugiego pytania, transkodowanie dźwięku byłoby w porządku . Wystarczy uzyskać * dokładnie * jedną sekundę czasu trwania z czasem rozpoczęcia równym 0. –