View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0004110 | ardour | bugs | public | 2011-06-12 00:36 | 2020-04-19 20:15 |
| Reporter | thefoxbox | Assigned To | cth103 | ||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Target Version | 3.0-beta1 | ||||
| Summary | 0004110: lv2-persist+linuxsampler not restoring channel and instrument on session open | ||||
| Description | svn 9710 This was working until recently. 1. Create a MIDI track 2. Load the LinuxSampler plugin in MIDI track 3. Load an instrument into LinuxSampler 4. Save session 5. Re-open session the rdff files are being created on save, but not restored on session open. | ||||
| Tags | No tags attached. | ||||
|
|
I have also noticed that after adding the linuxsampler plugin, assigning an instrument to the channel, and saving the session, new state files are created (plugins/159.rdff and plugins/159/linuxsamper). When re-opening the session and saving, new state files are created with what appears to be identical information. -- first save and exit: Starting disk thread...OK LSCPServer: Client connection established on socket:40. LSCPServer: Client connection established on socket:41. Stopping disk thread...OK Starting disk thread...OK Scheduling '/home/efox/Studio/Instruments/GSCWDrums-Kit-1.gig' (Index=0) to be loaded in background (if not loaded yet). Loading gig file '/home/efox/Studio/Instruments/GSCWDrums-Kit-1.gig'...OK Loading gig instrument ('/home/efox/Studio/Instruments/GSCWDrums-Kit-1.gig',0)...OK Caching initial samples...OK Saving LV2 plugin state to /home/efox/Studio/Session/DEBUG/plugins/159.rdff Freeing gig file from memory...OK Stopping disk thread...OK -- re-open, save and exit: Starting disk thread...OK LV2 state path /home/efox/Studio/Session/DEBUG/plugins/159.rdff Loading LV2 state from /home/efox/Studio/Session/DEBUG/plugins/159.rdff Stopping disk thread...OK LV2 state path /home/efox/Studio/Session/DEBUG/plugins/159.rdff Loading LV2 state from /home/efox/Studio/Session/DEBUG/plugins/159.rdff Saving LV2 plugin state to /home/efox/Studio/Session/DEBUG/plugins/261.rdff NOTE: there is no client connection being made to LSCPServer on re-open |
|
2011-06-24 04:57
|
|
|
2011-06-24 04:57
|
|
|
2011-06-24 04:58
|
|
|
|
Here is the debug output when re-opening the session: DEBUG::LV2: init Starting disk thread...OK LV2 state path /home/efox/Studio/Session/DEBUG/plugins/159.rdff Loading LV2 state from /home/efox/Studio/Session/DEBUG/plugins/159.rdff DEBUG::LV2: persist retrieve http://linuxsampler.org/schema#state-file = 0xb3ebc888 (size: 13, type: 3430) DEBUG::LV2: absolute path linuxsampler => /home/efox/Studio/Session/DEBUG/plugins/261/linuxsampler Stopping disk thread...OK LV2 state path /home/efox/Studio/Session/DEBUG/plugins/159.rdff Loading LV2 state from /home/efox/Studio/Session/DEBUG/plugins/159.rdff DEBUG::LV2: persist retrieve http://linuxsampler.org/schema#state-file = 0xb3ebc790 (size: 13, type: 3430) DEBUG::LV2: absolute path linuxsampler => /home/efox/Studio/Session/DEBUG/plugins/261/linuxsampler DEBUG::LV2: LinuxSampler activate DEBUG::LV2: LinuxSampler activate It looks like persist is getting called a second time and the state-file address is somehow changing. |
|
|
Line 527 of lv2_plugin_lilv.cc seems to be where the problem is occurring. Specifically the value of 'me->_insert_id.to_s()'. If I hard code the correct insert_id so that the absolute path is correct, the session restores the plugin properly. |
|
|
attached a patch that resolves this issue and fixes a problem where PluginInsert::set_state in plugin_insert.cc did not initialize it's "_id". |
|
2011-06-28 20:06
|
plugin_insert.cc.patch (379 bytes)
--- libs/ardour/plugin_insert.cc (revision 9773)
+++ libs/ardour/plugin_insert.cc (working copy)
@@ -884,6 +884,11 @@
uint32_t count = 1;
+ // may not exist for legacy 3.0 sessions
+ if ((prop = node.property ("id")) != 0) {
+ _id = prop->value();
+ }
+
if (_plugins.empty()) {
/* if we are adding the first plugin, we will need to set
up automatable controls.
|
|
|
Patch applied to SVN 9793. Thanks! |
|
|
Issue has been closed automatically, by Trigger Close Plugin. Feel free to re-open with additional information if you think the issue is not resolved. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2011-06-12 00:36 | thefoxbox | New Issue | |
| 2011-06-12 13:12 | cth103 | cost | => 0.00 |
| 2011-06-12 13:12 | cth103 | Target Version | => 3.0-beta1 |
| 2011-06-24 04:57 | thefoxbox | Note Added: 0010939 | |
| 2011-06-24 04:57 | thefoxbox | File Added: 159.rdff | |
| 2011-06-24 04:57 | thefoxbox | File Added: linuxsampler | |
| 2011-06-24 04:58 | thefoxbox | File Added: 261.rdff | |
| 2011-06-24 05:00 | thefoxbox | Note Edited: 0010939 | |
| 2011-06-27 14:46 | thefoxbox | Note Added: 0010942 | |
| 2011-06-27 17:53 | thefoxbox | Note Added: 0010943 | |
| 2011-06-28 20:06 | thefoxbox | Note Added: 0010945 | |
| 2011-06-28 20:06 | thefoxbox | File Added: plugin_insert.cc.patch | |
| 2011-07-04 17:36 | cth103 | Note Added: 0010974 | |
| 2011-07-04 17:36 | cth103 | Status | new => resolved |
| 2011-07-04 17:36 | cth103 | Resolution | open => fixed |
| 2011-07-04 17:36 | cth103 | Assigned To | => cth103 |
| 2020-04-19 20:15 | system | Note Added: 0022613 | |
| 2020-04-19 20:15 | system | Status | resolved => closed |