Some time ago in the audio and video version of iOS, so the title changed to Android IOS WebRTC audio and Video development summary, the following summarizes some of the experience in the development process:
1. iOS WEBRTC audio and video compilation and download: have android WebRTC compile download experience and then go to get IOS, you will find a lot easier, and then there are problems, you can refer to:http://www.cnblogs.com/ Probestar/p/3411510.html Remember there are two versions of Mac and iOS, to specify which version you want.
2. Correctly distinguish ARMv7 armv7s i386 platform: When compiling, it is very easy to meet the armv7. A files and other errors, do not understand the people will confused, in fact, this is because each target compile time can be generated by different platforms, ARMV7, Armv7s is for mobile phone, I386 is for Mac and simulator, understand this you can easily solve this kind of problem.
3. The correct distinction between. m and. mm Files: There was a compilation of a strange problem, the hint can not find the String.h file, tossing for a long time did not fix, and very curious that this file is not the system comes with it? later found to be their own. m file inside called C + + code caused, The solution is to change the. m file to a. mm file.
4. Debug WEBRTC Code: Android can only pass through the log, but iOS is very convenient, object C C + + calls each other (this kind of let me like Xcode at a glance), and compile into the debug version, directly into the. a file debugging, The same thing on Windows.
5. The principle is the same: Although WebRTC has a version for Windows,mac,android,ios, but they are the same principle, the main manifestation is not the same, so if you understand a set to get another set of more easy, People who have known about design patterns will find that there are a lot of template patterns and factory patterns, such as data sending, that are used for this same platform, Udp_socket_xxx.h
6. The image does not show or one side has an image the other party does not have an image: The problem is a lot of reasons, first you have to catch the packet to see if the ARTP,ARTCP,VRTP,VRTCP port data is normal, followed by debugging or set breakpoints to see whether the packet has been discarded or has not been correctly decoded, The first two days have just solved a problem because keyframe (WebRTC has keyframe,deltaframe, respectively, that is the full image or the differential image) does not send the data without normal delivery.
7. What is the difference between RTP and RTCP: The former is mainly responsible for transmitting audio and video packets, the latter is mainly responsible for controlling signaling related packets, such as the return of the messenger order.
8. Ask a targeted question: Find a lot of beginners in some groups ask the question is either very broad, or others have answered N times, at the same time hope that the great God out to help him directly solve, and even want others to help you debug code, too unrealistic, but you are willing to pay another service to buy a different, According to my observation, the real Daniel is not very talkative, basically diving.
Finally: More experience has been added, you have better ideas and suggestions welcome reply!