I have a video tube site that is quite popular and I am having an issue with my mp4 files streaming on android devices. When using Mozilla Firefox on android my videos play and seek perfectly. When using google chrome or default Android browser they do not play at all. I ran one of my videos through mp4box with a few settings and I got it to play on those browser in Android but they break when trying to seek. So at this stage the videos still play fine on Firefox in Android but now even though the video will start playing rather quickly on the other two browsers the videos will not seek properly as seeking will cause the video to break and restart itself. I am in a wordpress installation on a dedicated server.
server specs:
PHP 5.2.4 or greater
MySQL 5.0 or greater
PHP cURL extension
PHP Zlib extension
Unix-like OS (Windows is not supported)
PHP 5.3, 5.4, 5.5 yes
IonCube Loader 4.6.1 or above yes
Mysql 5.0 or above and its support in PHP yes
FFmpeg 1.0 or above with libx264, libavfilter and AAC codec (libfaac, libfdk_aac or native ffmpeg aac codec) yes
cURL and its support in PHP yes
Apache + mod_rewrite + (MultiViews option disabled) yes, not sure about multi views, please ask how this is done.
Zlib library yes
XML extension yes
GD2 with true type font (required!) yes
Ability to exec PHP from CLI using exec() command yes
PHP register_globals off yes
PHP magic_quotes_gpc off yes
PHP safe_mode off yes
PHP file_uploads on yes
PHP allow_url_fopen on yes
The files are MP4 with the meta data at the front of the file and playing in the standard wordpress video player(or any html5 based player as I have tried quite a few and all have the same result)
I had to ask my server admin to install ffmpeg for my streaming is it possible they did not add the right commands?
I have no idea what my videos are doing on Apple devices but I assume it is okay since Google Analytics shows a low bounce rate from that devices.
If any issue is on service side I want to contact them armed with facts. I appreciate your help in this matter.
EDIT: FFMPEG SERVER CONFIGURATION:
root@dwhsv160 [~/ffmpeginstaller.8.0]# ffmpeg -version
ffmpeg version N-71403-g415f1fa-syslint Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-11)
configuration: –prefix=/usr/local/cpffmpeg –enable-shared –enable-nonfree –enable-gpl –enable-pthreads –enable-libopencore-amrnb –enable-decoder=liba52 –enable-libopencore-amrwb –enable-libfaac –enable-libmp3lame –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –extra-cflags=-I/usr/local/cpffmpeg/include/ –extra-ldflags=-L/usr/local/cpffmpeg/lib –enable-version3 –extra-version=syslint
libavutil 54. 22.101 / 54. 22.101
libavcodec 56. 34.100 / 56. 34.100
libavformat 56. 30.100 / 56. 30.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 13.101 / 5. 13.101
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
The few things I tried with the mp4 that got them to play but still not seek properly were running them through mp4box with no special settings and simply remuxing them. I also tried a couple special settings like adding a hint track and other things none resulted in the file streaming properly in chrome or default android browser. AGAIN my files stream fine on all desktops and in FIREFOX on android but DO NOT work in chrome on android or default android browser.