Stream and Play.m4a stream (Предварительный просмотр Itunes Url )в Android

Я хочу транслировать и воспроизводить URL-адреса предварительного просмотра iTunes, напримерhttp://a2.mzstatic.com/us/r1000/044/Music/e9/40/ec/mzm.evyxvimp.aac.p.m4a. Я пытался использовать библиотеку AAC Decoder Android . С помощью которого я могу транслировать и воспроизводить URL-адреса потоков AAC, напримерhttp://http.yourmuze.com:8000/play/paradise/l.aac. Но это не поток URL-адресов m4a (Logcat говоритjava.io.FileNotFoundException: http://a2.mzstatic.com/us/r1000/044/Music/e9/40/ec/mzm.evyxvimp.aac.p.m4a).

Как я могу транслировать ссылки.m4a?

Мой код:

public class AACPlayerActivity extends Activity implements OnClickListener,PlayerCallback{

private Button btnPlay;
private ProgressBar progress;
private Handler uiHandler;

private MultiPlayer multiPlayer;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    btnPlay = (Button)findViewById(R.id.playButton);
    progress = (ProgressBar)findViewById(R.id.progress);
    progress.setVisibility(View.INVISIBLE);

    btnPlay.setOnClickListener(this);

    uiHandler = new Handler();
}

public void playerException(Throwable arg0) {
    // TODO Auto-generated method stub

}

public void playerMetadata(String arg0, String arg1) {
    // TODO Auto-generated method stub

}

public void playerPCMFeedBuffer(boolean arg0, final int audioBufferSizeMs, final int audioBufferCapacityMs) {
    // TODO Auto-generated method stub
    uiHandler.post(new Runnable() {

        public void run() {
            // TODO Auto-generated method stub
             progress.setProgress( audioBufferSizeMs * progress.getMax() / audioBufferCapacityMs );
        }
    });
}

public void playerStarted() {

    uiHandler.post(new Runnable() {

        public void run() {
            // TODO Auto-generated method stub
            progress.setProgress( 0 );
            progress.setVisibility( View.VISIBLE );
        }
    });

}

public void playerStopped(int arg0) {
    // TODO Auto-generated method stub
    uiHandler.post(new Runnable() {

        public void run() {
            // TODO Auto-generated method stub
            progress.setVisibility( View.INVISIBLE );
        }
    });

}

public void onClick(View v) {
    // TODO Auto-generated method stub
    if(btnPlay.getText().equals("Play")){
        start();
        btnPlay.setText("stop");
    }else{
        stop();
    }
}


 private void start() {
        stop();
        // we cannot do it in playerStarted() - it is too late:
        multiPlayer = new MultiPlayer(this,MultiPlayer.DEFAULT_AUDIO_BUFFER_CAPACITY_MS, MultiPlayer.DEFAULT_DECODE_BUFFER_CAPACITY_MS);
        multiPlayer.playAsync("http://a2.mzstatic.com/us/r1000/044/Music/e9/40/ec/mzm.evyxvimp.aac.p.m4a");
    }


    private void stop() {
        if (multiPlayer != null) {
            multiPlayer.stop();
            multiPlayer = null;
        }
    }

Обновления

  1. Я пытаюсь использовать ServeStream , он говорит, что URL-адрес не может быть открыт.
  2. Я пытаюсь использовать Vitamio SDK , он также не воспроизводит itunes preview Urls.

Можно ли играть в itunes preview urlsна андроиде?

11
задан Ajmal M A 22 August 2012 в 10:58
поделиться