Forums

Videos taken with WP app won't play in iOS 5 safari when posted.

  1. If you take a look at this site in iOS5 mobile Safari you'll see that almost none of the videos will indicate they are playable. These were taken, uploaded & posted within the WordPress iOS app version 3.1.1 (using our self-hosted multi-site install of WordPress 3.4.1). I've check all our mime types, everything for video is setup to accomodate HTML5. (see a cut & paste below)

    video/3gpp                                      3gp
    video/3gpp-tt
    video/3gpp2                                     3g2
    video/bmpeg
    video/bt656
    video/celb
    video/dv
    video/h261                                      h261
    video/h263                                      h263
    video/h263-1998
    video/h263-2000
    video/h264                                      h264
    video/jpeg                                      jpgv
    video/jpm                                       jpm jpgm
    video/mj2                                       mj2 mjp2
    video/mp1s
    video/mp2p
    video/mp2t
    video/mp4                                       mp4 mp4v mpg4 m4v
    video/mp4v-es
    video/mpeg                                      mpeg mpg mpe m1v m2v
    video/mpeg4-generic
    video/mpv
    video/nv
    video/ogg                                       ogv
    video/parityfec
    video/pointer
    video/quicktime                                 qt mov
    video/raw
    video/rtp-enc-aescm128
    video/rtx
    video/smpte292m
    video/ulpfec
    video/vc1
    video/vnd.dlna.mpeg-tts
    video/vnd.fvt                                   fvt
    video/vnd.hns.video
    video/vnd.motorola.video
    video/vnd.motorola.videop
    video/vnd.mpegurl                               mxu m4u
    video/vnd.nokia.interleaved-multimedia
    video/vnd.nokia.videovoip
    video/vnd.objectvideo
    video/vnd.sealed.mpeg1
    video/vnd.sealed.mpeg4
    video/vnd.sealed.swf
    video/vnd.vivo                                  viv
    video/webm                                      webm
    video/x-fli                                     fli
    video/x-ms-asf                                  asf asx
    video/x-ms-wm                                   wm
    video/x-ms-wmv                                  wmv
    video/x-ms-wmx                                  wmx
    video/x-ms-wvx                                  wvx
    video/x-msvideo                                 avi
    x-conference/x-cooltalk                         ice

    I've tried both atom and xml protocols and all the different size options. Even if I open the movie directly in the mobile Safari app it still shows the broken video icon. (The videos will play in Chrome and Safari for the Mac.) It's almost like they're getting encoded with the wrong encoding profile for playback on iOS devices.

  2. I've also tried pulling back the HTML 4 option within the WordPress iOS app. No luck.

  3. Following up with some additional information...

    After moving a working video test file above and below the wordpress install root I've determined that the issue isn't related to mime types. The test video worked servered from htdocs root and into the root of the wordpress install. But once I descend into the wordpress install (files directories) the file stops working. Making me wonder if something in the .htaccess file is the culprit.

    --contents of .htaccess file below--

    RewriteEngine On
    RewriteBase /courses/

    #uploaded files
    RewriteRule ^(.*/)?files/$ index.php [L]
    RewriteCond %{REQUEST_URI} !.*wp-content/plugins.*
    #RewriteRule ^(.*/)?files/(.*) wp-content/blogs.php?file=$2 [L]
    RewriteRule ^(.*/)?files/(.*) wp-includes/ms-files.php?file=$2 [L]

    # add a trailing slash to /wp-admin
    RewriteCond %{REQUEST_URI} ^.*/wp-admin$
    RewriteRule ^(.+)$ $1/ [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule . - [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-.*) $2 [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
    RewriteRule . index.php [L]

    <IfModule mod_security.c>
    <Files async-upload.php>
    SecFilterEngine Off
    SecFilterScanPOST Off
    </Files>
    </IfModule>

  4. Found the ticket documenting the problem (known issue) in wordpress MS.

    Serving video to iOS devices does not work in Multisite Wordpress due to lack of byte-range support
    Apparently iOS requires byte-range support for audio and video. Serving a static .mp4 file to an iOS from Apache works fine, but serving the same file from a Wordpress MS 3.01 installation fails. This is because the file URL is rewritten to use ms-files.php. The PHP file does a readfile($file) on the file to serve it. This is incompatible with iOS devices and will fail.

    The problem, and a solution (supporting byte-range requests), is explained in 'Appendix A' here: http://mobiforge.com/developing/story/content-delivery-mobile-devices

    http://core.trac.wordpress.org/ticket/15552

Topic Closed

This topic has been closed to new replies.


About this Topic

Tags