2015-12-04 4 views
1

У меня есть следующий главный класс в Java JMF, мне нужно увеличить воспроизведение звукового файла test.wav им пробуя setRate Instuction, но он не работает:Как я могу изменить скорость воспроизведения аудиофайла?

Вот главный класс:

import javax.swing.*; 
import java.awt.*; 
import javax.media.*; 
import java.awt.event.*; 
import java.net.*; 

public class HelloJMF 
{ 

    static JFrame frame = new JFrame(" Hello JMF Player"); 

    static Player helloJMFPlayer = null; 

    public static void main(String args[]) 
    { 
     try 
     { 
      URL url=new URL("file:///d:\\testJMF.wav"); 
      helloJMFPlayer = Manager.createRealizedPlayer(url); 
     } 
     catch(Exception e) 
     { 
      System.out.println(" Unable to create the audioPlayer :" + e); 
     } 
     Component control = helloJMFPlayer.getControlPanelComponent(); 
     frame.getContentPane().add(control, BorderLayout.CENTER); 

     frame.addWindowListener(new WindowAdapter() 
     { 
      public void windowClosing(WindowEvent we) 
      { 
       helloJMFPlayer.stop(); 
       helloJMFPlayer.close(); 
       System.exit(0); 
      } 
     }); 
     frame.setSize(new Dimension(400,100)); 
     frame.setVisible(true); 
     helloJMFPlayer.start(); 
    } 
} 

мне нужно изменить скорость игры, я попытался:

helloJMFPlayer.setRate(3); 

, но он не работает, мне нужна ваша помощь, пожалуйста.

+1

Какое значение имеет helloJMFPlayer.setRate (3) вернуться? – Berger

ответ

2

В теории, ставка объектов Player может быть установлена ​​на любое действительное число, с отрицательными тарифами, интерпретируемыми как воспроизведение медиа в обратном порядке. Однако некоторые форматы медиаданных имеют зависимости между кадрами, которые делают невозможным или непрактично воспроизводить их в обратном порядке или по нестандартным тарифам. Чтобы установить скорость, вы вызываете setRate и передаете коэффициент временной шкалы в качестве значения . Когда вызывается setRate, метод возвращает скорость, которая фактически установлена ​​ , даже если она не изменилась. Players гарантируется только поддержка 1,0.

Таким образом, формат WAV имеет эту зависимость, поэтому вы не можете изменить скорость. весело^_^

пожалуйста, не забудьте подписаться мой ответ^_^

Смежные вопросы