GD + ffmpeg: Allowed memory size exhausted

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • GD + ffmpeg: Allowed memory size exhausted

    Hallo,

    Ich habe folgendes PHP-Script über 24 Filmdateien (25-50MB) laufen lassen. Dabei werden mir 19 Vorschaubilder erzeugt und anschließend eine PHP-Fehlermeldung ausgegeben :

    PHP-Code:
    Fatal errorAllowed memory size of 8388608 bytes exhausted (tried to allocate 1920 bytesin /home/www/test.php on line 35 
    PHP-Code:
    $files = array(
     
    '1.mpg',

    [...]

     
    '24.avi'
    );

    foreach(
    $files as $file) {
        
    $movie = new ffmpeg_movie($filefalse);
        
    $frame $movie->getFrame(100);
        
    $gd $frame->toGDImage();
        
    imagedestroy($gd);


    Ich habe wenig Erfahrung mi GD (und ffmpeg) und mir kommt gerade keine Idee woran das liegen kann, dass er da ans Limit von 8MB stößt. Zum einen sind die bis dahin erzeugten Vorschaubilder nur etwa 4,4 MB groß und zum anderen sollten die doch nicht im Speicher bleiben.

    Bin für jede Idee in irgendweine Richtung dankbar.

    Gruß
    Pingu12

  • #2
    PHP-Code:
    $gd $frame->toGDImage();
    // ^^ was ist das für ein rückgabewert?

    imagedestroy($gd);
    // wozu soll das gut sein? 
    die gd schmeisst den fehler:
    - wenn das bild zu groß ist, was bei video nicht der fall sein sollte
    - wenn die img-src nicht zerstört werden (=> image_destroy())

    letzteres wendest du falsch an (zumindest bei dem code), wenn dir die klasse das zurückliefert, was ich glaube, nämlich z.B. einen status true/false. und was du auf der platte siehst, sind komprimierte jpegs. die wirkliche datenmenge sieht anders aus => boardsuche mal anwerfen
    Kissolino.com

    Kommentar

    Lädt...
    X