videojs / video.js

Video.js - open source HTML5 video player
https://videojs.com
Other
37.85k stars 7.43k forks source link

How was the video on front page encoded? #1267

Closed AwokeKnowing closed 10 years ago

AwokeKnowing commented 10 years ago

I realise this is not the best place, but...

I have an mp4, encoded with handbrake as h264 aac. It doesn't work in IE. But the birds/fish video on the videojs.com front page works fine in IE.

What is the exact specification/process/settings that were used on that video to encode it? I need to do the same to my video.

gkatsev commented 10 years ago

Are you seeing specific errors in IE? Does it work if you wait the length of the video? Handbrake should have a "for web" setting you can use for encoding.

AwokeKnowing commented 10 years ago

it just says the video could not be loaded, it could be the network or the format is not supported. (X) It says that instantly. I've already tried downloading the videojs demo video and hosting it on our server (actually edgecast) and it works perfectly. So there is no mime type or server/network issues. It's all in the mp4 itself. I'd like to know industry standard settings for encoding an mp4, or whatever "standard" was used to encode the videojs demo video. Simply setting it to h264 seems to not do it.

gkatsev commented 10 years ago

It's possible that the web server isn't returning the right mimetype for your video, maybe.

AwokeKnowing commented 10 years ago

again, I put the 2 .mp4 videos on my server, in the same folder. One works, one doesn't. Do you agree that that rules out server/mime type issues? And do you agree that that also rules out code issues? By just changing the code from //myserver.com/myfile.mp4 to //myserver.com/ocean.mp4, everything works perfectly in IE.

Chrome plays myfile.mp4 just fine

kenmcd commented 10 years ago

Please post a link to the page. Then we can examine the actual MP4 for the actual encoding parameters used. Instead of just guessing.

AwokeKnowing commented 10 years ago

Here's the link to the video.

http://wpc.335C.edgecastcdn.net/80335C/streams/alturki_final.mp4

I'd appreciate if you can find something strange about it, though most important to me is to find what is the "proper" way to encode, and if handbrake can do that or if I need something else.

mmcc commented 10 years ago

I'm on an atrocious internet connection right now (45 minutes to download the file if that gives an idea), so I can't take easily take a look at that, but I can answer the original question.

To be honest, we just ran it through Zencoder. The only parameters specified during the process were a max width and format (we produced one h.264 and one WebM output). I'm sure someone will be able to get to this before me, but the best thing for you to do would be use MediaInfo to compare the two files.

kenmcd commented 10 years ago

You did not say which version of IE, so I guessed it could be using the Flash fallback. Flash Player can have problems with very low bitrates. So I tested your video with a plain vanilla Flash-based player (Open Video Player). It played fine on all browsers tested – including IE11.

So I tested on the JW Player test page. Worked file on other browsers, it also did not play the video on IE11.

Error message is - Error loading media: File cannot be played

It appears the IE native MP4 playback does not support the encoding of this video.

The most likely suspects are ...

Format profile : Main@L4.0 Format settings, CABAC : Yes Format settings, ReFrames : 4 frames

Older iDumb devices will not play this video. Those devices do not support CABAC or more than 2 RefFrames. It could be that IE also has some limitations like this.

I have not been able to find any specific information about exactly what encoding parameters are supported in IE native MP4 playback.

The same encoding settings in the oceans.mp4 file that does work:

Format profile : Baseline@L3.0 Format settings, CABAC : No Format settings, ReFrames : 3 frames

So you may want to try those settings and see if your video then works in IE.

If anyone has a link to the actual specifications for IE native MP4 video support, please share the link.

Edits by @mmcc: block quotes for readability.

mmcc commented 10 years ago

Thanks for the great response @kenmcd! I think he's on the right track here, this one seems like a IE-specific issue. I did a quick look for any sort of IE video support specs but came up empty handed. This question sounds like a good fit for Stack Overflow.

Why was this closed?

This issue was closed because it does't require any direct changes to Video.js core. The conversation can continue, but I need to close this to keep the open issue list focused on development.

This question may be better fit for Stack Overflow or IRC (#videojs), where you're most likely to get a quick response. If you do post to Stack Overflow or if a post already exists, please link to it here.

Cheers!
@mmcc