Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
A

airstream

> 编程语言
Open source

A command line tool for streaming to airplay-devices

627 stars0 likes1 views
WebsiteGitHub

About

A command line tool for streaming to airplay-devices

Airstream

A command line tool for sending videos and images to airplay-compatible devices (like AppleTV). The airplay protocol can basically play videos in mpeg-4 (mp4, mov, ts, m4v) format that are accessible via http. Thus for sending a local file a webserver will be created, see below.

Local or remote images can be sent directly to an airplay-device.

Playing audio or offering a stream to an airplay device is not yet implemented but is planned to. Do not hesitate to send me any ideas or bug informations.

Installation

gem install airstream

See Troubleshooting below, if you experience any problems while installing.

Basic Usage

Use the output argument to specify the ip-address of the remote device. Remote files will be played directly, local files are hosted with a small webserver (webrick). Check your firewall settings, port 7000 is used to host the file.

bash
airstream http://example.com/sample.mp4 -o 192.168.1.8
airstream /home/me/sample.mp4 -o 192.168.1.8

You can also use wildcards and handle files as usually...

bash
airstream /home/me/*.mp4 -o 192.168.1.8
airstream /home/me/my-birthday-20{08,10,12}.mov -o 192.168.1.8

Use airimg to send images to the airplay device.

bash
airimg http://example.com/photo.png -o 192.168.1.8
airimg ~/Pictures/photo.png

Use -n option to set the interval between switching to the next picture.

bash
airimg ~/Pictures/*.png -n 8

See the help for further command line options. To specify default options use the configuration file initial generated in ~/.airstreamrc.

Controls

airstream only while playing a video file:

q ... quit
> ... skip to next file
'

Solution

Install ruby development packages:

For Ubuntu/Debian:

bash
sudo apt-get install ruby-dev

Missing dnssd headers

Error

ERROR:  Error installing airstream:
	ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb
checking for dns_sd.h... no
unable to find dnssd header

Solution

For Ubuntu/Debian:

bash
sudo apt-get install libavahi-compat-libdnssd-dev

For FreeBSD:

bash
sudo pkg install avahi-libdns
gem install airstream -- --with-dnssd-lib=/usr/local/lib/ --with-dnssd-include=/usr/local/include/avahi-compat-libdns_sd/

History

  • current
    • fix progressbar fails on broken input
    • fix some dependencies
  • v0.4.0
    • Finally added tests
    • Improved stability
    • Major Bugfixes
  • v0.1.0 - v0.3.7
    • Added usage examples
    • Refactored structure
    • More input controls
    • Added basic input controls
    • Extended Readme
    • Dependency fixes
    • Changing format of progress bar
    • Hosting local file directly using webrick
    • Play remote files
    • Play local video files with local webserver
    • Sending Images

Thanks

Thanks to Bruno Aguirre (https://github.com/elcuervo) for rubys airplay gem and Clément Vasseur for the Unofficial AirPlay Protocol Specification (http://nto.github.com/AirPlay.html).

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Ruby

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言