I am working on an online video repository system for a client, written mostly in PHP. At the moment I am building a mobile version of our desktop website. Our desktop site allows users to watch videos in the browser, much like YouTube.
My client uploads videos through the manager interface I have created, and my application uses FFmpeg on the server to transcode his videos into several resolutions and bitrates. I am no expert on FFmpeg, and while I do not know the ins and outs of each individual setting, I do understand how it works as a whole. Right now, we are using the mp4 container format with the h.264 codec to encode our videos. Our command looks like:
ffmpeg -y -i "INPUT FILE.mov" -f mp4 -s 640x480 -vcodec libx264 -preset fast -maxrate 1500 -bitrate 1000 -bufsize 4096 -acodec libfaac -ab 192 -ac 2 "OUTPUT_FILE.mp4" >> "FILE.log" 2>&1 &
I'm hoping to gain information about best practices with encoding video for web streaming on IOS and other mobile devices using FFmpeg. What resolutions and settings make for good mobile streaming video? How can I ensure maximum compatibility across the sea of Android devices?