Re: Combine and trim files with silence
jungle boogie <[email protected]>
| Newsgroups | gmane.comp.audio.sox |
|---|---|
| Message-ID | <[email protected]> |
Hi Jan, Thus said Jan Stary <[email protected]> on Sat, 18 Apr 2020 11:28:12 +0200 > On Apr 17 22:11:00, [email protected] wrote: >> I'm using SoX v14.4.2 and would like help mixing three files, with silence >> in between two of them. > > With silence in between, you probably mean to concatenate them, > not to "mix" them. Yes, that's probably the correct term. > > Ah, so the three files are > > 1. short_track > 2. main_file > 3. long track > > in that order? Yes, in that order. short_track will have the 1/2 second silence after the audible part plays. > > In short, you mail is a mess. Tell us what you you need to do _and_why_. > Be as specific as possible. Don't talk about "the longest file" without > showing the lengths, or "a specific file" without naming it, etc. > short_track plays the audible part, then plays 1.5 seconds of silence. main_file plays simultaneously while long_track plays; long_track is several decidable quieter (that's adjusted outside of this sox command I want to solve) and trimmed to the length of mainfile. short track -> silence -> mainfile & long track (which is trimmed to length of long track). Long track should be trimmed to the length of mainfile, which my trim 0 `soxi -D mainfile` did. > > Trimming a file to another file's length is easy: > sox third.wav trimmed.wav trim 0 `soxi -D prototype.wav` > soxi -D prototype.wav third.wav trimmed.wav > > > To concatenating three files, with silence between (say) first and second, > just pad the first with silence first: > > sox first.wav padded.wav pad 0 1.5 > soxi -D first.wav padded.wav > But this means I need to trim longfile separately, right? > Then just contatenate them: > > sox padded.wav second.wav trimmed.wav out.wav > soxi -D padded.wav second.wav trimmed.wav out.wav > rm -rf padded.wav trimmed.wav > > I hope I haven't made things more muddy. In summary... first plays 1/2 seconds of silence mainfile & longfile play, long file trimmed to length of mainfile. Mikko had an idea of adding 1/2 of silence to mainfile before the mix and trim thing. sox mainfile mainfile_padded.wav pad 1.5 0 sox -m shortfile mainfile_padded.wav long_file out.wav trim 0 `soxi -D mainfile_padded.wav` It would be great if I didn't have to the extra step of adding silence to the main_file first, though.