Image-Animated-JPEG
view release on metacpan or search on metacpan
0.02 2018-03-02
- ajpegtran: provide integers only to jpegtran
- ajpegtran: fix handling of filenames with special chars
- playajpeg: fix drawing on newer Wx
- js: experimental JavaScript implementation / lib
- ajpeg2gif: convert ajpegs to gifs with mogrify+gifsicle
0.01 2016-11-02
- left alpha stage, feature lock
- added missing .desktop and .xml files
- makeajpeg: new --split mode allows to disassemble a
monolithic AJPEG to individual JPEG frame files
- gif2ajpeg: die on error from convert
- new ajpeg2gif offers the reverse operation of
gif2ajpeg, via mogrify and gifsicle
- new ajpegtran crops a whole AJPEG animation
lossless via jpegtran
0.01_2 2015-11-02
- Specifications: proposed MIME-Type is now image/ajpeg,
as previous use of a parameter to image/jpeg did not
bin/makeajpeg view on Meta::CPAN
'repeat|r:s' => \my $repeat,
'keep-mtime' => \my $keep_mtime,
'metadata-filename' => \my $metadata_filename,
'split' => \my $split,
'debug|d' => \my $debug,
'force|f' => \my $force,
'help|h' => \my $help,
) or pod2usage(2);
pod2usage(1) unless !$help;
## split mode
if($split){
require Cwd;
require Path::Tiny;
Path::Tiny->import;
die " Can't process more than one file in split mode!\n" if @ARGV > 1;
die " Could not find file $ARGV!\n" unless -f $ARGV[0];
print " Splitting file $ARGV[0]\n" if $debug;
open(my $io_file, '<', $ARGV[0]) or die $!;
binmode($io_file);
print " Building file index... \n" if $debug;
my $index = Image::Animated::JPEG::index($io_file); # , { debug => $debug }
my $basename = path($ARGV[0])->basename(qr/\.\w{2,5}$/);
# my $path = path($ARGV[0])->parent; # relative to input-file
( run in 1.970 second using v1.01-cache-2.11-cpan-71847e10f99 )