Friday, 2014-08-22

*** edogawa_ has quit IRC00:00
rgareusfalktx_: anyway asking drobilla and or the LV2-dev email list is probably a good idea.00:01
rgareusif a host sends regular updates, it won't break existing pluins.00:02
rgareusonly new plugins that expect it every cycle won't work with old hosts.00:02
falktx_I'm trying to figure out how to get jack-transport like values from lv2 time info00:03
falktx_I'm missing ticks, barStartTick and ticksPerBeat00:03
rgareusfalktx_: ticksPerBeat is just some arbitrary number, usually something that can be divided by 2,3,5 a couple of times.00:08
rgareusfalktx_: common values are 1920  and 768000:08
falktx_I can read documentation too, thanks :)00:09
rgareusfalktx_: mmh which doc did you find that in?00:09
falktx_jack1 headers00:09
rgareusfalktx_: seems to be missing in doxygen.00:11
rgareusfalktx_: does Carla have functionality to act as timebase master?00:11
falktx_no00:12
rgareusi suppose one usually needs a timeline for a tempo-map. - though a simple version "fixed tempo + metrum" could be useful.00:13
rgareussadly, most people do four to the floor at a fixed tempo, these days.00:14
falktx_if I assume a ticksPerBeat value myself, I can get the ticks from barBeat00:19
falktx_hmm so how can I get the "ticksPerBeat" in lv2?00:20
falktx_rgareus: any ideas?00:20
rgareusfalktx_: just set it to some value, say ticksPerBeat=1920.00:21
falktx_but won't work right...00:21
falktx_I need to advance the ticks value manually00:21
rgareusfalktx_: then calcuate   samplesPerBeat = 60 / BPM * sampleRate00:22
rgareusfalktx_: then set ticks to  (current_sample_pos - sample_pos_of_bar)  * samplesPerBeat00:23
rgareus      / ticksPerBeat00:23
rgareusoh sorry, I got this wrong.   ticks = (current_sample_pos - sample_pos_of_bar)  * ticksPerBeat / samplesPerBeat00:24
falktx_the amount of work needed just to get a simple thing working is monstrous...00:27
falktx_in vst I could just call a function and it would get me all values00:27
rgareusfalktx_: c'mon. it's just a simple proportion.00:27
rgareusfalktx_: LV2 provides you with  beats (as float)00:27
rgareusfalktx_: and 1 full beat =  <ticksPerBeat>  ticks.00:28
rgareusfalktx_:  so,  if you're at beat "1.5"   ->  "beat 1"  +  "0.5 * ticksPerBeat"00:29
rgareusand if ticksPerBeat = 1920,  ->  beat 1, tick 96000:29
rgareuswhat's monstrous about that?00:29
falktx_1 line of code vs having to call and parse atom atuff00:30
rgareusthat may sound provocative, but I do like that LV2 does not make these things simpler as they should be.00:34
rgareusproper DSP is *much* harder and much heavier maths involved.00:34
rgareusAFAICT the over-simplicity of the VST API accounts for the huge multitude of substandard VSTs.00:35
falktx_we could say lv2 is worse00:35
falktx_the over-complexity of lv2 makes for all sorts of broken plugins00:36
rgareusfalktx_: there's some truth to that, too00:36
*** ricardocrudo has joined #lv200:39
falktx_rgareus: I'm really not used to these calculations. how do I get "sample_pos_of_bar" ?00:42
falktx_hmm, or better, getting ticks per frame00:43
rgareusfalktx_:  "frame" as in audio-sample?00:46
falktx_ticksPerFrame = samplesPerFrame I guess00:46
rgareusfalktx_:  I don't know what you mean by Frame.00:47
rgareusfalktx_: sometimes people use 'frame' as synonym for 'sample'.00:47
falktx_yes00:47
falktx_I need the "ticks per sample" I guess00:47
falktx_that should be easier to work with00:48
rgareusfalktx_: wel, if youre frame-rate equals your sample-rate   then    samplesPerFrame = 100:48
rgareusfalktx_: in one Beat   there are   samplesPerBeat = 60 / BPM * sampleRate     audio-samples.00:48
falktx_ticksPerFrame = ticksPerBeat / samplesPerBeat ?00:49
rgareusfalktx_: and in one Beat  there are   tickePerBeat  Ticks.00:49
rgareusfalktx_: yes00:49
rgareusfalktx_:  more correctly:     ticksPerSample  =  ticksPerBeat / samplesPerBeat00:49
rgareus(sorry for being pedantic about this)00:50
falktx_np, I think I got it00:51
rgareusbut it's much more obvious     *ticks*  /  *sample*    =  *ticks*PerBeat   / *samples*PerBeat00:52
*** unclechu has quit IRC01:04
falktx_ok, seems to be working01:14
falktx_drifts a bit sometimes it seems, not sure01:14
falktx_this is not right. the drifting increases with time01:26
rgareusfalktx_: drift of what? bars? ticks?01:40
rgareusfalktx_: if you do it incrementally and round to integer, it may drift depending on BPM.01:41
rgareusfalktx_: one way to avoid this: just calculate the current position always relative to the previous info provided by the host (and not relative to the previous cycle).01:42
rgareusie   sum up the number of samples that has passed since the last update from the host.01:43
falktx_meh, of course this won't sync01:47
falktx_jalv is not sending the "beat"01:47
falktx_I guess that's because barBeat already includes it. I'll need to adjust the code01:48
falktx_rgareus: this is my current code for syncing after callback, https://github.com/DISTRHO/DPF/blob/master/distrho/src/DistrhoPluginLV2.cpp#L46501:59
falktx_rgareus: this repo https://github.com/DISTRHO/plugin-examples contains a plugin that shows all that info on screen (Info example plugin)02:02
rgareusfalktx_: I'm on my way to bed. I'll check it tomorrow02:09
falktx_cool, thanks02:10
falktx_I'll try to handle vst timeinfo completely now...02:10
*** ricardocrudo has quit IRC02:30
*** NickSB2 has quit IRC02:55
*** falktx_ has quit IRC04:17
*** ddom has quit IRC06:30
*** edogawa has joined #lv207:23
*** ddom has joined #lv207:42
*** ddom_ has joined #lv208:40
*** ddom has quit IRC08:44
*** NickSB2 has joined #lv210:22
*** falktx has joined #lv210:55
*** ricardocrudo has joined #lv213:03
* falktx is trying to get host-side resize13:12
*** ddom_ has quit IRC14:56
*** edogawa_ has joined #lv215:14
*** edogawa has quit IRC15:17
*** falktx has quit IRC15:39
*** falktx has joined #lv215:45
*** Anchakor_ has quit IRC16:13
*** falktx has quit IRC16:29
*** falktx has joined #lv216:29
*** zth has quit IRC16:40
*** zth has joined #lv216:42
*** zth has quit IRC16:56
*** falktx has quit IRC17:03
*** zth has joined #lv217:16
*** falktx has joined #lv217:56
*** mlpug has joined #lv218:49
*** NickSB2 has quit IRC18:52
*** dharanamrs has joined #lv219:04
*** unclechu has joined #lv219:07
*** dharanamrs has quit IRC19:27
unclechuhello. any way to control Jalv parameters in realtime?19:29
*** mlpug has quit IRC19:57
falktxunclechu: you mean like midi-cc?20:05
falktxjalv doesn't support that20:05
falktxcarla does20:05
unclechufalktx, yes20:05
unclechufalktx, hm, thanks, will try carla20:06
falktxunclechu: you can ask me any question about carla, as I wrote that myself ;)20:08
unclechufalktx, that's nice) can I set specific jack-client name by argv?20:09
falktxby default carla will create new jack clients and ports for the plugins using their name, but you can rename them20:10
unclechufalktx, rename before start? by arguments?20:12
falktxtry it first, you'll understand20:12
unclechufalktx, ok, thanks20:12
*** unclechu has quit IRC20:46
*** zth has quit IRC21:49
*** rncbc has joined #lv221:56
*** ricardocrudo has quit IRC22:15
*** ricardocrudo has joined #lv222:16
*** rncbc has quit IRC22:48
*** falktx has quit IRC22:55
*** falktx has joined #lv222:56
*** ricardocrudo has quit IRC23:19
*** Anchakor_ has joined #lv223:50

Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!