alSourceQueueBuffers를 사용하여 버퍼를 AL 사운드 소스로 스트리밍합니다. 나는 서로 다른 크기의 버퍼를 하나씩 재생해야한다. 그러나 지금까지는 버퍼 사이에 가변적 인 침묵이 필요했는데 어떻게 프로그래밍 방식으로 추가 할 수 있습니까?OpenAL에서 재생 된 버퍼간에 소리가 들리지 않습니까?
0
A
답변
1
아마도 가장 쉬운 방법은 필요한 길이의 침묵을 유지하고 적절하게 대기열에 넣는 버퍼를 생성하는 것입니다. 샘플 속도와 원하는 묵음 길이를 기반으로 배열을 0으로 채우고 버퍼로 전달하면됩니다.
일을 더 복잡하게하려면 모든 버퍼를 대기시킬 수 없습니다. 지금 재생해야하는 큐를 대기시키고 완료 될 때 타이머를 설정합니다 (침묵 시간도 경과했습니다). 그런 다음 다음 버퍼를 대기시킬 수 있습니다. 또는 소스를 폴링하여 멈췄는지 여부를 확인할 수 있습니다. 이것은 나를 위해 일한 : 당신은 또한
편집 ... 스트리밍 기능을 사용할 수 있습니다. 샘플 속도는 소스에 대기중인 다른 버퍼와 동일해야합니다. 또한 '가장 큰 공통 분모'길이 버퍼를 가질 수 있으며 여러 번 큐업 할 수 있습니다.
int sampleRate=22050;
double sTime=2.5; // How long to maintain silence.
int sampleCount= int(sTime*sampleRate);
int byteCount = sampleCount*sizeof(short);
short* silence = (short*)malloc(byteCount);
memset(silence,0,byteCount);
alBufferData(silenceBuffer,AL_FORMAT_MONO16,silence,byteCount,sampleRate);
alSourceQueueBuffers(mySource,1,&silenceBuffer);
free(silence);
관련 문제
- 1. Windows Mobile 소리가 들리지 않음 장치 스피커
- 2. 소리가 들리면 클릭하십시오. OpenAL에서 피치 쉬프트시
- 3. AVFoundation으로 비디오를 녹음하면 소리가 들리지 않습니다.
- 4. 포리스트에서 Qt 신호가 방출되고 아무도 주변 소리가 들리지 않는다면 소리가 나지 않습니까?
- 5. 소리가 재생되지 않습니까?
- 6. FMOD 재생 소리가 겹침
- 7. 소리가
- 8. OpenAL에서 최대 이득 찾기
- 9. 아이폰. 소리를 감지 할 때 녹음을 시작하고 소리가 들리지 않으면 녹음을 중지하십시오.
- 10. 시스템 소리가 볼륨 레벨을 무시합니다.
- 11. 아이폰 SDK : "시스템 사운드"재생
- 12. WPF에서 mp3 재생
- 13. iOS4 및 배경 접기 중 오디오 재생
- 14. iPhone 응용 프로그램에서 소리가 녹음되고 소리가 저장됩니다.
- 15. PyGame에서 소리가 짧음
- 16. 소리가 겹침
- 17. OpenAL에서 여러 장치로 출력 (Linux)
- 18. OpenAL에서 재생하려고 시도했지만 AL_INITIAL 상태가되지 않습니다.
- 19. 시스템에 소리가 들렸는지 확인하십시오. C#
- 20. 특정 시간 동안 소리 재생
- 21. Snack을 사용하여 파이썬에서 WAV 파일 재생
- 22. iPhone에서 생성 된 오디오 재생
- 23. UILocalNotification 소리가 재생되지 않음
- 24. Eclipse에서 실행 한 Android SDK 에뮬레이터의 오디오가 들리지 않습니다.
- 25. 큰 소리가 C#
- 26. 전화 소리가 자바 스크립트에서
- 27. iPhone에서 소리가 멈춤
- 28. 알림 소리가 안드로이드에
- 29. 소리가 들리고 있는지 확인하십시오.
- 30. 흔들림에 소리가 들립니까?
나는이 아이디어를 가지고 싶습니다.하지만이 부분은 "샘플 속도 **와 ** 원하는 길이의 무음 **에 기초한 제로로 가득 찬 배열을 만들어야합니다. ** 그리고 그것을 버퍼에 전달하십시오. " 정확히 어떻게 해야할지 모르겠습니다. :(이제 alBufferData를 사용하여이 작업을 수행하려고합니다. D –
좋아, 어떻게 든 작동하며 침묵의 지속 시간을 제어 할 수 있지만 침묵이 아니라는 소리를 들려줍니다 ... 어떤 이유일까요? –
히스 버퍼에서 가비지 데이터를 제안합니다. 먼저 0을 출력 했습니까? – JCooper