Makinemizin tüm çekirdeklerini kullanarak bir m3u8 çalma listesi oluşturmak ve oluşturmak için ffmpeg kullanarak HTTP canlı akışı için kesikli segmentli aac segmentine kadar parçalama/kodlamanın yürütme süresini kısaltmak istiyoruz .Ffmpeg'de yalnızca ses bölümlerinin kodlamasını paralelleştirin
Bir deneyde, ffmpeg libfdk_aac ile doğrudan bir wav dosyasını aac'a bölüyordu, ancak bitirmek için epey uzun bir zaman aldı.
İkinci deneyde, ffmpeg bir wav dosyası olarak çok hızlı bir şekilde (wav) (< 1 saniyede makinelerimiz) bir wav dosyası kullandı, daha sonra wav segmentlerini aac olarak kodlamak için ffmpeg'i tekrar çalıştırmak için GNU paralelini kullanıyorum ve .m3u8 dosyasını manuel olarak değiştirmeden sürelerini değiştirmeden. Bu daha hızlı gerçekleştirildi, ancak ses çıkışında "sessizlik" boşlukları duyuluyordu.
Başlangıçta ikinci senaryoyu mp3 kullanarak denedim ve sonuç hala tamamen aynıydı. Ben bu lame kodlama sırasında dolgu ekler (http://scruss.com/blog/2012/02/21/generational-loss-in-mp3-re-encoding/), bu libfdk_aac de kodlama sırasında dolgu ekler?
Belki bu bu soruya ilişkilidir: How can I encode and segment audio files without having gaps (or audio pops) between segments when I reconstruct it?
Doğru bir şekilde anlıyor musunuz: dalgayı bölümlere ayırıp her segmenti ayrı ayrı kodladınız mı? zaman damgası kurallarına - yani her segmentin ilk zaman damgası = önceki segmentin damgası + çerçeve aralığı – NiRR
@NiRR yerinde spot ** iç geçiriyor ** – NeverFall