[asterisk-dev] MIXMONITOR - periodic beep is not present in RECORDING

bala murugan fightwithme at gmail.com
Wed Jan 12 12:00:31 CST 2022

Thanks jonathan ,

I am ok in modifying the source and trying . I looked at the source
audiohook.c:audio_audiohook_write_list() and i did see the below order

1)AST_LIST_TRAVERSE_SAFE_BEGIN(&audiohook_list->spy_list, audiohook, list) {

*2) if* (!AST_LIST_EMPTY(&audiohook_list->whisper_list)) {

*3) if* (!AST_LIST_EMPTY(&audiohook_list->manipulate_list)) {

Are you saying moving this around as below will help  or what is the
recommended move to try ?
1) *if* (!AST_LIST_EMPTY(&audiohook_list->manipulate_list)) {
2)*if* (!AST_LIST_EMPTY(&audiohook_list->whisper_list)) {
3)AST_LIST_TRAVERSE_SAFE_BEGIN(&audiohook_list->spy_list, audiohook, list) {

Also you have mentioned unexpected consequences from moving these around ,
any idea what it would be? , will it mess the recording ?
affect the call quality ? If you know the specific then it will help to see
will it be worth trying .

Also is there an existing patch available for the changes you mentioned?

On Wed, Jan 12, 2022 at 12:36 PM Jonathan Rose <
jonathan.rose at motorolasolutions.com> wrote:

> On Wed, Jan 12, 2022 at 10:41 AM bala murugan <fightwithme at gmail.com>
> wrote:
>> Hi ,
>>    I am trying to use the MIXMONITOR Option B( interval ) - Play a
>> periodic beep while this call is being recorded .
>>    I can see the Beep tone is played , but the same Beep is not present
>> in the RECORDING .
>>    Any ideas ? Any Suggestions?
>>    Is this a known issue?
>> Thanks,
>> Bala
> The reason these don't get recorded is because they are both on
> audiobooks and the audiohook processing order is dictated by the type of
> hook. MixMonitor itself is a SPY hook. These hooks get processed first. The
> beeps are created by a MANIPULATE hook. These hooks get processed last.
> Since MixMonitor is processed first, it's going to record the audio before
> any manipulation is done. This means you won't capture the effects of any
> audiohook manipulation.
> You can reverse the order of processing by patching audiohook.c. See the
> audiohook.c:audio_audiohook_write_list() -- you can change the processing
> order fairly trivially just by moving the AST_LIST_TRAVERSE_SAFE_BEGIN/END
> blocks concerning the spy_list, whisper_list, and manipulate_list. I've got
> to warn you though, there may be some unexpected consequences from moving
> these around.
> If what you want is a solution that doesn't involve modifying the source
> though, you are probably going to have to do something annoying like have a
> channel in your bridge to create the beeps that you add and remove based on
> whether or not MixMonitor is running. Real messy stuff.
> --
> *Jonathan R. Rose*Senior Systems Engineer
> Emergency Call Handling
> Motorola Solutions
> email: jonathan.rose at motorolasolutions.com
> *For more information on how and why we collect your personal information,
> please visit our Privacy Policy
> <https://www.motorolasolutions.com/en_us/about/privacy-policy.html?elqTrackId=8980d888905940e39a2613a7a3dcb0a7&elqaid=2786&elqat=2#privacystatement>.*
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20220112/48bb43fc/attachment.html>

More information about the asterisk-dev mailing list