summaryrefslogtreecommitdiff
path: root/app/src/main/res
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/res')
-rw-r--r--app/src/main/res/layout/activity_main.xml111
-rw-r--r--app/src/main/res/layout/activity_player.xml20
-rw-r--r--app/src/main/res/values/strings.xml32
3 files changed, 130 insertions, 33 deletions
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index e919117..2f3a1ac 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -65,27 +65,113 @@
android:scaleType="centerInside"
android:src="@android:color/transparent" />
- <com.wuhei.reccoon.WaveformView
+ <androidx.appcompat.widget.AppCompatCheckBox
+ android:id="@+id/compressCheckbox"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_marginTop="4dp"
+ android:contentDescription="@string/compress_recording"
+ android:text="@string/compress_short"
+ android:textColor="@color/text_secondary"
+ android:textSize="13sp" />
+
+ <LinearLayout
+ android:id="@+id/inputRow"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_marginTop="4dp"
+ android:gravity="center_vertical"
+ android:orientation="horizontal">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/input_label"
+ android:textColor="@color/text_secondary"
+ android:textSize="13sp" />
+
+ <Spinner
+ android:id="@+id/inputSpinner"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginStart="8dp"
+ android:minWidth="180dp" />
+ </LinearLayout>
+
+ <LinearLayout
+ android:id="@+id/outputRow"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_marginTop="4dp"
+ android:gravity="center_vertical"
+ android:orientation="horizontal">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/output_label"
+ android:textColor="@color/text_secondary"
+ android:textSize="13sp" />
+
+ <Spinner
+ android:id="@+id/outputSpinner"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginStart="8dp"
+ android:minWidth="180dp" />
+ </LinearLayout>
+
+ <androidx.appcompat.widget.AppCompatCheckBox
+ android:id="@+id/monitorCheckbox"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_marginTop="2dp"
+ android:contentDescription="@string/monitor_recording"
+ android:text="@string/monitor_short"
+ android:textColor="@color/text_secondary"
+ android:textSize="13sp" />
+
+ <com.tomcooks.reccoon.WaveformView
android:id="@+id/waveformView"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_marginTop="16dp" />
- <com.wuhei.reccoon.LevelMeterView
+ <com.tomcooks.reccoon.LevelMeterView
android:id="@+id/levelMeter"
android:layout_width="match_parent"
android:layout_height="38dp"
android:layout_marginTop="10dp" />
- <Button
- android:id="@+id/markButton"
+ <LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="6dp"
- android:enabled="false"
- android:minWidth="140dp"
- android:text="@string/mark_action" />
+ android:gravity="center"
+ android:orientation="horizontal">
+
+ <Button
+ android:id="@+id/markButton"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:enabled="false"
+ android:minWidth="130dp"
+ android:text="@string/mark_action" />
+
+ <Button
+ android:id="@+id/discardButton"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginStart="10dp"
+ android:enabled="false"
+ android:minWidth="130dp"
+ android:text="@string/discard_action" />
+ </LinearLayout>
<LinearLayout
android:id="@+id/optionsRow"
@@ -116,6 +202,17 @@
android:textSize="13sp" />
</LinearLayout>
+ <androidx.appcompat.widget.AppCompatCheckBox
+ android:id="@+id/swapCheckbox"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_marginTop="2dp"
+ android:contentDescription="@string/swap_channels"
+ android:text="@string/swap_short"
+ android:textColor="@color/text_secondary"
+ android:textSize="13sp" />
+
<TextView
android:id="@+id/statusText"
android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/activity_player.xml b/app/src/main/res/layout/activity_player.xml
index 6ba1190..2bb2f54 100644
--- a/app/src/main/res/layout/activity_player.xml
+++ b/app/src/main/res/layout/activity_player.xml
@@ -159,25 +159,11 @@
android:textSize="18sp"
android:textStyle="bold" />
- <LinearLayout
+ <Spinner
+ android:id="@+id/modelSpinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginTop="8dp"
- android:orientation="horizontal">
-
- <Spinner
- android:id="@+id/languageSpinner"
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1" />
-
- <Spinner
- android:id="@+id/modelSpinner"
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_marginStart="10dp"
- android:layout_weight="1" />
- </LinearLayout>
+ android:layout_marginTop="8dp" />
<Button
android:id="@+id/transcribeButton"
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 416ce5e..6bab640 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,13 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">RECCoon</string>
- <string name="subtitle">by wuhei · v1.4.0-alpha</string>
+ <string name="subtitle">by Tom Cooks · v1.0.0</string>
<string name="timer_zero">00:00</string>
<string name="footer">44.1 kHz · 16-bit · PCM (WAV) · cue markers</string>
<string name="status_idle">Tap the button to start recording</string>
<string name="status_recording">Recording… tap again to stop and save</string>
<string name="status_saving">Saving to Downloads…</string>
+ <string name="status_discarding">Discarding…</string>
+ <string name="discarded">Recording discarded</string>
+ <string name="discard_action">Discard</string>
<string name="cd_record">Start recording</string>
<string name="cd_stop">Stop and save</string>
@@ -22,8 +25,22 @@
<string name="mono_short">Mono</string>
<string name="mono_recording">Record in mono (half file size)</string>
+ <string name="compress_short">Compressed (small M4A)</string>
+ <string name="compress_recording">Save a compressed M4A instead of a WAV (much smaller, lossy)</string>
+ <string name="input_label">Mic</string>
+ <string name="input_auto">Auto (Android picks)</string>
+ <string name="input_phone">Phone mic (built-in)</string>
<string name="silence_short">Silence alerts</string>
<string name="silence_recording">Silence notifications &amp; vibrations while recording</string>
+ <string name="swap_short">Swap L/R</string>
+ <string name="swap_channels">Swap the left and right channels (use this if the meters are inverted)</string>
+ <string name="monitor_short">Monitor</string>
+ <string name="monitor_recording">Play the microphone through the selected output while recording</string>
+ <string name="monitor_warning">Monitoring live audio can cause feedback — use headphones.</string>
+ <string name="err_monitor">Could not start live monitoring</string>
+ <string name="output_label">Out</string>
+ <string name="output_auto">Auto (system default)</string>
+ <string name="output_speaker">Phone speaker</string>
<string name="dnd_title">Allow Do Not Disturb</string>
<string name="dnd_message">To silence notifications and vibrations while recording, allow RECCoon access to Do Not Disturb.</string>
<string name="dnd_open_settings">Open settings</string>
@@ -49,9 +66,10 @@
<string name="export_failed">Export failed: %1$s</string>
<string name="err_share">Could not share this file</string>
<string name="notification_channel">Recording</string>
+ <string name="model_download_channel">Model download</string>
<string name="notification_recording">Recording audio…</string>
<string name="recordings_title">Recordings</string>
- <string name="recordings_subtitle">Saved in Downloads · reccoon-*.wav</string>
+ <string name="recordings_subtitle">Saved in Downloads · reccoon-*.wav / *.m4a</string>
<string name="recordings_empty">No recordings yet.\nTap the record button to make one.</string>
<string name="badge_transcript">TXT</string>
@@ -63,15 +81,11 @@
<string name="transcribe_title">Transcription (on-device)</string>
<string name="transcribe_action">Transcribe</string>
- <string name="transcribe_hint">Choose a language and model, then tap Transcribe.</string>
- <string name="lang_auto">Auto detect</string>
- <string name="lang_en">English</string>
- <string name="lang_it">Italiano</string>
- <string name="model_tiny">Tiny (fast)</string>
- <string name="model_base">Base (better)</string>
+ <string name="transcribe_hint">Tap Transcribe to run Parakeet v3 on this recording.</string>
+
<string name="model_download_title">Download model</string>
- <string name="model_download_message">The %1$s multilingual Whisper model is required (about %2$s). Download it now over Wi-Fi?</string>
+ <string name="model_download_message">The %1$s model is required (about %2$s). Download it now over Wi-Fi?</string>
<string name="download">Download</string>
<string name="cancel">Cancel</string>
<string name="status_model_ready">Model ready</string>