Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Persyaratan sistem
Bagian ini mencakup persyaratan sistem dasar untuk menggunakan Amazon Kinesis Video Streams dengan WebRTC, termasuk persyaratan jaringan dan lingkungan. Ini juga mencakup informasi tentang koneksi debugging.
Persyaratan jaringan
Persyaratan jaringan umum untuk titik akhir layanan saluran pensinyalan untuk Kinesis Video Streams dengan WebRTC adalah:
Panggilan HTTPS ke titik akhir yang dihosting di
https://*.kinesisvideo.{region}.amazonaws.com
WebSocket Integrasi dengan Endpoint
wss://*.kinesisvideo.{region}.amazonaws.com
STUN
server distun:stun.kinesisvideo.{aws-region}.amazonaws.com:443
TURN
server diturn:_._.kinesisvideo.{aws-region}.amazonaws.com:443
danturns:_._.kinesisvideo.{aws-region}.amazonaws.com:443
catatan
IPv6 alamat saat ini tidak didukung untuk STUN
dan TURN
server.
Protokol yang digunakan antara rekan-rekan sebagai bagian dari RTCPeer Koneksi dapat berupa berbasis TCP atau UDP.
Sebagian besar aplikasi mencoba untuk membangun peer-to-peer koneksi langsung dengan menentukan alamat IP untuk setiap rekan, serta port dan protokol yang akan dipertukarkan sebagai kandidat ICE. Kandidat ini digunakan untuk mencoba terhubung satu sama lain menggunakan kandidat ini. Mereka akan mencoba setiap pasangan sampai koneksi dapat dibuat.
Lingkungan jaringan
Jika pesan dari penampil telah dikirim ke master dan log seperti No
valid ICE candidate
direkam, maka tidak ada rute koneksi yang valid telah ditemukan. Ini bisa terjadi jika ada firewall yang mencegah koneksi langsung, atau jika jaringan tidak dapat dijangkau.
Lakukan hal berikut untuk memecahkan masalah konektivitas:
-
Jika Anda tidak menggunakan
TURN
di sisi master, pastikan untuk mengaktifkanTURN
.TURN
diaktifkan secara default di C SDK. Di JavaScript SDK, pilihSTUN/TURN
atauTURN only
di NAT Traversal. -
Untuk jaringan terbatas, seperti jaringan perusahaan, coba jaringan lain yang tersedia (kabel atau nirkabel).
Jika Anda terhubung ke VPN, putuskan sambungan darinya.
catatan
Anda dapat mengabaikan 403 Forbidden IP
kesalahan yang dikembalikan oleh Kinesis Video Streams TURN server. Server menolak pasangan kandidat ICE yang berisi localhost
IPs, seperti 192.168.*
atau10.0.0.*
.
Ini dapat menyebabkan beberapa, tetapi tidak semua, pasangan kandidat ICE gagal.
Debugging koneksi yang sedang berlangsung
Ada beberapa area yang dapat menyebabkan masalah dengan koneksi WebRTC yang mapan dan berkelanjutan, tetapi jaringan adalah yang paling umum.
Anda dapat mengonfirmasi log level VERBOSE dari SDK dengan menyetelnya export
AWS_KVS_LOG_LEVEL=1
sebagai variabel lingkungan.
catatan
Jika tidak ada pasangan kandidat yang ditemukan dalam batas waktu yang ditentukan, agen ICE mengembalikan status kesalahan. 0x5a00000d
Untuk informasi tambahan tentang tingkat log, lihat GitHub
export AWS_KVS_LOG_LEVEL=1 ./kvsWebrtcClientMasterGstSample TestChannel
Anda akan melihat log seperti berikut ini. Dari log ini, Anda dapat mengonfirmasi kandidat Interactive Connectivity Establishment (ICE) (alamat IP dan port) dan pasangan kandidat yang dipilih.
2023-02-13 05:57:16 DEBUG iceAgentReadyStateSetup(): Selected pair w1UdV9fE+_/CuBel1pl, local candidate type: srflx. Round trip time 7 ms. Local candidate priority: 1694498815, ice candidate pair priority: 7240977859836116990 2023-02-13 05:57:16 INFO onConnectionStateChange(): New connection state 3 2023-02-13 05:57:16 DEBUG rtcPeerConnectionGetMetrics(): ICE local candidate Stats requested at 16762678365731494 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate IP Address: XXX.XXX.XXX.XXX 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate type: srflx 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate port: 38563 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate priority: 1694498815 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate transport protocol: udp 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate relay protocol: N/A 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Local Candidate Ice server source: stun.kinesisvideo.ap-northeast-1.amazonaws.com 2023-02-13 05:57:16 DEBUG rtcPeerConnectionGetMetrics(): ICE remote candidate Stats requested at 16762678365732111 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Remote Candidate IP Address: XXX.XXX.XXX.XXX 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Remote Candidate type: srflx 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Remote Candidate port: 45867 2023-02-13 05:57:16 VERBOSE signalingClientGetCurrentState(): Signaling Client Get Current State 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Remote Candidate priority: 1685921535 2023-02-13 05:57:16 DEBUG logSelectedIceCandidatesInformation(): Remote Candidate transport protocol: udp