新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于嵌入式Linux與S3C2440雙USB接口的視頻存儲

        基于嵌入式Linux與S3C2440雙USB接口的視頻存儲

        作者: 時間:2010-09-29 來源:網絡 收藏

          2.2 采集程序設計

        本文引用地址:http://www.104case.com/article/151471.htm

          Vide04設備驅動程序只提供了在系統層面*問硬件設備的一系列讀、寫等函數的,要實現,還需再編寫一個對流采集的應用程序,總體上創建兩個進程:進程一實時掃描串口接收到的信息,通過讀取命名管道內容將編碼信息發送給進程二;進程二根據接收到的編碼做出判斷,區別各種不規范駕駛行為,設定定時器不同時長以控制時間,并將分類存儲到不同目錄中。

          Video4設備驅動程序支持兩種捕獲圖像的方式:內存影射mmap方式和直接讀取read方式。mmap方式采用共享內存方式,數據采集速度快,但這種采集方式需攝像頭硬件支持。結合本文中使用的攝像頭,在圖像采集過程中,采用read方式直接讀取設備文件,將獲得的一幀數據保存到緩沖區中,通過convertframe()函數將pFramebuffer中的數據轉換成完整的JPEG格式的數據存儲到ptframe中,然后調用fWrite()函數將緩沖區中的JPEG格式的數據寫到指定文件中,從而得到一副JPEG格式原始數據塊。部分程序如下:


          對于存儲的控制,本文采用“命名管道”方式,這是一種簡單的進程間通信機制,在同一計算機的不同進程之間,支持可靠的,單向或雙向的數據通信。

          命名管道由視頻存儲進程利用函數int mkfifo(constchar*pathname,mode_t mode)創建,負責讀取由串口掃描接收進程接收到的控制信息。部分程序如下:

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 政和县| 海原县| 嘉义县| 个旧市| 瑞金市| 宝鸡市| 青河县| 北宁市| 周宁县| 沙河市| 陈巴尔虎旗| 嘉鱼县| 崇明县| 聂拉木县| 隆安县| 城口县| 元氏县| 布拖县| 隆尧县| 伊春市| 溆浦县| 湾仔区| 宣城市| 方正县| 济南市| 聂拉木县| 项城市| 陆丰市| 丹棱县| 天峻县| 榆中县| 惠水县| 安西县| 红原县| 岑巩县| 泰安市| 五常市| 贵德县| 兴业县| 安福县| 新疆|