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

正文內(nèi)容

基于s3c2440的ip可視電話的設(shè)計與實現(xiàn)-資料下載頁

2024-11-12 15:04本頁面

【導(dǎo)讀】早期的可視電話基于公共電話交換網(wǎng),但由于傳輸速率不能滿足高性。能視頻通信的要求,已經(jīng)逐步退出了歷史舞臺。成本;在軟件設(shè)計方面,充分使用了“自頂向下,逐步細(xì)化”的分層設(shè)計方法,將軟件分解為應(yīng)用層、中間件和底層,這使其具有了很強的可移植性和擴展性,的多線程機制也為電話終端中音視頻相關(guān)的多個任務(wù)的并發(fā)執(zhí)行搭建了平臺??梢曤娫拸母拍钐岢觥⒓夹g(shù)發(fā)展到市場啟動,經(jīng)歷了種種坎坷和曲折。在中國,可視電話市場長期處于雷聲大、雨點小的境地,市場遲遲未能啟動。用,而可視電話恰恰就處于這不幸的行列。1964年,美國貝爾實驗室正式提出可視電話的相關(guān)。但是,由于傳統(tǒng)網(wǎng)絡(luò)和通信技術(shù)條件的限制,可視電話一直沒有取得實質(zhì)。直到80年代后期,隨著芯片技術(shù)、傳輸技術(shù)、數(shù)字通信、視頻編解碼。出水面,走向人們的視野。電話只能是無源之水、無本之木。語音和圖像在傳輸時,必須經(jīng)過壓縮編

  

【正文】 N1 2R 802 1K1 2R 8058R ( 1% )1 2R 803 1K1 2R 8068R ( 1% )AVSS01nELCS2EECS3EESK4EEDATAOUT5EEDATAIN6nCHIPSEL7DVSS18DVDD19DVSS1A10DMARQ211nDMACK212DMARQ113nDMACK114DMARQ015nDMACK016nCSOUT17SD1518SD1419SD1320SD1221DVDD222DVSS223SD1124SD1025S D 926S D 827nM E M W28nM E M R29I N T R Q 230I N T R Q 131I N T R Q 032nI O C S 1633nM E M C S 1634I N T R Q 335nS B H E36S A 037S A 138S A 239S A 340S A 441S A 542S A 643S A 744S A 845S A 946S A 1047S A 1148nR E F R E S H49S A 1250SA1351SA1452SA1553SA1654DVSS355DVDD356DVSS3A57SA1758SA1859SA1960nIOR61nIOW62AEN63IOCHRDY64SD065SD166SD267SD368DVDD469DVSS470SD471SD572SD673SD774RESET75nT E S T76nS L E E P77nB S T A T / nH C 178D I +79D I 80C I +81C I 82DO+83DO84AVDD285A V S S 286T X D +87T X D 88A V S S 189AVDD190R X D +91R X D 92R E S93A V S S 394AVDD395A V S S 496X T A L 197X T A L 298nL I N K E D / nH C 099nL A N L E D100U 803C S 8900A C Q 3V D D 33V D D 33V D D 33V D D 33V D D 33V D D 33LINKLAN(10BT_RD)(10BT_RD+)(10BT_TD)(10BT_TD+)nW A I TnG C S 3R E S E TL nW B E 1E I N T 9L A D D R 0L A D D R 1L A D D R 2L A D D R 3L A D D R 4L A D D R 5L A D D R 6L A D D R 7L A D D R 8L A D D R 9L A D D R 10L A D D R 11L A D D R 12L A D D R 13L A D D R 14L A D D R 15L A D D R 16L A D D R 17L A D D R 18L A D D R 19LDATA0LDATA1LDATA2LDATA3LDATA4LDATA5LDATA6LDATA7L D A T A 8L D A T A 9LDATA10LDATA11LDATA12LDATA13LDATA14LDATA15T D +1T D 2C T T3C H S G N D4C H S G N D5C T R6R D +7R D 8C O N 801R J 45nM E M RnM E M WT D +T D R D +R D nI O R _PnI O W _PV e r s io n 1 .0 βE T H E R N E T9 / 1 4 圖 以太網(wǎng)接口 30 第四章 S3C2440 的 IP 可視電話軟件設(shè)計 第二章給出的軟件設(shè)計方案中將整個軟件自頂向下地設(shè)計成三個部分:應(yīng)用層、中間件和底層,使軟件結(jié)構(gòu)清晰、層次分明、易于理解。其中,應(yīng)用層實現(xiàn)了可視 IP 電話具體的視頻通信功能;中間件是特指一些函數(shù)庫和軟件模塊,它們通過調(diào)用底層硬件驅(qū)動程序,為應(yīng)用層提供了一系列簡潔的訪問底層硬件的接口,使應(yīng)用層不需要了解驅(qū)動層接口的細(xì)節(jié)就能快速實現(xiàn)特定的功能;底層軟件包括 Bootloader 和 Linux 內(nèi)核,內(nèi)核中的設(shè)備驅(qū)動程序為中間件 提供了訪問硬件設(shè)備的接口,底層軟件一般通過移植的方式實現(xiàn),在第三章的硬件測試中已經(jīng)詳細(xì)討論。本章主要闡述中間件和應(yīng)用層軟件的設(shè)計與實現(xiàn)。 軟件總體設(shè)計 軟件總體設(shè)計包括中間件和應(yīng)用層軟件的設(shè)計。前者包括四個軟件模塊:視頻采集和顯示模塊、視頻編解碼模塊、音頻采集和播放模塊和網(wǎng)絡(luò)實時傳輸模塊,它們?yōu)閼?yīng)用層軟件提供了音視頻處理和收發(fā)網(wǎng)絡(luò)數(shù)據(jù)包的函數(shù)接口;后者即為主程序設(shè)計,實現(xiàn)了視頻采集編碼后發(fā)送、視頻接收解碼后顯示、音頻采集和發(fā)送以及音頻接收和播放四個任務(wù)的并發(fā)執(zhí)行,滿足了可視 IP 電話終端一邊采集己方 音視頻從網(wǎng)絡(luò)發(fā)送,一邊從網(wǎng)絡(luò)接收對方音視頻播放和顯示的需求。下面幾節(jié)將詳細(xì)闡述了中間件和應(yīng)用層軟件的實現(xiàn)。 視頻采集和顯示模塊 視頻采集和顯示模塊基于 Linux 的 V4L2(Video 4 for Linux 2,一種 Linux 視頻編程接口 )架構(gòu)實現(xiàn),包括采集和顯示兩個子模塊。 V4L2 架構(gòu) V4L2 是 Linux 提供的一個視頻處理編程接口,包括視頻的采集和顯示、大小調(diào)整、顏色空間的轉(zhuǎn)換等處理,針對開發(fā)視頻應(yīng)用軟件的工程師來說,只需使用這些接口就可快速的實現(xiàn)視頻采集和顯示等功能。整 體架構(gòu)如圖 所示, V4L2 通過調(diào)用 CSI、 I2C、預(yù)前處理器 PrP、后處理器 PP 和 LCDC 等硬件模塊驅(qū)動,為上層應(yīng)用提供了視頻捕獲和視頻顯示的編程接口。 視頻采集和顯示模塊的實現(xiàn) 視頻采集模塊的流程如圖所示,整個過程通過調(diào)用 V4L2 編程接口實現(xiàn),首先打開采集設(shè)備并適當(dāng)?shù)脑O(shè)置采集格式和幀率以及需要采集的圖像數(shù),然后分配 31 存放采集圖像的幀緩沖區(qū)并開始采集,采集完一幀之后將結(jié)果移到幀緩沖區(qū)中,直至采集完所有的圖像幀之后再關(guān)閉視頻采集設(shè)備。顯示模塊的流程與之類似,只是操作對象變成了視頻顯示設(shè)備,主要 有 2 處不同:首先,需要設(shè)置輸出圖像的裁剪范圍,因為輸出 LCD 的大小可能和需要顯示的圖像的大小不一致,需要將待顯示的圖像裁剪成 LCD 的大?。黄浯?,需要設(shè)置一幀圖像在 LCD 上顯示時間。 結(jié)合模塊封裝思想,筆者實現(xiàn)了視頻采集和顯示模塊,采集模塊包括頭文件mxc_v4 和實現(xiàn)文件 ,前者用于相關(guān)常量和結(jié)構(gòu)體的定義以及函數(shù)的聲明,后者定義了前者聲明的函數(shù);顯示模塊也由頭文件 和實現(xiàn)文件 組成。 打 開 視 頻 采 集 設(shè) 備設(shè) 置 視 頻 采 集 的 格 式在 內(nèi) 核 中 請 求 圖 像 緩 沖 區(qū) , 并 通過 內(nèi) 存 機 制 將 其 映 射 到 用 戶 空 間將 申 請 的 內(nèi) 存 加 入 到視 頻 采 集 隊 列啟 動 視 頻 采 集將 采 集 到 的 視 頻 圖 像 從 內(nèi) 核 轉(zhuǎn) 移到 閾 值 有 映 射 關(guān) 系 的 用 戶 空 間采 集 視 頻停 止 采 集 圖 視頻采集流程圖 usb 攝像頭驅(qū)動,需要 usb 驅(qū)動( host 端的 usb 驅(qū)動)的支持,也就是說,要先安裝 usb 驅(qū)動,然后安裝攝像頭驅(qū)動,好在新版本的 linux 內(nèi)核都已經(jīng)支持usb 設(shè)備了,在 makemenu 的時候,選中進(jìn)行配置。 usb攝像頭通過傳感器獲取圖像數(shù)據(jù)信息,經(jīng)過編碼過程,最后到達(dá) usb 控制器,最后傳輸?shù)? pc host。在傳輸?shù)?pc host 中是要用到 urb( usb請求塊)和 usb 設(shè)備進(jìn)行通信。 32 v4l 是 linux 中提供的一個音 視頻接口規(guī)范,所有的音視頻設(shè)備的驅(qū)動編寫要用的這些接口,例如: (1)程序中定義的數(shù)據(jù)結(jié)構(gòu) struct video_capability grab_cap。 struct video_picture grab_pic。 struct video_mmap grab_buf。 struct video_mbuf grab_vm。 這些數(shù)據(jù)結(jié)構(gòu)都是 Video4Linux 支持的,它們的用途 如下: ◆ video_capability 包含攝像頭的基本信息,例如設(shè)備名稱、 支持的最大最小分辨率、信號源信息等,分別對應(yīng)著結(jié)構(gòu)體中成員變量 n a m e [ 3 2 ] 、 m a x w i d t h 、 maxheight、 minwidth、 minheight、 channels(信號源個數(shù) )、 type 等; ◆ video_picture 包含設(shè)備采集圖象的各種屬性,如 brightness(亮度 )、hue(色調(diào) )、 contrast(對比度 )、 whiteness(色度 )、 depth(深度 )等 。 ◆ video_mmap 用于內(nèi)存映射; ◆ video_mbuf 利用 mmap 進(jìn)行映 射的幀信息,實際上是輸入到攝像頭存儲緩沖中的幀信息,包括 size(幀的大小 )、 frames(最多支持的幀數(shù) )、 offsets(每幀相對基址的偏移 )。 在 Iinux 系統(tǒng)下開發(fā)符合 VideoforLinux 標(biāo)準(zhǔn)的 USB 攝像頭驅(qū)動的方法,并對該標(biāo)準(zhǔn)提出“不間斷采集”的改進(jìn)思路,配合雙 URB、雙幀緩沖等方法,提高采集速度。 Linux 設(shè)備驅(qū)動 USB 攝像頭 VideoforLinux 不間斷采集 USB攝像頭以其良好的性能和低廉的價格得到廣泛應(yīng)用。同時因其靈活、方便的特性,易于集成到嵌入式系統(tǒng)中。但是如果使用現(xiàn)有的符 合 VideoforLinux 標(biāo)準(zhǔn)的驅(qū)動程序配合通用應(yīng)用程序,難以充分利用 USB 帶寬,幀速不高,不易滿足實時監(jiān)控等要求。本文首先介紹在 Linux 系統(tǒng)下 USB 攝像頭驅(qū)動編制的一般方法,然后說明在此基礎(chǔ)上如何提高幀速。 Linux系統(tǒng)中的 USB 攝像頭驅(qū)動程序 USB 設(shè)備驅(qū)動程序完全符合通用設(shè)備驅(qū)動的準(zhǔn)則,不同的是內(nèi)核提供了一些特別的 API 函數(shù),方便驅(qū)動注冊、銷毀自己,例如 usb_reSister()和usb_dereSister(); 2. 4版的內(nèi)核還提供了對于 hotplug 的支持。 33 USB 攝像頭驅(qū)動的 一般編寫方法 攝像頭屬于視頻類設(shè)備。在目前的 Linux 核心中,視頻部分的標(biāo)準(zhǔn)是VideoforLinux(簡稱 V4L)。這個標(biāo)準(zhǔn)其實定義了一套接口,內(nèi)核、驅(qū)動、應(yīng)用程序以這個接口為標(biāo)準(zhǔn)進(jìn)行交流。目前的 V4L 涵蓋了視、音頻流捕捉及處理等內(nèi)容, USB 攝像頭也屬于它支持的范疇。 因此, USB 攝像頭的驅(qū)動應(yīng)當(dāng)與內(nèi)核提供的視頻驅(qū)動掛鉤。即首先在驅(qū)動中聲明一個 video_device 結(jié)構(gòu),并為其指定文件操作函數(shù)指針數(shù)組. fops,向系統(tǒng)注冊。在應(yīng)用程序發(fā)出文件操作的相關(guān)命令時,核心根據(jù)這些指針調(diào)用相應(yīng)函數(shù),并將該結(jié)構(gòu)作 為參數(shù)傳遞給它們。這樣,就完成了驅(qū)動和核心之間的通信。例如: staticstructvideo_devicevdev_template= {?? }; //聲明 video_device,指出掛接驅(qū)動 staticstructfile_operationsov511_fops= {?? }; //聲明本驅(qū)動的文件操作函數(shù)指針 structvideo_device*vdev= video_devdata(file); //從文件指針中提取出 video_device 結(jié)構(gòu) 在 video_device 結(jié)構(gòu)中,有一個私有指針 priv,可以將它指向一塊保留內(nèi)存。在這塊內(nèi)存中,保存著本驅(qū)動、本設(shè)備的相關(guān)初始化信息。這塊內(nèi)存的申請、初始化、指針指向等工作都是在 USB 驅(qū)動的枚舉函數(shù) .probe 中完成。這樣,在枚舉函數(shù)將控制權(quán)返還給系統(tǒng)后,因為內(nèi)核不銷毀保留內(nèi)存,所以驅(qū)動
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1