Talk:Voicenote
From Openmoko
(→change framerate + mono) |
m (→enable job control) |
||
| Line 19: | Line 19: | ||
Result : | Result : | ||
| − | #!/bin/bash | + | #!/bin/bash |
| − | # Exit on error | + | # Exit on error |
| − | # Enable job control | + | # Enable job control |
| − | set -em | + | set -em |
| − | zenity --question --title="Voice-note" --text="Click Validate to START | + | zenity --question --title="Voice-note" --text="Click Validate to START recording"; gostart=$? |
| − | recording"; gostart=$? | + | |
| − | + | if [ "$gostart" = 1 ] | |
| − | if [ "$gostart" = 1 ] | + | then |
| − | + | echo "Operation canceled" | |
| − | + | exit 1 | |
| − | + | else | |
| − | + | echo "Recording..." | |
| − | + | fi | |
| − | fi | + | alsactl -f /usr/share/openmoko/scenarios/voip-handset.state restore |
| − | alsactl -f /usr/share/openmoko/scenarios/voip-handset.state restore | + | arecord -D hw -f cd -v -t wav ~/rec-$(date +%Y-%m-%d-%H-%M).wav & |
| − | arecord -D hw -f cd -v -t wav ~/rec-$(date +%Y-%m-%d-%H-%M).wav & | + | zenity --info --title="Voice-note" --text="Click Validate to STOP recording" |
| − | zenity --info --title="Voice-note" --text="Click Validate to STOP recording" | + | |
| − | + | # Kill arecord | |
| − | # Kill arecord | + | kill %1 |
| − | kill %1 | + | alsactl -f /usr/share/openmoko/scenarios/gsmhandset.state restore |
| − | alsactl -f /usr/share/openmoko/scenarios/gsmhandset.state restore | + | zenity --info --title="Voice note" --text="Your voice-note has been recorded" |
| − | zenity --info --title="Voice note" --text="Your voice-note has been | + | |
| − | recorded" | + | #END OF FILE |
| − | + | ||
| − | #END OF FILE | + | |
| − | + | ||
== other ? == | == other ? == | ||
Revision as of 14:27, 21 February 2009
Please add any idea / comment / code sample here
I (kimaidou) copy/paste the comments I had on the community mailing list
change framerate + mono
I think 44100 Hz is overkill for something like this. 8 kHz ought to be enough and would save a lot of disk space. I would have also suggested a mono recording, but I'm not sure that is supported.
--> the solution is just the man :) man page
enable job control
You should use "kill %1" instead, this will only kill the instance you just started (and TERM is the default). For that, you need to enable job control (set -m) + remove the &
Result :
#!/bin/bash
# Exit on error
# Enable job control
set -em
zenity --question --title="Voice-note" --text="Click Validate to START recording"; gostart=$?
if [ "$gostart" = 1 ]
then
echo "Operation canceled"
exit 1
else
echo "Recording..."
fi
alsactl -f /usr/share/openmoko/scenarios/voip-handset.state restore
arecord -D hw -f cd -v -t wav ~/rec-$(date +%Y-%m-%d-%H-%M).wav &
zenity --info --title="Voice-note" --text="Click Validate to STOP recording"
# Kill arecord
kill %1
alsactl -f /usr/share/openmoko/scenarios/gsmhandset.state restore
zenity --info --title="Voice note" --text="Your voice-note has been recorded"
#END OF FILE
