2009-11-08 3 views
0

나는 전화 번호를 자동 다이얼링하는 자바 프로그램을 가지고 있으며, 전화 키패드를 모방하는 사운드를 생성 할 수 있으며, 정상적인 통화에서는 정상적으로 작동하지만, 카드를 호출 할 때 문제가 발생하면 카드 번호를 입력해야한다. 내 프로그램에 의해 생성 된 소리는 다른 쪽에서 받아 들여지지 않았고 항상 카드 번호가 잘못되었다고 말하면서 조사를 해보니 나를 위해 전체 카드 번호 사운드 시퀀스를 생성하는 사이트를 찾았지만 저장했습니다. 문제는 * .wav 사운드 파일을 재생할 때 다음 Java 메소드를 사용했을 때 여전히 받아 들여지지 않았지만 동일한 파일을 Windows Media Player로 다시 재생하면 상대방이 올바른 카드 번호 사운드로 받아들입니다. 왜 ? Java 애플릿 재생 사운드 파일이 Windows Media Player와 다른 효과가 있다는 의미입니까?Java 애플릿 재생 사운드 파일은 Windows Media Player와 다른 효과가 있습니까?

void playAudioFile(String File_Name) 
    { 
    try { Applet.newAudioClip(new URL("file:/"+File_Name)).play(); } 
    catch (Exception e) { e.printStackTrace(); } 
    } 

그렇다면 자바 프로그램에서 Windows Media Player를 사용하여 소리를 재생하려면 어떻게해야합니까?

답변

2

소리 볼륨을 조정했지만 이제는 정상적으로 작동합니다.

0

왜이 효과가 나타나는 지 정확히 알 수는 없지만 프로그램에서 Windows Media Player를 시작하는 방법을 알려줄 수는 있습니다. Windows XP 및 Windows Media Player 11을 가정

는 :

String myCommand = "\"C:\\Program Files\\Windows Media Player\\wmplayer\\\" /open \"" + File_Name + "\"" 
Runtime.getRuntime().exec(myCommand); 

이 Windows Media Player를 시작하고 (전체 경로가 아마 가장 안전한 것)에 포인트를 FILE_NAME 파일을 재생 할 것입니다. Media Player가 이미 열려 있으면 여전히 작동합니다. 현재 재생중인 모든 파일이 중단됩니다.

이 정보가 도움이되기를 바랍니다.

+0

운영 체제 관련 의미에 의존하지 말고 .wav 파일을 시작하기 위해 데스크톱 개체를 사용해서는 안됩니다. – Xailor

+0

물론 가능하다면 가능합니다. 프랭크는 Windows Media Player를 호출하여 사운드 파일을 재생할 수있는 방법을 요청했습니다. OS에 특이한 것 같습니다. 나는 이것이이 문제를 해결하는 최선의 방법은 아니라고 인정하지만 그럼에도 불구하고 해결책이다. –

+0

Windows Vista에서 시도했으나 작동하지 않았으며 Windows Media Player가 실행되지 않고 아무 소리도 들리지 않았습니다.이 또한 시도했습니다. "\"C : \\ Program Files \\ Windows Media Player \\ wmplayer. exe \\\ "/ open \" "+ File_Name +"\ "" Vista가 XP와 다를 수 있습니까? – Frank

관련 문제