VC 18 saved a ⪆ 5400 s M4A with a purported duration of 0 s, despite its ⋛ 102.1 MiB size, due to an `ACTION_REQUEST_SHUTDOWN` having occurred during recording.
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 49/100
Research direction
Start by tracing how recording is saved and recovered when Android shuts down the process, focusing on the recorder’s recording lifecycle and M4A finalization. Reproduce the reported low-battery shutdown if possible and inspect the resulting audio file and duration; done means the recording is saved with its expected playable duration after shutdown and restart.
Written by the indexing model from the issue text.
Description
Checklist
- I can reproduce the bug with the latest version given here.
- I made sure that there are no existing issues - open or closed - to which I could contribute my information.
- I made sure that there are no existing discussions - open or closed - to which I could contribute my information.
- I have read the FAQs inside the app (Menu -> About -> FAQs) and my problem isn't listed.
- I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.
- This issue contains only one bug.
- I have read and understood the contribution guidelines.
Affected app version
-
#!/usr/bin/env -S pwsh -File $Package = 'org.fossify.voicerecorder' $DumpSys = adb shell "dumpsys package $Package" $Object = [Ordered]@{} @{ versionCode = 'versionCode=(\d+)' versionName = 'versionName=([^\s]+)' }.GetEnumerator() | ForEach-Object { $Match = [RegEx]::Match( $DumpSys, $_.Value, [System.Text.RegularExpressions.RegexOptions]::Multiline ) If ($Match.Success) { $Value = $Match.Groups[1].Value $Int64 = 0L $Object[$_.Key] = If ([Long]::TryParse($Value, [Ref]$Int64)) { $Int64 } Else { $Value } } } $Object.installer = ( adb shell 'pm list packages -i' | Select-String "^package:$([RegEx]::Escape($Package)) " | ForEach-Object { $_ -replace '^.*installer=' } ) $Object | ConvertTo-JSON -Compress | yq -P -
versionCode: 18 versionName: 1.7.1 installer: com.machiav3lli.fdroid
Affected Android/Custom ROM version
-
#!/usr/bin/env -S pwsh -File $Object = [Ordered]@{} @( 'ro.build.display.id' 'ro.build.fingerprint' 'ro.build.version.sdk' 'ro.build.version.sdk_full' ) | ForEach-Object { $Value = (adb shell "getprop $_").Trim() If ($Value) { $Int64 = 0L $Object[$_] = If ([Long]::TryParse($Value, [Ref]$Int64)) { $Int64 } Else { $Value } } } $Object | ConvertTo-Json -Compress | yq -P -
ro.build.display.id: FP5.VT32.C.116.20260903 ro.build.fingerprint: Fairphone/FP5/FP5:15/AQ3A.240912.001/VT32:user/release-keys ro.build.version.sdk: 35
Affected device model
-
#!/usr/bin/env -S pwsh -File $Object = [Ordered]@{} @( 'ro.product.brand' 'ro.build.product' ) | ForEach-Object { $Value = (adb shell "getprop $_").Trim() If ($Value) { $Int64 = 0L $Object[$_] = If ([Long]::TryParse($Value, [Ref]$Int64)) { $Int64 } Else { $Value } } } $Object | ConvertTo-Json -Compress | yq -P -
ro.product.brand: Fairphone ro.build.product: FP5
How did you install the app?
F-Droid / IzzyOnDroid (〃)
Steps to reproduce the bug
-
I recorded an M4A for ⪆
PT1.5H. -
My device reached
BatteryCapacityLevel.CRITICAL, soPowerManager.SHUTDOWN_LOW_BATTERYoccurred. -
I charged its battery.
-
I re-initialised the OS.
-
#!/system/bin/sh cmd activity start --user 0 -a android.intent.action.VIEW -n org.fossify.voicerecorder/org.fossify.voicerecorder.activities.MainActivity -f 0 org.fossify.voicerecorderThough, for anyone else, the equivalent is
adb monkey -p org.fossify.voicerecorder 1.
Expected behavior
I expected the audio file to be saved, during that process.
Actual behavior
It is ⋛ 102.1 MiB in size, yet purportedly PT0S in duration.
Screenshots/Screen recordings
- Dominant language
- Kotlin
- Stars
- 1k
- Forks
- 98
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 14
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from FossifyOrg/Voice-Recorder
-
bug needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
FossifyOrg/Voice-Recorder#419 ·
Maintainers usually reply within 1 day
-
bug needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
FossifyOrg/Voice-Recorder#411 ·
Maintainers usually reply within 1 day
-
feature request needs triage
Difficulty 4/5 3-5 days Newbie friendliness 55/100
FossifyOrg/Voice-Recorder#441 ·
Maintainers usually reply within 1 day
-
toggle recording via bluetooth remote controlMay be free again A pull request for this issue was closed without being merged. Openfeature request needs triage
Difficulty 4/5 3-5 days Newbie friendliness 48/100
FossifyOrg/Voice-Recorder#436 ·
Maintainers usually reply within 1 day
-
Audio LayeringOpenfeature request needs triage
Difficulty 5/5 Over a week Newbie friendliness 18/100
FossifyOrg/Voice-Recorder#432 ·
Maintainers usually reply within 1 day
All issues in FossifyOrg/Voice-Recorder
Similar issues
-
[Bug] Lock owned by another client (e.g. Text app) cannot be unlocked from the appPossibly taken @falkloewert claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
[Submission] 悠悠有品Opensubmit-adaption submit-adaption-pre
Difficulty 1/5 Under an hour Newbie friendliness 75/100
BetterAndroid/android-notification-icon-project#763 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
simplex-chat/simplex-chat#7755 ·
Maintainers usually reply within 1 day
-
afk-ok area:data-quality importer size:S
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
enorm-labs/event-junkie#3586 ·
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
scarif-labs/horus#61 ·
Maintainers usually reply within 1 day