summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJörg Hohensohn <hohensoh@rockbox.org>2004-12-24 08:42:45 +0000
committerJörg Hohensohn <hohensoh@rockbox.org>2004-12-24 08:42:45 +0000
commitdfa95c334b9cffff28059e0de39ae5305e315ee6 (patch)
tree486ed4df9a36170768e68eef2546ab072bb57c7f
parent35c69283d4728c9f94d7a5c47026036bec3e17c4 (diff)
downloadrockbox-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.c12
-rw-r--r--firmware/export/mpeg.h2
-rw-r--r--firmware/mpeg.c12
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);
99void mpeg_error_clear(void); 99void mpeg_error_clear(void);
100int mpeg_get_file_pos(void); 100int mpeg_get_file_pos(void);
101unsigned long mpeg_get_last_header(void); 101unsigned long mpeg_get_last_header(void);
102void mpeg_beep(int freq, int duration); 102void 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 */
105void rec_tick(void); 105void 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 */
2380void mpeg_beep(int freq, int duration) 2380void 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
2393void mpeg_new_file(const char *filename) 2393void mpeg_new_file(const char *filename)