1

I need to generate large-scale print of audio waveform. I still do not have exact dimensions of final print, but it should be around 5-7 meters long "one-off" print. So far I've been able decode audio-file (using FMOD) and render waveform to vector files (using Cairo) by custom application written in Cinder. I've chosen vector files over bitmap, because I do not want to lose quality. Luckily, Cairo is able to export ESP, SVG, PostScript or PDF format.

Problem is that Cairo is not able to handle huge amount of data, so I had to split waveform in hundreds of smaller files and now I have to stitch them together somehow and prepare them for print. But stitching them manually is out of question, as I'm having 400 and more files ranging is size from 2 MB to 17 MB (depending of format). I've tried stitching couple of them in Illustrator, but it was problem just with 10 files (my workstation stated to drag really hard).

Is there some feature I'm missing in Illustrator, or is there some tool to stitch them together without opening files?

  • probably scripting could help but I have a doubt you can find an exact script you need and probably to write it by yourself is even harder than pay money for. Probably you should find some way to lessen the size of the files.... – Ilan Mar 31 '14 at 14:44
  • well this is probably quite trivial to do by writing a postscriptwapper but then the entire waveforn would be even easier to generate. Is there some effect on top of the waveform? – joojaa Mar 31 '14 at 14:54
  • nope, it's just load of black lines. – sphere42 Mar 31 '14 at 15:26
  • how many samples are there as this may become a issue and the stack must be partitioned so the printer can load it in stages. in any case i would go into stack overflow i think its more technical than a gfx issue. – joojaa Mar 31 '14 at 16:44
  • 2
    I think the problem of hard to load vector files starts when you decode the audio. You probably sample it at a very high frequency which results in a waveform with lots of lines. You won't see those lines as they're too close to each other, but they are present in the vector file. See if you somehow can reduce the amount of samples you take when decoding the audio to a waveform. Overall this question is better asked at stackoverflow.com – Saaru Lindestøkke Apr 30 '14 at 21:50
1

I think Bart Arondson is right: you probably have way too many samples/vector points.

Let's say you're plotting every sample of an mp3 with a 44.1kHz sample rate. This means that for every second of audio, you will end up with 44,100 vector points.

One second of audio would result in a vector point every 6.3mm on a 7 meter banner. Longer audio would only reduce that distance even further. You probably would end up with a very jagged looking graphic.

If i were you, I'd do it all over again, this time reducing the sample rate. You'd be surprised how low you can go without losing esthetic value. A vector point every few centimeters, connected by a nice Bezier curve would do the trick.

Good luck!

0

I don't know what resolution you need in the final print, but 500-700 cm is one heck of an output file, and you apparently have several gigabytes of data to concatenate. If Illustrator started to grind on 2.5% of your files, I'd say there is too much vector information for it to render quickly on screen, so you may have success in wireframe mode.

One approach that may work is to use Image Processor Pro (part of Dr Brown's Services) to create a folder of png or jpeg files of the correct resolution. "Correct" here means whatever you actually need. For an image of this size I would suggest no higher than 150 ppi, but that's your call. Image Processor Pro can take PDF or EPS as input -- basically any format that Photoshop can open.

Next, use a panorama stitching application such as Hugin that allows you to specify that files should be stitched edge-to-edge.

The resulting "panorama" could then be printed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.