- Timestamp:
- Oct 10, 2009, 2:37:54 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
projects/CDDBeditor/bin/CDDBeditor
r855 r858 21 21 use lib qw (lib); 22 22 use locale; 23 # > 2.27 23 24 use CDDB_get qw( get_cddb get_discids ); 24 use CDDB;25 25 use Encode; 26 26 … … 31 31 my @date = pb_get_date(); 32 32 my $pbdate = strftime("%Y-%m-%d", @date); 33 34 pb_temp_init(); 33 35 34 36 =pod … … 180 182 $ce_config{"HTTP_PROXY"}=$ENV{http_proxy} if $ENV{http_proxy}; 181 183 $ce_config{"input"}=0; 184 $ce_config{"HELLO_ID"} = "bruno musique-ancienne.org fastrip 0.77"; 185 $ce_config{"PROTO_VERSION"} = 6; 182 186 183 187 # First panel for configuration parameters … … 256 260 $ce_config{"CD_DEVICE"}=$dev_entry->Get(); 257 261 $ce_config{"input"}=$user_group->Get(); 258 $ce_config{"HELLO_ID"} = "bruno musique-ancienne.org fastrip 0.77";259 262 260 263 # Components … … 279 282 my %ce_cd = get_cddb(\%ce_config); 280 283 281 # Modify enconding of some fields 282 $ce_cd{artist} = decode("iso8859-1",$ce_cd{artist});283 $ce_cd{title} = decode("iso8859-1",$ce_cd{title});284 # Modify enconding of some fields if proto < 5 285 #$ce_cd{artist} = decode("iso8859-1",$ce_cd{artist}); 286 #$ce_cd{title} = decode("iso8859-1",$ce_cd{title}); 284 287 285 288 # Third panel to display CD Infos … … 344 347 my $min=int($dur/75/60); 345 348 my $sec=int($dur/75)-$min*60; 346 my $frm=($dur-$sec*75-$min*75*60)*100/75;349 #my $frm=($dur-$sec*75-$min*75*60)*100/75; 347 350 my $tr = sprintf "Track %2d:", $n; 348 351 my $track_label = Newt::Label($tr); 349 352 $tr = sprintf " %2d':%.2d", $min, $sec; 353 # Adapt encoding of track if proto < 5 354 #$ce_cd{track}[$n -1] = decode("iso8859-1",$ce_cd{track}[$n -1]); 355 350 356 my $dur_label = Newt::Label($tr); 351 357 $flag = NEWT_FLAG_WRAP|NEWT_ENTRY_SCROLL; 352 # Adapt encoding of track353 $ce_cd{track}[$n -1] = decode("iso8859-1",$ce_cd{track}[$n -1]);354 358 my $track_entry = Newt::Entry($width, $flag, $ce_cd{track}[$n-1]); 355 359 $ce_panel->Add(0, 8+$n, $track_label); … … 383 387 $width = 40; 384 388 my $height = 25; 385 my $info_tb = Newt::Textbox($width, $height, $flag, Dumper(keys %ce_cd));386 389 387 390 Newt::DrawRootText(ce_center_string($ce_title), 1, $ce_title); 388 391 Newt::PushHelpLine($ce_help); 392 393 ce_prepare_mail(\%ce_cd); 394 open(TEXT,"$ENV{'PBTMP'}/mail.txt") || die "Unable to open $ENV{'PBTMP'}/mail.txt"; 395 my $txt = ""; 396 #my $txt = pb_get_content("$ENV{'PBTMP'}/mail.txt"); 397 while (<TEXT>) { 398 next if (/^#/); 399 $txt .= $_; 400 } 401 my $info_tb = Newt::Textbox($width, $height, $flag, $txt); 389 402 390 403 Newt::Cls(); … … 413 426 } 414 427 428 sub ce_prepare_mail() { 429 430 my $ce_cd = shift; 431 432 open(MAIL, "> $ENV{'PBTMP'}/mail.txt") || die "Unable to create $ENV{'PBTMP'}/mail.txt"; 433 print MAIL "# xmcd CD database file\n#\n# Track frame offsets:\n"; 434 my $n=1; 435 while ( $n <= $ce_cd->{tno} ) { 436 print MAIL "# ".$ce_cd->{frames}[$n-1]."\n"; 437 $n++; 438 } 439 my $from=$ce_cd->{frames}[0]; 440 my $to=$ce_cd->{frames}[$ce_cd->{tno}]; 441 my $dur=$to-$from; 442 my $sec=int($dur/75); 443 my $rev = $ce_cd->{revision} + 1; 444 print MAIL "#\n# Disc length: $sec seconds\n#\n"; 445 print MAIL "# Revision: $rev\n"; 446 print MAIL "# Processed by: cddbd v1.5PL3 Copyright (c) Steve Scherf et al.\n"; 447 print MAIL "# Submitted via: CDDBEditor $projver-$projrev\n"; 448 print MAIL "DISCID=$ce_cd->{id}\n"; 449 print MAIL "DTITLE=$ce_cd->{title}\n"; 450 print MAIL "DYEAR=$ce_cd->{year}\n"; 451 print MAIL "DGENRE=$ce_cd->{genre}\n"; 452 $n=1; 453 while ( $n <= $ce_cd->{tno} ) { 454 print MAIL "TTITLE$n=$ce_cd->{track}[$n-1]\n"; 455 $n++; 456 } 457 print MAIL "EXTD=\n"; 458 $n=1; 459 while ( $n <= $ce_cd->{tno} ) { 460 print MAIL "EXTT$n=\n"; 461 $n++; 462 } 463 print MAIL "PLAYORDER=\n"; 464 close(MAIL); 465 } 466 415 467 1;
Note:
See TracChangeset
for help on using the changeset viewer.