freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于mjpeg-streamer的遠程視頻監(jiān)控系統(tǒng)(專業(yè)版)

2025-08-08 18:10上一頁面

下一頁面
  

【正文】 …… /*用戶登錄密碼檢查*/ if ( != NULL ) { if ( == NULL || strcmp(, ) != 0 ) { send_error(, 401, username and password do not match to configuration)。client_thread, pcfd) != 0 ) { close(pcfdfd)。/*使服務器監(jiān)聽任意IP*/ /* 3. 將端口,IP與套接字綁定 */ if ( bind(pcontextsd, (struct sockaddr*)amp。之后按照圖5所示的TCP協(xié)議的Socket編程流程,完成綁定,監(jiān)聽,等待連接請求。其請求和應答是一行或多行文本,結束標志是一個換行符(回車、換行)。它是進程內一條獨立的運行路線,是處理器調度的最小單元,又稱為輕量級進程。 視頻傳輸 TCP/IP協(xié)議簇基礎雖然TCP/IP從名字上看,只包含了兩個協(xié)議,但實際上,TCP/IP是一個龐大的協(xié)議族,它包括了各個層次上的眾多協(xié)議。 while ((((ptcur[0] 8) | ptcur[1]) != 0xffc0) amp。 *(ptr++) = (g 255) ? 255 : ((g 0) ? 0 : g)。cinfo, TRUE)。 /*1. 申請并初始化jpeg壓縮對象,同時要指定錯誤處理器*/ = jpeg_std_error (amp。YUYV數(shù)據(jù)保存在videoIn framebuffer;MJPEG數(shù)據(jù)保存在videoIntmpbuffer */ uvcGrab(videoIn)/*抓取的圖像數(shù)據(jù)最終都處理為JPEG格式存儲在全局緩沖區(qū)pglobalbuf */ pthread_mutex_lock( amp。以往的JPEG壓縮技術是直接處理整個畫面,所以要等到整個壓縮圖像傳輸完成后才開始解壓縮成影像畫面,而這樣的方式造成傳輸一個高解析畫面時須耗時數(shù)十秒甚至數(shù)分鐘。(3) YUV與RGB格式的轉換本設計中需要將攝像頭輸出的YUV格式的圖像數(shù)據(jù),通過libjpeg壓縮為JPEG。 格式轉換 RGB與YUV格式簡介(1) RGB格式簡介RGB色彩模式是一種顏色標準,是通過對紅(R)、綠(G)、藍(B)三個顏色通道的變化以及它們相互之間的疊加來得到各式各樣的顏色的。vdbuf, 0, sizeof(struct v4l2_buffer))。 i NB_BUFFER。 } /*5:映射幀緩沖到內存。 } /*4:設置幀率*/ struct v4l2_streamparm *setfps。 V4L2_CAP_READWRITE)) { fprintf(stderr, %s does not support read i/o\n, vdvideodevice)。 int ret = 0。普通文件被映射到進程地址空間后,進程可以像訪問普通內存一樣對文件進行訪問。上層是為用戶編程提供的API,本設計中主要是調用該層的接口函數(shù)。結合之前的內核系統(tǒng)就可以運行了。l 基本的文件系統(tǒng)結構,包含一些必需的目錄比如:/dev, /bin,/etc等l 基本程序運行所需的庫函數(shù),如Glibcl 基本的系統(tǒng)配置文件,比如rcS,inittab等腳本文件l 必要的設備文件支持:/dev/tty*,/dev/fd0l 基本的應用程序,如sh,ls,cp,mv等本設計采用的文件系統(tǒng)為YAFFS(Yet Another Flash Filing System),它是Charles Manning為Aleph One公司設計開發(fā)的,是第一種專門為NAND Flash設計的文件系統(tǒng)。就像Windows中硬盤會有幾個分區(qū)一樣,開發(fā)板的Nand Flash也要分為幾個區(qū),主要是文件系統(tǒng)分區(qū)和內核分區(qū)。而交叉編譯工具鏈是在編譯程序時用到的一系列工具,例如編譯器、匯編器、鏈接器等。抓圖函數(shù)uvcGrab以阻塞方式等待圖像數(shù)據(jù),當有一幀數(shù)據(jù)到達后先處理為JPEG文件,對于YUYV格式的圖像數(shù)據(jù)先要轉換成RGB格式,再調用libpeg壓縮為JPEG文件,對于MJPEG格式的輸入需要插入Huffman數(shù)據(jù)表。它使用V4L2的接口,能實現(xiàn)視頻服務器的功能。二者客戶端程序都需要專門開發(fā),而且要使用面向對象語言開發(fā),一般采用C++或者C。比如,對于銀行系統(tǒng)而言,通過監(jiān)控系統(tǒng),可以對一些突發(fā)事件進行回放,很容易找到事件的相關責任人;在制造企業(yè)中,可以通過監(jiān)控系統(tǒng)實現(xiàn)無人生產(chǎn),對機器進行遠程維修等。而該系統(tǒng)視頻前端(如CCD等視頻信號的采集、壓縮、通訊)較為復雜,穩(wěn)定性、可靠性不高,功耗高,結構復雜,價格高昂。本系統(tǒng)采用模塊化設計方法,使得設計更加簡潔、高效,具有良好的擴展性和易用性,有利于系統(tǒng)升級。重點討論了在嵌入式Linux操作系統(tǒng)下利用linux提供的V4L2 API實現(xiàn)對USB視頻設備的視頻數(shù)據(jù)采集;介紹了YUYV與RGB視頻格式,MJPEG與JPEG文件格式,使用Libjpeg進行JPEG壓縮;在Linux下基于TCP/IP協(xié)議的Socket編程,實現(xiàn)了視頻數(shù)據(jù)的網(wǎng)絡發(fā)送。有線模擬視頻監(jiān)控無法聯(lián)網(wǎng),只能以點對點的方式監(jiān)視現(xiàn)場,并且布線工程量極大?,F(xiàn)場采用的網(wǎng)絡監(jiān)控產(chǎn)品主要包括:網(wǎng)絡攝像機、網(wǎng)絡服務器、網(wǎng)絡視頻接入器等。可以實現(xiàn)持多媒體信息的采集、壓縮、解壓和回放存。B/S方案已經(jīng)有很多非常方便的實現(xiàn)方案。接下來運行輸入和輸出函數(shù),二者都會創(chuàng)建線程,并且會將線程從進程中獨立出來。該芯片具有MMU虛擬內存管理,獨立的8K指令和8K數(shù)據(jù)緩存,支持DSP指令集,支持Cache,LCD控制器,NAND Flash控制器,3通道UART,4通道DMA,帶脈寬調制的4路定時器,I/O端口,RTC (real time clock),8路10位ADC和觸摸屏接口,IIC總線接口,IIS總線接口,USB主機,USB從機,SD座和多媒體卡接口,2路SPI和同步時鐘發(fā)生器。(2) 內核的移植由于內核移植步驟很多,所以這里只列出主要的步驟。 Loopback=1, reset on */之后添加:udelay(20)。1 USER=`id un` LOGNAME=$USER PS1=39。它是linux內核提供給用戶空間的編程接口。5)向系統(tǒng)申請幀緩沖,一般不超過5個。12)關閉視頻設備。 V4L2_CAP_STREAMING)) { fprintf(stderr, %s does not support streaming i/o\n, vdvideodevice)。 } /*如果設置的尺寸超過攝像頭所能設置的最大像素,就恢復為攝像頭能設置的最大值*/ if ((vd != vdwidth)||(vd != vdheight)) { fprintf(stderr, format asked unavailable get width %d height %d \n, vd, vd)。vdrb)。/*映射的指定地址為0即由系統(tǒng)分配 */ if (vdmem[i] == MAP_FAILED) { perror(Unable to map buffer)。 exit(EXIT_FAILURE)。} 5 格式轉換與視頻壓縮攝像頭采集到的視頻數(shù)據(jù)并不能直接發(fā)送給瀏覽器顯示,需要進行圖像格式,文件格式等轉換后才能傳送給瀏覽器顯示,為了減少碼流通常還需要圖像壓縮。采樣后的碼流為:Y0 U0 Y1 V1。它是由靜態(tài)圖像壓縮技術JPEG發(fā)展起來的動態(tài)圖像壓縮技術,可以生成序列化的運動圖像。YUYV格式輸入則調用press_yuyv_to_jpeg函數(shù),JPEG格式輸入則調用memcpy_picture函數(shù)。 static int written。 jpeg_set_quality (amp。 g = (y (88 * u) (183 * v)) 8。}(4) MJPEG轉化成JPEG并復制到全局緩沖區(qū)函數(shù)memcpy_pictureint memcpy_picture(unsigned char *out, unsigned char *buf, int size){ unsigned char *ptdeb, *ptlimit, *ptcur = buf。瀏覽器向服務器請求數(shù)據(jù)以及向瀏覽器發(fā)送數(shù)據(jù)都需也有固定的格式要求,如要有文件類型說明,瀏覽器才能正確區(qū)分不同類型的文件,從而正確顯示出文本,畫面等豐富多彩的內容。若連接成功,雙方就可以實現(xiàn)收發(fā)數(shù)據(jù)??梢詫崿F(xiàn)單擊一個鏈接來訪問其它文檔、圖像或多媒體對象,并獲得關于鏈接項的附加信息。boundary=BOUNDARY。 = AF_INET。 pcfdpc = pcontext。喚醒后,首先它要告訴服務器發(fā)送的是什么類型的數(shù)據(jù),數(shù)據(jù)大小等,例如ContentType: image/jpeg就表示發(fā)送的是JPEG格式的圖像數(shù)據(jù),然后才是完整的JPEG文件。/*新連接的客戶端socket描述符*/ ……}(3) 發(fā)送JPEG數(shù)據(jù)函數(shù)send_streamvoid send_stream(int fd) { unsigned char *frame=NULL, *tmp=NULL。 } pthread_detach(client)。 closelog()。//服務器和客戶端Socket pthread_t client。HTTP請求包括:請求行,請求頭,有時還有請求主體。為了進一步減少處理機的空轉時間,支持多處理器以及減少上下文切換開銷,在進程的基礎上演化出了線程。 Linux Socket編程簡介(1) Socket定義在Linux中的網(wǎng)絡編程是通過Socket接口來進行的。 if (ptcur = ptlimit) return pos。 yuyv += 4。 unsigned char *ptr = line_buffer。cinfo)。 } else { /*JPEG數(shù)據(jù)則補加了Huffman表才拷貝到全局緩沖區(qū)*/ pglobalsize = memcpy_picture(pglobalbuf, videoIntmpbuffer, videoIn)。本設計最終給瀏覽器發(fā)送的是JPEG圖像,所以需要把MJPEG轉換成JPEG。 JPEG壓縮 JPEG與MJPEG文件格式簡介(1) JPEG簡介JPEG是CCITT和ISO定義的一種連續(xù)色調圖像壓縮標準,是一種有損圖像壓縮標準,其基礎是DCT變換(離散余弦變換)。(2) YUV格式簡介YUV是一種顏色編碼方法。 ret = ioctl(vdfd, VIDIOC_DQBUF, amp。 vd = i。 i++) { memset(amp。 setfpstype = V4L2_BUF_TYPE_VIDEO_CAPTURE。vdfmt, 0, sizeof(struct v4l2_format))。 } /*2:獲取攝像頭設備屬性*/ memset(amp。因此本設計采用更為高效的內存映射mmap()。 視頻采集的實現(xiàn) 視頻采集流程視頻設備的一般操作流程:1)打開設備文件??梢愿挠贸壗K端或者PuTTY。為最新版本。由于內核中沒有FL2440開發(fā)板的配置文件,所以本設計選擇與其相近的開發(fā)板的配置文件,再以此為基礎根據(jù)系統(tǒng)需求作相應調整。 tar xvzf armlinuxgccversion –C / 2) 添加交叉編譯工具鏈的搜索路徑到系統(tǒng)PATH環(huán)境變量gedit /etc/profile添加pathmunge /opt/FriendlyARM/toolschain/3) 應用更改source /etc/profile 。并發(fā)服務器線程server_thread負責監(jiān)聽客戶端請求,一旦有請求就創(chuàng)建一個新的客戶端線程專門負責來自此客戶端的HTTP請求。系統(tǒng)采用B/S架構。因此本設計舍棄本方案。傳統(tǒng)的模擬監(jiān)控,通常是利用錄像機將鏡頭的畫面錄下來以備查,而錄像機錄下來的圖像,一是清晰度不夠,二是查詢麻煩,而且錄像帶的保存也是問題,盡管有著種種不足,但因為前幾年的技術限制,這種模式的監(jiān)控系統(tǒng)還是被普遍使用。第三代是全數(shù)字時代。 the Linux Socket Programming based on TCP / IP protocol, the video data sent over the network. Finally focuses on the design of the embedded Web server, the HTTP request and response analysis. And the test result of the system.The modular design approach is used in the system which makes the design more pactable,efficient,and ease to upgrade.Key words ARM9;Linux; Video surveillance目 錄1 緒論 1 視頻監(jiān)控發(fā)展現(xiàn)狀和趨勢 1 課題研究的意義 22 方案選擇與設計 3 C/S方案 3 B/S 方案 3 系統(tǒng)總體方案 43
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1