Summary:ASTERISK-04613: [new app] app_muxmon
Reporter:Anthony Minessale (anthm)Labels:
Date Opened:2005-07-18 14:01:20Date Closed:2008-01-15 15:51:16.000-0600
Versions:Frequency of
Environment:Attachments:( 0) app_muxmon.c
Description:This application is similar to the Monitor application only it's designed to record 1 audio and mix them natively as the call is in progress to avoid the need to spawn external processes which lead to harmful cpu usage spikes.  

*) One call can record to mutiple files at the same time.
*) An append mode allows an agent to record all thier calls in 1 file
*) A bridge flag allows recording to only take place when the channel is bridged.
*) The volume for either side of the channel may be adjusted seperatly.
*) a cli interface makes it possible to start and stop the monitoring at will from a manager session or the cli prompt.

This modules uses the new slinfactory introduced in bug ASTERISK-4602 thus it is a requirement however, for testing purpouses, a static version of the module with the slinfactory coded embedded is also attached so it would be possible to test the module before the accptance of bug 4724

*CLI> show application MuxMon

 -= Info about application 'MuxMon' =-

Record A Call Natively


Records The audio on the current channel to the specified file.

Valid Options:
b    - Only save audio to the file while the channel is bridged. *does not include conferences*
a    - Append to the file instead of overwriting it.
v(<x>) - Adjust the heard volume by a factor of <x> -4/4.
V(<x>) - Adjust the spoken volume by a factor of <x> -4/4.
W(<x>) - Adjust the overall volume by a factor of <x> -4/4.

<command> will be executed when the recording is over
Any strings matching ^{X} will be unescaped to ${X} and
all variables will be evaluated at that time.
The variable MUXMON_FILENAME will be present as well.


Disclaimer on file
Anthony Minessale http://www.pbxfreeware.org
Comments:By: Clod Patry (junky) 2005-08-11 22:06:20

I deleted app_muxmon_static.c, cause slinfactory has been already commited in head.

By: hex (hex) 2005-08-18 14:00:00

When using MuxMon with HEAD from 2005-08-17 20:48:01 UTC, my system emits these errors occasionally (but scrolling when it does happen) on zap -> zap calls that are being recorded

Aug 18 11:49:05 ERROR[21601]: channel.c:935 ast_queue_spy_frame: Too many frames
queued at once, flushing cache.
Aug 18 11:49:05 ERROR[21601]: channel.c:935 ast_queue_spy_frame: Too many frames
queued at once, flushing cache.

Meanwhile, the asterisk CPU usage goes to 99% and the system almost crashed.  Sorry I have not been able to get more info about this yet but it was tested in a production environment where I had to switch back to Monitor for now.

By: Clod Patry (junky) 2005-08-22 21:37:17

hex: Any feedback here?
can you provide more info with LOG_DEBUG?

By: Clod Patry (junky) 2005-09-08 23:11:18

We still waiting for some feedback from you.

By: Michael L. Young (elguero) 2005-09-14 00:23:33

I can confirm that the same thing happens on my system. When MuxMon is started, the CPU goes to 99%.  The debug output is: WARNING[8633] utils.c: warning too large timestamp 2.4925499

I wasn't sure if you wanted to see the start of the call so I have included the beginning of the call.  The message above starts filling up the log until the call is ended.

By: Michael L. Young (elguero) 2005-09-14 00:26:13

Sorry about the first debug file.  That can be deleted.  Mantis is not letting me delete it.


By: Anthony Minessale (anthm) 2005-09-14 08:05:21

Can you try it without |b and tell me if it still happens?

By: Michael L. Young (elguero) 2005-09-15 22:26:51

Yes, it still happens without the b option.  

In the console, the output is "Sep 15 22:58:28 WARNING[7751]: utils.c:565 tvfix: warning too large timestamp 2.4925499" and the logfile looks the same as the prior one.

I am running CVS-HEAD from 09/02/2005.

By: Clod Patry (junky) 2005-09-16 00:54:02

I've deleted ur first attachment.
the problem about the ts was resolved a long time ago.
which version of utils.c do you run? (show version files utils.c).
Current HEAD has 1.69, so if you could test with current, that will be great.

By: Anthony Minessale (anthm) 2005-09-16 10:31:30

try this new copy

By: Michael Jerris (mikej) 2005-09-25 16:17:54

elguero, any luck with the new version from anthm?

By: Michael Jerris (mikej) 2005-09-25 16:18:47

hex- can you please test this new version.

By: Matt O'Gorman (mogorman) 2005-10-04 12:12:03

elguero and hex

has the problem been resolved with the latest version?  Please respond.


By: Roberto Lopes (rflopes3) 2005-10-09 19:55:39

Any news about this app ? It is really interesting since the soxmix on large scale environments causes SERIOUS problems.

By: Mark Spencer (markster) 2005-10-15 23:05:24

Added to CVS head, thanks!

By: Digium Subversion (svnbot) 2008-01-15 15:51:16.000-0600

Repository: asterisk
Revision: 6795

U   trunk/apps/Makefile
A   trunk/apps/app_mixmonitor.c
A   trunk/apps/app_muxmon.c

r6795 | markster | 2008-01-15 15:51:16 -0600 (Tue, 15 Jan 2008) | 2 lines

Add muxmon application (bug ASTERISK-4613 with mods, thanks tony!)