Problem mit einem Script

  • Hallo,

    wie der Titel dieses Threads schon verrät, habe ich leider ein Problem mit einem PHP Script.
    Okay mit dem Script selber nicht, da ich in PHP ziemlich fit bin, aber dafür verstehe ich so einige Sachen im Code nicht.

    Es geht um einen Konvertor von einem Videohostingscript namens "PHPMotion".
    Nach diesem Script werden bestimmten Befehle an den MENCODER oder FFMPEG gesendet und dieser wandelt die Videos dann in ein normales .FLV und ein "HD" .FLV Video um.
    Ich habe das Script ein wenig geändert, so das die Videos in MP4 umgewandelt werden per x264 (h264) und dem Audiocodec FAAC.

    Es schien anfangs auch zu funktionieren, aber nach einiger Zeit bricht das Umwandeln einfach ab.
    Ich habe schon einiges Probiert, aber leider ohne Erfolg.
    Und seitens des Autors dieses Script gibt es kein Support und deswegen seit Ihr meine letzte Hoffnung.

    So sieht Code aus, den ich verändert habe:

    Wie gesagt, es sind nur einige Stellen dieses Scripts.
    Ich hoffe Ihr könnt mir helfen und mir vorallem sagen was ich falsch gemacht habe.
    Ein Dank schon mal an jede hilfreiche Antwort.


    Gruß René

  • Zitat


    Es schien anfangs auch zu funktionieren, aber nach einiger Zeit bricht das Umwandeln einfach ab.

    ohne jegliche Fehlermeldung?
    vielleicht immer nach der selben Zeit? max_execution_time?

    Gruß crAzywuLf :D

  • ohne jegliche Fehlermeldung?
    vielleicht immer nach der selben Zeit? max_execution_time?

    Hallo,

    also ich kann dir das nicht genau sagen, es bricht einfach ab.
    Nein das kann nicht sein, denn die max_execution_time steht auf 3600.
    Glaube das ist doch mehr als genug Zeit ein Video umzuwandeln.
    Ich meine, ich habe zum Test ein anderes Videoscript getestet das in Joomla integriert ist und dort funktioniert die Umwandlung von HD Videos (x264 / h.264) ohne Probleme auf den höchsten Einstellungen.
    Die Videos sind mit Upload nach ca. 8 Minuten fertig.
    Das ist zwar schön das dort funktioniert, aber dieses Script will ich halt nicht verwenden, weil PHPMotion einfach besser ist, nur ich kriege anscheinend die richtigen Einstellungen nicht hin. :(

    Woran kann das liegen, das es bei dem anderen Script funktioniert?
    Und, kann mir jemand mal einen Beispielcode posten, der funktioniert?

  • Läuft das Local? Zeig mal die PHPINI, gibt ja noch mehr sachen wie max execute time, zb die speicher einstellungen

  • Hallo zusammen :)

    Erstmal vielen Dank für eure Bemühungen.
    Ich habe es inzwischen selbst hinbekommen. :)
    Die Videos von mir werden jetzt zwei mal konventiert.
    Einmal als normales SD Video im FLV Format.
    Und einmal als HD Video konventiert mit H.264 und AAC im MP4 Format.
    Habe die Settings für die Konventierung auch schon perfektioniert, so das die Qualität sehr gut ist und das Video nicht zu groß wird (Dateigröße).

    Schaut mal hier:
    http://videos.gbs4u.de/hdw.php?vid=362&hidef=true

    Das ist das Ergebnis wochenlanger Arbeit.


    Nur jetzt habe ich noch eine kleine Frage.
    Das Script habe ich jetzt soweit perfektioniert, nur leider konventiert mein Script zu jedem Video ein HD Video.
    Das macht bei Videos von 2 MB und einer Auflösung von 600x350 keinen Sinn.
    Ich hatte es mir eigentlich so vorgstellt, das man vor dem Hochladen des Videos in eine Checkbox einen Haken setzt und erst dann ein extra HD Video konventiert wird.
    Die Checkbox könnte so aussehen:
    [x] HD Video erstellen

    Wie ich das in HTML löse weiß ich schon, nur wie löse ich das in PHP?
    Denke mir mal das man dies durch eine "if" Abfrage lösen kann, nur leider bin ich in PHP noch ein Anfänger und weiß leider nicht genau wie ich das lösen kann.

    Kann mir jemand diese IF Abfrage mal zeigen bzw. posten?
    Das wäre wirklich total super!

  • Mhhh ein sehr grosser Widerspruch:

    Zitat

    da ich in PHP ziemlich fit bin

    Zitat

    nur leider bin ich in PHP noch ein Anfänger

    Aber zu deiner Frage...
    Das Form-Element wo du ein Häckchen für HDVideo machst einfach abfragen:

    PHP
    if(isset($_POST['makeHDVid']) && $_POST['makeHDVid'] == 'true'){
      // Hier kommt dein Code zum erstellen des HD-Videos rein
    }
  • Mhhh ein sehr grosser Widerspruch:

    Aber zu deiner Frage...
    Das Form-Element wo du ein Häckchen für HDVideo machst einfach abfragen:

    PHP
    if(isset($_POST['makeHDVid']) && $_POST['makeHDVid'] == 'true'){
      // Hier kommt dein Code zum erstellen des HD-Videos rein
    }

    Hallo,

    zuerst zu dem Widerspruch:
    Also ich dachte bisher das ich darin ziemlich fit bin, da bis jetzt alles funktioniert hat was ich gemacht habe.
    Und da so eine Kleinigkeit nicht funktioniert, dachte ich mir halt, ich betitel mich besser als Anfänger.
    Denn wer so etwas leichtes nicht hinkriegt, der ist ein Anfänger, oder etwa nicht?

    Zu dem Code, vielen Dank.
    Aber so ähnlich hatte ich ihn auch, hat nicht funktioniert :roll:
    Deswegen habe ich mich ja an dieses Forum gewandt.
    Ich hatte den eigentlich genauso wie dein Code, nur hieß der bei mir "HDvideo".
    Hat aber wie gesagt nicht funktioniert.

    Im HTML Template sieht es so aus:

    Code
    <li style="width:240px; text-align:right"><input type="checkbox" name="makeHDVid" value="0"></li>
    <li style="width:400px">
    High Definition (HD) Video erstellen
    </li>

    Es wird gar kein HD Video mehr erstellt, egal ob der Haken in der Box drin ist, oder nicht.

    Hab mal im Anhang die orginale Datei (convertor.php) als Text Datei auf meinen Server geladen.
    Vielleicht weißt du ja eine Lösung und erkennst woran es klemmt.
    Ich bin mit meinem latein am ende.

    Siehe hier:
    http://videos.gbs4u.de/convertor.txt


    Sag bitte bescheid wenn du die Datei hast, damit ich sie wieder herunterlöschen kann.

  • Ich bin mir nicht sicher, aber reicht das isset in der Abfrage nicht eigentlich aus?

    PHP
    &&  $_POST['makeHDVid'] == 'true'


    Probier mal, das hier aus der IF-Abfrage zu entfernen. Sorry, wenn ich falsch liege. :D

    Ich zitiere - mich:
    "Ohne Preis, kein Schweiß... :cool:"

  • Ich bin mir nicht sicher, aber reicht das isset in der Abfrage nicht eigentlich aus?

    PHP
    &&  $_POST['makeHDVid'] == 'true'

    Probier mal, das hier aus der IF-Abfrage zu entfernen. Sorry, wenn ich falsch liege. :D

    isset reicht im Grunde genommen eigentlich schon aus, das mit dem Zusatz hinten dran ist ne Angewohnheit meinerseits *g*

    infernus Wie schaut denn überhaupt dein aktueller PHP-Code aus, wo du die Prüfung durchführst?

  • Es währe nett wenn du deinen funktionieren Code hier posten würdest, dann haben auch andere die das Problem haben die Chance schnell weiterzukommen...

    HTML
    <input type="checkbox" name="makeHDVid" value="0">

    mit value="0" kannste schlecht arbeiten, wieso machst du nicht eine "1" rein?

    Gruß crAzywuLf :D

    3 Mal editiert, zuletzt von crAzywuLf (15. Oktober 2009 um 16:09)

  • Hallo,

    habt ihr euch mal die convertor.txt mal angesehen?
    Hab den Code von CPCoder genommen und an diese Stelle gesetzt:


    So funktioniert es aufjedenfall nicht.
    Und vor lauter Code sehe ich das Ende nicht mehr :confused:

  • Moment... wenn du bei dem Häkchenfeld als Value "0" drin stehen hast dann nimm mal diesen Abschnitt aus dem Code wieder raus:

    PHP
    && $_POST['makeHDVid'] == 'true'

    , sonst greift die Prüfung ja logischerweise nicht

  • Hallo,

    das geht leider auch nicht.
    Habe schon unzählige Methoden angewendet, keine von denen funktioniert. :roll:
    Scheinbar lässt sich dieses Script so nicht hinbiegen wie ich es will, ist wohl so sturr wie manche Frau :D

    Man müsste wohl an dem Script wohl einen großteil ändern damit es so funktioniert so wie ich es will und der Aufwand ist einfach zu groß.
    Hab gedacht wenn man das mit einem kleinen Code ändern kann wäre das super, aber das scheint ja einfach nicht zu funktionieren.

    Da kann man wohl nichts machen :roll:

  • Wenn ma nicht weiss, wie man etwas prüfen kann, sieht man doch nach wie, oder?

    und um euch das zu vereinfachen, die ausgabe:

    Code
    "checkbox" gibt ok zurück

    demnach muss dein gesammter PHP-Code ao aussehen:


    und die checkbox muss so aussehen:

    HTML
    <input type="checkbox" name="makeHDvid">


    und der code

    PHP
    && $_POST['makeHDvid']=="true"

    kann NICHT richtig sein, denn wie man wissen sollte gilt:

    PHP
    "true" !== true

    ich hoffe das hilft

    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.

    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

    Einmal editiert, zuletzt von Tobse (18. Oktober 2009 um 14:44)

  • Hallo,

    erstmal vielen Dank für deine Hilfe.
    Doch dein Code funktioniert auch nicht.
    Zwar wird das normale SD Video erstellt, aber dafür kein HD Video.
    Egal ob der Haken in der Checkbox ist, es wird einfach kein HD Video erstellt.
    Und ich habe den Code genauso eingefügt wie du.

    Ich glaube dieses Thema ist einfach hoffnungslos. :roll:

  • Hmm. Mach mal in der if-Abfrage nur das isset() und auch mal error_reporting(E_ALL); an den anfang.

    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.

    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!