Cabbage Logo
Back to Cabbage Site

Image not showing in DAW

Hey Cabbages!

Apologies in advance for the question no doubt I’m overlooking something very easy however I have spent some time and still can’t seem to get things working.

Basically when I export my plugin as vst. and load it up in Ableton any image appears totally white in Ableton. The images work in Cabbage which is making me wonder what is wrong. I have the image file saved in the same folder as the .csd file.

I have tried looking on the forum for a solution and using cabbage 2.0, along with different image types all with no luck. I feel Ableton is not locating the image so tried saving the image into my vst. folder, again with no luck.
Below is an image of what appears in Ableton.

Any help is extremely appreciated thanks!

<Cabbage>
form caption("Untitled") size(400, 300), colour(58, 110, 182), pluginID("def1")
keyboard bounds(8, 158, 381, 95)

image bounds(8,8,384,139), file("Soundcloud-Header-3.png")  

			
Soundcloud-Header-3.png
</Cabbage>
<CsoundSynthesizer>
<CsOptions>
-n -d -+rtmidi=NULL -M0 -m0d --midi-key-cps=4 --midi-velocity-amp=5
</CsOptions>
<CsInstruments>
; Initialize the global variables. 
sr = 44100
ksmps = 32
nchnls = 2
0dbfs = 1

;instrument will be triggered by keyboard widget
instr 1
kEnv madsr .1, .2, .6, .4
aOut vco2 p5, p4
outs aOut*kEnv, aOut*kEnv
endin

</CsInstruments>
<CsScore>
;causes Csound to run for about 7000 years...
f0 z
</CsScore>
</CsoundSynthesizer>

You can use the bundle() identifier with the form widget to bundle images into the .vst so that it is seen by the DAW. In your case it might look like this:

form caption("Untitled") size(400, 300), colour(58, 110, 182), pluginID("def1")
keyboard bounds(8, 158, 381, 95)

image bounds(8,8,384,139), file("Soundcloud-Header-3.png") 

Btw, I went and formatted the code in your post. There is a format <> button in the editor when you create your message. It makes it much easier to read the post when the code has been formatted :wink:

Hey Rory,

Thanks for getting back I’ll make sure to use that feature next time cheers! However I can’t seem to see what needs changing or where to implement the bundle() identifier. Apologies for the noobish questions no doubt the answer is right in front of me :joy:

Sugar, I forgot to add that identifier in the code I pasted! Here you are:

form caption("Untitled") size(400, 300), colour(58, 110, 182), pluginID("def1"), bundle("Soundcloud-Header-3.png")
keyboard bounds(8, 158, 381, 95)

image bounds(8,8,384,139), file("Soundcloud-Header-3.png")

Btw, more info can be found here

Hey Rory,

I’m still having trouble with having an image show up in Ableton, could when you have a moment take a look at my code I just can’t seem to get it working correctly :frowning:`

Thank you!

    form caption("Untitled") size(400, 300), colour(58, 110, 182), pluginID("def1"), import("Poster-High-Res-1-.png"), bundle("./Users/Daryl/Desktop/ Final Year Project 1/Visual Design, Poster-High-Res-1-.png")
    keyboard bounds(8, 158, 381, 95)

    image bounds(8,8,384,139), file("Poster-High-Res-1-.png")



    </Cabbage>
    <CsoundSynthesizer>
    <CsOptions>
    -n -d -+rtmidi=NULL -M0 -m0d --midi-key-cps=4 --midi-velocity-amp=5
    </CsOptions>
    <CsInstruments>
    ; Initialize the global variables. 
    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs = 1

    ;instrument will be triggered by keyboard widget
    instr 1
    kEnv madsr .1, .2, .6, .4
    aOut vco2 p5, p4
    outs aOut*kEnv, aOut*kEnv
    endin

    </CsInstruments>
    <CsScore>
    ;causes Csound to run for about 7000 years...
    f0 z
    </CsScore>
    </CsoundSynthesizer>`

You don’t need to pass an absolute path to the bundle() identifier. Just pass it the same path you would the image() identifier, i.e, bundle(“Poster-High-Res-1-.png”). And you can pass as many images as you like in a single bundle() identifier. Btw, import() is not use in this situation. It’s intended for a different use altogether.

p.s. do you mind editing your post to fix the formatting of your code? I hate to be picky about this, but much of the contents of your csd file will be invisible to readers unless you format…

Thanks for getting back, I will have another attempt hopefully with more luck thanks.

And no problem I understand I was actually trying to do it but I could get the ‘preformatted text’ to work spent like 5 minutes editing and noda, perhaps I have picked the wrong hobby :joy:

Thanks again!

All you need to do is highlight the code and then press the preformatted text button. No worries. Anyhow, I tried a simple test here myself with the bundle identifier and it all worked fine. I’m sure the issue was with the path.

Hey Rory,

The issue has been found and it lies with me not having yet updated to cabbage 2.0 so I’ll be sure to use it from now on :+1:
As always thanks a mill for the help

1 Like

Sorry for my noob question on that topic but - when i export my synth on windows, everything works fine in cubase, also on other windows pcs. my files are all in a folder within the plugins root folder, called /files… When i export my plugin on mac, cubase on mac wont find the pictures. Do you have any idea why ?

Do you have the images included inside the bundle in the same directory as the .csd file? You know, there is a bundle identifier() that can be used with form that will automatically place the images beside the .csd file?

I did , but let me check that again. I was just wondering, in case something happened with the bundle id, why does it work on other PCs but not on MAC. Just a general question out of interest. By the way, thanks again for your help - awesome how you stay active and help others!

It’s down to how plugins are presented in the various platforms. On MacOS plugins are folders(bundles) that contain all the assets you might need, while on Windows plugins a single dll library. So on Windows we need to make sure the .csd file is in the same directory as the dll/vst3, and on MacOS we need to make that the .csd file is within the Contents folder of the plugin bundle.

THAT explains everything. Thank you so much!!