แž‘แžผแžšแžŸแŸแž–แŸ’แž‘ SIP แž“แŸ…แž›แžพ STM32F7-Discovery

แžŸแžฝแžŸแŸ’แžแžธแžขแŸ’แž“แž€แžšแžถแž›แŸ‹แž‚แŸ’แž“แžถแŸ”

แž˜แžฝแž™แžšแž™แŸˆแž˜แžปแž“แž™แžพแž„ แž”แžถแž“แžŸแžšแžŸแŸแžš แžขแŸ†แž–แžธแžšแž”แŸ€แž”แžŠแŸ‚แž›แž™แžพแž„แž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แžŠแžพแž˜แŸ’แž”แžธแž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‘แžผแžšแžŸแŸแž–แŸ’แž‘ SIP แž“แŸ…แž›แžพ STM32F4-Discovery แž‡แžถแž˜แžฝแž™แž“แžนแž„ 1 MB ROM แž“แžทแž„ 192 KB RAM) แžŠแŸ„แž™แž•แŸ’แžขแŸ‚แž€แž›แžพ แž”แŸ’แžšแžขแž”แŸ‹แžŸแŸ†แž”แžปแžแŸ’แžš. แž“แŸ…แž‘แžธแž“แŸแŸ‡แžœแžถแžแŸ’แžšแžผแžœแžแŸ‚แž“แžทแž™แžถแž™แžแžถแž€แŸ†แžŽแŸ‚แž“แŸ„แŸ‡แž‚แžบแžแžทแž…แžแžฝแž…แž”แŸ†แž•แžปแž แž แžพแž™แž”แžถแž“แž—แŸ’แž‡แžถแž”แŸ‹แž‘แžผแžšแžŸแŸแž–แŸ’แž‘แž–แžธแžšแžŠแŸ„แž™แž•แŸ’แž‘แžถแž›แŸ‹แžŠแŸ„แž™แž‚แŸ’แž˜แžถแž“แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ แž“แžทแž„แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž”แž‰แŸ’แž‡แžผแž“แžŸแŸ†แžกแŸแž„แž€แŸ’แž“แžปแž„แž‘แžทแžŸแžŠแŸ…แžแŸ‚แž˜แžฝแž™แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡แŸ” แžŠแžผแž…แŸ’แž“แŸแŸ‡แž แžพแž™ แž™แžพแž„แž”แžถแž“แžŸแž˜แŸ’แžšแŸแž…แž…แžทแžแŸ’แžแžŠแžถแž€แŸ‹แžฑแŸ’แž™แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‘แžผแžšแžŸแŸแž–แŸ’แž‘แž–แŸแž‰แž›แŸแž‰แž‡แžถแž„แž˜แžปแž“แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแž–แŸ’แž‘แžแžถแž˜แžšแž™แŸˆแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ แž€แžถแžšแž”แž‰แŸ’แž‡แžผแž“แžŸแŸ†แžกแŸแž„แž€แŸ’แž“แžปแž„แž‘แžทแžŸแžŠแŸ…แž‘แžถแŸ†แž„แž–แžธแžš แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž€แŸ’แž“แžปแž„แž–แŸแž›แžแŸ‚แž˜แžฝแž™แžŸแž˜แž“แžนแž„แž‘แŸ†แž แŸ†แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แžแžผแž…แž”แŸ†แž•แžปแžแŸ”


แžœแžถแžแŸ’แžšแžผแžœแž”แžถแž“แžŸแž˜แŸ’แžšแŸแž…แž…แžทแžแŸ’แžแž‡แŸ’แžšแžพแžŸแžšแžพแžŸแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‘แžผแžšแžŸแŸแž–แŸ’แž‘ simple_pjsua แž‡แžถแž•แŸ’แž“แŸ‚แž€แž˜แžฝแž™แž“แŸƒแž”แžŽแŸ’แžŽแžถแž›แŸแž™ PJSIP แŸ” แž“แŸแŸ‡แž‚แžบแž‡แžถแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแžทแž…แžแžฝแž…แž”แŸ†แž•แžปแžแžŠแŸ‚แž›แžขแžถแž…แž…แžปแŸ‡แžˆแŸ’แž˜แŸ„แŸ‡แž“แŸ…แž›แžพแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ แž‘แž‘แžฝแž› แž“แžทแž„แž†แŸ’แž›แžพแž™แž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแž–แŸ’แž‘แŸ” แžแžถแž„แž€แŸ’แžšแŸ„แž˜แž“แŸแŸ‡แžแŸ’แž‰แžปแŸ†แž“แžนแž„แž•แŸ’แžแž›แŸ‹แž€แžถแžšแž–แžทแž–แžŽแŸŒแž“แžถแžขแŸ†แž–แžธแžœแžทแž’แžธแžŠแŸ†แžŽแžพแžšแž€แžถแžšแžœแžถแž“แŸ…แž›แžพ STM32F7-Discovery แž—แŸ’แž›แžถแž˜แŸ—แŸ”

แžšแž”แŸ€แž”แž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžš

  1. แž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ Embox
    make confload-platform/pjsip/stm32f7cube
  2. แž“แŸ…แž€แŸ’แž“แžปแž„แžฏแž€แžŸแžถแžš conf/mods.config แž™แžพแž„แž€แŸ†แžŽแžแŸ‹แž‚แžŽแž“แžธ SIP แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž€แžถแžšแŸ”
    
    include platform.pjsip.cmd.simple_pjsua_imported(
        sip_domain="server", 
        sip_user="username",
        sip_passwd="password")
    

    แžŠแŸ‚แž›แž‡แžถแž€แž“แŸ’แž›แŸ‚แž„แžŠแŸ‚แž› แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž”แž˜แŸ’แžšแžพ แž‚แžบแž‡แžถแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ SIP (แžงแž‘แžถแž แžšแžŽแŸ sip.linphone.org) username ะธ แž–แžถแž€แŸ’แž™แžŸแž˜แŸ’แž„แžถแžแŸ‹ - แžˆแŸ’แž˜แŸ„แŸ‡แžขแŸ’แž“แž€แž”แŸ’แžšแžพ แž“แžทแž„แž–แžถแž€แŸ’แž™แžŸแž˜แŸ’แž„แžถแžแŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‚แžŽแž“แžธแŸ”

  3. แž™แžพแž„แž”แŸ’แžšแž˜แžผแž›แž•แŸ’แžแžปแŸ† Embox แž‡แžถแž˜แžฝแž™แž€แŸ’แžšแžปแž˜แž˜แžฝแž™แŸ” แž’แŸ’แžœแžพแžฑแŸ’แž™. แž™แžพแž„แž˜แžถแž“แž–แŸแžแŸŒแž˜แžถแž“แžขแŸ†แž–แžธ board firmware แž“แŸ… แžœแžธแž‚แžธแŸ” แž“แžทแž„แž“แŸ…แž€แŸ’แž“แžปแž„ แžขแžแŸ’แžแž”แž‘.
  4. แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž–แžถแž€แŸ’แž™แž”แž‰แŸ’แž‡แžถ โ€œsimple_pjsua_importedโ€ แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžปแž„แžŸแžผแž› Embox
    
    00:00:12.870    pjsua_acc.c  ....SIP outbound status for acc 0 is not active
    00:00:12.884    pjsua_acc.c  ....sip:[email protected]: registration success, status=200 (Registration succes
    00:00:12.911    pjsua_acc.c  ....Keep-alive timer started for acc 0, destination:91.121.209.194:5060, interval:15s
    

  5. แž…แžปแž„แž€แŸ’แžšแŸ„แž™ แžขแŸ’แžœแžธแžŠแŸ‚แž›แž“แŸ…แžŸแŸแžŸแžŸแž›แŸ‹แž‚แžบแž€แžถแžšแž”แž‰แŸ’แž…แžผแž›แžงแž”แž€แžšแžŽแŸแž”แŸ†แž–แž„แžŸแž˜แŸ’แž›แŸแž„ แžฌแž€แžถแžŸแž‘แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แž‰แŸ’แž…แŸแž‰แžŸแŸ†แžกแŸแž„ แž แžพแž™แž“แžทแž™แžถแž™แž…แžผแž›แž‘แŸ…แž€แŸ’แž“แžปแž„แž˜แžธแž€แŸ’แžšแžผแž แŸ’แžœแžผแž“ MEMS แžแžผแž…แž–แžธแžšแž“แŸ…แž‡แžถแž”แŸ‹แž“แžนแž„แžขแŸแž€แŸ’แžšแž„แŸ‹แŸ” แž™แžพแž„แž แŸ…แž–แžธแž›แžธแž“แžปแž…แžŠแŸ„แž™แž”แŸ’แžšแžพแž€แž˜แŸ’แž˜แžœแžทแž’แžธ simple_pjsua, pjsua แŸ” แžฌแžขแŸ’แž“แž€แžขแžถแž…แž”แŸ’แžšแžพแž”แŸ’แžšแž—แŸแž‘ linphone แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแŸ”

แž‘แžถแŸ†แž„แžขแžŸแŸ‹แž“แŸแŸ‡แžแŸ’แžšแžผแžœแž”แžถแž“แž–แžทแž–แžŽแŸŒแž“แžถแž“แŸ…แž›แžพแžšแž”แžŸแŸ‹แž™แžพแž„แŸ” แžœแžธแž‚แžธแŸ”.

แžแžพแž™แžพแž„แž”แžถแž“แž˜แž€แž‘แžธแž“แŸแŸ‡แžŠแŸ„แž™แžšแž”แŸ€แž”แžŽแžถ

แžŠแžผแž…แŸ’แž“แŸแŸ‡แžŠแŸ†แž”แžผแž„แžŸแŸ†แžŽแžฝแžšแž”แžถแž“แž€แžพแžแžกแžพแž„แžขแŸ†แž–แžธแž€แžถแžšแž‡แŸ’แžšแžพแžŸแžšแžพแžŸแžœแŸแž‘แžทแž€แžถแž•แŸ’แž“แŸ‚แž€แžšแžนแž„แŸ” แžŠแŸ„แž™แžŸแžถแžšแžœแžถแž…แŸ’แž”แžถแžŸแŸ‹แžแžถ STM32F4-Discovery แž“แžนแž„แž˜แžทแž“แžŸแŸแž€แŸ’แžแžทแžŸแž˜แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แž“แŸ„แŸ‡ STM32F7-Discovery แžแŸ’แžšแžผแžœแž”แžถแž“แž‡แŸ’แžšแžพแžŸแžšแžพแžŸแŸ” แž“แžถแž„แž˜แžถแž“ flash drive 1 MB แž“แžทแž„ RAM 256 KB (+ แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แž›แžฟแž“แž–แžทแžŸแŸแžŸ 64 แžŠแŸ‚แž›แž™แžพแž„แž“แžนแž„แž”แŸ’แžšแžพแž•แž„แžŠแŸ‚แžš)แŸ” แžœแžถแž€แŸแž˜แžทแž“แž…แŸ’แžšแžพแž“แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแž–แŸ’แž‘แžแžถแž˜แžšแž™แŸˆแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž™แžพแž„แž”แžถแž“แžŸแž˜แŸ’แžšแŸแž…แž…แžทแžแŸ’แžแž–แŸ’แž™แžถแž™แžถแž˜แž…แžผแž›แŸ”

แžแžถแž˜แž’แž˜แŸ’แž˜แžแžถ แž€แžถแžšแž„แžถแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ‚แž„แž…แŸ‚แž€แž‡แžถแžŠแŸ†แžŽแžถแž€แŸ‹แž€แžถแž›แž‡แžถแž…แŸ’แžšแžพแž“แŸ–

  • แž€แŸ†แž–แžปแž„แžŠแŸ†แžŽแžพแžšแž€แžถแžš PJSIP แž“แŸ…แž›แžพ QEMU แŸ” แžœแžถแž„แžถแž™แžŸแŸ’แžšแžฝแž›แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แŸ†แž”แžถแžแŸ‹แž€แŸ†แž แžปแžŸ แž”แžผแž€แž™แžพแž„แž˜แžถแž“แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžผแžŒแžทแž€ AC97 แž“แŸ…แž‘แžธแž“แŸ„แŸ‡แžšแžฝแž…แž แžพแž™แŸ”
  • แž€แžถแžšแžแžแžŸแŸ†แžกแŸแž„ แž“แžทแž„แž€แžถแžšแž…แžถแž€แŸ‹แžŸแžถแžšแžแŸ’แž˜แžธแž“แŸ…แž›แžพ QEMU แž“แžทแž„ STM32แŸ”
  • แž€แžถแžšแž”แž‰แŸ’แž‡แžผแž“แž€แž˜แŸ’แž˜แžœแžทแž’แžธ simple_pjsua แž–แžธ PJSIP แŸ” แžœแžถแžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž…แžปแŸ‡แžˆแŸ’แž˜แŸ„แŸ‡แž“แŸ…แž›แžพแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ SIP แž“แžทแž„แž’แŸ’แžœแžพแž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแŸแž–แŸ’แž‘แŸ”
  • แžŠแžถแž€แŸ‹แž–แž„แŸ’แžšแžถแž™แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“แžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แžŠแŸ„แž™แž•แŸ’แžขแŸ‚แž€แž›แžพแžŸแž‰แŸ’แž‰แžถแž•แŸ’แž€แžถแž™ แž“แžทแž„แžŸแžถแž€แž›แŸ’แž”แž„แž›แžพแžœแžถ แž แžพแž™แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แžŸแžถแž€แž›แŸ’แž”แž„แžงแž”แž€แžšแžŽแŸแžแžถแž„แž€แŸ’แžšแŸ… แžŠแžผแž…แž‡แžถ sip.linphone.org

แžŸแŸ†แžกแŸแž„แž“แŸ…แž€แŸ’แž“แžปแž„ Embox แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแžถแž˜แžšแž™แŸˆ Portaudio แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž“แŸ…แž€แŸ’แž“แžปแž„ PISIP แž•แž„แžŠแŸ‚แžšแŸ” แž”แž‰แŸ’แž แžถแžŠแŸ†แž”แžผแž„แž”แžถแž“แž›แŸแž…แžกแžพแž„แž“แŸ…แž›แžพ QEMU - WAVs แžแŸ’แžšแžผแžœแž”แžถแž“แž›แŸแž„แž™แŸ‰แžถแž„แž›แŸ’แžขแž“แŸ… 44100 Hz แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž“แŸ… 8000 แžขแŸ’แžœแžธแž˜แžฝแž™แž…แŸ’แž”แžถแžŸแŸ‹แž‡แžถแžแžปแžŸแŸ” แžœแžถแž”แžถแž“แž”แŸ’แžšแŸ‚แž€แŸ’แž›แžถแž™แžแžถแž”แž‰แŸ’แž แžถแž‚แžบแžŸแŸ’แžแžทแžแž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž€แŸ†แžŽแžแŸ‹แž”แŸ’แžšแŸแž€แž„แŸ‹ - แžแžถแž˜แž›แŸ†แž“แžถแŸ†แžŠแžพแž˜แž“แŸ…แž€แŸ’แž“แžปแž„แžงแž”แž€แžšแžŽแŸแžœแžถแž‚แžบ 44100 แž แžพแž™แž™แžพแž„แž˜แžทแž“แž”แžถแž“แž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžœแžถแž“แŸ…แž€แŸ’แž“แžปแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‘แŸแŸ”

แž“แŸ…แž‘แžธแž“แŸแŸ‡ แžœแžถแž”แŸ’แžšแž แŸ‚แž›แž‡แžถแž˜แžถแž“แžแž˜แŸ’แž›แŸƒแž€แŸ’แž“แžปแž„แž€แžถแžšแž–แž“แŸ’แž™แž›แŸ‹แž”แž“แŸ’แžแžทแž…แžขแŸ†แž–แžธแžšแž”แŸ€แž”แžŠแŸ‚แž›แžŸแŸ†แžกแŸแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžถแž€แŸ‹แž‡แžถแž‘แžผแž‘แŸ…แŸ” แž€แžถแžแžŸแŸ†แžกแŸแž„แžขแžถแž…แž€แŸ†แžŽแžแŸ‹แž‘แŸ’แžšแž“แžทแž…แž˜แžฝแž™แž…แŸ†แž“แžฝแž“แž‘แŸ…แž•แŸ’แž“แŸ‚แž€แž“แŸƒแžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ† แžŠแŸ‚แž›แžœแžถแžแŸ’แžšแžผแžœแž€แžถแžšแž…แžถแž€แŸ‹ แžฌแžแžแž“แŸ…แž”แŸ’แžšแŸแž€แž„แŸ‹แžŠแŸ‚แž›แž”แžถแž“แž€แŸ†แžŽแžแŸ‹แž‘แžปแž€แž‡แžถแž˜แžปแž“แŸ” แž”แž“แŸ’แž‘แžถแž”แŸ‹โ€‹แž–แžธโ€‹แžŸแžแžทแž”แžŽแŸ’แžŠแŸ„แŸ‡โ€‹แžขแžถแžŸแž“แŸ’แž“โ€‹แžขแžŸแŸ‹ แž€แžถแžšโ€‹แžšแŸ†แžแžถแž“โ€‹แžแŸ’แžšแžผแžœโ€‹แž”แžถแž“โ€‹แž”แž„แŸ’แž€แžพแž แž แžพแž™โ€‹แž€แžถแžšโ€‹แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทโ€‹แž”แž“แŸ’แžโ€‹แž–แžธโ€‹แžŸแžแžทแž”แžŽแŸ’แžŠแŸ„แŸ‡โ€‹แžขแžถแžŸแž“แŸ’แž“โ€‹แž”แž“แŸ’แž‘แžถแž”แŸ‹แŸ” แž…แŸ†แž“แžปแž…แž“แŸ„แŸ‡แž‚แžบแžแžถ buffers แž‘แžถแŸ†แž„แž“แŸแŸ‡แžแŸ’แžšแžผแžœแž”แŸ†แž–แŸแž‰แž‡แžถแž˜แžปแž“ แžแžŽแŸˆแž–แŸแž›แžŠแŸ‚แž›แž แŸ’แž‚แŸแž˜แž˜แžปแž“แž€แŸ†แž–แžปแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž›แŸแž„แŸ” แž™แžพแž„แž“แžนแž„แž‡แžฝแž”แž”แŸ’แžšแž‘แŸ‡แž”แž‰แŸ’แž แžถแž“แŸแŸ‡แž”แž“แŸ’แžแŸ‚แž˜แž‘แŸ€แžแž“แŸ…แž›แžพ STM32F7 แŸ”

แž”แž“แŸ’แž‘แžถแž”แŸ‹โ€‹แž˜แž€ แž™แžพแž„โ€‹แž”แžถแž“โ€‹แž‡แžฝแž›โ€‹แž˜แŸ‰แžถแžŸแŸŠแžธแž“โ€‹แž”แž˜แŸ’แžšแžพโ€‹แž˜แžฝแž™ แž แžพแž™โ€‹แžŠแžถแž€แŸ‹โ€‹แž–แž„แŸ’แžšแžถแž™โ€‹แžŸแž‰แŸ’แž‰แžถโ€‹แž•แŸ’แž€แžถแž™โ€‹แž“แŸ…โ€‹แž›แžพโ€‹แžœแžถแŸ” แžŠแŸ„แž™แžŸแžถแžšแž˜แžถแž“แž€แžถแžšแž€แŸ‚แž€แŸ†แž แžปแžŸแž…แŸ’แžšแžพแž“แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž’แŸ’แžœแžพ แž แžพแž™แžแŸ’แž‰แžปแŸ†แž˜แžทแž“แž…แž„แŸ‹แž“แžทแž™แžถแž™แž…แŸ’แžšแžพแž“แž€แŸ’แž“แžปแž„แž˜แžธแž€แŸ’แžšแžผแž แŸ’แžœแžผแž“แž‘แŸ แž…แžถแŸ†แž”แžถแž…แŸ‹แžแŸ’แžšแžผแžœแž’แŸ’แžœแžพแž€แžถแžšแž…แžถแž€แŸ‹แžŸแžถแžšแžแŸ’แž˜แžธ แž“แžทแž„แžแžแžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแŸ” แžŠแžพแž˜แŸ’แž”แžธแž’แŸ’แžœแžพแžŠแžผแž…แŸ’แž“แŸแŸ‡ แž™แžพแž„แž”แžถแž“ patched simple_pjsua แžŠแžผแž…แŸ’แž“แŸแŸ‡แž™แžพแž„แžขแžถแž…แž”แž‰แŸ’แž…แžผแž›แžฏแž€แžŸแžถแžšแž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™แžงแž”แž€แžšแžŽแŸแžขแžผแžŒแžธแž™แŸ‰แžผแŸ” แž“แŸ…แž€แŸ’แž“แžปแž„ PJSIP แž“แŸแŸ‡แžแŸ’แžšแžผแžœแž”แžถแž“แž’แŸ’แžœแžพแž™แŸ‰แžถแž„แžŸแžถแž˜แž‰แŸ’แž‰ แžŠแŸ„แž™แžŸแžถแžšแž–แžฝแž€แž‚แŸแž˜แžถแž“แž‚แŸ†แž“แžทแžแž“แŸƒแž…แŸ’แžšแž€ แžŠแŸ‚แž›แžขแžถแž…แž‡แžถแžงแž”แž€แžšแžŽแŸ แžฌแžฏแž€แžŸแžถแžšแŸ” แž แžพแž™แž…แŸ’แžšแž€แž‘แžถแŸ†แž„แž“แŸแŸ‡แžขแžถแž…แžแŸ’แžšแžผแžœแž”แžถแž“แžแž—แŸ’แž‡แžถแž”แŸ‹แžŠแŸ„แž™แž”แžแŸ‹แž”แŸ‚แž“แž‘แŸ…แž…แŸ’แžšแž€แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแŸ” แžขแŸ’แž“แž€แžขแžถแž…แž˜แžพแž›แž€แžผแžŠแž“แŸ…แž€แŸ’แž“แžปแž„ pjsip แžšแž”แžŸแŸ‹แž™แžพแž„แŸ” แžƒแŸ’แž›แžถแŸ†แž„. แž‡แžถแž›แž‘แŸ’แž’แž•แž›แž‚แŸ’แžšแŸ„แž„แž€แžถแžšแžŽแŸแž˜แžถแž“แžŠแžผแž…แžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ” แžแŸ’แž‰แžปแŸ†แž”แžถแž“แž”แž„แŸ’แž€แžพแžแž‚แžŽแž“แžธแž–แžธแžšแž“แŸ…แž›แžพแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ Asterisk - แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž›แžธแž“แžปแž… แž“แžทแž„แžŸแž˜แŸ’แžšแžถแž”แŸ‹ Embox แŸ” แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แž–แžถแž€แŸ’แž™แž”แž‰แŸ’แž‡แžถแžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž“แŸ…แž›แžพ Embox simple_pjsua_แž“แžถแŸ†แž…แžผแž›Embox แž…แžปแŸ‡แžˆแŸ’แž˜แŸ„แŸ‡แž“แŸ…แž›แžพแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž“แŸ„แŸ‡แž™แžพแž„แž แŸ… Embox แž–แžธแž›แžธแž“แžปแž…แŸ” แž“แŸ…แž–แŸแž›แž“แŸƒแž€แžถแžšแžแž—แŸ’แž‡แžถแž”แŸ‹ แž™แžพแž„แž–แžทแž“แžทแžแŸ’แž™แž˜แžพแž›แž“แŸ…แž›แžพแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ Asterisk แžแžถแž€แžถแžšแžแž—แŸ’แž‡แžถแž”แŸ‹แž‘แžถแŸ†แž„แž˜แžผแž›แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„ แž แžพแž™แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž–แŸแž›แžแŸ’แž›แŸ‡แž™แžพแž„แž‚แžฝแžšแžแŸ‚แžฎแžŸแŸ†แžกแŸแž„แž–แžธ Linux แž“แŸ…แž€แŸ’แž“แžปแž„ Embox แž แžพแž™แž“แŸ…แž€แŸ’แž“แžปแž„ Linux แž™แžพแž„แžšแž€แŸ’แžŸแžถแž‘แžปแž€แžฏแž€แžŸแžถแžšแžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžถแž€แŸ‹แž–แžธ Embox แŸ”

แž“แŸ…แž–แŸแž›แžŠแŸ‚แž›แžœแžถแžŠแŸ†แžŽแžพแžšแž€แžถแžšแž›แžพ QEMU แž™แžพแž„แž”แžถแž“แž”แž“แŸ’แžแž”แž‰แŸ’แž‡แžผแž“แžœแžถแž‘แŸ… STM32F7-Discovery แŸ” แž”แž‰แŸ’แž แžถแžŠแŸ†แž”แžผแž„แž‚แžบแžแžถแž™แžพแž„แž˜แžทแž“แžขแžถแž…แž”แž‰แŸ’แž…แžผแž›แž€แŸ’แž“แžปแž„ 1 MB แž“แŸƒ ROM แžŠแŸ„แž™แž˜แžทแž“แž˜แžถแž“ "-Os" compiler optimization แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‘แŸ†แž แŸ†แžšแžผแž”แž—แžถแž–แžแŸ’แžšแžผแžœแž”แžถแž“แž”แžพแž€แŸ” แžŠแžผแž…แŸ’แž“แŸแŸ‡ แž™แžพแž„แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž› "-Os" แŸ” แž”แž“แŸ’แž‘แžถแž”แŸ‹ แž”แŸ†แžŽแŸ‡แž”แžทแž‘แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹ C ++ แžŠแžผแž…แŸ’แž“แŸแŸ‡แžœแžถแžแŸ’แžšแžผแžœแž€แžถแžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžแŸ‚ pjsua แž แžพแž™แž™แžพแž„แž”แŸ’แžšแžพ simple_pjsua แŸ”

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแžŠแžถแž€แŸ‹ simple_pjsuaแž”แžถแž“แžŸแž˜แŸ’แžšแŸแž…แž…แžทแžแŸ’แžแžแžถแžฅแžกแžผแžœแž“แŸแŸ‡แž˜แžถแž“แžฑแž€แžถแžŸแžŠแžพแž˜แŸ’แž”แžธแž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžœแžถแŸ” แž”แŸ‰แžปแž“แŸ’แžแŸ‚โ€‹แžŠแŸ†แž”แžผแž„โ€‹แž™แžพแž„โ€‹แžแŸ’แžšแžผแžœโ€‹แžšแž€โ€‹แžœแžทแž’แžธโ€‹แžแž แž“แžทแž„โ€‹แž…แžถแž€แŸ‹โ€‹แžŸแŸ†แžกแŸแž„โ€‹แžœแžทแž‰แŸ” แžŸแŸ†แžŽแžฝแžš - แž€แž“แŸ’แž›แŸ‚แž„แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแžŸแžšแžŸแŸแžš? แž™แžพแž„แž‡แŸ’แžšแžพแžŸแžšแžพแžŸแžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แžแžถแž„แž€แŸ’แžšแŸ… - SDRAM (128 MB) แŸ” แžขแŸ’แž“แž€แžขแžถแž…แžŸแžถแž€แž›แŸ’แž”แž„แžœแžถแžŠแŸ„แž™แžแŸ’แž›แžฝแž“แžฏแž„แŸ–

แž“แžนแž„แž”แž„แŸ’แž€แžพแž Stereo WAV แžŠแŸ‚แž›แž˜แžถแž“แž”แŸ’แžšแŸแž€แž„แŸ‹ 16000 Hz แž“แžทแž„แžšแž™แŸˆแž–แŸแž› 10 แžœแžทแž“แžถแž‘แžธแŸ–


record -r 16000 -c 2 -d 10000 -m C0000000

แž™แžพแž„แž…แžถแž‰แŸ‹แŸ–


play -m C0000000

แž˜แžถแž“แž”แž‰แŸ’แž แžถแž–แžธแžšแž“แŸ…แž‘แžธแž“แŸแŸ‡แŸ” แž‘แžธแž˜แžฝแž™แž‚แžบแž‡แžถแž˜แžฝแž™แž€แžผแžŒแžทแž€ - WM8994 แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž แžพแž™แžœแžถแž˜แžถแž“แžŠแžผแž…แž‡แžถแžšแž“แŸ’แž’แžŠแŸ„แž แž แžพแž™แž˜แžถแž“ 4 แž“แŸƒแžšแž“แŸ’แž’แž‘แžถแŸ†แž„แž“แŸแŸ‡ แžŠแžผแž…แŸ’แž“แŸแŸ‡แžแžถแž˜แž›แŸ†แž“แžถแŸ†แžŠแžพแž˜ แž”แŸ’แžšแžŸแžทแž“แž”แžพแžœแžถแž˜แžทแž“แžแŸ’แžšแžผแžœแž”แžถแž“แž€แŸ†แžŽแžแŸ‹แž‘แŸ แž–แŸแž›แž…แžถแž€แŸ‹แžขแžผแžŒแžธแž™แŸ‰แžผ แž€แžถแžšแž…แžถแž€แŸ‹แžŸแžถแžšแžแŸ’แž˜แžธแž€แžพแžแžกแžพแž„แž‘แžถแŸ†แž„แžขแžŸแŸ‹แŸ” แžšแž“แŸ’แž’แž…แŸ†แž“แžฝแž“แž”แžฝแž“แŸ” แžŠแžผแž…แŸ’แž“แŸแŸ‡แž“แŸ…แž”แŸ’แžšแŸแž€แž„แŸ‹ 16000 Hz แž™แžพแž„แž‘แž‘แžฝแž›แž”แžถแž“ 8000 Hz แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž…แžถแž€แŸ‹แžŸแžถแžšแžแŸ’แž˜แžธ 8000 Hz แž˜แžทแž“แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‘แŸแŸ” แž“แŸ…แž–แŸแž›แžŠแŸ‚แž›แž™แžพแž„แž‡แŸ’แžšแžพแžŸแžšแžพแžŸแžแŸ‚แžšแž“แŸ’แž’ 0 แž“แžทแž„ 2 แžœแžถแžŠแŸ†แžŽแžพแžšแž€แžถแžšแžŠแžผแž…แž€แžถแžšแžšแŸ†แž–แžนแž„แž‘แžปแž€แŸ” แž”แž‰แŸ’แž แžถแž˜แžฝแž™แž‘แŸ€แžแž‚แžบแž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แžขแžผแžŒแžธแž™แŸ‰แžผแž“แŸ…แž€แŸ’แž“แžปแž„ STM32Cube แžŠแŸ‚แž›แž›แž‘แŸ’แž’แž•แž›แžขแžผแžŒแžธแž™แŸ‰แžผแžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแžถแž˜แžšแž™แŸˆ SAI (Serial Audio Interface) แž’แŸ’แžœแžพแžŸแž˜แž€แžถแž›แž€แž˜แŸ’แž˜แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž”แž‰แŸ’แž…แžผแž›แžขแžผแžŒแžธแž™แŸ‰แžผ (แžแŸ’แž‰แžปแŸ†แž˜แžทแž“แž™แž›แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แž›แž˜แŸ’แžขแžทแžแž‘แŸ แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžœแžถแž”แŸ’แžšแŸ‚แžแžถแž–แžฝแž€แž‚แŸแž…แŸ‚แž€แžšแŸ†แž›แŸ‚แž€แž“แžถแžกแžทแž€แžถแž’แž˜แŸ’แž˜แžแžถ แž แžพแž™แž“แŸ…แž–แŸแž›แž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แžŠแŸ†แžŽแžพแžšแž€แžถแžšแŸ” แž›แž‘แŸ’แž’แž•แž›แžขแžผแžŒแžธแž™แŸ‰แžผ แžขแžผแžŒแžธแž™แŸ‰แžผแžแŸ’แžšแžผแžœแž”แžถแž“แž…แž„แž—แŸ’แž‡แžถแž”แŸ‹แž‘แŸ…แž“แžนแž„แž…แŸ’แžšแž€แž…แžผแž›แžšแž”แžŸแŸ‹แžœแžถ) แŸ” แž“แŸ„แŸ‡แž‚แžบแžœแžถแž˜แžทแž“แžขแžถแž…แž‘แŸ…แžšแžฝแž…แž‘แŸแž€แŸ’แž“แžปแž„แž€แžถแžšแžŠแŸ†แžŽแžพแžšแž€แžถแžšแž–แžฝแž€แžœแžถแžŠแŸ„แž™แžกแŸ‚แž€แž–แžธแž‚แŸ’แž“แžถ แžŠแžผแž…แŸ’แž“แŸแŸ‡แž™แžพแž„แž”แžถแž“แž’แŸ’แžœแžพแžŠแžผแž…แžแžถแž„แž€แŸ’แžšแŸ„แž˜ - แž€แžถแžšแž”แž‰แŸ’แž…แžผแž›แžŸแŸ†แžกแŸแž„ แž“แžทแž„แž›แž‘แŸ’แž’แž•แž›แžขแžผแžŒแžธแž™แŸ‰แžผแžแŸ‚แž„แžแŸ‚แžŠแŸ†แžŽแžพแžšแž€แžถแžš (แžšแžฝแž˜แž‘แžถแŸ†แž„แž€แžถแžšแžšแŸ†แžแžถแž“แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแž)แŸ” แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž“แŸ…แž–แŸแž›แžŠแŸ‚แž›แž‚แŸ’แž˜แžถแž“แžขแŸ’แžœแžธแž€แŸ†แž–แžปแž„แž…แžถแž€แŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž”แŸ’แžšแž–แŸแž“แŸ’แž’ แž“แŸ„แŸ‡แž™แžพแž„แž‚แŸ’แžšแžถแž“แŸ‹แžแŸ‚แž‘แž˜แŸ’แž›แžถแž€แŸ‹แžŸแžแžทแž”แžŽแŸ’แžŠแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž‘แž‘แŸแž˜แžฝแž™แž‘แŸ…แž€แŸ’แž“แžปแž„แž›แž‘แŸ’แž’แž•แž›แžขแžผแžŒแžธแž™แŸ‰แžผ แž แžพแž™แž“แŸ…แž–แŸแž›แžŠแŸ‚แž›แž€แžถแžšแž…แžถแž€แŸ‹แžŸแžถแžšแžแŸ’แž˜แžธแž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜ แž™แžพแž„แž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แž”แŸ†แž–แŸแž‰แžœแžถแžŠแŸ„แž™แžŸแŸ’แž˜แŸ„แŸ‡แžแŸ’แžšแž„แŸ‹แŸ”

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แž™แžพแž„แž‡แžฝแž”แž”แŸ’แžšแž‘แŸ‡แž€แžถแžšแž–แžทแžแžŠแŸ‚แž›แžแžถแžŸแŸ†แžกแŸแž„แž“แŸ…แž–แŸแž›แžแžแžŸแŸ†แžกแŸแž„แž‚แžบแžŸแŸ’แž„แžถแžแŸ‹แžŽแžถแžŸแŸ‹แŸ” แž“แŸแŸ‡แž‚แžบแžŠแŸ„แž™แžŸแžถแžšแžแŸ‚แž€แžถแžšแž–แžทแžแžŠแŸ‚แž›แžแžถแž˜แžธแž€แŸ’แžšแžผแž แŸ’แžœแžผแž“ MEMS แž“แŸ…แž›แžพ STM32F7-Discovery แž˜แžทแž“แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž›แŸ’แžขแž“แŸ…แž”แŸ’แžšแŸแž€แž„แŸ‹แž€แŸ’แžšแŸ„แž˜ 16000 แž แžบแžแŸ” แžŠแžผแž…แŸ’แž“แŸแŸ‡แž แžพแž™ แž™แžพแž„แž€แŸ†แžŽแžแŸ‹แžœแžถแž‘แŸ… 16000 Hz แž‘แŸ„แŸ‡แž”แžธแž‡แžถ 8000 Hz แž˜แž€แžŠแž›แŸ‹แž€แŸแžŠแŸ„แž™แŸ” แžŠแžพแž˜แŸ’แž”แžธแž’แŸ’แžœแžพแžŠแžผแž…แŸ’แž“แŸแŸ‡ แžœแžถแž‡แžถแž€แžถแžšแž–แžทแžแžŠแŸ‚แž›แžแžถ แžœแžถแž…แžถแŸ†แž”แžถแž…แŸ‹แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž”แŸ†แž”แŸ’แž›แŸ‚แž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž“แŸƒแž”แŸ’แžšแŸแž€แž„แŸ‹แž˜แžฝแž™แž‘แŸ…แž”แŸ’แžšแŸแž€แž„แŸ‹แž˜แžฝแž™แž‘แŸ€แžแŸ”

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แž™แžพแž„แžแŸ’แžšแžผแžœแž”แž„แŸ’แž€แžพแž“แž‘แŸ†แž แŸ†แžšแž”แžŸแŸ‹ heap แžŠแŸ‚แž›แž˜แžถแž“แž‘แžธแžแžถแŸ†แž„แž“แŸ… RAM แŸ” แž™แŸ„แž„แžแžถแž˜แž€แžถแžšแž‚แžŽแž“แžถแžšแž”แžŸแŸ‹แž™แžพแž„ pjsip แžแŸ’แžšแžผแžœแž€แžถแžšแž”แŸ’แžšแž แŸ‚แž› 190 KB แž แžพแž™แž™แžพแž„แž“แŸ…แžŸแž›แŸ‹แž”แŸ’แžšแž แŸ‚แž› 100 KB แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡แŸ” แž“แŸ…แž‘แžธแž“แŸแŸ‡แž™แžพแž„แžแŸ’แžšแžผแžœแž”แŸ’แžšแžพแžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แžแžถแž„แž€แŸ’แžšแŸ…แžแžทแž…แžแžฝแž… - SDRAM (แž”แŸ’แžšแž แŸ‚แž› 128 KB) แŸ”

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž€แžถแžšแž€แŸ‚แžŸแž˜แŸ’แžšแžฝแž›แž‘แžถแŸ†แž„แžขแžŸแŸ‹แž“แŸแŸ‡ แžแŸ’แž‰แžปแŸ†แž”แžถแž“แžƒแžพแž‰แž€แž‰แŸ’แž…แž”แŸ‹แžŠแŸ†แž”แžผแž„แžšแžœแžถแž„ Linux แž“แžทแž„ Embox แž แžพแž™แž”แžถแž“แžฎแžŸแŸ†แžกแŸแž„! แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžŸแŸ†แžกแŸแž„แž‚แžบแž‚แžฝแžšแžฑแŸ’แž™แžแŸ’แž›แžถแž…แžŽแžถแžŸแŸ‹ แž˜แžทแž“แžŠแžผแž…แž“แŸ…แž›แžพ QEMU แž‘แŸ แž‚แŸ’แž˜แžถแž“แžขแŸ’แžœแžธแžขแžถแž…แž›แžบแž”แžถแž“แž‘แŸแŸ” แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แž™แžพแž„แž†แŸ’แž„แž›แŸ‹แžแžถแžแžพแžขแŸ’แžœแžธแžขแžถแž…แž‡แžถแž”แž‰แŸ’แž แžถแŸ” แž€แžถแžšแž€แŸ‚แž€แŸ†แž แžปแžŸแž”แžถแž“แž”แž„แŸ’แž แžถแž‰แžแžถ Embox แž˜แžทแž“แž˜แžถแž“แž–แŸแž›แžœแŸแž›แžถแžŠแžพแž˜แŸ’แž”แžธแž”แŸ†แž–แŸแž‰/แž˜แžทแž“แž•แŸ’แž‘แžปแž€แž“แžผแžœแžŸแžแžทแž”แžŽแŸ’แžŠแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แžŸแŸ†แžกแŸแž„แž‘แŸแŸ” แžแžŽแŸˆแž–แŸแž›แžŠแŸ‚แž› pjsip แž€แŸ†แž–แžปแž„แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžŸแŸŠแžปแž˜แž˜แžฝแž™ แž€แžถแžšแžšแŸ†แžแžถแž“ 2 แžขแŸ†แž–แžธแž€แžถแžšแž”แž‰แŸ’แž…แž”แŸ‹แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžŸแžแžทแž”แžŽแŸ’แžŠแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž”แžถแž“แž€แžพแžแžกแžพแž„ แžŠแŸ‚แž›แžœแžถแž…แŸ’แžšแžพแž“แž–แŸแž€แŸ” แž‚แŸ†แž“แžทแžแžŠแŸ†แž”แžผแž„แžšแž”แžŸแŸ‹แžแŸ’แž‰แžปแŸ†แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แž„แŸ’แž€แžพแž“แž›แŸ’แž”แžฟแž“แž‚แžบแž€แžถแžšแž”แž„แŸ’แž€แžพแž“แž”แŸ’แžšแžŸแžทแž‘แŸ’แž’แž—แžถแž–แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž…แž„แž€แŸ’แžšแž„ แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžœแžถแžแŸ’แžšแžผแžœแž”แžถแž“แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แžšแžฝแž…แž แžพแž™แž“แŸ…แž€แŸ’แž“แžปแž„ PJSIP แŸ” แž‘แžธแž–แžธแžšแž‚แžบแž‡แžถแž…แŸ†แžŽแžปแž…แžขแžŽแŸ’แžแŸ‚แžแž›แžพแž•แŸ’แž“แŸ‚แž€แžšแžนแž„ แž™แžพแž„แž”แžถแž“แž“แžทแž™แžถแž™แžขแŸ†แž–แžธแžœแžถแž“แŸ…แž€แŸ’แž“แžปแž„ แžขแžแŸ’แžแž”แž‘. แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžŠแžผแž…แžŠแŸ‚แž›แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž”แžถแž“แž”แž„แŸ’แž แžถแž‰ FPU แž˜แžทแž“แž”แžถแž“แž•แŸ’แžแž›แŸ‹แž“แžผแžœแž€แžถแžšแž€แžพแž“แžกแžพแž„แž‚แžฝแžšแžฑแŸ’แž™แž€แžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž›แŸ’แž”แžฟแž“แž“แŸ„แŸ‡แž‘แŸแŸ” แž‡แŸ†แž แžถแž“แž”แž“แŸ’แž‘แžถแž”แŸ‹แž‚แžบแž€แŸ†แžŽแžแŸ‹แžขแžถแž‘แžทแž—แžถแž–แžแŸ’แžŸแŸ‚แžŸแŸ’แžšแžกแžถแž™แŸ” Embox แž˜แžถแž“แž™แžปแž‘แŸ’แž’แžŸแžถแžŸแŸ’แžแŸ’แžšแž€แŸ†แžŽแžแŸ‹แž–แŸแž›แžแžปแžŸแŸ—แž‚แŸ’แž“แžถ แž แžพแž™แžแŸ’แž‰แžปแŸ†แž”แžถแž“แž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž˜แžฝแž™แžŠแŸ‚แž›แž‚แžถแŸ†แž‘แŸ’แžšแžขแžถแž‘แžทแž—แžถแž– แž“แžทแž„แž•แŸ’แžแž›แŸ‹แžขแžถแž‘แžทแž—แžถแž–แžแŸ’แž–แžŸแŸ‹แž”แŸ†แž•แžปแžแžŠแž›แŸ‹แž€แžถแžšแž•แŸ’แžŸแžถแž™แžŸแŸ†แžกแŸแž„แŸ” แž“แŸแŸ‡แž€แŸแž˜แžทแž“แž”แžถแž“แž‡แžฝแž™แžŠแŸ‚แžšแŸ”

แž‚แŸ†แž“แžทแžแž”แž“แŸ’แž‘แžถแž”แŸ‹แž‚แžบแžแžถแž™แžพแž„แž€แŸ†แž–แžปแž„แž’แŸ’แžœแžพแž€แžถแžšแž‡แžถแž˜แžฝแž™แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แžแžถแž„แž€แŸ’แžšแŸ… แž แžพแž™แžœแžถแž‡แžถแž€แžถแžšแž›แŸ’แžขแž€แŸ’แž“แžปแž„แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž‘แžธแžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แž“แŸ…แž‘แžธแž“แŸ„แŸ‡แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžผแž›แž”แŸ’แžšแžพแž‰แžนแž€แž‰แžถแž”แŸ‹แž”แŸ†แž•แžปแžแŸ” แžแŸ’แž‰แžปแŸ†แž”แžถแž“แž’แŸ’แžœแžพแž€แžถแžšแžœแžทแž—แžถแž‚แž”แž‹แž˜แžขแŸ†แž–แžธแž–แŸแž›แžŽแžถ แž“แžทแž„แž€แŸ’แžšแŸ„แž˜แžขแŸ’แžœแžธ simple_pjsua แž”แŸ‚แž„แž…แŸ‚แž€แž€แžถแžšแž…แž„แž…แžถแŸ†แŸ” แžœแžถแž”แžถแž“แž”แŸ’แžšแŸ‚แž€แŸ’แž›แžถแž™แžแžถแž€แŸ’แž“แžปแž„แž…แŸ†แžŽแŸ„แž˜ 190 KB แž“แŸ„แŸ‡ 90 KB แžŠแŸ†แž”แžผแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž˜แŸ’แžšแžปแž„แž‘แžปแž€แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžแž˜แŸ’แžšแžผแžœแž€แžถแžšแž•แŸ’แž‘แŸƒแž€แŸ’แž“แžปแž„แžšแž”แžŸแŸ‹ PJSIP แž แžพแž™แž˜แžทแž“แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžผแž›แž”แŸ’แžšแžพแž‰แžนแž€แž‰แžถแž”แŸ‹แž‘แŸแŸ” แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€ แž€แŸ’แž“แžปแž„แžขแŸ†แžกแžปแž„แž–แŸแž›แž€แžถแžšแž แŸ…แž…แžผแž› แž˜แžปแžแž„แžถแžš pjsua_call_answer แžแŸ’แžšแžผแžœแž”แžถแž“แž แŸ… แžŠแŸ‚แž›แž€แŸ’แž“แžปแž„แž“แŸ„แŸ‡ buffers แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ‚แž„แž…แŸ‚แž€แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž’แŸ’แžœแžพแž€แžถแžšแž‡แžถแž˜แžฝแž™แžŸแŸŠแžปแž˜แž…แžผแž› แž“แžทแž„แž…แŸแž‰แŸ” แžœแžถแž“แŸ…แžแŸ‚แž˜แžถแž“แž”แŸ’แžšแž แŸ‚แž› 100 KB แŸ” แž แžพแž™แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แž™แžพแž„แž”แžถแž“แž’แŸ’แžœแžพแžŠแžผแž…แžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ” แžšแž แžผแžแž‘แžถแž›แŸ‹แžแŸ‚แž˜แžถแž“แž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแž–แŸ’แž‘ แž‘แžทแž“แŸ’แž“แž“แŸแž™แžแŸ’แžšแžผแžœแž”แžถแž“แžšแž€แŸ’แžŸแžถแž‘แžปแž€แž€แŸ’แž“แžปแž„แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แžแžถแž„แž€แŸ’แžšแŸ…แŸ” แžŠแžšแžถแž”แžŽแžถแž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแž–แŸ’แž‘แžšแŸ„แž‘แŸ แž™แžพแž„แž‡แŸ†แž“แžฝแžŸ heap แž—แŸ’แž›แžถแž˜แŸ—แž‡แžถแž˜แžฝแž™แž“แžนแž„แž˜แžฝแž™แž‘แŸ€แžแž“แŸ…แž€แŸ’แž“แžปแž„ RAM แŸ” แžŠแžผแž…แŸ’แž“แŸแŸ‡ แž‘แžทแž“แŸ’แž“แž“แŸแž™ "แž€แŸ’แžแŸ…" แž‘แžถแŸ†แž„แžขแžŸแŸ‹แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แž‘แŸแžšแž‘แŸ…แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แž›แžฟแž“ แž“แžทแž„แžขแžถแž…แž–แŸ’แž™แžถแž€แžšแžŽแŸแž”แžถแž“แŸ”

แž‡แžถแž›แž‘แŸ’แž’แž•แž›แž‘แžถแŸ†แž„แžขแžŸแŸ‹แž“แŸแŸ‡แžšแžฝแž˜แž‚แŸ’แž“แžถแžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แž™แžพแž„แž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜ simple_pjsua แž แžพแž™แž แŸ…แžแžถแž˜แžšแž™แŸˆแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ” แž แžพแž™แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แžแžถแž˜แžšแž™แŸˆแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแž•แŸ’แžŸแŸแž„แž‘แŸ€แžแžŠแžผแž…แž‡แžถ sip.linphone.org แŸ”

แž€แžถแžšแžšแž€แžƒแžพแž‰

แž“แŸ…โ€‹แž‘แžธโ€‹แž”แŸ†แž•แžปแžโ€‹แžœแžถโ€‹แžขแžถแž…โ€‹แž…แžถแž”แŸ‹โ€‹แž•แŸ’แžแžพแž˜โ€‹แž”แžถแž“แŸ” simple_pjsua แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž”แž‰แŸ’แž‡แžผแž“แžŸแŸ†แžกแŸแž„แž€แŸ’แž“แžปแž„แž‘แžทแžŸแžŠแŸ…แž‘แžถแŸ†แž„แž–แžธแžšแžแžถแž˜แžšแž™แŸˆแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแŸ” แž”แž‰แŸ’แž แžถแž‡แžถแž˜แžฝแž™ SDRAM แž”แž“แŸ’แžแŸ‚แž˜ 128 KB แžขแžถแž…แžแŸ’แžšแžผแžœแž”แžถแž“แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™แžŠแŸ„แž™แž”แŸ’แžšแžพ Cortex-M7 แžŠแŸ‚แž›แž˜แžถแž“แžขแž“แžปแž—แžถแž–แž‡แžถแž„แž”แž“แŸ’แžแžทแž… (แžงแž‘แžถแž แžšแžŽแŸ STM32F769NI แž‡แžถแž˜แžฝแž™ RAM 512 KB) แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž™แžพแž„แž˜แžทแž“แž‘แžถแž“แŸ‹แž”แŸ„แŸ‡แž”แž„แŸ‹แž€แŸ’แžแžธแžŸแž„แŸ’แžƒแžนแž˜แž“แŸƒแž€แžถแžšแžŸแž˜แž€แŸ’แž“แžปแž„ 256 KB แž‘แŸ :) แž™แžพแž„แž“แžนแž„ แžŸแžผแž˜แžšแžธแž€แžšแžถแž™แž”แŸ’แžšแžŸแžทแž“แž”แžพแž“แžšแžŽแžถแž˜แŸ’แž“แžถแž€แŸ‹แž…แžถแž”แŸ‹แžขแžถแžšแž˜แŸ’แž˜แžŽแŸ แžฌแž”แŸ’แžšแžŸแžพแžšแž‡แžถแž„แž“แŸแŸ‡ แžŸแžผแž˜แžŸแžถแž€แž›แŸ’แž”แž„แžœแžถแŸ” แž”แŸ’แžšแž—แž–แž‘แžถแŸ†แž„แžขแžŸแŸ‹แž‡แžถแž’แž˜แŸ’แž˜แžแžถแž˜แžถแž“แž“แŸ…แž€แŸ’แž“แžปแž„แžšแž”แžŸแŸ‹แž™แžพแž„แŸ” แžƒแŸ’แž›แžถแŸ†แž„.

แž”แŸ’แžšแž—แž–: www.habr.com

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹