I have a home linux server running the PulseAudio - with shared audio devices, that are connected to cool sound system.
And I have an Android 4.4-based phone. I want to stream audio from my phone to the PulseAudio server.
How to do that?
For my linux distribution (Fedora 20) it's quite simple:
bluetooth-discovery. (It's auto-loaded on Fedora)
The only problem is the step 5. I can't connect to PC from my phone - I think, it's a linux problem - and it's another question for another forum.
Currently there is no built-in protocol for "stock" Androids to connect to remote Pulseaudio servers. However, a custom ROM HAS been made to include Pulseaudio as the Android sound engine. Maybe soon your answer will be built into Androids.
SO. What CAN you do to get Android sound to a remote rendering engine? One answer says send it over Bluetooth which only works well for short distances and for Media PCs with Bluetooth. This is the first thing to try, and it may even be worth the small expense of buying a USB Bluetooth adapter for your media PC. It has the distinct advantage of working with all players.
If you don't have Bluetooth or you want more range, you can also install a UPnP server on your Linux machine. Rygel is one. Some player applications can send audio to remote UPnP devices, others can't. Look in the settings of your player for words like "throw" and "renderer" these settings allow you to choose a remote player. UPnP devices are recognized automatically and can be selected for playback once found.
One free UPnP audio player is UPnPlay. Install this from Play Store and select the rendering engine of your Linux PC running rygel. This method will use the WiFi of your Android device to send audio to the media PC. The range will be much greater than Bluetooth.
If you run Kodi on your Media PC, turn on UPnP in settings and kodi will do the work of rygel. The paid version of Yatse, a Kodi remote, can also throw to remote servers.