2016-05-23 369 views
0
bool CVideoCap::m_InitializeVidWriter(VideoCapture objVidCap,VideoWriter objVidWriter,string FileName) 
{ 
    m_GetFrameDimensionandFPS(objVidCap); 
    string vid; 
    strcpy(FileName,vid); 
cout<< "FileName = " << FileName<<endl; 
    int codec = CV_FOURCC('M', 'J', 'P', 'G'); 
    bool bVidWriterOpenCheck = objVidWriter.open(vid, codec,m_FPS, 
           Size(this->m_nframe_width,m_nframe_height), true); 
    cout<< "bVidWriterOpenCheck = " << bVidWriterOpenCheck<<endl; 
    return bVidWriterOpenCheck; 

} 

在此videowriter開啓功能,當我通過一個字符串變量,它就會失敗傳遞文件名的路徑,但是當我給硬編碼路徑直接進入論證它的工作原理。 請指教一下。VideoWriter.open是越來越失敗每次

回答

0

在第4行中,字符串vid尚未初始化。 在第5行的strcpy調用中,第二個變量即vid充當源和FileName作爲目標。 試試這個,

strcpy(vid,FileName); 

現在應該工作。