Research on multimedia development solutions for mainstream mobile platforms

Source: Internet
Author: User

Author: Liu fangqing 2010-03-17

 

Based on some of my development experience and some online materials, I will summarize the multimedia support and development ideas of various mobile platforms. Windows Mobile, Symbian, MTK, Android, iPhone, Zhan Xun, brew, and blackberry.

 

 

1. Windows Mobile:

 

Ms has been positioned in the middle-and high-end business groups, and its support for multimedia is relatively low. WMP (Windows Media Player) looks weak. By default, only the MS format WMV, WMA, and Avi are supported. Other formats must be expanded by the user. In fact, WMP is a player developed based on DirectShow. As long as you install various decoder and demuxer filters on the system, WMP can support various formats, commonly used ffdshow and Haali media splitter. In addition, filters cracked from RealPlayer support RM/rmvb.

 

Therefore, the idea of developing a player on WM is basically as follows:

 

1) extended Windows Media Player: Use
User Interface plug-ins,
You can customize various skins for WMP. If you want to control WMP in other programs, you need to use
User interface Background plug-ins,
This involves the knowledge of the COM server. For details, refer
Wang keweiboke





2) perform secondary development based on tcpmp. Tcpmp is the most flow multimedia player open source project on WinCE/Wm (the source is closed and commercialized as coreplayer), and the final version is 0.72rc, supports MP3/AAc/WMA/MP4/AVI/ASF and HTTP protocols. Tcpmp is the best choice for developing a player quickly on WM. There are some ways to modify the tcpmp skin on the Internet. Few people share how to use plug-in to add RTSP protocol or other file formats for tcpmp. I don't know much about it either (I tried to strip the 3GP parser from tcpmp and eventually failed ).



3) Develop your own player. Use DirectShow or open source library. For example, decode libmad of MP3, live555 or mpeg4ip of RTSP, and transplant Xvid or FFMPEG through video decoding.

 

 

2. Symbian:

 

Nokia mobile phones have long been positioned for multimedia entertainment, and support for audio and video formats is still comprehensive. 3GP/MP4, H.263/MPEG4/AAc/AMR/MP3/WMA are baseline, and high-end smart machines support H.264. Therefore, the idea of developing a player on Symbian is as follows:

1) Call the interface provided by Symbian: You can directly use the cvideoplayerutility class for video playback. The formats supported by RealPlayer are as follows. Including 3GPP streaming media playback;

For audio playback, cmdaaudioplayerutility can be used for local playback, while cmdaaudiooutputstream can be used for stream playback, while mmfcodec decoding efficiency is a little lower than cmdaaudiooutputstream, but it is more compatible with mobile phones, because it is originally intended.

2) self-developed: local players are basically unnecessary. For network players, do not listen to the single-thread multi-ao solution recommended by Symbian, because it is very likely that the download and decoding of the AO shows the CPU grab.

 

3. MTK:

 

6223/6225 videos only support motion JPEG Avi, 6253/6235 supports MP4 encode/decode, and audio decoding 6225/6253/6235 supports AMR/MP3/AAc/WAV, 6223 supports AMR, MP3, and WAV. There are two main problems for multimedia applications on MTK: 1) operational efficiency; 2) usage of ROM/Ram.

1) music player: Call mdi_audio_play_string_with_vol_path

2) Video Player: Soft Decoding and cropping and optimization are required. For the process, refer to the MTK system player.

 

4. Android/ophne:

 

Android multimedia architecture is implemented based on the opencore platform of a third-party Packet Video Company. It supports all common audio, video, static image formats, and codec) you can use the openmax 1l interface to easily support the formats supported by hardware/software codec plug-ins, including MPEG4 and H. 264, MP3, AAC, Amr, JPG, PNG, GIF, etc. Streaming Media supports 3GPP, HTTP, RTSP/RTP, and even H324-M standard-based video conferencing. Opencore is implemented through C/C ++ and called through Java JNI.

Therefore, Android Application Development generally does not focus too much on opencore, but calls the upper-Layer Media API. Multimedia Applications can be developed quickly and conveniently, which means that multimedia developers are at risk of becoming cabbage. The underlying Linux architecture is another theory :)

 

5. iPhone

 

As the benchmark for the next generation of smartphones, the iPhone has powerful multimedia performance. Audio supports MP3/AAc/WAV, while video supports only MP4/mov (MPEG4 and H.264 encoding ). For copyright and proprietary formats, the iPhone can only copy MP4 files supported by the iPhone when copying files through iTunes. This method is closed but also in line with Apple's style.

 

Therefore, it is unnecessary to develop a local player on the iPhone. The Network player is transplanted as usual, because the iPhone supports Standard C/C ++ and Object C.

 

6. Zhan Xun

 

Not very open, not very friendly for third-party development. Even the 52rd BBS does not have the Display Section... supports hard decoding of H.263/MPEG4. The audio format is unknown. However, due to its poor hardware performance (CPU clock speed of more than 50 MB), it is difficult to do multimedia applications.

 

7. Brew:

 

The Mobile Phone platform launched by Qualcomm mainly supports C/C ++. However, there are too few users bound to CDMA in China. At present, China Telecom has switched its terminal development platform from Brew to j2_m2. the development prospects are not clear.

 

8. Blackberry:

 

Blackberry is a dedicated operating system with comprehensive multimedia support. Video files support MPEG4 SP/H.263/H.264 and WMV. audio files support MP3, AAC, and WMA. Written in Java. Developers can use the j2_api or the proprietary BlackBerry API.

 

 

 





 

 

 

 

 

 

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.