shiguredo / sora-ios-sdk

WebRTC SFU Sora iOS SDK
https://sora-ios-sdk.shiguredo.jp/
Apache License 2.0
41 stars 8 forks source link

シグナリング時に SignalingChannel ERROR: decode failed が発生する #40

Closed soudegesu closed 4 years ago

soudegesu commented 4 years ago

サマリ

Sora iOS SDK 2020.4 において、シグナリング時に SignalingChannel ERROR: decode failed がログに出力されます。なお、 2020.3 では発生していません。

環境

期待する動作、現象

エラーのログが表示されないこと。

実際の動作、現象

シグナリング時に以下のログが出力されます。

SignalingChannel ERROR: decode failed (The data couldn’t be read because it isn’t in the correct format.) =>
{"audio":true,"channel_connections":3,"channel_downstream_connections":1,"channel_upstream_connections":2,"client_id":"xxxxxxx","connection_id":"2fe5a218-0c99-410b-872e-7529f8c93d84","event_type":"connection.created","metadata":{"username":"xxxxxxx"},"minutes":0,"role":"sendrecv","turn_transport_type":"udp","type":"notify","video":true}

再現手順

以下2種類のクライアントから同じチャンネルに対して以下条件にて接続を行いました。

  1. iOS端末

    • role: sendonly
    • videoCodec: h264
    • videoCapturerOption: .custom
    • videoBitrate: 4096
    • metadata: 認可用のメタデータ
    • videoEnabled: true
    • audioEnabled: true
    • multistreamEnabled: true
  2. PCブラウザ ( Mac / Chrome / Sora JavaScript SDK 1.16.0 )

    • role: sendrecv
    • videoCodec: VP8
    • videoBitrate: 4096
    • audioCodec: OPUS
    • audioBitrate: 510
    • multistream: true
    • simulcast: true
    • simulcastQuarity: middle
    • metadata: 認可用のメタデータ
szktty commented 4 years ago

@soudegesu シグナリングの role に sendrecv を受け付けなくしたこと (upstream/downstream のみ有効) がデコード失敗の原因だと思われます。申し訳ありません。 ご提示されたシグナリングは通知 (type: notify) ですので、接続そのものに影響はないと思われます。

早急に対処しますので少々お待ち頂ければ幸いです。

soudegesu commented 4 years ago

ご確認いただきありがとうございます。 はい。仰る通りで、接続自体に問題はありませんでした。 引き続きご対応のほどよろしくお願いいたします。

szktty commented 4 years ago

@soudegesu 本事象を修正した 2020.4.1 をリリースしました。フィードバックありがとうございました。

soudegesu commented 4 years ago

iOS SDK 2020.4.1 を取り込み、ログが出力されないことを確認致しました。 ご対応いただきましてありがとうございました。 本issueはクローズさせていただきます。