QC crashes : too many videos ?

xniala's picture

Hello, I'm struggling with a new project. I'm in the middle of the river : too far to come back (lot of money and time spent) and I'm running out of time.

HARDWARE : Mac with Nvidia GTX 660 2Gb / 16 Gb RAM / Core i7 Haswell >> 4 XGA beamers (1024x768)

SOFTWARE : OS 10.9.4 / QC 4.6 / Millumin 1.45

WORKFLOW : I make a 4096x768 (4 x XGA) comp in QC. I send the video from a "render in image" patch to Millumin via Syphon. In Millumin I manage multi screen and split the video between the 4 beamers.

In my comp I want to display 112 videos (28 for each beamer). Each video is 110 pixels wide x 180 pixels high. I created 112 macro patches with 1 billboard and 1 movie player inside

PROBLEM : I can display without crashes up to 3x28 videos : FPS drop to 12-15 fps, but as soon as I try to display the 28 last videos : QC crashes.

ATTEMPTS TO FIX : I tried several resolutions (110x180 55x90 220x360 440x720) ; and codecs (Photo JPEG 50 75 ; ProRes proxy and LT I tried 15 and 10 fps for the videos. I tried to put the 112 patches outside the render in image : same FPS and it crashes the same way. I tried not to display in QC, just send through Syphon : same problem. I tried 32 and 64 bits modes (worst perfs in 64 bits) I tried v002 movie player

SO : Did I reach a kind of limit in QC in terms of numbers of Billboard or movie players ? Is my workflow too weird ? Do I lack methodology with QC (highly probable, I work with it since a few time) ?

So, does anyone have any advice ? I'd be very grateful !

Regards, Alain

gtoledo3's picture
Re: QC crashes : too many videos ?

I think the big issue, as opposed to it being a QC issue, is that playing that many movies that way isn't really reasonable in a programming/computing sense, in any system (that i know of)…if the CPU can't handle it. It's probably crashing because it's such an intensely heavy task to request of a computer. I'm amazed it can do as much as you say works! Another compounding issue may simply be trying to read that much info from hard disk at once.

You might be able to get by, by using a system with a better CPU/GPU. You could also possibly use multiple machines, and network sender/receiver (or 1024 network) to synch the computers.

Personally, I would try to reduce some of the tiled movies into just one movie, somehow. Whether you render that in QC or outside. I don't know if that's possible for that to happen and you still to maintain all the aspects of your gag.

Maybe you could try using the CoGe HAP movie player with HAP encoded movies, and see if it gets you by, as it will move some processing to the GPU.

I'd recommend that if a gig like that comes up again - no matter what programming system you are using in the future - to shy away from agreeing to play that many simultaneous streams at once, and combine all of the movie rasters into one/a few different movies, to drastically decrease the load on your computer.

Achim Breidenbach's picture
Re: QC crashes : too many videos ?

If the FPS drops, usually the system is at its limits, however it doesn't mean that it has to crash. I guess the crash happens because in your case it means that movie buffers are building up and QC crashes because it can't acquire more memory for them. This is just a guess. Can you please post a crash log, so I can have a look at it?

George's suggestion to combine multiple video it one sounds a bit strange at the first sight, but it makes totally sense because this will reduce the overhead for processing so many movies simultaneously.

xniala's picture
Re: QC crashes : too many videos ?

First of all thanks you two for helping me !

I tried to reencode all the videos with Hap codec, as George suggested me. Then I changed the player for half videos (56) for the Coge Hap movie player ; the other half always uses the classic one. And... no improvement, the composition is still crashing.

I put the crash log and the compo in attachment, so if you could get a look...

Thanks again Alain

PreviewAttachmentSize
crash log.rtf223.83 KB
TIS_04.qtz317.12 KB

Achim Breidenbach's picture
Re: QC crashes : too many videos ?

From the crash log I can read that QC is running out of memory and crashes:

(read from bottom to top) Some code in QC ist trying to instantiate an object and needs memory for it:

Thread 198 Crashed: 0 com.apple.CoreFoundation 0x9128736e CFStringCreateWithFormat + 46 1 com.apple.CoreFoundation 0x913b399f couldNotInstantiate + 63 2 libobjc.A.dylib 0x9106b656 +[NSObject allocWithZone:] + 24 3 com.apple.CoreFoundation 0x91250821 +[NSArray allocWithZone:] + 113

As you are running almost at 4 GB of RAM QC can't get the requested memory and crashes.

TOTAL, minus reserved VM space 3.7G

1) I also could read from the crash log that you are performing a lot of file accessor tasks with the "Directory" scanner patch:

12 com.apple.QuartzComposer 0x9add11c9 -[QCDirectoryScanner _folderThread:] + 498

This causes a lot of threads, that are all watching the file system and waiting for changes. You easily can prevent this by moving the "Directory"-Scanner out of each the "Movie Rendering"-Macros just having one in the "Render in Image"-patch level. Instead of feeding in the "Directory Location" to each of the Movie Rendering- Macros you put in the "File List" output of the Directory Scanner. Inside the Movie Rendering you connect the file list to the first Structure Index Member. This should decrease the amount of threads your process acquires.

2) However I remember that a certain application can only have a certain amount of open files (and this number is not as high as someone would have expected!). But I am not sure if this is true just for sandboxed applications.

3) You have installed lots of QC plugins that you don use in your composition. You have to know that they all get loaded and even that they don't get called they may cause trouble. I would recommend to remove all the plugins you don't rely on.

4) I have no experience with Hap codec but I suggest that you use "Apple Intermediate" codec, because this is a codec that Apple has tested a lot and will run perfectly on your machine.

xniala's picture
Re: QC crashes : too many videos ?

Hello,

I worked on my composition according to point 1 & 4, without visible improvements... I'll try to change my plans and to combine videos in order to deal with half : 56.

But your advices highlight my lack of computing knowledge. My first job is video editor, so I don't have any ideas about programming limitations or what 112 video players mean in a programming world....

macsrv's picture
Re: QC crashes : too many videos ?

Hi Based on thread and comments I read I can recommend a couple of things: First, get away from Mavericks. In it quicktime is a deprecated technology in favor of CoreVideo, and QC is still heavily connected to it. Second, buy more RAM. Usually helps and as I read in the comments this appears to be one of your problems. But the most important thing I can recommend you is that you should use an ARRAY or an SSD drive, as you need a lot of data to be acquired simultaneously. I´ve made some similar a few years ago (under Snow Leopard with QLab 2) but in a lower resolution and RAID in a Mac Pro with the original GPU (don't remember which one but it was the base system one)and worked flawlessly Hope it helps

xniala's picture
Re: QC crashes : too many videos ?

Hello,

I forgot to mention that all my video files are on a SSD. About RAM : I've got 16 GB on my computer, are you sure it's not enough ?

macsrv's picture
Re: QC crashes : too many videos ?

Hi Alain Sorry I didn`t saw your complete conf. In a normal case that should be more than enough RAM. And running from an SSD should give you enough bandwidth, how wide is the link of the SATA bus, 3 or 6 Gb/s? Is it possible to add a second video card? Maybe you can try, so the load is divided into two GPUs. Regards Ivan

Achim Breidenbach's picture
Re: QC crashes : too many videos ?

xniala wrote:
About RAM : I've got 16 GB on my computer, are you sure it's not enough ?

If you are running QC in 32 bit mode it can only use 4GB anyways. You can use the "Activity Monitor" app by Apple to inspect the running process if memory piles up over time or if you have many threads running in QC.

cwilms's picture
Re: QC crashes : too many videos ?

Have you run the comp with Activity Monitor open or bought a tool like iStat Menu to monitor your system resources? I use both when running a comp and it provides useful information to diagnose where the bottleneck is.

My guess is the same as others who have commented, you're likely reaching the limits of your system; either RAM, GPU or CPU, maybe even the SSD. I'd start by testing a full screen video at the desired resolution first because if your system can't play a full 4096x768 video back smoothly then it's certainly not going to be able to play multiple videos back at the same total resolution. Something you may want to try since you are using an SSD; with a comp that large using uncompressed (or lightly compressed) video clips that are preprocessed at the resolution you need them (maybe reduced to 12-15fps) is going to be less system intensive then a highly compressed video (or videos) would be because compressed video can require a lot of GPU and CPU power to decompress the video where as uncompressed mostly relies on system bandwidth. Monitoring your system resources will give you an indication as to which one is going to give you better results.

xniala's picture
Re: QC crashes : too many videos ?

Thank you all for your time and your answers. Il reduce framerate to 10 fps for all videos, use Photo JPEG codec.

And I reduce the max numbers of movies playing together. I play max 50 videos (and not 56) , and it goes well.

This way I maintain the global FPS composition around 10 fps. Below, it's starting to turn wrong.

Thanks again,

regards, Alain