2012-12-27 22 views
3

作爲我的目標是:在使用LibVLC 如何在Visual Studio C++中使用LibVLC通過網絡傳輸存儲在內存緩衝區中的原始圖像數據?

  • 過程中使用的OpenCV
  • 視頻然後再流過網絡使用LibVLC使得經處理的視頻/圖像從IP相機

    1. 流視頻等連接的客戶端可以實時查看已處理的視頻/圖像(無需首先將視頻/圖像存儲到磁盤)。

    我已經成功地完成前兩項任務,但現在我想從存儲器緩衝器爲源流經網絡所處理的視頻/圖像,存儲器緩衝器是一個可變的IplImage,它可能太變量。 因此,如果有人知道如何使用libvlc傳輸這樣的原始數據,那麼請幫忙,或者指向我正確的方向或示例代碼或鏈接。會很感激..!

  • 回答

    4

    嘗試imem,那麼你可以使用內存輸入作爲流源。通過實現模塊的獲取釋放回調,您可以指定緩衝區的位置並設置解碼呈現時間戳的值。這裏是獲取和釋放的原型:

    int imemGetCallback(void *userdata, const char* cookie, int64_t *dts, int64_t *pts, unsigned *flags, size_t *bufferSize, void **buffer); 
        int imemReleaseCallback(void *data, const char *cookie, size_t bufferSize, void *buffer); 
    
    +0

    這將更適合作爲註釋 – Ren

    +0

    對不起。我應該刪除帖子嗎? – flekz

    +0

    您可以通過單擊編輯按鈕並添加更多關於此方法有用的原因的詳細信息來改善您的帖子。儘量避免發佈依賴鏈接的答案,因爲如果鏈接停止工作,答案變得毫無用處。 – Ren

    相關問題