IRs with custom file extensions.
-
I am working on a plugin that must share IR resources with a bunch of other plugins that were not built by me. My plugin must use these resources. The problem is that the company have given their IRs custom file extensions:
theirIRs.customExt
I'm guessing that I would need to modify the HISE source to allow this extension to load into the convolution node? If so, I honestly don't know where to start and any guidance would be appreciated.
On a side note, I imported the IRs into a DAW and they loaded right in as audio files. So, I'd assume it's just the extension that is the issue.
-
@scottmire If you're loading it via scripting the convolution effect doesn't seem to care what the file extension is.

-
Hmmm....that is not what I'm seeing.
The IR on the left is loaded from a custom location and has a custom ext and the IR on the right is from the HISE AudioFiles location.

-
@scottmire Can you make a simple snippet that I can test out.
-
I hope this makes sense...lol...
The snippet does 3 things:
[1] Dynamically builds a 3 tiered combobox menu by scanning a shared IR folder
[2] Load 2 default IRs when launched - NOTE - This is where the code that loads the suspect IRs is
[3] Allows the user to load their own IRs
HiseSnippet 5083.3oc6cs0aiijclxtoaa0SOWxN6lj2HTR.r231iHssrrGjc78dbFq1FRd3r.wKZPQUxhaSQpPRYasaZr8i4w8k.jGyKA4uQdJOm+AY+IL+.Bvrmp3spHqhVRc6dbOPZvzvrN04RcpyWwCqhUwy8bMQ99tdRkJewnAHoRejbqQNA8NnmgkizIGJU5SjewdMTt.4GnTccsZR6OZfguOpiToRy+bbkJszijH+99uZeCaCGSTZQRR5tVlnSs5aEjV5469MV11GazAcgUepZuwtmX55bfqs6PvflWtpz.CyWYbE5EF3pMmrzWa32SpzuT1ryFlaXVq8FpFFc2RscMT65paohpatYmsMMML2rso55qaHUZgi5XE350JvH.4KU5Q661YTqdt23Dp.cKeq11H7EpRs.MGV7wt1cvMQboRGzyxty4wdJeIoRxmm52lOzu84xMr5XkTdp+6SIDTR4f1AVZNVyadFySk17pRYdbLoRTljbnI8YxsL8rFDjRAaOOQ9Dm.jWWCneh1Tdwv96Mrik6wV1XKQtz7PORn.jlq8mIefKvlSvZ8MdE5XO3hDwrbspUWUA9mU9xxk+hu34n.ECrjT5BhRYfqqcYna0OpTh7U9GTNx4JKGzZ1tFcR0KHS2yAFVFKJPVmaDzSIvUYf8Pn1J98L7PcT7P9PDhIRoKtaxKR5Vd3Z+7CAYW4fct7RnYekmQ+CMBLt7xm2yEpxgVWCNTWmJeIkriD5IMiDmeF4c7Pa6wPlWdooa+9tNuzxyuBwQzZ.xzpqkIVzC.QEI2fdnSZRT9jIzKu76Z8bE8KVu5kWtQ8zqTdlx2VeK3egdHzKOpyUn0tBKjJDO38zuDIevd6yq3245Cj7oPnB16ozA00XncfhoQ6x33mCLZqFGwP+iv.IL0wvlzASh8rffLk9tcFBWvpDKGaHlTo6PGy.v6qjJ7ee4kJuzW7EldH.np3192BAgcQdHXzNbLDXIJpJP+60t1CIrFI+xKY6ZBJG3.KHnKmL75ZWgBHQ8sL5OvFkfPWtBTqJPSgnMLRB2d0TP2F0Hn.V91tAIxuKDfD.ROROIxGipVFCLipmOBLxNhpnJ1IRTc6gv.LDkG41TbfwfSTGv5IMUe4MFWiChwQhMCiD2jDHhv970.pUhZI1wccbZHQcHDmWpaizfHiNPrrJ+9yad1+3QGbwKO9rSO7nluthxeOkUfafgMsTVv+SqQ9An9q00ys+ds8w8MHLxa4DL3JqE31Jvyx4JvKga8ulNH5naSicvxE4IHzjsppgkGB2u1vSocfyIMOkH.bHP7Pofu+.29C.XqSvxUnqTERzb1vQWG55fkhGLToYrHVEzk8PzJkiBV+tdHGVmNXasGFD.hxxWY.LLJL1+pJ1FfB5oXD1O21y8FejGzMFAy.eCNDGKHeh6ToxgtlC6CZzuR7PvzpaHlcejMxLvWwvAz5pDumhU.UWcDNwwsCRQs7RT8VgV.c+Wh9VUoqgsOZUkJ+xnA4VMw8rLzd.yckxKAs+oCqtzR3dqIFqtDlS7+m.YEgWiUAI5F5MJBvlQjP6z1N9VIJ3HZRogM5X4lDWis9PRzA3eYnDgHG.KfVa.TbPJVPkVqSNhcokhZUoPPVQ+Z3edMDWONg+q4iIRBvOvv1tMjG3xbC+SG1mFApEiM4hA0FGLn1XfA0JDC99FB91gA0.AL4fP7X7OHffSF9qE4dEhAfpu0.PMw.voGfEa1bPXZSDBSaLPXZ4PXSVlgvu8+1SN8PrK6fyZr+Y6e1uNWUObDjWgEjRg8HElbN.DUaWk1t2pz1.fHJtc6B+eDUr+IDMjj6dGKOHV20aTnsx6tvGfE49t2J9VvI0PD1OoBEA7KuD6.rILg01I.T5BnKe4UJruhxR32Qk0Rh5kNvFEFER4.IFle4Ty.D3xUr.CwuxpUpD9TaMQP3HH9vHcRLXRHN3LMhxdh9AYr7HOyF4ItnS1xxgDa5WXFXzOc0JL2OOvCbiDa5b2ACswCfPGSfaQ2XgezsdQIkFGWPiedlhOf4FnXbiwnvlDYPRpggLb5jzVIXPGber+Rk655or7s3HrjFHY3bv4FNbVznZINYrE4OrsIT3UtdVf1iBYcxm.sxyfevCFBODs2upgkI9+O202BqarJ7PCrMLCEdEnUTAFDefgmADYmDzmHsP+Pkc1oBNjKt20nSGbP1xKea5HOpqrxZQhdYhXWkvFDCpDlqH4gbw8HYCduMSBx35lneWG.1triK1+sRAbpliSnev0quQP.3mvN7DGIbGlgYkz30RvirhATjeJT+JS+iBL+B2.zYNKGlu7qKqjkT2tboEA3rQdbIimRKuhXbYmg8ai7XxVGpnTIY14BRV7bAQOUUlgiePUQWmSbrBNa.xQzDXIEMnijToEirJnpAjYM5iil0nV1V.fQxpiToGK+MNtsUkHFb7z0sxk+eekjHl2mjhCg4mHC2S47d.hPiU.jeig.9Dr.faQGNYUpYEx2+UStPzlNg7wQBgzZTmtVCQFIIw9NPFiiW8SijQ7fDQcLIiYvwc7BTvMtduBO0hyE82PvBdBDWTFFDZu9CjzQd34nBGeTcM3+j1y118F7MwrfQsITJMOorycsGMnmqikItnvZfNnmgiCxdu9tCgHwRxklCzbCbxNDl22107Usr9cHLIrQ80F9WXXAMpRy0ZnODc24LmVfbHS3LdpTeAjFqToEN1fjG.dvL7bfhwGFvsw8VyLYNYSZBoS.JFJENMyIDwxKdxnCMAvxwY.SlJ5RyioiASmCiO2GAIwQtvyc.xKvBEOor3qFAbf06GIehuNlJjvijdnOGZ16659p9FDmsDquVVFB2dn4nKE5ne7X3nCsedd4mJCOD.T6.hvvidQ4FICaMlt+XyYAr9drbntuCSimAEy53p14nT6hx21EiEY06mRzKfCWKhJ+nsHh2kdYBrlKSf0mH+hg8obfQwVyKqkDQFW0EjafM7nZHK2rQKIoVPlDl8tvvCxBkHe5Bv9XXDEGD4FY9rWF4HNoCVxWgcfIlQXYj0HRZZj2iIxSku.oAc.NK9JnE0vxIowgAKMLtM4ZU35v3jvhNL74qop+lR6MLvExLIY4eXBu7GXaEHN7JjL+vqPZSS30Sk8c6F7x1Dwxp7+RZkSUI9PN5Z7VFu0puqaPOHiLxR3E4.ejrV0bAbBFzKC78wg3HBFTcZvuI7lerjpisWedJudT3Lio7DvT7PqckHiHhm6PcywD7NOUv6iSCdWT9YpUyF+hutU.ZP3v0eNbMTGxO0M1tppZMn4+JzMg1rToel7lqsgll1VU2ZqMpug55U2VJroQ.Q3mC8BWhvA.30PeD1FVR9PjoUajMMR.5v3alYwXKJisnIyLwUX8ppUWGpv1aWeis2ppZzZUlDlIvXWPlN9aAH9aspRRu+8nejbSD7X0gh8t7qLJmIiAIFTO0DjwFF9ykgmADG9rFcU3EPJKeRy69Vo3DErQ2hWARLhjZcfouBp3INcP2FJ+T+J4pDWJY8oYBvkmjQmS6KRGsFGtFPcKK0L8wKLQgioxsr74dnNHaiQiUzUb+068fKHxw.xjSHHPXjEWKMBjjZmKAEv2IkEjpos81U2XyZZZquQ8spuYz8R+ZqCFFHv1dh7wdn+4gPxiijxoOo21HimJ2.O83A87PFcFSb0GSeaPso+1oYjyCr6mFcKLKmqyzDKKCCo2aMfff6fQXYhtCVowCKlsaDqT5jwXXqP.IaeK6ye819vXLBPTXi56nvF0GjgMQoRo8VjFl1TkxUbF+STNWwLMKoqYIc8Vmz0GSmzk1zl00BPVWuT6dHsK0YocMKsqeBj105uit+45OHu+oLNGpIJqqPNl5jtdzjLmWEzccOlIkPo8tUOLi5EOmRFsaXcqzc4iZ31g9UOO90IJchxw8hGZ4az1FkDzigmvXJjeau4501Zi003Nqhi2TdlLavLy4YbOGMtcwvaUCsMUxxQIMI4cqNgMV1FDDKxnowqok4wkXZfkkS.E7aiZe.1FWerZiONLvF2OFR+dsQxHnwqMwNqwSVSR6gYSJyifItMMECF8smDmNWzZrSIjRkNDcskIJb6YfSev+UAtCfX7j27GHn+NWF9aSVn1cc2cTxE+w2ra.jK.1UfGtaP758iaUgqC2.5FZx3hcXB7iWB3+DdEwEYTBVd+TC6+XDkg8m9CQF1SwVghlRHXlud+9u5tLb5ADFOaL6aPPpcJcAsc9FF6TU4b2a.W+cYOLfWQMpowPE6PeSVG53anZSfg93w8MgPjC8Oj0gR5zFqNX07cvKLtuTEBLm+6+kHy4Ixg6LjlJpRV9MbwoXY3MJ9skYh0HcG0ebTwZTqXM9jw7E1HUguoKkBey06NzGcvP+.2932dtAgZH1HNHbI2gl8.Lw8rstxIL+RYY7.Q2X0AmrZ7nKC1sGx5pdT6bue0tjWaPo4929qkKeTeKGkCz2Zyc1Yys1Ymvc8A+RIaKobjf1LuxxU4C1PcCdxmtbQLkQGokRX3kpEQTil3Q0ptMOift7bFQDwLFQZo4XnwganoxSMLDDxVFE0TkuvnKOmrhHxWT7r4VM1ZedZgtbQLkQKokligucCtwXTEKfkLpHov7UuFeMTimTpITJ04Kk5r1IajWNpZ4ol0Bpm2BNTeqsxCFyVJeFRDOaY4pbdvX9xEwTFcjAuQSJOZKe4hXJiV3h1BIwAswgfP1xnHphywRdjX9xEwTF0vEIFRJORLe4hXJiV3hDCIkCIlqXArjQE7PhQTpwWC0JPC0DJr57EV8BDVB1RkewZ7KNTNMT9FCOGqqc8PrfQADDxFwewsXdrvBLERp.VyqubHTFprfTgjJf07ZLGZkgZF.qXZEwbdklG4xPlE7JjTArlWk4PwLTYAxBIU.q40XNDMCUFPsHJhYLu5xhtYIVSn1pUr1pIPa0JRa0Eps5Eqs5BzFKh+qOpkxgn9tNLvctkxmArF3TVtJy.wETtHlxnirHaJRLvZAkKhIPd6rCdG+vmVN1XAzhHHjsLMpb3XJZLfXAkKhoLpIK1khDCvUP4hXJiVxhWoHQCV4Wr.VxnhLXTZJ03qgZEngZ7zPMgZnNeMTu.MTmmFXwhmZY1KP4zCNFd39Mqx.HESp.VwZSDA9rw.RKhXgrySuYwrYoy.bKhXgrySyYQvYoyBiKjZwBfmxygpyVAFncQDKjcdpNKROKcF3dQDKjcdZNK5OKc5g.JfVQLySsYFQHG4ZEn0Z2kVqITq0JVq0KPq0uKsVWnVYG4H9TLgYLCdExs5XEjunrUkYrA9EKfEV4mcjfTJLiAvuXArvpgrH9TJrXcAkKhIVkjCYmRhASyuXArvphrH3TJLXW9EKfEVMjEolRgFixsT9LvJ9LHRJB03J8ZhkdMNRulHoWmqzqKV504H87HLcdHLcgHL87HLcAHLc9HL8BPX57PX5BQX57QX5Efvz4gvzEhvzEfvzKBgoyEgoKFgoyGgoW.BSmGBSWHBSmOBSu.DlNODltPDlNWDltXDlNGDltHDlNWDltXDlNGDltHDlNWDltXDlNGDlNGDlTeiawu5P++Qu6PYVGqmFspRmZfeo0rHKBL4uEtjY696hV.qedxBXoaYnre3ATCYckhWp9kVPR5G9AoITyjkNStz+dIIoQ3+3+B9i6WMtNca0gpsJED0VqH2.4LTYexwQxw3CAiVIGyHjCFRglA0Yv3itHZg7hdsEXORHwuIvTuOCzmCi3yqNGeqfQzqJ66ryIxw0D+L4ywaXS913bbrQ7aW28fMFc5Z9T4i51EYFjZfOR93e86uiRyxQQSfN4ssl4b5Y9nzSOyR+qxoGCDC7vmmGnKbO21Xzx9jyynlfEupR638gc9yNhnULmrSsW1Lb6b6OMGwDKL19H0h6hZ5NDepT0vHvyBifg1eKxYxYzlM2OdelGcc032nwVHmNjK9A3WDQU70khHpFSL8Ppf9vHnzG.aP94lsA4msA4msA4msA4msA4eWuA4W7g6d0hApv9dL+vdmawhw4rctV7g914J+nT+zae0KWZ4+FoB1hWK7tZKdk0YpJdOMc+usu32y9dOzbJ2JXSf0+.Z6gwZ0721XK7NdaiMQH3Y6f+6ycv+ieerC9u696Y6p+Y6p+2lc0+rLEmko3aYlhevdX.DJ+Y4JNKWwY4JN6XG3d6XGPdpO1A9QM8uYGEAyNJBlcTDHnM9iyQQ.u7HtuNdBV7GuimfouYdedjEPe7iOMGeAzqW+OKd85IYrdpKlYxsA97vRTvEofW6a7F0V72Rz+2w8aI5fw9aIZqQNljU1i58pf7RNbgmg4qv4qQoJrYdjSXWHU8aB21F+sgf9aYZ32jnVAFdAf3oERSDjCkOhoLbR7g27su7y24xFiTNzy5ZD9i.4uE+wZ5xlH3Ai6.lykPZjVHGEspZZJOS4ep4Q6c9QM+MWdH9K0xYcU9NK7KIzksvaH6KacwQMZob7YMUZr2EW97KZBbb3Ij+PE+QZRpO16JW5+r7bwujP+O+h+NIanYRr7XZ1j1cmX5klunOeppS4mO0G8f6ym5G.u4NLuVJKEaisrvAeGAIqaCPMhM9WHGMLSbor3rFtNtwuADzgpAdVWcE44SRrctMn8BB.3RZIe9tMQ1H7sDSJ5uc2SgbpM7xh1l.eg536KJp+5uRNzbUvCNn7g6ab07+j9Mt58xaSz6Ccz2vzy8kQuTK33zEIk.saGxP9KI2.esBmu6K8gQ4dooIqnxwn1zx35SKiaLsLt4zxXsokwslVFqe2LhuITzb3hglRRMN+HRlRkJkjlPo4k9y+o55AC -
@scottmire That snippet's too complicated. Put a file on your desktop called
ir.ghost, then try this one.HiseSnippet 1337.3ocuW80aaaCDmJIL+wsAXEs6ci9jyPmgjiiSLJFVSbhWC1RpQkWPeKfQhNlvThZRTIwanuuOA6y49FrcGkrkTpSWf2Vc.B7wi2we7te2czChUd7jDULwp1voQbh0SotSC0i6MlIBImdLwZSpHdHOQSNZZDKIg6SrrV8GPsVasFw74O+9iXRVnGuXIB4Bkvi+Sh.gtX0Au4GERYelOenHnzta+lS8Tg8TRUJfjUo1jHl2D107yY31VgRdKKYLw5anLuccrsa2we2qXrq7a0s8H9tc5z1Y2Qcsay5x5X2sicaGh05m3KzpXWMSySHVqcjxep6X0sgYGvEhDwURNJ3PbgSNa49JoOdEwUI8FKj9ClEhRHfWFTDvVMKf8B5YBew70KBbekQQ8BKJG.sVoJ7VsB7bJCO6RvaAPxpDjnYP5YTWuXQjtPChmmPOMTyiGwf7TYnbdZvgo9BUegDQB0xBxHYNfrxGsn8TfYg5lArI79wfvb2znis8qpC+amWWqFj.Sz0Ew0+t5nmbmln4AMulqMgz3FkV7XdxDsJZGTq4Bg5Z7RQbyqGqRzurvcYvn+Gb.uZ3knIFz5xBhj742vFuLaq0g8ZretkMS.Hf9GbuV4piEgWieuepTNfoGuyNudTZnmVnBqqBOWo4uKrwN09sZaU6i0peeUiFsPcXLJVIkv8bQpQ1d7myvFgoAWwieU8aXxT97MBDtpzD5CSSJyh8xRYk1nJ7zPg9cQ7vGhaSxyyv294SOloYH2JeMXeQ7Xs.gf0w7afJ6Ll1Vz7bITaWPCWKSIT.n7SkLc0pBr2QtBHFTgJhLqvDgdZ4dK+mUp7Xg3ynCDZuwKFiqr.LBQp+OvXdClsomLZD2SW.v0n8+vWttI0nypkLG9SoEUZO59HV+Nsf0GEyiXw7gpAR1zFIlB42C.+U0uRp7l3J9U9mVpDkgqivczvaLKLjKSVlJp0ezgJmOel58pTMzK4LFzR4N39B2eWX9kGuWN5vXvJXgUlrMJijEWdnuQ3ufO4JclGv.kNyTVpl7bt9VU7DSNJ+6vr4rDRhIHe4n6.3yiSPFq0FT6lvejCkR0s8TAQhbtLjoLqMPImFMVEJ7vkx1wLneXfJEN0b7WTHbzr7yrqBLVdHSHw5B2zDn6h+6BcA+XdK.xKOW4Ceai9LOHlOE62h0WX+IfLyia5MmTW4ZTvqvfe1q.prAzuyduPFTfaP.FpvWKLaJNffUwclE0xfBdVaiH3FkL0DQp.tulNRHg4aIMKukEgmpN4wCHLTK42MqEaoZlxRDranO+trS7LQ3EHONWhcWtD05OpgMMXw.jPTC9fNWBH6EFRQBQYSoNfrqlGkmPMxXzYcnEslSprui4iXoRck0HkNnMd3CZSJ7hM6G3rpQGDy84Pi.xP9c5gJiQ.s+FXdi4FPMOUrhuuOXruGX1r.LaR+VG66ewqBlW.xHBwONs6Z63zAp7mvuMiWPrdNculsa0p0916ue6CfmZZ20fcX3Gz6BZA7.PGGN5IthKWZzuNsUUruErvhClkALdiZ0pK7f385zp0tsOX+C1yf3MnuUzKU+.38Iz9w7eIEJdmR9jyqJpKVm7ukssM8LvuB83XNy+wDoJdKRUheEMlAYnDLldkr1KmlbAp0iMOe.c2NRolDvL8UWtm87kXJP.yKVcoW1fM7xsoYEnYPnoSzVzyP45NjaxSOyeXR.7SPtzyqpq9DCasrFt6xZX6k0v8VVC6rrFt+xZ3A+yFh+BwCS0pfrYyvr1AmXHgVVmDxf2gXlYP9anj9UcE
-
@scottmire As David has written, however if you need to load to a specific node, you can use this:
const IR1 = ScriptFX1.getAudioFile(0); const IR2 = ScriptFX1.getAudioFile(1); IR1.loadFile(ir.toString(ir.FullPath)); IR2.loadFile(ir.toString(ir.FullPath)); -
Thanks for the help....I really appreciate it. I knew my code was a bit slapped together and this is a great improvement.
I finally heard back from the developer that created the IRs to begin with and it appears that their IRs are XOR obfuscated. That would have been good info to know ahead of time. Very frustrating.