В J2ME Как найти возможность эмулятора проверить, может ли он воспроизводить определенный медиафайл или нет

В J2ME, как мне узнать, какова способность эмулятора воспроизводить определенный медиафайл, хотя это .mp3 или .wav или любой другой файл

Я использую Netbeans с эмуляторами WTK, а также с эмулятором nokia SDK 1.1.0....


person Rahul More    schedule 04.01.2013    source источник
comment
попробовать и посмотреть? Или проверить характеристики?   -  person Paul Collingwood    schedule 04.01.2013
comment
(комментарий, на который это был ответ, был удален). Это, конечно, правда. Однако, по моему опыту, вам лучше провести исследование заранее, так как трудно получить одно приложение для поддержки широкого спектра устройств, отсюда и распространение целевых сборок для групп телефонов. Кроме того, я также обнаружил, что эмуляторы не обязательно имеют полный набор функций, которые будут иметь устройства, поэтому тестирование на эмуляторе никогда не является последним шагом.   -  person Paul Collingwood    schedule 04.01.2013
comment
@PaulC, да, я удалил свой комментарий, так как вижу, что ты сделал свой до того, как Рахул отредактировал свой вопрос. Тем не менее, следует предположить, что вопросы о переполнении стека касаются программных методов. Конечно, вы должны протестировать свое приложение на устройствах, на которые, как вы думаете, хотите развернуться, но если вы объединяете несколько аудиофайлов в финальное приложение, чтобы избежать тонны этих целевых сборок, вам нужно программно определить хост. возможности устройства.   -  person Nate    schedule 04.01.2013
comment
Хорошо, Пол С... Я обязательно поработаю над вашим предложением... Спасибо за предложение....   -  person Rahul More    schedule 04.01.2013
comment
@Нейт, действительно. Однако я хотел бы отметить, что вопрос касается только эмуляторов, и я действительно просто говорю, что эмуляторы лгут. Это их работа. Например, видео будет аппаратно ускорено на самом устройстве (возможно), но эмулятор этого сделать не сможет. Так что, если это не работает на эмуляторе....   -  person Paul Collingwood    schedule 04.01.2013
comment
@PaulC, трудно сказать. В более ранних версиях вопроса указывалось эмулятор или устройство, и большинство людей запускали приложения на эмуляторах, чтобы позже они могли запускать те же приложения на устройстве. Является ли эмулятор верным устройству, не имеет значения. Поскольку эмулятор может не поддерживать те же аудиоформаты, что и ваше целевое устройство, вам может потребоваться программная проверка поддержки аудиофайлов. В противном случае у вашего приложения могут возникнуть проблемы с запуском эмулятора, который в противном случае был бы полезным инструментом, просто потому, что вы не написали код для гибкой обработки различных уровней поддержки звука.   -  person Nate    schedule 04.01.2013


Ответы (1)


Попробуйте этот код. Он использует тот же Manager API, который вы использовали в своем последнем вопросе.

import javax.microedition.media.Manager;

...

  String supportedTypes[] = Manager.getSupportedContentTypes(null);
  for (int i = 0; i < supportedTypes.length; i++) {
     if (supportedTypes[i].startsWith("audio")) {
        System.out.println("Device supports " + supportedTypes[i]);
     }
  }

запуск этого для меня дал следующий вывод на BlackBerry 9550:

[0.0] Device supports audio/x-tone-seq
[0.0] Device supports audio/midi
[0.0] Device supports audio/mpeg
[0.0] Device supports audio/x-wav
[0.0] Device supports audio/amr
[0.0] Device supports audio/x-gsm
[0.0] Device supports audio/mp4
[0.0] Device supports audio/aac
[0.0] Device supports audio/x-ms-wma
person Nate    schedule 04.01.2013
comment
Какой бы вывод вы ни опубликовали, это правильный эмулятор WTK или его единственные возможные ответы.... - person Rahul More; 04.01.2013
comment
Выходные данные являются просто примером для конкретного устройства BlackBerry J2ME. Вы должны запустить фактический код Java, который я разместил, на используемом вами устройстве или эмуляторе, и он сообщит вам, какие типы мультимедиа поддерживает это устройство/эмулятор. В ваших результатах может быть указано больше или меньше поддерживаемых типов аудио. - person Nate; 04.01.2013
comment
Я хочу воспроизвести файл .mp3 с помощью проигрывателя... так что, какой тип строки, например, x-tone-seq или любой другой, я должен передать для воспроизведения файла .mp3. Прямо сейчас я пытаюсь воспроизвести один mp3-файл размером 36,7 кбит, скорость передачи данных составляет 128 кбит/с, а продолжительность - 0.00.02, но это дает мне исключение как нулевое ... Итак, что мне делать, чтобы воспроизвести файл .mp3. - person Rahul More; 04.01.2013
comment
Я не уверен на 100%, но я думаю, что строка "audio/mpeg" означает, что файлы .mp3 поддерживаются. Однако вы не можете указать устройству, какие форматы поддерживать. Он либо поддерживает мп3, либо нет. Вы можете только спросить, какие форматы поддерживаются. Если устройство не поддерживает mp3, вы ничего не сможете сделать для воспроизведения mp3-файла (кроме пересохранения в другом поддерживаемом формате). - person Nate; 05.01.2013