Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: Recording - only while signal is present == Timer
From: Josh (Norm) Audette (norm_at_linuxcare.com)
Date: 2002-12-12


<MARTIN>
> With analog signals a user-defined db & time limit should do. This might also
> be useful for digital sources that do not turn of the signal when nothing is
> playing. When a time limit is exeeded the recording should start a new file...
>
> This suggestion would solve most of my timer needs - I can programm the
> satellite receiver and can connect my conventional radio to a timer switch.
>
> Any comment from the other people who want timer recordings?
</MARTIN>

<NORM>
        This would solve the biggest (IMHO) problem with recording on a
        portable device; you can't really accurately define the start and end
        of a track. In order to get a good track, you need to record the
        data, load it into an audio editor on your computer, and crop the
        signal appropriately.

        The best you can do right now is hit the "begin recording" button and
        the "play" button on your source and hope that the two are roughly in
        sync. Same for stopping.

        Unfortunately, what you really want is something that will initiate
        recording about 1/2 second before it starts, and terminate the
        recording about that long after it ends.

        By using the db to trigger start time, you pretty much guarantee that
        you're going to kill the beginning of your tune. Even if you set your
        trigger level low enough, unless it's zero you will miss a bit of
        data, and the human ear is very good at noticing inconsistencies like
        that. Fortunately, it's a little easier to handle the end of a track;
        you wait until the signal drops below your level, then wait n seconds
        and terminate.

        What would be ideal is that while you're waiting to begin recording,
        you start buffering data in a loop, and then once you detect your
        input level, you write to disk everything in the buffer starting n
        (where n is 1/2 second in my above example) seconds before trigger.

        Same goes for ending the recording. Once signal falls below your
        end-trigger level, you wait x seconds and terminate (where x is
        probably 3 or 4 seconds). You then write to disk everything in your
        buffer from time of trigger to y seconds (where y is probably 1/2
        second or so, as well).

        Is this possible?
</NORM>

-- 
  Why, oh why,
  Do my telnet sessions die?
  			- Norm, "Ode to a bad firewall"
- - -.-- .-..  - - -.-- .-..  - - -.-- .-..  - - -.-- .-..  - - -.-- .-..
Josh "Norm" Audette <norm_at_gnurple.net>       AIM: normmonkey ICQ: 25260232
Systems and Network Administrator (Contract)          <norm_at_linuxcare.com>
              Linuxcare.  Simplifying Server Consolidation.
10101001010100101100110011000100000101010010101001011001100110001000000000
. .-. - .--  . .-. - .--  . .-. - .--  . .-. - .-  . .-. - .--  . .-. - .-



Page was last modified "Jan 10 2012" The Rockbox Crew
aaa