TWI529622B - Video image distribution method - Google Patents
Video image distribution method Download PDFInfo
- Publication number
- TWI529622B TWI529622B TW104110740A TW104110740A TWI529622B TW I529622 B TWI529622 B TW I529622B TW 104110740 A TW104110740 A TW 104110740A TW 104110740 A TW104110740 A TW 104110740A TW I529622 B TWI529622 B TW I529622B
- Authority
- TW
- Taiwan
- Prior art keywords
- camera
- image processing
- image
- proceed
- processing chain
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2183—Cache memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
- H04N21/2743—Video hosting of uploaded data from client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42204—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
- H04N21/42206—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
- H04N21/4222—Remote control device emulator integrated into a non-television apparatus, e.g. a PDA, media center or smart toy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4223—Cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/64322—IP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8545—Content authoring for generating interactive applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/858—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Studio Devices (AREA)
- Stored Programmes (AREA)
- Telephone Function (AREA)
Description
本發明係提供一種視訊影像分配方法,尤指可藉由攝影機代理層將原始攝影機影像進行暫存及建立與應用程式用戶連結的服務執行命令,並通過硬體平台藉由指定參數及分配軟硬體資源針對攝影機之來源影像動態建立影像處理鏈處理成所要求之格式加入至已完成處理的多重影像進行暫存後,再輸出分配至多個應用程式用戶使用。
按,現今電子科技及多媒體技術不斷快速蓬勃發展,使得一般手持式或移動式電子裝置(如智慧型手機、平板電腦、筆計型電腦等)已普遍存在於社會上各個角落中,隨著網際網路的普及,亦有愈來愈多的使用者選擇以即時通訊介面(如Skype、Line、Viber、Yahoo Messenger等)作為通話、文字即時聊天或視訊的溝通橋樑,更進一步拉近人與人之間的距離。
然而,目前手持式或移動式電子裝置主要為由作業系統驅動攝影機擷取使用者的影像,並通過網際網路將影像即時傳輸給其它用戶而具有視訊的功能,不過受限於本身軟硬體上的限制,一般行動作業系統(如Andriod、iOS、Windows Phone等)僅檢查是否有其它程式已使用該攝影機,且因攝影機硬體同時間只能夠服務單一
程式用戶,並運作在單一影像格式設定(如解析度、框速率等)上,當多個程式用戶同時開啟攝影機,並對於影像有不同的格式設定時,其攝影機硬體便無法同時運作在多個用戶的設定需求,因此要如何有效解決多個程式用戶存取單一攝影機的影像格式設定衝突,便為從事此行業者所亟欲研究改善之關鍵所在。
故,發明人有鑑於上述習用之問題與缺失,乃搜集相關資料經由多方的評估及考量,並利用從事於此行業之多年研發經驗不斷的試作與修改,始設計出此種視訊影像分配方法發明專利誕生。
本發明之主要目的乃在於電子裝置之硬體平台為通過作業系統之攝影機代理層配合驅動程式經由影像擷取介面接收攝影機所傳輸之影像,並進行控制攝影機及影像取得執行命令後,便可藉由攝影機代理層來將原始攝影機影像進行暫存,以及建立與應用程式用戶連結的服務執行命令,並通過硬體平台藉由指定參數及分配軟硬體資源針對攝影機傳輸之來源影像動態建立影像處理鏈進行處理成所要求之格式加入至已完成處理的多重影像進行暫存後,再將該暫存的多重影像輸出分配至多個應用程式用戶使用,只要軟硬體資源允許下即可服務多個應用程式用戶,藉此滿足應用程式用戶對於影像不同格式的設定需求達到最佳化之效果,且可方便於使用者操作電子裝置。
1‧‧‧電子裝置
11‧‧‧硬體平台
12‧‧‧作業系統
13‧‧‧攝影機代理層
14‧‧‧驅動程式
15‧‧‧影像擷取介面
16‧‧‧攝影機
17‧‧‧應用程式用戶
第一圖 係為本發明較佳實施例之方塊圖。
第二圖 係為本發明較佳實施例之步驟流程圖。
第三圖 係為本發明建立影像處理鏈之步驟流程圖。
第四圖 係為本發明較佳實施例查詢攝影機參數之步驟流程圖。
第五圖 係為本發明較佳實施例設定攝影機參數之步驟流程圖。
第六圖 係為本發明較佳實施例啟用影像處理鏈之步驟流程圖。
第七圖 係為本發明較佳實施例影像處理鏈處理過程之步驟流程圖。
第八圖 係為本發明較佳實施例停止影像處理鏈之步驟流程圖。
為達成上述目的及功效,本發明所採用之技術手段及其構造,茲繪圖就本發明之較佳實施例詳加說明其構造與功能如下,俾利完全瞭解。
請參閱第一、二、三圖所示,係分別為本發明較佳實施例之方塊圖、步驟流程圖及建立影像處理鏈之步驟流程圖,由圖中可清楚看出,本發明之視訊影像分配方法為利用手持式或移動式電子裝置1(如智慧型手機、平板電腦、筆記型電腦等),該電子裝置1之硬體平台(Hardware Platform)11為安裝有具攝影機代理層(Proprietary Camera Layer)13及驅動程式14之作業系統(Operating System)12,並由驅動程式14經由影像擷取介面15接收攝影機16所傳輸之影像,再將影像傳輸至攝影機代理層13動態建立影像處理鏈與多重影像佇列分配至多個應用程式(Application)用戶17。
再者,電子裝置1之硬體平台11為包括有中央處理器(
CPU)、硬體/軟體共享記憶體(HW/SW Shared Memory)、硬體視訊介面(HW Camera Interface(DMA))、影像感測器(Image Sensor+ISP)、硬體視頻編碼器(Hardware Video Encoder)、2D處理器(2D Processor(Scaler、Color Space Conversion、Blitter))及3D處理器(3D Processor(Pixel Shader、Fragment Shader))等,而作業系統12較佳實施可為以Linux作基礎開放原始碼的Andriod行動作業系統,並具有Android Camera API(應用程式介面)、Android APIs及Android Core Services/System Frameworks等,再由LinkNext Proprietary API連接有一攝影機代理層13,而攝影機代理層13為包括有攝錄影器(Camera Recorder)、多媒體串流伺服器(Streaming Server)、緩衝佇列(Buffer Queue)、影像處理及原生視訊緩衝佇列(Image Processing及Original Camera Buffer Queue),且該攝影機代理層13亦可為基於主處理器(Host Processor)上運行算法的軟體,但於實際應用時,也可為視頻編碼器(Video Encoder)、後處理器(Post-Processor)、2D加速器(2D
Accelerator)等硬體,或者是基於繪圖處理器(GPU)上運行影像處理算法的像素著色器(Pixel Shader)、片段著色器(Fragment Shader)。
然而,上述之作業系統11所安裝內建之驅動程式14則可為Linux Kernel,並具有Camera Driver/V4L2(Video 4 Linux 2)Framwork、Android IPC(行程間通訊)Driver及Android ION Buffer management Driver,便可藉由作業系統12配合攝影機代理層13及驅動程式14通過硬體平台11藉由指定的參數及軟硬體資源針對攝影機16傳輸之來源影像動態建立影像處理鏈,並將來源影像處理成要求之格式與多重影像佇列,再分配至多個應用程式用戶17,惟此部份有關攝影機代理層13如何建立影像處理鏈之各影像處理節點,並利用Camera Image Queue經由Video Encoder、Stream Buffer Queue,Scaler、Image Buffer Queue、Video Encoder、Stream Buffer Queue進行處理來源影像,再由Recorder、Streaming Server、Android API傳輸至應用程式用戶17進行動態影像之播放;或者是Camera Image Queue經由2D Accelerator、Framebuffer進行處理來源影像,再直接由顯示器控制器(LCD controller)通過視訊介面
(Display Port)或高解析度多媒體介面(HDMI)進行動態影像播放係為現有技術之範疇,且該影像處理的方式很多,亦並非本案之發明要點,茲不再作贅述。
當利用本發明之視訊影像分配方法時,係依照下列之步驟實施:
(101)控制攝影機16並進行影像取得執行命令。
(102)將原始攝影機影像進行暫存。
(103)攝影機代理層13將來源影像建立影像處理鏈。
(104)分配軟硬體資源並建立影像處理節點後啟用影像處理鏈處理來源影像加入至已完成處理的多重影像進行暫存。
(105)建立與應用程式用戶17連結的服務執行命令並將暫存的多重影像輸出分配至對應的多個應用程式用戶17。
再者,上述之步驟(103)建立影像處理鏈為包括有下列之步驟實施:
(201)作業系統12之攝影機應用程式介面(Camera API)接受應用程式用戶17參數設定的請求。
(202)判斷查詢是否已存在該應用程式用戶17所請求設定參數之影像處理鏈?若為是,即進行步驟(203),若為否,則進行步驟(205)。
(203)建立服務執行命令並連結於影像處理鏈與應用程式用戶17。
(204)完成應用程式用戶17請求。
(205)分配軟硬體資源找尋適合的暫存來源影像佇列並建立新的影像處理節點。
(206)判斷分配軟硬體資源並建立新的影像處理節點是否成功?若為是,即進行步驟(207),若為否,則進行步驟(209)。
(207)是否滿足應用程式用戶17所請求的參數設定?若為是,即進行步驟(208),若為否,則進行步驟(209)。
(208)連結影像處理節點並建立新的影像處理鏈,再重複執行步驟(203)。
(209)拒絕應用程式用戶17請求。
由上述實施步驟可清楚得知,本發明電子裝置1之硬體平台11為可通過作業系統12之攝影機代理層13配合驅動程式14經由影像擷取介面15接收攝影機16所傳輸之影像,並利用攝影機16硬體/驅動程式14/影像擷取框架進行控制攝影機16(如光圈、快門速度、感光度、變焦、自動對焦、背光補償等)及影像取得執行命令後,便可藉由攝影機代理層13將原始攝影機影像進行暫存在硬體平台11之HW/SW Shared Memory,以及建立與應用程式用戶17連結的服務執行命令的相關資料,並通過硬體平台11藉由指定參數及分配軟硬體資源針對攝影機16傳輸之來源影像動態建立影像處理鏈進行處理成所要求之格式(如影像大小、色調、解析度、動態影像與聲音的壓縮編碼格式、格放速率、資料傳輸率等)加入至已完成處理的多重影像進行暫
存後,再將暫存的多重影像輸出分配至多個應用程式用戶17使用,只要硬體平台11之軟硬體資源允許下即可服務多個應用程式用戶17,藉此滿足應用程式用戶17對於影像不同格式的設定需求達到最佳化之效果,且可方便於使用者來操作電子裝置1。
請搭配參閱第四、五、六、七、八圖所示,係分別為本發明較佳實施例查詢攝影機參數之步驟流程圖、設定攝影機參數之步驟流程圖、啟用影像處理鏈之步驟流程圖、影像處理鏈處理過程之步驟流程圖及停止影像處理鏈之步驟流程圖,由圖中可清楚看出,其中該電子裝置1之應用程式用戶17較佳實施可為Skype應用程式介面,但於實際應用時,亦可為Line、WeChat、Viber、Yahoo Messenger或其它安裝於作業系統12(如Andriod、iOS、Windows Phone等)內之應用程式介面。
當應用程式用戶17進行查詢攝影機參數時為包括有下列之步驟實施:
(301)應用程式用戶17通過應用程式介面、攝影機
服務及攝影機代理層13進行參數查詢。
(302)檢查是否有已存在的影像處理鏈及足夠的硬體資源?若為是,即進行步驟(304),若為否,則進行步驟(303)。
(303)輸入常用可支援的影像格式列表、硬體資源管理員輸入硬體資源使用記錄與硬體可支援的影像格式處理及輸入作用中的影像處理列表,再進行步驟(304)。
(304)參考硬體資源與既存的影像處理鏈產生可支援的攝影機參數,再將攝影機參數通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17。
由上述實施步驟可清楚得知,本發明電子裝置1之應用程式用戶17為通過應用程式介面、攝影機服務及攝影機代理層13進行攝影機參數查詢,當檢查有已存在的影像處理鏈及足夠的硬體資源時,便會參考硬體資源與既存的影像處理鏈而產生可支援的攝影機參數,再將攝影機參數通過攝影機代理層13、攝影機服務及應用程式介面而回傳至應用程式用戶17;當檢查沒有存在的影像處理鏈以及沒有足夠的硬體資源時,便會輸入常用可支援的影像格式列表、硬體資源管理員輸入硬體資源使用記錄與硬體可支援的影像格式處理及輸入作用中的影像處理列表,並再次檢查有已存在的影像處理鏈及足夠的硬體資源,才會將攝影機參數通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行後續動作。
再者,當應用程式用戶17進行設定攝影機參數時為包括有下列之步驟實施:
(401)應用程式用戶17通過應用程式介面、攝影機服務及攝影機代理層13進行設定參數。
(402)檢查是否有已存在的影像處理鏈?若為是,即進行步驟(403),若為否,則進行步驟(404)。
(403)建立攝影機用戶與影像處理鏈對應關係的連結資料,再將設定成功訊息通過攝影機代理層13、攝影機服務及應用程式
介面回傳至應用程式用戶17。
(404)檢查是否有足夠的硬體資源處理所需的格式?若為是,即進行步驟(405),若為否,則進行步驟(406)。
(405)依照所要求的格式產生影像處理鏈,再重複執行步驟(403)。
(406)拒絕參數設定,再將設定失敗訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17。
由上述實施步驟可清楚得知,本發明電子裝置1之應用程式用戶17為通過應用程式介面、攝影機服務及攝影機代理層13進行設定攝影機參數,當檢查有已存在的影像處理鏈時,便會建立攝影機用戶與影像處理鏈對應關係的連結資料,再將設定成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17,若是檢查沒有存在的影像處理鏈但有足夠的硬體資源所需的格式時,便會依照所要求的格式產生影像處理鏈,並再次進行上述之步驟建立攝影機用戶與影像處理鏈對應關係的連結資料後,再將設定成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17;當檢查沒有已存在的影像處理鏈以及沒有足夠的硬體資源處理所需的格式時,則拒絕參數設定,再將設定失敗訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行後續動作。
然而,上述之步驟(104)進行啟用影像處理鏈時為包括有下列之步驟實施:
(501)應用程式用戶17通過應用程式介面、攝影機
服務及攝影機代理層13進行啟動影像擷取。
(502)取得與此用戶對應的攝影機16的影像處理鏈連結資料。
(503)檢查影像處理鏈是否已建立?若為是,即進行步驟(504),若為否,則進行步驟(509)。
(504)檢查影像處理鏈是否已啟用?若為是,即進行步驟(505),若為否,則進行步驟(506)。
(505)建立此用戶的服務執行命令,再將啟用成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17。
(506)啟用影像處理鏈。
(507)檢查影像處理節點參與之硬體是否已啟用?若為是,即重複執行步驟(505),若為否,則進行步驟(508)。
(508)檢查啟用與設定相關硬體是否成功?若為是,即重複執行步驟(505),若為否,則進行步驟(509)。
(509)啟用失敗,再將啟用失敗訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17。
由上述實施步驟可清楚得知,本發明電子裝置1之應用程式用戶17為通過應用程式介面、攝影機服務及攝影機代理層13進行啟動攝影機16影像擷取,並取得與此應用程式用戶17對應的攝影機16的影像處理鏈連結資料,當檢查該影像處理鏈已建立且啟用時,便會建立此用戶的服務執行命令,再將啟用成功訊息通過攝影機代理層13、攝影
機服務及應用程式介面回傳至應用程式用戶17,若是檢查影像處理鏈沒有啟用時,便會啟用影像處理鏈並檢查影像處理節點參與之硬體已啟用後再次進行上述之步驟建立此用戶的服務執行命令,並將啟用成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行通知;當檢查影像節點參與之硬體沒有啟用但檢查啟用與設定相關硬體成功時便會再次進行上述之步驟建立此用戶的服務執行命令,再將啟用成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行通知;當檢查影像處理鏈沒有建立或啟用與設定相關硬體沒有成功時則為啟用失敗,再將啟用成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行通知。
此外,上述之步驟(104)影像處理鏈處理的過程之步驟流程圖為包括有下列之步驟實施:
(601)通知有暫存的來源影像。
(602)判斷該來源影像是否有新的影像?若為是,即進行步驟(603),若為否,則進行步驟(606)。
(603)藉由指定參數及軟硬體資源處理來源影像。
(604)判斷影像處理是否成功?若為是,即進行步驟(605),若為否,則進行步驟(606)。
(605)將已完成處理的影像加入至指定輸出位置進行暫存,再進行步驟(606)。
(606)等待下一個暫存的來源影像通知。
又,上述之步驟(105)將多重影像輸出分配至應用程
式用戶17後停止影像處理鏈時為包括有下列之步驟實施:
(701)應用程式用戶17通過應用程式介面、攝影機服務及攝影機代理層13進行停止影像擷取。
(702)取得與此用戶對應的攝影機16的影像處理鏈連結資料。
(703)檢查影像處理鏈是否已建立?若為是,即進行步驟(704),若為否,則進行步驟(708)。
(704)檢查影像處理鏈是否已啟用?若為是,即進行步驟(705),若為否,則進行步驟(708)。
(705)停止影像處理鏈。
(706)檢查相關影像處理節點是否有被其它的影像處理鏈共用?若為是,即進行步驟(708),若為否,則進行步驟(707)。
(707)停止該影像處理節點相關硬體與釋放相關資源,再進行步驟(708)。
(708)停止服務執行命令,再將停止成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17。
由上述實施步驟可清楚得知,本發明電子裝置1之應用程式用戶17為通過應用程式介面、攝影機服務及攝影機代理層13進行停止攝影機16影像擷取,並取得與此應用程式用戶17對應的攝影機16的影像處理鏈連結資料,當檢查該影像處理鏈已建立且啟用時,便會停止影像處理鏈並檢查相關影像節點有被其它的影像處理鏈共用時,則會停止
服務執行命令,再將停止成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17,若是檢查相關影像處理節點沒有被其它的影像處理鏈共用時,便會停止該影像處理節點相關硬體與釋放相關資源及停止服務執行命令,再將停止成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行通知;當檢查影像處理鏈沒有建立或影像處理鏈已建立但沒有啟用時,便會停止服務執行命令,再將停止成功訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶17進行通知。
上述詳細說明為針對本發明一種較佳之可行實施例說明而已,惟該實施例並非用以限定本發明之申請專利範圍,凡其它未脫離本發明所揭示之技藝精神下所完成之均等變化與修飾變更,均應包含於本發明所涵蓋之專利範圍中。
綜上所述,本發明上述之視訊影像分配方法為確實能達到其功效及目的,故本發明誠為一實用性優異之發明,實符合發明專利之申請要件,爰依法提出申請,盼 審委早日賜准本案,以保障發明人之辛苦發明,倘若 鈞局有任何稽疑,請不吝來函指示,發明人定當竭力配合,實感德便。
Claims (7)
- 一種視訊影像分配方法,係利用電子裝置之硬體平台為安裝有具攝影機代理層及驅動程式之作業系統,並由驅動程式經由影像擷取介面接收攝影機所傳輸之影像,再將影像傳輸至攝影機代理層動態建立影像處理鏈與多重影像佇列分配至多個應用程式用戶,以滿足影像不同格式的設定需求,並包括下列之步驟實施:(a01)控制攝影機並進行影像取得執行命令;(a02)將原始攝影機影像進行暫存;(a03)攝影機代理層將來源影像建立影像處理鏈,而建立影像處理鏈為包括有下列之步驟實施:(b01)作業系統之攝影機應用程式介面接受應用程式用戶參數設定的請求;(b02)判斷查詢是否已存在該應用程式用戶所請求設定參數之影像處理鏈,若為是,即進行步驟(b03),若為否,則進行步驟(b05);(b03)建立服務執行命令並連結於影像處理鏈與應用程式用戶;(b04)完成應用程式用戶請求;(b05)分配軟硬體資源找尋適合的暫存來源影像並建立新的影像處理節點;(b06)判斷分配軟硬體資源並建立新的影像處理節點是否成功,若為是,即進行步驟(b07), 若為否,則進行步驟(b09);(b07)是否滿足應用程式用戶所請求的參數設定,若為是,即進行步驟(b08),若為否,則進行步驟(209);(b08)連結影像處理節點並建立新的影像處理鏈,再重複執行步驟(b03);(b09)拒絕應用程式用戶請求;(a04)分配軟硬體資源並建立影像處理節點後啟用影像處理鏈處理來源影像加入至已完成處理的多重影像進行暫存;(a05)建立與應用程式用戶連結的服務執行命令並將暫存的多重影像輸出分配至對應的多個應用程式用戶。
- 如申請專利範圍第1項所述之視訊影像分配方法,其中該步驟(a01)為利用攝影機硬體/驅動程式/影像擷取框架進行控制攝影機與取得影像執行命令。
- 如申請專利範圍第1項所述之視訊影像分配方法,其中該應用程式用戶進行查詢攝影機參數為包括有下列之步驟實施:(c01)應用程式用戶通過應用程式介面、攝影機服務及攝影機代理層進行參數查詢;(c02)檢查是否有已存在的影像處理鏈及足夠的硬體資源,若為是,即進行步驟(e04),若為否,則進行步驟(e03);(c03)輸入常用可支援的影像格式列表、硬體資源管理員輸入硬 體資源使用記錄與硬體可支援的影像格式處理及輸入作用中的影像處理列表,再進行步驟(e04);(c04)參考硬體資源與既存的影像處理鏈產生可支援的攝影機參數,再將攝影機參數通過攝影機代理層、攝影機服務及應用程式介面回傳至應用程式用戶。
- 如申請專利範圍第1項所述之視訊影像分配方法,其中該應用程式用戶進行設定攝影機參數為包括有下列之步驟實施:(d01)應用程式用戶通過應用程式介面、攝影機服務及攝影機代理層進行設定參數;(d02)檢查是否有已存在的影像處理鏈,若為是,即進行步驟(d03),若為否,則進行步驟(d04);(d03)建立攝影機用戶與影像處理鏈對應關係的連結資料,再將設定成功訊息通過攝影機代理層、攝影機服務及應用程式介面回傳至應用程式用戶;(d04)檢查是否有足夠的硬體資源處理所需的格式,若為是,即進行步驟(d05),若為否,則進行步驟(d06);(d05)依照所要求的格式產生影像處理鏈,再重複執行步驟(d03);(d06)拒絕參數設定,再將設定失敗訊息通過攝影機代理層13、攝影機服務及應用程式介面回傳至應用程式用戶。
- 如申請專利範圍第1項所述之視訊影像分配方法,其中該步驟(a04)進行啟用影像處理鏈時為包括有下列之步驟實施: (e01)應用程式用戶通過應用程式介面、攝影機服務及攝影機代理層進行啟動影像擷取;(e02)取得與此用戶對應的攝影機的影像處理鏈連結資料;(e03)檢查影像處理鏈是否已建立,若為是,即進行步驟(e04),若為否,則進行步驟(e09);(e04)檢查影像處理鏈是否已啟用,若為是,即進行步驟(e05),若為否,則進行步驟(e06);(e05)建立此用戶的服務執行命令,再將啟用成功訊息通過攝影機代理層、攝影機服務及應用程式介面回傳至應用程式用戶;(e06)啟用影像處理鏈;(e07)檢查影像處理節點參與之硬體是否已啟用,若為是,即重複執行步驟(e05),若為否,則進行步驟(e08);(e08)檢查啟用與設定相關硬體是否成功,若為是,即重複執行步驟(e05),若為否,則進行步驟(e09);(e09)啟用失敗,再將啟用失敗訊息通過攝影機代理層、攝影機服務及應用程式介面回傳至應用程式用戶。
- 如申請專利範圍第1項所述之視訊影像分配方法,其中該步驟(a04)影像處理鏈處理的過程為包括有下列之步驟實施:(f01)通知有暫存的來源影像;(f02)判斷該來源影像是否有新的影像,若為是,即進行步驟( f03),若為否,則進行步驟(f06);(f03)藉由指定參數及軟硬體資源處理來源影像;(f04)判斷影像處理是否成功,若為是,即進行步驟(f05),若為否,則進行步驟(f06);(f05)將已完成處理的影像加入至指定輸出位置進行暫存,再進行步驟(f06);(f06)等待下一個暫存的來源影像通知。
- 如申請專利範圍第1項所述之視訊影像分配方法,其中該步驟(a05)將多重影像輸出分配至應用程式用戶後停止影像處理鏈時為包括有下列之步驟實施:(g01)應用程式用戶通過應用程式介面、攝影機服務及攝影機代理層進行停止影像擷取;(g02)取得與此用戶對應的攝影機的影像處理鏈連結資料;(g03)檢查影像處理鏈是否已建立,若為是,即進行步驟(g04),若為否,則進行步驟(g08);(g04)檢查影像處理鏈是否已啟用,若為是,即進行步驟(g05),若為否,則進行步驟(g08);(g05)停止影像處理鏈;(g06)檢查相關影像處理節點是否有被其它的影像處理鏈共用,若為是,即進行步驟(g08),若為否,則進行步驟(g07);(g07)停止該影像處理節點相關硬體與釋放相關資源,再進行步 驟(g08);(g08)停止服務執行命令,再將停止成功訊息通過攝影機代理層、攝影機服務及應用程式介面回傳至應用程式用戶。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/288,144 US9525892B2 (en) | 2014-05-27 | 2014-05-27 | Video image distribution method |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201545059A TW201545059A (zh) | 2015-12-01 |
TWI529622B true TWI529622B (zh) | 2016-04-11 |
Family
ID=54703269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104110740A TWI529622B (zh) | 2014-05-27 | 2015-04-01 | Video image distribution method |
Country Status (3)
Country | Link |
---|---|
US (1) | US9525892B2 (zh) |
CN (1) | CN105306808B (zh) |
TW (1) | TWI529622B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9967410B2 (en) * | 2014-05-29 | 2018-05-08 | Asustek Computer Inc. | Mobile device, computer device and image control method thereof for editing image via undefined image processing function |
KR101637682B1 (ko) * | 2014-09-23 | 2016-07-07 | 현대자동차주식회사 | 에이브이엔의 카메라 영상 표시 시스템 |
CN107580227B (zh) * | 2017-09-27 | 2020-06-05 | 维沃移动通信有限公司 | 一种视频编码方法、移动终端 |
CN108401172A (zh) * | 2018-01-31 | 2018-08-14 | 山东浪潮商用系统有限公司 | 一种机顶盒系统及其使用方法 |
WO2020141588A1 (ja) * | 2019-01-02 | 2020-07-09 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 情報処理装置、情報処理方法及びプログラム |
CN113747087B (zh) * | 2021-09-10 | 2023-09-19 | 湖南君瀚信息技术有限公司 | 远程驾驶低延时图像传输方法、装置、计算机设备及介质 |
US20240185191A1 (en) * | 2022-12-02 | 2024-06-06 | Avila Technology Llc | Web3 Decentralized Blockchain Based NFT Framework... Applications |
CN117112083B (zh) * | 2023-10-23 | 2024-02-23 | 南京芯驰半导体科技有限公司 | 用于多硬件域SoC的调用摄像头数据的方法及多硬件域SoC |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0757490A3 (en) * | 1995-08-02 | 1999-01-13 | Matsushita Electric Industrial Co., Ltd. | Video coding device and video transmission system using the same, quantization control method and average throughput calculation method used therein |
US20060050155A1 (en) * | 2004-09-02 | 2006-03-09 | Ing Stephen S | Video camera sharing |
US8095680B2 (en) * | 2007-12-20 | 2012-01-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Real-time network transport protocol interface method and apparatus |
CN101833520B (zh) * | 2009-03-11 | 2013-01-16 | 凹凸电子(武汉)有限公司 | 多个应用程序同时使用一个摄像头的系统和方法 |
CN101594510B (zh) * | 2009-06-23 | 2011-11-23 | 腾讯科技(深圳)有限公司 | 一种实现摄像头资源共享的方法及系统 |
CN101667143B (zh) * | 2009-09-18 | 2015-11-25 | 北京中星微电子有限公司 | 一种视频数据处理系统及方法 |
CN102611878A (zh) * | 2012-01-13 | 2012-07-25 | 福建升腾资讯有限公司 | 低带宽占用的高清摄像头映射方法 |
-
2014
- 2014-05-27 US US14/288,144 patent/US9525892B2/en active Active
-
2015
- 2015-04-01 TW TW104110740A patent/TWI529622B/zh active
- 2015-04-14 CN CN201510175190.5A patent/CN105306808B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105306808B (zh) | 2019-01-04 |
US9525892B2 (en) | 2016-12-20 |
US20150350518A1 (en) | 2015-12-03 |
TW201545059A (zh) | 2015-12-01 |
CN105306808A (zh) | 2016-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI529622B (zh) | Video image distribution method | |
US9823947B2 (en) | Method and system for allocating FPGA resources | |
RU2745343C1 (ru) | Система облачного рабочего стола, и способ кодирования со сжатием последовательности изображений, и соответствующий носитель данных | |
WO2018119786A1 (zh) | 一种显示数据处理方法及装置 | |
JP6276408B2 (ja) | 画像表示方法および装置 | |
US9535723B2 (en) | Methods and apparatuses for generating desktop cloud instances based upon mobile device user file selections | |
US10986158B2 (en) | Cancellation management with respect to a web application | |
CN112650578A (zh) | 数据处理方法、调度平台、视频存储平台和视频处理引擎 | |
TW201440476A (zh) | 畫面分享系統及方法 | |
US9251104B2 (en) | Automatically changing application priority as a function of a number of people proximate to a peripheral device | |
JP2014171121A (ja) | 投影システム、投影装置、投影方法、及び投影プログラム | |
JP6347636B2 (ja) | 画像処理システム、データ管理方法及びプログラム | |
US9632848B1 (en) | Asynchronous submission of commands | |
CN112769788A (zh) | 计费业务数据处理方法、装置、电子设备及存储介质 | |
US20180088982A1 (en) | Providing highly available and scalable access to a restricted access service through a restful interface | |
US20170109113A1 (en) | Remote Image Projection Method, Sever And Client Device | |
WO2023035619A1 (zh) | 一种场景渲染方法、装置、设备及系统 | |
KR101591061B1 (ko) | 실시간 처리를 위한 전송 라이브러리 시스템 및 그 시스템에서의 송/수신 방법 | |
US10990439B1 (en) | Tracing task execution across services in microkernel-based operating systems | |
US10216672B2 (en) | System and method for preventing time out in input/output systems | |
JP2002024154A (ja) | プログラム実行方法およびプログラム実行装置 | |
KR20180114667A (ko) | 고품질 그래픽의 처리를 지원하는 가상 데스크탑 서버 및 그것을 이용한 고품질 그래픽의 처리 방법 | |
JP6750109B2 (ja) | ディスプレイマッピング | |
JP2017004235A (ja) | 管理装置及びプログラム | |
CN115063284A (zh) | 图像处理方法、芯片和装置 |