<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">NAME
    Video::Generator - Perl class for video generation.

SYNOPSIS
     use Video::Generator;
     my $obj = Video::Generator-&gt;new(%parameters);
     my $type = $obj-&gt;create($out_path);

METHODS
    "new(%parameters)"
             Constructor.

            *       "delay_generator"

                     Delay generator.
                     Default value is object below:
                       Video::Delay::Const-&gt;new(
                               'const' =&gt; 1000,
                       )

            *       "duration"

                     Video duration used for implicit 'video_pattern' parameter.
                     Possible suffixes are:
                     - ms for milisendons.
                     - s for seconds.
                     - min for minute.
                     - h for hour.
                     Default value is 10000 (10s).

            *       "ffmpeg_video_codec"

                     FFmpeg video codec.
                     Default value is undef, use default ffmpeg.

            *       "fps"

                     Frames per second.
                     Default value is 60.

            *       "height"

                     Height.
                     Default value is 1080.

            *       "image_generator"

                     Image generator.
                     Default value is object below:
                       Image::Random-&gt;new(
                               'height' =&gt; $self-&gt;{'height'},
                               'type' =&gt; $self-&gt;{'image_type'},
                               'width' =&gt; $self-&gt;{'width'},
                       )

            *       "image_type"

                     Image type used for implicit 'image_generator' parameter.
                     List of supported types: bmp, gif, jpeg, png, pnm, raw, sgi, tga, tiff.
                     Defult image type is 'bmp'.

            *       "temp_dir"

                     Temporary dir.
                     Default value is File::Temp::tempdir().

            *       "verbose"

                     Verbose mode.
                     Default value is 0.

            *       "video_pattern"

                     Video pattern generator.
                     Default value is object below:
                       Video::Pattern-&gt;new(
                               'delay_generator' =&gt; $self-&gt;{'delay_generator'},
                               'duration' =&gt; $self-&gt;{'duration'},
                               'fps' =&gt; $self-&gt;{'fps'},
                               'image_generator' =&gt; $self-&gt;{'image_generator'},
                       )

            *       "width"

                     Width.
                     Default value is 1920.

    "create($out_path)"
             Create video.
             Returns undef.

ERRORS
     new():
             From Class::Utils:
                     Unknown parameter '%s'.
             From Image::Random:
                     Image type '%s' doesn't supported.
             From Video::Pattern:
                     Parameter 'duration' must be numeric value or numeric value with time suffix.
                     Parameter 'fps' must be numeric value.

     create():
             Error with command '%s'.
                     STDERR, %s
                     ..

EXAMPLE1
     # Pragmas.
     use strict;
     use warnings;

     # Modules.
     use File::Path qw(rmtree);
     use File::Spec::Functions qw(catfile);
     use File::Temp qw(tempdir);
     use Video::Generator;

     # Temporary directory.
     my $temp_dir = tempdir();

     # Object.
     my $obj = Video::Generator-&gt;new;

     # Create video.
     my $video_file = catfile($temp_dir, 'foo.mpg');
     $obj-&gt;create($video_file);

     # Print out type.
     system "ffprobe -hide_banner $video_file";

     # Clean.
     rmtree $temp_dir;

     # Output:
     # Input #0, mpeg, from '/tmp/GoCCk50JSO/foo.mpg':
     #   Duration: 00:00:09.98, start: 0.516667, bitrate: 1626 kb/s
     #     Stream #0:0[0x1e0]: Video: mpeg1video, yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 104857 kb/s, 60 fps, 60 tbr, 90k tbn, 60 tbc

EXAMPLE2
     # Pragmas.
     use strict;
     use warnings;

     # Modules.
     use File::Path qw(rmtree);
     use File::Spec::Functions qw(catfile);
     use File::Temp qw(tempdir);
     use Video::Generator;

     # Temporary directory.
     my $temp_dir = tempdir();

     # Object.
     my $obj = Video::Generator-&gt;new(
             'verbose' =&gt; 1,
     );

     # Create video.
     my $video_file = catfile($temp_dir, 'foo.mpg');
     $obj-&gt;create($video_file);

     # Clean.
     rmtree $temp_dir;

     # Output:
     # Video pattern generator created images for video in temporary directory.
     # Created video file.
     # Removed temporary directory.

DEPENDENCIES
    Class::Utils, Error::Pure, FFmpeg::Command, File::Path,
    File::Spec::Functions, File::Temp, IO::CaptureOutput, Image::Random,
    Readonly, Video::Delay::Const, Video::Pattern.

SEE ALSO
    Image::Random
        Perl class for creating random image.

    Image::Select
        Selecting image from images directory.

    Image::Select::Array
        Selecting image from list with checking.

    Image::Select::Date
        Selecting image from images directory by date.

    Video::Delay
        Perl classes for delays between frames generation.

    Video::Pattern
        Video class for frame generation.

REPOSITORY
    &lt;https://github.com/tupinek/Video-Generator&gt;.

AUTHOR
    Michal Ĺ&nbsp;paÄŤek &lt;mailto:skim@cpan.org&gt;

    &lt;http://skim.cz&gt;

LICENSE AND COPYRIGHT
     Â© 2014-2015 Michal Ĺ&nbsp;paÄŤek
     BSD 2-Clause License

VERSION
    0.07

</pre></body></html>