Packetizer Forums: H.323 Plus (Open Source H.323 Stack)2024-02-26T09:22:48ZPacketizer Forumshttps://forums.packetizer.com/webmaster@packetizer.comhttps://forums.packetizer.com/feeds/?f=46Copyright (C) 2024 Packetizer, Inc. All Rights Reserved.Packetizer ATOM/RSS Feed Generatorhttps://www.packetizer.com/rss/images/packetizer.pnghttps://forums.packetizer.com/images/packetizer_icon.pngwillamowiusPTLib 2.10.9.6 releasedhttps://forums.packetizer.com/viewtopic.php?f=46&t=1766&p=3410#p34102024-02-26T09:22:48Z2024-02-26T09:22:48Z<div>Dear community,<br/>
<br/>
I have just bundeled up the changes and bug fixes of the past 2 years<br/>
and released PTLib 2.10.9.6.<br/>
<br/>
Most notable in this release is working IPv6 on *BSD, macOSX and Solaris<br/>
as well as support for newer compilers and many small platform fixes.<br/>
<br/>
Since PTLib is the foundation for the <a href="https://www.gnugk.org"><s>[url=https://www.gnugk.org]</s>GNU Gatekeeper[/url]</a> and many <a href="https://www.h323plus.org"><s>[url=https://www.h323plus.org]</s>H323Plus[/url]</a> projects, all these improvements get propagated into those projects as well.<br/>
<br/>
- IPv6 support fixed for *BSD, macOSX and Solaris<br/>
- support for newer compiler, eg. gcc 13 and VS2022<br/>
- support for C++-17<br/>
- support for Win64 builds<br/>
- support AIX as platform<br/>
- small OpenBSD fixes<br/>
- other small fixes<br/>
<br/>
Download from <a href="https://www.h323plus.org/source/"><s>[url]</s>https://www.h323plus.org/source/[/url]</a></div>alcor2022Re: Can we notify H323 channel of available source audio?https://forums.packetizer.com/viewtopic.php?f=46&t=1489&p=3010#p30102022-04-05T13:44:06Z2022-04-05T13:44:06Z<div>I have developed a working solution which utilizes a circular buffer to help process the source audio. This way, I can feed audio into the buffer and have it available whenever a Read request comes from the H323 channel. For the Audio Sink direction I was able to route that audio from the H323 channel's write method. So, now I can create custom H323 channels and route the audio through the network and multiple devices.<br/>
<br/>
David</div>alcor2022Can we notify H323 channel of available source audio?https://forums.packetizer.com/viewtopic.php?f=46&t=1489&p=3007#p30072022-03-29T14:15:34Z2022-03-29T14:15:34Z<div>Hello,<br/>
<br/>
I have a custom H323Channel class derived from PIndirectChannel. I was able to play a wav file through this channel as in the sample application. Now I have a situation where audio is being provided from the MIC source from NAUDIO and I need to pipe that audio through my custom H323 channel and to other destinations. The issue I am having is that H323 is polling for audio data (calling the read method every 20ms) and I need to sync that with the data I am getting from this other source. Ideally, when I have audio data I want to send through my H323 channel I could trigger an event within H323 and provide the data. This doesn't seem to be available, or I am not aware of how to do that.<br/>
<br/>
So, my solution is to try and implement an event and build a buffer within my own class that can be used to grab data whenever the READ method is called by H323 (I would read data from my buffer, similar to reading a chunk of bytes from an audio file). I will be working on that solution this week, but was wondering if the event notification method was available. I would like to "push" audio data to the H323 source channel rather than have it poll me for data.<br/>
<br/>
The only other option would be to rewrite part of this application to use H323 as the audio source, but then I would need the H323 channel to notify me when source audio is available (so I can broadcast that data elsewhere). I don't like that option because we are using NAUDIO as the source for both our SIP and H323 endpoints. NAUDIO provides data from the MIC that I can then send to SIPSorcery's endpoint/MediaSession and to wherever else. I have not seen an event in H323 I can subscribe to that would provide me audio data from the source (MIC). Is there a way to have H323 send me audio data coming from the local source device?<br/>
<br/>
David</div>willamowiusRe: Using H323Plus in a class libraryhttps://forums.packetizer.com/viewtopic.php?f=46&t=1481&p=2993#p29932021-12-29T18:16:18Z2021-12-29T18:16:18Z<div>That's great!<br/>
<br/>
You should really put your C# wrapper into a Github repository for others to look at and contribute.</div>alcor2022Re: Using H323Plus in a class libraryhttps://forums.packetizer.com/viewtopic.php?f=46&t=1481&p=2992#p29922021-12-29T17:51:47Z2021-12-29T17:51:47Z<div>Just wanted to update my progress...<br/>
I was able to place a call to my C# application using the H323Plus wrapper that I am building (I called my endpoint using the Ekiga softphone). Next step is to place an outbound call and continue developing the wrapper functionality. I am also generating events that can be consumed by the C# application.<br/>
<br/>
David</div>alcor2022Re: Using H323Plus in a class libraryhttps://forums.packetizer.com/viewtopic.php?f=46&t=1481&p=2991#p29912021-12-28T05:47:18Z2021-12-28T05:47:18Z<div>Hello again!<br/>
<br/>
I believe I have successfully integrated H323 into my wrapper DLL. I am able to create a global Process class, and call the PProcess::Current().getLibVersion() method from one of my reference classes instantiated in my C# application. Next step is to setup an endpoint via the C# app and see if I can get it listening for incoming calls. Then I'll implement a MakeCall method to try and place a call to an Ekiga endpoint.<br/>
<br/>
Basically, in my main wrapper ref class, I placed this:<br/>
<br/>
extern BaseApp _theApp;<br/>
<br/>
Then in the BaseApp class, which includes a class based on PProcess, I created a global instance in the cpp file:<br/>
<br/>
BaseApp _theApp;<br/>
<br/>
My BaseApp class looks like this (in BaseApp.h):<br/>
<br/>
<B><s>[b]</s><COLOR color="#0000FF"><s>[color=#0000FF]</s>class BaseApp<br/>
{<br/>
public:<br/>
BaseApp();<br/>
<br/>
class BaseProcess : public PProcess<br/>
{<br/>
PCLASSINFO(BaseProcess, PProcess);<br/>
<br/>
BaseProcess() :PProcess("H323Plus", "Starfish", MAJOR_VERSION, MINOR_VERSION, PProcess::CodeStatus::ReleaseCode, BUILD_NUMBER, true) { }<br/>
<br/>
~BaseProcess() {}<br/>
<br/>
void Main() {}<br/>
} _baseProcess;<br/>
<br/>
// Any other stuff we want to do with our base app?<br/>
int SomeFunction();<br/>
};[/color]</COLOR>[/b]</B><br/>
<br/>
David</div>alcor2022Using H323Plus in a class libraryhttps://forums.packetizer.com/viewtopic.php?f=46&t=1481&p=2990#p29902021-12-23T00:38:14Z2021-12-23T00:38:14Z<div>Hello,<br/>
<br/>
I am working on a VC++ wrapper for H323Plus (based on compiled H323Plus.lib and ptlibs.lib). There will be a C# executable that references the wrapper DLL to use H323Plus features. Before I go much further I would like to understand the function of the PProcess and PCREATE_PROCESS. There is some internal initialization happening, but this is basically what I have so far:<br/>
<br/>
<B><s>[b]</s> PCREATE_PROCESS(BaseProcess);<br/>
<br/>
/* This is what PCREATE_PROCESS is doing<br/>
int main(int argc, char **argv, char **envp)<br/>
{<br/>
BaseProcess *pinstance = new BaseProcess();<br/>
pinstance->PreInitialise(argc,argv,envp);<br/>
int terminationValue = pinstance->InternalMain();<br/>
delete pinstance;<br/>
<br/>
return terminationValue;<br/>
}<br/>
*/<br/>
<br/>
BaseProcess::BaseProcess()<br/>
: PProcess("H323Plus", "Wrapper", MAJOR_VERSION, MINOR_VERSION, BUILD_TYPE, BUILD_NUMBER, true)<br/>
{<br/>
<br/>
endpointp = NULL;<br/>
}<br/>
<br/>
BaseProcess::~BaseProcess()<br/>
{}<br/>
[/b]</B><br/>
<br/>
Notice the last parameter in the PProcess arguments of "true". From what I gather, this is supposed to indicate that the process is used in a library versus an executable. I've made a comment block which shows what the PCREATE_PROCESS expands to. Basically, I am not sure how to use this PProcess object in a class library. What I would like to do is create the process instance as shown in this block, but create it when I instantiate my H323 wrapper class from the C# module. In examples I have seen, the main routine for the Process is setting up a loop or a terminationSync.Wait(). Is it required to have a process with a continually running thread (the main() routine)? I know that a Process instance is needed, as some methods are looking for Process::Current(). Looking for some guidance on how to implement this in a class library vs. directly in an executable.<br/>
<br/>
David</div>alcor2022Re: Compiling H323Plus in Windows VS2017https://forums.packetizer.com/viewtopic.php?f=46&t=1480&p=2989#p29892021-12-21T13:29:08Z2021-12-21T13:29:08Z<div>I'll go back and check the H323Plus project and try your suggestion. I didn't really recognize "generic" as a keyword either, which is why it took so long to try changing the argument name. It would have been nice if the compiler said something like " 'generic' conflicts with another name". But simply changing the name fixed all of those errors. I'll let you know if I can get it to work by changing the C++ compiler version.<br/>
<br/>
Thanks!<br/>
<br/>
David</div>willamowiusRe: Compiling H323Plus in Windows VS2017https://forums.packetizer.com/viewtopic.php?f=46&t=1480&p=2988#p29882021-12-21T09:31:58Z2021-12-21T09:31:58Z<div>"generic" is not a keyword, not even in C++20, but you might want to switch your compiler back to C++-11 or 14 so it disables some of the new features that might import conflicting names. Check what is set in the H323Plus library project that compiles fine.<br/>
<br/>
Keep in mind H323Plus development started over 20 years ago (as OpenH323 back then).</div>alcor2022Re: Compiling H323Plus in Windows VS2017https://forums.packetizer.com/viewtopic.php?f=46&t=1480&p=2987#p29872021-12-20T13:31:39Z2021-12-20T13:31:39Z<div>Thanks for your quick reply!<br/>
<br/>
I've edited this post a few times, as I make progress in my analysis. My wrapper code is just a few lines to try and prove I can do it, so I haven't bothered to put it up in a Repo. <br/>
<br/>
I did some rearranging of the includes (based on what I could see in the simple sample app, and then I got these errors in h4601.h:<br/>
<br/>
c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2143: syntax error : missing ')' before 'generic'<br/>
1> c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2143: syntax error : missing ';' before 'generic'<br/>
1> c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2059: syntax error : ')'<br/>
1> c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2059: syntax error : ';'<br/>
1> c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2238: unexpected token(s) preceding ';'<br/>
1> c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1073): error C2143: syntax error : missing '>' before ';'<br/>
<br/>
The line in question:<br/>
<B><s>[b]</s>/** Build a FeatureSet from the contents of a generic data field.<br/>
*/<br/>
H460_FeatureSet(const H225_ArrayOf_GenericData & generic);<br/>
[/b]</B><br/>
<br/>
I finally discovered that the issue may be that the compiler is thinking the code in these header files is using reserved keywords where it shouldn't be. For example; I changed the "generic" parameter name in the above function declaration to "genericA". When I did that all of the above errors disappeared and the project compiled successfully., so the modified header file code looks like this:<br/>
<br/>
<B><s>[b]</s> H460_FeatureSet(const H225_ArrayOf_GenericData & genericA);[/b]</B><br/>
<br/>
I suspect this was the same issue in the Thread.h file, but I haven't gone back and looked. Right now it doesn't even show up in the code/list of external references. Don't know if that is good or bad.. just that perhaps it is not needed.<br/>
<br/>
I'll be back, I'm sure, with additional questions about using the libraries and getting my first project working.<br/>
<br/>
David</div>willamowiusRe: Compiling H323Plus in Windows VS2017https://forums.packetizer.com/viewtopic.php?f=46&t=1480&p=2986#p29862021-12-20T09:35:17Z2021-12-20T09:35:17Z<div>Hi David,<br/>
<br/>
since you can build H323Plus and only in your own code you get these compile errors, my guess would be that you might not be including the PTLib headers in the right order or maybe only a few internal ones ?<br/>
<br/>
Can you point us to the repo with your wrapper code to take a look ?<br/>
<br/>
Regards,<br/>
Jan</div>alcor2022Compiling H323Plus in Windows VS2017https://forums.packetizer.com/viewtopic.php?f=46&t=1480&p=2985#p29852021-12-20T04:34:33Z2021-12-20T04:34:33Z<div>Greetings!<br/>
<br/>
I have downloaded and managed to build static ptlibs.lib and h323plus.lib. I used VS2017 to load the VS2010 solutions. I left the Windows SDK version at 8.1 and Platform Toolset to V100. What version of the Windows SDK is compatible? It was difficult to find any instructions for building the projects, but I think I got all the pieces hooked up. Now, the challenge is that I want to create a wrapper DLL in VS2017 C++ so I can use features in C#. So, in my wrapper code I am able to access classes/methods from H323Plus. Everything was looking good until I went to build the wrapper project. I am getting 14 compiler errors in the Thread.h and h4601.h header files:<br/>
<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(342): error C2143: syntax error : missing ',' before '&'<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(349): error C2059: syntax error : ')'<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(349): error C2143: syntax error : missing ')' before ';'<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(351): error C2143: syntax error : missing ',' before '&'<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(353): error C2535: 'PThread *PThread::Create(const int)' : member function already defined or declared<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(353): error C2065: 'notifier' : undeclared identifier<br/>
1>C:\H323Work\ptlib\include\ptlib/thread.h(353): error C2065: 'threadName' : undeclared identifier<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2143: syntax error : missing ')' before 'generic'<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2143: syntax error : missing ';' before 'generic'<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2059: syntax error : ')'<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2059: syntax error : ';'<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1069): error C2238: unexpected token(s) preceding ';'<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1073): error C2143: syntax error : missing '>' before ';'<br/>
1>c:\h323work\h323plus-1_27_2\include\h460/h4601.h(1073): fatal error C1903: unable to recover from previous error(s); stopping compilation<br/>
1> 0 Warning(s)<br/>
1> 14 Error(s)<br/>
<br/>
I have NO IDEA what is causing these errors. The first error in the list is referring to this statement in Thread.h:<br/>
<br/>
static PThread * Create(<br/>
const PNotifier & notifier, ///< Function to execute in thread.<br/>
INT parameter = 0, ///< Parameter value to pass to notifier.<br/>
AutoDeleteFlag deletion = AutoDeleteThread,<br/>
///< Automatically delete PThread instance on termination of thread.<br/>
Priority priorityLevel = NormalPriority, ///< Initial priority of thread.<br/>
const PString & threadName = PString::Empty(), ///< The name of the thread (for Debug/Trace)<br/>
PINDEX stackSize = 65536 ///< Stack size on some platforms<br/>
);<br/>
<br/>
It was really frustrating to make it so far in the process only to be stopped by these errors in header files included in the source download.<br/>
<br/>
I would like to find a step-by-step set of instructions for how to compile the current source code provided on H323plus.org using Visual Studio 2017. There is nothing available anywhere (the frequently mentioned <a href="http://www.voxgratia.org/documents.html">http://www.voxgratia.org/documents.html</a> no longer exists). Has anybody been able to download the current source and build the PTLib and H323Plus projects on Windows with VS2017/2010? Note that TECHNICALLY I have built the projects, but I am not 100% sure they were built correctly.<br/>
<br/>
My end goal is to create a C# application that can create a basic H323 endpoint to talk to another H323 device.<br/>
<br/>
Any help would be greatly appreciated.<br/>
<br/>
David</div>willamowiusH323Plus release 1.27.2https://forums.packetizer.com/viewtopic.php?f=46&t=1454&p=2916#p29162021-02-06T09:55:12Z2021-02-06T09:55:12Z<div>I'm happy to announce the release of H323Plus version 1.27.2.<br/>
<br/>
- support for Alpine Linux for smaller container images (together with PTLib 2.10.19.4)<br/>
- crash fixed on invalid RTCP packets<br/>
- memory leaks fixed<br/>
- GetCrytoMasterKey() restored that got lost in 1.27.1<br/>
- better support for cross-compiling<br/>
- various updates for newer compilers<br/>
- some smaller bugfixes<br/>
<br/>
Download from <a href="https://www.h323plus.org/source/">https://www.h323plus.org/source/</a></div>alucardRe: Failed in running and dubugging simpleplus.exehttps://forums.packetizer.com/viewtopic.php?f=46&t=1411&p=2832#p28322019-12-15T13:15:56Z2019-12-15T13:15:56Z<div>Well, seems PTLib 2.10.9.2 works well.<br/>
Thanks again!</div>willamowiusRe: Failed in running and dubugging simpleplus.exehttps://forums.packetizer.com/viewtopic.php?f=46&t=1411&p=2831#p28312019-12-10T18:24:10Z2019-12-10T18:24:10Z<div>PTLib 2.16.x is not supported. I'm surprised it even compiled.<br/>
<br/>
Please use PTLib 2.10.9.2 as offered on the download page: <a href="https://www.h323plus.org/source/"><s>[url]</s>https://www.h323plus.org/source/[/url]</a></div>alucardFailed in running and dubugging simpleplus.exehttps://forums.packetizer.com/viewtopic.php?f=46&t=1411&p=2829#p28292019-12-10T10:18:01Z2019-12-10T10:18:01Z<div>Hi.<br/>
I downloaded H.323 Plus Core (ver 1.27.0) and ptlib (ver 2.16.2) ,and successfully compiled "PTLib Static","h323plus",and "simpleplus" using vs2012 and Win10x64.<br/>
But when running simpleplus.exe, the cmd window immediately closed. And when debugging simpleplus.exe, errors occured:<br/>
"Unhandled exception at 0x77BD3BD3 (ntdll.dll) in simpleplus.exe: 0xC0000005: Access violation writing location 0x00000014."<br/>
<br/>
and the program stoped at this position:<br/>
(mlock.c)<br/>
void __cdecl _unlock (<br/>
int locknum<br/>
)<br/>
{<br/>
/*<br/>
* leave the critical section.<br/>
*/<br/>
LeaveCriticalSection( _locktable[locknum].lock );<br/>
}<br/>
<br/>
the stack infomation is as follow:<br/>
> ntdll.dll!77bd3bd3() <br/>
msvcr110d.dll!_unlock(int locknum) line 366 C<br/>
msvcr110d.dll!_free_dbg(void * pUserData, int nBlockUse) line 1270 C++<br/>
msvcr110d.dll!_free_dbg(void * pUserData, int nBlockUse) line 1267 C++<br/>
<br/>
I also tryed in Win7x64 and vs2012, the same error occured.<br/>
Why? Please help me.Thank you very much!</div>willamowiusRe: How to remove terminal capability set in setup message?https://forums.packetizer.com/viewtopic.php?f=46&t=1296&p=2696#p26962019-03-01T18:53:35Z2019-03-01T18:53:35Z<div>Note that the documentation for the method has a copy and paste bug.<br/>
<br/>
I just fixed that in Github.</div>willamowiusRe: How to remove terminal capability set in setup message?https://forums.packetizer.com/viewtopic.php?f=46&t=1296&p=2695#p26952019-03-01T18:50:11Z2019-03-01T18:50:11Z<div>I think what you want to do is to disable H.245 in your Setup.<br/>
<br/>
Just call<br/>
<CODE><s>[code]</s>DisableH245inSetup(true);
[/code]</CODE>
In your endpoint class.<br/>
<br/>
See <a href="https://www.h323plus.org/api/classH323EndPoint.html#a6687c65982ba342fd2cf2eb869ee8310"><s>[url]</s>https://www.h323plus.org/api/classH323EndPoint.html#a6687c65982ba342fd2cf2eb869ee8310[/url]</a></div>alanjinHow to remove terminal capability set in setup message?https://forums.packetizer.com/viewtopic.php?f=46&t=1296&p=2694#p26942019-02-27T16:44:54Z2019-02-27T16:44:54Z<div>Hi:<br/>
I am trying to integrate H.323 Plus into my project, for some particular reason I need to have a simple setup message without TCS, just waiting for remote peer's response with TCS in connect message to decide which media capabilities should be used.<br/>
But what I found is that no matter if I enable/disable "faststart" flag, I still can see TCS and MSD in setup message, the only difference is that when using "faststart", "OpenLogicalChannel" can be seen in setup message.<br/>
I'm wondering if it is because H323Plus was optimized using "Parallel H.245" by default? If so, how can I disable this "Parallel" feature?<br/>
<a href="http://toncar.cz/Tutorials/VoIP/VoIP_Protocols_H323_Call_Signalling_Optimizations.html">http://toncar.cz/Tutorials/VoIP/VoIP_Protocols_H323_Call_Signalling_Optimizations.html</a><br/>
<br/>
Thanks!</div>willamowiusRe: ptlib cross compile for ioshttps://forums.packetizer.com/viewtopic.php?f=46&t=1261&p=2642#p26422018-10-13T19:28:13Z2018-10-13T19:28:13Z<div>You need to add the iOS support.</div>echofromheavenRe: ptlib cross compile for ioshttps://forums.packetizer.com/viewtopic.php?f=46&t=1261&p=2641#p26412018-10-11T01:36:40Z2018-10-11T01:36:40Z<div>Unfortunately, I got the same result...The final static library is also 'x86_64'.<br/>
If I set CFLAGS to specify '-arch armv7 -isysroot ${IPHONE_SDK}' and comment a lot of codes, I got the 'armv7' library.But it lost many functionalities(including audio devices operating) I need...Does PTLib support iOS?Or I need implement those fucntionalities by myself?<br/>
Thanks in advance!</div>echofromheavenRe: ptlib cross compile for ioshttps://forums.packetizer.com/viewtopic.php?f=46&t=1261&p=2640#p26402018-10-10T01:31:08Z2018-10-10T01:31:08Z<div>Thanks, willamowius! I will try that version for iOS. :)</div>willamowiusRe: ptlib cross compile for ioshttps://forums.packetizer.com/viewtopic.php?f=46&t=1261&p=2639#p26392018-10-09T12:14:51Z2018-10-09T12:14:51Z<div>First, you shouldn't use the latest version of PTLib on any OS for H323Plus. Also, I'm not sure if anyone has compiled PTLib on iOS before.<br/>
<br/>
The suggested PTLib version for H323Plus is the 2.10.9 fork that I maintain on Github: <a href="https://github.com/willamowius/ptlib"><s>[url]</s>https://github.com/willamowius/ptlib[/url]</a><br/>
<br/>
Unfortunately that branch has buggy IPv6 support on BSD variants, including MacOS X. On MacOS X you should use PTLib 2.11.0 as of 2012-02-20 (no, not the final 2.11.0, that has changes in the API and breaks with H323Plus). I know 2.11.0 compiles fine on MacOS X if you use gcc (haven't tried cross-compiling).<br/>
<br/>
I would use either of those versions as a starting point for compiling for iOS.</div>echofromheavenptlib cross compile for ioshttps://forums.packetizer.com/viewtopic.php?f=46&t=1261&p=2638#p26382018-10-09T09:17:34Z2018-10-09T09:17:34Z<div>How should I compile the latest version ptlib for iOS?<br/>
I do these steps and get a 'x86-64' architecture static library:<br/>
./configure --prefix=/Users/huhai/Desktop/tempout/20181009/ --disable-FEATURE --host=armv7-apple-darwin<br/>
make optnoshared<br/>
When I use 'lipo' to check the finally created library 'lib_Darwin_armv7/libpt_s.a', it shows that 'lib_Darwin_armv7/libpt_s.a is architecture: x86_64'<br/>
:cry: :cry:</div>erasmoforRe: How to enable Early Media?https://forums.packetizer.com/viewtopic.php?f=46&t=745&p=2110#p21102017-11-23T15:57:41Z2017-11-23T15:57:41Z<div><QUOTE author="willamowius" post_id="1979" time="1484561836" user_id="90"><s>[quote=willamowius post_id=1979 time=1484561836 user_id=90]</s>
I think what you are loking for is<br/>
<br/>
DisableH245inSetup(false);<br/>
DisableFastStart(false);<br/>
<br/>
Take a look at SimpleH323EndPoint::Initialise() in the sample application.<br/>
<br/>
Regards,<br/>
Jan
</blockquote>
Works like a charm. Thanks for the info, Jan.</div>paulejRe: Size constraints for H225_ArrayOf_EnumeratedParameterhttps://forums.packetizer.com/viewtopic.php?f=46&t=774&p=2095#p20952017-10-31T14:11:03Z2017-10-31T14:11:03Z<div>For those who might come by looking for a follow-up, the discussion on this one is taking place on the mailing list here:<br/>
<a href="https://lists.packetizer.com/pipermail/h323plus/2017-October/005189.html">https://lists.packetizer.com/pipermail/h323plus/2017-October/005189.html</a></div>d.kochmashevSize constraints for H225_ArrayOf_EnumeratedParameterhttps://forums.packetizer.com/viewtopic.php?f=46&t=774&p=2079#p20792017-10-23T07:03:56Z2017-10-23T07:03:56Z<div>Hello!<br/>
<br/>
I have encountered something which looks like a bug. When I add parameters to my custom H460_Feature via <br/>
H460_FeatureTable table;<br/>
…<br/>
table.AddParameter(id, content);<br/>
…<br/>
SetCurrentTable(table);<br/>
<br/>
H323Plus produces malformed packet with incorrectly encoded size of H225_ArrayOf_EnumeratedParameter. I’ve found that size constraints for H225_ArrayOf_EnumeratedParameter are not beeing set, however, according to spec, they had to be set. So, if my conclusion is right, I propose a small patch like the following:<br/>
<br/>
--- h225_2.cxx.orig 2013-07-23 00:26:59.000000000 +0600<br/>
+++ h225_2.cxx 2017-10-23 11:00:27.000000000 +0500<br/>
@@ -19,6 +19,7 @@<br/>
H225_ArrayOf_EnumeratedParameter::H225_ArrayOf_EnumeratedParameter(unsigned tag, PASN_Object::TagClass tagClass)<br/>
: PASN_Array(tag, tagClass)<br/>
{<br/>
+ SetConstraintBounds(PASN_Object::FixedConstraint, 1, 512);<br/>
}</div>annemesskiRe: How to enable Early Media?https://forums.packetizer.com/viewtopic.php?f=46&t=745&p=1981#p19812017-01-17T13:58:42Z2017-01-17T13:58:42Z<div>Now I'm detect more with PTrace (-t option for "Simple").<br/>
<br/>
I working with two types of intercom devisces: MS Windows based and some *nix based. Windows based intercom do not sending ALERTING signal and 'Simple' is opening recieving logical channel, further it's opening sending logical channel and only after that reporting: "in call with %remotepartyName%" and it's work correct ('Simple' is not call OnAlert() method). But *nix based intercom is sending ALERTING and 'Simple' is opening sending logical channel first and further reporting: "in call with %remotepartyName%" and only after that opening recieving logical channel and I take one-way communication.</div>annemesskiRe: How to enable Early Media?https://forums.packetizer.com/viewtopic.php?f=46&t=745&p=1980#p19802017-01-16T11:46:42Z2017-01-16T11:46:42Z<div>That is was, but I'm found this immediately, if I'm give DisableH245inSetup(true) the 'Simple' is not reporting about started receiving logical channel. Disabling or enabling FastStart procedure is not changing anything, but in 'Abto' FastStart is enabled (have a OpenLogicalChannel field in SETUP message) and I'm enabling it's too.<br/>
<br/>
I'm not sure about Early Media, but I'll tryed modify almost parameters in H323Endpoint and sty here still.<br/>
<br/>
I think what something is missing in SETUP message for the logical channel opening correctly.</div>willamowiusRe: How to enable Early Media?https://forums.packetizer.com/viewtopic.php?f=46&t=745&p=1979#p19792017-01-16T10:17:16Z2017-01-16T10:17:16Z<div>I think what you are loking for is<br/>
<br/>
DisableH245inSetup(false);<br/>
DisableFastStart(false);<br/>
<br/>
Take a look at SimpleH323EndPoint::Initialise() in the sample application.<br/>
<br/>
Regards,<br/>
Jan</div>