[請益] 用PHP虛擬主機跑ffmpeg跑到一半就停了

看板PHP作者 (rrr0832)時間7月前 (2024/04/30 17:34), 7月前編輯推噓0(007)
留言7則, 4人參與, 7月前最新討論串1/2 (看更多)
<?php ignore_user_abort(true); set_time_limit(0); ini_set('memory_limit','2048M'); shell_exec('ffmpeg -y -i input.mov -c copy -c:v libx264 -c:a aac output.mp4 2> lo ?> 我用上述的PHP碼跑ffmpeg 一開始都正常在跑 但最後輸出的output.mp4只有convert到一半 ffmpeg就停了 可能是因為什麼原因? 記憶體不足? 還是執行序佔滿了? 因為我的PHP執行環境是租的雲端虛擬主機 有沒有可能是ffmpeg在執行到一半時資源耗盡所以自動被kill掉了? 我看log.txt也是進度跑到一半就斷掉沒了 請問該怎麼處理? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.12.239 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1714469647.A.8B8.html

04/30 20:00, 7月前 , 1F
可能是被背景監控程序砍了,虛擬主機為了整體服務品質,
04/30 20:00, 1F

04/30 20:00, 7月前 , 2F
大都有背景監控程序
04/30 20:00, 2F

04/30 23:21, 7月前 , 3F
你的意思是,純 command line 可以跑完,但是進 PHP 無法嗎
04/30 23:21, 3F
Linux的Cmd 不知道 不過windows版的cmd 倒是都能完全convert 由於我的虛擬主機商是用Linux (Apache) 不曉得是不是過了一個timeout就會自動kill 還是真的記憶體或資源耗盡所以被系統kill掉了 抑或是如一樓所言有背景監控程式被kill掉 不得而知 總之就是莫名其妙在convert的途中無聲無息的被中斷掉

04/30 23:22, 7月前 , 4F
看要不要改用cuda 與 hevc_nvenc ,也許有支援
04/30 23:22, 4F

04/30 23:23, 7月前 , 5F
轉快點轉完就過關,再沒招就聯絡主機網管或影像切片
04/30 23:23, 5F

04/30 23:24, 7月前 , 6F
不過至少試完crontab的作法再決定
04/30 23:24, 6F
Cron job我也試過,有時候一樣會被中斷掉 看來可能是主機商設的限制吧(不曉得) ※ 編輯: rrr0832 (42.76.102.177 臺灣), 05/01/2024 12:06:06

05/03 20:29, 7月前 , 7F
Apache也有超時設置,與php要同時設置
05/03 20:29, 7F
文章代碼(AID): #1cCBiFYu (PHP)
文章代碼(AID): #1cCBiFYu (PHP)