[linux-audio-dev] Waveform
Fred Gleason
fredg at salemradiolabs.com
Mon May 9 23:29:44 UTC 2005
On Monday 09 May 2005 19:02, Paul Davis wrote:
> if you allow arbitrary zoom scales, then the mapping between pixel
> position on screen (or some notional "unit" position as offered by
> canvas widgets) and a sample is non-integral, which implies
> rounding. that in turn implies errors of several different kinds.
>
> moreover, if you are displaying large audio files, reading the audio
> data itself is excrutiatingly slow. hence, peakfiles.
And here's another one in Qt, from Rivendell's Marker Editor:
http://www.salemradiolabs.com/rivendell/
Unpack the tarball and look in rdlibrary/edit_audio.cpp.
Paul is quite right about all the round-off and peak-file issues. Rivendell
handles that by assuming that the smallest atom of audio is always 1152
samples long -- which just happens to be the standard MPEG sample block size.
This gives acceptable precision for the marker editor, but would probably not
be adequate in a general purpose editor. Even the 'simplified' version is
quite headache-inducing enough, however... :)
Cheers!
|-------------------------------------------------------------------------|
| Frederick F. Gleason, Jr. | Director of Broadcast Software Development |
| | Salem Radio Labs |
|-------------------------------------------------------------------------|
| Never worry about theory as long as the machinery does what it's |
| supposed to do. |
| -- Robert A. Heinlein |
|-------------------------------------------------------------------------|
More information about the Linux-audio-dev
mailing list