Vitamio Multimedia Framework Introduction

Source: Internet
Author: User


function
Vitamio is a  hardware decoding and GPU rendering . With its simple and easy-to-use API interface, Vitamio has won the favor of many developers around the world. To date, more than 10,000 applications worldwide have been using Vitamio, covering more than 500 million users. Vitamio can play mms, RTSP, RTMP, HLS (m3u8)  A variety of common video streaming protocols, including  VOD and live streaming . Streaming media support Vitamio supports a variety of common streaming protocols that can be used on-demand or live streaming audio and video, such as the following common protocols can be seamlessly supported: 
     
  
  • hls-http
  • MMS
  • RTSP (RTP , SDP), RTMP
  • HTTP progressive streaming
  • live Streaming (m3u8)
The audio and video format Vitamio uses FFmpeg as the media parser and the main decoder, while developing a hard decode solution for different mobile platforms that perfectly supports H.264/AVC, H.263, MPEG4 and other popular video coding, covering hundreds of multimedia formats. The following table is just some of the most common video format support, except for the special indication that all support hardware acceleration:
  • Avi
  • Divx/xvid
  • WMV (usually only soft decode)
  • FLV
  • Ts/tp
  • RMVB (only soft decoding)
  • MKV
  • MOV
  • m4v
  • MP4
  • 3GP
Subtitle Support Vitamio support for subtitles is excellent, including a variety of common external subtitles and many video format embedded subtitles , with multiple subtitles and other features of the support is also very perfectIn addition to the common features listed above, Vitamio has done quite a lot of human work:
  • Streaming media playback buffering support
  • Multi-track and subtitle support
  • Granular CPU and GPU optimization
  • Support mobile phone to tablet various devices
  • Playback screen Proportional size adjustable
  • Automatic text encoding detection, refuse garbled
There are many more new features that are not listed, please refer to the development documentation.

faq
Vitamio name of the origin of Vitamio's Chinese name is " Vichy ." Vitamio from the English word Vitamin(vitamin), I hope Vitamio for the importance of Android multimedia developers, like Vitmain to the human body as indispensable. What's the relationship between Vitamio and Vplayer? Vitamio based on Vplayer development, so vplayer can play the Vitamio can also. Vitamio which instruction set is supported by the CPU? support ARMV6 and ARMv7 two kinds of ARM CPUs, while the VFP, VFPv3, NEON and other instruction sets are optimized accordingly. the Android version supported by Vitamio supports Android 2.1+ system and supports more than 95% Android Market. The Android 2.1 system was also basically supported, but no detailed tests were done. E/vitamio (1557): Java.io.FileNotFoundException:No content provider This is not a mistake, it's a normal process. Now play the video is done: first the URL as a contentprovider to open, if not open, directly as a URL to open. video/Video streaming (RTP, RTSP, etc.) can't play the problem! There are several possible situations where the video itself is problematic and you can play it with another player. Local speed does not give force/device itself is too low configuration. Video source card, itself bandwidth is not enough, direct access is also very slow. Nested m3u8 address video is encrypted it is recommended to use Vplayer and other players to test the video to ensure that external factors are excluded. How do I call Vplayer to play a video?  private void Startplayer (string url, string title) {Intent i = new Intent ();    I.setcomponent (New ComponentName ("me.abitno.vplayer.t", "me.abitno.vplayer.VideoActivity"));    I.setaction ("Me.abitno.vplayer.action.VIEW");    I.setdata (uri.parse (URL));    I.putextra ("DisplayName", title);  StartActivity (i); }How to ignore the confusion of Vitamio related class libraries when confused? -keep class io.vov.utils.** {*;} -keep class io.vov.vitamio.** {*;} Drag the progress bar while playing, the drag progress is not accurate? This is normal, not the player's problem. By default seek to the nearest keyframe, there is no guarantee that keyframes will be on any timestamp unless you are intra-only encoded. How do I turn on hard decoding? Enables the second parameter when instantiating MediaPlayer. Public MediaPlayer (Android.content.Context ctx, boolean preferhwdecoder)Why does each software upgrade re-unpack the decoding package? To ensure consistency with the version Vitamio in the current upgrade software. Vitamio Java layer Code has been exposed, you can change your own logic. 

Development Recommendations
1, the use of the Android Library mode Vitamio easy to use, easy integration, not prone to error. Jar mode is also supported for use. 2, to the player's activity settings android:process such as android:process= ": Vitamio", close the activity to kill directly, to prevent the underlying library may exist a bug caused by the crash. Similarly, you can switch episodes by turning off activity and re-startactivity. 3, increase the buffer processing into the player activity when the default display "Loading ...", the first start after the hidden, other reference website buffer processing documents can be. Otherwise there will be a black screen in the first time. 4, Android TV box is recommended to use the default RGB565 box if there is a flower screen or blurred situation, the general use of RGB565 can be.  5, balance compatible with more devices and Vitamio package size compatible CPU architecture more (ARM, x86, MIPS) Vitamio the larger the package, if you only want to support armv6+ device, you can use Dist/online_ Arm under the so, generally applicable to online video playback , if it is too large, you can use 7z decompression libarm.so, you can see the following folder and correspondence: <=> armv661 <=> vfp70 <= > armv771 <=> neon can be self-cropping and re-packaged. For more information, see hereHttps://github.com/yixia/VitamioBundle/wiki/How-to-use-Vitamio-4.2.0-online-version%3F6, set the appropriate buffer size Vplayer default buffer size setting (setbuffersize): If it is local video, set to 0; Network video, set to 512 * 1024 (in bytes). After onprepared, you can also set the volume, screen quality, anti-interleaving parameters. 8, set the speed play (Fast forward fast Rewind) MediaPlayer Setplaybackspeed method, the value range [0.5-2.0], the default 1.0.  9, set the edge of the next function file download setdatasouce use form uri.parse ("Cache:/sdcard/download.mp4:" + Uri), note that the path of the cache to exist and can be accessed. 10, concern, use the latest version of the Vitamio version of the latest release package address: Https://github.com/yixia/VitamioBundle/releases11. Users who are unfamiliar with git can also use SVN to fetch code from github such as 4.2.2RELEASE:SVN checkout https://github.com/yixia/VitamioBundle/tags/v4.2.212. Other useful articles see Wiki:https://github.com/yixia/vitamiobundle/wiki on GitHub

Test Address
Available Addresseshttp://7xt0mj.com1.z0.glb.clouddn.com/xia.v.1280.720.f4vhttp://7xt0mj.com1.z0.glb.clouddn.com/ lianaidaren.v.640.480.mp4http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8http:// dlqncdn.miaopai.com/stream/mvaux41a4lkuwlobbgugaq__.mp4http://112.253.22.157/17/z/z/y/u/ zzyuasjwufnqerzvyxgkuigrkcatxr/hc.yinyuetai.com/d046015255134077ddb3aca0d7e68d45.flv
hls-apple HTTP Live streaming-m3u8http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8http://live.3gv.ifeng.com/zixun.m3u8 (Live)HTTPHttp://www.modrails.com/videos/passenger_nginx.movhttp://wsmp32.bbc.co.uk/RTSPhttp://m.livestream.com (site)Rtsp://xgrammyawardsx.is.livestream-api.com/livestreamiphone/grammyawardsMMSMms://video.fjtv.net/setvMms://ting.mop.com/mopradiomms://112.230.192.196/zb12



From for notes (Wiz)

Vitamio Multimedia Framework Introduction

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.