FAQ

更新时间:
复制 MD 格式

How do I solve the problem that QQ Browser on some Android devices fail to pull and ingest streams?

On some Android devices, such as Huawei P20 and vivo iQOO, QQ Browser may fail to start the X5 kernel when opened for the first time. This causes a WebRTC compatibility issue that prevents stream pulling and ingestion, with the error: Failed to execute 'setRemoteDescription' on 'RTCPeerConnection. To initialize the X5 kernel, perform the following steps:
  1. Connect to a WI-FI network.
  2. Refresh the page and wait about 30 seconds.
  3. Restart the browser and visit the page again. The problem is solved.

Why do some browsers not support Web RTS SDK?

A browser may not support Web RTS SDK for one of the following reasons:
  • The browser does not implement WebRTC-related API operations, or implements them incorrectly. Examples: Microsoft Internet Explorer and UC Browser.
  • The browser supports WebRTC-related API operations but only supports VP8 encoding, not H.264 encoding. Examples: the built-in browser of some Android devices.

Why does Safari on iOS report the error message "Failed to set remote answer sdp"?

The following error message is displayed:
Failed to set remote answer sdp: The order of m-lines in answer doesn't match order in offer.

This error occurs when other WebRTC SDKs are integrated alongside RTS SDK, causing webrtc-adapter conflicts. Starting from V2.2.4, RTS SDK excludes the adapter to prevent this issue. Use RTS SDK V2.2.4 or later with other WebRTC-related SDKs.

  • To integrate RTS SDK by using JavaScript, directly include RTS SDK V2.2.4 or later.
  • To integrate RTS SDK by using npm, add the following code:
    import { AliRTS } from 'aliyun-rts-sdk/dist/aliyun-rts-sdk-without-adapter.js';
    For TypeScript projects, declare the module to obtain type support:
    // Create file typings.d.ts in the root directory of the project.
    declare module 'aliyun-rts-sdk/dist/aliyun-rts-sdk-without-adapter.js' {
      import {AliRTS} from 'aliyun-rts-sdk';
      export {AliRTS}
    }

What should I do if stream pulling fails with error 404, 4008, or 4004?

  1. Stream pulling returns error 404 without a retry: The retry configuration of the player SDK does not affect Real-Time Streaming (RTS) stream pulling retries. This error is usually caused by a stream pulling timeout. Upgrade the player SDK to V7.15.0 or later and verify again.

  2. Stream pulling on the web side reports error 4008 (buffered data timeout): AliPlayer does not support pulling ARTC protocol streams directly. You must use RTS to pull the stream. Troubleshoot the issue as follows:

    • Confirm that you use the correct RTS stream pulling URL or integration method.

    • Check whether Cross-Origin Resource Sharing (CORS) is allowed on the web side.

    • Compare your code with the official demo to rule out interference from parameters left over from a standard live streaming integration.

  3. Playback reports error code 4004: Confirm that Real-Time Streaming (RTS) is enabled for the domain in the console, and use the official test URL to verify that playback works as expected.

What should I do if the H5 playback image turns green after I use the Web RTS SDK to ingest a stream?

  1. Android: Check the app-plus -> distribute -> android configuration in manifest.json, and make sure hardwareAccelerated is set to true to enable hardware acceleration. This fixes a YUV-to-RGB shader bug found in the WebView of some devices.

  2. PC browsers (such as Chrome and Edge): Try disabling hardware acceleration in the browser. Go to the browser settings (chrome://settings or edge://settings/system), find System, turn off Use hardware acceleration when available, and restart the browser to verify the result.

Note

Note: The fix goes in opposite directions on the two platforms — Android requires enabling hardware acceleration, while PC browsers require disabling it. Do not conflate or unify these two instructions.