看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《vtr198172 (43米的深海)》之銘言: : 我想利用V4L2的範例程式去擷取webcam的影像檔,但在擷取到一整個影像的buffer時, : 可以利用memcpy這函式把buffer寫入到一個檔案裡嗎? : 程式大概是像下面這樣子: : FILE* fp = fopen(file_name, "w"); : memcpy(fp, p, VIDEO_SIZE); : fclose(fp); : 因為我執行後會出現segment fault.. 謝謝各位 首先,先感謝大家的回答,後來我改用 FILE* fp = fopen(file_name, "w"); fwrite (p, sizeof(char), VIDEO_WIDTH*VIDEO_HEIGHT*2, fp); fclose(fp); 就可以了,但是想了解一下為什麼不能用memcpy呢? 第二個問題是,我把擷取的影像寫入檔案內,用ACDSee打開後是黑的 應該是因為我設定V4L2的格式為 V4L2_PIX_FMT_YUYV 的關係, 所以我要怎麼做才能轉成JPEG檔呢? 或是可以直接讓webcam抓出來的影像為RGB呢? 謝謝各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.22.20.210