summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKoushik Dutta <koushd@gmail.com>2014-01-04 21:00:23 -0800
committerRicardo Cerqueira <ricardo@cyngn.com>2015-11-12 13:46:07 +0000
commit9f024ac55255718e2eb4df45e979439bdde95238 (patch)
tree5a5139fc68689cd941f2eb746b033e315f8e8f38 /src
parent963984615ade8d7d47e657937ac333542d79e06e (diff)
downloadandroid_packages_apps_Screencast-9f024ac55255718e2eb4df45e979439bdde95238.tar.gz
android_packages_apps_Screencast-9f024ac55255718e2eb4df45e979439bdde95238.tar.bz2
android_packages_apps_Screencast-9f024ac55255718e2eb4df45e979439bdde95238.zip
fix mic contention
Change-Id: Ifc3977cca248ec3a96d871fd0aecdfc51d8f6c93
Diffstat (limited to 'src')
-rw-r--r--src/com/cyanogenmod/screencast/RecordingDevice.java10
-rw-r--r--src/com/cyanogenmod/screencast/ScreencastService.java1
2 files changed, 9 insertions, 2 deletions
diff --git a/src/com/cyanogenmod/screencast/RecordingDevice.java b/src/com/cyanogenmod/screencast/RecordingDevice.java
index d7ef439..907e46d 100644
--- a/src/com/cyanogenmod/screencast/RecordingDevice.java
+++ b/src/com/cyanogenmod/screencast/RecordingDevice.java
@@ -79,13 +79,19 @@ class RecordingDevice extends EncoderDevice {
@Override
public void run() {
try {
+ if (audio.record.getState() != AudioRecord.STATE_INITIALIZED) {
+ muxer.start();
+ return;
+ }
encode();
}
catch (Exception e) {
Log.e(LOGTAG, "Audio Muxer error", e);
}
- Log.i(LOGTAG, "AudioMuxer done");
- muxWaiter.release();
+ finally {
+ Log.i(LOGTAG, "AudioMuxer done");
+ muxWaiter.release();
+ }
}
void encode() throws Exception {
diff --git a/src/com/cyanogenmod/screencast/ScreencastService.java b/src/com/cyanogenmod/screencast/ScreencastService.java
index ccb9bc4..94c2d04 100644
--- a/src/com/cyanogenmod/screencast/ScreencastService.java
+++ b/src/com/cyanogenmod/screencast/ScreencastService.java
@@ -124,6 +124,7 @@ public class ScreencastService extends Service {
assert recorder == null;
Point size = getNativeResolution();
+ // size = new Point(1080, 1920);
recorder = new RecordingDevice(this, size.x, size.y);
VirtualDisplay vd = recorder.registerVirtualDisplay(this, SCREENCASTER_NAME, size.x, size.y, metrics.densityDpi);
if (vd == null)