Sound Open Firmware 2.2 ืื™ื– ื‘ื ื™ืžืฆื, ืึท ืกื›ื•ื ืคื•ืŸ ืึธืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ DSP ื˜ืฉื™ืคึผืก

ื“ื™ ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ ืกืึธื•ื ื“ ืขืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข 2.2 (SOF) ืคึผืจื•ื™ืขืงื˜ ืื™ื– ืืจื•ื™ืก, ืขืจื™ื“ื–ืฉื ืึทืœื™ ื‘ืืฉืืคืŸ ื“ื•ืจืš ื™ื ื˜ืขืœ ืฆื• ืžืึทืš ืึทื•ื•ืขืง ืคื•ืŸ ื“ื™ ืคื™ืจ ืคื•ืŸ ื“ื™ืœื™ื•ื•ืขืจื™ื ื’ ืคืืจืžืื›ื˜ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ DSP ื˜ืฉื™ืคึผืก ืฉื™ื™ึทื›ื•ืช ืฆื• ืึทื•ื“ื™ืึธ ืคึผืจืึทืกืขืกื™ื ื’. ื“ืขืจ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขืจื ืึธืš ื˜ืจืึทื ืกืคืขืจื“ ืื•ื ื˜ืขืจ ื“ื™ ืคืœื™ื’ืœ ืคื•ืŸ ื“ื™ ืœื™ื ื•ืงืก ื•ื•ื™ืงื™ืคึผืขื“ื™ืข ืื•ืŸ ืื™ื– ืื™ืฆื˜ ื“ืขื•ื•ืขืœืึธืคึผืขื“ ืžื™ื˜ ื“ื™ ื™ื ื•ื•ืึทืœื•ื•ืžืึทื ื˜ ืคื•ืŸ ื“ื™ ืงื”ืœ ืื•ืŸ ืžื™ื˜ ื“ื™ ืึธื ื˜ื™ื™ืœ ืคื•ืŸ AMD, Google ืื•ืŸ NXP. ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืึท SDK ืฆื• ืคืึทืจืคึผืึธืฉืขื˜ืขืจืŸ ืคื™ืจืžื•ื•ืึทืจืข ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’, ืึท ื’ืขื–ื•ื ื˜ ื“ืจื™ื™ื•ื•ืขืจ ืคึฟืึทืจ ื“ื™ ืœื™ื ื•ืงืก ืงืขืจืŸ ืื•ืŸ ืึท ื’ืึทื ื’ ืคื•ืŸ ืคืึทืจื˜ื™ืง ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ ืคืึทืจืฉื™ื“ืŸ ื“ืกืคึผ ื˜ืฉื™ืคึผืก, ืคึฟืึทืจ ื•ื•ืึธืก ื‘ื™ื™ื ืขืจื™ ืึทืกืขืžื‘ืœื™ื– ื–ืขื ืขืŸ ืื•ื™ืš ื“ื–ืฉืขื ืขืจื™ื™ื˜ืึทื“, ืกืขืจื˜ืึทืคื™ื™ื“ ื“ื•ืจืš ืึท ื“ื™ื’ื™ื˜ืึทืœ ื›ืกื™ืžืข. ื“ื™ ืคื™ืจืžื•ื•ืึทืจืข ืงืึธื“ ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C ืฉืคึผืจืึทืš ืžื™ื˜ ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ื™ื ืกืขืจืฅ ืื•ืŸ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ BSD ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ.

ื“ืึทื ืง ืฆื• ื–ื™ื™ืŸ ืžืึทื“ื–ืฉืึทืœืขืจ ืกื˜ืจื•ืงื˜ื•ืจ, Sound Open Firmware ืงืขื ืขืŸ ื–ื™ื™ืŸ ื˜ืจืึทื ืกืคึผืึธืจื˜ืึทื“ ืฆื• ืคืึทืจืฉื™ื“ืŸ DSP ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื– ืื•ืŸ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืคึผืœืึทื˜ืคืึธืจืžืก. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืฆื•ื•ื™ืฉืŸ ื“ื™ ื’ืขืฉื˜ื™ืฆื˜ ืคึผืœืึทื˜ืคืึธืจืžืก, ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืคืึทืจืฉื™ื“ืŸ ื™ื ื˜ืขืœ ื˜ืฉื™ืคึผืก (ื‘ืจืึธื“ื•ื•ืขืœืœ, ื™ืกืขืœืึทืงืข, ื˜ื™ื’ืขืจืœืึทืงืข, ืึทืœื“ืขืจืœืึทืงืข, ืืื–"ื• ื•), Mediatek (ืžื˜8195), NXP (i.MX8 *) ืื•ืŸ ืึทืžื“ (ืจืขื ืึธื™ืจ) ื™ืงื•ื•ื™ืคึผื˜ ืžื™ื˜ ื“ืกืคึผ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ Xtensa HiFi ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื– ื–ืขื ืขืŸ ืกื˜ื™ื™ื˜ื™ื“ 2, 3 ืื•ืŸ 4. ื‘ืขืฉืึทืก ื“ื™ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืคึผืจืึธืฆืขืก, ืึท ืกืคึผืขืฆื™ืขืœ ืขืžื•ืœืึทื˜ืึธืจ ืึธื“ืขืจ QEMU ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜. ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ืึธืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ DSP ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื’ืขืฉื•ื•ื™ื ื“ ืคืึทืจืจื™ื›ื˜ืŸ ืื•ืŸ ื“ื™ืึทื’ื ืึธื–ื™ืจืŸ ืคึผืจืึธื‘ืœืขืžืก ืื™ืŸ ื“ื™ ืคื™ืจืžื•ื•ืึทืจืข, ืื•ืŸ ืื•ื™ืš ื’ื™ื˜ ื™ื•ื–ืขืจื– ื“ื™ ื’ืขืœืขื’ื ื”ื™ื™ื˜ ืฆื• ื™ื ื“ื™ืคึผืขื ื“ืึทื ื˜ืœื™ ืึทื“ืึทืคึผื˜ ื“ื™ ืคื™ืจืžื•ื•ืึทืจืข ืฆื• ื–ื™ื™ืขืจ ื‘ืื“ืขืจืคืขื ื™ืฉืŸ, ืžืึทื›ืŸ ืกืคึผืขืฆื™ืคื™ืฉ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทื ื– ืื•ืŸ ืฉืึทืคึฟืŸ ืœื™ื™ื˜ื•ื•ื™ื™ื˜ ืคื™ืจืžื•ื•ืึทืจืข ื•ื•ืขืจืกื™ืขืก ื•ื•ืึธืก ืึทื ื˜ื”ืึทืœื˜ืŸ ื‘ืœื•ื™ื– ื“ื™ ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™ ื•ื•ืึธืก ืื™ื– ื ื™ื™ื˜ื™ืง ืคึฟืึทืจ DSP. ื“ื™ ืคึผืจืึธื“ื•ืงื˜.

ื“ื™ ืคึผืจื•ื™ืขืงื˜ ื’ื™ื˜ ืึท ืคืจื™ื™ืžื•ื•ืขืจืง ืคึฟืึทืจ ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’, ืึธืคึผื˜ื™ืžื™ื–ื™ื ื’ ืื•ืŸ ื˜ืขืกื˜ื™ื ื’ ืกืึทืœื•ืฉืึทื ื– ืฉื™ื™ึทื›ื•ืช ืฆื• ืึทื•ื“ื™ืึธ ืคึผืจืึทืกืขืกื™ื ื’, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ืงืจื™ื™ื™ื˜ื™ื ื’ ื“ืจื™ื•ื•ืขืจืก ืื•ืŸ ืžื’ื™ืœื” ืคึฟืึทืจ ื™ื ื˜ืขืจืึทืงื˜ื™ื ื’ ืžื™ื˜ DSP. ื“ืขืจ ื–ืึทืฅ ื›ื•ืœืœ ืคื™ืจืžื•ื•ืึทืจืข ื™ืžืคึผืœืึทืžืึทื ืฅ, ืžื›ืฉื™ืจื™ื ืคึฟืึทืจ ื˜ืขืกื˜ื™ื ื’ ืคื™ืจืžื•ื•ืึทืจืข, ื™ื•ื˜ื™ืœืึทื˜ื™ื– ืคึฟืึทืจ ืงืึทื ื•ื•ืขืจื˜ื™ื ื’ ELF ื˜ืขืงืขืก ืื™ืŸ ืคื™ืจืžื•ื•ืึทืจืข ื‘ื™ืœื“ืขืจ ืคึผืึทืกื™ืง ืคึฟืึทืจ ื™ื ืกื˜ืึทืœื™ืจื•ื ื’ ืื•ื™ืฃ ื•ื™ืกืจื™ื›ื˜, ื“ื™ื‘ืึทื’ื™ื ื’ ืžื›ืฉื™ืจื™ื, ืึท DSP ืขืžื•ืœืึทื˜ืึธืจ, ืึท ื‘ืึทืœืขื‘ืึธืก ืคึผืœืึทื˜ืคืึธืจืžืข ืขืžื•ืœืึทื˜ืึธืจ (ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ QEMU), ืžื›ืฉื™ืจื™ื ืคึฟืึทืจ ื˜ืจื™ื™ืกื™ื ื’ ืคื™ืจืžื•ื•ืึทืจืข, ืกืงืจื™ืคึผืก ืคึฟืึทืจ MATLAB / Octave ืคึฟืึทืจ ืคื™ื™ืŸ-ื˜ื•ื ื™ื ื’ ืงืึธื•ืึทืคื™ืฉืึทื ืฅ ืคึฟืึทืจ ืึทื•ื“ื™ืึธ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ, ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืคึฟืึทืจ ืึธืจื’ืึทื ื™ื™ื–ื™ื ื’ ื™ื ื˜ืขืจืึทืงืฉืึทืŸ ืื•ืŸ ื“ืึทื˜ืŸ ื•ื•ืขืงืกืœ ืžื™ื˜ ืคื™ืจืžื•ื•ืึทืจืข, ืคืึทืจื˜ื™ืง ื‘ื™ื™ืฉืคื™ืœืŸ ืคื•ืŸ ืึทื•ื“ื™ืึธ ืคึผืจืึทืกืขืกื™ื ื’ ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™ื–.

Sound Open Firmware 2.2 ืื™ื– ื‘ื ื™ืžืฆื, ืึท ืกื›ื•ื ืคื•ืŸ ืึธืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ DSP ื˜ืฉื™ืคึผืก
Sound Open Firmware 2.2 ืื™ื– ื‘ื ื™ืžืฆื, ืึท ืกื›ื•ื ืคื•ืŸ ืึธืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ DSP ื˜ืฉื™ืคึผืก

ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ืื•ื™ืš ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืึท ื•ื ื™ื•ื•ืขืจืกืึทืœ ืฉืึธืคืขืจ ื•ื•ืึธืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ืžื™ื˜ ื“ืขื•ื•ื™ืกืขืก ืžื™ื˜ ืคื™ืจืžื•ื•ืึทืจืข ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ืกืึธื•ื ื“ ืขืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข. ื“ืขืจ ืฉืึธืคืขืจ ืื™ื– ืฉื•ื™ืŸ ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ืœื™ื ื•ืงืก ืงืขืจืŸ, ืกื˜ืึทืจื˜ื™ื ื’ ืžื™ื˜ ืžืขืœื“ื•ื ื’ 5.2, ืื•ืŸ ืงื•ืžื˜ ืื•ื ื˜ืขืจ ืึท ืฆื•ื•ื™ื™ืขื ื“ื™ืง ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ - BSD ืื•ืŸ GPLv2. ื“ืขืจ ืฉืึธืคืขืจ ืื™ื– ืคืึทืจืึทื ื˜ื•ื•ืึธืจื˜ืœืขืš ืคึฟืึทืจ ืœืึธื•ื“ื™ื ื’ ืคื™ืจืžื•ื•ืึทืจืข ืื™ืŸ ื“ื™ DSP ื–ื›ึผืจื•ืŸ, ืœืึธื•ื“ื™ื ื’ ืึทื•ื“ื™ืึธ ื˜ืึธืคึผืึธืœืึธื’ื™ืขืก ืื™ืŸ ื“ื™ DSP, ืึธืจื’ืึทื ื™ื–ื™ืจืŸ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ื™ ืึทื•ื“ื™ืึธ ืžื™ื˜ืœ (ืคืึทืจืึทื ื˜ื•ื•ืึธืจื˜ืœืขืš ืคึฟืึทืจ ืึทืงืกืขืก DSP ืคืึทื ื’ืงืฉืึทื ื– ืคึฟื•ืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–) ืื•ืŸ ืฆื•ืฉื˜ืขืœืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืึทืงืกืขืก ืคื•ื ืงื˜ืŸ ืฆื• ืึทื•ื“ื™ืึธ ื“ืึทื˜ืŸ. ื“ืขืจ ืฉืึธืคืขืจ ืื•ื™ืš ื’ื™ื˜ ืึทืŸ IPC ืžืขืงืึทื ื™ื–ืึทื ืคึฟืึทืจ ืงืึธืžื•ื ื™ืงืึทืฆื™ืข ืฆื•ื•ื™ืฉืŸ ื“ื™ ื‘ืึทืœืขื‘ืึธืก ืกื™ืกื˜ืขื ืื•ืŸ ื“ื™ DSP, ืื•ืŸ ืึท ืฉื™ื›ื˜ืข ืคึฟืึทืจ ืึทืงืกืขืก ื“ื™ DSP ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืงื™ื™ืคึผืึทื‘ื™ืœืึทื˜ื™ื– ื“ื•ืจืš ืึท ื“ื–ืฉืึทื ืขืจื™ืง ืึทืคึผื™. ืคึฟืึทืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–, ืึท DSP ืžื™ื˜ Sound Open Firmware ืงื•ืงื˜ ื•ื•ื™ ืึท ืจืขื’ื•ืœืขืจ ALSA ืžื™ื˜ืœ, ื•ื•ืึธืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ืงืึทื ื˜ืจืึธื•ืœื“ ืžื™ื˜ ืึท ื ืึธืจืžืึทืœ ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืฆื•ื‘ื™ื ื“.

Sound Open Firmware 2.2 ืื™ื– ื‘ื ื™ืžืฆื, ืึท ืกื›ื•ื ืคื•ืŸ ืึธืคึฟืŸ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ DSP ื˜ืฉื™ืคึผืก

ืฉืœื™ืกืœ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื– ืื™ืŸ Sound Open Firmware 2.2:

  • ื“ืขืจ ืงืึธืžืคึผืึธื ืขื ื˜ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืงืึธื“ืขืง ืœื™ื™ื‘ืจืขืจื™ื– ืื™ื– ืจื™ื ื™ื™ืžื“ ืคื•ืŸ codec_adapter ืฆื• module_adapter ืื•ืŸ ืื™ื– ื’ืขื‘ืจืื›ื˜ ืื™ืŸ ืฉื•ืจื” ืžื™ื˜ ื“ื™ ืึทืคึผื™ ืคื•ืŸ ืกื™ื’ื ืึทืœ ืคึผืจืึทืกืขืกื™ื ื’ ืžืึทื“ื–ืฉื•ืœื–, ื•ื•ืึธืก ื•ื•ืขื˜ ืœืึธื–ืŸ ืื™ืจ ืฆื• ื ื•ืฆืŸ ืงืึธื“ ืคื•ืŸ Windows ื”ืึทื ื“ืœืขืจืก ืึธืŸ ื˜ืฉืึทื ื’ื™ื ื’ ืขืก.
  • ื“ื™ Frag API ืื™ื– ื“ื™ืคึผืจื™ืฉื™ื™ื™ื˜ื™ื“ ืื•ืŸ ื™ืžืคึผืจื•ื•ื•ื“ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ื™ืขื“ืขืจ ืงืึธืžืคึผืึธื ืขื ื˜ ืžื™ื˜ ื‘ืขืขืจืขืš 1 ืžืงืคึผืก (ืžื™ืœื™ืึธืŸ ืกื™ื™ืงืึทืœื– ืคึผืขืจ ืกืขืงื•ื ื“ืข).
  • ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ Frame API, ื•ื•ืึธืก ืคึผืขืจืคืึธืจืžื– ืคืึธืจื•ื™ืก ื›ืขื–ืฉื‘ืŸ ืคื•ืŸ ื‘ืœืึธืง ืกื™ื–ืขืก ืคึฟืึทืจ ื”ืึทื ื“ืœืขืจืก ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ SIMD ืื•ืŸ ื ื™ื˜-SIMD ื™ื ืกื˜ืจืึทืงืฉืึทื ื–. ืึธืคึผื˜ื™ืžื™ื–ืึทื˜ื™ืึธืŸ ื’ืขืžืื›ื˜ ืขืก ืžืขื’ืœืขืš ืฆื• ืคืึทืจื’ืจืขืกืขืจืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืžื™ื˜ ื‘ืขืขืจืขืš 0.25 MCPS.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืึท ื ื™ื™ึทืข ืžื™ืงืกืขืจ ืžื™ื˜ HiFi4 ืฉื˜ื™ืฆืŸ ืฆื• ืจืขื“ื•ืฆื™ืจืŸ ืึธื“ืขืจ ืคืึทืจื’ืจืขืกืขืจืŸ ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืึทื•ื“ื™ืึธ ื˜ืฉืึทื ืึทืœื– ืื™ืŸ ืึท ื˜ื™ื™ึทืš.
  • ื“ื™ ืคึผืึทืกืึทื‘ื™ืœืึทื˜ื™ื– ืคื•ืŸ ื ื™ืฆืŸ Zephyr RTOS ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ XTOS ื•ื•ื™ ื“ื™ ื™ืงืขืจ ืคึฟืึทืจ ืคื™ืจืžื•ื•ืึทืจืข ืคึฟืึทืจ ื“ื™ ืกื•ื•ื™ื•ื•ืข ื–ืขื ืขืŸ ื™ืงืกืคึผืึทื ื“ื™ื“. ื ื™ืฆืŸ Zephyr ืงืขื ืขืŸ ื‘ืื˜ื™ื™ื˜ื™ืง ืคืึทืจืคึผืึธืฉืขื˜ืขืจืŸ ืื•ืŸ ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ืงืึธื“ ืคื•ืŸ Sound Open Firmware ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–. ื“ื™ ื ื™ื™ึทืข ื•ื•ืขืจืกื™ืข ืžื•ืกื™ืฃ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื’ืขื‘ื•ื™ืจืŸ Zephyr APIs ืคึฟืึทืจ ืœืึธื’ื™ื ื’ ืื•ืŸ ื™ื ื˜ืจืึธื•ื“ื•ืกื™ื ื’ ื“ื™ืœื™ื™ื–. ื’ืึทื ืฅ ื’ืขื‘ื•ื™ืจืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ Zephyr ืื™ื– ื’ืขืจื™ื›ื˜ ืื™ืŸ ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ืžืขืœื“ื•ื ื’.
  • ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื ื•ืฆืŸ ื“ื™ IPC4 ืคึผืจืึธื˜ืึธืงืึธืœ ืคึฟืึทืจ ืงืึทืคึผื˜ืฉืขืจื™ื ื’ ืื•ืŸ ืคึผืœื™ื™ื™ื ื’ ื’ืขื–ื•ื ื˜ ืื•ื™ืฃ ื“ืขื•ื•ื™ืกืขืก ืžื™ื˜ Windows ืื™ื– ื™ืงืกืคึผืึทื ื“ื™ื“ (IPC4 ืฉื˜ื™ืฆืŸ ืึทืœืึทื•ื– Windows ืฆื• ื™ื ื˜ืขืจืึทืงื˜ ืžื™ื˜ DSPs ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ Sound Open Firmware ืึธืŸ ื ื™ืฆืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืฉืึธืคืขืจ).

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’