Skip to content

Broadcast from your Android device. Live Radio is a audio streaming library based on CoolMicApp (default IceCast Android Client), for making the life easy.

License

Notifications You must be signed in to change notification settings

mirsamantajbakhsh/LiveRadio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Live Radio

Broadcast from your Android device. Live Radio is a audio streaming library based on CoolMicApp (default IceCast Android Client), for making the life easier. The detailed explanation is available at my personal blog.

Test

How to Use

For using the Live Audio library, you need to start a stream server, and then connect your application to the server.

Starting Stream Server

I've used IceCast as the media server on Ubuntu 18.04 LTS. I've added a new stream source to the IceCast config file (/etc/icecast2/icecast.xml) using these settings:

<mount type="normal">
    <mount-name>/harleyquinn</mount-name>
    <username>joker</username>
    <password>hackme</password>
    <max-listeners>2</max-listeners>
    <max-listener-duration>360000</max-listener-duration>
    <dump-file>/tmp/harley.ogg</dump-file>
    <charset>ISO8859-1</charset>
    <public>1</public>
    <stream-name>Harley Quinn Radio</stream-name>
    <stream-description>Listen to my live audio from Gotham! With Joker!</stream-description>
    <genre>Heavy</genre>
    <bitrate>64</bitrate>
    <type>application/ogg</type>
    <subtype>vorbis</subtype>
    <hidden>1</hidden>
    <burst-size>65536</burst-size>
    <mp3-metadata-interval>4096</mp3-metadata-interval>
    <on-connect>/home/icecast/bin/source-start</on-connect>
    <on-disconnect>/home/icecast/bin/source-end</on-disconnect>
</mount>

Add Dependency

The code is published as an AAR library. Therefore, you can add the following dependency to your Android project: implement 'ir.mstajbakhsh.android:LiveAudio:1.0.0'

Permissions

Add the following permissions to your Manifest.xml:

<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.INTERNET" />

And check for permission if it is granted to your application or not.

Code Sample

In your Android code (can be either an activity or a service), create a Config object with the parameters which are set in IceCast stream source and pass it to the Live Audio.

Config c = new Config();  
c.host("192.168.43.194");  
c.port(8000);  
c.username("joker");  
c.password("hackme");  
c.mount("/harleyquinn");  
c.sampleRate(16000);  
  
LiveAudio l = new LiveAudio(c);  
try {  
    l.start();  
} catch (Exception e) {  
    e.printStackTrace();  
}

Demo

The video can be found on YouTube about how to start the stream server and config the Android client. https://youtu.be/ujgRlYc9rMg

Android Live Audio Library

Donation

You may donate this project using my BitCoin address at:

BitCoin:

1F5uiEmdCLJX5KktWHE1wkc63feKJYMmxS

About

Broadcast from your Android device. Live Radio is a audio streaming library based on CoolMicApp (default IceCast Android Client), for making the life easy.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published