Advanced Multimedia Supplements

Last updated

In computing, the Advanced Multimedia Supplements (also JSR-234 or AMMS) is an API specification for the Java ME platform. Practically speaking, it is an extension to JSR 135 Mobile Media API providing new features, such as positional 3D audio processing, audio and video effects processing, better controls for digital camera, and better support for analog radio tuner including Radio Data System. AMMS was developed under the Java Community Process as JSR 234.

Contents

Features and profiles

JSR-234 defines six feature sets, namely Media Capabilities, and each define minimum implementation requirements in order to try to avoid fragmentation and to define a common minimal base line for the implementations. Every JSR-234 implementation must support at least one Media Capability. The six Media Capabilities are described in the table below.

Media CapabilityDescription
Music CapabilityMusic Capability mandates equalizer and audio level control for the main mix of the application.
3D Audio Capability3D Audio Capability mandates support for at least one simultaneous 16 kHz / 16 bits 3D audio sound source and for a global reverberator. Distance attenuation behavior and location control must be supported for the sound source.
Camera CapabilityCamera Capability mandates support for controlling zoom, flash, focus and burst shooting properties of the main camera of the device (to the extent the camera hardware supports them). It also mandates JPEG encoding for the photos.
Image Encoding CapabilityImage Encoding Capability mandates transcoding of Image objects into JPEGs.
Image Post-processing CapabilityImage Post-processing Capability is a proper super set of Image Encoding Capability. In addition, Image Post-processing Capability mandates image processing effects (like monochrome and negative), image transformations like mirroring and cropping, and setting of overlays on top of the original image. Furthermore, JPEG to JPEG image processing must be possible.
Tuner CapabilityTuner Capability mandates support for normal FM/AM radio controls like tuning, seeking, squelch, stereo mode, signal strength query and preset. RDS is not mandated.

Optional features

In addition to the Media Capabilities, the device is free to support any of the optional features including:

Versions

Implementations

Mobile devices

Emulators

Chipsets and engines

There are also implementations targeted mainly for mobile device manufacturers.

Other APIs for similar purposes

Related Research Articles

Java Platform, Micro Edition or Java ME is a computing platform for development and deployment of portable code for embedded and mobile devices. Java ME was formerly known as Java 2 Platform, Micro Edition or J2ME.

Mobile Information Device Profile (MIDP) is a specification published for the use of Java on embedded devices such as mobile phones and PDAs. MIDP is part of the Java Platform, Micro Edition framework and sits on top of Connected Limited Device Configuration (CLDC), a set of lower level programming interfaces. MIDP was developed under the Java Community Process. The first MIDP devices were launched in April 2001.

The Connected Limited Device Configuration (CLDC) is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation. The CLDC is combined with one or more profiles to give developers a platform for building applications on embedded devices with very limited resources such as pagers and mobile phones. The CLDC was developed under the Java Community Process as JSR 30 and JSR 139.

Binary Runtime Environment for Wireless

Binary Runtime Environment for Wireless is an application development platform created by Qualcomm, originally for code division multiple access (CDMA) mobile phones, featuring third-party applications such as mobile games. It is offered in some feature phones but not in smartphones. First developed in 1999, as a platform for wireless applications on CDMA-based mobile phones, it debuted in September 2001. As a software platform that can download and run small programs for playing games, sending messages, and sharing photos, the main advantage of Brew MP is that the application developers can easily port their applications among all Brew MP devices by providing a standardized set of application programming interfaces. Software for Brew MP enabled handsets can be developed in C or C++ using the freely downloadable Brew MP software development kit (SDK). The BREW runtime library is part of the wireless device on-chip firmware or operating system to allow programmers to develop applications without needing to code for system interface or understand wireless applications. BREW is described as a pseudo operating system, but not a true mobile operating system. BREW is not a virtual machine such as Java ME, but it runs a native code.

Java APIs for Bluetooth Wireless Technology (JABWT) is a J2ME specification for APIs that allows Java MIDlets running on embedded devices such as mobile phones to use Bluetooth for short-range wireless communication. JABWT was developed as JSR-82 under the Java Community Process.

The Mobile Media API (MMAPI) is an API specification for the Java ME platform CDC and CLDC devices such as mobile phones. Depending on how it's implemented, the APIs allow applications to play and record sounds and video, and to capture still images. MMAPI was developed under the Java Community Process as JSR 135.

The Open Mobile Terminal Platform (OMTP) was a forum created by mobile network operators to discuss standards with manufacturers of mobile phones and other mobile devices. During its lifetime, the OMTP included manufacturers such as Huawei, LG Electronics, Motorola, Nokia, Samsung and Sony Ericsson.

Nokia Browser for Symbian was the default web browser for the S60 and Symbian mobile phone platform. The browser is based on a port of Apple Inc.'s open-source WebCore and JavaScriptCore frameworks which form the WebKit rendering engine that Apple uses in its Safari Web browser.

OpenSL ES is a royalty-free, cross-platform, hardware-accelerated, C-language audio API for 2D and 3D audio. It provides access to features such as 3D positional audio and MIDI playback. It is made for developers in the mobile and gaming industry and is working toward allowing for easy porting of applications across multiple platforms.

The Location API for Java ME is a compact and generic Java 2 ME API that produces information about the device's present physical location to Java applications. This API can be optionally supported by mobile phone and PDA manufacturers, with the minimum Java platform required for this API being CLDC v1.1.

JavaFX Java software platform for GUI

JavaFX is a software platform for creating and delivering desktop applications, as well as rich web applications that can run across a wide variety of devices. JavaFX has support for desktop computers and web browsers on Microsoft Windows, Linux, and macOS, as well as mobile devices running iOS and Android.

The Nokia 6000 series or Classic Business series is range of mobile phones marketed by Nokia. This family of phones is notable for their conservative, unisex designs, making the family popular with business users.

The phoneME project is Sun Microsystems reference implementation of Java virtual machine and associated libraries of Java ME with source, licensed under the GNU General Public License.

Nokia 2730 classic

The Nokia 2730 classic is a Nokia Quad-band GSM/UMTS 3G cell phone that includes a camera, FM radio, Bluetooth, music and video player, as well as several internet-based applications.

Symbian Discontinued mobile operating system

Symbian is a discontinued mobile operating system (OS) and computing platform designed for smartphones. Symbian was originally developed as a proprietary software OS for PDAs in 1998 by the Symbian Ltd. consortium. Symbian OS is a descendant of Psion's EPOC, and was released exclusively on ARM processors, although an unreleased x86 port existed. Symbian was used by many major mobile phone brands, like Samsung, Motorola, Sony Ericsson, and above all by Nokia. It was also prevalent in Japan by brands including Fujitsu, Sharp and Mitsubishi. As a pioneer that established the smartphone industry, it was the most popular smartphone OS on a worldwide average until the end of 2010, at a time when smartphones were in limited use, when it was overtaken by iOS and Android. It was notably less popular in North America.

Mobile 3D Graphics API

The Mobile 3D Graphics API, commonly referred to as M3G, is a specification defining an API for writing Java programs that produce 3D computer graphics. It extends the capabilities of the Java ME, a version of the Java platform tailored for embedded devices such as mobile phones and PDAs. The object-oriented interface consists of 30 classes that can be used to draw complex animated three-dimensional scenes. M3G was developed under the Java Community Process as JSR 184. As of 2007, the current version of M3G is 1.1, but version 2.0 is in development as JSR 297.

Nokia Asha platform

The Nokia Asha platform is a mobile operating system (OS) and computing platform designed for low-end borderline smartphones, based on software from Smarterphone which was acquired by Nokia. The platform inherits UI similarities mostly from MeeGo "Harmattan", and replaces Series 40 on Nokia's low-end devices. The user interface design team was headed by Peter Skillman, who had worked previously on webOS and the design of MeeGo for the Nokia N9.

Firebase Cloud Messaging (FCM), formerly known as Google Cloud Messaging (GCM), is a cross-platform cloud solution for messages and notifications for Android, iOS, and web applications, which as of 2021 can be used at no cost. Firebase Cloud Messaging allows third-party application developers to send notifications or messages from servers hosted by FCM to users of the platform or end users.

References