本公開涉及計算機,尤其涉及一種多媒體文件的錄制方法及裝置、設(shè)備、介質(zhì)及程序產(chǎn)品。
背景技術(shù):
1、多媒體文件的錄制功能越來越嚴格,例如圖像文件錄制、視頻文件錄制或音頻文件錄制等,均要求錄制后文件中的文件幀數(shù)滿足文件的預(yù)設(shè)播放時長。以圖像幀的錄制為例,通常要求每個圖像文件都是標(biāo)準(zhǔn)的固定時長,不能多一秒或少一秒,且要求不能丟幀,以使錄制后的圖像文件也能按固定時長播放;此外,針對視頻文件,還要求圖像幀和音頻幀同步。
技術(shù)實現(xiàn)思路
1、為克服相關(guān)技術(shù)中存在的問題,本公開提供一種多媒體文件的錄制方法及裝置、設(shè)備、存儲介質(zhì)及計算機程序產(chǎn)品。
2、根據(jù)本公開實施例的第一方面,提供一種多媒體文件的錄制方法,所述方法包括:
3、獲取當(dāng)前多媒體文件錄制當(dāng)前文件幀的第一時間,以及所述當(dāng)前多媒體文件中已錄制的文件幀數(shù)量;
4、基于所述文件幀數(shù)量、所述第一時間以及單個多媒體文件的預(yù)設(shè)錄制時長、所述預(yù)設(shè)錄制時長內(nèi)的預(yù)設(shè)錄制幀數(shù)量,確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀。
5、在一些實施例中,所述基于所述文件幀數(shù)量、所述第一時間以及單個多媒體文件的預(yù)設(shè)錄制時長、所述預(yù)設(shè)錄制時長內(nèi)的預(yù)設(shè)錄制幀數(shù)量,確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀,包括:
6、基于所述預(yù)設(shè)錄制時長,確定從首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長;
7、響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述首個多媒體文件中首個文件幀的第二時間的第一差值小于所述估計時長,基于所述估計時長確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀;
8、響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,基于所述預(yù)設(shè)錄制幀數(shù)量確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀。
9、在一些實施例中,所述響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述首個多媒體文件中首個文件幀的第二時間的差值小于所述估計時長,基于所述估計時長確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀,包括:
10、響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值小于所述估計時長,以所述第一差值達到所述估計時長且所述當(dāng)前多媒體文件的實際錄制時長不超過所述預(yù)設(shè)錄制時長為止停止錄制;其中,所述實際錄制時長為所述當(dāng)前多媒體文件錄制當(dāng)前文件幀的第一時間與所述當(dāng)前多媒體文件中首個文件幀的時間差。
11、在一些實施例中,所述響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,基于所述預(yù)設(shè)錄制幀數(shù)量確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀,包括:
12、響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,以所述當(dāng)前多媒體文件中的文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量、且所述當(dāng)前多媒體文件的實際錄制時長不超過所述預(yù)設(shè)錄制時長為止停止錄制;其中,所述實際錄制時長為所述當(dāng)前多媒體文件錄制當(dāng)前文件幀的第一時間與所述當(dāng)前多媒體文件中首個文件幀的時間差。
13、在一些實施例中,所述方法還包括:
14、基于所述文件幀數(shù)量、所述預(yù)設(shè)錄制幀數(shù)量,以及所述第一時間、所述第二時間、所述估計時長,確定請求錄制下一個多媒體文件的時間。
15、在一些實施例中,所述基于所述文件幀數(shù)量、所述第一時間、所述第二時間以及所述預(yù)設(shè)錄制幀數(shù)量、所述估計時長,確定請求錄制下一個多媒體文件的時間,包括:
16、響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值小于所述估計時長,待停止錄制所述當(dāng)前多媒體文件后請求錄制所述下一個多媒體文件;
17、響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,請求錄制所述下一個多媒體文件后再停止錄制所述當(dāng)前多媒體文件。
18、在一些實施例中,所述響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,請求錄制所述下一個多媒體文件后再停止錄制所述當(dāng)前多媒體文件,包括:
19、響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,請求錄制所述下一個多媒體文件后,將所述第一時間之后錄制的目標(biāo)文件幀在所述當(dāng)前多媒體以及所述下一個多媒體文件復(fù)用;其中,所述目標(biāo)文件幀的數(shù)量與所述文件幀數(shù)量的和值等于所述預(yù)設(shè)錄制幀數(shù)量。
20、在一些實施例中,所述當(dāng)前多媒體文件與所述下一多媒體文件中復(fù)用的幀為請求錄制所述下一個多媒體文件后獲取的即時解碼刷新幀。
21、在一些實施例中,所述方法還包括:
22、獲取多媒體文件的錄制指令;其中,所述錄制指令用于指示開始錄制首個多媒體文件,以及所述首個多媒體文件之后的多媒體文件;
23、所述基于所述預(yù)設(shè)錄制時長,確定從首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長,包括:
24、響應(yīng)于所述當(dāng)前多媒體文件為獲取到所述錄制指令后的所述首個多媒體文件,將開始獲取所述首個文件幀的第二時間后的所述預(yù)設(shè)錄制時長確定為所述當(dāng)前多媒體文件的估計時長;
25、響應(yīng)于所述當(dāng)前多媒體文件不為所述首個多媒體文件,基于所述預(yù)設(shè)錄制時長、前一多媒體文件的錄制時間以及所述錄制指令的獲取時間,確定從所述首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長。
26、在一些實施例中,所述基于所述預(yù)設(shè)錄制時長、前一多媒體文件的錄制時間以及所述錄制指令的獲取時間,確定從所述首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長,包括:
27、確定前一多媒體文件中最后一幀文件的錄制時間,與至錄制完所述前一多媒體文件的預(yù)設(shè)時間之間的時間差;其中,所述預(yù)設(shè)時間為基于所述錄制指令的獲取時間,以及首個多媒體文件至所述當(dāng)前多媒體文件所包括的文件數(shù)量與所述預(yù)設(shè)錄制時長的乘積確定的;
28、將至錄制完所述當(dāng)前多媒體文件的預(yù)設(shè)時長與所述時間差的差值,確定為從所述首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長;其中,所述預(yù)設(shè)時長為首個多媒體文件至所述當(dāng)前多媒體文件所包括的文件數(shù)量與所述預(yù)設(shè)錄制時長的乘積。
29、在一些實施例中,所述方法還包括:
30、獲取多媒體文件的錄制指令;其中,所述錄制指令用于指示開始錄制首個多媒體文件,以及所述首個多媒體文件之后的多媒體文件;
31、響應(yīng)于所述當(dāng)前多媒體文件為首個多媒體文件,基于所述錄制指令的獲取時間對所述當(dāng)前多媒體文件命名;
32、響應(yīng)于所述當(dāng)前多媒體文件不為首個多媒體文件,基于所述當(dāng)前多媒體文件中的首幀文件的獲取時間對所述當(dāng)前多媒體文件命名。
33、在一些實施例中,所述當(dāng)前多媒體文件為多路錄制中的一路錄制的文件,每路所包括的各多媒體文件的錄制同步。
34、根據(jù)本公開實施例的第二方面,提供一種多媒體文件的錄制裝置,所述裝置包括:
35、第一獲取模塊,配置為獲取當(dāng)前多媒體文件錄制當(dāng)前文件幀的第一時間,以及所述當(dāng)前多媒體文件中已錄制的文件幀數(shù)量;
36、第一確定模塊,配置為基于所述文件幀數(shù)量、所述第一時間以及單個多媒體文件的預(yù)設(shè)錄制時長、所述預(yù)設(shè)錄制時長內(nèi)的預(yù)設(shè)錄制幀數(shù)量,確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀。
37、在一些實施例中,所述第一確定模塊,還配置為基于所述預(yù)設(shè)錄制時長,確定從首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長;響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述首個多媒體文件中首個文件幀的第二時間的第一差值小于所述估計時長,基于所述估計時長確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀;響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,基于所述預(yù)設(shè)錄制幀數(shù)量確定在所述預(yù)設(shè)錄制時長內(nèi)所述當(dāng)前多媒體文件中待錄制的文件幀。
38、在一些實施例中,所述第一確定模塊,還配置為響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值小于所述估計時長,以所述第一差值達到所述估計時長且所述當(dāng)前多媒體文件的實際錄制時長不超過所述預(yù)設(shè)錄制時長為止停止錄制;其中,所述實際錄制時長為所述當(dāng)前多媒體文件錄制當(dāng)前文件幀的第一時間與所述當(dāng)前多媒體文件中首個文件幀的時間差。
39、在一些實施例中,所述第一確定模塊,還配置為響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,以所述當(dāng)前多媒體文件中的文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量、且所述當(dāng)前多媒體文件的實際錄制時長不超過所述預(yù)設(shè)錄制時長為止停止錄制;其中,所述實際錄制時長為所述當(dāng)前多媒體文件錄制當(dāng)前文件幀的第一時間與所述當(dāng)前多媒體文件中首個文件幀的時間差。
40、在一些實施例中,所述裝置還包括:
41、第二確定模塊,配置為基于所述文件幀數(shù)量、所述預(yù)設(shè)錄制幀數(shù)量,以及所述第一時間、所述第二時間、所述估計時長,確定請求錄制下一個多媒體文件的時間。
42、在一些實施例中,所述第二確定模塊,還配置為響應(yīng)于所述文件幀數(shù)量達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值小于所述估計時長,待停止錄制所述當(dāng)前多媒體文件后請求錄制所述下一個多媒體文件;響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,請求錄制所述下一個多媒體文件后再停止錄制所述當(dāng)前多媒體文件。
43、在一些實施例中,所述第二確定模塊,還配置為響應(yīng)于所述文件幀數(shù)量未達到所述預(yù)設(shè)錄制幀數(shù)量,且所述第一時間與所述第二時間的第一差值達到所述估計時長,請求錄制所述下一個多媒體文件后,將所述第一時間之后錄制的目標(biāo)文件幀在所述當(dāng)前多媒體以及所述下一個多媒體文件復(fù)用;其中,所述目標(biāo)文件幀的數(shù)量與所述文件幀數(shù)量的和值等于所述預(yù)設(shè)錄制幀數(shù)量。
44、在一些實施例中,所述當(dāng)前多媒體文件與所述下一多媒體文件中復(fù)用的幀為請求錄制所述下一個多媒體文件后獲取的即時解碼刷新幀。
45、在一些實施例中,所述裝置還包括:
46、第二獲取模塊,配置為獲取多媒體文件的錄制指令;其中,所述錄制指令用于指示開始錄制首個多媒體文件,以及所述首個多媒體文件之后的多媒體文件;
47、所述第一確定模塊,還配置為響應(yīng)于所述當(dāng)前多媒體文件為獲取到所述錄制指令后的所述首個多媒體文件,將開始獲取所述首個文件幀的第二時間后的所述預(yù)設(shè)錄制時長確定為所述當(dāng)前多媒體文件的估計時長;響應(yīng)于所述當(dāng)前多媒體文件不為所述首個多媒體文件,基于所述預(yù)設(shè)錄制時長、前一多媒體文件的錄制時間以及所述錄制指令的獲取時間,確定從所述首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長。
48、在一些實施例中,所述第一確定模塊,還配置為確定前一多媒體文件中最后一幀文件的錄制時間,與至錄制完所述前一多媒體文件的預(yù)設(shè)時間之間的時間差;其中,所述預(yù)設(shè)時間為基于所述錄制指令的獲取時間,以及首個多媒體文件至所述當(dāng)前多媒體文件所包括的文件數(shù)量與所述預(yù)設(shè)錄制時長的乘積確定的;將至錄制完所述當(dāng)前多媒體文件的預(yù)設(shè)時長與所述時間差的差值,確定為從所述首個多媒體文件至錄制完所述當(dāng)前多媒體文件的估計時長;其中,所述預(yù)設(shè)時長為首個多媒體文件至所述當(dāng)前多媒體文件所包括的文件數(shù)量與所述預(yù)設(shè)錄制時長的乘積。
49、在一些實施例中,所述裝置還包括:
50、第三獲取模塊,配置為獲取多媒體文件的錄制指令;其中,所述錄制指令用于指示開始錄制首個多媒體文件,以及所述首個多媒體文件之后的多媒體文件;
51、第一命名模塊,配置為響應(yīng)于所述當(dāng)前多媒體文件為首個多媒體文件,基于所述錄制指令的獲取時間對所述當(dāng)前多媒體文件命名;
52、第二命名模塊,配置為響應(yīng)于所述當(dāng)前多媒體文件不為首個多媒體文件,基于所述當(dāng)前多媒體文件中的首幀文件的獲取時間對所述當(dāng)前多媒體文件命名。
53、在一些實施例中,所述當(dāng)前多媒體文件為多路錄制中的一路錄制的文件,每路所包括的各多媒體文件的錄制同步。
54、根據(jù)本公開實施例的第三方面,提供一種電子設(shè)備,包括:處理器;
55、用于存儲計算機程序或指令的存儲器;
56、其中,所述處理器執(zhí)行所述計算機程序或指令,以實現(xiàn)上述第一方面中所述的方法的步驟。
57、根據(jù)本公開實施例的第四方面,提供一種非臨時性計算機可讀存儲介質(zhì),所述存儲介質(zhì)存儲有計算機程序或指令,當(dāng)所述存儲介質(zhì)中的計算機程序或指令由處理器執(zhí)行時,實現(xiàn)如上述第一方面中所述的方法的步驟。
58、根據(jù)本公開實施例的第五方面,提供一種計算機程序產(chǎn)品,包括計算機程序或者指令,所述計算機程序或指令被處理器執(zhí)行時,實現(xiàn)如上述第一方面中所述的方法的步驟。
59、本公開的實施例提供的技術(shù)方案可以包括以下有益效果:
60、本公開實施例中,基于當(dāng)前多媒體文件錄制過程中,能反應(yīng)實際錄制幀率的當(dāng)前文件幀的第一時間以及已錄制的文件幀數(shù)量,結(jié)合能反應(yīng)預(yù)設(shè)幀率的單個多媒體文件的預(yù)設(shè)錄制時長以及預(yù)設(shè)錄制時長內(nèi)的預(yù)設(shè)錄制幀數(shù)量來確定在預(yù)設(shè)錄制時長內(nèi)、第一時間后待錄制的文件幀,相對僅根據(jù)預(yù)設(shè)錄制時長或預(yù)設(shè)錄制幀數(shù)量單個指標(biāo)對每個多媒體文件進行錄制的方式,本公開實施例的方案可通過實際錄制幀率與預(yù)設(shè)的錄制幀率,動態(tài)調(diào)節(jié)當(dāng)前多媒體文件中錄制的文件幀數(shù)量,從而使得錄制完成后的當(dāng)前多媒體文件播放的時候仍能播放預(yù)設(shè)錄制時長,即通過該種方式,能提升多媒體文件錄制的準(zhǔn)確性。
61、應(yīng)當(dāng)理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本公開。