리눅스 호스트 시스템에서 펄스 오디오를 사용하는 것이 가능하다는 것을 알고 있습니다. 그러나 paprefs
은 mac이 아닌 Linux 용으로 제작되었습니다.Docker 컨테이너에서 Mac으로 오디오를 내보내는 방법?
답변
Docker-for-Mac VM에는 사운드 통과 장치가 없으므로 그 각도에서 활용할 수있는 것이 없습니다. 반대로, 가상 박스 또는 VM웨어 퓨전 VM은 패스 스루 오디오 기능을 갖추고 있습니다.
내가 펄스 오디오 설치하고 다음 명령을 OSX 작업을 얻을 수 있었다 :brew install pulseaudio
내 스피커에서 나오는 소리를 듣고, 이것은 다음을 실행하여 일을 확인 할 수 있었다 :
paplay cockatiel.wav
내 다음 단계는 paplay
사본이있는 이미지를 찾는 것입니다. 나는 펄스 오디오 서버 인 것으로 보이는 것으로 보이는 jess/pulseaudio을 찾았지만 클라이언트으로 사용할 수 있어야합니다. https://wiki.archlinux.org/index.php/PulseAudio/Examples#PulseAudio_over_network
나는 다음을 수행하여이 상황에 적응 할 수 있었다 :
내가 펄스 오디오 네트워크 사운드를 설정하는 논의 아치 리눅스 위키에서 다음 가이드를 발견했다. 내 Mac에서/usr/local/Cellar/pulseaudio/9.0/etc/pulse/default.pa
을 편집하고 다음 두 줄의 주석 처리를 제거 :
load-module module-esound-protocol-tcp
load-module module-native-protocol-tcp
내 변화는 여전히 일을 확인하기 위해 내 Mac에서 paplay cockatiel.wav
을 reran을. pulseaudio 데몬은 요청에 따라 시작된 것으로 보이며 오타를 만든 경우 내 화면에 인쇄되도록 paplay
으로 불만 사항을 전달합니다. 나는 default.pa에 대한 변경 사항으로 여전히 소리가 나고, 그래서 나는 나의 변화가 아무 것도 깨뜨리지 않았 음을 확신한다.
다음으로,이 같은 용기에 펄스 오디오 클라이언트를 실행 : 이것은 볼륨으로 내 로컬 홈 디렉토리로 컨테이너를 실행하는 일
docker run --rm -v $HOME:$HOME -w $HOME -it \
-e PULSE_SERVER=192.168.10.23 \
-e HOME=$HOME --entrypoint paplay \
jess/pulseaudio $HOME/cockatiel.wav
합니다. 이것은 두 가지 용도로 사용됩니다. 첫 번째는 내 cockatiel.wav가 $HOME
안에 위치한다는 사실입니다. 두 번째 이유는 클라이언트와 서버 모두 동일한 ~/.config/pulse/cookie
파일 (archlinux 위키 가이드에 따라)의 사본을 가져야하기 때문입니다.
환경 변수는 내 OSX 호스트의 en0 IP 주소이므로 paplay는 연결할 대상을 알고 있습니다.
~/.config/pulse/cookie
파일을 찾을 수 있도록 HOME
환경 변수가 필요합니다.
나는 도커 - 포카 (pulse-audio)를 통해 도커 - 포카 (docker-for-mac)에서 실행되는 컨테이너에서 사운드를 재생할 수 있었다.
~/.config/pulse/cookie
파일이 올바른 위치에 나타나면 사운드를 재생할 수 있어야합니다. 이를 수행하기 위해 호스트 볼륨을 사용할 필요가 없습니다. 이미지에 '도커 cp'또는 COPY
도 사용할 수 있습니다.
- 1. Docker 컨테이너에서 Disco 실행
- 2. Docker 컨테이너에서 Docker 호스트를 실행하는 방법은 무엇입니까?
- 3. Docker Compose를 사용하여 컨테이너에서 명령을 실행하는 방법?
- 4. Docker Ubuntu 컨테이너에서 Xserver 시작
- 5. Docker 컨테이너에서 mysql 인스턴스를 실행하십시오.
- 6. Docker : 여러 컨테이너에서 명령 실행
- 7. Docker 컨테이너에서 FluentD로 로그 보내기
- 8. docker 컨테이너에서 호스트 zfs에 액세스
- 9. Docker - PHP 컨테이너에서 작곡가 사용하기
- 10. Docker 컨테이너에서 키스톤 서비스를 시작할 수 없습니다.
- 11. Docker 컨테이너에서 setfacl을 사용하는 방법은 무엇입니까?
- 12. Docker 컨테이너에서 Windows 컴퓨터의 URL에 액세스
- 13. 여러 Docker 컨테이너에서 동일한 mongoDB 인스턴스에 액세스
- 14. Docker 컨테이너에서 샌드 박스를 사용하여 바젤 실행하기
- 15. Docker 컨테이너에서 Java Gradle 프로젝트를 빌드 하시겠습니까?
- 16. 실행중인 Docker 컨테이너에서 실행중인 셸 명령을 실행합니다.
- 17. Docker 컨테이너에서 openssh-server가 시작되지 않습니다.
- 18. Docker 컨테이너에서 SQL Server에 연결할 수 없습니다.
- 19. Docker 컨테이너에서 Hadoop 및 Spark 사용
- 20. Docker 컨테이너에서 iptables 로깅을 활성화하는 방법은 무엇입니까?
- 21. OSX의 Docker 컨테이너에서 호스트의 호스트 : 포트에 액세스
- 22. Symfony 서버 : php Docker 컨테이너에서 실행
- 23. Docker for Mac 1.12.0 : 컨테이너에서 호스트에 연결하는 방법
- 24. 다른 Docker 컨테이너에서 uWSGI 및 NGINX를 실행하는 방법
- 25. docker 컨테이너에서 nodemon과 다른 덤프 작업을 실행하는 방법
- 26. Docker 컨테이너에서 호스트 포트를 사용할 수있는 쉽고 직접적이고 강력한 방법?
- 27. Docker Compose를 사용하여 실행중인 Docker 컨테이너에서 새로운 Docker 컨테이너를 시작할 수 있습니까?
- 28. 정지 된 Docker 컨테이너에서 명령을 실행하는 방법은 무엇입니까?
- 29. docker 컨테이너에서 파이썬 스크립트를 실행할 때 json 모듈이 없습니다.
- 30. -privileged = true가 아닌 경우 Docker 컨테이너에서 "Permission denied"가 표시됩니다.
paplay piano2.wav를 실행할 때 다음 오류가 발생합니다. $ paplay piano2.wav W : [] 대문자.c : 일반적으로 모든 추가 기능이 지금은 삭제되지만, PulseAudio는 기능을 지원하지 않으므로 불가능합니다. 연결 실패 : 연결이 거부되었습니다. pa_context_connect() failed : 연결이 거부되었습니다. –
@valentin_nasta Mac에서 PulseAudio를 설치하면 문제를 해결할 수 있습니까? –
현재 pulseAudio 10.0에서는 "pulseaudio - daemonize = false -v"가 실행되지 않는 것 같아서 두 개의 모듈 -sound-utils를 추가 한 후 "W : [] socket-util.c : IP_TOS failed : Invalid argument" protocol-tcp/ module-native-protocol-tcp 행입니다. – jamshid