Closed Bug 935469 Opened 6 years ago Closed 2 years ago

veoh.com sends desktop version, video doesn't play

Categories

(Web Compatibility :: Mobile, defect, P5)

Other
Gonk (Firefox OS)
defect

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: hsteen, Assigned: adamopenweb)

References

()

Details

(Whiteboard: [mobile-compat-form] [video] [clientsniff][sitewait] [country-all])

Site: http://veoh.com
veoh.com sends desktop version, video doesn't play

:: Steps To Reproduce

veoh.com sends desktop version, video doesn't play ("requires Flash" error message)

:: Expected Result

video

:: Actual Result

no video

:: Additional Information

Software Version: 1.1
Reporter's User Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:25.0) Gecko/20100101 Firefox/25.0
Server-side sniffing redirects both Firefox on Android and Safari on iPhone to www.veoh.com/iphone/ 
Firefox OS needs the same treatment.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Whiteboard: [mobile-compat-form] → [mobile-compat-form] [video] [serversniff][contactready]
Email sent to info@veoh.com:

Hi,

I'm working at Mozilla to help resolve web compatibility issues. We have noticed an issue with www.veoh.com not working properly for Mozilla Firefox OS browser. 
Could you please put me in contact with the right person within your organization to discuss the issue? 

The details of the issue are documented on the Mozilla bug tracker: https://bugzilla.mozilla.org/show_bug.cgi?id=935469

Thank you for your time,

Adam Stevenson
Mozilla
Assignee: nobody → astevenson
Status: NEW → ASSIGNED
Whiteboard: [mobile-compat-form] [video] [serversniff][contactready] → [mobile-compat-form] [video] [serversniff][sitewait]
No response, trying twitter.
Does video play for you on Firefox Android?
Flags: needinfo?(hsteen)
Received response looking for more information to resolve the issue.
The video does play if I go to veoh.com/iphone and try to play something. Tested in Fx Android beta on a HTC One with settings stagefright.disabled false and stagefright.force-enabled true (not sure what setting(s) matter, site sends .mp4 files)
Flags: needinfo?(hsteen)
Response: we deployed an update and made changes per below. Please let me know if you have any questions.

Firefox does not support mp4, so I changed the specifications as follows:
   - If a user agent includes Android and mobile and Firefox, play contents with progressive download method.
   - Other than that, play with video tag.
Hallvord. Do you mind testing to see if the bug is resolved?
Flags: needinfo?(hsteen)
"Firefox does not support mp4". This isn't true though for Android, right?
"Android and mobile and Firefox" - to handle Firefox OS devices, it would be better to make that "mobile and Firefox". It works OK on Android now (video opens in full-screen) and it works well on Firefox OS (plays MP4 videos inline) *if* I go to the veoh.com/iphone URL manually. 

Regarding MP4-support, Firefox OS 1.1 and above can play MP4 in a <video> element. It is also supported in Firefox 20 and greater on Android, but it might depend a bit on what Android version is running - some links that document the potential confusion:
https://www.mozilla.org/en-US/mobile/20.0beta/releasenotes/
https://hacks.mozilla.org/2012/11/h264-video-in-firefox-for-android/
http://arstechnica.com/information-technology/2012/11/mozilla-ships-firefox-with-h-264-support-on-android/

I would recommend using canPlayType(), play <video> elements if canPlayType() is optimistic, and falling back to <a href=foo.mp4> links if not. However, the current solution is already working quite well, so it's just a matter of getting Firefox OS the same treatment.
Flags: needinfo?(hsteen)
I emailed our contact back and shared your findings.
Whiteboard: [mobile-compat-form] [video] [serversniff][sitewait] → [mobile-compat-form] [video] [serversniff][sitewait] [country-all]
Sent a follow up about getting FFOS UA string detected.
No response as of yet.
Firefox OS is still receiving the Desktop site instead of the mobile site


→ http --print hH http://www.veoh.com/ 'User-Agent:Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0'
GET / HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Host: www.veoh.com
User-Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0

HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Encoding: gzip
Content-Length: 8690
Content-Type: text/html; charset=UTF-8
Date: Wed, 15 Apr 2015 07:29:43 GMT
Keep-Alive: timeout=5, max=95
Server: Apache/2.2.10 (Unix) PHP/5.2.6
Set-Cookie: abtest=t101; expires=Thu, 16-Apr-2015 07:29:43 GMT; path=/; domain=.veoh.com
Set-Cookie: veohCookie="VisitorUID=51C6BEDA-9FAF-DED9-31B0-5BAB3A92328A&LastUpdate=15/Apr/2015:00:29:43 -0700&first=0"; domain=.veoh.com; Expires=Sun, 14 Apr 2019 07:29:43 GMT; Path=/
Vary: Accept-Encoding
X-Powered-By: PHP/5.2.6



→ http --print hH http://www.veoh.com/ 'User-Agent:Mozilla/5.0 (Android; Mobile; rv:36.0) Gecko/36.0 Firefox/36.0'
GET / HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Host: www.veoh.com
User-Agent: Mozilla/5.0 (Android; Mobile; rv:36.0) Gecko/36.0 Firefox/36.0

HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Encoding: gzip
Content-Length: 8689
Content-Type: text/html; charset=UTF-8
Date: Wed, 15 Apr 2015 07:30:03 GMT
Keep-Alive: timeout=5, max=94
Server: Apache/2.2.10 (Unix) PHP/5.2.6
Set-Cookie: abtest=t101; expires=Thu, 16-Apr-2015 07:30:03 GMT; path=/; domain=.veoh.com
Set-Cookie: veohCookie="VisitorUID=F2D8EFC3-A89D-8CC4-0437-2473DF3D7FF1&LastUpdate=15/Apr/2015:00:30:03 -0700&first=0"; domain=.veoh.com; Expires=Sun, 14 Apr 2019 07:30:03 GMT; Path=/
Vary: Accept-Encoding
X-Powered-By: PHP/5.2.6


And this, just because of 

<SCRIPT LANGUAGE="JavaScript">
if (  navigator.userAgent.indexOf('iPhone') > 0 
   || navigator.userAgent.indexOf('iPad') > 0 
   || navigator.userAgent.indexOf('iPod') > 0 
   || navigator.userAgent.indexOf('Android') > 0 
   || navigator.userAgent.indexOf('BlackBerry') > 0 
   || navigator.userAgent.indexOf('Windows Phone') > 0) {

   var url = decodeURI(location.href);
   // rest of the script

}
</SCRIPT>


This is easy to fix and make it more elegant:

iPhone, iPod, iPad, Windows Phone have a common token -> "Mobile".

var ua = navigator.userAgent.toLowerCase();
var mobile = (/mobi|android|blackberry|mini/i.test(ua));
   if (mobile) {

   var url = decodeURI(location.href);
   // rest of the script

   }
// ]]>

note that there are a lot more mobile, but at least this script as a wider net than the previous one.
Whiteboard: [mobile-compat-form] [video] [serversniff][sitewait] [country-all] → [mobile-compat-form] [video] [clientsniff][sitewait] [country-all]
Adam,

could you contact them with the new details and the fixed script. Or send me your contact by private emails.
Thanks.
Flags: needinfo?(a.stevenson82)
Flags: needinfo?(astevenson)
Priority: -- → P5
Closing as we are not working on Firefox OS anymore.
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → WONTFIX
Product: Tech Evangelism → Web Compatibility
You need to log in before you can comment on or make changes to this bug.