チェンジセット 8: trunk/install/perl

差分発生行の前後
無視リスト:
コミット日時:
2006/12/07 15:00:43 (17 年前)
コミッタ:
sorshi
ログメッセージ:

新エンコーダによりH.264対応、
複数同時録画時の信頼性向上、など

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • trunk/install/perl/foltia_conf1.pl.template

    r1 r8  
    2020$haveirdaunit = 1;#Tira-2<http://www.home-electro.com/tira2.php>をつないでいるときに1,なければ0 
    2121$mp4filenamestyle = 1 ;#0:PSP ファームウェアver.2.80より前と互換性を持つファイル名 1;よりわかりやすいファイル名 
     22$trconqty = 2; 
     23#0:PSP/iPod XviD MPEG4(旧式):faacとMPEG4IPを使って変換 
     24#1:iPod Xvid MPEG4 標準画質 15fps 300kbps 
     25#2:iPod H.264 中画質 24fps 300kbps 
     26#3:iPod H.264 高画質 30fps 300kbps 
    2227 
    23 #デフォルトでインストールしてればいじらなくてもいい 
     28#以下はデフォルトでインストールしてればいじらなくてもいい 
    2429$main::DBDriv="Pg"; 
    2530$main::DBHost="localhost"; 
  • trunk/install/perl/recwrap.pl

    r1 r8  
    2929$recch = $ARGV[0] ; 
    3030if ($recch eq "" ){ 
    31         #引き数なし実行されたら、終了 
     31        #引き数なし実行されたら、終了 
    3232        print "usage recwrap.pl  ch length(sec) [bitrate(5)] [TID] [NO] [PID]\n"; 
    3333        exit; 
     
    7979if ($oserr == 1){ 
    8080        &writelog("recwrap ABORT recfile exist. [$outputfilename] $recch $reclength 0 0 $bitrate $tid $countno $pid"); 
     81        exit; 
    8182}else{ 
    8283        &writelog("recwrap RECEND [$outputfilename] $recch $reclength 0 0 $bitrate $tid $countno $pid"); 
     
    243244# print "$pspfilname($pspfilnamehd/$pspfilnameft)\n"; 
    244245}# endif MP4ファイル名が新styleなら 
    245  
    246 &writelog("recwrap TRCNSTART vfr4psp.sh $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
    247 #トラコン開始 
    248 system("$toolpath/perl/transcode/vfr4psp.sh $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
    249  
    250 &writelog("recwrap TRCNEND  vfr4psp.sh $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
    251  
    252 #最適化 
    253  
    254 $DBQuery =  "SELECT subtitle  FROM  foltia_subtitle WHERE tid = '$tid' AND countno = '$countno' "; 
    255          $sth = $dbh->prepare($DBQuery); 
    256         $sth->execute(); 
    257  @programtitle = $sth->fetchrow_array; 
    258  
    259 if ( $countno == "0" ){ 
    260         $pspcountno = ""; 
    261 }else{ 
    262         $pspcountno = $countno ; 
    263 
    264 &writelog("recwrap OPTIMIZE  mp4psp -p $pspdirname/M4V$pspfilname.MP4   -t  '$psptrcn[2] $pspcountno $programtitle[0]' "); 
    265 Jcode::convert(\$programtitle[0],'euc'); 
    266 system ("/usr/local/bin/mp4psp -p $pspdirname/M4V$pspfilname.MP4   -t  '$psptrcn[2] $pspcountno $programtitle[0]'") ; 
    267  
     246#2006/12/03_10:30:24 recwrap TRCNSTART vfr4psp.sh /home/foltia/php/tv/591-87-20061203-1000.m2p -591-87-20061203-1000 /home/foltia/php/tv/591.localized/mp4/ 3 
     247 
     248if (($trconqty eq "")||($trconqty == 0 )){ 
     249        &writelog("recwrap TRCNSTART vfr4psp.sh $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
     250        system("$toolpath/perl/transcode/vfr4psp.sh $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
     251        &writelog("recwrap TRCNEND  vfr4psp.sh $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
     252        #最適化 
     253        $DBQuery =  "SELECT subtitle  FROM  foltia_subtitle WHERE tid = '$tid' AND countno = '$countno' "; 
     254                 $sth = $dbh->prepare($DBQuery); 
     255                $sth->execute(); 
     256         @programtitle = $sth->fetchrow_array; 
     257        if ( $countno == "0" ){ 
     258                $pspcountno = ""; 
     259        }else{ 
     260                $pspcountno = $countno ; 
     261        } 
     262        &writelog("recwrap OPTIMIZE  mp4psp -p $pspdirname/M4V$pspfilname.MP4   -t  '$psptrcn[2] $pspcountno $programtitle[0]' "); 
     263        Jcode::convert(\$programtitle[0],'euc'); 
     264        system ("/usr/local/bin/mp4psp -p $pspdirname/M4V$pspfilname.MP4   -t  '$psptrcn[2] $pspcountno $programtitle[0]'") ; 
     265$mp4filename = "M4V${pspfilname}.MP4"; 
     266$thmfilename = "M4V${pspfilname}.THM"; 
     267}else{# #2006/12/6 新エンコーダ 
     268 
     269        &writelog("recwrap TRCNSTART ipodtranscode.pl $recfolderpath/$outputfilename $pspfilname $pspdirname $pid $psptrcn[1]"); 
     270        system("$toolpath/perl/ipodtranscode.pl $recfolderpath/$outputfilename $pspfilname $pspdirname $pid $psptrcn[1]"); 
     271        &writelog("recwrap TRCNEND  ipodtranscode.pl $recfolderpath/$outputfilename $pspfilname $pspdirname $psptrcn[1]"); 
     272 
     273        if($trconqty >= 2){#H.264/AVCなら 
     274        $mp4filename = "MAQ${pspfilname}.MP4"; 
     275        $thmfilename = "MAQ${pspfilname}.THM"; 
     276        }else{ 
     277        $mp4filename = "M4V${pspfilname}.MP4"; 
     278        $thmfilename = "M4V${pspfilname}.THM"; 
     279        } 
     280
    268281 
    269282#サムネール 
     
    275288&writelog("recwrap THAMI  convert -crop 160x120+1+3 -resize 165x126\! $pspdirname/00000002.jpg $pspdirname/M4V$pspdirname.THM "); 
    276289 
    277 if (-e "$pspdirname/M4V".$pspfilname.".THM"){ 
     290if (-e "$pspdirname/$thmfilename"){ 
    278291$timestamp =`date "+%Y%m%d-%H%M%S"`; 
    279292chomp $timestamp; 
    280         system("convert -crop 160x120+1+3 -resize 165x126\! $pspdirname/00000002.jpg $pspdirname/M4V".$pspfilname.".THM.".$timestamp.".THM"); 
     293        system("convert -crop 160x120+1+3 -resize 165x126\! $pspdirname/00000002.jpg $pspdirname/$thmfilename".$timestamp.".THM"); 
    281294 
    282295}else{ 
    283         system("convert -crop 160x120+1+3 -resize 165x126\! $pspdirname/00000002.jpg $pspdirname/M4V".$pspfilname.".THM"); 
     296        system("convert -crop 160x120+1+3 -resize 165x126\! $pspdirname/00000002.jpg $pspdirname/$thmfilename"); 
    284297} 
    285298# rm -rf 00000001.jpg       
     
    293306# MP4ファイル名をPIDレコードに書き込み 
    294307        $DBQuery =  "UPDATE  foltia_subtitle  SET  
    295         PSPfilename      = 'M4V$pspfilname.MP4'  
     308        PSPfilename      = '$mp4filename'  
    296309        WHERE pid =  '$pid' "; 
    297310         $sth = $dbh->prepare($DBQuery); 
     
    300313 
    301314# MP4ファイル名をfoltia_mp4files挿入 
    302         $DBQuery =  "insert into  foltia_mp4files values ('$tid','M4V$pspfilname.MP4') "; 
     315        $DBQuery =  "insert into  foltia_mp4files values ('$tid','$mp4filename') "; 
    303316         $sth = $dbh->prepare($DBQuery); 
    304317        $sth->execute(); 
  • trunk/install/perl/tvrecording.pl

    r1 r8  
    2424 
    2525 
    26 use Time::HiRes qw(usleep); 
     26#use Time::HiRes qw(usleep); 
    2727 
    2828 
     
    250250} 
    251251#1分前にプロセス起動するから指定時間スリープ 
    252 srand(time ^ ($$ + ($$ << 15))); 
    253 my $useconds  = int(rand(12000000)); 
    254 my $intval = int ($useconds  / 1000000); 
    255 my $startupsleeptimemicro = ($startupsleeptime * 1000000) - $useconds; 
    256 $reclengthsec = $reclengthsec + $intval + 1; 
     252#srand(time ^ ($$ + ($$ << 15))); 
     253#my $useconds  = int(rand(12000000)); 
     254#my $intval = int ($useconds  / 1000000); 
     255#my $startupsleeptimemicro = ($startupsleeptime * 1000000) - $useconds; 
     256#$reclengthsec = $reclengthsec + $intval + 1; 
     257#&writelog("tvrecording:  DEBUG SLEEP $startupsleeptime:$useconds:$intval:$startupsleeptimemicro"); 
     258#       usleep ( $startupsleeptimemicro ); 
     259 
    257260# $recch でウェイト調整入れましょう 
    258  
    259  
    260 &writelog("tvrecording:  DEBUG SLEEP $startupsleeptime:$useconds:$intval:$startupsleeptimemicro"); 
    261  
    262         usleep ( $startupsleeptimemicro ); 
     261my $intval = $recch % 50; # 0〜49 
     262my $startupsleep = $startupsleeptime - $intval; #  3〜52 (VHF 40-51) 
     263$reclengthsec = $reclengthsec + $intval + 1; # 
     264 
     265&writelog("tvrecording:  DEBUG SLEEP $startupsleeptime:$intval:$startupsleep"); 
     266 
     267sleep ( $startupsleep); 
    263268 
    264269if ($recunits > 1){ 
track feed