久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨角獸企業(yè)100強
全世界各行各業(yè)聯(lián)合起來,internet一定要實現(xiàn)!

VB環(huán)境多媒體壓縮數(shù)據(jù)流播放技術(shù)

2004-02-23 eNet&Ciweek

  (4).MPEG數(shù)據(jù)流的縮放顯示

  放大或縮小MPEG圖像是各種多媒體播放軟件中常用的圖像顯示處理手段。VisualBasic中對于靜態(tài)圖片進行縮放處理可以使用Image控件,將控件的Stretch屬性設(shè)為True,則裝入的圖片會改變比例適應(yīng)Image控件的范圍,因此對圖片的縮放處理變成對Image控件的Height、Width屬性值的大小變化。由于控件的尺寸發(fā)生變化,顯示的點距不能改變,造成顯示點的像素點與圖片不能完全一一對應(yīng),顯示質(zhì)量明顯變差。只有Image控件才能對圖片進行縮放,如果PictureBox控件不足以顯示整幅圖象,則裁剪圖象以適應(yīng)控件的大小。要想實現(xiàn)用PictureBox控件實現(xiàn)對輸出MPEG圖像的縮放,必須改變MPEG數(shù)據(jù)流的輸出比例,在調(diào)節(jié)PictureBox控件的尺寸去適應(yīng)輸出的MPEG圖像。實際上,在上面的第3小節(jié)里,為了顯示輸出MPEG圖像已經(jīng)這樣做了。只不過用的是讀取出的MPEG圖像OldWidth、 OldHeight,下面給出一個以原來的1/2大小輸出MPEG圖像的例子。

pVW.width = OldWidth / 2
pVW.Height = OldHeight / 2
picTV.Left = 135
picTV.Top = 135
picTV.width = pVW.width * 15
picTV.Height = pVW.Height * 15
pVW.Owner = picTV.hWnd

  在放大或縮小MPEG圖像的尺寸時要注意保持Width、Height的比例一致,以免輸出的圖像變形。

  (5).鼠標(biāo)拖動播放MPEG數(shù)據(jù)流

  用鼠標(biāo)拖動滾動條隨意播放MPEG數(shù)據(jù)流是Windows中多媒體播放機播放VCD的常用技術(shù)。VB中的Slider 控件是包含滑塊和可選擇性刻度標(biāo)記的窗口,可以通過拖動滑塊,用鼠標(biāo)單擊滑塊的任意一側(cè)或者使用鍵盤移動滑塊。在選擇離散數(shù)值或某個范圍內(nèi)的一組連續(xù)數(shù)值時,Slider 控件十分有用。通過將滑塊移動到刻度標(biāo)記處,可以對MPEG數(shù)據(jù)流進行定位播放。在窗體上放置一個Slider 控件Slider 1,設(shè)置好光標(biāo)移動的最大步長LargeChange=5,最小步長SmallChange=1,最大移動范圍Max=50,實現(xiàn)程序如下:

Private Sub Slider1_Scroll()

注釋:
Dim pMP As IMediaPosition
Dim v As Double

If Not bOpen Then Exit Sub

bSeeking = True
pMC.Pause

Set pMP = pMC

v = Slider1.Value - Slider1.Min
v = v / Slider1.Max * pMP.Duration
pMP.CurrentPosition = v
Set pMP = Nothing

pMC.Run
注釋:
End Sub

  (6).MPEG數(shù)據(jù)流采集時間的獲取

  VisualBasic里提供了一個函數(shù)FileDateTime可用來獲取文件建立或是更新的日期與時間。定義一個局部對象 pMP 為IMediaPosition的新實例,令pMP = pMC,給對象引用pMP賦值;再定義兩個Double型的變量curpos 、length,將pMP.CurrentPosition賦給curpos,取得MPEG數(shù)據(jù)流的當(dāng)前相對位置時間,將pMP.Duration 賦給length,取得MPEG數(shù)據(jù)流的時間長度值;就能獲取MPEG數(shù)據(jù)流相對的采集時間。根據(jù)MPEG采集文件建立的特性將兩個日期時間作加法或減法則可以得到MPEG數(shù)據(jù)流的采集時間。

  在整個MPEG的播放過程中,都要求實時顯示MPEG數(shù)據(jù)流的采集時間,可定義一個獲取采集時間的函數(shù),采用Timer控件的Timer事件來驅(qū)動。通過引發(fā) Timer 事件,Timer 控件可以有規(guī)律地隔一段時間執(zhí)行一次函數(shù)獲取到MPEG數(shù)據(jù)流的采集時間。

  4.結(jié)束語

  將成熟的圖像壓縮技術(shù)用于電視監(jiān)視監(jiān)控領(lǐng)域具有十分重要的意義。例如:在銀行的監(jiān)視監(jiān)控系統(tǒng)中,由于客戶(銀行)身份的特殊性,在對冒領(lǐng)他人存款、銀行失竊或被搶劫等擾亂銀行正常工作秩序的事件的調(diào)查及其處理中,采集的壓縮數(shù)據(jù)流是很重要的辦案線索與證據(jù)。在該系統(tǒng)中不僅要求監(jiān)視畫面清晰,采集的數(shù)據(jù)冗余度低,MPEG數(shù)據(jù)流的播放技術(shù)也是很重要的。本文介紹了在Windows環(huán)境下,利用VisualBasic自身條件和原有控件開發(fā)MPEG卡采集的Audio/Video數(shù)據(jù)的播放技術(shù)。充分利用了VB的優(yōu)越條件,靈活地與VB中各種現(xiàn)有控件結(jié)合,開發(fā)出來的MPEG媒體播放器功能完善,回放的MPEG畫面能清晰地重現(xiàn)數(shù)據(jù)采集時場景、做到了"聞其聲,見其人"、并能準(zhǔn)確確定事件發(fā)生的時間時刻。對只記錄了單幀的Audio/Video數(shù)據(jù)流也能同樣播放。上述技術(shù)已在監(jiān)控系統(tǒng)中使用,并效果良好。

相關(guān)頻道: eNews

您對本文或本站有任何意見,請在下方提交,謝謝!

投稿信箱:tougao@enet16.com