diff options
author | Jörg Hohensohn <hohensoh@rockbox.org> | 2004-12-24 08:42:45 +0000 |
---|---|---|
committer | Jörg Hohensohn <hohensoh@rockbox.org> | 2004-12-24 08:42:45 +0000 |
commit | dfa95c334b9cffff28059e0de39ae5305e315ee6 (patch) | |
tree | 486ed4df9a36170768e68eef2546ab072bb57c7f | |
parent | 35c69283d4728c9f94d7a5c47026036bec3e17c4 (diff) | |
download | rockbox-dfa95c334b9cffff28059e0de39ae5305e315ee6.tar.gz rockbox-dfa95c334b9cffff28059e0de39ae5305e315ee6.zip |
different kind of recording beep: more faint, but not disturbing prerecording, can beep while we already record (no latency due to beep)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5511 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/recorder/recording.c | 12 | ||||
-rw-r--r-- | firmware/export/mpeg.h | 2 | ||||
-rw-r--r-- | firmware/mpeg.c | 12 |
3 files changed, 13 insertions, 13 deletions
diff --git a/apps/recorder/recording.c b/apps/recorder/recording.c index 71cd20d797..7ba59cb0ab 100644 --- a/apps/recorder/recording.c +++ b/apps/recorder/recording.c | |||
@@ -322,25 +322,25 @@ bool recording_screen(void) | |||
322 | /* Only act if the mpeg is stopped */ | 322 | /* Only act if the mpeg is stopped */ |
323 | if(!(mpeg_status() & MPEG_STATUS_RECORD)) | 323 | if(!(mpeg_status() & MPEG_STATUS_RECORD)) |
324 | { | 324 | { |
325 | if (global_settings.talk_menu) | ||
326 | { /* no voice possible here, but a beep */ | ||
327 | mpeg_beep(0,HZ/4); /* longer beep on start */ | ||
328 | } | ||
329 | have_recorded = true; | 325 | have_recorded = true; |
330 | talk_buffer_steal(); /* we use the mp3 buffer */ | 326 | talk_buffer_steal(); /* we use the mp3 buffer */ |
331 | mpeg_record(rec_create_filename(path_buffer)); | 327 | mpeg_record(rec_create_filename(path_buffer)); |
332 | update_countdown = 1; /* Update immediately */ | 328 | update_countdown = 1; /* Update immediately */ |
333 | last_seconds = 0; | 329 | last_seconds = 0; |
330 | if (global_settings.talk_menu) | ||
331 | { /* no voice possible here, but a beep */ | ||
332 | mpeg_beep(HZ/2); /* longer beep on start */ | ||
333 | } | ||
334 | } | 334 | } |
335 | else | 335 | else |
336 | { | 336 | { |
337 | if(mpeg_status() & MPEG_STATUS_PAUSE) | 337 | if(mpeg_status() & MPEG_STATUS_PAUSE) |
338 | { | 338 | { |
339 | mpeg_resume_recording(); | ||
339 | if (global_settings.talk_menu) | 340 | if (global_settings.talk_menu) |
340 | { /* no voice possible here, but a beep */ | 341 | { /* no voice possible here, but a beep */ |
341 | mpeg_beep(0,HZ/8); /* short beep on resume */ | 342 | mpeg_beep(HZ/4); /* short beep on resume */ |
342 | } | 343 | } |
343 | mpeg_resume_recording(); | ||
344 | } | 344 | } |
345 | else | 345 | else |
346 | { | 346 | { |
diff --git a/firmware/export/mpeg.h b/firmware/export/mpeg.h index d61789c26e..671f9389f0 100644 --- a/firmware/export/mpeg.h +++ b/firmware/export/mpeg.h | |||
@@ -99,7 +99,7 @@ unsigned int mpeg_error(void); | |||
99 | void mpeg_error_clear(void); | 99 | void mpeg_error_clear(void); |
100 | int mpeg_get_file_pos(void); | 100 | int mpeg_get_file_pos(void); |
101 | unsigned long mpeg_get_last_header(void); | 101 | unsigned long mpeg_get_last_header(void); |
102 | void mpeg_beep(int freq, int duration); | 102 | void mpeg_beep(int duration); |
103 | 103 | ||
104 | /* in order to keep the recording here, I have to expose this */ | 104 | /* in order to keep the recording here, I have to expose this */ |
105 | void rec_tick(void); | 105 | void rec_tick(void); |
diff --git a/firmware/mpeg.c b/firmware/mpeg.c index 26bfbc0dc3..becd3d54cb 100644 --- a/firmware/mpeg.c +++ b/firmware/mpeg.c | |||
@@ -2377,17 +2377,17 @@ void mpeg_set_recording_gain(int left, int right, bool use_mic) | |||
2377 | } | 2377 | } |
2378 | 2378 | ||
2379 | /* try to make some kind of beep, also in recording mode */ | 2379 | /* try to make some kind of beep, also in recording mode */ |
2380 | void mpeg_beep(int freq, int duration) | 2380 | void mpeg_beep(int duration) |
2381 | { | 2381 | { |
2382 | (void)freq; /* not used yet */ | ||
2383 | long starttick = current_tick; | 2382 | long starttick = current_tick; |
2384 | do | 2383 | do |
2385 | { | 2384 | { /* toggle bit 0 of codec register 0, toggling the DAC off & on. |
2386 | mas_codec_writereg(0, 0); /* some little-understood sequence, */ | 2385 | * While this is still audible even without an external signal, |
2387 | mas_codec_writereg(0, 1); /* there may be better ways */ | 2386 | * it doesn't affect the (pre-)recording. */ |
2387 | mas_codec_writereg(0, shadow_codec_reg0 ^ 1); | ||
2388 | mas_codec_writereg(0, shadow_codec_reg0); | ||
2388 | } | 2389 | } |
2389 | while (current_tick - starttick < duration); | 2390 | while (current_tick - starttick < duration); |
2390 | mas_codec_writereg(0, shadow_codec_reg0); /* restore it */ | ||
2391 | } | 2391 | } |
2392 | 2392 | ||
2393 | void mpeg_new_file(const char *filename) | 2393 | void mpeg_new_file(const char *filename) |