Git Product home page Git Product logo

airfloat's Introduction

AirFloat

Join the chat at https://gitter.im/trenskow/AirFloat

Remark: AirFloat now compiles on iOS 9.2.1

AirFloat implements the RAOP (Remote Audio Output Protocol) also known as AirPlay Audio. Essentially this app turns your iPhone into an AirPlay audio receivier like the AirPort Express.

Remark: Please note this repo also includes integrated libairfloat

Install

Download, open in Xcode and build.

##Contributors

@davhelm @yfliao @ataibarkai @faisalmemon @JBA474

License

Copyright (c) 2013, Kristian Trenskow All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

airfloat's People

Contributors

davhelm avatar gitter-badger avatar jba474 avatar sidneys avatar stephen-fox avatar trenskow avatar ziwei-yang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

airfloat's Issues

Sound mutes when switching apps or turing off the screen

Today I updates to the new version (v1.3) and AirFloat mutes when I switch apps or turn off the screen. (AirFloat is installed on a 3GS connected in my BOSE-dock, I use backgrounder to keep the app always on, so I can connect whenever I want)

please help!

4-6-2013: Fixed by updating from iOS v5 to iOS v6. Can't seem to get the app 'always-on' with jaibreak apps like 'Background Manager' or 'insomnia' though

Crashing on 3GS iOS 6.1.6 while playing audio

When streaming audio from another iphones suddenly in between it stops working. The app doesnt "crash" per se, but AirPlay just dissappears onthe other iPhone, the app needs to be restarted to show up again. Anyone have any idea why?

Background processing

Allow for AirFloat to have consistent background processing and not just while playing audio.

Feature Request: Edit Name, Password, Background Task

I've recently got this application and it works flawlessly when streaming to my iPod Touch 4G 6.1 from an iPhone 5 and also an iPad 4th Gen. I couldn't find an appropriate place for feature requests, hope this is the right place?

  1. Would it be possible to edit the name and provide a password for the Airplay receiver?
  2. Is it possible for the app to always be running in the background so I don't need to launch it every time I'd like to Airplay?

Keep up the good work, I'm happy to test to help.

Thanks!

No audio on iPhone 3G 4.2.1

Hi:

I just downloaded AirFloat on iPhone 3G 4.2.1. It starts fine and the device appears in the other IOS devices as a valid AirPlay receiver, but when I select the iPhone 3G as the destination for AirPlay, there is no sound transferred. I can see the song details including the cover art on the receiving device but no sound. Is 4.2.1 a supported IOS version?

Thanks for your help!

Regards,

Ashish

ios7

Will you redesign Airfloat?About new flat style?

App crashes at splash screen

On iPhone 5, iOS 6.1, the app starts, after 1 second displays what I believe to be a splash screen, then crashes.

Cannot disconnect, crashes.

Hi there,

Thanks for making AirFloat, great! But... I can't call the following methods without causing an crash. I suppose it has something to do with memory?
raop_server_stop(_server); raop_server_destroy(_server);

Also there is no method that allows me to pause the audio stream, only 'playpause', but I want to use 'pause' separately.

Hope someone can help.

Thanks in advance,

Wouter

Cilent Implementation

Is there any AirTunes compatible client implementation for AirFloat, in order to have full control of the client protocol and connect to AirFloat running on a different device ?

Airfloat Crashing on 9.3.2

Hi, I am a total newbie when it comes to Xcode and ios, so apologies if this is a very basic question. I compiled the app and loaded it to an iPhone 4s running iOS 9.3.2. Xcode was able to deploy the app successfully, but the app keeps crashing the moment it opens on the phone. It does not run even for a moment. Please would you be able to advise what I need to do? Thank you, Srini

Increase Audio Buffer Length

This app is awesome, thanks so much for everything you've done!

I use this app in a less-than-stellar Wi-Fi environment (a moving vehicle) so the audio frequently stutters when using this app. Is there any way to increase the audio buffer length to help reduce stuttering/missing audio?

Custom Name Does Not Persist

I just downloaded, built, and installed AirFloat on an old iPhone 4 running iOS 7. It works! However, when I give it a custom name in the Settings panel, that name does not persist. Any one else having this issue?

AirFloat disappears when iphone locks

Not sure If I should be posting here, but couldn't find any user group/forum.

I wanted to reuse my old iphone as poor man's apple tv (= voice only airplay server). AirFloat would be a perfect solution for this, but I have a problem, that once iphone locks, I cannot find AirFloat for my airplay "clients".

Any idea what could be the reason for this? Is this maybe the wifi that switches off when iphone is locked? Any remedies?

Thanks for the info,
T.

Airflot crashes after a few seconds

Using airfloat to receive audio from an apple tv (3... yeah, i know). After about 30 seconds, it crashes. I can restart it, but then again it crashes after a few seconds.

tfw AirFloat is fucking awesome and works on iPhone 6 / iOS 8

tl;dr

_Thank you!_ — AirFloat is working with _iOS 8_ on my _iPhone 6_!

Abstract

It was a bit complicated to get AirFloat running on the iPhone 6 due to plain crazy new security measures. I'm a registered developer and here's how I did it.

I obtained the app, repackaged it with my code signature and threw it on my iPhone with Xcode.

Story

Getting the deb

Since I am not using Cydia, I had to find out how Cydia repos work in order to obtain the .deb from the repo (I was not! able by any means to compile AirFloat — using Xcode 6.1 beta).

  1. There's a Release file with info about the repo. — http://cydia.myrepospace.com/dervic/Release
  2. There's a Packages file on the repo (wasn't there, it was gzipped) — http://cydia.myrepospace.com/dervic/Packages.gz ; extract it.
  3. tl;dr
  4. http://www.myrepospace.com//debfiles/3/32175/airfloat_1.3.2.deb
  5. Extract the .tar file — you'll get an Applications/../ folder relative to root on the iDevice. Open your terminal in the AirFloat folder inside it.

You'll get an .app file.

Building the base structure.

Base structure:

iTunesArtwork
iTunesMetadata.plist
Payload

Build the iTunesArtwork and iTunesMetadata.plist file.. or just copy them from a different app. I used the meta data from another app I released into the AppStore, so that it directly correlates with my certificate information. Name the app AirFloat inside iTunesMetadata.plist and use a name derived from your organization (e.g. _com.kenansulayman_.AirFloat). Move the AirFloat.app file into the ./Payload folder of your base structure.

Create a new, empty project to run on the device

Name it accordingly to your iTunesMetadata.plist file.

Should look alike:

In case you're running into an error named "Security" (that's all, yeah)

Locate the AirFloat app on your device, click it and "trust" your provision profile. Remove the app.

Code-sign your app

Open keychain, locate your certificate —

Change to the Payload folder in your base structure and code-sign your application —

$ codesign -f -s "iPhone Developer: Your Name (*****)" AirFloat.app/
AirFloat.app/: replacing existing signature
Package your app

Just select all three files and compress them; rename the Archive.zip to airfloat.ipa.

Open Xcode / Devices and move AirFloat into the Applications field

....

That's it: AirFloat should be installed and is working.

Using it


Yosemite: Select the AirPlay instance you're going to stream to.

Run without Apple Dev cert?

I am a bit out of the loop lately regarding iOS development. Is it already possible to build and test apps locally without a provisioning profile?

Would love to give this a try

RSA

would you mind not using RSA?

Audio skipping on 3GS IOS6.1.3

I am having bad luck with audio skipping using airfloat on an iPhone 3GS running IOS6.1.3. It seems to get much worse as wifi signal goes down, but even with the source and destinations are within a few feet of the AP skipping occurs. The same skipping does not occur with the Apple TV, and I have even seen this issue when I wifi tether the 3GS to my iPhone 5 (it's not as bad though).

Should the iPhone 3GS be be able to stream Airplay without any skips?

Xcode 8 and iOS 10

Haven't done much coding in the last 40 years. (basic .fortran 77. DBase. Clipper SQL) I am sure there are easier places to start. But i want the functionality and don't expect it to work without effort (and learning in the process)

first issue :- linker finds duplicated symbol SettingsUpdatedNotification in SettingsViewController.o and
AppViewController.o

Where to start as i have just jumped in at The deep end?

I will deal with the depreciations in a later Daymare.

Thank in advance for your help

AirPlay to the same device

I am trying to AirPlay to the same device the server is running on but I keep getting disconnected or if I manage to keep it connected I cannot hear it the output.

Crash on launch iPhone4/iOS 5.1.1

I'm getting crash on launch as described above. It crashes so fast that the launch animation doesn't even finish. Anyone know if there's a conflict or missing requirement?

thank you!

just one to say a big thank you!
this incredible project helps my old iPod touch becomes useful again : )

Cannot build on latest Xcode

Using 9.2 and latest Xcode but always run into errors regarding libairfloat and a launch storyboard must be provided .. Any tips? does this work on 9.2 on 6s?

Full screen mirroring

Good work!

Feature request: Any chance this will support a full screen mirroring view, so I can even mirror my Mac's desktop to an iPad?

coreaudiod [AirPlay] ### Endpoint 'AirFloat' keep-alive error: 32/0x20 kOTSerialOverrunErr / EPIPE

While using Airfloat I received thousands of Console errors like this:

coreaudiod[116]: 2013-06-15 03:21:04.436243 AM [AirPlay] ### Endpoint 'AirFloat' keep-alive error: 32/0x20 kOTSerialOverrunErr / EPIPE

I looked around and edited:
com.apple.audio.coreaudiod.plist

In:
/System/Library/LaunchDaemons/

From:
KeepAlive false

To:
KeepAlive true

And it seems to have fixed the problem.

I dont' know much about programming, I'm not sure if the console message was an error or not, but it went away.

OS X 10.8.4 (12E55)

multiple instances of AirFloat in one network

Hi,

first of all great work :-)
I downloaded and compiled for my iPhone 4s and my iPad.
Worked on both of them individually great.

But when both are running on the same time only the first is visible (e.g. in iTunes)

I analyses it a little bit and found out:

  • both share the same ID on bonjour: 020000000000@AirFloat
  • if I change the name the ID changes immediately, but on some unknown reason the settings are not stored until the next startup -> no settings file on my device
    => I still can debug the location where the settings should be written, but it is not done

I use iOS 7.0.4 with the actual Xcode

best regards and a merry XMAS
john doe

Cant this be used to screen record?

Maybe this can be used to screen record like iCapture which I got on the AppStore before it got taken down. iCapture uses airplay and voIP which is optional, I'm sure this is possible

Alternatives to including OpenSSL?

Can AirFloat link against (and dpkg depend on) Cydia's OpenSSL package instead of including the source from scratch? Searching around I also found this: http://atastypixel.com/blog/easy-inclusion-of-openssl-into-iphone-app-projects/ . It's a tiny bit cleaner in that we would only include a clean upstream tarball in the source which make it easier to check the md5 haches no one file than a bunch of independent files.

I acknowledge that this may be overly nitpicky since airfloat doesn't deal with any sensitive data but including the source feels dirty.

Can't Install 4.2.1

I have 4.2.1 installed on an old iPhone 3g but when i go to install AirFloat from Cydia it blocks me saying AirFloat depends on iOS Firmware >= 4.0 … but i have 4.2.1 (8c148). It could be that Cydia itself is not checking the iOS version correctly?

Crash at launch on iphone 3GS / iOS 5.0

Hi,

The application crash at launch on my old iphone 3GS under iOS 5.0.
The application screen appears for less than 1/2 second and return to home screen of the iphone.

Here is what I have in the crash logs :

Incident Identifier: 32CACCD3-9684-4914-BC47-2AC8C0801111
CrashReporter Key:   5b25af278aa7823d59c592ad316e62b3d3fbb6f7
Hardware Model:      iPhone2,1
Process:         launchd [249]
Path:            /sbin/launchd
Identifier:      launchd
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2013-07-21 22:29:32.470 +0200
OS Version:      iPhone OS 5.0 (9A334)
Report Version:  104

Exception Type:  EXC_BAD_ACCESS (SIGILL)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000
Highlighted Thread:  0

Backtrace not available

Unknown thread crashed with ARM Thread State:
    r0: 0x00000055    r1: 0x00000000      r2: 0x00000000      r3: 0x00000000
    r4: 0x00000000    r5: 0x00000000      r6: 0x00000000      r7: 0x00000000
    r8: 0x00000000    r9: 0x00000000     r10: 0x00000000     r11: 0x00000000
    ip: 0x00000000    sp: 0x00000000      lr: 0x00000000      pc: 0x00000000
  cpsr: 0x20000010

Binary images description not available

And in syslog :

22:29:32 ReportCrash[250]: MS:Notice: Installing: (null) [ReportCrash] (675.00)
22:29:32 configd[20]: subnet_route_if_index: can't get interface name
22:29:32 configd[20]: Captive: en0: Not probing 'Wifixxxx_Namexx' (protected network)
22:29:32 ReportCrash[250]: Failed to create CSSymbolicatorRef for launchd
22:29:32 ReportCrash[250]: Formulating crash report for process launchd[249]
22:29:32 kernel[0]: [75.682825916]: AppleBCMWLANNetManager::receivedIPv4Address(): Received address 192.168.1.73, entering powersave mode 2
22:29:32 configd[20]: network configuration changed.
22:29:32 configd[20]: hostname (prefs) = iPhone-de-xxxxxxxx
22:29:32 com.apple.launchd[1] (UIKitApplication:com.tren.AirFloat[0xf4e9][249]): (UIKitApplication:com.tren.AirFloat[0xf4e9]) Job appears to have crashed: Illegal instruction: 4
22:29:32 com.apple.launchd[1] (UIKitApplication:com.tren.AirFloat[0xf4e9]): (UIKitApplication:com.tren.AirFloat[0xf4e9]) Throttling respawn: Will start in 2147483647 seconds
22:29:32 SpringBoard[22]: Application 'AirFloat' exited abnormally with signal 4: Illegal instruction: 4
22:29:32 configd[20]: network configuration changed.
22:29:32 configd[20]: hostname (prefs) = iPhone-de-xxxxxxxx
22:29:33 timed[252]: MS:Notice: Installing: com.apple.timed [timed] (675.00)
22:29:33 ReportCrash[250]: Saved crashreport to /var/mobile/Library/Logs/CrashReporter/launchd_2013-07-21-222932_iPhone-de-xxxxxxxx.plist using uid: 0 gid: 0, synthetic_euid: 501 egid: 0
22:29:34 SpringBoard[22]: Error: Connection interrupted

I use this iphone without sim card installed, in airplane mode but with WIFI activated (of course !)

Any idea ?

AirFloat connection silently fails after muting sound for a few seconds

This happens both with my iPad and iPhone on iOS 6.2. My computer runs OSX 10.9.1.

After pausing say a video for a few seconds (30-60 sec.) the connection stops and I’m unable to reconnect. I need to quick AirFloat and reopen it to make it work again. I can pause for short time periods (for example 10-20 seconds without trouble).

It gives this message in the log files:
25.02.14 20:19:59,173 SystemUIServer[393]: 2014-02-25 08:19:59.173207 PM [AirPlayAVSys] Picking route 'AirFloat @ iPhone' (90:84:0D:80:48:DD)
25.02.14 20:19:59,180 coreaudiod[396]: 2014-02-25 08:19:59.179952 PM [AirPlay] Selecting endpoint 90:84:0D:80:48:DD "AirFloat @ iPhone" for A/V

But the sound comes from the internal speaker although the iOS is selected as output device.

Sometimes it even crashes during playback:

25.02.14 20:53:14,035 coreaudiod[396]: 2014-02-25 08:53:14.034664 PM [AirPlay] Sent retransmit to [fe80::9284:dff:fe80:48dd%en0]:6001 (602 retransmits, 34 futiles)
25.02.14 20:53:17,222 coreaudiod[396]: 2014-02-25 08:53:17.219387 PM [AirPlay] ### Endpoint "AirFloat @ iPhone" keep-alive error: -6753/0xFFFFE59F kConnectionErr
25.02.14 20:53:17,222 coreaudiod[396]: 2014-02-25 08:53:17.222193 PM [AirPlay] ### Error with endpoint "AirFloat @ iPhone": -6753/0xFFFFE59F kConnectionErr
25.02.14 20:53:17,228 coreaudiod[396]: 2014-02-25 08:53:17.227659 PM [AirPlay] Quiescing endpoint 'AirFloat @ iPhone'
25.02.14 20:53:17,241 SystemUIServer[393]: 2014-02-25 08:53:17.239910 PM [AirPlayAVSys] ### Quiesce AirPlay
25.02.14 20:53:17,241 AirPlayUIAgent[44849]: 2014-02-25 08:53:17.239946 PM [AirPlayAVSys] ### Quiesce AirPlay
25.02.14 20:53:17,276 SystemUIServer[393]: 2014-02-25 08:53:17.276020 PM [AirPlayAVSys] AirPlay no longer the default audio device
25.02.14 20:53:17,287 AirPlayUIAgent[44849]: 2014-02-25 08:53:17.286516 PM [AirPlayAVSys] AirPlay no longer the default audio device

.H must be .h

In AirFloatScrollingLabel.h,

UIKit/UIKit.H

must be

UIKit/UIKit.h

share's problem

I want to add share botton,I want to share 'What playing' and 'album's cover',how can I achieve that?

Won't Play Music After disconnect wifi

Helllo,
if you run a session via Airplay and you stop playing with disconnecting wlan from client you could not connect to the server next time. Message Airplay already in use...

could you fix it?
thanks

Airplay to same iPhone?

Can AirFloat be used to AirPlay from an iPhone to itself?

Specifically, to background some audio from a stream.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.