2013-01-31 19 views
7

mogę użyć tego polecenia, aby połączyć dwa pliki audio w jeden za pomocą sox:Jak połączyć kilka plików audio przy użyciu sox

sox end.mp3 -p pad 6 0 | sox - -m start.mp3 output.mp3 

Zastanawiałem się, jak mogę połączyć 3 lub 4 pliki audio za pomocą tylko jednego polecenia zamiast używając "output.mp3" jako wejścia do następnej komendy i tak dalej?

będę naprawdę wdzięczny za każdą pomoc

Odpowiedz

6

Można to zrobić za pomocą jednego pw sox jak ten:

sox -m in1.mp3 in2.mp3 in3.mp3 out.mp3 

Jeśli chcesz połączyć to z efektem pad trzeba być jaśniejsze o co chcesz.

+0

czy jesteś pewien, że to działa? Próbowałem połączyć 5 mp3 na 1 wav i słyszę tylko 3 audio. Jakieś pomysły? – trainoasis

+0

@Trainoasis: Tak, jestem pewien. Ponieważ sox osłabia każdy plik o 1/n przed miksowaniem (aby uniknąć obcinania), możesz mieć pliki, które staną się niesłyszalne w wynikowym pliku. W takim przypadku możesz znormalizować każdy plik przed miksowaniem, np .: 'sox in.mp3 out.wav gain -n' (nie zmieniaj ponownie na mp3, ponieważ spowoduje to niepotrzebne kroki dekodowania/dekodowania). Myślę, że możesz osiągnąć wszystkie te kroki dzięki efektowi "remiksowania", ale nie mam czasu na eksperymentowanie w tej chwili. – Thor

+0

dziękuję, spróbuj to – trainoasis

3

Aby połączyć mieszania i działania (na wkładkę, przycinanie, itp) jest następująca:

sox -m "|sox end.mp3 -p pad 6 0" start.mp3 output.mp3 

Ogólny obraz jest:

sox -m input1 input2 ... inputN output 

gdzie inputX może być albo pliku lub rura w cudzysłowach

"|sox end.mp3 -p pad 6"