Как воспроизводить аудио только из видеофайла на Android?

#android #audio #media-player

#Android #Аудио #Медиаплеер

Вопрос:

У меня есть файлы фильмов mp4 и wmv, и мне нужно воспроизводить только звук, а не видеоэкран. Как это сделать?? Могу ли я получить звуковую дорожку из файла фильма??

Я знаю, что если я скрою SurfaceView с экрана, я смогу слышать только звук.. но я много пробовал, но .. это невозможно.

Если у вас есть какое-либо решение для извлечения звуковой дорожки из видеофайла, пожалуйста, дайте мне знать..

Заранее спасибо.

Ответ №1:

Если вы используете mediaplayer API в своем приложении, не вызывайте API public void setDisplay (SurfaceHolder sh) . Это гарантирует, что воспроизводится только аудио, даже если присутствует видеоконтент..

Больше информации в Android doc здесь

Ответ №2:

Используйте следующий код, оптимизируйте следующий код в соответствии с вашими требованиями. Он воспроизводит видео с YouTube.

 try {
            final MediaPlayer m = new MediaPlayer();
            Thread t = new Thread(new Runnable() {

                public void run() {
                    try {
                        m.setDataSource("rtsp://v8.cache3.c.youtube.com/CjgLENy73wIaLwlQP1m32SiSYxMYJCAkFEIJbXYtZ29vZ2xlSARSB3JlbGF0ZWRggqG7w9aS2-1MDA==/0/0/0/video.3gp");
                        m.prepare();
                        m.start();  
                    } catch (Exception e) {
                        e.printStackTrace();
                    }

                }
            });
            t.start();

        } catch (Exception e) {
            e.printStackTrace();
        }