crmind Posted January 9, 2008 Report Share Posted January 9, 2008 Lieta tāda, pats ffmpeg ir uzstādīts un strādā bez problēmām neskatoties kā es exec'ā to adresēju (absolūti vai relatīvi), grūtības sākās līdz radās nepieciešamība tam pievienot papildus vhook moduli, to savukārt nekādīgi nesanāk korekti adresēt, un attiecīgi programma izmet erroru, un neturpina savu darbu. Uz doto brīdi, vienīgais strādājošais risinājums ir šāds: $encode_cmd = 'ffmpeg.exe -sameq -i ' . $uploadFile . ' -acodec libmp3lame -ab 96k -ar 11025 -vhook "vhook/imlib2.dll -x 0 -y 0 -i logo.png" ' . $finalFile; exec( $encode_cmd ); Bet tādā gadijumā ffmpeg un visiem tā kodekiem un moduļiem ir jāstāv vienā folderī ar šo php, ko nebūt nevēlos, vēlos lai stāvētu kkur ārpus wwwroot foldera, kaut vai c:/ffmpeg. Kā jau minēju iepriekš, problēma rodas tikai tad, kad mēģinu piestripināt šo papildus imlib2.dll moduli. Tātad, jautājums ir šāds, kā man korekti adresēt šo imlib2.dll iekš exec, lai ffmpeg to atrastu un neizmestu erroru? Link to comment Share on other sites More sharing options...
bubu Posted January 9, 2008 Report Share Posted January 9, 2008 Absolūti negribi? C:/ffmpeg/vhook/imlib2.dll Link to comment Share on other sites More sharing options...
crmind Posted January 9, 2008 Author Report Share Posted January 9, 2008 Ir mēģināts arī tā, bet nez kāpēc ffmpeg to neatrod. Piepildīšu, ka ja šo pašu komandu (c:/ffmpeg/ffmpeg.exe input.ext -vhook "c:/ffmpeg/vhook/imlib2.dll" output.ext) palaiž no servera cmd, tad viņš atrod, bet ja caur exec iekš php, tad nekā. Link to comment Share on other sites More sharing options...
marrtins Posted January 9, 2008 Report Share Posted January 9, 2008 PHP no comandrindas vai webservera? Link to comment Share on other sites More sharing options...
crmind Posted January 9, 2008 Author Report Share Posted January 9, 2008 Nu ja pavisam vienkārši uz server datora iekš cmd tad strādā, bet kad laiž to pašu no PHP caur exec, tad neiet. Link to comment Share on other sites More sharing options...
bubu Posted January 9, 2008 Report Share Posted January 9, 2008 Tev jautā vai tu php darbini no komandrindas, vai arī no webservera. Link to comment Share on other sites More sharing options...
crmind Posted January 9, 2008 Author Report Share Posted January 9, 2008 No webservera. Link to comment Share on other sites More sharing options...
Delfins Posted January 9, 2008 Report Share Posted January 9, 2008 1.) iekopē DLL (vai tā foldera visu saturu) iekš win-roota 2.) ierakstīts vhoot DIR iekš global PATH un bez papildus ceļa norādi Link to comment Share on other sites More sharing options...
marrtins Posted January 9, 2008 Report Share Posted January 9, 2008 Paprovē pie apache services propertijos ieķeksēt `allow interact with desktop` Link to comment Share on other sites More sharing options...
crmind Posted January 9, 2008 Author Report Share Posted January 9, 2008 Delfins variants samest .dll iekš winroot palīdzēja ffmpeg atrast imlib2.dll, tagad gan savukārt tas met āra, ka tas neatrod logo.png: Couldn't load image 'logo.png' Failed to Configure imlib2.dll Failed to add video hook function: imlib2.dll -x 0 -y 0 -i logo.png Izmēģināju to samest dažādās vietās un adresēt dažādi, bet nekā. Es gan īsti nesapratu kāpēc man būtu jānorāda globālis PATH. Arī "allow interact with desktop" nelīdzēja. Link to comment Share on other sites More sharing options...
Delfins Posted January 9, 2008 Report Share Posted January 9, 2008 norādi pilno ceļu logo.png... Jo laižot no webservera visdrīzāk tas meklēs iekš web-root. Es arī brīnos, kāpēc neatradu libu pēc pilnā ceļa... liekot globāļos parasti palīdz, tāpēc arī ieteicu (globāļi attiecās tikai uz DLL.. bet ja programmai ir fīča meklēt arī citus failus, tad varbūt)... Link to comment Share on other sites More sharing options...
crmind Posted January 9, 2008 Author Report Share Posted January 9, 2008 Arī tā norādīju, bet nekā. Varbūt ir kāda cita pieeja tam visam par kuru neesmu iedomājies? Link to comment Share on other sites More sharing options...
Delfins Posted January 9, 2008 Report Share Posted January 9, 2008 izsaukt bat-niku :) Link to comment Share on other sites More sharing options...
crmind Posted January 9, 2008 Author Report Share Posted January 9, 2008 (edited) :) Ideja bij tāda, tik nezināju, kā bat'am var padot kkādu mainīgo vērtības.. Edited January 9, 2008 by crmind Link to comment Share on other sites More sharing options...
bubu Posted January 9, 2008 Report Share Posted January 9, 2008 fails.bat arguments1 arguments2 arguments3 .. Un iekš tā pie argumentiem tiek ar %1, %2, %3, .. vai vienkārši %*, kas nozīmēs visu komandrindas saturu aiz faila vārda. Link to comment Share on other sites More sharing options...
Recommended Posts