오디오 출력을 파일로 복사

오디오 출력을 파일로 복사

헤드폰에서 들리는 소리를 C/C++ 프로그램의 파일이나 변수에 어떻게 넣나요? 나는 이미지 프레임 버퍼 같은 것을 원합니다. 나의 주요 목표는 사운드를 다른 컴퓨터로 보내는 것이므로 읽기 및 쓰기 권한도 필요합니다. 이 문제를 해결하는 방법을 아는 사람이 있나요?

답변1

다음과 같이 테스트 녹음을 했습니다.

arecord -d 4 out.wav

다음과 같이 사용할 수 있습니다 dd.

dd bs=1 if=out.wav | aplay

또는 while 루프를 사용하여 매우 불안정한 버퍼링되지 않은 스트림을 사용하십시오.

while read -n 2048 bytes; do
   printf "$bytes" | aplay
done < out.wav

netcat그런 다음 소켓이나 포트로 리디렉션 할 수 있습니다 .

스피커를 통해 재생되는 사운드가 파일에 버퍼링되었을 수 있습니다. 파일이 어디에 있는지는 확실하지 않지만 다른 위치 나 이와 유사한 위치 로 파이프 tail -f되거나 파이프될 수도 있습니다.catnetcat

예를 들어 ALSApcm을 사용하면 다음과 같습니다.

또한 PulseAudio의 소스 코드를 살펴보거나 실시간 전송 프로토콜(rtp)을 사용해 보세요.

관련 정보