use Net::FreeDB; use CDDB; use Data::Dumper; use strict; use warnings; { my $freedb = Net::FreeDB->new(); my $discdata = $freedb->getdiscdata(0); ### Connect to the cddbp server. my $cddbp = CDDB->new( Host => 'freedb.freedb.org', # default Port => 8880, # default Login => 'zappa', # defaults to %ENV's Debug => 0, ) or die $!; ### Query discs based on cddbp ID and other information. my( $cddbp_id, $track_offsets, $total_seconds ) = ( $discdata->{ID}, $discdata->{TRACKS}, $discdata->{SECONDS} ); for my $disc ( $cddbp->get_discs($cddbp_id, $track_offsets, $total_seconds ) ) { my ($genre, $cddbp_id, $title) = @$disc; ### Query disc details (usually done with get_discs() information). my $disc_info = $cddbp->get_disc_details($genre, $cddbp_id); print $/, Dumper($disc_info), $/; } } exit();