System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及視頻處理,尤其涉及一種基于鴻蒙系統的分布式視頻傳輸架構、方法、相機及設備。
技術介紹
1、隨著計算機技術的國產化,鴻蒙系統(openharmony)得到了極大的發展。
2、傳統openharmony系統下的分布式相機處理流程雖然層次清晰、流程通暢。但是,openharmony分布式相機不支持技術即運動靜止圖像(或逐幀)壓縮技術(motion?jointphotographic?experts?group,mjpeg)編碼方式。針對mjpeg視頻流,傳統openharmony系統下的分布式相機處理必須先解碼,再編碼為高效率視頻編碼(high?efficiency?videocoding,h265)、標準高級視頻編碼(h.264/mpeg-4avc,h264)或者運動圖像專家組4(movingpicture?experts?group?4,mpeg-4)格式。
3、如此,傳統openharmony分布式相機框架對于mjpeg相機來說會有以下問題:1)由于原有mjpeg必須經過解壓為三原色顏色模式(rgb),再轉為顏色編碼(yuv),后編碼為mpeg-4、h264或者h265,進行軟總線傳輸,造成處理器資源過度占用;2)由于數據經過壓縮再解壓,增大了時延;3)在數據處理中,視頻質量有所下降。
技術實現思路
1、本專利技術提供了一種基于鴻蒙系統的分布式視頻傳輸架構、方法、相機及設備,以使openharmony分布式相機框架支持mjpeg相機,提高mjp
2、根據本專利技術的一方面,提供了一種基于鴻蒙系統的分布式視頻傳輸架構,該視頻傳輸架構,包括:改進相機驅動框架、改進分布式被控端、改進分布式主控端以及虛擬相機;其中:
3、所述改進相機驅動框架為在鴻蒙系統原本相機驅動框架基礎上,在相機服務層接口添加支持獲取mjpeg格式的視頻預覽流;并將pipelinecore層中streampipelinecore處理改進為輸出mjpeg格式的視頻預覽流;
4、在所述改進分布式被控端和所述改進分布式主控端所屬的改進分布式相機中添加mjpeg格式定義;
5、在視頻傳輸時,所述改進分布式被控端的相機客戶端選取mjpeg格式的視頻預覽流發送至相機服務;
6、所述改進分布式被控端的編碼處理中直接調用共享內存surface,而不創建編碼服務;
7、所述改進分布式主控端的解碼處理中調用mjpeg解碼器對所述改進分布式被控端傳輸的視頻流進行解碼,并將解碼處理后的視頻流傳輸至虛擬相機。
8、可選的,在相機服務層接口添加支持獲取mjpeg格式的視頻預覽流,包括:
9、在camera_host_config.hcs文件中extendavailableconfigurations添加ohos_camera_format_mjpeg定義,以使相機應用層獲取mjpeg格式的視頻預覽流。
10、可選的,將pipelinecore層中streampipelinecore處理改進為輸出mjpeg格式的視頻預覽流,包括:
11、將pipelinecore層的streampipelinecore處理中預覽流的rkcodecnode處理以及rkfacenode處理去除。
12、可選的,在所述改進分布式被控端和所述改進分布式主控端所屬的改進分布式相機中添加mjpeg格式定義,包括:
13、在distributed_camera_constants.h文件中dcameraformat添加ohos_camera_format_mjpeg定義。
14、可選的,在視頻傳輸時,所述改進分布式被控端的相機客戶端選取mjpeg格式的視頻預覽流發送至相機服務,包括:
15、在視頻傳輸時,所述改進分布式被控端的相機客戶端在確定info->format等于ohos_camera_format_mjpeg時,打開相機捕獲視頻流,并發送至相機服務。
16、可選的,所述改進分布式被控端的編碼處理中直接調用共享內存surface,而不創建編碼服務,包括:
17、所述改進分布式被控端的編碼處理中直接調用surface::createsurface創建surface,而不創建編碼服務;
18、相機產生的mjpeg格式視頻流存放在surface產生的緩存中。
19、可選的,該視頻傳輸架構,還包括:
20、所述改進分布式被控端的編碼處理中通過encode_data_process.cpp文件中的getencoderoutputbuffer函數獲取surface產生的緩存中的視頻流,并將視頻流傳輸至所述改進分布式主控端。
21、根據本專利技術的另一方面,提供了一種基于鴻蒙系統的分布式視頻傳輸方法,該視頻傳輸方法應用于如本專利技術任一實施例所提供的基于鴻蒙系統的分布式視頻傳輸架構中;所述方法,包括:
22、通過改進相機驅動框架拉取mjpeg格式的視頻流,并將所述mjpeg格式的視頻流傳輸至改進分布式被控端;
23、通過改進分布式被控端對所述mjpeg格式的視頻流進行處理,并將處理后mjpeg格式的視頻流傳輸至改進分布式主控端;
24、通過改進分布式主控端中的解碼處理對處理后mjpeg格式的視頻流進行mjpeg解碼;
25、通過改進分布式主控端將解碼處理后的視頻流傳輸至虛擬相機。
26、根據本專利技術的另一方面,提供了一種基于鴻蒙系統的分布式相機,所述分布式相機,包括如本專利技術任一實施例所提供的基于鴻蒙系統的分布式視頻傳輸架構。
27、根據本專利技術的另一方面,提供了一種電子設備,所述電子設備,包括如本專利技術任一實施例所提供的基于鴻蒙系統的分布式相機。
28、本專利技術實施例的技術方案,通過改進鴻蒙系統的分布式視頻傳輸架構,具體的,在鴻蒙系統原本相機驅動框架基礎上,在相機服務層接口添加支持獲取mjpeg格式的視頻預覽流;并將pipelinecore層中streampipelinecore處理改進為輸出mjpeg格式的視頻預覽流;在所述改進分布式被控端和所述改進分布式主控端所屬的改進分布式相機中添加mjpeg格式定義;在視頻傳輸時,所述改進分布式被控端的相機客戶端選取mjpeg格式的視頻預覽流發送至相機服務;所述改進分布式被控端的編碼處理中直接調用共享內存surface,而不創建編碼服務;所述改進分布式主控端的解碼處理中調用mjpeg解碼器對所述改進分布式被控端傳輸的視頻流進行解碼,并將解碼處理后的視頻流傳輸至虛擬相機,解決了鴻蒙系統原本相機驅動框架不支持mjpeg格式視頻流的問題,可以提升鴻蒙系統的分布式架構在進行mjpeg格式視頻處理時的資源利用率、降低時延、并提升畫面質量。
29、應當理解,本部分所描述的內容并非旨在標識本專利技術的實施例的關鍵或重要本文檔來自技高網...
【技術保護點】
1.一種基于鴻蒙系統的分布式視頻傳輸架構,其特征在于,所述視頻傳輸架構,包括:改進相機驅動框架、改進分布式被控端、改進分布式主控端以及虛擬相機;其中:
2.根據權利要求1所述的視頻傳輸架構,其特征在于,在相機服務層接口添加支持獲取MJPEG格式的視頻預覽流,包括:
3.根據權利要求1所述的視頻傳輸架構,其特征在于,將PipeLineCore層中StreamPipeLineCore處理改進為輸出MJPEG格式的視頻預覽流,包括:
4.根據權利要求1所述的視頻傳輸架構,其特征在于,在所述改進分布式被控端和所述改進分布式主控端所屬的改進分布式相機中添加MJPEG格式定義,包括:
5.根據權利要求1所述的視頻傳輸架構,其特征在于,在視頻傳輸時,所述改進分布式被控端的相機客戶端選取MJPEG格式的視頻預覽流發送至相機服務,包括:
6.根據權利要求1所述的視頻傳輸架構,其特征在于,所述改進分布式被控端的編碼處理中直接調用共享內存surface,而不創建編碼服務,包括:
7.根據權利要求6所述的視頻傳輸架構,其特征在于,還
8.一種基于鴻蒙系統的分布式視頻傳輸方法,其特征在于,所述視頻傳輸方法應用于如權利要求1至7任一項所述的基于鴻蒙系統的分布式視頻傳輸架構中;所述方法,包括:
9.一種基于鴻蒙系統的分布式相機,其特征在于,所述分布式相機,包括如權利要求1至7任一項所述的基于鴻蒙系統的分布式視頻傳輸架構。
10.一種電子設備,其特征在于,所述電子設備,包括如權利要求9所述的基于鴻蒙系統的分布式相機。
...【技術特征摘要】
1.一種基于鴻蒙系統的分布式視頻傳輸架構,其特征在于,所述視頻傳輸架構,包括:改進相機驅動框架、改進分布式被控端、改進分布式主控端以及虛擬相機;其中:
2.根據權利要求1所述的視頻傳輸架構,其特征在于,在相機服務層接口添加支持獲取mjpeg格式的視頻預覽流,包括:
3.根據權利要求1所述的視頻傳輸架構,其特征在于,將pipelinecore層中streampipelinecore處理改進為輸出mjpeg格式的視頻預覽流,包括:
4.根據權利要求1所述的視頻傳輸架構,其特征在于,在所述改進分布式被控端和所述改進分布式主控端所屬的改進分布式相機中添加mjpeg格式定義,包括:
5.根據權利要求1所述的視頻傳輸架構,其特征在于,在視頻傳輸時,所述改進分布式被控...
【專利技術屬性】
技術研發人員:吳萬里,羅南炎,李星,閆志鵬,顏晨陽,
申請(專利權)人:鴻湖萬聯江蘇科技發展有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。