【问题标题】:HTML5 Audio live stream gives connection refused in deviceHTML5 音频直播导致设备连接被拒绝
【发布时间】:2018-03-30 12:43:24
【问题描述】:

我们的 Ionic 3 应用程序中的 MP3 实时音频流与 ionic serve 一起正常工作,但在 Android 上提供 net::ERR_CONNECTION_REFUSED 和 iOS 上提供 NSURLConnection finished with error - code -1100 的设备上运行它。

我的播放器服务:

import {Injectable} from '@angular/core';

@Injectable()
export class PlayerService {
    stream: any;
    promise: any;

    constructor() {
        this.initLiveStream();
    }

    initLiveStream() {
        this.stream = new Audio('http://audio-mp3.ibiblio.org:8000/wcpe.mp3');
    }

    play() {
        this.stream.play();

        this.promise = new Promise((resolve,reject) => {
            this.stream.addEventListener('playing', () => {
                resolve(true);
            });

            this.stream.addEventListener('error', () => {
                reject(false);
            });
        });

        return this.promise;
    };

    pause() {
        this.stream.pause();
    };
}

将直播 URL 替换为 MP3 文件的 URL(例如 https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3)有效。可能问题与没有长度的直播有关,但我不知道如何解决。

【问题讨论】:

    标签: html angular audio ionic2 ionic3


    【解决方案1】:

    我强烈推荐在这里使用Native Streaming Media Plugin。由于某些网络解决方案无法在本机设备上正常运行。

    此插件允许您全屏流式传输音频和视频, iOS 和 Android 上的原生播放器。

    ionic cordova plugin add cordova-plugin-streaming-media
    npm install --save @ionic-native/streaming-media
    

    【讨论】:

    • 我喜欢使用本机播放器的想法,但它完全阻止了我的应用程序的功能,因为它是全屏的。但更重要的是:mp3文件播放,但直播给Media Player Error: Unknown (1) -1005
    • 在原生播放器(插件)上播放直播时出现上述错误?
    • 是的,确实如此。但我刚刚发现问题与流而不是应用程序有关。我尝试了荷兰非常受欢迎的广播电台 (icecast.omroep.nl/3fm-bb-mp3) 的流,它适用于上述代码(即使使用 HTML5 解决方案)。谢谢你的回答。
    • 哦.. 好的太好了:)
    猜你喜欢
    • 1970-01-01
    • 2013-06-03
    • 1970-01-01
    • 1970-01-01
    • 2013-07-05
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多