新四季網

一種視頻碼流切換方法及裝置的製作方法

2023-04-27 11:04:56 2

專利名稱:一種視頻碼流切換方法及裝置的製作方法
技術領域:
本申請涉及信息處理技術領域,特別是涉及一種視頻碼流切換方法及其相應的裝置。
背景技術:
在保證視頻的正常播放情況下,不同的電腦配置、視頻帶寬、網絡狀態等因素決定播放器承載的視頻碼流也不相同,因此,通常需要在不同視頻碼流之間進行切換,由原視頻碼流切換到目標視頻碼流存在時間延遲。當該時間延遲超過一定閥值時,視頻播放將出現「卡頓」現象,即視頻播放過程中出現停頓,甚至時間延遲過長出現視頻數據丟失,導致「黑屏」。由此可見,視頻碼流切換是否平滑將影響到視頻的播放效果,降低用戶良好的收視體 驗。現有技術的一種實現視頻碼流切換的方式是當接收到視頻碼流切換觸發時,視頻播放器立即停止當前視頻碼流的視頻播放,連接目標視頻碼流對應的物理文件,並加載該物理文件的相應視頻數據,從而開啟目標視頻碼流的視頻播放。然而,由於選擇目標視頻碼流對應的物理文件與加載視頻數據的操作存在時間延遲,即使原視頻碼流播放的視頻數據與目標視頻碼流播放的視頻數據完全對接,在該時間延遲的作用下,切換前後的視頻數據播放沒有實現平滑過渡,導致「卡頓」現象,甚至「黑屏」。

發明內容
為解決上述技術問題,本申請實施例提供一種視頻碼流切換方法及其對應的裝置,以實現視頻碼流切換前後的平滑過渡,避免出現「卡頓」現象,甚至「黑屏」。本申請實施例提供的視頻碼流切換方法包括在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基兀;在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件,以一個未播放或未播放完的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。優選地,在接收到碼流切換觸發後,如果視頻數據緩存區內存在多個未播放的第一播放基元,則計算各第一播放基元的播放結束時間與預設閥值之差,以差值最小的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放,所述預設閥值根據連接目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間確定。優選地,當從視頻數據緩存區中選擇一個未播放或未播放完的第一播放基元的播放結束時間為時間起點後,刪除視頻數據緩存區內其他未播放的第一播放基元。優選地,所述碼流切換觸發包括
偵聽用戶發出的碼流切換通知消息,當偵聽到通知消息後觸發碼流切換;和/或,監測網絡數據傳輸情況,當網絡數據傳輸情況滿足預設條件時觸發碼流切換。優選地,所述第一播放基元、第二播放基元為視頻TAG。本申請實施例還提供了一種視頻碼流切換裝置。該裝置包括觸發接收單元、視頻播放單元、文件連接單元和加載單元,其中所述觸發接收單元,用於接收碼流切換觸發;所述視頻播放單元,用於在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元;所述文件連接單元,用於在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件; 所述加載單元,用於在視頻數據緩存區內的至少一個第一播放基元未播放完之前,以一個未播放或未播放完的第一播放基兀的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。優選地,在接收到碼流切換觸發後,如果視頻數據緩存區內存在多個未播放的第一播放基元,則所述加載單元包括計算子單元和加載子單元,其中所述計算子單元,用於計算各第一播放基元的播放結束時間與預設閥值之差,所述預設閥值根據連接目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間確定;所述加載子單元,用於以差值最小的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。優選地,所述裝置還包括刪除單元,用於在從視頻數據緩存區中選擇一個未播放或未播放完的第一播放基元的播放結束時間為時間起點後,刪除視頻數據緩存區內其他未播放的第一播放基元。優選地,所述觸發接收單元接收到的碼流切換觸發包括偵聽到用戶發出的碼流切換通知消息後的碼流切換觸發;和/或,監測到網絡數據傳輸情況滿足預設條件時的碼流切換觸發。優選地,所述第一播放基元、第二播放基元為視頻TAG。本申請實施例在接收到視頻碼流切換觸發後繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元,在至少一個第一播放基元未播放完之前,連接目標視頻碼流的物理文件和加載目標碼流視頻的第二播放基元供播放。與現有技術相比,由於本申請實施例在視頻數據緩存區內的第一播放基元播放完之前,已加載了目標碼流視頻的第二播放基元,從而使得當前碼流視頻與目標碼流視頻的播放連續,實現了平滑過渡,避免了出現「卡頓」,甚至「黑屏」現象。


為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖I為本申請的視頻碼流切換方法的一個實施例的流程圖;圖2為本申請的視頻碼流切換方法的另一個實施例的流程圖;圖3為本申請的視頻數據緩存區示意圖;圖4為本申請的視頻碼流切換裝置的實施例的結構框圖。
具體實施方式
為了使本技術領域的人員更好地理解本申請中的技術方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本申請保護的範圍。為使本申請的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖和具體實施方式
對本申請作進一步詳細的說明。參見圖1,該圖示出了本申請的視頻碼流切換方法的一個實施例的流程。該實施例包括步驟SlOl :在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元;視頻碼流反映視頻文件在單位時間內的數據流量,是視頻編碼中畫面質量控制的重要部分。相同解析度,視頻文件的碼流越大,畫面質量越高。在視頻的實際播放過程中,由於各種原因可能引起視頻碼流的切換,以適應播放需要。引起碼流切換的原因不同,碼流切換的觸發形式也可能存在差別。如,當視頻碼流切換由用戶的特別指定引起時,可以通過設置對用戶發出的碼流切換通知消息的偵聽實現,當偵聽到用戶發出的通知消息,則觸發碼流切換。還比如,當視頻碼流切換是由網絡環境等因素引起時,可以通過設置對網絡環境因素的監測實現,當監測到網絡環境因素滿足預設條件,則觸發碼流切換。這裡的網絡環境因素可以是網絡帶寬、網絡數據傳輸等。以網絡數據傳輸情況為例,如果當前的網絡用戶較多、數據傳輸較為擁堵,當網絡數據傳輸的傳輸速率小於某個預設閥值時,則認為需要觸發碼流切換,切換到與該網絡傳輸速率對應的視頻碼流上。值得注意的是這裡的預設條件可以是複合性條件,
如,當網絡傳輸情況在一個區間範圍內時,觸發當前碼流與第一目標碼流之間的切換,當網絡傳輸情況在另一個區間範圍內時,觸發當前碼流與第二目標碼流之間的切換。視頻數據緩存區是用於緩存待播放的視頻文件的播放基元的。在實際播放視頻文件過程中,由於視頻文件較大,通常需要將一個大的視頻文件切割為若干個小的「片段」,這些「片段」的播放開始時間和結束時間連續構成整個視頻文件的完整播放時長。一種標準的切割視頻文件的方式是將一個視頻文件解析為多個視頻TAG。每個「片段」可稱為一個播放基元,一個播放基元作為整體被加載到內存供播放器播放。視頻數據緩存區內可以存在一個或數個播放基元,其具體數量由一個播放基元的大小和視頻數據緩存區的大小決定。當接收到碼流切換觸發後,本實施例不停止對播放基元的播放,以正常方式繼續播放視頻數據緩存區內的未播放的播放基元。不停止視頻數據緩存區內播放基元的播放可通過維護自己獨立控制的視頻數據緩存區實現。如果視頻數據緩存區內存在多個播放基元,播放器將按照播放基元的播放開始時間順序播放。步驟S102 :在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件,以一個未播放或未播放完的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放;在接收到碼流切換觸發後到視頻數據緩存區內的全部播放基元播放完之前這段時間內,本實施例將完成兩項操作一是連接目標碼流視頻文件。由於不同的視頻碼流,對應的視頻文件的壓縮比例不同,通常相同的視頻文件根據不同的碼流需要分別形成不同的 物理文件,當接收到碼流切換觸發後,即連接到目標碼流對應的視頻物理文件,以便從中獲取與當前播放的播放基元相接續的新碼流對應的播放基元。二是從目標碼流視頻文件中加載目標碼流視頻的第二播放基元,加載的播放基元的時間起點可以是視頻數據緩存區內任何一個未播放的第一播放基元,或者正在播放但未播放完的第一播放基元的播放結束時間。將目標碼流視頻文件的第二播放基元加載到視頻數據緩存區後,播放器將根據播放基元本身的時間先後(播放開始時間)播放相應的播放基元。通過前述兩個操作完成了由一個視頻碼流(即前述的當前碼流)到另一個視頻碼流(目標碼流)之間的切換。本實施例在接收到視頻碼流切換觸發後繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元,在至少一個第一播放基元未播放完之前,連接目標視頻碼流的物理文件和加載目標碼流視頻的第二播放基元供播放。與現有技術相比,由於本申請實施例在視頻數據緩存區內的第一播放基元播放完之前,已加載了目標碼流視頻的第二播放基元,從而使得當前碼流視頻與目標碼流視頻的播放連續,實現了平滑過渡,避免了出現「卡頓」,甚至「黑屏」現象。在前述實施例中,儘管從視頻數據緩存區內任意選擇一個未播放的第一播放基元並將其播放結束時間作為對第二播放基元的加載時間起點的方式並不妨礙本申請發明目的的實現,但是,在實際應用過程中,如果視頻數據緩存區內存在多個未播放的第一播放基元,如果選擇的是時間靠後的第一播放基元,那麼在完成連接目標視頻文件和加載第二播放基元的操作後,視頻數據緩存區內的第一播放基元還沒有播放完,導致不當「延遲」了對視頻碼流切換的響應。為了解決該問題,本申請提供了又一個實施例,該實施例在視頻數據緩存區內存在多個未播放的第一播放基元的情況下,給出了選擇第一播放基元的策略,從而「壓縮」對視頻碼流切換的響應時間。參見圖2,該圖示出了該又一個實施例的視頻碼流切換方法的流程。該實施例包括步驟S201 :接收碼流切換觸發;步驟S202 :在接收到碼流觸發後繼續播放視頻數據緩存區內的當前碼流視頻的
第一播放基兀;步驟S203 :計算各第一播放基元的播放結束時間與預設閥值之差,所述預設閥值根據連接目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間確定;視頻數據緩存區內的每個第一播放基元的播放結束時間不同,因此,可將各第一播放基元的播放結束時間與預設閥值進行求差,以便從中選擇合適的播放基元,以其播放結束時間作為加載第二播放基元的時間起點。這裡的預設閥值可以按照經驗進行設置,也可以根據目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間進行確定。步驟S204 :選擇差值為正數且最小的第一播放基元的播放結束時間確定為時間起點;經過前述計算後,對這些計算結果進行比較,從中選擇出差值最小的第一播放基元,將其播放結束時間作為時間起點。通過選擇播放結束時間與預設值差值為正數且最小的播放基元,使得在連接目標碼流視頻文件並加載第二播放基元兩項操作完成後,原碼流視頻的剩餘第一播放基元的播放能夠儘快結束,而在較短的時間間隔內過渡到對目標碼流視頻的第二播放基元的播放,從而縮短了對碼流切換的響應時間。步驟S205 :從所述目標碼流視頻文件中將與確定的時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。 本實施例通過計算視頻數據緩存區內的多個播放基元與預設閥值的差值,進而選擇差值最小的播放基元的播放結束時間作為加載第二播放基元的時間起點,縮短了從接收碼流切換觸發到真正完成到目標碼流的切換之間的時間間隔,從而加快了碼流切換的速度。為便於理解,下面舉例對本實施例進行說明參見圖3,該圖示出了視頻數據緩存區的示意圖。在該圖中視頻數據緩存區內存在原碼流視頻的3個第一播放基元,分別標記為A、B、C,3個第一播放基元的播放時長(播放結束時間到播放開始時間之間的時間段)均相同,播放結束時間依次為8s、16s、24s(以當前時間為Os為基準),即按照正常播放順序,應當是第一播放基元A最先播放,第一播放基元C最後播放。再假設連接目標碼流視頻文件和加載第二播放基元需要的操作時間為14s (預設閥值)。現在播放器正在播放第一播放基元A,假設播放到第Is時接收到碼流切換通知,這時不停止對A的播放,但進行連接目標碼流視頻文件和加載第二播放基元的操作。加載第二播放基元需要選擇加載的時間起點,以便能夠和已播放的第一播放基元接續上,這時計算3個第一播放基元的結束時間與預設閥值14s之間的差值,分別為-6s、2s、10s,這裡第一播放基元A播放結束時間與預設閥值的差值為負,說明在第一播放基元A播放結束時還來不及將第二播放基元加載到視頻數據緩存區,無法實現平滑切換,不能選擇該播放基元的播放結束時間作為加載時間起點。與此不同的是第一播放基元B、C播放結束時間與預設閥值的差值均為正,說明在這兩個播放基元播放結束時,第二播放基元均能夠加載到視頻數據緩存區,這種情況下,可以以第一播放基元B的播放結束時間作為時間起點加載目標碼流視頻的第二播放基元,使第一播放基元B播放完後接續第二播放基元,也可以以第二播放基元C的播放結束時間作為時間起點加載目標碼流視頻的第二播放基元,使第一播放基元C播放完後接續第二播放基元。但是,選擇第一播放基元C的播放結束時間作為加載時間起點的方式顯然需要等待到24s之後才能真正實現碼流切換,而選擇第一播放基元B的播放結束時間作為加載時間起點的方式僅需要等待到16s後即可真正實現碼流切換。為縮短碼流切換的響應時間,本例選擇播放結束時間與預設閥值的差值為正數且數值最小的第一播放基元,即第一播放基元B,以其播放結束時間作為時間起點加載第二播放基元,從而加快了碼流切換。
在本實施例中,基於某些特殊需要,還可以進行改進以獲得更好的技術效果。比如,如果視頻數據緩存區內存在多個未播放或未播放完的第一播放基元,當確定好作為加載時間起點的第一播放基元後,加載的第二播放基元將接續在該第一播放基元後播放,這時其他第一播放基元便不再具有意義,為節約視頻數據緩存區的存儲資源,本申請優選刪除這些未播放的第一播放基元。以前例而言,當選擇第一播放基元B的播放結束時間作為加載第二播放基元的時間起點後,第一播放基元B播放結束即接續播放加載的第二播放基元,這時視頻數據緩存區內存在的第一播放基元C便不再被播放,為騰出更多空間存儲後續的第二播放基元,可以將第一播放基元C予以刪除。以上內容是對本申請方法實施例的描述,相應地,本申請還提供了裝置實施例。參見圖4,該圖示出了本申請的視頻碼流切換的結構框圖。本裝置實施例包括觸發接收單元401、視頻播放單元402、文件連接單元403和加載單元404,其中觸發接收單元401,用於接收碼流切換觸發;·
視頻播放單元402,用於在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元;文件連接單元403,用於在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件;加載單元404,用於在視頻數據緩存區內的至少一個第一播放基元未播放完之前,以一個未播放或未播放完的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。本裝置實施例的工作過程是觸發接收單元401接收到碼流切換觸發後,視頻播放單元402繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元,同時文件連接單元403在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件,然後由加載單元404以一個未播放或未播放完的第一播放基元的播放結束時間為時間起點,從目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。本裝置實施例在接收到視頻碼流切換觸發後繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元,在至少一個第一播放基元未播放完之前,連接目標視頻碼流的物理文件和加載目標碼流視頻的第二播放基元供播放。與現有技術相比,由於本裝置實施例在視頻數據緩存區內的第一播放基元播放完之前,已加載了目標碼流視頻的第二播放基元,從而使得當前碼流視頻與目標碼流視頻的播放連續,實現了平滑過渡,避免了出現「卡頓」,甚至「黑屏」現象。上述裝置實施例的加載單元在不同情形下其具體組成結構可能存在差別。比如,在接收到碼流切換觸發後,如果視頻數據緩存區內存在多個未播放的第一播放基元,這時加載單元404可以包括計算子單元4041和加載子單元4042,其中計算子單元4041,用於計算各第一播放基元的播放結束時間與預設閥值之差,所述預設閥值根據連接目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間確定;加載子單元4042,用於以差值為正數且最小的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。這種加載單元的結構有利於加快碼流切換速度。基於上述加載單元的結構,本裝置實施例還可以包括刪除單元405,用於在從視頻數據緩存區中選擇一個未播放或未播放完的第一播放基兀的播放結束時間為時間起點後,刪除視頻數據緩存區內其他未播放的第一播放基元。通過將無用的第一播放單元從視頻數據緩存區內刪除,將可以騰出更多的存儲空間緩存第二播放基元。需要說明的是,上述裝置實施例的觸發接收單元接收到的碼流切換觸發基於不同的碼流切換原因,其具體的觸發形式可以存在差別,比如,可以是通過設置偵聽用戶發出的碼流切換通知消息的部件獲取碼流切換觸發,當該部件偵聽到通知消息時產生碼流切換觸發,還可以通過設置自動監測網絡環境因素情況的部件獲取碼流切換觸發,當該部件監測到網絡數據傳輸情況滿足預設條件時產生碼流切換觸發。這兩種方式可以單獨使用,也可以合併使用,具體採用哪種方式可根據實際應用需要進行選定。此外,本申請為便於區分當前碼流視頻的播放基元和目標碼流視頻的播放基元,將他們分別稱呼為第一播放基元、第二播放基元,實際上,這種區分僅僅滿足描述需要所作的文字區分,兩類播放基元可以是相同性質、相同屬性的播放基元,比如均為視頻TAG,視頻TAG是視頻播放中的最小數據單元。
為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本申請時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。通過以上的實施方式的描述可知,本領域的技術人員可以清楚地了解到本申請可藉助軟體加必需的通用硬體平臺的方式來實現。基於這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品可以存儲在存儲介質中,如R0M/RAM、磁碟、光碟等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,伺服器,或者網絡設備等)執行本申請各個實施例或者實施例的某些部分所述的方法。本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的系統實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施例方案的目的。本領域普通技術人員在不付出創造性勞動的情況下,即可以理解並實施。本申請可用於眾多通用或專用的計算系統環境或配置中。例如個人計算機、伺服器計算機、手持設備或可攜式設備、平板型設備、多處理器系統、基於微處理器的系統、置頂盒、可編程的消費電子設備、網絡PC、小型計算機、大型計算機、包括以上任何系統或設備的分布式計算環境等等。本申請可以在由計算機執行的計算機可執行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、對象、組件、數據結構等等。也可以在分布式計算環境中實踐本申請,在這些分布式計算環境中,由通過通信網絡而被連接的遠程處理設備來執行任務。在分布式計算環境中,程序模塊可以位於包括存儲設備在內的本地和遠程計算機存儲介質中。
以上所述僅是本申請的具體實施方式
,應當指出,對於本技術領域的普通技術人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本申請的保護範圍。·
權利要求
1.一種視頻碼流切換方法,其特徵在於,該方法包括 在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元; 在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件,以一個未播放或未播放完的第一播放基兀的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。
2.根據權利要求I所述的方法,其特徵在於,在接收到碼流切換觸發後,如果視頻數據緩存區內存在多個未播放的第一播放基元,則 計算各第一播放基元的播放結束時間與預設閥值之差,所述預設閥值根據連接目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間確定; 以差值為正數且最小的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。
3.根據權利要求I所述的方法,其特徵在於,當從視頻數據緩存區中選擇一個未播放或未播放完的第一播放基元的播放結束時間為時間起點後,刪除視頻數據緩存區內其他未播放的第一播放基元。
4.根據權利要求I至3中任何一項所述的方法,其特徵在於,所述碼流切換觸發包括 偵聽用戶發出的碼流切換通知消息,當偵聽到通知消息後觸發碼流切換;和/或,監測網絡數據傳輸情況,當網絡數據傳輸情況滿足預設條件時觸發碼流切換。
5.根據權利要求4所述的方法,其特徵在於,所述第一播放基元、第二播放基元為視頻TAG。
6.一種視頻碼流切換裝置,其特徵在於,該裝置包括觸發接收單元、視頻播放單元、文件連接單元和加載單元,其中 所述觸發接收單元,用於接收碼流切換觸發; 所述視頻播放單元,用於在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元; 所述文件連接單元,用於在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件; 所述加載單元,用於在視頻數據緩存區內的至少一個第一播放基元未播放完之前,以一個未播放或未播放完的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。
7.根據權利要求6所述的裝置,其特徵在於,在接收到碼流切換觸發後,如果視頻數據緩存區內存在多個未播放的第一播放基元,則所述加載單元包括計算子單元和加載子單元,其中 所述計算子單元,用於計算各第一播放基元的播放結束時間與預設閥值之差,所述預設閥值根據連接目標碼流視頻文件和加載目標碼流視頻的第二播放基元的時間確定; 所述加載子單元,用於以差值為正數且最小的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。
8.根據權利要求6所述的裝置,其特徵在於,所述裝置還包括刪除單元,用於在從視頻數據緩存區中選擇一個未播放或未播放完的第一播放基兀的播放結束時間為時間起點後,刪除視頻數據緩存區內其他未播放的第一播放基元。
9.根據權利要求6至8中任何一項所述的裝置,其特徵在於,所述觸發接收單元接收到的碼流切換觸發包括 偵聽到用戶發出的碼流切換通知消息後的碼流切換觸發;和/或,監測到網絡數據傳輸情況滿足預設條件時的碼流切換觸發。
10.根據權利要求9所述的裝置,其特徵在於,所述第一播放基元、第二播放基元為視頻 TAG。
全文摘要
本發明實施例公開了一種視頻碼流切換方法。該方法包括在接收到碼流切換觸發後,繼續播放視頻數據緩存區內的當前碼流視頻的第一播放基元;在視頻數據緩存區內的至少一個第一播放基元未播放完之前,連接目標碼流視頻文件,以一個未播放或未播放完的第一播放基元的播放結束時間為時間起點,從所述目標碼流視頻文件中將與該時間起點對應的目標碼流視頻的第二播放基元加載到視頻數據緩存區以供播放。本發明實施例還提供了一種視頻碼流切換裝置。本發明實施例的方案可以實現視頻碼流的平滑切換,避免出現「卡頓」、「黑屏」現象。
文檔編號H04N21/44GK102905188SQ201210431708
公開日2013年1月30日 申請日期2012年11月1日 優先權日2012年11月1日
發明者鄧治民 申請人:北京奇藝世紀科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀