MTK高手帮忙看一看。这段代码有没有问题?
我跑过这段代码。录音的时候,时间跑不起来。只停留在哪个数上。
高手帮忙指点一下。
void mmi_sndrec_get_record_time_string(UI_string_type string)
{
/*----------------------------*/
/* Local Variables */
/*----------------------------*/
U8 format, quality;
U32 recordtime, remindtime;
U64 real_remindtime;
S32 rate;
mmi_sndrec_time_struct time1, time2;
/*----------------------------*/
/* Code Body */
/*----------------------------*/
if (MMI_SNDREC_REC_STATE == g_sndrec_cntx.record.state || MMI_SNDREC_REC_PAUSE_STATE == g_sndrec_cntx.record.state)
{
recordtime = Media_GetRecordedTime();
}
else
{
recordtime = 0;
}
MMI_SNDREC_MSG_TRACE(g_sndrec_cntx.record.rectime);
recordtime += g_sndrec_cntx.record.rectime;
g_total_time=recordtime;
if (!g_sndrec_cntx.record.is_timer_on)
{
MMI_SNDREC_MSG_TRACE(recordtime);
mmi_sndrec_get_drive_size();
g_sndrec_cntx.record.is_timer_on = MMI_TRUE;
gui_start_timer(5000, mmi_sndrec_get_drive_size);
}
if (g_sndrec_cntx.record.state == MMI_SNDREC_REC_STATE ||
g_sndrec_cntx.record.state == MMI_SNDREC_REC_PAUSE_STATE || g_sndrec_cntx.record.isbreak)
{
format = g_sndrec_cntx.record.format;
quality = g_sndrec_cntx.record.quality;
}
else
{
mmi_sndrec_get_valid_format(&format, &quality);
}
rate = mmi_sndrec_get_record_rate(format, quality);
real_remindtime = (U64) (g_sndrec_cntx.record.remindsize / rate);
MMI_SNDREC_MSG_TRACE(real_remindtime);
//check if more than 10000 hours left
remindtime = (real_remindtime >= MMI_SNDREC_HOURS_DISPLAY_LIMIT) ? MMI_SNDREC_HOURS_DISPLAY_LIMIT - 1 : (U32)real_remindtime;
mmi_sndrec_transte_time(recordtime / 1000, &time1);
mmi_sndrec_transte_time(remindtime, &time2);
kal_prompt_trace(
MOD_MMI,
"[SNDREC] (mmi_sndrec_get_record_time_string) Time2: %d:%d:%d",
time2.hour,
time2.minute,
time2.second);
#ifdef __MMI_SNDREC_IPHONE__
kal_wsprintf(
string,
"%02d:%02d:%02d",
time1.hour,
time1.minute,
time1.second);
if(MMI_SNDREC_REC_STATE == g_sndrec_cntx.record.state || MMI_SNDREC_REC_PAUSE_STATE == g_sndrec_cntx.record.state)
{
g_sndrec_cntx.record.rectime=recordtime-4400;
}
#else /*__MMI_SNDREC_IPHONE__*/
kal_wsprintf(
string,
"%02d:%02d:%02d / %02d:%02d:%02d",
time1.hour,
time1.minute,
time1.second,
time2.hour,
time2.minute,
time2.second);
#endif /*__MMI_SNDREC_IPHONE__*/
}
[解决办法]
怎么只有gui_start_timer(5000, mmi_sndrec_get_drive_size)一个timer呢?
[解决办法]
我有全套的MTK 6225源代码包,联系QQ 935803109