git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13070 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
696bf57c1f
commit
dc1a0acdaa
|
@ -217,7 +217,7 @@ int vgo(int i, switch_core_session_t *session)
|
|||
int hangover = 40, hangunder = 15;
|
||||
int talking = 0;
|
||||
int energy_level = 500;
|
||||
|
||||
int done = 0;
|
||||
switch_core_session_get_read_impl(session, &read_impl);
|
||||
|
||||
printf("%s", SWITCH_SEQ_CLEARSCR);
|
||||
|
@ -245,15 +245,18 @@ int vgo(int i, switch_core_session_t *session)
|
|||
|
||||
for (x = COLS - 1; ; --x) {
|
||||
|
||||
if (!switch_channel_ready(channel)) {
|
||||
break;
|
||||
if (!done && !switch_channel_ready(channel)) {
|
||||
done = 1;
|
||||
}
|
||||
|
||||
status = switch_core_session_read_frame(session, &read_frame, SWITCH_IO_FLAG_NONE, 0);
|
||||
if (!SWITCH_READ_ACCEPTABLE(status)) {
|
||||
break;
|
||||
|
||||
if (!done) {
|
||||
status = switch_core_session_read_frame(session, &read_frame, SWITCH_IO_FLAG_NONE, 0);
|
||||
if (!SWITCH_READ_ACCEPTABLE(status)) {
|
||||
done = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!done)
|
||||
{
|
||||
int16_t *fdata = (int16_t *) read_frame->data;
|
||||
uint32_t samples = read_frame->datalen / sizeof(*fdata);
|
||||
|
@ -261,6 +264,7 @@ int vgo(int i, switch_core_session_t *session)
|
|||
double energy = 0;
|
||||
int divisor = 0;
|
||||
|
||||
|
||||
for (count = 0; count < samples; count++) {
|
||||
energy += abs(fdata[j]);
|
||||
j += read_impl.number_of_channels;
|
||||
|
@ -296,11 +300,13 @@ int vgo(int i, switch_core_session_t *session)
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!talking) {
|
||||
x++;
|
||||
continue;
|
||||
if (!talking) {
|
||||
x++;
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
usleep(20000);
|
||||
}
|
||||
|
||||
if (LOGO == 0) {
|
||||
|
@ -310,8 +316,6 @@ int vgo(int i, switch_core_session_t *session)
|
|||
}
|
||||
refresh();
|
||||
|
||||
|
||||
|
||||
/*
|
||||
if (x == COLS / 4) {
|
||||
sleep(2);
|
||||
|
|
Loading…
Reference in New Issue