diff --git a/.idea/libraries/org_asynchttpclient_async_http_client_2_0_18.xml b/.idea/libraries/org_asynchttpclient_async_http_client_2_0_18.xml
index 89a40528..884ea3f9 100644
--- a/.idea/libraries/org_asynchttpclient_async_http_client_2_0_18.xml
+++ b/.idea/libraries/org_asynchttpclient_async_http_client_2_0_18.xml
@@ -3,16 +3,7 @@
-
-
-
-
-
-
-
-
-
@@ -20,11 +11,6 @@
-
-
-
-
-
diff --git a/config/logback.xml b/config/logback.xml
index ef72812a..42146503 100644
--- a/config/logback.xml
+++ b/config/logback.xml
@@ -30,6 +30,9 @@
+
+
+
diff --git a/imports/async-http-client-2.0.24.jar b/imports/async-http-client-2.0.24.jar
deleted file mode 100644
index 4ba0361c..00000000
Binary files a/imports/async-http-client-2.0.24.jar and /dev/null differ
diff --git a/imports/netty-buffer-4.1.6.Final.jar b/imports/netty-buffer-4.1.6.Final.jar
deleted file mode 100644
index eb9571b1..00000000
Binary files a/imports/netty-buffer-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-codec-4.1.6.Final.jar b/imports/netty-codec-4.1.6.Final.jar
deleted file mode 100644
index 46e6d345..00000000
Binary files a/imports/netty-codec-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-codec-dns-4.1.6.Final.jar b/imports/netty-codec-dns-4.1.6.Final.jar
deleted file mode 100644
index dd1ef350..00000000
Binary files a/imports/netty-codec-dns-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-codec-http-4.1.6.Final.jar b/imports/netty-codec-http-4.1.6.Final.jar
deleted file mode 100644
index 59087aa5..00000000
Binary files a/imports/netty-codec-http-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-common-4.1.6.Final.jar b/imports/netty-common-4.1.6.Final.jar
deleted file mode 100644
index f119295a..00000000
Binary files a/imports/netty-common-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-handler-4.1.6.Final.jar b/imports/netty-handler-4.1.6.Final.jar
deleted file mode 100644
index 283ae99a..00000000
Binary files a/imports/netty-handler-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-reactive-streams-1.0.8.jar b/imports/netty-reactive-streams-1.0.8.jar
deleted file mode 100644
index bb69a229..00000000
Binary files a/imports/netty-reactive-streams-1.0.8.jar and /dev/null differ
diff --git a/imports/netty-resolver-4.1.6.Final.jar b/imports/netty-resolver-4.1.6.Final.jar
deleted file mode 100644
index 1a997579..00000000
Binary files a/imports/netty-resolver-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-resolver-dns-4.1.6.Final.jar b/imports/netty-resolver-dns-4.1.6.Final.jar
deleted file mode 100644
index f4b704aa..00000000
Binary files a/imports/netty-resolver-dns-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-transport-4.1.6.Final.jar b/imports/netty-transport-4.1.6.Final.jar
deleted file mode 100644
index b9610fee..00000000
Binary files a/imports/netty-transport-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/netty-transport-native-epoll-4.1.6.Final.jar b/imports/netty-transport-native-epoll-4.1.6.Final.jar
deleted file mode 100644
index d90d7346..00000000
Binary files a/imports/netty-transport-native-epoll-4.1.6.Final.jar and /dev/null differ
diff --git a/imports/reactive-streams-1.0.0.jar b/imports/reactive-streams-1.0.0.jar
deleted file mode 100644
index fe6b2832..00000000
Binary files a/imports/reactive-streams-1.0.0.jar and /dev/null differ
diff --git a/src/audio/broadcast/AudioBroadcaster.java b/src/audio/broadcast/AudioBroadcaster.java
index e4d4e9e9..8688b04f 100644
--- a/src/audio/broadcast/AudioBroadcaster.java
+++ b/src/audio/broadcast/AudioBroadcaster.java
@@ -190,8 +190,11 @@ public abstract class AudioBroadcaster implements IAudioPacketListener
*/
public void receive(StreamableAudioRecording recording)
{
- mAudioRecordingQueue.add(recording);
- broadcast(new BroadcastEvent(this, BroadcastEvent.Event.BROADCASTER_QUEUE_CHANGE));
+ if(connected())
+ {
+ mAudioRecordingQueue.add(recording);
+ broadcast(new BroadcastEvent(this, BroadcastEvent.Event.BROADCASTER_QUEUE_CHANGE));
+ }
}
/**
@@ -262,7 +265,7 @@ public abstract class AudioBroadcaster implements IAudioPacketListener
{
if(mBroadcastState != state)
{
- mLog.debug("[" + getStreamName() + "] changing state to: " + state);
+ mLog.info("[" + getStreamName() + "] changing state to: " + state);
mBroadcastState = state;
broadcast(new BroadcastEvent(this, BroadcastEvent.Event.BROADCASTER_STATE_CHANGE));
@@ -271,6 +274,11 @@ public abstract class AudioBroadcaster implements IAudioPacketListener
{
stop();
}
+
+ if(!connected())
+ {
+ mAudioRecordingQueue.clear();
+ }
}
}
diff --git a/src/audio/broadcast/BroadcastFactory.java b/src/audio/broadcast/BroadcastFactory.java
index 8aa2b9f3..b9bf1226 100644
--- a/src/audio/broadcast/BroadcastFactory.java
+++ b/src/audio/broadcast/BroadcastFactory.java
@@ -28,16 +28,15 @@ import audio.broadcast.icecast.IcecastHTTPConfigurationEditor;
import audio.broadcast.icecast.IcecastTCPAudioBroadcaster;
import audio.broadcast.icecast.IcecastTCPConfiguration;
import audio.broadcast.icecast.IcecastTCPConfigurationEditor;
-import audio.broadcast.shoutcast.v1.ShoutcastV1Configuration;
import audio.broadcast.shoutcast.v1.ShoutcastV1AudioBroadcaster;
-import audio.broadcast.shoutcast.v2.ShoutcastV2Configuration;
+import audio.broadcast.shoutcast.v1.ShoutcastV1Configuration;
import audio.broadcast.shoutcast.v2.ShoutcastV2AudioBroadcaster;
+import audio.broadcast.shoutcast.v2.ShoutcastV2Configuration;
import audio.convert.IAudioConverter;
import audio.convert.MP3AudioConverter;
import controller.ThreadPoolManager;
import gui.editor.Editor;
import gui.editor.EmptyEditor;
-import org.asynchttpclient.DefaultAsyncHttpClient;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import record.AudioRecorder;
@@ -54,7 +53,6 @@ public class BroadcastFactory
public static final int MP3_MONO_16_KHZ_BITRATE = 16;
public static final boolean MP3_CONSTANT_BITRATE = false;
- public static final boolean MP3_VARIABLE_BITRATE = true;
/**
* Creates an audio streaming broadcaster for the configuration
@@ -62,8 +60,7 @@ public class BroadcastFactory
* @param configuration describing the server and audio types
* @return configured broadcaster or null
*/
- public static AudioBroadcaster getBroadcaster(DefaultAsyncHttpClient defaultAsyncHttpClient,
- ThreadPoolManager threadPoolManager,
+ public static AudioBroadcaster getBroadcaster(ThreadPoolManager threadPoolManager,
BroadcastConfiguration configuration)
{
if(configuration != null)
@@ -75,18 +72,20 @@ public class BroadcastFactory
switch(configuration.getBroadcastServerType())
{
case BROADCASTIFY:
- return new IcecastTCPAudioBroadcaster(defaultAsyncHttpClient, threadPoolManager,
+ return new IcecastTCPAudioBroadcaster(threadPoolManager,
(BroadcastifyConfiguration)configuration);
case ICECAST_TCP:
- return new IcecastTCPAudioBroadcaster(defaultAsyncHttpClient, threadPoolManager,
+ return new IcecastTCPAudioBroadcaster(threadPoolManager,
(IcecastTCPConfiguration)configuration);
case ICECAST_HTTP:
- return new IcecastHTTPAudioBroadcaster(defaultAsyncHttpClient, threadPoolManager,
+ return new IcecastHTTPAudioBroadcaster(threadPoolManager,
(IcecastHTTPConfiguration)configuration);
case SHOUTCAST_V1:
- return new ShoutcastV1AudioBroadcaster(threadPoolManager, (ShoutcastV1Configuration)configuration);
+ return new ShoutcastV1AudioBroadcaster(threadPoolManager,
+ (ShoutcastV1Configuration)configuration);
case SHOUTCAST_V2:
- return new ShoutcastV2AudioBroadcaster(threadPoolManager, (ShoutcastV2Configuration)configuration);
+ return new ShoutcastV2AudioBroadcaster(threadPoolManager,
+ (ShoutcastV2Configuration)configuration);
case UNKNOWN:
default:
mLog.info("Unrecognized broadcastAudio configuration: " + configuration.getBroadcastFormat().name());
diff --git a/src/audio/broadcast/BroadcastModel.java b/src/audio/broadcast/BroadcastModel.java
index 5437a84b..05b59cfe 100644
--- a/src/audio/broadcast/BroadcastModel.java
+++ b/src/audio/broadcast/BroadcastModel.java
@@ -21,8 +21,6 @@ package audio.broadcast;
import alias.id.broadcast.BroadcastChannel;
import audio.AudioPacket;
import controller.ThreadPoolManager;
-import org.asynchttpclient.DefaultAsyncHttpClient;
-import org.asynchttpclient.DefaultAsyncHttpClientConfig;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import properties.SystemProperties;
@@ -65,7 +63,6 @@ public class BroadcastModel extends AbstractTableModel implements Listener