Agora WebSDK - ошибки и бесконечный цикл изменения статуса при воспроизведении в прямом эфире - PullRequest
0 голосов
/ 23 октября 2019

Я пытаюсь играть в прямом эфире из моего приложения, используя Agora.io WebSDK. При вызове метода play () из объекта stream поток никогда не загружается. Появляется черный экран размером с видео и ничего не происходит. Глядя на консоль, кажется, что происходит бесконечный цикл загрузки / остановки. Сразу после метода воспроизведения происходит перезагрузка и остановка:

Agora-SDK [DEBUG]: [1609713] play(). playdiv null AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [INFO]: [B50E2] Remote stream subscribed with uid  1609713 AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: start vsResHack 
MediaStream { id: "PBbApFYHw8", active: true, onaddtrack: null, onremovetrack: null }
AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: [B50E2] Reload Player playdiv StreamId 1609713 AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: [1609713] Stop stream player with id  1609713 AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: destroy remote Player 1609713 AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: Media Player Status Change Triggered by destroy() 
Object { type: "player-status-change", playerId: 0, mediaType: "video", status: "aborted", reason: "stop", isErrorState: false }
AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: Media Player Status Change Triggered by destroy() 
Object { type: "player-status-change", playerId: 0, mediaType: "audio", status: "aborted", reason: "stop", isErrorState: false }
AgoraRTCSDK-2.9.0.js:2:3436
ErrState: [object Object] app_agoratest.html:60:37
The stream was suspended! app_agoratest.html:66:41

Поток пытается воспроизвести снова:

Agora-SDK [DEBUG]: Media Player Status Change 
Object { type: "player-status-change", playerId: 7, mediaType: "video", status: "paused", reason: "suspend", isErrorState: true }
AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [DEBUG]: Media Player Status Change 
Object { type: "player-status-change", playerId: 7, mediaType: "audio", status: "play", reason: "playing", isErrorState: false }

И затем снова останавливается

Agora-SDK [DEBUG]: [1659733] Close stream with id 1609713 AgoraRTCSDK-2.9.0.js:2:3436
Agora-SDK [INFO]: [B50E2] Unsubscribe stream success AgoraRTCSDK-2.9.0.js:2:3436
ErrState: AbortError: The fetching process for the media resource was aborted by the user agent at the user's request. app_agoratest.html:60:37
Error playing the stream! app_agoratest.html:62:41

Это продолжается в цикле бесконечно. Если кто-то сталкивался с этой или подобной проблемой, я был бы благодарен за подсказки, что могло вызвать эту проблему. Я попробовал свой код как в Firefox, так и в Chrome.

Это мой мой код инициализации:

 client = AgoraRTC.createClient({
                    mode: "live",
                    codec: "h264"
                });
                client.setClientRole("audience");
                client.init(my_app_id, function () {
                    console.log("AgoraRTC client initialized");
                }, function (err) {
                    console.log("AgoraRTC client init failed", err);
                });

И этот мой код для воспроизведения потока:

client.join(null, room_number + "", uid, function (uid) {
    client.on("stream-added", function (t) {
        var i = t.stream;
        client.subscribe(i, {
            video: true,
            audio: true
        })
        client.on("stream-subscribed", {
            muted: "true"
        }, function (e) {
            var t = e.stream;
        });
        i.play("playdiv", function (errState) {
            console.log("ErrState: " + errState);
            if (errState.status !== "aborted") {
                console.log("Error playing the stream!");
                i.resume();
            }
            if (errState && errState.status !== "suspend") {
                console.log("The stream was suspended!");
                i.resume();
            }
        });
    });
}, function (err) {
    console.log("joining the room failed because: ", err);
});

Спасибоза помощь!

1 Ответ

0 голосов
/ 23 октября 2019

Я нашел ошибку, я просто установил неправильный uid .... глупо. Если кто-то сталкивался с этой проблемой, сначала проверьте то же самое.

...