in both .qtr and .qtz the LV2 plugin state are stored as an opaque blob base4 encoded.
what you're probably arguing is that, on the .qtr case, the paths there are not stored relative to the session file location and that's true (and a curse for session portability if I understand you correctly ;))
however, this and your other idea for drumkv1 are not that fixable, if at all, just because it's all under LV2 plugin state and API realm... so it's all not quite about samplv1 and drumkv1 in particular, but LV2 plugins in general, sorry.
where are you looking to those paths anyhow?
in both .qtr and .qtz the LV2 plugin state are stored as an opaque blob base4 encoded.
what you're probably arguing is that, on the .qtr case, the paths there are not stored relative to the session file location and that's true (and a curse for session portability if I understand you correctly ;))
however, this and your other idea for drumkv1 are not that fixable, if at all, just because it's all under LV2 plugin state and API realm... so it's all not quite about samplv1 and drumkv1 in particular, but LV2 plugins in general, sorry.
hyu.
cheers