[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

What program to record from /dev/dsp



Hi there,

I wanted to record a concert which was broadcasted on the radio and got
burned by the 2G file size limitation.

Here's the command line I used:

	rawrec -v -t 36600 | \
	sox -t sw -r 44100 -c 2 - -t wav - | \
	lame --alt-preset insane - `date +%T`.mp3
	
Packages: rawrec, sox, self-compiled lame.

I only used lame, because I thought my system wasn't LFS-ready (Large
File Support).  The resulting file was 464 MB in size, which would be
exactly 2G if it were a wav file.  The audio stops at 202:53 minutes,
exactly the length that fits in a 2G wav file.

Turns out, that my system is partially LFS-ready.  Ie, the command

	dd if=/dev/zero of=/tmp/large-file bs=1M count=2560

(as suggested in another thread, recently) creates a file that is 2.5 GB
big.  (Both on a local harddrive and on a NFS-mounted file system.)

So the problem is either in the piping of the contents or one of the
programs isn't LFS-ready.  Crap.

I'm using an partially up-to-date sid system.  rawrec and sox are
up-to-date, lame is self-compiled, so I'm not sure, that this wasn't the
bottleneck.  I'm pretty sure, that the piping wasn't either, because

	cat /dev/zero > big-file

produced a file that is bigger than 2G.

Here's the output from the at job:

rawrec: warning: speed (-s) will be set to 44101 instead of requested
value of 44100
sox: Length in output .wav header will be wrong since can't seek to fix it
LAME: Can't get "TERM" environment string.
LAME version 3.91  (http://www.mp3dev.org/)
Using polyphase lowpass  filter, transition band: 20094 Hz - 20627 Hz
Encoding <stdin> to /home/viktor/radio/fritz-7.9.2002-seeed-live.mp3
Encoding as 44.1 kHz 320 kbps j-stereo MPEG-1 Layer III (4.4x) qval=2
rawrec: write syscall to output failed: Broken pipe
rawrec: main buffer overflow, giving up

I'm guessing that sox is the problem here.

I've played along with the rec command from sox, but I get crappy audio
when recording from /dev/dsp.

What's a good way to record audio from /dev/dsp?  I'm looking for a
solution that creates wav files that are bigger than 2G *and* works on
the command line.  The command line is necessary, because I want to
schedule recordings with at.

Any hints are appreciated.  I'm using an partially up-to-date
sid system.  rawrec and sox are up-to-date, lame is self-compiled, so
I'm not sure, that this wasn't the bottleneck.  I'm pretty sure, that
the piping wasn't either, because

	cat /dev/zero > big-file

produced a file that is bigger than 2G.

Ciao,
Viktor

PS: The concert in question was Seeed, who played today in the Arena,
Berlin.  Radio Fritz broadcasted it.  I have the Gentleman set in
beautiful beautiful quality, if anybody is interested, but Seeed got cut
off after 15 minutes of their set.  Fuck.
-- 
Viktor Rosenfeld
WWW: http://www.informatik.hu-berlin.de/~rosenfel/

Attachment: pgp5Dxzehvbww.pgp
Description: PGP signature


Reply to: