2015-04-05 294 views
0

有誰知道一個鏈接,我可以捕獲RTSP流來測試視頻採集與rtsp視頻源?我用usb攝像頭和網絡攝像頭嘗試過,但我想用RTSP流測試它。通過RTSP流式傳輸opencv視頻

這裏是源:

#include "opencv2/highgui/highgui.hpp" 
#include <iostream> 

using namespace cv; 
using namespace std; 

int main(int argc, char* argv[]) 
{ 
    VideoCapture cap("rtsp:\\ANYTHING,PLEASE"); // open the video file for reading 

    if (!cap.isOpened()) // if not success, exit program 
    { 
     cout << "Cannot open the video file" << endl; 
     return -1; 
    } 

    //cap.set(CV_CAP_PROP_POS_MSEC, 300); //start the video at 300ms 

    double fps = cap.get(CV_CAP_PROP_FPS); //get the frames per seconds of the video 

    cout << "Frame per seconds : " << fps << endl; 

    namedWindow("MyVideo",CV_WINDOW_AUTOSIZE); //create a window called "MyVideo" 

    while(1) 
    { 
     Mat frame; 

     bool bSuccess = cap.read(frame); // read a new frame from video 

     if (!bSuccess) //if not success, break loop 
     { 
         cout << "Cannot read the frame from video file" << endl; 
         break; 
     } 

     imshow("MyVideo", frame); //show the frame in "MyVideo" window 

     if(waitKey(30) == 27) //wait for 'esc' key press for 30 ms. If 'esc' key is pressed, break loop 
     { 
       cout << "esc key is pressed by user" << endl; 
       break; 
     } 
    } 

    return 0; 

} 

回答

1


你可以簡單地生成VideoLAN的VLC一個RTSP流。
媒體/流/添加任何視頻文件/流/ RTSP添加/端口和路徑/視頻H.264 + MP3(MP4)/流。
然後,您將獲得一個類似rtsp://127.0.0.1:8554/vid的視頻流。當然,您可以使用VLC或OpenCV讀取該流。
dAAvid

+0

Tnx,嘗試了一段時間,它工作正常。我已經設法通過VLC將http流轉換爲rtsp – 2015-04-24 21:03:57