node-airplay
node-airplay is a client library for Apple's AirPlay remote playback protocol.
some code full reference node-airplay, thanks!
Installation
From npm:
npm install airplay2From bower:
bower install airplayFrom source:
git clone https://github.com/zfkun/node-airplay.git
npm linkDependencies
-
- had merge my fix, see my pull-request
-
- It's my fork, hack an error
no such record - Unfortunately the original
node_mdnsis woefully out of date and has required many tweaks to get working
- It's my fork, hack an error
-
brew install ffmpeg
Usage
// remote video
var browser = require('airplay2').createBrowser();
browser.on('deviceOn', function(device) {
device.play('http://remotehost/video.mp4', 0, function() {
console.info('video playing...');
});
});
browser.start();// local video (by HLS)
var hls = require('airplay2').createHLS();
hls.start(7001);
hls.open('/Users/zfkun/videos/1.mkv', function(info) {
console.info('video opened: ', info);
});
var browser = require('airplay2').createBrowser();
browser.on('deviceOn', function(device) {
device.play(hls.getURI(), 0, function() {
console.info('video playing...');
});
});
browser.start();Help
- Unofficial AirPlay Protocol Specification
- HLS(HTTP Live Streaming)
- ffmpeg build for ios
- ffmpeg build for MacOS
- mdns User Guide
API
Todo
- 多码率切换
- 外挂字幕
