Ошибка "Недостаточно памяти" в Nokia 5610 при загрузке файла MP3

Я разрабатываю одно приложение j2me для воспроизведения файлов WAV и MP3.

проблемы:

  • при попытке воспроизвести mp3-файл в моем телефоне (nokia 5610d) происходит ошибка "Недостаточно памяти".
  • при попытке воспроизвести WAV-файл он дает исключение "Звуки не разрешены".

Несколько строк моего кода здесь.

Код для воспроизведения файла WAV

InputStream is = getClass().getResourceAsStream("/Child.wav");
player = Manager.createPlayer(is, "audio/x-wav");

player.realize(); player.start();

Код для воспроизведения файла MP3

InputStream is = getClass().getResourceAsStream("/Child.mp3");<br/>
player = Manager.createPlayer(is, "audio/mpeg");

player.realize(); player.start();

Пожалуйста, дайте мне знать, в чем проблема в моем коде.

4 ответа

Возможно, вы захотите попробовать "аудио /wav" вместо "аудио /x-wav".

Я бы также предложил использовать URL-адрес FileConnection (Manager.createPlayer("file://localhost/E:/MyFolder/Child.mp3"); например), поскольку это обычно работает лучше, чем проигрыватели, созданные с помощью InputStream на телефонах Series40.

Имеет ли это какое-то значение, если вы звоните player.prefetch(); до player.start();? Все примеры, которые я видел ранее, сделаны таким образом.

Также попробуйте использовать MIME-тип audio/mp3 вместо этого, если audio/mpeg не работает

По мне, ваш код правильный.

Я получаю сообщение об ошибке "Звук не разрешен", потому что телефон был в беззвучном режиме, и я пытался его воспроизвести. Вы уверены, что ваш телефон не находится в беззвучном режиме во время выполнения вашего кода?

Наиболее точный источник для Nokia Series 40 без исключения (ошибка "Недостаточно памяти") при запуске непосредственно с SD-файлов mp3 и других подобных файлов, позволяющих телефону:

import java.io.IOException;
import javax.microedition.media.Manager;
import javax.microedition.media.MediaException;
import javax.microedition.media.Player;
import javax.microedition.midlet.MIDlet;
public class pro extends MIDlet {
     public pro() throws IOException, MediaException {

     Player player = Manager.createPlayer("file:///E:/03.mp3");
     player.realize();
     player.start();

     }
  public void startApp() { }
  public void pauseApp() {}
  public void destroyApp(boolean unconditional) {}
}
Другие вопросы по тегам