<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 開源視頻服務(wù)器軟件MJPG-streamer的研究和應(yīng)用

          開源視頻服務(wù)器軟件MJPG-streamer的研究和應(yīng)用

          作者: 時(shí)間:2012-06-11 來源:網(wǎng)絡(luò) 收藏

          2)int input_run(void)
          該函數(shù)使用pthread_create函數(shù)創(chuàng)建工作線程。并使用pthread_detach函數(shù)將該線程設(shè)置為分離狀態(tài)。在input_uvc組件中,input_run函數(shù)創(chuàng)建cam_thread線程,該線程負(fù)責(zé)抓取攝像頭采集的一幀圖像并進(jìn)行格式轉(zhuǎn)換,采用的是V4L2視頻設(shè)備開發(fā)框架。具體工作流程請(qǐng)參考下文描述。
          3)int input_stop(void)
          該函數(shù)通過調(diào)用pthread_cancel(pthread_t tid)函數(shù)實(shí)現(xiàn)主線程取消cain_thread線程(抓取數(shù)據(jù)幀的工作線程),這兩個(gè)線程在同一個(gè)進(jìn)程內(nèi),共享該進(jìn)程的地址空間。主線程通過內(nèi)核發(fā)送信號(hào)以取消工作線程。tid是要取消線程的線程ID。
          4)int input_cmd(int in_cmd_type cmd,int value)
          該函數(shù)的主要功能是對(duì)網(wǎng)絡(luò)攝像頭鏡頭的控制,例如對(duì)色彩、飽和度、對(duì)焦等功能的控制。in_cmd_type結(jié)構(gòu)體定義了對(duì)輸入組件進(jìn)行控制的命令類型,把對(duì)鏡頭的控制命令類型和參數(shù)值傳入此函數(shù)。函數(shù)內(nèi)進(jìn)行匹配,以完成對(duì)鏡頭的控制操作。
          input_uvc組件的私有函數(shù)如下:
          1)void help(void)
          該函數(shù)打印相關(guān)的幫助信息到stderr。
          2)void*cam_thread(void*arg)
          這個(gè)工作線程的作用是抓取一幀數(shù)據(jù)并把它復(fù)制到全局緩沖區(qū)。它的工作流程如圖4所示。

          本文引用地址:http://www.ex-cimer.com/article/148910.htm


          工作流程不斷循環(huán),直至線程退出。退出前使用pthread_cleanup_pop函數(shù)調(diào)用cam_cleanup線程清理函數(shù)。
          3)void cam_cleanup(void*arg)
          該函數(shù)是線程清理函數(shù),線程退出前,使用此函數(shù)釋放在工作線程中被分配的資源。
          2.2 ouput_http輸出組件
          output_http輸出組件中的http.c文件內(nèi)定義了服務(wù)器對(duì)客戶端請(qǐng)求的響應(yīng)。
          send_snapshot、send_stream、send_error、send_file分別定義了如何響應(yīng)客戶端發(fā)送截圖、發(fā)送視頻流、發(fā)送錯(cuò)誤信息、發(fā)送文件的請(qǐng)求信息。
          command函數(shù)執(zhí)行客戶端指定控制命令,并發(fā)送反饋信息。
          server_thread服務(wù)線程的作用是打開一個(gè)TCP socket并等待客戶端連接。如有客戶端鏈接,則為每一個(gè)連接到服務(wù)器的客戶端創(chuàng)建一個(gè)client_thread專門服務(wù)于該客戶端。
          client_thread客戶線程的作用是為連接到服務(wù)器的客戶端服務(wù)。

          3 在嵌入式中的
          本文通過修改源代碼,實(shí)現(xiàn)的額外功能。將作為,于嵌入式開發(fā)。
          系統(tǒng)以S3C2440微處理器為核心,構(gòu)建嵌入式視頻監(jiān)控系統(tǒng)。Arm9將攝像頭拍攝圖像經(jīng)壓縮后傳到Web客戶端,客戶端除了可以查看攝像頭拍攝圖像外,還可以控制云臺(tái)設(shè)備,從而獲得任意角度的圖像。
          采用低端云臺(tái)作為前端的控制設(shè)備,嵌入式器可提供多個(gè)前端設(shè)備接口與多個(gè)云臺(tái)連接。嵌入式器根據(jù)各客戶端的請(qǐng)求,將圖像或云臺(tái)控制信號(hào)傳輸給相應(yīng)的前端設(shè)備。本文只實(shí)現(xiàn)系統(tǒng)的基本模型,采用一個(gè)云臺(tái)設(shè)備??稍诨灸P偷幕A(chǔ)上,擴(kuò)展成多路傳輸。
          3.1 系統(tǒng)硬件平臺(tái)
          系統(tǒng)的硬件平臺(tái)采用的是天嵌的TQ-2440開發(fā)板,CPU處理器是S3C2440AL,主頻為400MHz,最高可達(dá)533MHz,配備256MB的Nand Flash、2 MB的Nor Flash以及64 MB的SDRAM,可滿足系統(tǒng)要求。另外使用了一個(gè)V4L2攝像頭,以及一個(gè)RS485接口的低端云臺(tái)設(shè)備。

          c語言相關(guān)文章:c語言教程


          攝像頭相關(guān)文章:攝像頭原理
          矢量控制相關(guān)文章:矢量控制原理


          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();