data reference (dref) atom support in iOS - ios

quiktime file format has suport for dref atom. Where actual video data can reside in separate file on webserver.
to test the feature I created a file with dref atom. http://vihosting.net/sample_iTunes_reference.mov
This file plays nicely on quicktime player, but iPhone/iPad gives error, i am not sure if this is issue with generated file or device support.
If iOS (iphone,ipad) suports dref atom.
If not is there any official document from apple which stats this explicitly.

AVFoundation (media framework used in iPhone/iPad) supports limited number of video codecs. The sample file you provided is encoded with a rare codec 3ivx D4 4.5.1 (some applications even cannot recognise it), which is not supported in iOS.
Encode video using either h264 or mpeg4 codecs and use .mov or m4v container for iOS.

Related

Play MKV video using videojs on ios

I have integrated videojs in my website and there are mostly Mkv files to play in videojs. Now the concern is that iPhone is not playing Mkv videos and showing messages like "format not supported". If anyone has an idea regarding this issue or any alternative, please let me know.
HTML5 video has to be a format supported by the browser natively, or via media source extensions. MKV is not supported by iOS nor widely supported on desktop browsers - even if some play, others will not.
If you need a single video format, MP4/h.264/aac is the most widely supported format, but consider HLS for adaptive streaming.

Workaround playing a video .mov file in iOS app? Also related to Adobe Flash Animations

After researching lots on StackOverflow and Class References, iOS MPMoviePlayerController cannot play .mov video files. AVPlayer can play .mov files but there are no controls.
I want my app to play .mov files, because Adobe Flash Animation provides .mov as the cleanest and native looking video. If I convert the same video to mp4 (supported formats) there is loss in quality, even when I turn the video rate to 100 MB/s and highest quality video.
Quite ironic, QuickTime is Apple's intellectual property and its products do not support .mov video files.
How do I get around this issue?
MPMoviePlayerController (and iOS in general) does support .mov files. See Apple's class documentation, section "Supported Formats". But only a limited number of video codecs are supported.
Deceptively, the Quicktime ".mov" format is not a video codec, but rather audio/video container format that can contain video and audio (and some other things) in any number of compression codecs (h.264, mpeg2, ProRes, MJPEG, AAC, mp3, etc.)
Your files don't work because they include video compressed with a codec which iOS does not support (maybe PhotoJPEG if they are Flash animations?). You can check the format of your videos by opening them in Quicktime Player on Mac OS X and clicking "Show Movie Inspector" in the Window menu.
It is not possible to add support for additional codecs to the native iOS video playback system (MPMoviePlayerController and friends). This leaves two options;
Recompress your files to make them compatible
Use a different video playback framework.
You say you have already tried recompressing the files, but this is still the best option.
I encourage you to try recompressing the files with Handbrake. The h.264 codec is capable of excellent results (see BluRay movies, the iTunes Movie store, etc.)
If you really must play back your animations in their current format, you'll need to use another video playback framework. I suggest you look at libVLC and VLCKit from the excellent VideoLan project (I'm having problems accessing the VLCKit project pages, but a fork is available here). Be aware, non-native video playback will very likely not be hardware accelerated and so will eat your users' batteries.
One last thing, if your videos are short and silent… might animated GIF be an option?

How to play xiph.org audio codecs in iPhone/iOS?

I have music encoded in Vorbis format and also starded encoding some of my albums to the new Opus format. Is there a way I can copy and play them to my iPhone ? xiph.org wiki page states about vorbis support, that in the free software side, it's "work in progress", while it cites a radio stream and a video application that have Vorbis support, but what about audio support ?
To summarize the requirements:
Vorbis support
Opus support
some way to copy or make the album available
free software would be a plus, since proprietary software could be slow to adopt Opus and I could even add support for additional codecs myself by writing patches
[Edit: essential media player features required]
Playlist support, etc.
Flawless playback must be a strong guideline (for example, some players have audio decoding glitches every 5 minutes played)
http://wiki.xiph.org/Vorbis_Software_Players#iPhone
Capriccio music player for IOS supports FLAC, APE, WV, MPC, WAV, M4A, MP3, OGG, AIFF, CAF, MID, OPUS
I've used it on all my IOS devices (including iPad 2/3/Air and iPhone 4 & 6) with FLAC encoded music and never experienced audio glitches.
Open source licensing on iOS is a difficult matter. VLC for iOS plays Opus and Vorbis. But as a music player it's quite useless.
Since iOS 11 it supports native Opus streams, however you still need to encapsulate them in CAF format. For apps (and even in Safari) you might try to pass that CAF stuff with the audio/aac mimetype and should work.
Try with the afconvert available in macOS with something like this:
afconvert input.wav -f caff -d opus -b 32000 output.caf
There is a test site to try CAF in your Safari browser.
Source: https://hetzel.net/2017-06-12/ios-11-opus-support-in-podcast-feeds/

playing AVI and Divx in iOS

I'm seeing this app "Azul Media Player" that plays AVI files, divx, wmv, and a lot more video files. How do they do that? How can I play AVI videos in my app? Thanks.
iOS does not support divx and wmv files natively, so most likely they are using a third-party library to do the decoding. For example, this question has some links about getting FFmpeg embedded in an iPhone app. (You would have to be careful about the licensing, because FFmpeg is licensed under the LGPL, although with any of these open source libraries, you will want to read the license closely.)

How facebook stream MPEG-DASH Videos in iOS browsers?

I am studying some of the concepts of MPEG-DASH and it's features. I have researched about adaptive streaming technology . Now i am trying to stream MPEG-DASH videos in browser for live telecasting and on demand videos .
I have gone thorough some of the open source libraries . I can able to work DASH on latest browsers which are supporting Media Source Extension (MSE) .But i couldn't able to work on iOS devices and it's not supporting MSE .
So i want to know how can i work DASH videos in iOS browser and how Facebook and other services streaming their videos in iOS browsers?
Is Facebook/other services supporting DASH videos in iOs ?
How Facebook/other services streaming videos in iOS?
Is Facebook using HLS in iOS for streaming ? if it is, How they convert DASH to HLS (if they stream DASH videos) ?
They trying to check Operating system (OS) first and it will select HLS/DASH with respect to that OS . Is it like they are doing ?
Detailed explanation would be more helpful .
Safari (the browser) on iOS does not support media source extensions. Anyone doing adaptive streaming on that platform is using the native HLS implementation in Safari.
<video src="http://example.com/manifest.m3u8"></video>
Both DASH and HLS are just text-based manifests pointing to video files, so you wouldn't convert a DASH file to an HLS file, you would generate them independently. Now that iPhones are support fragmented MP4s you can use the same video files for both DASH and HLS, whereas before you needed different files for each.

Resources