MIME-type information without .htaccess - html

currently I am trying to host some videos embedded with html5 video-tag. The focus for this is to provide it (as far as possible) browser- , flash- and OS- independent.
I embedded webM, mp4 and ogg versions to provide maximum browser-coverage.
It works perfectly for iOS, Mac and Windows with multiple browsers.
However only Linux (tried Firefox and Conqueror) is refusing to play the videos. The error message displayed is that the MIME-types are not supported.
The solution i found so far is to add those MIME-types via a .htacces-file. Unfortunately there is at the moment no possibilty to use a .htaccess on the server and the Flash-fallback is not called because Firefox actually supports the video-tag.
My question is if there is any other way to provide those information allowing browsers on Linux to play the videos?

Related

Does iOS safari support playing cross domain audio?

I am trying to play audio after a touch on my website using audio element but the audio file is on aws cloud front. The audio is audible on Desktop Chrome but I cannot hear it on iOS Safari .
Do they permit it , if yes then is there a config file that we need to create ?
To answer your titled question: yes mobile Safari does allow to play cross domain HTML5 audio (just tested it again on my iOS7 iPad). Though there has been report it is not working well with CORS attribute.
You could try to wildcard CORS on CloudFront. Maybe this can help you.
Are you able to plug your iOS device on a Mac to use Safari debug console for iOS? If so there could be error showing up in the logs.

Using phonegap and html5 video tag: caveats?

I am planning to build a JavaScript/HTML5 app, and wrap it with phonegap to be installed on an android tablet.
In it, I want to show a video file.
Is it just a matter of creating an index.html file, and putting a mymov.ogv file in the same directory, and then using:
<video src="mymov.ogv"...>
and it will work on Android?
I have read about some problems with this, but my quest got me confused.
What are the caveats, if any?
PS: the video should be packaged within phonegap, such that the video is shown when the app is not connected to wifi. So it's a local file.
PPS: Since it's for internal use, I am able to choose a particular modern android version (if that makes any difference). There is no need to support old android versions whatsoever.
According to this resource: http://caniuse.com/ogv There is not support for ogv format in Android. Remember that Phonegap applications are just display in a rapped browser window-- So if the browser doesn't support it, you can't use it. Whether the video is on-board the device or streamed, doesn't matter.
You can certainly embed with the tag, but you might want to use the associated Javascript API to provide some control over the video.

How do I make this video work on Firefox (Mac) and Chrome (Windows)?

CODE:
<video controls width="100%">
<source src="/learn/guide/test.mp4">
<p>Your browser does not support H.264/MP4.</p>
</video>
The above works on everything except Firefox on Mac and Chrome on Windows.
On Firefox for Mac I get the following error message:
no video with supported format and mime type found
On Chrome for Windows I get the following error message:
the video cannot be found it may have been removed from the server.
The chrome error doesn't make sense since it's working on all other browsers.
How can I remedy this?
Do you have alternate source files? Firefox (Mac) cannot play .mp4. a link
Chrome can. Have you tried other browsers on that same Windows computer? Ensure you have network connectivity to wherever that path goes, and reboot, if you must.
While I only use mediaelement.js for Audio currently, this type of situation is exactly what it was made for.
One drawback is you need to maintain several file formats, but this mainly concerns browser limitations. AFAIK you can't use MP4 in all common browsers. Mediaelement.js is not really for streaming either.

How to play an AAC+ stream in Chrome?

I’ve tried several combinations of types and setting in (the excellent) mediaplayer.js, but cannot get BBC Radio 3 to play in Chrome. The stream URL is here, and the playlist from which it is taken is here.
The tag is:
<audio src="http://bbcmedia.ic.llnwd.net/stream/bbcmedia_intl_lc_radio3_p?s=1362261751&e=1362276151&h=47e8b2755e05d1a5ceeb665f116984de" type="audio/mp4" id="player"></audio>
Looking at Chrome’s inspector, I see that the network is calling the stream, but it just loads indefinitely, without audio starting.
Other streams are working fine (demo), but this particular one is problematic, and I assume it has to do with the AAC+ format.
Edit: The instantiation code is here, figure it’s clearer than pasting the whole thing in.
Edit 2: It works in Safari (Mac)! Which I assume is related to Quicktime. Which is why I believe that AAC+ is the issue.
See https://groups.google.com/forum/m/#!msg/jplayer/9Ks2Crfjwrg/jDCDBgv3qr0J. It seems that AAC+ support is somewhat odd. It also seems that AAC+ can be placed in various containers. like m4a and FLV. Also see stackoverflow.com/questions/4018596/aac-streaming-from-shoutcast-in-flash.
Firstly, which OS, which Chrome version did you test with?
AAC+ is covered by software patents so it isn't going to be available if your OS has disabled it in the ffmpeg library that Chrome depends on (on OS where Chrome doesn't bundle its own ffmpeg). If you are running something like debian or ubuntu it might be disabled by default for legal reasons. On Windows Chrome may have removed support from the bundled ffmpeg themselves to avoid liability issues.
Alternatively since AAC+ supports DRM it might be an issue with BBC encrypting or blocking the stream in a way that Chrome doesn't support.
If I'm right then there's probably no good solutions since you can fix it on your machine (with a custom Chrome/FFMpeg build) but not on your end-users side where it really matters. Flash supports AAC so you could fallback to a flash player using the codec fallback techniques described here but you might run into the crossdomain/licensing issues described here.
The MDN codec page claims Chrome 3.0 (but not Chromium) supports AAC in MP4 containers but it does not clarify whether that support extends to AAC+ (unless that's what they mean by "main only").
html audio player plays aac+ file in chrome browser.
<audio id="audio1" controls autoplay>
<source src="test.aac"></source>
</audio>
it does play aac+ streams if it is from SHOUTCAST v2.
(sometime crossdomain.xml must be exist in shoutcast folder for audition)

Cross browser OGG audio

I have to play an ogg audio file in the background when the user hits a "Music On" button. Currently the page uses an AUDIO tag, and it works in Firefox, but not in IE (confirmed by this table).
Is there a really cross-browser way to play an ogg audio file, if possible without Flash?
I am aware of the existence of specific libraries like JPlayer or SoundManager, but do I really have to use one of them? After all, it is just to play a sound...
Forget about cross-browser. Stick with ogg. It's much better than mp3 in every way. Tell people to change their browser to one which supports ogg (e.g. Chrome, Firefox, Opera). If they don't want to change, then forget about them; they don't deserve to hear your audio. If your client doesn't understand this, leave him and let him waste money on one developer after another until he finds a "yes man" developer who will give him a terrible website that will be a nightmare to use and will need completely redeveloped in a year's time.
The Company I work for has dropped support for IE6 for apps and websites and dropped support for IE7 when it comes to apps. Personally, I don't want to be developing for IE at all until I met a friend of mine working elsewhere. She was allowed to work from home, but she had to use RDP (Remote Desktop Connection in Windows) thats supported as a web interface only via IE. Some companies use Windows Group policies to disable USB drives etc. The terminals in these companies can have IE only! So as much as I would hate to admit, cross browser compatibility is a serious issue.
Flash would be the number one choice of plugin to play ogg files. Now, the following scenarios may occur:
iOS (iPad and iPhone) : HTML5 Audio Tag
Android / Chrome / Safari : HTML5 Audio Tag
Opera
Firefox
IE
For 3, 4 and 5 it really depends on the user. Even if they have one of Real Player, QuickTime or Windows Media Player, the would be able to play ogg files. There is a case where the specific ogg codec is not installed. In this case they will get a prompt on the top of their browser, telling them to install the specific codec.
We are talking about people insisting on using IE or insisting on a really really old version of firefox and who don't have WMP (by default on Windows), RealPlayer or QuickTIme installed but have an Internet connection.
Even jQuery leaves out 0.0001% of users ! :-P
You can probably consider using a .wav file, but I'm not sure that works.
The simple answer: no, there's no way to do it without Flash. My approach: simply create a script that converts a single file to multiple encodings.