My theory on what's going on... I think ALSA is integer and JACK is float, and the final output to your sound device is integer again, so you get conversions something like: float->int (LMMS) int->float (JACK) float->int (JACK)
If LMMS outputs floats straight to JACK, you get 2 conversions less... and the fact that rendering also adds distortion would hint at the bug being in the float->int code in LMMS. Quoting Tobiasz Karon <[email protected]>: > I don't really know how the bride works and if it's just a config hack > (making ALSA output to a virtual JACK device), or some program passing data > through... > > > 2014-02-05 Jonathan Aquilina <[email protected]>: > >> I am no expert I have a hunch it potentially has somethign to do wiht the >> bridge, but I would say more investigation is warrented. >> >> Is the bridge versions and if so do jack have a newer version we should try >> and use? >> >> On Wednesday, February 05, 2014 03:09:50 PM Tobiasz Karo? wrote: >> > I did - I switched to JACK back-end, and the distortion disappeared. >> > >> > 2014-02-05 Jonathan Aquilina <[email protected]>: >> > > You tried to bypass the alsa jack bridge all together? >> > > >> > > On Wednesday, February 05, 2014 03:05:29 PM you wrote: >> > > > It sounds to me like some bad interpolation. Maybe ALSA?JACK does >> > > >> > > something? >> > > >> > > > However why rendering is affected? >> > > > >> > > > Btw: I captured the live output with jack_capture. >> > > > >> > > > 2014-02-05 Jonathan Aquilina <[email protected]>: >> > > > > Could this potentially have something to do with the latency of >> alsa >> > > > > or >> > > > > pulse >> > > > > compared to jack? >> > > > > >> > > > > On Wednesday, February 05, 2014 03:00:17 PM Tobiasz Karo? wrote: >> > > > > > What's strange - the distortion is also present in rendered WAV >> > > > > > file, >> > > > > > however it sounds different. >> > > > > > When using JACK back-end rendered file has no distortion either >> with >> > > > > > Fastest or Best interpolation method (they produce identical >> > > > > > output). >> > > > > > >> > > > > > 2014-02-05 Tobiasz Karo? <[email protected]>: >> > > > > > > Using this sample I've just spotted some distortion in the >> output. >> > > > > > > I've >> > > > > > > calculated the difference with the original sample - it's >> included >> > > >> > > as >> > > >> > > > > > > *distortion.flac*. >> > > > > > > >> > > > > > > I've made a few tests and I see that it happens with ALSA >> output >> > > > > >> > > > > (bridged >> > > > > >> > > > > > > back to JACK) - JACK output doesn't distort the output. >> > > > > > > I wonder if this is caused by LMMS or ALSA, or JACK-ALSA >> bridge? >> > > > > > > >> > > > > > > >> > > > > > > 2014-02-05 Tobiasz Karo? <[email protected]>: >> > > > > > > >> > > > > > > I've cut it down to 14kB :D >> > > > > > > >> > > > > > >> Less silence in the beginning and end, will sync better. >> > > > > > >> >> > > > > > >> >> > > > > > >> 2014-02-05 Tobiasz Karo? <[email protected]>: >> > > > > > >> >> > > > > > >> How about including this one with LMMS? >> > > > > > >> >> > > > > > >>> -- >> > > > > > >>> Tobiasz *unfa* >> > > > > > >>> >> > > > > > >>> -----BEGIN GEEK CODE BLOCK----- >> > > > > > >>> Version: 3.1 >> > > > > > >>> GIT/MU/P d->-- s+:-(--)> a? C++(+++)>$ ULC+(++)>$ !P? >> L+++>++++$ >> > > >> > > E? >> > > >> > > > > > >>> W++>$ !N-? !o--? K-? !w-- O? !M-- V? PS++ PE++ !Y+ !PGP+? >> !t(+) >> > > >> > > 5? >> > > >> > > > > > >>> !X >> > > > > > >>> !R+ >> > > > > > >>> tv b+>+++ DI>+ D+ G e h-->- !r y--() >> > > > > > >>> ------END GEEK CODE BLOCK------ >> > > > > > >> >> > > > > > >> -- >> > > > > > >> Tobiasz *unfa* >> > > > > > >> >> > > > > > >> -----BEGIN GEEK CODE BLOCK----- >> > > > > > >> Version: 3.1 >> > > > > > >> GIT/MU/P d->-- s+:-(--)> a? C++(+++)>$ ULC+(++)>$ !P? >> L+++>++++$ >> > > >> > > E? >> > > >> > > > > W++>$ >> > > > > >> > > > > > >> !N-? !o--? K-? !w-- O? !M-- V? PS++ PE++ !Y+ !PGP+? !t(+) 5? >> !X >> > > >> > > !R+ >> > > >> > > > > > >> tv >> > > > > > >> b+>+++ DI>+ D+ G e h-->- !r y--() >> > > > > > >> ------END GEEK CODE BLOCK------ >> > > > > > > >> > > > > > > -- >> > > > > > > Tobiasz *unfa* >> > > > > > > >> > > > > > > -----BEGIN GEEK CODE BLOCK----- >> > > > > > > Version: 3.1 >> > > > > > > GIT/MU/P d->-- s+:-(--)> a? C++(+++)>$ ULC+(++)>$ !P? >> L+++>++++$ >> > > > > > > E? >> > > > > >> > > > > W++>$ >> > > > > >> > > > > > > !N-? !o--? K-? !w-- O? !M-- V? PS++ PE++ !Y+ !PGP+? !t(+) 5? !X >> > > >> > > !R+ tv >> > > >> > > > > > > b+>+++ DI>+ D+ G e h-->- !r y--() >> > > > > > > ------END GEEK CODE BLOCK------ >> >> > > > -- > Tobiasz *unfa* > > -----BEGIN GEEK CODE BLOCK----- > Version: 3.1 > GIT/MU/P d->-- s+:-(--)> a? C++(+++)>$ ULC+(++)>$ !P? L+++>++++$ E? W++>$ > !N-? !o--? K-? !w-- O? !M-- V? PS++ PE++ !Y+ !PGP+? !t(+) 5? !X !R+ tv > b+>+++ DI>+ D+ G e h-->- !r y--() > ------END GEEK CODE BLOCK------ > -- [email protected] 04 00 83 83 95 ------------------------------------------------------------------------------ Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk _______________________________________________ LMMS-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/lmms-devel
