Jump to content
php.lv forumi

ffmpeg ar vhook uz windows


crmind
 Share

Recommended Posts

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

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

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

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

 Share

×
×
  • Create New...