summaryrefslogtreecommitdiff
path: root/apps/recorder/recording.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/recorder/recording.c')
-rw-r--r--apps/recorder/recording.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/apps/recorder/recording.c b/apps/recorder/recording.c
index 6a2b9257d4..715a06d823 100644
--- a/apps/recorder/recording.c
+++ b/apps/recorder/recording.c
@@ -25,6 +25,7 @@
25 25
26#include "system.h" 26#include "system.h"
27#include "power.h" 27#include "power.h"
28#include "powermgmt.h"
28#include "lcd.h" 29#include "lcd.h"
29#include "led.h" 30#include "led.h"
30#include "mpeg.h" 31#include "mpeg.h"
@@ -717,6 +718,12 @@ void rec_command(enum recording_command cmd)
717{ 718{
718 switch(cmd) 719 switch(cmd)
719 { 720 {
721 case RECORDING_CMD_STOP_SHUTDOWN:
722 pm_activate_clipcount(false);
723 audio_stop_recording();
724 audio_close_recording();
725 sys_poweroff();
726 break;
720 case RECORDING_CMD_STOP: 727 case RECORDING_CMD_STOP:
721 pm_activate_clipcount(false); 728 pm_activate_clipcount(false);
722 audio_stop_recording(); 729 audio_stop_recording();
@@ -808,6 +815,10 @@ static void trigger_listener(int trigger_status)
808 /* tell recording_screen to reset the time */ 815 /* tell recording_screen to reset the time */
809 last_seconds = 0; 816 last_seconds = 0;
810 break; 817 break;
818
819 case 3: /* Stop and shutdown */
820 rec_command(RECORDING_CMD_STOP_SHUTDOWN);
821 break;
811 } 822 }
812 823
813 if (global_settings.rec_trigger_mode != TRIG_MODE_REARM) 824 if (global_settings.rec_trigger_mode != TRIG_MODE_REARM)
@@ -1571,7 +1582,10 @@ bool recording_screen(bool no_source)
1571 { 1582 {
1572 peak_meter_trigger(false); 1583 peak_meter_trigger(false);
1573 peak_meter_set_trigger_listener(NULL); 1584 peak_meter_set_trigger_listener(NULL);
1574 rec_command(RECORDING_CMD_STOP); 1585 if( global_settings.rec_split_type == 1)
1586 rec_command(RECORDING_CMD_STOP);
1587 else
1588 rec_command(RECORDING_CMD_STOP_SHUTDOWN);
1575 } 1589 }
1576 update_countdown = 1; 1590 update_countdown = 1;
1577 } 1591 }