---
name: "Media::Convert::Asset::PNGGen"
section: "3pm"
platform: "linux"
package: "libmedia-convert-perl"
version: "1.4.1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Media::Convert::Asset::PNGGen"
---

# Media::Convert::Asset::PNGGen(3pm)

Generate a video from a (list of) PNG files

## 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.
