2011-03-06 6 views
8

타사 Mac OS X 응용 프로그램에서 AirPlay 수신기로 오디오를 스트리밍 할 수 있도록하는 API (공개 또는 비공개)가 있습니까? Rogue Amoeba Software의 Airfoil도이 작업을 수행 할 수있는 것으로 보입니다. Erica Sadun의 AirFlick도 마찬가지지만이 작업을 수행하는 방법을 보여줄 수있는 소스 코드를 찾을 수 없습니다. 모든 포인터는 감사하겠습니다!Mac OS X 용 AirPlay API

답변

4

그것은 밝혀 AirPlay를 오디오 스트리밍은 OS X 10.8 공개 API의 사용으로 가능하지만, 정말 아무데도 기록되지 않았다. Joris Kluivers는 그것을 얻는 방법에 대해 훌륭한 blog post을 썼습니다.

0

사용할 수 없다고 생각합니다. 최소한 10.7 이전 버전에는 없습니다.

Airfoil이 공항 익스프레스 키 페이로드에 금이 갔을 때 얼마 전에 DVD John과 같은 것을 사용했다고 생각합니다. 그는 당신이 그것을 발견 할 수 있어야하는 코드 (C#)를 공개했으나 그것은 매우 비밀 스럽다.

저는 AirFlick의 용도를 알지 못하지만 항상 Erica에 핑 소리를 낼 수는 있지만 대개 그녀의 물건을 공유합니다.

1

오픈 소스 RAOP 플레이어는 acouple입니다. 나는 그들을 시도하지 않았으므로, 애플이 쓰여진 이후로 애플이 깨 졌는지는 모른다.

0

누군가 최근에 네트워크의 장치에서 AirPlay 메뉴에 프로그램을 나열 할 수있게 해주는 AirPlay 개인 키를 누군가 얻을 수있었습니다.

여기에 대해 읽을 수 있습니다. 또한 해당 페이지에서 링크 된 오픈 소스 프로젝트가 있습니다. http://mafipulation.org/blagoblig/2011/04/08#shairport

귀하가 만든 응용 프로그램은 Apple에서 승인하지 않으며 개인 키는 펌웨어/소프트웨어 업데이트에서 잠재적으로 변경 될 수 있습니다.

+1

이 질문은 AirPlay 수신기로 전송하는 것에 대해 묻습니다. 개인 키가 필요하지 않습니다. –

+0

@NicholasRiley 네, 맞습니다. – Ben

1

Mountain Lion (OS X 10.8)은 사운드 설정에서 AirPlay 지원을 추가했습니다. 사용자는 로컬 사운드 출력을 AirPlay 장치로 보내도록 선택할 수 있습니다. 그러나 앱에서 API에 액세스 할 수 있다고 생각하지 않습니다.

AirPlay를 구현하는 데 사용할 수있는 라이브러리가 있지만 App Store에 게시하려고하면 Apple이 해당 앱을 거부한다는 것을 알고 있습니다. 적어도 그것은 나에게 일어난 일이다.

나는 AirPlay를 지원하기 위해 node.js 모듈을 작성했습니다. 노드를 사용하지 않더라도 stdin을 통해 오디오 데이터를 파이프 할 수 있습니다.

https://github.com/lperrin/node_airtunes/

+0

명확히하기 위해, 나는 오디오 출력을 위해 node.js 프로세스를 분기 한 OS X 응용 프로그램에서 작업했습니다. 모듈에는 CoreAudio에 대한 바인딩도 있으므로 특별한 경우를 만들 필요가 없습니다. –

+0

OS X 내에서 nodejs 프로세스를 포크 할 수 있었던 방법이 명확하지 않습니다. OS X 응용 프로그램이 NodeJ를 AirPlay 클라이언트로 사용하고 있었습니까? – loretoparisi

+0

이 [질문]에서 설명한대로 [NSTask] (https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSTask_Class/Reference/Reference.html)를 사용했습니다 (http://stackoverflow.com/questions/412562/execute-a-terminal-command-from-a-cocoa-app). 앱에서 별도의 노드를 사용합니다.모든 오디오에 대해 js (로컬 + AirPlay). 이 프로세스는 stdin/stdout을 통해 전송 된 명령에 의해 제어됩니다. 이 예제의 기초가됩니다. –