2012-02-26 32 views
5

Tôi đang cố hợp nhất 2 tệp sóng vào một tệp. 2 tệp sẽ bắt đầu phát ở đầu tệp mới. Độc lập với chiều dài âm thanh. Chạy lệnh sau không cho tôi kết quả này.Hợp nhất 2 tệp âm thanh trong sox

sox -M new_input.wav myrecording.wav output_test.aiff 

Có cách nào khác để đạt được điều này thông qua sox hoặc các thư viện dòng lệnh khác không?

Trả lời

0

Heythere. Xin lỗi vì trả lời muộn =) Lệnh sẽ giống như thế này

sox file1 file2 file3 

Phía trên sẽ hợp nhất hai tệp đầu tiên và đặt tên nó sau 3rd.

Bạn cũng có thể muốn kiểm tra các tài liệu http://sox.sourceforge.net/sox.html

+3

này sẽ nối hai tập tin, chứ không phải hợp nhất chúng lại (nếu bằng cách kết hợp chúng ta nói về chơi hai hoặc nhiều file cùng thời gian) – trainoasis

+1

nó chỉ như vậy sẽ xảy ra tôi cần nối và điều này đã giúp tôi. cảm ơn bạn. – Yohannes

4

chỉ cần thay đổi -M với -m -M = merge -m = trộn

+1

Bạn có biết bất kỳ tùy chọn nào để dừng ở cuối tệp ngắn nhất không? – Calmarius

2

Đối với những trường hợp như Calmarius được hỏi:

sox -m in1.wav in2.wav out.wav trim 0 `soxi -D in1.wav` 

điều này dừng ở độ dài in1.wav, đối với trường hợp bạn biết ngắn hơn. Nếu không, chỉ cần thêm một bộ so sánh.

+0

chức năng của '' soxi -D in1.wav'' là gì? –

+0

'soxi -D in1.wav' xuất ra độ dài tính bằng giây trong in1.wav. Tuy nhiên, để chạy lệnh này trong lệnh trộn bạn cần sử dụng: 'sox -m in1.wav in2.wav out.wav trim 0" $ (soxi -D in1.wav) "' – WebSpanner

+0

Có một cách để làm cho nó _repeat_ tập tin ngắn hơn trong thời gian dài hơn? – bcattle

0

'soxi in1.wav -D' được độ dài của tập tin (in1.wav)

Các vấn đề liên quan