I have a website i am working on that allows you to upload videos to it.
I use FFMPEG to convert the video to an flv, after upload, so the flash player can play it easily.
However i have a problem. i run a system command for ffmpeg using exec();. and it does work, but the page is loading for however long the conversion takes, as well as if the user closes the page, it will not fully convert.
What i want:
- once the video is uploaded, it sends a request to the server to do the conversion
- the conversion is done server-side and has nothing to do with the client-side (the user can close the browser window)
- code needs to be executed once the conversion is completed
now i have had a very hard time trying to figure this out, especially with the part where code is executed after the conversion is finished.
can anyone give me some ideas please?
Server-Side FFMPEG Conversion
Moderator: General Moderators
- JustinMs66
- Forum Contributor
- Posts: 127
- Joined: Sun Sep 03, 2006 4:18 pm
- John Cartwright
- Site Admin
- Posts: 11470
- Joined: Tue Dec 23, 2003 2:10 am
- Location: Toronto
- Contact:
What i want:
I would probably create a cron job that monitors a database for new entries that needs to be converted.- once the video is uploaded, it sends a request to the server to do the conversion
See above- the conversion is done server-side and has nothing to do with the client-side (the user can close the browser window)
Something I'm not understanding here?- code needs to be executed once the conversion is completed
Code: Select all
exec(' ... ffmpeg .. ');
echo 'I wont be run until the exec is finished';Use ignore_user_abort() and put the process in background.
There are 10 types of people in this world, those who understand binary and those who don't
- Ollie Saunders
- DevNet Master
- Posts: 3179
- Joined: Tue May 24, 2005 6:01 pm
- Location: UK
- JustinMs66
- Forum Contributor
- Posts: 127
- Joined: Sun Sep 03, 2006 4:18 pm
ok thank you, i implimented it, but it does nothing yet, but how would i go about putting the process in the background? (linux server)VladSun wrote:Use ignore_user_abort() and put the process in background.
Almost the same posting several days ago:
viewtopic.php?t=76522
There is a link in it ponting to nearly the same question
viewtopic.php?t=76522
There is a link in it ponting to nearly the same question
There are 10 types of people in this world, those who understand binary and those who don't