Provided by: libwww-youtube-download-perl_0.58-1_all bug

NAME

       WWW::YouTube::Download - Very simple YouTube video download interface

SYNOPSIS

         use WWW::YouTube::Download;

         my $client = WWW::YouTube::Download->new;
         $client->download($video_id);

         my $video_url = $client->get_video_url($video_id);
         my $title     = $client->get_title($video_id);     # maybe encoded utf8 string.
         my $fmt       = $client->get_fmt($video_id);       # maybe highest quality.
         my $suffix    = $client->get_suffix($video_id);    # maybe highest quality file suffix

DESCRIPTION

       WWW::YouTube::Download is a library to download videos from YouTube. It relies entirely on scraping a
       video's webpage and does not use YT's /get_video_info URL space.

METHODS

       new()
             $client = WWW::YouTube::Download->new;

           Creates a WWW::YouTube::Download instance.

       download($video_id [, \%args])
             $client->download($video_id);
             $client->download($video_id, {
                 fmt      => 37,
                 filename => 'sample.mp4', # save file name
             });
             $client->download($video_id, {
                 filename => '{title}.{suffix}', # maybe `video_title.mp4`
             });
             $client->download($video_id, {
                 cb => \&callback,
             });

           Download the video file.  The first parameter is passed to YouTube video url.

           Allowed arguments:

           "cb"
               Set a callback subroutine, SEE LWP::UserAgent ':content_cb' for details.

           "filename"
               Set  the  filename,  possibly using placeholders to be filled with information gathered about the
               video.

               "filename" supported format placeholders:

                 {video_id}
                 {title}
                 {user}
                 {fmt}
                 {suffix}
                 {resolution}

               Output filename is set to "{video_id}.{suffix}" by default.

           "file_name"
               DEPRECATED alternative for "filename".

           "fmt"
               set the format to download. Defaults to  the  best  video  quality  (inferred  by  the  available
               resolutions).

       playback_url($video_id, [, \%args])
             $client->playback_url($video_id);
             $client->playback_url($video_id, { fmt => 37 });

           Return  playback  URL  of  the  video. This is direct link to the movie file.  Function supports only
           "fmt" option.

       prepare_download($video_id)
           Gather data about the video. A hash reference is returned, with the following keys:

           "fmt"
               the default, suggested format. It is inferred by  selecting  the  alternative  with  the  highest
               resolution.

           "fmt_list"
               the list of available formats, as an array reference.

           "suffix"
               the filename extension associated to the default format (see "fmt" above).

           "title"
               the title of the video

           "user"
               the YouTube user owning the video

           "video_id"
               the video identifier

           "video_url"
               the URL of the video associated to the default format (see "fmt" above).

           "video_url_map"
               an hash reference containing details about all available formats.

           The  "video_url_map"  has  one  key/value pair for each available format, where the key is the format
           identifier (can be used as "fmt" parameter for "download", for example)  and  the  value  is  a  hash
           reference with the following data:

           "fmt"
               the format specifier, that can be passed to "download"

           "resolution"
               the resolution as widthxheight

           "suffix"
               the suffix, providing a hint about the video format (e.g. webm, flv, ...)

           "url"
               the URL where the video can be found

       ua([$ua])
             $self->ua->agent();
             $self->ua($LWP_LIKE_OBJECT);

           Sets and gets LWP::UserAgent object.

       video_id($url)
           Parses given URL and returns video ID.

       playlist_id($url)
           Parses given URL and returns playlist ID.

       user_id($url)
           Parses given URL and returns YouTube username.

       get_video_url($video_id)
       get_title($video_id)
       get_user($video_id)
       get_fmt($video_id)
       get_fmt_list($video_id)
       get_suffix($video_id)

AUTHOR

       xaicron <xaicron {@} cpan.org>

CONTRIBUTORS

       yusukebe

BUG REPORTING

       Plese use github issues: <https://github.com/xaicron/p5-www-youtube-download/issues>.

SEE ALSO

       WWW::YouTube::Info           and           WWW::YouTube::Info::Simple.           WWW::NicoVideo::Download
       <http://rg3.github.io/youtube-dl/>

LICENSE

       This library is free software; you can redistribute it and/or modify it under  the  same  terms  as  Perl
       itself.

perl v5.20.2                                       2015-06-25                        WWW::YouTube::Download(3pm)