Skip to content

Commit b255987

Browse files
committed
Support beginning a video recording with the microphone muted
1 parent f3ba308 commit b255987

4 files changed

Lines changed: 15 additions & 15 deletions

File tree

app/src/main/java/app/grapheneos/camera/CamConfig.kt

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1145,6 +1145,12 @@ class CamConfig(private val mActivity: MainActivity) {
11451145
} else {
11461146
View.VISIBLE
11471147
}
1148+
mActivity.muteToggle.visibility =
1149+
if (includeAudio) {
1150+
View.VISIBLE
1151+
} else {
1152+
View.GONE
1153+
}
11481154

11491155
val videoCaptureBuilder = VideoCapture.Builder(
11501156
Recorder.Builder()
@@ -1426,8 +1432,6 @@ class CamConfig(private val mActivity: MainActivity) {
14261432

14271433
mActivity.captureButton.setBackgroundResource(android.R.color.transparent)
14281434
mActivity.captureButton.setImageResource(R.drawable.torch_off_button)
1429-
1430-
mActivity.micOffIcon.visibility = View.GONE
14311435
} else {
14321436
mActivity.qrOverlay.visibility = View.INVISIBLE
14331437
mActivity.thirdOption.visibility = View.VISIBLE
@@ -1442,10 +1446,11 @@ class CamConfig(private val mActivity: MainActivity) {
14421446
mActivity.captureButton.setImageResource(R.drawable.recording)
14431447
} else {
14441448
mActivity.captureButton.setImageResource(R.drawable.camera_shutter)
1445-
mActivity.micOffIcon.visibility = View.GONE
14461449
}
14471450
}
14481451

1452+
mActivity.micOffIcon.visibility = View.GONE
1453+
mActivity.muteToggle.visibility = View.GONE
14491454
mActivity.cbText.visibility = if (isQRMode || isVideoMode || mActivity.timerDuration == 0) {
14501455
View.INVISIBLE
14511456
} else {

app/src/main/java/app/grapheneos/camera/capturer/VideoCapturer.kt

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ class VideoCapturer(private val mActivity: MainActivity) {
187187
val pendingRecording = recordingCtx.pendingRecording
188188

189189
if (includeAudio) {
190-
pendingRecording.withAudioEnabled()
190+
pendingRecording.withAudioEnabled(isMuted)
191191
}
192192

193193
beforeRecordingStarts()
@@ -315,14 +315,6 @@ class VideoCapturer(private val mActivity: MainActivity) {
315315
mActivity.timerView.visibility = View.VISIBLE
316316

317317
mActivity.settingsDialog.includeAudioToggle.isEnabled = false
318-
319-
if (camConfig.includeAudio) {
320-
isMuted = false
321-
mActivity.muteToggle.setImageResource(R.drawable.mic_on)
322-
mActivity.muteToggle.setBackgroundColor(mActivity.getColor(R.color.red))
323-
mActivity.muteToggle.tooltipText = mActivity.getString(R.string.tap_to_mute_audio)
324-
mActivity.muteToggle.visibility = View.VISIBLE
325-
}
326318
}
327319

328320
private fun afterRecordingStops() {
@@ -375,22 +367,19 @@ class VideoCapturer(private val mActivity: MainActivity) {
375367
// mActivity.micOffIcon.visibility = View.VISIBLE
376368

377369
mActivity.settingsDialog.includeAudioToggle.isEnabled = true
378-
mActivity.muteToggle.visibility = View.GONE
379370

380371
isRecording = false
381372

382373
mActivity.forceUpdateOrientationSensor()
383374
}
384375

385376
fun muteRecording() {
386-
if (!isRecording) return
387377
check(camConfig.includeAudio)
388378
isMuted = true
389379
recording?.mute(true)
390380
}
391381

392382
fun unmuteRecording() {
393-
if (!isRecording) return
394383
check(camConfig.includeAudio)
395384
isMuted = false
396385
recording?.mute(false)

app/src/main/java/app/grapheneos/camera/ui/SettingsDialog.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,11 @@ class SettingsDialog(val mActivity: MainActivity, themedContext: Context) :
369369
} else {
370370
View.VISIBLE
371371
}
372+
mActivity.muteToggle.visibility = if (includeAudioToggle.isChecked) {
373+
View.VISIBLE
374+
} else {
375+
View.GONE
376+
}
372377

373378
camConfig.includeAudio = includeAudioToggle.isChecked
374379
}

app/src/main/java/app/grapheneos/camera/ui/activities/VideoCaptureActivity.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ class VideoCaptureActivity : CaptureActivity() {
6464
override fun showPreview() {
6565
super.showPreview()
6666
thirdOption.visibility = View.VISIBLE
67+
muteToggle.visibility = View.GONE
6768
}
6869

6970
private fun confirmVideo() {

0 commit comments

Comments
 (0)