CN117336571A - 视频处理方法及相关设备 - Google Patents
视频处理方法及相关设备 Download PDFInfo
- Publication number
- CN117336571A CN117336571A CN202210733723.7A CN202210733723A CN117336571A CN 117336571 A CN117336571 A CN 117336571A CN 202210733723 A CN202210733723 A CN 202210733723A CN 117336571 A CN117336571 A CN 117336571A
- Authority
- CN
- China
- Prior art keywords
- video
- instance
- electronic device
- playing
- play
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 27
- 238000000034 method Methods 0.000 claims abstract description 109
- 238000003780 insertion Methods 0.000 claims abstract description 12
- 230000037431 insertion Effects 0.000 claims abstract description 12
- 239000013256 coordination polymer Substances 0.000 claims description 39
- 230000015654 memory Effects 0.000 claims description 33
- 239000012634 fragment Substances 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 abstract description 49
- 238000004364 calculation method Methods 0.000 description 57
- 238000004891 communication Methods 0.000 description 54
- 230000006854 communication Effects 0.000 description 54
- 230000006870 function Effects 0.000 description 34
- 238000007726 management method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 108010007100 Pulmonary Surfactant-Associated Protein A Proteins 0.000 description 15
- 102100027773 Pulmonary surfactant-associated protein A2 Human genes 0.000 description 15
- 238000012545 processing Methods 0.000 description 15
- 238000010295 mobile communication Methods 0.000 description 14
- 230000003993 interaction Effects 0.000 description 13
- 230000005236 sound signal Effects 0.000 description 13
- 102000007620 Pulmonary Surfactant-Associated Protein C Human genes 0.000 description 12
- 108010007125 Pulmonary Surfactant-Associated Protein C Proteins 0.000 description 12
- 238000012423 maintenance Methods 0.000 description 11
- 210000000988 bone and bone Anatomy 0.000 description 9
- 230000004044 response Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000003416 augmentation Effects 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 108010007131 Pulmonary Surfactant-Associated Protein B Proteins 0.000 description 1
- 102100032617 Pulmonary surfactant-associated protein B Human genes 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 229910052797 bismuth Inorganic materials 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002138 osteoinductive effect Effects 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8352—Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
-
- 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/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
-
- 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/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请公开了一种视频处理方法及相关设备,在聚合视频场景下,由于不同的SP可能在基础视频中插入、裁剪一个或多个片段,因此,在视频运营过程中会计算出上述一个或多个片段的偏移信息(例如插入/裁剪的位置信息、时长信息),电子设备在检测到用户的切换操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作)之后,可以基于上述一个或多个片段的偏移信息、用户执行切换操作时视频的播放时长等参数来计算续播位置,从而解决由于无法准确计算续播位置而导致的切换前后视频画面不连续的问题,提高用户体验。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种视频处理方法及相关设备。
背景技术
随着终端技术和网络技术的快速发展,在线视频逐渐成为人们生活中获取信息的一种重要途径。
在线视频的运营过程中,由服务提供商(ServiceProvider,SP)提供视频内容,服务提供商可以是指不同的视频内容的播放源或播放平台,不同的服务提供商可能会在视频中插入/裁剪一些片段,从而导致同一个视频的同一个画面在不同SP实例中的播放时间进度可能不同,因此,在一些场景下(例如用户将片段视频切换到完整视频、用户在聚合视频的不同SP实例视频之间进行切换等场景下),可能无法准确定位到同一个画面进行续播,用户体验差。
发明内容
本申请实施例提供了一种视频处理方法及相关设备,电子设备在检测到用户的切换操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作)之后,可以准确计算续播位置,从而解决切换前后视频画面不连续的问题,提高用户体验。
第一方面,本申请实施例提供了一种方法,应用于电子设备,该方法包括:所述电子设备播放第一视频;所述电子设备显示第一用户界面,所述第一用户界面包括第一画面,所述第一画面为所述第一视频中的一个画面;当所述电子设备显示所述第一用户界面时,所述电子设备检测到用户的第一操作;响应于所述第一操作,所述电子设备播放第二视频;所述电子设备显示第二用户界面,所述第二用户界面包括所述第一画面,所述第一画面为所述第二视频中的一个画面;其中,所述第一视频和所述第二视频均是基于第三视频生成的,所述第一画面在所述第二视频中对应的播放进度为第一时间点,所述第二视频在所述第一时间点之前在所述第三视频的基础上插入和/或裁剪了一个或多个第一片段,所述第三视频不包括所述一个或多个第一片段。
通过实施第一方面提供的方法,电子设备在检测到用户从第一视频切换到第二视频的操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作)之后,即使第二视频(例如完整视频或目的SP实例视频)插入和/或裁剪了一个或多个片段,仍可以准确计算续播位置,从而解决切换前后视频画面不连续的问题,提高用户体验。
在一种可能的实现方式中,所述第一视频为所述第二视频中的视频片段。
这样,在第一视频为片段视频的情况下,即使第二视频(例如完整视频)插入和/或裁剪了一个或多个片段,仍可以准确计算续播位置,从而解决切换前后视频画面不连续的问题,提高用户体验。
在一种可能的实现方式中,所述第一视频为第一视频源的视频,所述第二视频为第二视频源的视频,所述第一画面在所述第一视频中对应的播放进度为第二时间点,所述第二时间点与所述第一时间点不同。
这样,在第一视频为源SP实例视频的情况下,即使第二视频(例如目的SP实例视频)插入和/或裁剪了一个或多个片段,仍可以准确计算续播位置,从而解决切换前后视频画面不连续的问题,提高用户体验。
在一种可能的实现方式中,在所述电子设备显示第二用户界面之前,所述方法还包括:所述电子设备向服务器发送第一用户信息,所述第一用户信息用于所述服务器基于所述第一用户信息确定用户是否有权限播放所述第二视频;在所述服务器确定所述用户有权限播放所述第二视频的情况下,所述电子设备播放所述第二视频。
这样,可以确定用户是否有权限播放第二视频,若是,则服务器可以向电子设备发送第二视频的播放地址,以便电子设备可以基于第二视频的播放地址来获取到第二视频的视频资源,从而可以播放第二视频。
在一种可能的实现方式中,所述第一时间点是基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的,所述第二视频的偏移信息列表包括所述一个或多个第一片段的偏移信息,所述偏移信息包括所述一个或多个第一片段基于所述第三视频的插入位置/裁剪位置、偏移时长。
这样,在第一视频为片段视频的情况下,电子设备/服务器可以基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表来确定第一时间点(即确定第二视频的续播点),从而可以保证切换前后视频画面的连续性。
在一种可能的实现方式中,在所述电子设备显示第二用户界面之前,所述方法还包括:所述电子设备向服务器发送第一消息,所述第一消息中包括所述第一视频的标识,所述第一视频的标识用于所述服务器获取到与所述第一视频相关联的所述第三视频的拆条点的信息及所述第二视频的偏移信息列表;所述电子设备接收所述服务器发送的第二消息,所述第二消息中包括所述拆条点的信息、所述第二视频的偏移信息列表;所述第一时间点是基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的,具体包括:所述第一时间点是所述电子设备基于所述拆条点的信息、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的。
这样,在第一视频为片段视频的情况下,电子设备可以基于拆条点的信息、所述第一视频的播放时长、所述第二视频的偏移信息列表来确定第一时间点,从而可以保证切换前后视频画面的连续性。
在一种可能的实现方式中,在所述电子设备显示第二用户界面之前,所述方法还包括:所述电子设备向服务器发送第三消息,所述第三消息中包括所述第一视频的播放时长;所述第一时间点是基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的,具体包括:所述第一时间点是所述服务器基于所述第三视频的拆条点的信息、所述第一视频的播放时长和所述第二视频的偏移信息列表确定的;所述电子设备接收所述服务器发送的第四消息,所述第四消息中包括所述第一时间点和所述第二视频的播放地址。
这样,在第一视频为片段视频的情况下,服务器可以基于拆条点的信息、所述第一视频的播放时长、所述第二视频的偏移信息列表来确定第一时间点,从而可以保证切换前后视频画面的连续性。
在一种可能的实现方式中,在所述电子设备显示第二用户界面之前,所述方法还包括:所述电子设备向服务器发送第五消息,所述第五消息中包括所述第一时间点、所述第二视频的播放地址,所述播放地址是从所述服务器获取到的;所述电子设备接收所述服务器发送的视频流数据,所述视频流数据为在所述第一时间点之后的所述第二视频的视频流数据。
这样,电子设备可以向服务器获取到在第一时间点之后的第二视频的视频流数据,从而可以继续播放第一时间点之后的第二视频。
在一种可能的实现方式中,在所述电子设备播放第二视频之后,所述方法还包括:所述电子设备显示第三用户界面,所述第三用户界面包括第二画面,所述第二画面在所述第二视频中对应的播放进度为第三时间点,所述第三时间点与所述第一时间点的时间间隔为第一间隔,所述第二视频在所述第三时间点与所述第一时间点之间在所述第三视频的基础上插入和/或裁剪了一个或多个片段;所述第二画面在所述第三视频中对应的播放进度为第四时间点,所述第一画面在所述第三视频中对应的播放进度为第五时间点,所述第四时间点与所述第五时间点的时间间隔为第二间隔;所述第一间隔与所述第二间隔不同。
在一种可能的实现方式中,所述第三视频中包括所述第一画面,所述第一画面在所述第三视频中对应的播放进度为第五时间点;所述第五时间点是基于所述第二时间点和所述第一视频的偏移信息列表确定的,所述第一视频的偏移信息列表包括一个或多个第二片段的偏移信息,所述偏移信息包括所述一个或多个第二片段基于所述第三视频的插入位置/裁剪位置、偏移时长;所述第一时间点是基于所述第五时间点和所述第二视频的偏移信息列表确定的,所述第二视频的偏移信息列表包括所述一个或多个第一片段的偏移信息,所述偏移信息包括所述一个或多个第一片段基于所述第三视频的插入位置/裁剪位置、偏移时长。
这样,在第一视频为源SP实例视频的情况下,电子设备/服务器可以基于第二时间点、所述第一视频的偏移信息列表、所述第二视频的偏移信息列表来确定第一时间点,从而可以保证切换前后视频画面的连续性。
在一种可能的实现方式中,在所述电子设备显示第二用户界面之前,所述方法还包括:所述电子设备向服务器发送第六消息,所述第六消息中包括所述第一视频的标识信息、所述第二视频的标识信息,所述第一视频的标识信息用于所述服务器获取到所述第一视频的偏移信息列表,所述第二视频的标识信息用于所述服务器获取到所述第二视频的偏移信息列表;所述电子设备接收所述服务器发送的第七消息,所述第七消息中包括所述第一视频的偏移信息列表、所述第二视频的偏移信息列表;其中,所述第五时间点是所述电子设备基于所述第二时间点和所述第一视频的偏移信息列表确定的,所述第一时间点是所述电子设备基于所述第五时间点和所述第二视频的偏移信息列表确定的。
这样,在第一视频为源SP实例视频的情况下,电子设备可以基于第二时间点、所述第一视频的偏移信息列表、所述第二视频的偏移信息列表来确定第一时间点,从而可以保证切换前后视频画面的连续性。
在一种可能的实现方式中,在所述电子设备显示第二用户界面之前,所述方法还包括:所述电子设备向服务器发送第八消息,所述第八消息中包括所述第一视频的播放时长,所述第一视频的播放时长用于服务器确定所述第二时间点;所述服务器向所述电子设备发送第九消息,所述第九消息中包括所述第一时间点和所述第二视频的播放地址;其中,所述第五时间点是所述服务器基于所述第二时间点和所述第一视频的偏移信息列表确定的,所述第一时间点是所述服务器基于所述第五时间点和所述第二视频的偏移信息列表确定的。
这样,在第一视频为源SP实例视频的情况下,服务器可以基于第二时间点、所述第一视频的偏移信息列表、所述第二视频的偏移信息列表来确定第一时间点,从而可以保证切换前后视频画面的连续性。
在一种可能的实现方式中,所述第一时间点的计算方法如下:
其中,所述CP’为所述第一画面在所述第二视频中对应的播放进度,所述CP为所述第一画面在所述第三视频中对应的播放进度,所述n为所述一个或多个第一片段的总数,所述Li为所述一个或多个第一片段中的第i个所述第一片段的偏移时长。
第二方面,本申请实施例提供了一种电子设备,该电子设备包括一个或多个处理器和一个或多个存储器;其中,所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述电子设备执行上述第一方面任一项可能的实现方式中所述的方法。
第三方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述程序指令在电子设备上运行时,使得所述电子设备执行上述第一方面任一项可能的实现方式中所述的方法。
第四方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述第一方面任一项可能的实现方式中所述的方法。
附图说明
图1是本申请实施例提供的一种通信系统的示意图;
图2是本申请实施例提供的一种视频处理方法在“片段视频切换到完整视频”这一场景下的流程示意图;
图3A-图3E是本申请实施例提供的一组用户触发将“片段视频切换到完整视频”涉及的用户界面示意图;
图4是本申请实施例提供的一种在“片段视频切换到完整视频”这一场景下进行续播计算的原理示意图;
图5A-图5E是本申请实施例提供的一组用户触发将“片段视频切换到完整视频”之后进行续播的用户界面示意图;
图6是本申请实施例提供的另一种视频处理方法在“片段视频切换到完整视频”这一场景下的流程示意图;
图7是本申请实施例提供的一种视频处理方法在“聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)”这一场景下的流程示意图;
图8A-图8B是本申请实施例提供的用户触发将“聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)”涉及的用户界面示意图;
图9是本申请实施例提供的一种在“聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)”这一场景下进行续播计算的原理示意图;
图10A-图10D是本申请实施例提供的一组用户触发将“聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)”之后进行续播的用户界面示意图;
图11是本申请实施例提供的另一种视频处理方法在“聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)”这一场景下的流程示意图;
图12是本申请实施例提供的一种在执行视频处理方法过程中涉及的电子设备100的内部模块与服务器200的内部模块以及各个内部模块之间可能的协作方式示意图;
图13是本申请实施例提供的另一种在执行视频处理方法过程中涉及的电子设备100的内部模块与服务器200的内部模块以及各个内部模块之间可能的协作方式示意图;
图14是本申请实施例提供的一种电子设备100的结构示意图;
图15是本申请实施例提供的一种服务器200的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
应当理解,本申请的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请以下实施例中的术语“用户界面(user interface,UI)”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面是通过java、可扩展标记语言(extensible markuplanguage,XML)等特定计算机语言编写的源代码,界面源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容。用户界面常用的表现形式是图形用户界面(graphicuser interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的文本、图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
随着终端技术和网络技术的快速发展,在线视频逐渐成为人们生活中获取信息的一种重要途径。
场景一:片段视频切换到完整视频
在完整视频的运营过程中,为了提升视频的曝光率和会员转化率,通常会将完整视频的精彩部分截取成时间较短的视频片段(也可以称为片段视频/视频片段),其中,该片段视频可以独立呈现给用户进行播放,进一步地,可以以推送的方式将该片段视频推送给用户,用户可以利用碎片时间免费观看该片段视频,以吸引用户去观看需要付费的完整视频。
为了提升用户观看片段视频之后进而观看完整视频的转换体验,通常会在服务器(例如管理视频的服务器)上建立该片段视频与完整视频的关联关系,然后在用户播放该片段视频时,电子设备会基于上述已建立的关联关系获取到完整视频的播放页面的相关参数(例如播放地址),并且会在用户观看片段视频的界面上设置一个切换到完整视频的选项,用户点击该选项之后,电子设备即可跳转到对应的完整视频的播放页面上。
进一步地,为了实现用户在观看片段视频的过程中切换到完整视频时,能够在完整视频的播放页面上显示用户在执行切换操作时片段视频所播放到的那一个画面(或称镜头),并接续该画面来继续播放视频的后续画面,通常的做法是,在建立片段视频与完整视频的关联关系时,增加片段视频起始播放位置(即起始播放时间点,或称起始播放点)相对于完整视频的时间轴位置,然后在用户执行切换操作时,获取用户已播放的片段视频的播放时长,进一步,可以基于上述片段视频起始播放位置相对于完整视频的时间轴位置、已播放的片段视频的播放时长来计算完整视频的起始播放位置(或称起播位置、续播位置、起播时间点、续播时间点),从而完成画面的连续播放。
场景二:聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)
在聚合视频(即包括多个SP播放源的完整视频)的运营过程中,为了给用户提供更好的体验,可以在聚合视频的播放界面上提供在不同SP实例视频中进行切换的功能,在可能由于不同SP之间可能存在差异化的播放质量场景下(例如出现卡顿等场景下),确保用户可以主动切换到其他的SP实例视频,从而保障视频播放过程能够连续进行。
为了保障用户在不同SP实例视频之间进行切换的体验,通常的做法是,在用户从源SP实例视频切换到目的SP实例视频时,电子设备会将用户在执行切换操作时源SP实例视频的播放位置作为目的SP实例视频的起始播放位置(或称起播位置、续播位置、起播时间点、续播时间点)来在目的SP实例视频中进行续播,这样,用户在切换过程中,电子设备可以定位到两个不同SP实例视频中的相同画面,并进行续播,从而保障用户观看视频的连续性。
然而,在实际运营过程中,不同的SP可能会在基础视频中插入/裁剪一些片段得到其对应的实例视频,从而导致同一个视频的同一个画面在不同SP实例视频中的播放时间进度可能不同,因此,在这种情况下,如果依然采用上述场景一和上述场景二中的计算方法来确定续播位置,那么,可能无法在与片段视频相关联的完整视频中或目标SP实例视频中准确定位到用户执行切换操作时播放的那个画面,从而无法以该画面的播放位置作为完整视频或目标SP实例视频的起播位置来进行续播,因此,切换前后视频可能无法连续播放,用户体验差。
综上,可以看出,在上述场景一(片段视频切换到完整视频)和场景二(聚合视频中从一个SP实例视频切换到另一个SP实例视频)中,存在以下三个待解决的问题:
问题一(片段视频切换到完整视频时存在的问题):
在片段视频播放过程中,假设完整视频为聚合视频,用户将片段视频切换到完整视频进行续播的情况下,如果不同SP在基础视频中插入/裁剪了不同的片段得到其对应的完整实例视频,电子设备则无法通过相同的片段视频在不同SP的完整实例视频中准确定位到用户执行切换操作时播放的那个画面(即无法通过相同的片段视频准确定位到不同SP的完整实例视频的续播位置)进行续播,用户体验差。
具体地,在聚合视频运营的场景下,由于聚合视频来自于多个SP,为了提升用户的体验,需要将来自多个SP的相同的视频整合成一个面向视频的视频对象,用户在播放该聚合视频的时候,电子设备可以基于用户订购会员情况等信息为用户提供一个用户可播放的具体的播放视频文件,但是由于不同SP在实际运营过程中,可能会在基础视频(即原始的完整视频,不包含不同SP后续插入/裁剪的片段)中插入一些片段(例如发行信息、片头信息等),或者,由于合规原因会裁剪掉一些片段,因此,在实际运营过程中,同一个视频的同一个画面在不同SP实例视频中的播放时间进度可能存在一些差别,从而可能导致电子设备无法通过相同的片段视频在不同SP的完整实例视频中准确定位到用户执行切换操作时播放的那个画面进行续播。
举例来说,假设某聚合视频,包括两个SP的播放源:SP-A的播放源和SP-B的播放源。基础视频(即原始的完整视频)时长是40分钟,片段视频的剪辑位置是在00:20:00,剪辑了3分钟。假设SP-B的播放源中的完整视频在基础视频的00:20:10插入了10秒广告片段,SP-A的播放源中的完整视频在基础视频中没有插入广告片段,用户在播放了1分钟的片段视频时执行切换操作(即跳转到完整视频的操作),那么,如果切换到的完整视频为SP-A的播放源,那么,完整视频的起播位置则为正常的00:21:00,然而,如果切换到的完整视频为SP-B的播放源,同样按照当前的计算方法来计算完整视频的起播位置,那么,完整视频的起播位置还是00:21:00,这样,就会发现,在播放SP-B的完整视频的时候,用户需要多看10秒片段视频中已经看过的画面(即SP-A播放源中的00:20:50到00:21:00之间的画面),因此,SP-B的完整视频的起播位置应该在00:21:10,才能保证切换前后视频播放的连续性,准确地进行续播。
问题二(片段视频切换到完整视频时存在的问题):
在片段视频播放过程中,用户将片段视频切换到完整视频进行续播的情况下,如果SP在基础视频中插入/裁剪了一些片段,得到调整后的完整视频,则需要重新对片段视频进行调整才能确保准确定位到用户执行切换操作时播放的那个画面(即调整后的完整视频的续播位置)来进行续播。
具体地,在完整视频(包括聚合视频/非聚合视频)的运营过程中,SP可能会在基础视频中插入广告片段,或,由于监管合规要求可能会突然裁剪掉某些片段,得到调整后的完整视频,这样会导致调整后的完整视频与基础视频相比,播放时间进度发生变化,那么,前期在基础视频中剪辑得到的片段视频就存在不能和调整后的完整视频的时间轴对齐的问题,这样,就需要重新剪辑和发布片段视频,运营成本较高。
举例来说,假设基础视频(即原始的完整视频)时长是40分钟,片段视频的剪辑位置是在00:20:00,剪辑了3分钟。用户在播放了1分钟的片段视频时执行切换操作(即跳转到完整视频的操作),正常情况下(即没有在基础视频中插入/裁剪一些片段的情况下),应该是从00:21:00开始进行完整视频的续播。但是,如果后续的合规监管发现在基础视频中的00:20:10开始有一个3秒的不合规画面,则需要将这3秒的画面从基础视频中裁剪掉,裁剪之后,得到调整后的完整视频,那么,调整后的完整视频的时长则变成了39分钟57秒,这个时候,如果用户还是在播放了1分钟的片段视频时执行切换操作(即跳转到完整视频的操作),同样按照当前的计算方法来计算完整视频的起播位置,不考虑时间的偏移信息,那么,完整视频的起播位置还是00:21:00,但是,该起播位置对应的画面变成了调整前的完整视频中00:21:03的画面,这样,有3秒的画面用户无法看到,因此,调整后的完整视频准确的起播位置应该在00:20:57,才能保证切换前后视频播放的连续性,准确地进行续播。
问题三(聚合视频中从一个SP实例视频切换到另一个SP实例视频时存在的问题):
在聚合视频播放过程中,用户将一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)的情况下,如果不同的SP在基础视频中插入/裁剪了不同的片段得到其对应的实例视频,电子设备则无法准确计算目的SP实例视频的起播位置(即无法准确定位到两个不同SP实例视频中的同一个画面),从而无法保证切换前后视频播放的连续性,无法准确地进行续播。
为了解决上述问题,本申请实施例提供了一种视频处理方法,在聚合视频场景下,由于不同的SP可能在基础视频中插入、裁剪一个或多个片段,因此,在视频运营过程中会计算出上述一个或多个片段的偏移信息(例如插入/裁剪的位置信息、时长信息),电子设备在检测到用户的切换操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作)之后,可以基于上述一个或多个片段的偏移信息、用户执行切换操作时视频的播放时长等参数来计算续播位置,从而解决由于无法准确计算续播位置而导致的切换前后视频画面不连续的问题,提高用户体验。
容易理解,上述视频处理方法也可以应用于非聚合视频场景下,例如,在完整视频上线运营后,如果在完整视频插入/裁剪了一些片段,或,在完整视频中调整了已经插入/裁剪的一些片段,无需再对与该完整视频相关联的片段视频进行重新剪辑和发布,即可准确计算完整视频的续播位置,从而解决在对完整视频进行修改之后需要同步检查和修改片段视频来确保切换前后视频播放的连续性,准确地进行续播的问题,减少了运营成本。
下面,首先介绍本申请实施例提供的一种通信系统。
图1示例性示出了本申请实施例提供的一种通信系统。
如图1所示,该通信系统可以包括:电子设备100、服务器200。
电子设备100可以为具有视频播放能力的智能终端设备,可以用于播放片段视频/完整视频;还可以用于响应用户的切换操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作);还可以用于与服务器200进行数据交互;等等。
电子设备100可以为各种类型,本申请实施例对电子设备100的具体类型不作限制。例如,电子设备100可以为手机,还可以为平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、智慧屏,等等。
服务器200可以为视频运营服务器,可以用于在视频运营过程中进行数据的维护(例如维护不同的SP在基础视频中插入/裁剪的一个或多个片段的偏移信息、片段视频和完整视频之间的关联关系、等等);还可以用于与电子设备100进行数据交互;等等。
服务器200可以为传统服务器,也可以为云端服务器,本申请实施例对此不作限定。
其中,电子设备100和服务器200的具体功能会在后续实施例中详细描述,在此先不展开。
应当理解,图1仅仅为该通信系统的架构示意图,不应构成对本申请的限定。本申请实施例对该通信系统中包括的电子设备、服务器的数量不作限定。
场景一:片段视频切换到完整视频
下面介绍本申请实施例提供的视频处理方法在片段视频切换到完整视频这一场景下的具体执行过程。
图2示例性示出了本申请实施例提供的视频处理方法在片段视频切换到完整视频这一场景下的具体流程。
如图2所示,该方法可以应用于包括电子设备100、服务器200的通信系统,其中,电子设备100可以包括切换指令接收模块、播放鉴权模块、节目信息获取模块、续播计算模块、视频播放模块,服务器200可以包括节目数据管理服务模块、播放鉴权服务模块、流媒体服务模块。下面详细介绍该方法的具体步骤:
S201、服务器200的节目数据管理服务模块维护节目元数据。
具体地,在在线平台进行节目发行过程中,运营人员可以通过服务器200的节目数据管理服务模块来进行片段视频和完整视频的节目元数据(即节目信息)维护。
在现有技术中,运营人员进行片段视频和完整视频的节目元数据维护主要包括:记录片段视频的元数据(例如片段视频的ID等)、记录片段视频与完整视频的关联关系(例如片段视频的ID和完整视频的ID的关联关系)、记录片段视频相对于基础视频的剪辑位置信息(也可以称为拆条的起始位置信息)等。
在本申请实施例中,运营人员在进行完整视频的节目元数据维护的过程中,需要增加维护与完整视频相关联的每一个SP实例视频在运营过程中插入、裁剪的片段所对应的偏移信息。运营人员可以随每一个SP实例视频发布的过程,或,在每一个SP实例视频发布后根据运营需求来维护每一个SP实例视频中插入、裁剪的片段所对应的偏移信息。也即是说,在完整视频的节目信息中增加记录每一个SP实例视频的偏移信息列表,偏移信息列表中包括该SP实例视频中插入(例如前插、中插)、裁剪的片段所对应的偏移信息。
其中,上述偏移信息中可以包括:插入/裁剪片段基于基础视频的起始位置(即插入/裁剪片段基于基础视频的插入位置或裁剪位置)、偏移时长(即插入或裁剪的片段时长)。
上述每一个插入/裁剪的片段所对应的偏移信息可以简化描述为δ(B,L),其中,B可以表示插入/裁剪的片段基于基础视频的起始位置,L可以表示偏移时长。
容易理解,在偏移时长L大于0的情况下,SP实例视频是在基础视频上插入了片段,即插入片段对应的偏移时长为正数;在偏移时长L小于0的情况下,SP实例视频是在基础视频上裁剪了片段,即裁剪片段对应的偏移时长为负数。
假设基础视频的时长为30分钟,例如,某个插入片段基于基础视频的起始位置为00:00(即在基础视频的起始播放点插入,称为前插片段),插入时长为10秒,则该插入片段的偏移信息可以表示为δ(00:00,10);又例如,某个插入片段基于基础视频的起始位置为10:00(即在基础视频的起始播放点和结束播放点之间插入,称为中插片段),插入时长为10秒,则该插入片段的偏移信息可以表示为δ(10:00,10);又例如,某个裁剪片段基于基础视频的起始位置为20:00,裁剪时长为10秒,则该插入片段的偏移信息可以表示为δ(20:00,-10)。
上述每一个SP实例视频的偏移信息列表可以简化描述为list<δ(Bi,Li)>,其中,i可以表示插入/裁剪的片段的编号,i可以为正整数。
举例来说,某一个SP实例视频的有两个插入片段、一个裁剪片段,分别为插入片段1、插入片段2,裁剪片段3,则插入片段1的偏移信息可以表示为δ(B1,L1),插入片段2的偏移信息可以表示为δ(B2,L2),裁剪片段3的偏移信息可以表示为δ(B3,L3),该SP实例视频的偏移信息列表可以表示为{δ(B1,L1),δ(B2,L2),δ(B3,L3)}。
运营人员在完成片段视频的拆条操作(即剪辑操作)之后,可以在通过服务器200的节目数据管理服务模块发布片段视频的同时,维护片段视频与完整视频的关联关系、片段视频相对于基础视频的剪辑位置信息。
容易理解,运营人员在进行片段视频元数据的维护过程中,不需要关注与完整视频相关联的SP实例视频中的相关数据情况。
在本申请实施例中,基础视频可以是视频发行方提供的包括视频完整内容的原始视频,不包括后续各个SP插入的片段(例如广告片段等)。片段视频可以在基础视频中剪辑得到的其中一段视频。
S202、电子设备100的视频播放模块播放片段视频1。
具体地,电子设备100上可以安装有视频播放类的应用程序(例如“华为视频”应用程序),电子设备100中包括的上述切换指令接收模块、播放鉴权模块、节目信息获取模块、续播计算模块、视频播放模块可以包含于该应用程序中。电子设备100可以通过该应用程序中包括的视频播放模块来播放上述片段视频1。
容易理解,在播放上述片段视频1之前,电子设备100可以通过预下载或数据请求的方式向服务器200获取到上述片段视频1的视频资源。
在本申请实施例中,上述视频播放类的应用程序以“华为视频”应用程序为例,不限于此,还可以是其他的应用程序,本申请实施例对此不作限定。
示例性地,参阅图3A,图3A是电子设备100上的“桌面”应用程序中提供的一个用户界面310,该用户界面中可以包括一个或多个应用程序的图标,例如,“华为视频”应用程序的图标311,等等。电子设备100可以检测到用户针对“华为视频”应用程序的图标311的操作(例如点击操作),响应于该操作,电子设备100可以打开“华为视频”应用程序。
参阅图3B,图3B可以是“华为视频”应用程序中的“首页”选项对应的一个用户界面320,该用户界面中可以包括视频播放区域321,选项322(例如“看正片”选项)。
其中,视频播放区域321可以用于播放片段视频。
其中,选项322可以用于将片段视频切换到与该片段视频相关联的完整视频。
上述视频播放区域321中播放的片段视频可以为上述片段视频1,该片段视频1可以是“华为视频”应用程序自动推荐的,也可以是用户在“华为视频”应用程序主动搜索到的。
参阅图3C,图3C可以是“华为视频”应用程序中的“短视频”选项对应的一个用户界面330,该用户界面中可以包括视频播放区域331,选项332(例如“看完整版”选项)。
其中,视频播放区域331可以用于播放片段视频。
其中,选项332可以用于将片段视频切换到与该片段视频相关联的完整视频。
上述视频播放区域331中播放的片段视频可以为上述片段视频1,该片段视频1可以是“华为视频”应用程序自动推荐的,也可以是用户在“华为视频”应用程序主动搜索到的。
上述视频播放区域321、视频播放区域331中还可以包括视频播放进度条,视频播放进度条上可以显示有视频播放时长、视频的总时长。从视频播放进度条上可以看出,上述片段视频1的播放时长为30秒,总时长为3分钟。
上述图3A-图3C是电子设备100进入“华为视频”应用程序内部来播放片段视频1的过程,不限于此,电子设备100还可以在通知栏、负一屏中播放“华为视频”应用程序提供的片段视频1。
参阅图3D,图3D可以是电子设备100的“通知栏”对应的用户界面340,该用户界面中可以包括视频播放区域341,选项342(例如“看完整版”选项)。其中,视频播放区域341可以用于播放片段视频。其中,选项342可以用于将片段视频切换到与该片段视频相关联的完整视频。
类似地,参阅图3E,图3E可以是电子设备100的“负一屏”对应的用户界面350,该用户界面中可以包括视频播放区域351,选项352(例如“看完整版”选项)。其中,视频播放区域351可以用于播放片段视频。其中,选项352可以用于将片段视频切换到与该片段视频相关联的完整视频。
可以理解的是,在应用程序内部、通知栏、或者负一屏,电子设备100可以直接播放片段视频,无需用户触发播放该片段视频之后再进行播放;或者,电子设备100也可以先显示该片段视频中的某一个画面,在用户触发播放该片段视频之后再进行播放。
S203-S204、电子设备100的视频播放模块检测到用户切换播放与片段视频1相关联的完整视频(即完整视频1)的操作,响应于该操作,电子设备100的视频播放模块向电子设备100的切换指令接收模块发送切换指令,该指令中包括片段视频1的ID、切换时片段视频1的播放时长。
具体地,电子设备100的视频播放模块在播放片段视频1的过程中,如果用户想要切换到与片段视频1相关联的完整视频(即用户想要电子设备100的视频播放模块播放与片段视频1相关联的完整视频),那么,电子设备100的视频播放模块可以检测到用户切换播放与片段视频1相关联的完整视频(即完整视频1)的操作,响应于该操作,电子设备100的视频播放模块可以向电子设备100的切换指令接收模块发送切换指令,该指令中包括片段视频1的ID、切换时片段视频1的播放时长。
其中,上述“用户切换播放与片段视频1相关联的完整视频的操作”可以是用户针对图3B示例性所示的选项322或视频播放区域321的操作(例如点击操作),或,用户针对图3C示例性所示的选项332或视频播放区域331的操作(例如点击操作),或,用户针对图3D示例性所示的选项342的操作(例如点击操作),或,用户针对图3E示例性所示的选项352的操作(例如点击操作)。
容易理解,上述片段视频的ID是电子设备100在服务器200中获取到的。
在本申请实施例中,上述片段视频1的ID、切换时片段视频1的播放时长可以包含于上述切换指令中,也可以不包含于上述切换指令中,而是视频播放模块单独发送的,在此不作限定。
电子设备100的切换指令接收模块在接收到视频播放模块发送的切换指令之后,可以调用电子设备100的播放鉴权模块进行完整视频的播放鉴权,进一步地,电子设备100的播放鉴权模块可以基于切换指令接收模块接收到的切换指令来调用电子设备100的节目信息获取模块查询需要鉴权的完整视频的信息,进一步地,电子设备100的节目信息获取模块可以基于上述切换指令中包括的片段视频1的ID来调用服务器200的节目数据管理服务模块查询需要鉴权的完整视频的信息。上述过程的一种可能的实现方式可以为如下步骤S205-S207中描述的实现方式:
S205-S207、电子设备100的切换指令接收模块向电子设备100的播放鉴权模块发送消息1,该消息中可以包括片段视频1的ID、切换时片段视频1的播放时长。电子设备100的播放鉴权模块在接收到上述消息1之后,可以向电子设备100的节目信息获取模块发送消息2,该消息中可以包括片段视频1的ID。电子设备100的节目信息获取模块在接收到上述消息2之后,可以向服务器200的节目数据管理服务模块发送消息3,该消息中可以包括片段视频1的ID。
S208、服务器200的节目数据管理服务模块基于片段视频1的ID确定与片段视频1相关联的完整视频为完整视频1,并确定拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表。
具体地,服务器200的节目数据管理服务模块在接收到电子设备100的节目信息获取模块发送的上述消息3之后,由于服务器200的节目数据管理服务模块在前述步骤S201进行节目元数据的维护过程中已经记录了片段视频和完整视频的关联关系,因此,服务器200的节目数据管理服务模块可以基于该消息中包括的片段视频1的ID查询与该片段视频1相关联的完整视频。
其中,上述与该片段视频1相关联的完整视频可以是指剪辑得到该片段视频1的基础视频。假设与该片段视频1相关联的完整视频为完整视频1。
进一步地,在确定了与片段视频1相关联的完整视频为完整视频1之后,由于服务器200的节目数据管理服务模块在前述步骤S201进行节目元数据的维护过程中还记录了片段视频相对于基础视频的剪辑位置信息、与完整视频相关联的每一个SP实例视频在运营过程中插入、裁剪的片段所对应的偏移信息,因此,服务器200的节目数据管理服务模块还可以确定拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表。
S209、服务器200的节目数据管理服务模块向电子设备100的节目信息获取模块发送消息4,该消息中包括完整视频1的ID、拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表。
具体地,服务器200的节目数据管理服务模块在执行完上述步骤S208之后,可以向电子设备100的节目信息获取模块发送上述消息4。
S210、电子设备100的节目信息获取模块向电子设备100的播放鉴权模块发送消息5,该消息中包括完整视频1的ID、拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表。
具体地,电子设备100的节目信息获取模块在接收到服务器200的节目数据管理服务模块发送的上述消息4之后,可以向电子设备100的播放鉴权模块发送上述消息5。
S211、电子设备100的播放鉴权模块向服务器200的播放鉴权服务模块发送消息6,该消息中包括完整视频1的ID、用户信息1。
具体地,电子设备100的播放鉴权模块在接收到电子设备100的节目信息获取模块发送的上述消息5之后,可以向服务器200的播放鉴权服务模块发送上述消息6。
其中,上述用户信息1可以为用户在视频播放类应用程序(例如“华为视频”应用程序等)中登录的账号信息,该账号信息可以包括但不限于手机号,邮箱号,自定义的用户名,等等。
在一些示例中,上述用户信息1也可以在上述步骤S207中发送,在这种情况下,电子设备100的播放鉴权模块就无需执行上述步骤S211了,服务器200的节目数据管理服务模块也无需在上述步骤S209中向电子设备100的播放鉴权模块发送完整视频1的ID了,而是可以直接将完整视频1的ID发送给服务器200的播放鉴权模块,用于执行后续步骤S212。在这种情况下,步骤S208中“确定拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表”也可以后于步骤S212可以执行。
S212、服务器200的播放鉴权服务模块基于完整视频1的ID、用户信息1、鉴权规则确定用户可播放的与完整视频1相关联的SP实例视频对应的播放地址。
其中,上述鉴权规则可以是预先设置好的,可以用于确定用户是否有权限播放SP实例视频。
具体地,服务器200的播放鉴权服务模块可以先基于完整视频1的ID查找到与该完整视频1相关联的全部SP实例视频对应的播放地址,进一步地,还可以基于用户信息1、鉴权规则确定上述全部SP实例视频对应的播放地址中用户可播放(即用户有权限播放)的SP实例视频对应的播放地址。
举例来说,假设鉴权规则中规定,与完整视频1相关联的某一个SP实例视频只有开通该SP会员的用户才有权限播放,根据用户信息1,若确定该用户为该SP的会员用户,则可以进一步确定用户可播放该SP实例视频,若确定该用户为该SP的非会员用户,则可以进一步确定用户不可播放该SP实例视频。
可以理解的是,用户可播放的与完整视频1相关联的SP实例视频可以为0个,在这种情况下,则无法播放SP实例视频;也可以为1个,在这种情况下,则只可以播放这一个SP实例视频;也可以为2个及以上,在这种情况下,则可以根据预设的运营策略来播放其中一个SP实例视频,例如,用户可播放的与完整视频1相关联的SP实例视频有2个,分别为“华为视频”这一SP和另外一个SP提供的,如果预设的运营策略为“华为视频”这一SP优先于另外那个SP,那么,电子设备100则播放“华为视频”这一SP提供的SP实例视频,否则,播放另外那个SP提供的SP实例视频。
S213、服务器200的播放鉴权服务模块向电子设备100的播放鉴权模块发送消息7,该消息中包括用户可播放的与完整视频1相关联的SP实例视频对应的播放地址。
具体地,服务器200的播放鉴权服务模块在执行完上述步骤S212之后,可以向电子设备100的播放鉴权模块发送上述消息7。
S214、电子设备100的播放鉴权模块向电子设备100的续播计算模块发送消息8,该消息中包括切换时片段视频1的播放时长、拆条的起始位置、用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表、播放地址。
具体地,电子设备100的播放鉴权模块在接收到服务器200的播放鉴权服务模块发送的上述消息7之后,可以向电子设备100的续播计算模块发送上述消息8,用于指示续播计算模块计算用户可播放的与完整视频1相关联的SP实例视频的起播位置信息。
S215、电子设备100的续播计算模块基于切换时片段视频1的播放时长、拆条的起始位置、用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表确定上述SP实例视频的起播位置信息。
具体地,电子设备100的续播计算模块在接收到电子设备100的播放鉴权模块发送的上述消息8之后,可以基于该消息中包括的切换时片段视频1的播放时长、拆条的起始位置、用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表确定上述SP实例视频的起播位置信息。
下面详细介绍“电子设备100的续播计算模块基于切换时片段视频1的播放时长、拆条的起始位置、用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表确定上述SP实例视频的起播位置信息”的具体过程:
示例性地,参阅图4,图4是本申请实施例提供的一种在“片段视频切换到完整视频”这一场景下进行续播计算的原理示意图。
假设图4中所示的片段视频为上述片段视频1,基础视频为上述完整视频1(即剪辑得到片段视频1的视频),SP-A实例视频为用户可播放的与完整视频1相关联的一个SP实例视频,SP-B实例视频为用户可播放的与完整视频1相关联的另一个SP实例视频,SP-A实例视频和SP-B实例视频是对应SP由于运营原因在基础视频上插入/裁剪一些片段得到的。
“切换时片段视频1的播放时长”可以是由用户播放点Pi(即用户执行切换动作时片段视频1的播放进度时间点)确定的,其中,i为正整数。例如,用户播放点Pi为00:30,则切换时片段视频1的播放时长为30秒。
“拆条的起始位置”可以是由片段视频起始播放点F所在的位置相对于基础视频的时间轴位置确定的。其中,拆条的起始位置是在开始剪辑片段视频时就记录下的。可以看出,片段视频起始播放点F所在的位置为片段视频的起始播放位置,片段视频起始播放点F所在的位置相对于基础视频的时间轴位置为内容拆条点Pf所在的位置(即拆条的起始位置)。也即是说,片段视频是在内容拆条点Pf所在的位置开始剪辑的,剪辑的长度(即片段视频的时长)为片段视频结束播放点F’与片段视频起始播放点F之间的时间差值。基础视频的时长为基础视频结束播放点O’与基础视频起始播放点O之间的时间差值。
“用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表”可以是由插入/裁剪的片段基于基础视频的起始位置和偏移时长确定的。其中,用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表是在前述节目元数据维护过程中记录下的。以SP-A实例视频为例,可以看出,SP-A实例视频是在基础视频中插入了两个片段(前插视频片段、中插视频片段)、裁剪了一个片段(裁剪视频片段)。其中,前插视频片段的插入位置为B1,偏移时长为L1;中插视频片段的插入位置为B2,偏移时长为L2;裁剪视频片段的裁剪位置为B3,偏移时长为L3。因此,SP-A实例视频的偏移信息列表可以表示为{δ(B1,L1),δ(B2,L2),δ(B3,L3)}。SP-A实例视频的时长为SP-A实例视频结束播放点O1’与SP-A实例视频起始播放点O1之间的时间差值。
续播计算模块可以先基于切换时片段视频1的播放时长、拆条的起始位置来确定基础视频的续播点,之后,再基于基础视频的续播点和SP-A实例视频的偏移信息列表来确定SP-A实例视频的续播点(即SP-A实例视频的起播位置信息)。
容易理解,基础视频的续播点是由拆条的起始位置叠加切换时片段视频1的播放时长来确定的。举例来说,假设切换时的片段视频1的播放时长Lf为30秒,拆条的起始位置Pf为10:00,那么,基础视频的续播点CP则为CP=Pf+Lf=10:30。
在确定基础视频的续播点之后,首先需要判断SP-A实例视频中在基础视频的续播点所在的位置之前是否插入/裁剪了片段,若是,则SP-A实例视频的续播点要在基础视频的续播点上叠加在基础视频的续播点所在的位置之前插入/裁剪的全部片段的偏移时长;若否,则SP-A实例视频的续播点即为基础视频的续播点。
也即是说,假设基础视频的续播点为CP,则SP-A实例视频的续播点CP’则为其中,n为在基础视频的续播点所在的位置之前插入和裁剪的片段的总数,Li为在基础视频的续播点所在的位置之前插入/裁剪的第i个片段的偏移时长。
举例来说,参阅图4,用户播放点P1对应的基础视频的续播点为CP1,可以看出,SP-A实例视频中在CP1所在的位置之前插入了一个片段(即前插视频片段),那么,SP-A实例视频的续播点CP1’=CP1+L1。用户播放点P2对应的基础视频的续播点为CP2,可以看出,SP-A实例视频中在CP2所在的位置之前插入了两个片段(即前插视频片段和中插视频片段),那么,SP-A实例视频的续播点CP2’=CP2+L1+L2。用户播放点P3对应的基础视频的续播点为CP3,可以看出,SP-A实例视频中在CP3所在的位置之前插入了两个片段(即前插视频片段和中插视频片段)、裁剪了一个片段(即裁剪视频片段),那么,SP-A实例视频的续播点CP3’=CP3+L1+L2+L3。容易理解,插入片段的偏移时长均为正数,裁剪片段的偏移时长均为负数。
其中,“判断SP-A实例视频中在基础视频的续播点所在的位置之前是否插入/裁剪了片段”的过程如下:如果SP-A实例视频的偏移信息列表中记录的插入/裁剪片段基于基础视频的插入位置或裁剪位置在基础视频的续播点所在的位置之前,则确定SP-A实例视频中在基础视频的续播点所在的位置之前插入/裁剪了片段。
容易理解,SP-A实例视频中在基础视频的续播点所在的位置之前插入/裁剪了片段,也即表示,在SP-A实例视频的续播点所在的位置之前插入/裁剪了片段;SP-A实例视频中在基础视频的续播点所在的位置之前没有插入/裁剪片段,也即表示,在SP-A实例视频的续播点所在的位置之前没有插入/裁剪片段。
上述仅仅是以“用户可播放的与完整视频1相关联的SP实例视频是SP-A实例视频为例”来计算SP实例视频的续播点,容易理解,在用户可播放的与完整视频1相关联的SP实例视频为多个不同SP实例视频的情况下,可以分别通过上述方式来计算每一个SP实例视频的续播点,以适配用户向不同SP实例视频进行切换时都能准确定位到相应的续播点,以保证视频播放的连续性。
参阅图4,SP-B实例视频的偏移信息列表可以表示为{δ(B2’,L2’),δ(B3’,L3’)}。SP-B实例视频的时长为SP-B实例视频结束播放点O2’与SP-B实例视频起始播放点O2之间的时间差值。类似地,按照上述计算SP实例视频的方式,容易理解,在用户播放点为P1的情况下,SP-B实例视频的续播点CP1”=CP1,在用户播放点为P2的情况下,SP-B实例视频的续播点CP2”=CP2+L2’,在用户播放点为P3的情况下,SP-B实例视频的续播点CP3”=CP3+L2’+L3’。
容易理解,片段视频1是在基础视频中剪辑得到的一个视频片段,也是“与完整视频1相关联的SP实例视频”中的一个视频片段。
S216、电子设备100的续播计算模块向电子设备100的视频播放模块发送消息9,该消息中包括上述SP实例视频的起播位置信息、播放地址。
具体地,电子设备100的续播计算模块在执行完上述步骤S215之后,可以向电子设备100的视频播放模块发送消息9,用于指示电子设备100的视频播放模块获取上述SP实例视频起播位置之后的视频流数据。
S217、电子设备100的视频播放模块向服务器200的流媒体服务模块发送消息10,该消息中包括上述SP实例视频的起播位置信息、播放地址。
具体地,电子设备100的视频播放模块在接收到电子设备100的续播计算模块发送的上述消息9之后,可以向服务器200的流媒体服务模块发送上述消息10,用于向服务器200的流媒体服务模块获取上述SP实例视频起播位置之后的视频流数据。
S218-S220、服务器200的流媒体服务模块基于上述SP实例视频的起播位置信息、播放地址查找上述SP实例视频起播位置之后的视频流数据。之后,服务器200的流媒体服务模块可以向电子设备100的视频播放模块发送消息11,该消息中包括上述SP实例视频起播位置之后的视频流数据。之后,电子设备100的视频播放模块可以基于上述SP实例视频起播位置之后的视频流数据播放起播位置之后的上述SP实例视频。
举例来说,假设切换时的片段视频1的播放时长Lf为30秒,拆条的起始位置Pf为10:00,那么,基础视频的续播点CP则为CP=Pf+Lf=10:30,上述SP实例视频的续播点CP’(即上述SP实例视频的起播位置信息)则为其中,n为在基础视频的续播点所在的位置之前插入和裁剪的片段的总数,Li为在基础视频的续播点所在的位置之前插入/裁剪的第i个片段的偏移时长。
1、在为0的情况下(即在基础视频的续播点所在的位置之前插入和裁剪的片段的总数为0的情况下,或,在基础视频的续播点所在的位置之前插入和裁剪的全部片段的偏移时长总和为0的情况下),上述SP实例视频的续播点CP’与基础视频的续播点CP相同,即均为10:30。
示例性地,参阅图5A,图5A所示的用户界面可以是用户执行完切换操作之后开始进行SP实例视频续播时显示的一个用户界面,上述SP实例视频可以是以“华为视频”这一SP提供的实例视频为例,可以看出,该SP实例视频的起播位置(即该SP实例视频的续播点)为10:30,也即是说,在用户执行切换操作时片段视频1所播放的画面在该SP实例视频中所在的位置为10:30。进一步地,电子设备100可以基于获取到的该SP实例视频起播位置之后的视频流数据在10:30继续播放起播位置之后的该SP实例视频。
2、在不为0的情况下(即在基础视频的续播点所在的位置之前插入/裁剪的片段的总数不为0,且基础视频的续播点所在的位置之前插入和裁剪的全部片段的偏移时长总和不为0的情况下),上述SP实例视频的续播点CP’与基础视频的续播点CP则不相同。
在大于0的情况下,假设/>为20秒,基础视频的续播点CP仍为10:30,那么,上述SP实例视频的续播点CP’则CP’=10:30+20=10:50。
示例性地,参阅图5B,图5B所示的用户界面可以是用户执行完切换操作之后开始进行SP实例视频续播时显示的一个用户界面,上述SP实例视频可以是以“华为视频”这一SP提供的实例视频为例,可以看出,该SP实例视频的起播位置(即该SP实例视频的续播点)为10:50,也即是说,在用户执行切换操作时片段视频1所播放的画面在该SP实例视频中所在的位置为10:50。进一步地,电子设备100可以基于获取到的该SP实例视频起播位置之后的视频流数据在10:50继续播放起播位置之后的该SP实例视频。
容易理解,在上述这种不为0的情况下,在计算SP实例视频的续播点时如果不叠加插入/裁剪片段的偏移时长,那么,计算出来的SP实例视频的续播点与基础视频的续播点相同,仍然为10:30,开始续播的画面也就为SP实例视频中10:30对应的画面(例如图5C所示的画面),因此,需要继续播放20秒才能显示用户执行切换操作时片段视频1所播放的画面(例如图5B所示的SP实例视频中10:50对应的画面),无法实现切换前后视频播放的连续性,用户体验差。
上述是以SP实例视频是以“华为视频”这一SP提供的实例视频为例说明了大于0的情况,下面以SP实例视频是以“XX视频1”这一SP提供的实例视频为例说明/>小于0的情况:
假设为-20秒,基础视频的续播点CP仍为10:30,那么,上述SP实例视频的续播点CP’则CP’=10:30-20=10:10。
示例性地,参阅图5D,图5D所示的用户界面可以是用户执行完切换操作之后开始进行SP实例视频续播时显示的一个用户界面,上述SP实例视频可以是以“XX视频1”这一SP提供的实例视频为例,可以看出,该SP实例视频的起播位置(即该SP实例视频的续播点)为10:10,也即是说,在用户执行切换操作时片段视频1所播放的画面在该SP实例视频中所在的位置为10:10。进一步地,电子设备100可以基于获取到的该SP实例视频起播位置之后的视频流数据在10:10继续播放起播位置之后的该SP实例视频。
容易理解,在上述这种小于0的情况下,在计算SP实例视频的续播点时如果不叠加插入/裁剪片段的偏移时长,那么,计算出来的SP实例视频的续播点与基础视频的续播点相同,仍然为10:30,开始续播的画面也就为SP实例视频中10:30对应的画面(例如图5E所示的画面),与用户执行切换操作时片段视频1所播放的画面不一致,无法实现切换前后视频播放的连续性,用户体验差。
场景一:片段视频切换到完整视频
下面介绍本申请实施例提供的视频处理方法在片段视频切换到完整视频这一场景下的具体执行过程。
图6示例性示出了本申请实施例提供的另一种视频处理方法在片段视频切换到完整视频这一场景下的具体流程。
如图6所示,该方法可以应用于包括电子设备100、服务器200的通信系统,其中,电子设备100可以包括切换指令接收模块、播放鉴权模块、节目信息获取模块、视频播放模块,服务器200可以包括节目数据管理服务模块、播放鉴权服务模块、续播计算模块、流媒体服务模块。与前述图2不同的是,图6中的续播计算模块包含于服务器200中,而非电子设备100中。下面详细介绍该方法的具体步骤:
S601、服务器200的节目数据管理服务模块维护节目元数据。
S602、电子设备100的视频播放模块播放片段视频1。
S603-S604、电子设备100的视频播放模块检测到用户切换播放与片段视频1相关联的完整视频(即完整视频1)的操作,响应于该操作,电子设备100的视频播放模块向电子设备100的切换指令接收模块发送切换指令,该指令中包括片段视频1的ID、切换时片段视频1的播放时长。
S605-S607、电子设备100的切换指令接收模块向电子设备100的播放鉴权模块发送消息1,该消息中可以包括片段视频1的ID、切换时片段视频1的播放时长。电子设备100的播放鉴权模块在接收到上述消息1之后,可以向电子设备100的节目信息获取模块发送消息2,该消息中可以包括片段视频1的ID。电子设备100的节目信息获取模块在接收到上述消息2之后,可以向服务器200的节目数据管理服务模块发送消息3,该消息中可以包括片段视频1的ID。
S608、服务器200的节目数据管理服务模块基于片段视频1的ID确定与片段视频1相关联的完整视频为完整视频1,并确定拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表。
其中,上述步骤S601-步骤S608与前述图2所示的步骤S201-步骤S208类似,具体执行过程可以参照前述图2所示的步骤S201-步骤S208的相关内容,在此不再赘述。
S609、服务器200的节目数据管理服务模块向电子设备100的节目信息获取模块发送消息4,该消息中包括完整视频1的ID。
具体地,服务器200的节目数据管理服务模块在执行完上述步骤S608之后,可以向电子设备100的节目信息获取模块发送上述消息4。
S610、电子设备100的节目信息获取模块向电子设备100的播放鉴权模块发送消息5,该消息中包括完整视频1的ID。
具体地,电子设备100的节目信息获取模块在接收到服务器200的节目数据管理服务模块发送的上述消息4之后,可以向电子设备100的播放鉴权模块发送上述消息5。
S611、电子设备100的播放鉴权模块向服务器200的播放鉴权服务模块发送消息6,该消息中包括完整视频1的ID、用户信息1、切换时片段视频1的播放时长。
具体地,电子设备100的播放鉴权模块在接收到电子设备100的节目信息获取模块发送的上述消息5之后,可以向服务器200的播放鉴权服务模块发送上述消息6。
其中,上述用户信息1可以为用户在一个或多个视频播放类应用程序(例如“华为视频”应用程序等)中登录的账号信息,该账号信息可以包括但不限于手机号,邮箱号,自定义的用户名,等等。
S612、服务器200的播放鉴权服务模块基于完整视频1的ID、用户信息1、鉴权规则确定用户可播放的与完整视频1相关联的SP实例视频对应的播放地址。
其中,上述步骤S612与前述图2所示的步骤S212类似,具体执行过程可以参照前述图2所示的步骤S212的相关内容,在此不再赘述。
S613、服务器200的节目数据管理服务模块向服务器200的播放鉴权服务模块发送消息7,该消息中包括拆条的起始位置、与完整视频1相关联的各个SP实例视频的偏移信息列表。
其中,步骤S613也可以是在执行完上述步骤S608之后就执行,也可以是在执行上述步骤S609-步骤S612过程中执行,本申请实施例对其执行时间不作限定。
S614、服务器200的播放鉴权服务模块向服务器200的续播计算模块发送消息8,该消息中包括切换时片段视频1的播放时长、拆条的起始位置、用户可播放的与完整视频1相关联的各个SP实例视频的偏移信息列表。
S615、服务器200的续播计算模块基于切换时片段视频1的播放时长、拆条的起始位置、用户可播放的与完整视频1相关联的SP实例视频的偏移信息列表确定上述SP实例视频的起播位置信息。
其中,上述步骤S615与前述图2所示的步骤S215类似,具体执行过程可以参照前述图2所示的步骤S215的相关内容,在此不再赘述。
S616、服务器200的续播计算模块向服务器200的播放鉴权服务模块发送消息9,该消息中包括上述SP实例视频的起播位置信息。
具体地,服务器200的续播计算模块在执行完上述步骤S615之后,可以向服务器200的播放鉴权服务模块发送上述消息9。
S617、服务器200的播放鉴权服务模块向电子设备100的播放鉴权模块发送消息10,该消息中包括上述SP实例视频的起播位置信息、播放地址。
具体地,服务器200的播放鉴权服务模块在接收到服务器200的续播计算模块发送的上述消息9之后,可以向电子设备100的播放鉴权模块发送上述消息10。
S618、电子设备100的播放鉴权模块向电子设备100的视频播放模块发送消息11,该消息中包括上述SP实例视频的起播位置信息、播放地址。
具体地,电子设备100的播放鉴权模块在接收到服务器200的播放鉴权服务模块发送的上述消息10之后,可以向电子设备100的视频播放模块发送上述消息11,用于指示电子设备100的视频播放模块获取上述SP实例视频起播位置之后的视频流数据。
S619、电子设备100的视频播放模块向服务器200的流媒体服务模块发送消息12,该消息中包括上述SP实例视频的起播位置信息、播放地址。
S620-S622、服务器200的流媒体服务模块基于上述SP实例视频的起播位置信息、播放地址查找上述SP实例视频起播位置之后的视频流数据。之后,服务器200的流媒体服务模块可以向电子设备100的视频播放模块发送消息13,该消息中包括上述SP实例视频起播位置之后的视频流数据。之后,电子设备100的视频播放模块可以基于上述SP实例视频起播位置之后的视频流数据播放起播位置之后的上述SP实例视频。
其中,上述步骤S619-步骤S622与前述图2所示的步骤S217-步骤S220类似,具体执行过程可以参照前述图2所示的步骤S217-步骤S220的相关内容,在此不再赘述。
通过实施上述图2或图6所示实施例中的方法,在视频运营过程中可以在每一个SP实例视频的元数据中增加记录该SP实例视频在基础视频中插入/裁剪的片段对应的偏移信息,电子设备100在检测到用户将片段视频切换到完整视频的操作之后,可以基于上述偏移信息等参数来准确计算SP实例视频的续播点,这样,在不同SP实例视频在基础视频中插入/裁剪一个或多个片段的情况下,仍可以通过该片段视频在不同SP的实例视频中准确定位到用户执行切换操作时播放的那个画面,并进行续播,保证了切换前后视频播放的连续性,提高用户体验。此外,SP实例视频在运营过程中如果调整了已经插入/裁剪的一些片段,由于插入/裁剪片段对应的偏移信息也会随之更新,因此,无需对片段视频进行重新剪辑和发布,就可以准确定位到用户执行切换操作时播放的那个画面,减少运营成本。
场景二:聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)
下面介绍本申请实施例提供的视频处理方法在聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)这一场景下的具体执行过程。
图7示例性示出了本申请实施例提供的视频处理方法在聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)这一场景下的具体流程。
如图7所示,该方法可以应用于包括电子设备100、服务器200的通信系统,其中,电子设备100可以包括切换指令接收模块、播放鉴权模块、节目信息获取模块、续播计算模块、视频播放模块,服务器200可以包括节目数据管理服务模块、播放鉴权服务模块、流媒体服务模块。下面详细介绍该方法的具体步骤:
S701、服务器200的节目数据管理服务模块维护节目元数据。
与前述场景一(片段视频切换到完整视频)不同的是,在该场景二下,由于只涉及一个聚合视频,而不涉及片段视频,因此,在节目元数据维护过程中可以不需要维护片段视频的节目信息,而只需要增加维护聚合视频中包括的一个或多个SP实例视频的偏移信息列表。
也即是说,运营人员在通过服务器200的节目数据管理服务模块发布聚合视频中包括的一个或多个SP实例视频的时候,需要在对应的SP实例视频的节目信息中增加维护该SP实例视频的偏移信息列表。
其中,关于SP实例视频的偏移信息列表的介绍可以参照前述图2中步骤S201中的相关内容,在此不再赘述。
S702、电子设备100的视频播放模块播放聚合视频1的SP-A实例视频(源SP实例视频)。
具体地,电子设备100上可以安装有视频播放类的应用程序(例如“华为视频”应用程序),电子设备100中包括的上述切换指令接收模块、播放鉴权模块、节目信息获取模块、续播计算模块、视频播放模块可以包含于该应用程序中。电子设备100可以通过该应用程序中包括的视频播放模块来播放上述聚合视频1中的每一个SP实例视频(例如SP-A实例视频)。
容易理解,在播放上述源SP实例视频之前,电子设备100可以通过预下载或数据请求的方式向服务器200获取到源SP实例视频的视频资源。
在本申请实施例中,上述视频播放类的应用程序以“华为视频”应用程序为例,不限于此,还可以是其他的应用程序,本申请实施例对此不作限定。
示例性地,参阅图8A,图8A可以是“华为视频”应用程序提供的一个播放视频的用户界面810,该用户界面中可以包括视频播放区域811,选项812。
其中,视频播放区域811可以用于播放SP实例视频。
其中,选项812可以用于用户选择播放不同SP提供的实例视频。
上述视频播放区域811中播放的视频可以为上述聚合视频1的SP-A实例视频,可以看出,上述“SP-A”是以“华为视频”为例,也即是说,上述视频播放区域321中播放的视频是“华为视频”这一SP提供的播放源。
上述视频播放区域811中还可以包括视频播放进度条,视频播放进度条上可以显示有视频播放时长。从视频播放进度条上可以看出,上述聚合视频1的SP-A实例视频的播放时长为10分30秒。
S703-S704、电子设备100的视频播放模块检测到用户切换播放聚合视频1的SP-B实例视频(目的SP实例视频)的操作,响应于该操作,电子设备100的视频播放模块向电子设备100的切换指令接收模块发送切换指令,该指令中包括聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息。
在用户播放SP-A实例视频的时候,为了规避不同SP的视频流可能出现体验上的差异(例如卡顿)的问题,电子设备100的视频播放模块可以为用户提供选择播放不同SP实例视频的选项,从而可以支持用户主动切换不同的SP实例视频来进行播放。
示例性地,参阅图8A,电子设备100可以检测到用户针对选项812的操作(例如点击操作),响应于该操作,电子设备100可以显示图8B示例性所示的窗口820,该窗口中可以包括多个不同SP(例如SP-A、SP-B、SP-C等等)对应的选项(例如选项821、选项822、选项823)。
以SP-A是“华为视频”、SP-B是“XX视频1”、SP-C是“XX视频2”为例,从图8B中可以看出,当前播放的聚合视频1的SP实例视频为SP-A实例视频,如果用户想要切换播放聚合视频1的SP-B实例视频,那么,电子设备100的视频播放模块可以检测到用户切换播放聚合视频1的SP-B实例视频的操作(例如点击选项822的操作),响应于该操作,电子设备100的视频播放模块可以向电子设备100的切换指令接收模块发送切换指令,该指令中包括聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息。
从图8B中可以看出,切换时源SP实例视频的播放时长为10分30秒,源SP实例视频的标识信息可以为SP-A的标识信息(例如“华为视频”),目的SP实例视频的标识信息可以为SP-B的标识信息(例如“XX视频1”)。
在本申请实施例中,上述聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息可以包含于上述切换指令中,也可以不包含于上述切换指令中,而是视频播放模块单独发送的,在此不作限定。
电子设备100的切换指令接收模块在接收到视频播放模块发送的切换指令之后,可以调用电子设备100的播放鉴权模块进行目的SP实例视频的播放鉴权,进一步地,电子设备100的播放鉴权模块可以基于切换指令接收模块接收到的切换指令来调用电子设备100的节目信息获取模块查询需要鉴权的目的SP实例视频的信息,进一步地,电子设备100的节目信息获取模块可以基于上述切换指令中包括的聚合视频1的ID、源SP实例视频的标识信息、目的SP实例视频的标识信息来调用服务器200的节目数据管理服务模块查询需要鉴权的目的SP实例视频的信息。上述过程的一种可能的实现方式可以为如下步骤S705-S707中描述的实现方式:
S705-S707、电子设备100的切换指令接收模块向电子设备100的播放鉴权模块发送消息1,该消息中可以包括聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息。电子设备100的播放鉴权模块在接收到上述消息1之后,可以向电子设备100的节目信息获取模块发送消息2,该消息中可以包括聚合视频1的ID、源SP实例视频的标识信息、目的SP实例视频的标识信息。电子设备100的节目信息获取模块在接收到上述消息2之后,可以向服务器200的节目数据管理服务模块发送消息3,该消息中可以包括聚合视频1的ID、源SP实例视频的标识信息、目的SP实例视频的标识信息。
S708、服务器200的节目数据管理服务模块基于聚合视频1的ID、源SP实例视频的标识信息、目的SP实例视频的标识信息确定源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
具体地,服务器200的节目数据管理服务模块在接收到电子设备100的节目信息获取模块发送的上述消息3之后,可以基于聚合视频1的ID查找到该聚合视频中包括的全部SP实例视频对应的节目信息,进一步地,由于在前述步骤S701进行节目元数据的维护过程中已经记录了该聚合视频中包括的全部SP实例视频的偏移信息列表,因此,可以基于源SP实例视频的标识信息、目的SP实例视频的标识信息查找到源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
S709、服务器200的节目数据管理服务模块向电子设备100的节目信息获取模块发送消息4,该消息中包括源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
具体地,服务器200的节目数据管理服务模块在执行完上述步骤S708之后,可以向电子设备100的节目信息获取模块发送上述消息4。
S710、电子设备100的节目信息获取模块向电子设备100的播放鉴权模块发送消息5,该消息中包括源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
具体地,电子设备100的节目信息获取模块在接收到服务器200的节目数据管理服务模块发送的上述消息4之后,可以向电子设备100的播放鉴权模块发送上述消息5。
S711、电子设备100的播放鉴权模块向服务器200的播放鉴权服务模块发送消息6,该消息6可以用于对用户的播放权限进行确认。该消息6中可以包括聚合视频1的ID、目的SP实例视频的标识信息、用户信息1。
具体地,电子设备100的播放鉴权模块在接收到电子设备100的节目信息获取模块发送的上述消息5之后,可以向服务器200的播放鉴权服务模块发送上述消息6。
其中,上述用户信息1可以为用户在视频播放类应用程序(例如“华为视频”应用程序、“XX视频1”应用程序等)中登录的账号信息,该账号信息可以包括但不限于手机号,邮箱号,自定义的用户名,等等。
在一些示例中,上述用户信息1也可以在上述步骤S707中发送,在这种情况下,电子设备100的播放鉴权模块就无需执行上述步骤S711了。
S712、服务器200的播放鉴权服务模块基于聚合视频1的ID、目的SP实例视频的标识信息、用户信息1、鉴权规则确定用户可播放目的SP实例视频,并确定目的SP实例视频对应的播放地址。
其中,上述鉴权规则可以是预先设置好的,可以用于确定用户是否有权限播放目的SP实例视频。
具体地,服务器200的播放鉴权服务模块可以先基于聚合视频1的ID和目的SP实例视频的标识信息查找到目的SP实例视频的节目信息,进一步地,可以基于用户信息1、鉴权规则来确定用户是否可播放(即是否有权限播放)该目的SP实例视频。若是,则进一步地可以从查找到的目的SP实例视频的节目信息中来获取目的SP实例视频对应的播放地址。
举例来说,假设鉴权规则中规定,上述目的SP实例视频只有开通该SP会员的用户才有权限播放,根据用户信息1,若确定该用户为该SP的会员用户,则可以进一步确定用户可播放该SP实例视频;若确定该用户为该SP的非会员用户,则可以进一步确定用户不可播放该SP实例视频,并且不再执行后续步骤。
S713、服务器200的播放鉴权服务模块向电子设备100的播放鉴权模块发送消息7,该消息中包括目的SP实例视频对应的播放地址。
具体地,服务器200的播放鉴权服务模块在执行完上述步骤S712之后,可以向电子设备100的播放鉴权模块发送上述消息7。
S714、电子设备100的播放鉴权模块向电子设备100的续播计算模块发送消息8,该消息中包括切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表、目的SP实例视频对应的播放地址。
具体地,电子设备100的播放鉴权模块在接收到服务器200的播放鉴权服务模块发送的上述消息7之后,可以向电子设备100的续播计算模块发送上述消息8,用于指示续播计算模块计算目的SP实例视频的起播位置信息。
S715、电子设备100的续播计算模块基于切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表确定目的SP实例视频的起播位置信息。
具体地,电子设备100的续播计算模块在接收到电子设备100的播放鉴权模块发送的上述消息8之后,可以基于该消息中包括的切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表确定目的SP实例视频的起播位置信息。
下面详细介绍“电子设备100的续播计算模块基于切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表确定目的SP实例视频的起播位置信息”的具体过程:
示例性地,参阅图9,图9是本申请实施例提供的一种在“聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)”这一场景下进行续播计算的原理示意图。
如图9所示,假设聚合视频包括SP-A实例视频、SP-B实例视频、SP-C实例视频,其中,SP-A实例视频、SP-B实例视频、SP-C实例视频是不同SP由于运营原因在图9所示的基础视频上插入/裁剪一些片段得到的。基础视频的时长为基础视频结束播放点O’与基础视频起始播放点O之间的时间差值。
“切换时源SP实例视频的播放时长”可以是由用户播放点Pi(即用户执行切换动作时源SP实例视频的播放进度时间点)确定的,其中,i为正整数。例如,用户播放点Pi为10:30,则切换时源SP实例视频的播放时长为10分30秒。
“源SP实例视频的偏移信息列表”可以是由插入/裁剪的片段基于基础视频的起始位置和偏移时长确定的。其中,源SP实例视频的偏移信息列表是在前述节目元数据维护过程中记录下的。以源SP实例视频为SP-A实例视频为例,可以看出,SP-A实例视频是在基础视频中插入了两个片段(即前插视频片段和中插视频片段)、裁剪了一个片段(裁剪视频片段)。其中,前插视频片段的插入位置为B1,偏移时长为L1;中插视频片段的插入位置为B2,偏移时长为L2;裁剪视频片段的裁剪位置为B3,偏移时长为L3。因此,SP-A实例视频的偏移信息列表可以表示为{δ1(B1,L1),δ1(B2,L2),δ1(B3,L3)}。
“目的SP实例视频的偏移信息列表”可以是由插入/裁剪的片段基于基础视频的起始位置和偏移时长确定的。其中,目的SP实例视频的偏移信息列表是在前述节目元数据维护过程中记录下的。以目的SP实例视频为SP-B实例视频为例,可以看出,SP-B实例视频是在基础视频中插入了一个片段(中插视频片段)、裁剪了一个片段(裁剪视频片段)。其中,中插视频片段的插入位置为B2’,偏移时长为L2’;裁剪视频片段的裁剪位置为B3’,偏移时长为L3’。因此,SP-B实例视频的偏移信息列表可以表示为{δ2(B2’,L2’),δ2(B3’,L3’)}。
续播计算模块首先可以基于切换时源SP实例视频的播放时长来确定出源SP实例视频中的用户播放点Pi,之后,可以再判断源SP实例视频中的用户播放点Pi所在的位置之前是否插入/裁剪了片段,之后,可以再基于用户播放点Pi、源SP实例视频的偏移信息列表来确定基础视频的续播点。
在一些示例中,前述各个步骤中的“切换时源SP实例视频的播放时长”可以被替换为“用户播放点Pi”,这样,续播计算模块无需再基于切换时源SP实例视频的播放时长来确定用户播放点Pi。
其中,“源SP实例视频中的用户播放点Pi所在的位置之前是否插入/裁剪了片段”可以是基于用户播放点Pi、源SP实例视频中插入/裁剪片段的插入/裁剪位置以及偏移时长综合判断得到的:示例性地,假设源SP实例视频中,插入片段1的偏移信息为δ(00:00,10s),插入片段2的偏移信息为δ(10:00,20s),裁剪片段1的偏移信息为δ(20:00,-10s),如果用户播放点Pi为6:00,那么此时源SP实例视频的播放时长为6分钟,因为插入片段1的偏移时长为10s,小于6分钟,且插入片段2的插入位置10:00和裁剪片段1的裁剪位置20:00均在6:00之后,因此用户播放点Pi所在的位置之前只插入了一个片段:插入片段1;如果用户播放点Pi为15:00,那么此时源SP实例视频的播放时长为15分钟,因为在插入片段2的插入位置10:00叠加上插入片段1的偏移时长之后的位置为10:10,仍在15:00之前,且裁剪片段1的裁剪位置20:00在15:00之后,因此用户播放点Pi所在的位置之前插入了两个片段:插入片段1和插入片段2;如果用户播放点Pi为25:00,那么此时源SP实例视频的播放时长为25分钟,因为在裁剪片段2的裁剪位置20:00叠加上插入片段1的偏移时长和插入片段2的偏移时长之后的位置为20:30,仍在25:00之前,且裁剪片段1的裁剪位置20:00在25:00之前,因此用户播放点Pi所在的位置之前插入了两个片段:插入片段1、插入片段2,裁剪了一个片段:裁剪片段1。
其中,“基于用户播放点Pi、源SP实例视频的偏移信息列表来确定基础视频的续播点”的过程如下:假设用户播放点为P,则基础视频的续播点CP则为其中,n为在用户播放点P所在的位置之前源SP实例视频中插入和裁剪的片段的总数,Li为在用户播放点P所在的位置之前源SP实例视频中插入/裁剪的第i个片段的偏移时长。
特殊地,在用户播放点为P处于某个前插片段中的情况下(即在播放前插片段的过程中用户执行切换操作),计算出来的CP是小于0的,在这种情况下,可以将CP赋值为0;在用户播放点为P处于某个中插片段中的情况下(即在播放中插片段的过程中用户执行切换操作),容易理解,该中插片段为用户播放点P所在的位置之前源SP实例视频中插入的最后一个片段,即第n个片段,在这种情况下,Ln不是该中插片段的偏移时长,而是在用户播放点P处,该中插片段的播放时长。
举例来说,参阅图9,源SP实例视频为SP-A实例视频,用户播放点P1对应的基础视频的续播点为CP1,可以看出,源SP实例视频中在P1所在的位置之前插入了一个片段(即前插视频片段),那么,基础视频的续播点CP1=P1-L1。用户播放点P2对应的基础视频的续播点为CP2,可以看出,源SP实例视频中在P2所在的位置之前插入了两个片段(即前插视频片段和中插视频片段),那么,基础视频的续播点CP2=P2-L1-L2。用户播放点P3对应的基础视频的续播点为CP3,可以看出,源SP实例视频中在P3所在的位置之前插入了两个片段(即前插视频片段和中插视频片段)、裁剪了一个片段(即裁剪视频片段),那么,基础视频的续播点CP3=P3-L1-L2-L3。容易理解,插入片段的偏移时长均为正数,裁剪片段的偏移时长均为负数。
在确定基础视频的续播点之后,需要判断目的SP实例视频中在基础视频的续播点所在的位置之前是否插入/裁剪了片段,若是,则目的SP实例视频的续播点要在基础视频的续播点上叠加在基础视频的续播点所在的位置之前插入/裁剪的全部片段的偏移时长;若否,则目的SP实例视频的续播点即为基础视频的续播点。
也即是说,假设基础视频的续播点为CP,则目的SP实例视频的续播点CP’则为其中,n为在基础视频的续播点所在的位置之前目的SP实例视频中插入和裁剪的片段的总数,Li为在基础视频的续播点所在的位置之前目的SP实例视频中插入/裁剪的第i个片段的偏移时长。
举例来说,参阅图9,目的SP实例视频为SP-B实例视频,用户播放点P1对应的基础视频的续播点为CP1,可以看出,目的SP实例视频中在CP1所在的位置之前未插入/裁剪任何片段,那么,目的SP实例视频的续播点CP1’=CP1。用户播放点P2对应的基础视频的续播点为CP2,可以看出,目的SP实例视频中在CP2所在的位置之前插入了一个片段(即中插视频片段),那么,目的SP实例视频的续播点CP2’=CP2+L2’。用户播放点P3对应的基础视频的续播点为CP3,可以看出,目的SP实例视频中在CP3所在的位置之前插入了一个片段(即中插视频片段)、裁剪了一个片段(即裁剪视频片段),那么,目的SP实例视频的续播点CP3’=CP3+L2’+L3’。容易理解,插入片段的偏移时长均为正数,裁剪片段的偏移时长均为负数。
其中,“判断目的SP实例视频中在基础视频的续播点所在的位置之前是否插入/裁剪了片段”的过程如下:如果目的SP实例视频的偏移信息列表中记录的插入/裁剪片段基于基础视频的插入位置或裁剪位置在基础视频的续播点所在的位置之前,则确定目的SP实例视频中在基础视频的续播点所在的位置之前插入/裁剪了片段。
容易理解,目的SP实例视频中在基础视频的续播点所在的位置之前插入/裁剪了片段,也即表示,在目的SP实例视频的续播点所在的位置之前插入/裁剪了片段;目的SP实例视频中在基础视频的续播点所在的位置之前没有插入/裁剪片段,也即表示,在目的SP实例视频的续播点所在的位置之前没有插入/裁剪片段。
参阅图9,SP-C实例视频的偏移信息列表可以表示为{δ(B2”,L2”),δ(B3”,L3”)}。SP-C实例视频的时长为SP-C实例视频结束播放点O3’与SP-C实例视频起始播放点O3之间的时间差值。类似地,按照上述计算SP-B实例视频的续播点的方式,也可以计算出SP-C实例视频的续播点,容易理解,在用户播放点为P1的情况下,SP-C实例视频的续播点CP1”=CP1,在用户播放点为P2的情况下,SP-C实例视频的续播点CP2”=CP2+L2”,在用户播放点为P3的情况下,SP-C实例视频的续播点CP3”=CP3+L2”+L3”。
综上,假设用户播放点为P(即用户执行切换动作时源SP实例视频的播放进度时间点),基础视频的续播点CP,目的SP实例视频的续播点CP’,那么,其中,a为在用户播放点P所在的位置之前源SP实例视频中插入和裁剪的片段的总数,Lb为在用户播放点P所在的位置之前源SP实例视频中插入/裁剪的第b个片段的偏移时长,n为在基础视频的续播点CP所在的位置之前目的SP实例视频中插入和裁剪的片段的总数,Li为在基础视频的续播点CP所在的位置之前目的SP实例视频中插入/裁剪的第i个片段的偏移时长。
S716、电子设备100的续播计算模块向电子设备100的视频播放模块发送消息9,该消息中包括目的SP实例视频的起播位置信息、播放地址。
具体地,电子设备100的续播计算模块在执行完上述步骤S715之后,可以向电子设备100的视频播放模块发送上述消息9,用于指示电子设备100的视频播放模块获取目的SP实例视频起播位置之后的视频流数据。
S717、电子设备100的视频播放模块向服务器200的流媒体服务模块发送消息10,该消息中包括目的SP实例视频的起播位置信息、播放地址。
具体地,电子设备100的视频播放模块在接收到电子设备100的续播计算模块发送的上述消息9之后,可以向服务器200的流媒体服务模块发送上述消息10,用于向服务器200的流媒体服务模块获取目的SP实例视频起播位置之后的视频流数据。
S718-S720、服务器200的流媒体服务模块基于目的SP实例视频的起播位置信息、播放地址查找目的SP实例视频起播位置之后的视频流数据。之后,服务器200的流媒体服务模块可以向电子设备100的视频播放模块发送消息11,该消息中包括目的SP实例视频起播位置之后的视频流数据。之后,电子设备100的视频播放模块可以基于目的SP实例视频起播位置之后的视频流数据播放起播位置之后的目的SP实例视频。
举例来说,假设切换时源SP实例视频的播放时长为10分30秒,那么,用户播放点P(即用户执行切换动作时源SP实例视频的播放进度时间点)则为10:30,那么,目的SP实例视频的续播点CP’(即目的SP实例视频的起播位置信息)则为 其中,a为在用户播放点P所在的位置之前源SP实例视频中插入/裁剪的片段的总数,Lb为在用户播放点P所在的位置之前源SP实例视频中插入/裁剪的第b个片段的偏移时长,n为在基础视频的续播点CP所在的位置之前目的SP实例视频中插入/裁剪的片段的总数,Li为在基础视频的续播点CP所在的位置之前目的SP实例视频中插入/裁剪的第i个片段的偏移时长。
1、在为0的情况下,目的SP实例视频的续播点CP’与用户播放点P相同,即均为10:30。
目的SP实例视频可以是以“XX视频1”这一SP提供的实例视频为例,该目的SP实例视频的起播位置(即该目的SP实例视频的续播点)为10:30,也即是说,在用户执行切换操作时源SP实例视频所播放的画面在该目的SP实例视频中所在的位置为10:30。进一步地,电子设备100可以基于获取到的该目的SP实例视频起播位置之后的视频流数据在10:30继续播放起播位置之后的该目的SP实例视频。
2、在不为0的情况下,目的SP实例视频的续播点CP’与用户播放点P则不相同。
在大于0的情况下,假设/>为20秒,那么,目的SP实例视频的续播点CP’则为CP’=10:30-20=10:10。
示例性地,参阅图10A,图10A所示的用户界面可以是用户执行完切换操作之后开始进行目的SP实例视频续播时显示的一个用户界面,目的SP实例视频可以是以“XX视频1”这一SP提供的实例视频为例,可以看出,该目的SP实例视频的起播位置(即该目的SP实例视频的续播点)为10:10,也即是说,在用户执行切换操作时源SP实例视频所播放的画面在该目的SP实例视频中所在的位置为10:10。进一步地,电子设备100可以基于获取到的该目的SP实例视频起播位置之后的视频流数据在10:10继续播放起播位置之后的该目的SP实例视频。
容易理解,在上述这种大于0的情况下,在计算目的SP实例视频的续播点时如果不考虑插入/裁剪片段的偏移时长对续播点计算的影响,那么,计算出来的目的SP实例视频的续播点与用户播放点相同,仍然为10:30,开始续播的画面也就为目的SP实例视频中10:30对应的画面(例如图10B所示的画面),与源SP实例视频所播放的画面(例如图10A所示的目的SP实例视频中10:10对应的画面)不一致,这样,无法实现切换前后视频播放的连续性,用户体验差。
上述是以目的SP实例视频是以“XX视频1”这一SP提供的实例视频为例说明了大于0的情况,下面以目的SP实例视频是以“XX视频2”这一SP提供的实例视频为例说明/>小于0的情况:
容易理解,在目的SP实例视频是以“XX视频2”这一SP提供的实例视频的情况下,前述步骤S703可以为:电子设备100的视频播放模块检测到用户切换播放聚合视频1的SP-C实例视频的操作(例如点击图8B所示的选项823的操作)。
假设为-30秒,那么,目的SP实例视频的续播点CP’则为CP’=10:30+30=11:00。
示例性地,参阅图10C,图10C所示的用户界面可以是用户执行完切换操作之后开始进行目的SP实例视频续播时显示的一个用户界面,目的SP实例视频可以是以“XX视频2”这一SP提供的实例视频为例,可以看出,该目的SP实例视频的起播位置(即该目的SP实例视频的续播点)为11:00,也即是说,在用户执行切换操作时源SP实例视频所播放的画面在该目的SP实例视频中所在的位置为11:00。进一步地,电子设备100可以基于获取到的该目的SP实例视频起播位置之后的视频流数据在10:50继续播放起播位置之后的该目的SP实例视频。
容易理解,在上述这种小于0的情况下,在计算目的SP实例视频的续播点时如果不考虑插入/裁剪片段的偏移时长对续播点计算的影响,那么,计算出来的目的SP实例视频的续播点与用户播放点相同,仍然为10:30,开始续播的画面也就为目的SP实例视频中10:30对应的画面(例如图10D所示的画面),因此,用户需要再播放30秒的视频才能显示用户执行切换操作时源SP实例视频所播放的画面(例如图10C所示的目的SP实例视频中11:00对应的画面),容易理解,这30秒的视频是用户在执行切换操作之前就播放过了的,这样,无法实现切换前后视频播放的连续性,用户体验差。
场景二:聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)
下面介绍本申请实施例提供的视频处理方法在聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)这一场景下的具体执行过程。
图11示例性示出了本申请实施例提供的另一种视频处理方法在聚合视频中从一个SP实例视频(源SP实例视频)切换到另一个SP实例视频(目的SP实例视频)这一场景下的具体流程。
如图11所示,该方法可以应用于包括电子设备100、服务器200的通信系统,其中,电子设备100可以包括切换指令接收模块、播放鉴权模块、节目信息获取模块、视频播放模块,服务器200可以包括节目数据管理服务模块、播放鉴权服务模块、续播计算模块、流媒体服务模块。与前述图7不同的是,图11中的续播计算模块包含于服务器200中,而非电子设备100中。下面详细介绍该方法的具体步骤:
S1101、服务器200的节目数据管理服务模块维护节目元数据。
S1102、电子设备100的视频播放模块播放聚合视频1的SP-A实例视频(源SP实例视频)。
S1103-S1104、电子设备100的视频播放模块检测到用户切换播放聚合视频1的SP-B实例视频(目的SP实例视频)的操作,响应于该操作,电子设备100的视频播放模块向电子设备100的切换指令接收模块发送切换指令,该指令中包括聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息。
S1105、电子设备100的切换指令接收模块向电子设备100的播放鉴权模块发送消息1,该消息中可以包括聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息。
其中,上述步骤S1101-步骤S1105与前述图7所示的步骤S701-步骤S705类似,具体执行过程可以参照前述图7所示的步骤S701-步骤S705的相关内容,在此不再赘述。
S1106、电子设备100的播放鉴权模块向服务器200的播放鉴权模块发送消息2,该消息中可以包括聚合视频1的ID、切换时源SP实例视频的播放时长、源SP实例视频的标识信息、目的SP实例视频的标识信息、用户信息1。
其中,上述用户信息1与前述图7中步骤S711中的用户信息1相同,在此不再赘述。
其中,上述消息2可以是电子设备100的播放鉴权模块直接发送给服务器200的播放鉴权模块,也可以是电子设备100的播放鉴权模块通过电子设备100的节目信息获取模块发送给服务器200的播放鉴权模块,本申请实施例对此不作限定。
S1107、服务器200的播放鉴权服务模块基于聚合视频1的ID、目的SP实例视频的标识信息、用户信息1、鉴权规则确定用户可播放目的SP实例视频,并确定目的SP实例视频对应的播放地址。
其中,上述步骤S1107与前述图7所示的步骤S712类似,具体执行过程可以参照前述图7所示的步骤S712的相关内容,在此不再赘述。
S1108、服务器200的播放鉴权服务模块向服务器200的节目数据管理服务模块发送消息3,该消息中包括聚合视频1的ID、源SP实例视频的标识信息、目的SP实例视频的标识信息。
S1109、服务器200的节目数据管理服务模块基于聚合视频1的ID、源SP实例视频的标识信息、目的SP实例视频的标识信息确定源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
其中,上述步骤S1109与前述图7所示的步骤S708类似,具体执行过程可以参照前述图7所示的步骤S708的相关内容,在此不再赘述。
S1110、服务器200的节目数据管理服务模块向服务器200的播放鉴权服务模块发送消息4,该消息中包括源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
具体地,服务器200的节目数据管理服务模块在执行完上述步骤S1109之后,可以向服务器200的播放鉴权服务模块发送上述消息4。
S1111、服务器200的播放鉴权模块向服务器200的续播计算模块发送消息5,该消息中包括切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表。
具体地,服务器200的播放鉴权模块在接收到服务器200的节目数据管理服务模块发送的上述消息4之后,可以向服务器200的续播计算模块发送上述消息5。
S1112、服务器200的续播计算模块基于切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表确定目的SP实例视频的起播位置信息。
其中,上述步骤S1112与前述图7所示的步骤S715类似,具体执行过程可以参照前述图7所示的步骤S715的相关内容,在此不再赘述。
S1113、服务器200的续播计算模块向服务器200的播放鉴权模块发送消息6,该消息中包括目的SP实例视频的起播位置信息。
具体地,服务器200的续播计算模块在执行完上述步骤S1102之后,可以向服务器200的播放鉴权模块发送上述消息6。
S1114、服务器200的播放鉴权模块向电子设备100的播放鉴权模块发送消息7,该消息中包括目的SP实例视频的起播位置信息、播放地址。
具体地,服务器200的播放鉴权服务模块在接收到服务器200的续播计算模块发送的上述消息6之后,可以向电子设备100的播放鉴权模块发送上述消息7。
S1115、电子设备100的播放鉴权模块向电子设备100的视频播放模块发送消息8,该消息中包括目的SP实例视频的起播位置信息、播放地址。
具体地,电子设备100的播放鉴权模块在接收到服务器200的播放鉴权服务模块发送的上述消息7之后,可以向电子设备100的视频播放模块发送上述消息8,用于指示电子设备100的视频播放模块获取目的SP实例视频起播位置之后的视频流数据。
S1116、电子设备100的视频播放模块向服务器200的流媒体服务模块发送消息9,该消息中包括目的SP实例视频的起播位置信息、播放地址。
S1117-S1119、服务器200的流媒体服务模块基于目的SP实例视频的起播位置信息、播放地址查找目的SP实例视频起播位置之后的视频流数据。之后,服务器200的流媒体服务模块可以向电子设备100的视频播放模块发送消息10,该消息中包括目的SP实例视频起播位置之后的视频流数据。之后,电子设备100的视频播放模块可以基于目的SP实例视频起播位置之后的视频流数据播放起播位置之后的目的SP实例视频。
其中,上述步骤S1116-步骤S1119与前述图7所示的步骤S717-步骤S720类似,具体执行过程可以参照前述图7所示的步骤S717-步骤S720的相关内容,在此不再赘述。
通过实施上述图7或图11所示实施例中的方法,在聚合视频运营过程中可以在每一个SP实例视频的元数据中增加记录该SP实例视频在基础视频中插入/裁剪的片段对应的偏移信息,电子设备100在检测到用户将聚合视频中的源SP实例视频切换到目的SP实例视频的操作之后,可以基于上述记录的源SP实例视频的偏移信息、目的SP实例视频的偏移信息等参数来准确计算目的SP实例视频的续播点,这样,在源SP实例视频和目的SP实例视频在基础视频中插入/裁剪了一个或多个不同片段的情况下,仍可以在目的SP实例视频中准确定位到用户执行切换操作时源SP实例视频播放的那个画面,并进行续播,保证了切换前后视频播放的连续性,提高用户体验。
从图4或图9所示的续播计算原理图中容易看出,假设电子设备在播放某个视频(例如片段视频/源SP实例视频),在该视频的播放点1(例如第一时间点),电子设备100显示一个用户界面(例如第二用户界面),该用户界面中包括该视频的一个画面(即画面1,例如第一画面),在该视频的播放点2(可以称为第三时间点),电子设备100显示另一个用户界面(可以称为第三用户界面),该用户界面中包括该视频的另一个画面(即画面2,可以称为第二画面),上述播放点1和播放点2之间的时间间隔为间隔1(可以称为第一间隔),画面1在基础视频中对应的播放进度为CP1(可以称为第五时间点),画面2在基础视频中对应的播放进度为CP2(可以称为第四时间点),CP1与CP2之间的时间间隔为间隔2(可以称为第二间隔),该视频在上述播放点1和播放点2之间插入和/或裁剪了一个或多个片段,那么,在这一个或多个片段的偏移时长总和不为0的情况下,间隔1和间隔2不同。
在本申请实施例中,电子设备可以是电子设备100,服务器可以是服务器200,第一视频可以是片段视频或源SP实例视频,第一用户界面可以是播放片段视频的用户界面(例如图3B或图3C或图3D或图3E所示的用户界面)或播放源SP实例视频的用户界面(例如图8B所示的用户界面),第一画面可以是片段视频的一个画面(例如图3B或图3C或图3D或图3E所示播放片段视频的画面)或源SP实例视频的一个画面(例如图8B所示的播放源SP实例视频的画面),第一操作可以是用户切换播放与片段视频相关联的完整视频的操作(例如图3B或图3C或图3D或图3E所示的用户点击“看完整版”/“看正片”选项的操作)或,用户切换播放目的SP实例视频的操作(例如图8B所示的用户点击“XX视频1”选项的操作),第二视频可以是与片段视频相关联的完整SP实例视频或目的SP实例视频,第二用户界面可以是与片段视频相关联的完整SP实例视频的用户界面(例如图5A或图5B或图5D所示的用户界面)或播放目的SP实例视频的用户界面(例如图10A或图10C所示的用户界面),第三视频可以是基础视频,第一时间点可以是第二视频的续播点,一个或多个第一片段可以是第二视频在第一时间点之前在第三视频的基础上插入和/或裁剪的一个或多个片段,第一视频源可以是源SP实例视频的视频源(例如华为视频),第二视频源可以是目的SP实例视频的视频源(例如XX视频1或XX视频2),第二时间点可以是用户执行第一操作时第一视频对应的播放进度(即用户播放点),第一用户信息可以是用户信息1,第一视频的播放时长可以是切换时第一视频的播放时长,第一消息可以是图2或图6中的消息3,第一视频的标识可以是片段视频的ID,第二消息可以是图2中的消息4,第三消息可以是图6中的消息6,第四消息可以是图6中的消息10,第五消息可以是图2中的消息10或图6中的消息12,第五时间点可以是基础视频的续播点,一个或多个第二片段可以是第一视频在基础视频上插入和/裁剪的一个或多个片段,第六消息可以是图7中的消息3,第七消息可以是图7中的消息4,第八消息可以是图11中的消息2,第一视频的播放时长可以是切换时源SP实例视频的播放时长,第九消息可以是图11中的消息7。
下面介绍本申请实施例提供的一种在执行视频处理方法过程中涉及的电子设备100的内部模块与服务器200的内部模块以及各个内部模块之间的可能的协作方式。
图12示例性示出了本申请实施例提供的一种在执行视频处理方法过程中涉及的电子设备100的内部模块与服务器200的内部模块以及各个内部模块之间可能的协作方式。
如图12所示,电子设备100可以包括视频播放类应用程序1200,其中,该视频播放类应用程序1200可以包括切换指令接收模块1210,节目信息获取模块1211,播放鉴权模块1212,续播计算模块1213,视频播放模块1214,等等;服务器200可以包括节目数据管理服务模块1215,播放鉴权服务模块1216,流媒体服务模块1217,等等。其中,上述视频播放类应用程序1200可以为具有视频播放能力的应用程序(例如华为视频、优酷视频等等),上述服务器200可以为视频运营服务器,例如,可以为上述视频播放类应用程序1200对应的服务器。
切换指令接收模块1210可以用于在用户执行切换操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作)之后接收视频播放模块1214发送的切换指令;还可以用于与播放鉴权模块1212进行数据交互;等等。
节目信息获取模块1211可以用于向节目数据管理服务模块1215获取播放节目的相关信息,例如,片段视频的节目信息(例如片段视频的ID)、完整视频的节目信息(例如完整视频的ID)、片段视频与完整视频的关联关系、与完整视频相关联的各个SP实例视频的偏移信息列表、聚合视频的节目信息(例如聚合视频的ID)、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表;还可以用于与播放鉴权模块1212进行数据交互;等等。
播放鉴权模块1212可以用于与切换指令接收模块1210、节目信息获取模块1211、播放鉴权服务模块1216、续播计算模块1213进行数据交互;等等。
续播计算模块1213可以用于计算用户所要切换到的视频的续播点,例如,在片段视频切换到完整视频场景下,可以基于切换时片段视频的播放时长、拆条的起始位置、用户可播放的与完整视频相关联的SP实例视频的偏移信息列表来计算SP实例视频的续播点;又例如,在聚合视频中源SP实例视频切换到目的SP实例视频场景下,可以基于切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表来计算目的SP实例视频的续播点;还可以用于与播放鉴权模块1212、视频播放模块1214进行数据交互;等等。
容易理解,在本申请实施例中,与现有技术不同的是,续播计算模块1213需要增加对偏移信息列表的理解功能和计算功能。
视频播放模块1214可以用于进行视频播放;还可以用于与切换指令接收模块1210、续播计算模块1213、流媒体服务模块1217进行数据交互;等等。
节目数据管理服务模块1215可以用于对节目信息进行存储与管理,例如,存储片段视频的节目信息、完整视频的节目信息、片段视频和完整视频的关联关系等;还可以用于与节目信息获取模块1211进行数据交互;等等。
在本申请实施例中,与现有技术不同的是,节目数据管理服务模块1215需要增加对视频的偏移信息列表的存储与管理。
播放鉴权服务模块1216可以用于在节目运营过程中,基于节目运营信息(例如节目数据管理服务模块1215中存储的)对电子设备100上报的需要进行播放的视频的信息进行鉴权,分配该视频在流媒体服务模块1217中的视频流的播放地址,并向电子设备100发送该播放地址;还可以用于与节目数据管理服务模块1215进行数据交互;等等。
流媒体服务模块1217可以用于基于视频的起播位置信息和播放地址来查找该视频的视频流数据,并向电子设备100发送该视频的视频流数据;等等。
以上模块可以根据功能进行划分,在实际的产品中,可以为同一软件模块执行的不同功能。
关于电子设备100和服务器200各个内部模块功能的更多细节,可以参照上述各个实施例中的相关内容,在此不再赘述。
可以理解的是,图12示意的结构并不构成对电子设备100和服务器200的具体限定。在本申请另一些实施例中,电子设备100和服务器200可以具有比图12中所示的更多或更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面介绍本申请实施例提供的另一种在执行视频处理方法过程中涉及的电子设备100的内部模块与服务器200的内部模块以及各个内部模块之间的可能的协作方式。
图13示例性示出了本申请实施例提供的另一种在执行视频处理方法过程中涉及的电子设备100的内部模块与服务器200的内部模块以及各个内部模块之间可能的协作方式。
如图13所示,电子设备100可以包括视频播放类应用程序1300,其中,该视频播放类应用程序1300可以包括切换指令接收模块1310,节目信息获取模块1311,播放鉴权模块1312,视频播放模块1313,等等;服务器200可以包括节目数据管理服务模块1314,播放鉴权服务模块1315,续播计算模块1316,流媒体服务模块1317,等等。其中,上述视频播放类应用程序1300可以为具有视频播放能力的应用程序(例如华为视频、优酷视频等等),上述服务器200可以为视频运营服务器,例如,可以为上述视频播放类应用程序1300对应的服务器。
切换指令接收模块1310可以用于在用户执行切换操作(例如片段视频切换到完整视频的操作、源SP实例视频切换到目的SP实例视频的操作)之后接收视频播放模块1313发送的切换指令;还可以用于与播放鉴权模块1312进行数据交互;等等。
节目信息获取模块1311可以用于向节目数据管理服务模块1314获取播放节目的相关信息,例如,片段视频的节目信息(例如片段视频的ID)、完整视频的节目信息(例如完整视频的ID)、聚合视频的节目信息(例如聚合视频的ID);还可以用于与播放鉴权模块1312进行数据交互;等等。
与图12所示的节目信息获取模块1211不同的是,节目信息获取模块1311不再需要从节目数据管理服务模块1314获取视频的偏移信息列表。
播放鉴权模块1312可以用于与切换指令接收模块1310、节目信息获取模块1311、播放鉴权服务模块1315进行数据交互;等等。
与图12所示的播放鉴权模块1212不同的是,播放鉴权模块1312在向播放鉴权服务模块1315获取视频的播放地址的时候,需要携带执行切换动作时视频的播放时长,播放鉴权服务模块1315在向播放鉴权模块1312返回播放地址的同时,需要携带续播计算模块1316计算得到的起播位置信息。
视频播放模块1313可以用于进行视频播放;还可以用于与切换指令接收模块1310、播放鉴权模块1312、流媒体服务模块1317进行数据交互;等等。
节目数据管理服务模块1314可以用于对节目信息进行存储与管理,例如,存储片段视频的节目信息、完整视频的节目信息、片段视频和完整视频的关联关系等;还可以用于与节目信息获取模块1311、播放鉴权服务模块1315进行数据交互;等等。
在本申请实施例中,与现有技术不同的是,节目数据管理服务模块1314需要增加对视频的偏移信息列表的存储与管理。
播放鉴权服务模块1315可以用于在节目运营过程中,基于节目运营信息(例如节目数据管理服务模块1314中存储的)对电子设备100上报的需要进行播放的视频的信息进行鉴权,分配该视频在流媒体服务模块1317中的视频流的播放地址,并向电子设备100发送该播放地址;还可以用于向电子设备100发送视频的起播位置信息;还可以用于与节目数据管理服务模块1314、续播计算模块1316进行数据交互;等等。
续播计算模块1316可以用于计算用户所要切换到的视频的续播点,例如,在片段视频切换到完整视频场景下,可以基于切换时片段视频的播放时长、拆条的起始位置、用户可播放的与完整视频相关联的SP实例视频的偏移信息列表来计算SP实例视频的续播点;又例如,在聚合视频中源SP实例视频切换到目的SP实例视频场景下,可以基于切换时源SP实例视频的播放时长、源SP实例视频的偏移信息列表、目的SP实例视频的偏移信息列表来计算目的SP实例视频的续播点;还可以用于与播放鉴权服务模块1315进行数据交互;等等。
容易理解,在本申请实施例中,与现有技术不同的是,续播计算模块1316需要增加对偏移信息列表的理解功能和计算功能。
流媒体服务模块1317可以用于基于视频的起播位置信息和播放地址来查找该视频的视频流数据,并向电子设备100发送该视频的视频流数据;等等。
以上模块可以根据功能进行划分,在实际的产品中,可以为同一软件模块执行的不同功能。
关于电子设备100和服务器200各个内部模块功能的更多细节,可以参照上述各个实施例中的相关内容,在此不再赘述。
可以理解的是,图13示意的结构并不构成对电子设备100和服务器200的具体限定。在本申请另一些实施例中,电子设备100和服务器200可以具有比图13中所示的更多或更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面介绍本申请实施例提供的一种电子设备100的结构示意图。
图14示例性示出了本申请实施例中提供的一种电子设备100的结构。
如图14所示,电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备100供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备100姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
应当理解的是,图14所示电子设备100仅是一个范例,并且电子设备100可以具有比图14中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图14中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面介绍本申请实施例提供的一种服务器200的结构。
图15示例性示出了本申请实施例提供的一种服务器200的结构。
如图15所示,服务器200可以包括:一个或多个处理器201A、存储器202A、通信接口203A、发射器205A、接收器206A、耦合器207A、天线208A。这些部件可通过总线204A或者其他方式连接,图15以通过总线连接为例。其中:
通信接口203A可用于服务器200与其他通信设备,例如电子设备100等,进行通信。具体地,通信接口203A可以是3G通信接口、4G通信接口、5G通信接口,也可以是未来新空口的通信接口等。不限于无线通信接口,服务器200还可以配置有有线的通信接口203A,例如局域接入网(local access network,LAN)接口。发射器205A可用于对处理器201A输出的信号进行发射处理。接收器206A可用于对天线208A接收的移动通信信号进行接收处理。
在本申请的一些实施例中,发射器205A和接收器206A可看作一个无线调制解调器。在服务器200中,发射器205A和接收器206A的数量均可以是一个或者多个。天线208A可用于将传输线中的电磁能转换成自由空间中的电磁波,或者将自由空间中的电磁波转换成传输线中的电磁能。耦合器207A用于将天线208A接收到的移动通信信号分成多路,分配给多个的接收器206A。
存储器202A与处理器201A耦合,用于存储各种软件程序和/或多组指令。具体地,存储器202A可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器202A可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个终端设备,一个或多个网络设备进行通信。
在本申请的一些实施例中,存储器202A可用于存储本申请的一个或多个实施例提供的视频处理方法在服务器200侧的实现程序。关于本申请的一个或多个实施例提供的视频处理方法的实现,请参考上述实施例。
处理器201A可用于读取和执行计算机可读指令。具体地,处理器201A可用于调用存储于存储器202A中的程序,例如本申请的一个或多个实施例提供的视频处理方法在服务器200侧的实现程序,并执行该程序包含的指令。
需要说明的是,图15所示的服务器200仅仅是本申请实施例的一种实现方式,实际应用中,服务器200还可以包括更多或更少的部件,在此不作限定。
关于服务器200的功能和工作原理的更多细节,可以参照上述各个实施例中的相关内容,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solidstate disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (15)
1.一种视频处理方法,应用于电子设备,其特征在于,所述方法包括:
所述电子设备播放第一视频;
所述电子设备显示第一用户界面,所述第一用户界面包括第一画面,所述第一画面为所述第一视频中的一个画面;
当所述电子设备显示所述第一用户界面时,所述电子设备检测到用户的第一操作;
响应于所述第一操作,所述电子设备播放第二视频;
所述电子设备显示第二用户界面,所述第二用户界面包括所述第一画面,所述第一画面为所述第二视频中的一个画面;
其中,所述第一视频和所述第二视频均是基于第三视频生成的,所述第一画面在所述第二视频中对应的播放进度为第一时间点,所述第二视频在所述第一时间点之前在所述第三视频的基础上插入和/或裁剪了一个或多个第一片段,所述第三视频不包括所述一个或多个第一片段。
2.根据权利要求1所述的方法,其特征在于,所述第一视频为所述第二视频中的视频片段。
3.根据权利要求1所述的方法,其特征在于,所述第一视频为第一视频源的视频,所述第二视频为第二视频源的视频,所述第一画面在所述第一视频中对应的播放进度为第二时间点,所述第二时间点与所述第一时间点不同。
4.根据权利要求1所述的方法,其特征在于,在所述电子设备显示第二用户界面之前,所述方法还包括:
所述电子设备向服务器发送第一用户信息,所述第一用户信息用于所述服务器基于所述第一用户信息确定用户是否有权限播放所述第二视频;
在所述服务器确定所述用户有权限播放所述第二视频的情况下,所述电子设备播放所述第二视频。
5.根据权利要求2所述的方法,其特征在于,所述第一时间点是基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的,所述第二视频的偏移信息列表包括所述一个或多个第一片段的偏移信息,所述偏移信息包括所述一个或多个第一片段基于所述第三视频的插入位置/裁剪位置、偏移时长。
6.根据权利要求5所述的方法,其特征在于,在所述电子设备显示第二用户界面之前,所述方法还包括:
所述电子设备向服务器发送第一消息,所述第一消息中包括所述第一视频的标识,所述第一视频的标识用于所述服务器获取到与所述第一视频相关联的所述第三视频的拆条点的信息及所述第二视频的偏移信息列表;
所述电子设备接收所述服务器发送的第二消息,所述第二消息中包括所述拆条点的信息、所述第二视频的偏移信息列表;
所述第一时间点是基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的,具体包括:
所述第一时间点是所述电子设备基于所述拆条点的信息、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的。
7.根据权利要求5所述的方法,其特征在于,在所述电子设备显示第二用户界面之前,所述方法还包括:
所述电子设备向服务器发送第三消息,所述第三消息中包括所述第一视频的播放时长;
所述第一时间点是基于所述第三视频、所述第一视频的播放时长、所述第二视频的偏移信息列表确定的,具体包括:
所述第一时间点是所述服务器基于所述第三视频的拆条点的信息、所述第一视频的播放时长和所述第二视频的偏移信息列表确定的;
所述电子设备接收所述服务器发送的第四消息,所述第四消息中包括所述第一时间点和所述第二视频的播放地址。
8.根据权利要求1-7任一项所述的方法,其特征在于,在所述电子设备显示第二用户界面之前,所述方法还包括:
所述电子设备向服务器发送第五消息,所述第五消息中包括所述第一时间点、所述第二视频的播放地址,所述播放地址是从所述服务器获取到的;
所述电子设备接收所述服务器发送的视频流数据,所述视频流数据为在所述第一时间点之后的所述第二视频的视频流数据。
9.根据权利要求1-8任一项所述的方法,其特征在于,在所述电子设备播放第二视频之后,所述方法还包括:
所述电子设备显示第三用户界面,所述第三用户界面包括第二画面,所述第二画面在所述第二视频中对应的播放进度为第三时间点,所述第三时间点与所述第一时间点的时间间隔为第一间隔,所述第二视频在所述第三时间点与所述第一时间点之间在所述第三视频的基础上插入和/或裁剪了一个或多个片段;
所述第二画面在所述第三视频中对应的播放进度为第四时间点,所述第一画面在所述第三视频中对应的播放进度为第五时间点,所述第四时间点与所述第五时间点的时间间隔为第二间隔;
所述第一间隔与所述第二间隔不同。
10.根据权利要求3所述的方法,其特征在于,所述第三视频中包括所述第一画面,所述第一画面在所述第三视频中对应的播放进度为第五时间点;
所述第五时间点是基于所述第二时间点和所述第一视频的偏移信息列表确定的,所述第一视频的偏移信息列表包括一个或多个第二片段的偏移信息,所述偏移信息包括所述一个或多个第二片段基于所述第三视频的插入位置/裁剪位置、偏移时长;
所述第一时间点是基于所述第五时间点和所述第二视频的偏移信息列表确定的,所述第二视频的偏移信息列表包括所述一个或多个第一片段的偏移信息,所述偏移信息包括所述一个或多个第一片段基于所述第三视频的插入位置/裁剪位置、偏移时长。
11.根据权利要求10所述的方法,其特征在于,在所述电子设备显示第二用户界面之前,所述方法还包括:
所述电子设备向服务器发送第六消息,所述第六消息中包括所述第一视频的标识信息、所述第二视频的标识信息,所述第一视频的标识信息用于所述服务器获取到所述第一视频的偏移信息列表,所述第二视频的标识信息用于所述服务器获取到所述第二视频的偏移信息列表;
所述电子设备接收所述服务器发送的第七消息,所述第七消息中包括所述第一视频的偏移信息列表、所述第二视频的偏移信息列表;
其中,所述第五时间点是所述电子设备基于所述第二时间点和所述第一视频的偏移信息列表确定的,所述第一时间点是所述电子设备基于所述第五时间点和所述第二视频的偏移信息列表确定的。
12.根据权利要求10所述的方法,其特征在于,在所述电子设备显示第二用户界面之前,所述方法还包括:
所述电子设备向服务器发送第八消息,所述第八消息中包括所述第一视频的播放时长,所述第一视频的播放时长用于所述服务器确定所述第二时间点;
所述服务器向所述电子设备发送第九消息,所述第九消息中包括所述第一时间点和所述第二视频的播放地址;
其中,所述第五时间点是所述服务器基于所述第二时间点和所述第一视频的偏移信息列表确定的,所述第一时间点是所述服务器基于所述第五时间点和所述第二视频的偏移信息列表确定的。
13.根据权利要求1-12任一项所述的方法,其特征在于,所述第一时间点的计算方法如下:
其中,所述CP’为所述第一画面在所述第二视频中对应的播放进度,所述CP为所述第一画面在所述第三视频中对应的播放进度,所述n为所述一个或多个第一片段的总数,所述Li为所述一个或多个第一片段中的第i个所述第一片段的偏移时长。
14.一种电子设备,其特征在于,所述电子设备包括一个或多个处理器和一个或多个存储器;其中,所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
15.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述程序指令在电子设备上运行时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210733723.7A CN117336571A (zh) | 2022-06-24 | 2022-06-24 | 视频处理方法及相关设备 |
PCT/CN2023/101124 WO2023246711A1 (zh) | 2022-06-24 | 2023-06-19 | 视频处理方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210733723.7A CN117336571A (zh) | 2022-06-24 | 2022-06-24 | 视频处理方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117336571A true CN117336571A (zh) | 2024-01-02 |
Family
ID=89288944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210733723.7A Pending CN117336571A (zh) | 2022-06-24 | 2022-06-24 | 视频处理方法及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117336571A (zh) |
WO (1) | WO2023246711A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103916718B (zh) * | 2013-01-05 | 2018-12-11 | 腾讯科技(北京)有限公司 | 基于视频片段进行视频播放的方法和系统 |
CN105208448B (zh) * | 2015-09-25 | 2018-07-17 | 北京奇艺世纪科技有限公司 | 一种广告播放方法及装置 |
US10834465B1 (en) * | 2019-06-28 | 2020-11-10 | Netflix, Inc. | Automated video cropping |
CN111866433B (zh) * | 2020-07-31 | 2021-06-29 | 腾讯科技(深圳)有限公司 | 视频源切换方法、播放方法、装置、设备和存储介质 |
CN117354447A (zh) * | 2020-08-25 | 2024-01-05 | 上海哔哩哔哩科技有限公司 | 视频播放方法、装置及计算机设备 |
CN112153470B (zh) * | 2020-09-11 | 2022-04-08 | 腾讯科技(深圳)有限公司 | 一种视频播放方法、装置、计算机设备和存储介质 |
-
2022
- 2022-06-24 CN CN202210733723.7A patent/CN117336571A/zh active Pending
-
2023
- 2023-06-19 WO PCT/CN2023/101124 patent/WO2023246711A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023246711A1 (zh) | 2023-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113362783B (zh) | 刷新率切换方法和电子设备 | |
CN113905179B (zh) | 一种终端切换摄像头的方法及终端 | |
CN113542839B (zh) | 电子设备的投屏方法和电子设备 | |
CN111628916B (zh) | 一种智能音箱与电子设备协作的方法及电子设备 | |
EP4061027B1 (en) | Bluetooth communication method and apparatus | |
CN111726678B (zh) | 一种设备间多媒体内容续播的方法 | |
CN112312366B (zh) | 一种通过nfc标签实现功能的方法、电子设备及系统 | |
CN111065020B (zh) | 音频数据处理的方法和装置 | |
CN113593567B (zh) | 视频声音转文本的方法及相关设备 | |
CN111492678A (zh) | 一种文件传输方法及电子设备 | |
CN109285563B (zh) | 在线翻译过程中的语音数据处理方法及装置 | |
CN116055859A (zh) | 图像处理方法和电子设备 | |
CN114466238B (zh) | 帧解复用方法、电子设备及存储介质 | |
CN112929854B (zh) | 事件订阅方法及电子设备 | |
CN117336571A (zh) | 视频处理方法及相关设备 | |
CN114520870B (zh) | 一种显示方法及终端 | |
CN115460445B (zh) | 电子设备的投屏方法和电子设备 | |
CN116166347A (zh) | 一种截屏方法及相关装置 | |
CN114691066A (zh) | 一种应用的显示方法及电子设备 | |
CN117666820A (zh) | 鼠标连接方法和电子设备 | |
CN117319369A (zh) | 文件投送方法、电子设备及存储介质 | |
CN118057858A (zh) | 数据处理方法、设备和系统 | |
CN116567328A (zh) | 一种采集音频的方法及电子设备 | |
CN117354955A (zh) | 网络连接方法、电子设备及存储介质 | |
CN115703006A (zh) | 设备连接方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |