vlc基础教程繁体.ppt_第1页
vlc基础教程繁体.ppt_第2页
vlc基础教程繁体.ppt_第3页
vlc基础教程繁体.ppt_第4页
vlc基础教程繁体.ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Video Lan Client (VLC) 指導教授:蔡智強 學生: 馮忠信 2005/10/141C.H. Feng Outline nWhat is video stream? nApplication software of video stream-VLC nHow to use VLC in Linux nVLC in our project 2005/10/142C.H. Feng What is video stream? 2005/10/143C.H. Feng 蓬勃發展的網路時代 n各式各樣的裝置透過有線、無線與電信網路隨時 存取網路資源。 qPDA、SmartPhone、NB、PCetc n網路發展的趨勢 q文字與影像資訊的瀏覽 影音多媒體的互動 n引發消費者上網消費的動機 2005/10/144C.H. Feng 串流技術簡介 n多媒體影音檔案 q容量龐大 q整個下載完成才能觀看 q一些手持裝置的資源限制 n串流的形式早已存在 q傳統電視、廣播系統(比訊號) 耗費時間 2005/10/145C.H. Feng 串流架構圖 (1) Internet 2005/10/146C.H. Feng 串流架構圖(2) n資料處理 q檔案大小、封包格式、資料壓縮 q串流系統中主要的部分 n伺服主機 q串流的建立、管理、傳送服務 n用戶端 q接收、重組封包、解壓縮、呈現資料 2005/10/147C.H. Feng 串流應用模式 n即時(On Live) q當多媒體來源資料產生,立即經過上述流程,呈現 在用戶端 q雙向的視訊會議、單向的即時監控 n非即時(On Demand) q預先存放在資料庫,當用戶端提出要求,再傳送 q隨選視訊、WebDVD 2005/10/148C.H. Feng 目前的串流技術 (1) n利用標準的網頁伺服器 q遵守HTTP的通訊協定 q包裝成符合網頁的特定格式 nReal Media Forma(.rm) nWindow Media Player-Advanced Streaming Format(.asf) n優點 q不需要在另外建制串流伺服器 n缺點 q沒辦法決定使用者的網路環境 qTCP connection 2005/10/149C.H. Feng 目前的串流技術 (2) n獨立的串流伺服器 q遵守RTP(Real Time protocol)協定,又稱為RTP streaming qUse UDP protocol n優點 q快速且有效,有效避免延遲 n缺點 q缺乏回報資料遺失的機制,品質下降 q大部分的防火牆會檔掉UDP 2005/10/1410C.H. Feng 目前的串流技術 (3) nRTP plus RTCP & RTSP qRTCP(Real Time Control Protocol),可自動偵測現 在的網路頻寬 qRTSP(Real Time Streaming Protocol),支援server & client之間的雙向溝通,如暫停、快轉、倒帶等 nClientless Streaming q在串流過程中才將撥放程式送到client q支援JAVA平台的行動裝置 2005/10/1411C.H. Feng 串流檔案格式 (1) nMicrosoft MMS (Microsoft Media Server) q具備IE & Media Player(7.0以上) q可傳輸的檔案型態 nASF, AVI, WMVetc q可根據clinet的連線狀況切換不同的通訊協定 nMMS, MMS-UDP, MMS-TCP, HTTP qMMS port number:1755 q壓縮技術:MPEG4 V3 2005/10/1412C.H. Feng 串流檔案格式 (2) nRealNetWorks qRealplayer q最早進入串流市場 q傳輸檔案型 nRM, RAM, RMVB qRMVB n最大的特色是可變動的位元設定, 編碼程式會依據畫面 內容, 自行決定影片壓縮的比例, 可以更有效縮減檔案體積 , 但又不會影響畫質 2005/10/1413C.H. Feng 串流檔案格式 (3) nApple qQuickTime q傳輸檔案型 nIndeo編碼 MOV、Mpeg編碼 MPG q圖片部分 nPIC, JPEG 2005/10/1414C.H. Feng 串流技術所遇到的問題 n串流技術的最高目標 qStreaming media at any where, any time and any device n傳輸錯誤 q封包的掉落 n網路頻寬的變動幅 q網際網路、無線網路 畫面延遲、破損 2005/10/1415C.H. Feng 改善的方式 n錯誤控制機制 (error control) q有效補償畫面破損的情況 n預先備妥各頻寬速的資料 q增加儲存容量、浪費資源 n可調式壓縮編碼 (scalable coding) qEncode once, decode many times 2005/10/1416C.H. Feng Application software of video stream-VLC 2005/10/1417C.H. Feng The VLC project (1) n由一群法國巴黎的學生所發展的,並且在GPL下 公開發行 qEcole Centrale Paris (http:/www.ecp.fr) n可在各種平台上使用 qWindos, Linux, Macetc n可使用在各種多媒體應用上 qMPEG-1, MPEG-2, MPEG-4 files, DVDs, 數位頻 道, live視訊和網路上的unicast & multicastetc 2005/10/1418C.H. Feng 應用架構圖 圖片來源: 2005/10/1419C.H. Feng 程式架構 (1) n溝通介面 q整個程式的起點,使用者通過其中一種介面模組, 來與程式溝通 n資料輸入 q讀取資料來源,分析完後分配給所對應的解碼程式 n影像輸出 q選擇適合的影像格式輸出 2005/10/1420C.H. Feng 程式架構 (2) n聲音輸出 q設定聲音輸出格式,如聲音取樣頻、單聲道或雙 聲道以及暫存記憶體的大小 n外掛模組 q程式相關的外掛模組,由於此模組化的設計可達到 跨平台或相容於各種不同的作業系統。 2005/10/1421C.H. Feng 可接收的input方式 圖片來源: 2005/10/1422C.H. Feng Input data format 圖片來源: 2005/10/1423C.H. Feng 支援的編解碼方式 圖片來源: 2005/10/1424C.H. Feng 影像輸出 圖片來源: 2005/10/1425C.H. Feng VLC的目錄結構 (1) nLibVLC q提供一個與programs溝通的介面 q串流的存取 qAudio & video的輸出 qPlugin的操作 qThread的安排 2005/10/1426C.H. Feng VLC的目錄結構 (2) n/interface q包含使用者互動的程式碼,如ker presses n/playlist q管理playlist的互動,如stop, play, next或隨機錄放 n/input q開啟input module,讀取資料,分析並且傳送給 decoder 2005/10/1427C.H. Feng VLC的目錄結構 (3) n/video_output q初始化video display,從decoder取得所有的 picture以及subpicture,可以選擇性地轉換它們到 其他的format(如YUV轉成RGB),並顯示出來 n/audio_output q初始化audio mixer,例如找到正確的播放頻,並 接著從decoder中重新取樣所接收到的audio frames n/misc q使用在libvlc的其他部分,如thread system, message queue, platform-specific code 2005/10/1428C.H. Feng VLC模組化特性 n模組化特性的好處 q容易的加入新的功能或格式 q可在runtime時載入 q能夠針對不同的環境,提供相對應的特性 n修改的主要目標 qaudio_output、video_output n可以動、靜態的建立module 2005/10/1429C.H. Feng 包含的模組類型(1) nAccess modules q此模組允許VLC讀取不同來源的stream,例如: vcd、dvd或網路的來源,且在runtime的期間分析 stream,以找到最適合的模組 nCodec modules q支援各式各樣codec的模組,包含audio的codec以 及video的codec;而codec是一種壓縮的演算法, 可以減少stream的大小,例如libmpeg2負責 MPEG2的解碼、MAD負責聲音的解碼等。 2005/10/1430C.H. Feng 包含的模組類型(2) nDemuxers q在video串流中,video以及audio是以包裝 (containers)的格式表示 q一個包裝可以包含數種不同codec編碼的stream, Demuxers會從包裝中取出stream,並將stream送 給decoder q例如,一個AVI檔案可以包含壓縮成MPEG-4的 video,或是未壓縮的video。AVI只是儲存的格式 ,而不是壓縮的格式。 2005/10/1431C.H. Feng 包含的模組類型(3) nVideo outputs q此模組允許VLC在螢幕上顯示影像,VLC會針對系 統找到最適合影像輸出的模組。而我們的系統是使 用SDL來輸出影像。 nAudio outputs qVLC會針對系統找到最適合聲音輸出的模組。而我 們的系統是使用OSS來輸出聲音。 2005/10/1432C.H. Feng 包含的模組類型(3) nInterface modules q此模組提供適合的圖形介面或控制介面;一般 Linux系統是使用GTK+所寫的Gnome介面或是 Qt/X11所寫的KDE介面,而我們的系統是使用 Qt/Embedded所寫的介面。 2005/10/1433C.H. Feng VLC模組運作過程 2005/10/1434C.H. Feng How to use VLC in Linux 2005/10/1435C.H. Feng Use VLC in command nThe VLC syntax qvlc input_stream -sout #module1option1=parameter1parameter- option1,option2=parameter2:#module2option1= parameter1 q第一個option一定要設定,其餘的部分則是依據使 用需求來設定 2005/10/1436C.H. Feng 目前可以使用的Module (1) nstandard q可以將串流資料存成檔案,或者透過網路傳送串流 資料 ntranscode q用來將串流資料轉換為不同的格式 nduplicate q將串流資料複製另一個出來 ndisplay q用VLC撥放串流資料 2005/10/1437C.H. Feng 目前可以使用的Module (2) nrtp q將串流資料用RTP的方式傳送也支援RTSP nes q將串流資料中的video & audio分別存成檔案 n假設我們要先轉換串流資料再傳送 qvlc input_stream -sout #transcodeoptions:standardoptions 2005/10/1438C.H. Feng Standard module options (1) naccess: 設定用何種方式傳送串流資料,這個 option一定得設定 qfile: 將串流資料存成檔案 qudp: 透過UDP的方式傳送串流資料 qhTTP: 透過HTTP的方式傳送串流資料 qhTTPS: 加上secured SSL的HTTP qmmsh: 使用Microsoft MMS protocol傳送 qrtp:透過RTP的方式傳送串流資料 2005/10/1439C.H. Feng Standard module options (2) nmux: 使用何種方式來處理串流資料,一定要設定 qts: 處理MPEG2的串流 nvideo支援MPEG 1/2/4, MJPEG, H263, H264, I263, WMV 1/2等格式 naudio支援MPEG, AAC, a52等格式 qps: 處理MPEG2的檔案 nvideo支援MPEG 1/2, MJPEG naudio支援MPEG, a52 2005/10/1440C.H. Feng Standard module options(3) nurl q根據access option來決定url所代表的意義 q如果option是file, url代表檔案存放位置的完整路徑 q如果option是udp or rtp, url代表要傳送的目標網路 位址 q如果option是http, https, mmsh, url代表的是要讓 client連接的網路位址和檔案路徑, syntax = address:port/path 2005/10/1441C.H. Feng Transcode module options (1) nvcodec q用來指定要被轉換的video格式 nvb q設定video bitrate, kbit/s nvenc q設定video編碼格式 nfps q設定framerate, per second nwidth qthe width of video in pixels 2005/10/1442C.H. Feng Transcode module options (2) nheight qthe height of video in pixels nacodec q用來指定要被轉換的audio格式 nab q設定audio bitrate, kbit/s naenc q設定audio編碼格式 nsamplerate q設定samplerate, in HZ 2005/10/1443C.H. Feng Some examples nvlc -vvv input_stream -sout #transcodevcodec =mp4v,acodec=mpga,vb=800,ab=128,deinterlac e:standardaccess=udp,mux=ts,url=239.255.12. 42,sap,name=“TestStream“ nvlc -vvv input_stream -sout #duplicatedst= standardaccess=udp,mux=ts,url=2 ,dst=standardaccess=udp,mux=ts,url=192.168. 1.2 2005/10/1444C.H. Feng VLC in our project 2005/10/1445C.H. Feng 影像輸出模組SDL nSDL (Simple DirectMedia Layer)是一個跨平台多 媒體函式庫,提供快速的使用圖形視框緩衝區 (Framebuffer)和聲音等裝置 n支援多種系統,如Linux, Win32, BeOS and FreeBSD等,是一個應用程式和底層子系統間的介 面,因此SDL函式可保持不變 qLinux可以使用Frame Buffer或是X11 q在Windows上則採用DirectDraw 2005/10/1446C.H. Feng SDL的目錄結構 (1) 2005/10/1447C.H. Feng SDL的目錄結構 (2) nAudio q除了播放8位元、16位元聲音、非立體聲和立體聲 之外,也提供聲音間不同格式間的轉換 nCDROM q提供完整的API來播放CD nEndian q自動偵測系統是Big Endian或Little Endian,並提 供對16位元、32位元、64位元Big Endian或Little Endian讀取與寫入的函式 2005/10/1448C.H. Feng SDL的目錄結構 (3) nEvents qSDL內部事件的處理 nFile q使用標準輸入輸出函式庫,提供對檔案、記憶體做 讀寫動作 nHermes q提供x86處理器下,不同作業系統間組合語言語法 轉換 nMain q程式進入點 2005/10/1449C.H. Feng SDL的目錄結構 (4) nThread q提供簡單的建立新執行緒API及簡單的信號 (semaphore)來達到同步(synchronization)的功能 nTimer q提供查詢經過了多少毫秒、等待多少毫秒的API以 及簡單的計時器。 nVideo q負責建立視窗,影像顯示在螢幕上,以及把接收到 的鍵盤滑鼠及視窗事件轉換成相對的SDL內部事件 。 2005/10/1450C.H. Feng MPEG聲音解碼器 n使用SDL處理聲音的資料會花費大量的時間去計 算MPEG聲音解碼的部分,嚴重影響整個影像的 撥放 nMAD (MPEG Audio Decoder) q支援MPEG-1和MPEG-2的規格 q利用整數運算的方式取代浮點數 2005/10/1451C.H. Feng 遠端遙控監視系統 (1) 2005/10/1452C.H. Feng 遠端遙控監視系統 (2) n新增模組使VLC可以擷取攝影機的影像 qVideo4linux driver n考量主機負擔以及網路頻寬的限制下,影像的轉檔 設定為 2005/10/1453C.H. Feng 遠端遙控監視系統 (3) n/dev/video0 qWebCam裝置的位置。 nnorm=secam q標準的比訊

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论