Fellow LUG'ers,
I have a simple perl script (below) used to assemble MnDOT traffic animations, long-term weather patterns, security camera images, etc. It's worked well for over 8 years running on different hardware and various linux distros.
Calls to ffmpeg create png files with normal 644 permissions, but mpeg files now get created with 600 (-rw --- ----). It didn't use to work that way when mpeg2encode was used. I have this issue on Red Hat Enterprise Linux Server release 5.8 (Tikanga) and a two year old Debian install.
Why the change? How can I restore the earlier behavior? Setting umask to 022 within the script doesn't work, but I can chmod files at the end.
I'm serving the mpegs from Apache and viewing with a browser plug in (QuickTime). They now appear "sticky" and "jerky." Older mpegs, created with the previous system, playback fine so the problem is not with Apache, browser, or plug-in. Newly created files are also much smaller (1.3M) compared to before (11M) , so I suspect the authors also chose a lower mpeg quality setting.
Is there an mpeg quality setting available in Image::Magick?
Here's my script.
#! /usr/bin/perl
# @(#) animate.pl - Craig A. Smith 2003-10-17
# Reads a series of images and writes an animation
# doesn't work: umask(022);
$sourcedir="/var/www/doggiecam/cam21";
$cameraname="back";
$outputdir="/var/www/doggiecam/animations";
use Image::Magick;
#### delete jpegs after 2 days
## find truncates fractions of 24 hrs periods, so +1 only matches after 2 days
system (rm -f `find $sourcedir -mtime +1 `);
$date = `date -I`;
chomp $date;
my($image, $x);
$image = Image::Magick->new;
#### get all jpg files
$x = $image->Read("$sourcedir/*.jpg");
warn "$x" if "$x";
##### Write mpeg
# #$x = $image->Resize(geometry=>'600x600');
$x = $image->Write("$outputdir/$date.$cameraname.mpeg");
warn "$x" if "$x";
##################################################################
# Example from www.imagemagick.org/www/perl.html#exam<http://www.imagemagick.org/www/perl.html#exam> (no longer found)
# reads three images, crops them, and writes a GIF animation sequence
#
# use Image::Magick;
# my($image, $x);
# $image = Image::Magick->new;
# $x = $image->Read('girl.png', 'logo.png', 'rose.png');
# warn "$x" if "$x";
# $x = $image->Crop(geometry=>'100x100"+100"+100');
# warn "$x" if "$x";
# $x = $image->Write('x.png');
# warn "$x" if "$x";
##################################################################
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.mn-linux.org/pipermail/tclug-list/attachments/20120718/ee1d7e6d/attachment.html>