問:
1:stream 是一個什么概念。是不是特指PVP的輸入和輸出流?一個pvp的初始化過程只需要調(diào)用兩次adi_pvp_OpenStream?一次給輸入一次給輸出? 比如如下函數(shù): ADI_PVP_RESULT adi_pvp_OpenStream ( ADI_PVP_PIPE_HANDLE const hPipe, ADI_PVP_STREAM eStream, ADI_PVP_STREAM_DIR eDirection, void *const pStreamMem, uint32_t nStreamMemSize, uint32_t nElementWidth, ADI_PVP_STREAM_HANDLE * phStream ) 2:另外對于結(jié)構(gòu)體ADI_PVP_STREAM: Enumeration of different stream types in PVP Enumerator: ADI_PVP_STREAM_CAMERA0 Camera stream 0 ADI_PVP_STREAM_CAMERA1 Camera stream 1 ADI_PVP_STREAM_CAMERA2 Camera stream 2 ADI_PVP_STREAM_MEMORY memory stream ADI_PVP_STREAM_STATUS status stream ADI_PVP_MAX_STREAMS Maximum number of streams 這里的Camera sream 0 -3 是對應(yīng)什么呢? 輸出的opf嗎?
答:代碼中PVP有三層概念,最高層是PVP device,目前只有PVP device0一個,根據(jù)它的句柄去初始化及配置下一層的PVP pipe,pipe中分為camera pipe和memory pipe。Pipe之下是stream,stream可以認(rèn)為是與memory相關(guān)的輸入輸出流,Camera pipe中最多可以有三個stream同時工作,對應(yīng)opf0-2三個opf。Memory pipe只有一個,對應(yīng)opf3. 在open camera pipe的stream時,只需要open output stream,因?yàn)閏amera pipe的數(shù)據(jù)是從camera直接過來的,與memory連接的地方就是camera pipe的輸出。Open memory stream時要input 和output同時open,因?yàn)閙emory stream的數(shù)據(jù)輸入和輸出都是memory。 |