001: /*
002: * Copyright 1990-2007 Sun Microsystems, Inc. All Rights Reserved.
003: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER
004: *
005: * This program is free software; you can redistribute it and/or
006: * modify it under the terms of the GNU General Public License version
007: * 2 only, as published by the Free Software Foundation.
008: *
009: * This program is distributed in the hope that it will be useful, but
010: * WITHOUT ANY WARRANTY; without even the implied warranty of
011: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
012: * General Public License version 2 for more details (a copy is
013: * included at /legal/license.txt).
014: *
015: * You should have received a copy of the GNU General Public License
016: * version 2 along with this work; if not, write to the Free Software
017: * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
018: * 02110-1301 USA
019: *
020: * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
021: * Clara, CA 95054 or visit www.sun.com if you need additional
022: * information or have any questions.
023: */
024: package com.sun.mmedia;
025:
026: import javax.microedition.media.Player;
027:
028: /**
029: * The configuration module for MIDP with QSound audio engine for MIDP subset of JSR135.
030: *
031: * @created April 05, 2006
032: */
033: public class CougarQSoundAbbConfig extends DefaultConfiguration {
034:
035: /**
036: * Handle for the Tone Player...
037: */
038: private static TonePlayer myTonePlayer;
039:
040: /**
041: * Constructor for the Configuration object
042: */
043: public CougarQSoundAbbConfig() {
044: super ();
045: }
046:
047: /**
048: * method that performs real initialization.
049: * Called only from constructor.
050: * Must be overwritten by derived classes
051: */
052: protected void init() {
053: // Protocol handlers.
054:
055: // Device handlers.
056: handlers.put(TONE_DEVICE_LOCATOR,
057: "com.sun.mmedia.QSoundABBToneSequencePlayer");
058:
059: // Content handlers.
060:
061: // MIDI/Tone Sequence content ...
062: handlers.put(MIME_AUDIO_TONE,
063: "com.sun.mmedia.QSoundABBToneSequencePlayer");
064:
065: supportedProtocols.put(MIME_AUDIO_TONE, dProtocols);
066:
067: // Mime types
068: mimeTypes.put("jts", MIME_AUDIO_TONE);
069:
070: // for converting
071: mimeTypes.put("audio/tone", MIME_AUDIO_TONE);
072:
073: // Create a Tone Player...
074: myTonePlayer = new QSoundTonePlayer();
075:
076: /*
077: * The peer value is actually not used.
078: * The only purpose of this call is to request loading
079: * if QSoundHiddenManager class with invokation of
080: * QSoundHiddenManager clas static initializer.
081: * As the result QSound audio system will be initialized for MMAPI.
082: */
083: int peer = QSoundHiddenManager.getGlobalPeer();
084: }
085:
086: /**
087: * Gets the supportedProtocols attribute of the DefaultConfiguration object
088: *
089: * @param content_type Description of the Parameter
090: * @return The supportedProtocols value
091: */
092: public String[] getSupportedProtocols(String content_type) {
093: return (content_type == null) ? dProtocols : super
094: .getSupportedProtocols(content_type);
095: }
096:
097: /**
098: * Gets the audio renderer.
099: *
100: * @return The audio renderer
101: */
102: public PCMAudioOut getAudioRenderer() {
103: return null;
104: }
105:
106: /**
107: * Gets the video renderer.
108: *
109: * @return The video renderer
110: */
111: public VideoRenderer getVideoRenderer(Player player,
112: int sourceWidth, int sourceHeight) {
113: return null;
114: }
115:
116: /**
117: * Gets the image accessor.
118: *
119: * @return The image accessor
120: */
121: public ImageAccess getImageAccessor() {
122: return null;
123: }
124:
125: /**
126: * Gets the tonePlayer attribute of the DefaultConfiguration object
127: *
128: * @return The tonePlayer value
129: */
130: public TonePlayer getTonePlayer() {
131: return myTonePlayer;
132: }
133:
134: public String[] getSupportedMediaProcessorInputTypes() {
135: return new String[0];
136: }
137:
138: public String[] getSupportedSoundSource3DPlayerTypes() {
139: return new String[0];
140: }
141: }
|