The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Media::Convert::Asset::PNGGen - Generate a video from a (list of) PNG files

SYNOPSIS

  use Media::Convert::Asset;
  use Media::Convert::Asset::PNGGen;
  use Media::Convert::Pipe;

  my $input = Media::Convert::Asset::PNGGen->new(url => $input_png_filename);
  my $output = Media::Convert::Asset->new(url => $output_filename);

  Media::Convert::Pipe->new(inputs => [$input], output => $output)->run;

DESCRIPTION

This module uses the lavfi (the "libavfilter input virtual device", you figure out how that matches the abbreviation) functionality in ffmpeg to convert an image file into a video.

It will automatically match the input framerate to the output framerate; this means that the framerate on the output file must be set, either through a profile or by setting it explicitly.

ATTRIBUTES

audio_channels

The option to give to the channel_layout attribute of the anullsrc audio source. Defaults to "mono".

loop

If truthy, loops over the PNG files given. Useful if there is only one PNG file, but then a video length for the output file should be given. If falsy, stops after all the input files are processed.

Defaults to true.

BUGS

This module does not work correctly with Media::Convert::Map. If you need to create a map, first generate a video with this file and then initialize a regular Media::Convert::Asset object with it.