salve a tutti
dopo svariati anni torno a giocare con gli script.
purtroppo mi divertivo in asp, ora che è tutto in php mi sento un po' incasinato.
ho uno script che scarica un video flv sul server e mi genera delle thumb, il tutto preso da un csv. quindi looppa e carica tutto di seguito.
purtroppo ho dei problemi di timeout (credo), in quanto scarica il video velocemente, ma le thumb le genera molto lentamente.
tipo sette thumb ci impiega un paio di minuti.
ora (dopo che mi hanno twekkato il php) ne carica una quindicina in fila (ieri solo un paio)
per sapere a che punto del filmato prendere le thumb, lo script ha questo codice
codice:
$duration = get_video_duration($video_path, $video_id);
if ( $duration > 180 ) {
$ss = 60;
$step = 5;
} elseif ( $duration > 120 ) {
$ss = 15;
$step = 5;
} elseif ( $duration > 60 ) {
$ss = 10;
$step = 2;
} else {
$ss = 1;
$step = 1;
}
c'ho messo un po' a capire che $ss significava a che secondo partire.
da quello che capisco significa che, se il filmato dura più di 180 secondi, allora parti dal 60° secondo e prendi 20 thumb, una ogni 5 secondi.
dato che 20 mi sembravano troppe e ci metteva troppo allora ho deciso di portarle a 7 modificando le tempistiche in questa maniera
codice:
$duration = get_video_duration($video_path, $video_id);
if ( $duration > 180 ) {
$ss = 30;
$step = 20;
} elseif ( $duration > 120 ) {
$ss = 15;
$step = 12;
} elseif ( $duration > 60 ) {
$ss = 7;
$step = 6;
} else {
$ss = 1;
$step = 1;
}
fino a 3 minuti di filmato le thumb possono anche andar bene, il problema è per eventuali filmati lunghi (in pratica servono come preview, quindi dovrebbero occupare tutto il filmato)
per farla breve:
c'è un modo diverso per dirgli di prendere le thumbs o devo continuare a forza di "elseif" fino a 100 minuti ?
ovviamente sostituendo quel pezzettino di codice, non ho ancora tutta sta domestichezza per andare a modificare troppe cose (anche se finora asp e php sono simili a quanto vedo)
grazie mille e perdonate l'estrema lunghezza e la complessità dei miei pensieri