0

我需要使用 qt QNetworkAccessManager 检查到 ipcamera 的 RTSP 链接是否正常工作,现在我有以下代码并且可以正常使用 http 链接,就像我正在使用的 rtps 链接ProtocolUnknownError一样reply->error()

        QUrl url("rtsp://10.25.71.39:554/media/live/1/2");
        bool flag = false;

        int NETWORK_TIMEOUT_ =5000;
        QNetworkAccessManager networkmanager(this);
        QNetworkRequest req = QNetworkRequest(url);
        QNetworkReply *reply = networkmanager.get(req);
        QEventLoop loop;
        QObject::connect(reply, SIGNAL(finished()), &loop, SLOT(quit()));


        QTimer timer;
        connect(&timer,SIGNAL(timeout()),&loop,SLOT(quit()));
        timer.setSingleShot(true);
        timer.start(NETWORK_TIMEOUT_);


        loop.exec();

        if(timer.isActive()==false)
        {
            qDebug()<<"Network timeout No connection";
        }
        if(reply->error() == QNetworkReply::NoError) {
            QString strReply = (QString)reply->readAll();
            flag =true;

       }
        return flag;

如果我将网址更改为

QUrl url("https://stackoverflow.com");

我正在成功重播,没有任何错误。

4

0 回答 0