Skip to content

Commit

Permalink
Initial AirPlay support.
Browse files Browse the repository at this point in the history
This is currently disabled by default and is enabled by setting the
temporary environment variable 'MYTHTV_AIRPLAY'.

Outstanding issues:-

- playback will silently fail if there is already a video playing on the
frontend. This usually encourages the source device to blacklist the
frontend for an indeterminate period of time.
- playback exit isn't properly handled. Currently the player is
restarted when told to stop and exits gracefully when no more data is
available. This does not work for remote sources (e.g. YouTube - where
the data is provided directly from the remote site to the frontend).
- no seeking/scrubbing with remote sources such as YouTube.
- initial seek/bookmark positioning does not work.
- scrubbing does not work on devices with iOS 5 (at least I think it's
iOS 5 related).
- playback fails with some remote services (e.g. BBC iPlayer). This is a
problem in the StreamingRingBuffer code.
- the playback url is sometimes provided embedded in a binary property
list (e.g. YouTube). Parsing of this plist is currently only supported
on OS X.

All that said, when it works, it works well - with all the features of a
full frontend (e.g. timestretch)
  • Loading branch information
Mark Kendall committed Jan 31, 2012
1 parent 462fb30 commit 7ae19f5
Show file tree
Hide file tree
Showing 5 changed files with 972 additions and 1 deletion.
2 changes: 2 additions & 0 deletions mythtv/libs/libmythtv/libmythtv.pro
Expand Up @@ -415,6 +415,8 @@ using_frontend {

using_libdns_sd {
!macx: LIBS += -ldns_sd
HEADERS += mythairplayserver.h
SOURCES += mythairplayserver.cpp
using_libcrypto: HEADERS += mythraopdevice.h mythraopconnection.h
using_libcrypto: SOURCES += mythraopdevice.cpp mythraopconnection.cpp
using_libcrypto: LIBS += -lcrypto
Expand Down

0 comments on commit 7ae19f5

Please sign in to comment.