<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[[Feature request] Lossy monoliths]]></title><description><![CDATA[<p dir="auto">Currently monoliths include the entire contents of the wav file, even the bits before and after the start/end markers. I would like an option to create the monolith without these parts.</p>
<p dir="auto">I always have the original wav files so I can simply revert the sample map save mode if I need to readjust the start/end.</p>
]]></description><link>https://forum.hise.audio/topic/10861/feature-request-lossy-monoliths</link><generator>RSS for Node</generator><lastBuildDate>Thu, 21 May 2026 10:50:01 GMT</lastBuildDate><atom:link href="https://forum.hise.audio/topic/10861.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 24 Oct 2024 17:08:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Tue, 05 Nov 2024 00:18:21 GMT]]></title><description><![CDATA[<p dir="auto">Ahhhh I decided to have another go at it. I think I've solved it but unsure if the code is a little messy. I was thinking along the correct lines before, just I was not following the logic. The problem was that the start position was being applied multiple times to the end position (once for each mic position) whereas it should only be applied once. Here is the modified function.</p>
<pre><code>  void apply(const Identifier&amp; id)
  {
    auto value = propertyData.getProperty(id);

    if (id == SampleIds::SampleStart)
      addDelta(-int(value), { SampleIds::SampleEnd, SampleIds::LoopStart, SampleIds::LoopEnd });

    for (auto f : sampleFiles)
    {									
      apply(id, f);
    }
			
  propertyData.removeProperty(id, nullptr);
}
</code></pre>
<p dir="auto">The <code>addDelta</code> part was previously in <code>void apply(const Identifier&amp; id, File&amp; fileToUse)</code>.</p>
<p dir="auto">Hoping that improving my C++ foo will make me more useful to the community :) or at least more useful to myself.</p>
]]></description><link>https://forum.hise.audio/post/90271</link><guid isPermaLink="true">https://forum.hise.audio/post/90271</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Tue, 05 Nov 2024 00:18:21 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Sun, 03 Nov 2024 17:04:28 GMT]]></title><description><![CDATA[<p dir="auto">Well I can't figure it out, so I recall my original request for lossy monoliths.</p>
<p dir="auto">This would have a couple of advantages over the apply sample properties suggestion.</p>
<ul>
<li>All trimmed monoliths would be smaller.</li>
<li>It's none destructive as the original sample map would not be affected so you can easily revert and make adjustments.</li>
</ul>
]]></description><link>https://forum.hise.audio/post/90172</link><guid isPermaLink="true">https://forum.hise.audio/post/90172</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Sun, 03 Nov 2024 17:04:28 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Sat, 02 Nov 2024 18:47:18 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/1">@Christoph-Hart</a> I think there are two problems.</p>
<p dir="auto"><s>The first is because I moved the property removal to after the apply loop, the start time delta is being repeatedly added. So to solve that I think it can be reset with each iteration of the loop, like this:</s> Nope, this isn't required.</p>
<p dir="auto">The next problem I think is caused because in the part where you change the sample start, you swap nb/ob. So that the buffer that the sample end is working on is now shorter than the original - I could be misunderstanding this though...</p>
<p dir="auto">Also selecting the normalisation option results in silence on the other mic positions. Gaaar</p>
]]></description><link>https://forum.hise.audio/post/90113</link><guid isPermaLink="true">https://forum.hise.audio/post/90113</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Sat, 02 Nov 2024 18:47:18 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Sat, 02 Nov 2024 16:53:54 GMT]]></title><description><![CDATA[<p dir="auto">I found another bug, apply sample start and end causes the process to fail. If I apply just start or just end then it works.</p>
]]></description><link>https://forum.hise.audio/post/90106</link><guid isPermaLink="true">https://forum.hise.audio/post/90106</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Sat, 02 Nov 2024 16:53:54 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Wed, 30 Oct 2024 11:57:29 GMT]]></title><description><![CDATA[<p dir="auto">I think the way to deal with duplicate samples would be to:</p>
<ul>
<li>Check through all the samples for duplicates.</li>
<li>If there are duplicates then find the earliest start time and latest end time that is used across the duplicates. And trim the sample accordingly.</li>
<li>Adjust the start/end times in the sample map to work with the newly cut sample</li>
</ul>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/1">@Christoph-Hart</a> What do you think?</p>
<p dir="auto">Edit: Actually this won't work because the other properties won't be applied. We need to create a duplicate wav of each sample with its own properties.</p>
]]></description><link>https://forum.hise.audio/post/89875</link><guid isPermaLink="true">https://forum.hise.audio/post/89875</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Wed, 30 Oct 2024 11:57:29 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Tue, 29 Oct 2024 23:12:16 GMT]]></title><description><![CDATA[<p dir="auto">@d-healey hmm seems to fail if the sample map contains a duplicate sample, even when using <code>Engine.setAllowDuplicateSamples(false);</code></p>
]]></description><link>https://forum.hise.audio/post/89851</link><guid isPermaLink="true">https://forum.hise.audio/post/89851</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Tue, 29 Oct 2024 23:12:16 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Tue, 29 Oct 2024 22:24:38 GMT]]></title><description><![CDATA[<p dir="auto">Ok I think I've fixed this, and it was the simplest fix I've ever done - <a href="https://github.com/christophhart/HISE/pull/594" rel="nofollow ugc">https://github.com/christophhart/HISE/pull/594</a></p>
]]></description><link>https://forum.hise.audio/post/89844</link><guid isPermaLink="true">https://forum.hise.audio/post/89844</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Tue, 29 Oct 2024 22:24:38 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Tue, 29 Oct 2024 00:36:50 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/1">@Christoph-Hart</a> I've just been testing the apply sample map properties feature again, and it seems the multi-mic bug is still present.</p>
<p dir="auto">I clicked on my old link to see what the fix was that I found but it takes me to the latest commits and the line of code has moved so I'm not sure exactly what I was referring to :D</p>
<p dir="auto">Here's a very simple project you can use for testing. <a href="/assets/uploads/files/1730162208665-applysampleproperties.zip">applysampleproperties.zip</a></p>
]]></description><link>https://forum.hise.audio/post/89797</link><guid isPermaLink="true">https://forum.hise.audio/post/89797</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Tue, 29 Oct 2024 00:36:50 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Thu, 24 Oct 2024 20:20:36 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/1">@Christoph-Hart</a> Ah yes, now you mention it I recall that feature and apparently I did <a href="https://github.com/christophhart/HISE/pull/488" rel="nofollow ugc">some work</a> on it earlier this year which I have no memory of...</p>
<p dir="auto">And there is a bug... <a href="https://github.com/christophhart/HISE/issues/494" rel="nofollow ugc">https://github.com/christophhart/HISE/issues/494</a></p>
<p dir="auto">With a possible solution that I need you to confirm doesn't break anything :) <a href="https://forum.hise.audio/topic/9081/bug-unwanted-pitch-shifting-when-using-apply-sample-map-properties-to-sample-files/5">https://forum.hise.audio/topic/9081/bug-unwanted-pitch-shifting-when-using-apply-sample-map-properties-to-sample-files/5</a></p>
]]></description><link>https://forum.hise.audio/post/89455</link><guid isPermaLink="true">https://forum.hise.audio/post/89455</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Thu, 24 Oct 2024 20:20:36 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Thu, 24 Oct 2024 18:36:22 GMT]]></title><description><![CDATA[<p dir="auto">@d-healey Actually there is a function in HISE which bakes all properties into a new wave file, replaces the references and encodes the sample map.</p>
<p dir="auto">This does not only include start / end, but also pitch information and all the sample envelopes. All available in the HISE menu:</p>
<p dir="auto"><strong>Tools / Apply Samplemap properties to files</strong></p>
<h1>BUT</h1>
<p dir="auto">I wrote this function three years ago and never used it so it would be the twist of the millennium if the function still works.</p>
<p dir="auto">Try it out, but make a backup of your samples. Then make another backup of this backup and if you're at it, backup your entire hard drive. That's how much I trust this function to work :)</p>
]]></description><link>https://forum.hise.audio/post/89445</link><guid isPermaLink="true">https://forum.hise.audio/post/89445</guid><dc:creator><![CDATA[Christoph Hart]]></dc:creator><pubDate>Thu, 24 Oct 2024 18:36:22 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Thu, 24 Oct 2024 17:38:54 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/3130">@aaronventure</a> said in <a href="/post/89440">[Feature request] Lossy monoliths</a>:</p>
<blockquote>
<p dir="auto">What I meant was wouldn't trimming the samples in the monolith break the ability to adjust start and end times within the script (looping etc)?</p>
</blockquote>
<p dir="auto">Probably, but I don't need to do that. The loops are already set in the sample map before they are encoded.</p>
<p dir="auto">I want this as an option, not as the only option or even the default option.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/3130">@aaronventure</a> said in <a href="/post/89440">[Feature request] Lossy monoliths</a>:</p>
<blockquote>
<p dir="auto">Also, if you already have sustains loaded, can't you just use that?</p>
</blockquote>
<p dir="auto">No this is the problem. You can share a monolith between samplers, but the data within them must be exactly the same, and I have situations where this isn't the case. See this thread - <a href="https://forum.hise.audio/topic/535/different-sample-maps-shared-monoliths">https://forum.hise.audio/topic/535/different-sample-maps-shared-monoliths</a></p>
]]></description><link>https://forum.hise.audio/post/89441</link><guid isPermaLink="true">https://forum.hise.audio/post/89441</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Thu, 24 Oct 2024 17:38:54 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Thu, 24 Oct 2024 17:36:56 GMT]]></title><description><![CDATA[<p dir="auto">@d-healey Forgive me, I haven't experimented with the sampler that much. What I meant was wouldn't trimming the samples in the monolith break the ability to adjust start and end times within the script (looping etc)?</p>
<p dir="auto">Also, if you already have sustains loaded, can't you just use that?</p>
]]></description><link>https://forum.hise.audio/post/89440</link><guid isPermaLink="true">https://forum.hise.audio/post/89440</guid><dc:creator><![CDATA[aaronventure]]></dc:creator><pubDate>Thu, 24 Oct 2024 17:36:56 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Thu, 24 Oct 2024 17:37:00 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.hise.audio/uid/3130">@aaronventure</a> said in <a href="/post/89438">[Feature request] Lossy monoliths</a>:</p>
<blockquote>
<p dir="auto">Btw, can't you adjust start/end markers from the interface, this would then be impossible if these parts are cut away.</p>
</blockquote>
<p dir="auto">Not sure what you mean. My goal is to make releases from my sustains within HISE without reencoding the entire sustain sample. Also have other uses.</p>
<p dir="auto">I don't want to reduce the quality of the audio, I just want to avoid encoding data that will never be heard in the final product. Maybe I should have said destructive rather than lossy.</p>
]]></description><link>https://forum.hise.audio/post/89439</link><guid isPermaLink="true">https://forum.hise.audio/post/89439</guid><dc:creator><![CDATA[David Healey]]></dc:creator><pubDate>Thu, 24 Oct 2024 17:37:00 GMT</pubDate></item><item><title><![CDATA[Reply to [Feature request] Lossy monoliths on Thu, 24 Oct 2024 17:33:16 GMT]]></title><description><![CDATA[<p dir="auto">@d-healey Could just go ham into lossy and be able to also do OPUS monoliths. OPUS at 128 kbps is basically transparent, so if you exported at 160 or 192 this would be a huge reduction in size.</p>
<p dir="auto">Though I'm not aware of any realtime implications of this.</p>
<p dir="auto">Btw, can't you adjust start/end markers from the interface, this would then be impossible if these parts are cut away.</p>
]]></description><link>https://forum.hise.audio/post/89438</link><guid isPermaLink="true">https://forum.hise.audio/post/89438</guid><dc:creator><![CDATA[aaronventure]]></dc:creator><pubDate>Thu, 24 Oct 2024 17:33:16 GMT</pubDate></item></channel></rss>