2011-09-30 2 views
1

Basic4Android는 임의의 주파수 (즉, 미리 녹음 된 사운드 파일을 갖고 싶지 않음) 및 지속 시간의 사운드를 방출하는 방법이 있습니까?Basic4android로 임의의 음색을 만드는 방법은 없습니까?

"전통적인"기본 언어에서 이것은 예를 들어. BEEP 명령 다음에 원하는 빈도 및 지속 시간이옵니다.

Basic4Android가 해당 명령을 지원하지 않는 것 같습니다.

모스 부호 생성 프로그램을 프로그래밍하기 위해이 기능을 찾고 있는데,이 목적을 위해 예를 들어 오디오 주파수 톤 (사용자가 선택할 수 있어야 함)과 관련하여 유연하게 있어야합니다. 500Hz이며 1000Hz와 가변 지속 시간을 밀리 세컨드로 표현할 수 있습니다. (모스 코드 대시와 도트 사이의 가변적 인 사용자 선택 가능 속도를 생성 할 수 있도록하기 위해) ...

실용적이지 않거나 거의 없습니다 미리 레코딩 된 WAV로는이 작업을 수행 할 수 없거나 모든 주파수/속도 조합에 대한 거대한 WAV 컬렉션으로 끝납니다. http://marblemice.blogspot.com/2010/...n-android.html

를 지금까지 내가 그것으로 원하는 주파수에서 "즉시"사인파 톤을 계산하고이 코드를 해석 할 수있는 :

안드로이드에 그렇게 할 수있을 여기에 예를 볼 것 버퍼 어레이를 생성하고 버퍼 데이터를 사용하여이를 PCM 스트림으로 생성하고 재생합니다.

위의 코드는 매우 단순한 것 같습니다. 영리한 Java 프로그래밍 사용자가 다른 사람이이 용도로 사용할 수있는 간단한 Basic4Android "톤 생성기"라이브러리를 만들지 궁금하십니까?

불행히도, 저는 구식 VisualBasic 녀석이며 Basic4Android로 첫 발걸음을 내딛었습니다 ... 제 자신의 라이브러리를 만들기 위해 내 기술이 너무 형편 없습니다.

답변

0

이것은 Java 기반 응용 프로그램 인 Android에서 가능합니다. Basic4Android가 "네이티브"로이 작업을 수행 할 수 있는지 여부는 알지 못합니다. Basic4Android에 대해 들어 본 적이 없지만 Basic4Android에서 액세스 할 수있는 Java 라이브러리를 만들 수 있으므로 이론적으로는 가능합니다. 이 작업을 수행하는 Java 라이브러리를 만든 다음 B4A 응용 프로그램에서 호출합니다.

그러나 이것은 어쨌든 이클립스 용 자바 플러그인과 안드로이드 플러그인을 배우는 것을 필요로하기 때문에 안드로이드 용 자바를 배워야한다. 저는 (1995 년에 시작된) 장기간의 Visual Basic 녀석입니다. 그리고 C#으로 변환하고 자바로 변환하는 것이 그렇게 어렵지 않았습니다.

1

오디오 라이브러리가 업데이트되었으므로 이제 Beeper 개체를 사용하여 "삐"소리를 낼 수 있습니다.

Dim b As Beeper 
b.Initialize(300, 500) '300 milliseconds, 500hz 
b.Beep 

Updated library link

관련 문제