Hi SndFile has a function to retrieve SampleV* data, which holds audio peak and rms information. This data is cached at SndFile::readCache and returned by a version of SndFile::read. (which should be IMHO, and will be, renamed to ::readPeakRms or similar.).
this ::read function, however, may bypass the cache, namely when the requested accuracy is finer than cacheMag. In this case, MusE will read from the file directly and calculate the information to return on-the-fly. This creates a problem for me: I rely on the fact that SndFile is only seek()ed by me, not by anything outside my scope. (AudioStreams have a *private* SndFile, nobody has access to this file). However, the AudioStreams shall be able to provide for such a peak-map, too. My plan is to just use and "stretch" the peak map of the SndFiles accordingly. This, however, might result in "overstretching" so that the requested accuracy is finer than cacheMag. How should i handle this? For the arranger, this won't be much of a problem, we can easily interpolate there. For the wave editor, i'm not so confident because it allows extreme zoom. Should I display the output of the AudioStream (that would involve creating a copy of the stretcher/sampling rate converter used, creating a copy of the SndFile (so i can seek independently))? Problem is, at extreme zoom settings this will not resemble the actual file any more, but the output of the stretcher. Advantage is, that the user can see what will be played. Until he changes the tempo... Or rather display the output of the SndFile, just stretched accordingly? That would only involve a (pretty cheap) copy of the SndFile (so i can seek independently). However, this will not resemble what is actually played, but rather the SndFile itself. Advantage is that the user gets a tempo-independent view on the SndFile. I've a slight tendency towards displaying the SndFile's output, because it's cheaper, and *if* i needed this accurate display, then only for doing sample-exact cutting. And i would want this to be tempo-independent. What's your opinion? Greetings flo
signature.asc
Description: OpenPGP digital signature
------------------------------------------------------------------------------ Get 100% visibility into Java/.NET code with AppDynamics Lite It's a free troubleshooting tool designed for production Get down to code-level detail for bottlenecks, with <2% overhead. Download for free and get started troubleshooting in minutes. http://p.sf.net/sfu/appdyn_d2d_ap2
_______________________________________________ Lmuse-developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/lmuse-developer
