Did you install from the zip file here: https://sites.google.com/a/webpagetest.org/docs/private-instances/releases/21 ? There is a video/templates directory with a bunch of template files in it. Video won’t work without them (maybe something is hiding the files in windows if you’re uploading from there?)
Yeah, that directory is there with 1-9.avs and bare.avs… I thought you were talking about content/work/video/templates, my apologizes.
Yes, that is the download link I used.
Sorry for the confusion. I may have to provide a replacement compare.php with logging enabled because it looks like it is having problems creating the zip file.
In your php.ini, how much memory is php configured to allow?
How many videos were you trying to compare?
Thanks,
-Pat
2 gigs memory and was trying 2 videos, even fails trying 1 video
Okay fixed it. The problem ended up being that pclZip couldn’t write to the directory after the zip file had already been created (hence why the #.avs file didn’t exist and it only contained 1 set of images). For future reference the error I ended up getting when I did the following echo $zip->errorInfo(true); was
PCLZIP_ERR_READ_OPEN_FAIL (-2) : Unable to open temporary file 'pclzip-4d3603fd043e1.tmp' in binary write mode
The fix was to edit the lib/pclzip.lib.php file and add
define( 'PCLZIP_TEMPORARY_DIR', '/tmp/' );
Now video works like a charm
Wow, nice find! I’ll see if I can configure pclzip at runtime to use the same tmp directory as the rest of webpagetest.
The video creation is now working but wow is it slow. If I do a compare with say cnn.com and foxnews.com the testing is normal, but video creation takes > 10 minutes but on wpt.org it’s < 1 minute. What can be done to speed this up? The window’s box is a vm and the specs are:
Windows XP SP 3
Intel Xeon CPU 2.27GHz
2GB or RAM[hr]
I should also point out that this box only has an onboard video card which may be the issue.
Video card wouldn’t be an issue, there isn’t any offload on the processing. 10 minutes is crazy-long.
The videos are rendered as part of the normal tester work. When the testers request work, if a video is pending it will get processed at a higher priority than any pending tests. That does mean though that if the tester is in the middle of a large job (bunch of runs for a slow site) that it won’t pick up the video job until the current one is done. Do you know if the agent was busy doing something else when the video was requested?
If you still have debugging on the urlblast log you can see the time between when x264 was launched and when it completed to make sure it is the actual render that took that long. There’s no good reason that it should ever take longer than a few seconds to actually create the video (they are short, at a low frame rate and there are usually a small number of actual frames to combine).
Thanks,
-Pat
Okay, I think I got it working correctly. During all my testing and what not, there were a lot of zip and unzipped files in work/video. Cleaning that all out seemed to do the trick, everything seems to be processing quickly.