App-YTDL
view release on metacpan or search on metacpan
0.216 2015-05-18
- Code refactoring.
0.215 2015-05-15
- Bugfix: filter negated regexp.
- Removed old history format support.
0.214 2015-05-14
- Removed option "Logging".
- Bugfix visibility cursor.
- Update documentation.
0.213 2015-05-13
- New option "download archive".
- New option "Skip archived videos".
- Deprecated option "Logging".
- Bugfix: handle undefined preferred qualities.
- Code refactoring.
- Update documentation.
bin/getvideo view on Meta::CPAN
use Encode qw( encode decode );
use File::Path qw( make_path );
use File::Spec::Functions qw( catdir catfile curdir );
use Getopt::Long qw( GetOptions );
use Pod::Usage qw( pod2usage );
use Encode::Locale qw( decode_argv );
use File::HomeDir qw();
use File::Which qw( which );
use Term::ANSIScreen qw( :cursor :screen );
use Term::Choose qw( choose );
use Term::Form qw();
use App::YTDL::Arguments qw( from_arguments_to_choices );
use App::YTDL::Download qw( download );
use App::YTDL::Helper qw( uni_capture );
use App::YTDL::History qw( add_uploaders_to_history read_history_files choose_videos_from_saved_uploaders edit_sticky_file );
use App::YTDL::Video_Info qw( print_video_infos );
use App::YTDL::Options qw( read_config_file set_options get_defaults );
lib/App/YTDL/Download.pm view on Meta::CPAN
package # hide from PAUSE
App::YTDL::Download;
use warnings;
use strict;
use 5.010000;
use Exporter qw( import );
our @EXPORT_OK = qw( download );
use Term::ANSIScreen qw( :cursor :screen );
use Term::Choose qw( choose );
use App::YTDL::Helper qw( HIDE_CURSOR SHOW_CURSOR uni_system );
END { print SHOW_CURSOR }
sub _choose_fmts {
my ( $data, $ex, $up, $id, $title ) = @_;
my $fmt_to_info = $data->{$ex}{$up}{$id}{fmt_to_info};
lib/App/YTDL/Video_Info.pm view on Meta::CPAN
App::YTDL::Video_Info;
use warnings;
use strict;
use 5.010000;
use Exporter qw( import );
our @EXPORT_OK = qw( print_video_infos );
use List::MoreUtils qw( none );
use Term::ANSIScreen qw( :cursor :screen );
use Term::Choose::LineFold qw( line_fold print_columns cut_to_printwidth );
use Term::Choose::Util qw( get_term_size );
use App::YTDL::GetData qw( get_download_info );
use App::YTDL::ExtractData qw( extract_data_single );
sub print_video_infos {
my ( $set, $opt, $data, $chosen ) = @_;
if ( ! %$data ) {
( run in 0.258 second using v1.01-cache-2.11-cpan-4d50c553e7e )