<div dir="ltr">Thanks jonathan ,<div><br><div>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 <br>





<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(24,24,24)"><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">1)AST_LIST_TRAVERSE_SAFE_BEGIN</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">(&</span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">audiohook_list</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">-></span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">spy_list</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">, </span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">audiohook</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">, </span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">list</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">) {</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(24,24,24)"><span class="gmail-s3" style="font-kerning:none;color:rgb(10,22,51);background-color:rgb(255,255,254)"><b>2) if</b></span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)"> (!</span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">AST_LIST_EMPTY</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">(&</span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">audiohook_list</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">-></span><span class="gmail-s1" style="font-kerning:none;background-color:rgb(255,255,254)">whisper_list</span><span class="gmail-s2" style="font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">)) {</span></p>
<p class="gmail-p2" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(24,24,24);background-color:rgb(255,255,254)"><span class="gmail-s4" style="font-kerning:none;color:rgb(10,22,51)"><b>3) if</b></span><span class="gmail-s5" style="font-kerning:none;color:rgb(0,0,0)"> (!</span><span class="gmail-s6" style="font-kerning:none">AST_LIST_EMPTY</span><span class="gmail-s5" style="font-kerning:none;color:rgb(0,0,0)">(&</span><span class="gmail-s6" style="font-kerning:none">audiohook_list</span><span class="gmail-s5" style="font-kerning:none;color:rgb(0,0,0)">-></span><span class="gmail-s6" style="font-kerning:none">manipulate_list</span><span class="gmail-s5" style="font-kerning:none;color:rgb(0,0,0)">)) {</span></p></div><div><br></div><div>Are you saying moving this around as below will help  or what is the recommended move to try ?<br>1) <span class="gmail-s4" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(10,22,51)"><b>if</b></span><span class="gmail-s5" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0)"> (!</span><span class="gmail-s6" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none">AST_LIST_EMPTY</span><span class="gmail-s5" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0)">(&</span><span class="gmail-s6" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none">audiohook_list</span><span class="gmail-s5" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0)">-></span><span class="gmail-s6" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none">manipulate_list</span><span class="gmail-s5" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0)">)) {</span></div><div><span class="gmail-s5" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0)">2)</span><span class="gmail-s3" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(10,22,51);background-color:rgb(255,255,254)"><b>if</b></span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)"> (!</span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">AST_LIST_EMPTY</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">(&</span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">audiohook_list</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">-></span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">whisper_list</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">)) {</span></div><div><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">3)</span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">AST_LIST_TRAVERSE_SAFE_BEGIN</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">(&</span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">audiohook_list</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">-></span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">spy_list</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">, </span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">audiohook</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">, </span><span class="gmail-s1" style="font-size:13px;color:rgb(24,24,24);font-family:Menlo;font-kerning:none;background-color:rgb(255,255,254)">list</span><span class="gmail-s2" style="font-size:13px;font-family:Menlo;font-kerning:none;color:rgb(0,0,0);background-color:rgb(255,255,254)">) {</span><span style="background-color:rgb(255,255,254);color:rgb(0,0,0);font-family:Menlo;font-size:13px"> </span></div><div><span style="background-color:rgb(255,255,254);color:rgb(0,0,0);font-family:Menlo;font-size:13px"><br></span></div><div><span style="background-color:rgb(255,255,254);color:rgb(0,0,0);font-family:Menlo;font-size:13px">Also you have mentioned </span>unexpected consequences from moving these around , any idea what it would be? , will it mess the recording ?</div><div>affect the call quality ? If you know the specific then it will help to see will it be worth trying .</div><div><br></div><div>Also is there an existing patch available for the changes you mentioned? </div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 12, 2022 at 12:36 PM Jonathan Rose <<a href="mailto:jonathan.rose@motorolasolutions.com">jonathan.rose@motorolasolutions.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Wed, Jan 12, 2022 at 10:41 AM bala murugan <<a href="mailto:fightwithme@gmail.com" target="_blank">fightwithme@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi , <div><br></div><div>   I am trying to use the MIXMONITOR Option <code style="color:rgb(51,51,51);font-size:14px">B</code><code style="color:rgb(51,51,51);font-size:14px">( interval )</code><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px"> - Play a periodic beep while this call is being recorded .</span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px"><br></span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">   I can see the Beep tone is played , but the same Beep is not present in the RECORDING . </span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px"><br></span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">   Any ideas ? Any Suggestions? </span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px"><br></span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">   Is this a known issue?</span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px"><br></span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">Thanks,</span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">Bala</span></div></div></blockquote></div><div><br></div><div>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.</div><div><br></div><div>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.</div><div><br></div><div>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.</div><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div><b>Jonathan R. Rose<br></b><span><span>Senior Systems Engineer<br></span></span>Emergency Call Handling<span><span><br></span></span></div></div>Motorola Solutions<br><br></div><div>email: <a href="mailto:jonathan.rose@motorolasolutions.com" target="_blank">jonathan.rose@motorolasolutions.com</a><br></div></div></div></div></div>

<br>
<p dir="ltr" style="line-height:1.8;margin-top:0pt;margin-bottom:0pt"><font size="2"><i><span style="background-color:rgb(255,255,255);font-family:Arial;white-space:pre-wrap">For more information on how and why we collect your personal information, please visit our </span><span style="white-space:pre-wrap;color:rgb(38,50,56);font-family:Roboto,sans-serif"><a href="https://www.motorolasolutions.com/en_us/about/privacy-policy.html?elqTrackId=8980d888905940e39a2613a7a3dcb0a7&elqaid=2786&elqat=2#privacystatement" target="_blank">Privacy Policy</a>.</span></i></font></p>-- <br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" rel="noreferrer" target="_blank">http://www.api-digital.com</a> --<br>
<br>
asterisk-dev mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-dev" rel="noreferrer" target="_blank">http://lists.digium.com/mailman/listinfo/asterisk-dev</a></blockquote></div>