CN115484498A - 一种播放视频的方法及装置 - Google Patents
一种播放视频的方法及装置 Download PDFInfo
- Publication number
- CN115484498A CN115484498A CN202110604488.9A CN202110604488A CN115484498A CN 115484498 A CN115484498 A CN 115484498A CN 202110604488 A CN202110604488 A CN 202110604488A CN 115484498 A CN115484498 A CN 115484498A
- Authority
- CN
- China
- Prior art keywords
- playing
- speed
- video
- information
- user
- 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
- 238000000034 method Methods 0.000 title claims abstract description 103
- 238000012545 processing Methods 0.000 claims abstract description 39
- 230000015654 memory Effects 0.000 claims description 68
- 238000003860 storage Methods 0.000 claims description 16
- 230000033001 locomotion Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 3
- 239000010410 layer Substances 0.000 description 142
- 230000006870 function Effects 0.000 description 130
- 230000003044 adaptive effect Effects 0.000 description 67
- 230000001133 acceleration Effects 0.000 description 49
- 238000013528 artificial neural network Methods 0.000 description 47
- 238000012549 training Methods 0.000 description 43
- 238000013527 convolutional neural network Methods 0.000 description 32
- 230000004927 fusion Effects 0.000 description 31
- 238000011176 pooling Methods 0.000 description 30
- 239000011159 matrix material Substances 0.000 description 28
- 230000008569 process Effects 0.000 description 26
- 230000008859 change Effects 0.000 description 22
- 239000013598 vector Substances 0.000 description 20
- 238000004891 communication Methods 0.000 description 17
- 238000007726 management method Methods 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 15
- 230000001976 improved effect Effects 0.000 description 13
- 230000001537 neural effect Effects 0.000 description 13
- 241000282414 Homo sapiens Species 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000005457 optimization Methods 0.000 description 11
- 210000000988 bone and bone Anatomy 0.000 description 10
- 210000002569 neuron Anatomy 0.000 description 10
- 230000005236 sound signal Effects 0.000 description 8
- 230000004913 activation Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 238000010606 normalization Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 5
- 208000002173 dizziness Diseases 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000035945 sensitivity Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 241000282412 Homo Species 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 2
- 208000012886 Vertigo Diseases 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 231100000889 vertigo Toxicity 0.000 description 2
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000010009 beating Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000011521 glass Substances 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
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Images
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/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- 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/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/005—Reproducing at a different information rate from the information rate of recording
-
- 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/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4532—Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
-
- 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47217—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- 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/84—Generation or processing of descriptive data, e.g. content descriptors
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请公开一种播放视频的方法及装置,涉及视频处理领域,实现自适应变速的播放速度,符合用户的播放设置,提高了自适应变速播放视频的用户观感体验。该方案包括:获取第一播放速度;获取第一信息,第一信息包括视频的图像信息和/或视频的语音信息;以第二播放速度播放该视频,第二播放速度基于第一播放速度和第一信息得到。
Description
技术领域
本申请实施例涉及视频处理领域,尤其涉及一种播放视频的方法及装置。
背景技术
随着电子设备的广泛应用,在电子设备上观看视频(例如影视剧视频、在线教学视频等)已经成为人们日常生活不可或缺的项目。而当前,视频倍速播放已成为许多青年用户的使用习惯,经调查,如图1所示的调研结果,约70%的用户会使用倍速功能。
目前国内外视频播放平台普遍上线了恒定倍速功能,用户在播放界面选取恒定倍速功能并选择期望的播放速度,电子设备则根据用户选择的播放速度播放视频。但恒定倍速功能对于视频中较快节奏的片段可能导致画面变得眩晕、语音变得尖锐,对于较慢节奏的片段可能无法满足用户的观看速度需求,用户需要频繁手动切换播放速度以满足自己的需要。
基于恒定倍速功能的不足,业界提出了众多视频自适应变速的方案,例如基于大数据统计、基于画面内容、基于语音速度或基于语音和画面质量进行视频自适应变速的方案。其中,基于大数据统计的视频倍速方案,需要大量用户历史数据作为支撑,对于新上线的视频,无法冷启动自适应变速。基于视频的图像内容、或语音速度、或画面内容和语音速度作为参考信息的视频倍速播放方案,仅仅根据参考信息确定最终播放视频播放速度,最终的播放速度受到参考信息的绝对影响,没有考虑用户的个性化需求。
因此,当前的视频自适应变速方案仍然需要改进,以同时满足用户的个性化需求。
发明内容
本申请提供的播放视频的方法,实现自适应变速的播放速度,同时考虑用户的播放设置,提高了自适应变速播放视频的用户观感体验。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种播放视频的方法,应用于电子设备,该方法可以包括:获取第一播放速度;获取第一信息,第一信息包括视频的图像信息和/或视频的语音信息;以第二播放速度播放该视频,第二播放速度基于第一播放速度和第一信息得到。
通过本申请提供的播放视频的方法,基于用户个性化需求相关的第一播放速度以及第一信息确定最终播放视频的第二播放速度,这样一来,兼顾了视频内容以及用户需求实现自适应变速,在视频整体播放时长靠近用户需求的同时,根据视频的画面内容、音速等信息实现自适应变速,提高了用户的观感体验。
在一种可能的实现方式中,上述第一播放速度与用户的播放设置相关,以满足用户的个性化需求。
其中,视频的播放速度,可以表示播放视频中每一帧图像的播放倍率或播放时长,也可以表示以该速度播放整个视频所需要的时长与以1倍速播放该视频所需要的时长的比值。以第二播放速度播放一个视频时,第二播放速度可以表示一个速度序列,以对应视频中每一帧的播放速度,不同帧的播放速度可以相同,也可以不同。
在一种可能的实现方式中,采用第一播放速度播放该视频的第一时长,与采用第二播放速度播放该视频的第二时长不同,第一播放速度可以是用户设定的固定速度播放视频的速度,其体现了用户希望在多长的时间内观看这个视频,采用第二播放速度播放该视频时,由于同时考虑了视频的画面内容、语速等信息,播放速度可能会根据视频内容变化,因而播放整个视频的第二时长会与第一时长不同。
在一种可能的实现方式中,第二时长与采用用户指定的播放速度R0播放该视频的时长的差值,小于或等于门限值,以使得自适应的变速满足了用户对整体播放时长的需求,提高了用户体验。
在一种可能的实现方式中,获取第一播放速度具体可以实现为:根据获取的第一操作信息,显示第一界面。其中,第一界面包括至少两个选择项,一个选择项指示一个播放速度;获取第二操作信息;根据第二操作信息和至少两个选择项,确定第一播放速度。在该实现方式中,将用户通过第二操作信息在第一界面中选取的选择项指示的播放速度,确定为第一播放速度,实现了第一播放速度为用户选择的播放速度。
其中,第一操作信息可以为触发显示第一界面的操作信息,或者,第一操作可以为触发进行播放速度选择的操作信息。第一界面显示至少两个指示不同播放速度的选择项,以使得用户可以在此界面选择播放速度。
在另一种可能的实现方式中,获取第一播放速度具体可以实现为:根据获取的第一操作信息,显示第一界面。其中,第一界面包括第一速度;根据获取的第二操作信息,显示第二界面,其中,第二界面包括第二速度;根据第二速度,确定第一播放速度。在该实现方式中,将用户通过第二操作信息触发的第二界面中的第二速度,确定为第一播放速度,实现了第一播放速度为用户选择的播放速度。
其中,该实现方式中的第一操作信息,可以为调起菜单的操作信息,第一界面为视频当前播放界面中呈现了当前的第一速度的界面。第二操作信息为调整播放速度的操作信息,第二操作信息可以为从多个选项中选取第二速度,或者,第二操作信息可以为步进确定第二速度。
在另一种可能的实现方式中,获取第一播放速度具体可以实现为:根据获取的第一操作信息,停止播放该视频的前一视频,开始播放该视频;根据该前一视频的播放速度,确定第一播放速度。在该实现方式中,将用户通过第一操作信息触发的切换播放目标视频时,原播放视频的播放速度确定为第一播放速度,实现了第一播放速度为用户习惯的播放速度。
其中,原播放视频的播放速度可以为原视频时第一播放速度,或者,也可以为原视频的第二播放速度。
在另一种可能的实现方式中,第二播放速度基于第一播放速度和第一信息得到包括:根据第一信息中的每一种信息确定对应的第三播放速度;根据第一播放速度和所有第三播放速度,确定第二播放速度。通过多种第一信息,分别确定每一种信息对应的第三播放速度,再根据第三播放速度和第一播放速度确定第二播放速度,使得确定的第二播放速度既符合用户设置也符合待播放视频的各个第一信息上的特征,可以很好的提高用户的观感体验。
在另一种可能的实现方式中,第二播放速度基于第一播放速度和第一信息得到,包括:根据第一信息中的每一种信息确定对应的第三播放速度;根据第一播放速度和部分第三播放速度,确定第二播放速度。通过多种第一信息,分别确定每一种信息对应的第三播放速度,再根据筛选出的部分第三播放速度和第一播放速度确定第二播放速度,使得确定的第二播放速度既符合用户设置也符合待播放视频的各个第一信息上的特征,可以很好的提高用户的观感体验。该筛选可以将明显不符合条件的第三播放速度过滤掉,可以提高确定第二播放速度的效率。
在另一种可能的实现方式中,一个第一信息对应的第三播放速度可以包括该第一信息决定的对待播放视频中每一帧的播放倍率理论值或播放倍率最大允许值。第二播放速度中对一帧的播放倍率小于或等于任一包含播放倍率最大允许值的第三播放速度中对同一帧的播放倍率。通过多个第一信息确定第三播放速度,并且将多个第三播放速度融合,可以使得最终融合得到的第二播放速度体现了每个第一信息在播放倍率中的需求,也可以牵制某个第一信息确定的播放倍率过高而降低其他第一信息的观感体验,为用户提供信息完整、音画舒适的观感体验。
在另一种可能的实现方式中,每个第一信息对应一个第三播放速度,将上述确定第二播放速度的第三播放速度称之为备选第三播放速度(所有第三播放速度或部分第三播放速度),根据备选第三播放速度以及第一播放速度,确定第二播放速度,具体可以实现为:对所有备选第三播放速度进行融合操作,或者,对包括播放倍率理论值的备选第三播放速度进行融合操作,得到第四播放速度;对包括播放倍率最大允许值的备选第三播放速度进行融合操作,得到第五播放速度;将第四播放速度、第五播放速度,按照第一播放速度R0进行数值优化,得到第二播放速度。该实现方式提供了一种具体的获取第二播放速度的方法,先通过融合操作将第三播放速度进行融合,以提高播放速度中播放倍率理论值以及播放倍率最大允许值的准确性以及有效性,然后再按照用户设置相关的第一播放速度R0进行数值优化,使得最终得到的第二播放速度不仅可以满足用户的期望变速倍率,也具有高的准确性和有效性。
在另一种可能的实现方式中,将第四播放速度、第五播放速度,按照第一播放速度R0进行数值优化,得到第二播放速度,具体可以实现为:将第四播放速度、第五播放速度以及R0,输入目标函数进行数值优化,将使得该目标函数最小的播放速度作为第二播放速度。其中,该目标函数用于描述根据第四播放速度、第五播放速度得到的播放速度对R0的满足程度。目标函数值越小,根据第四播放速度、第五播放速度得到的播放速度越接近R0通过目标函数实现数值优化,提高了方案的可行性以及准确度,可以保证确定的第二播放速度最优。
其中,可以通过调整目标函数的预设参数,根据第四播放速度、第五播放速度得到不同的播放速度。
在另一种可能的实现方式中,视频的图像信息对应的第三播放速度,包括视频的图像信息在多个不同播放速度下对应的包括播放理论值的第三播放速度,根据备选第三播放速度以及第一播放速度,获取第二播放速度,具体可以实现为:将视频的图像信息在多个不同播放速度下对应的第三播放速度,分别与其他第一信息对应的第三播放速度进行融合操作,或者,将视频的图像信息在多个不同播放速度下对应的第三播放速度,分别与其他第一信息对应的包括播放倍率理论值的第三播放速度进行融合操作,得到多个第四播放速度;对包括播放倍率最大允许值的每个第三播放速度进行融合操作,得到第五播放速度;将第四播放速度、分别与第五播放速度以及第一播放速度R0,输入目标函数,将使得该目标函数最小的播放速度作为第二播放速度。该目标函数用于描述根据第四播放速度、第五播放速度得到的播放速度对R0的满足程度。目标函数值越小,根据第四播放速度、第五播放速度得到的播放速度越接近R0。该实现方式提供了一种具体的获取第二播放速度的方法,通过预先配置多个不同播放速度,得到视频的图像信息对应的多个第三播放速度,进而融合得到多个第四播放速度,之后代入目标函数获取最终的第二播放速度,方案实现简单高效,提高了处理效率以及速度。
在另一种可能的实现方式中,上述目标函数可以满足如下表达式:argminsEspeed(S,V)+βErate(S,R0)+αEsmooth(S′,n)+δEA(S,A)。其中:
argmins表示选取第二播放速度S使函数值最低,α、β、δ为预设参数。
在另一种可能的实现方式中,上述融合操作包括选取不同第三播放速度中,相同帧的最大播放倍率与最小的播放倍率之间的播放倍率,以实现将多个第三播放速度融合为一个播放速度。
在另一种可能的实现方式中,参与融合操作的第三播放速度包括播放倍率最大允许值,上述融合操作包括:若不同第三播放速度中,相同帧的最小的播放倍率为播放倍率最大允许值,选取参与融合的第三播放速度中该帧的最小的播放倍率最大允许值;若不同第三播放速度中,相同帧的最小的播放倍率为播放倍率理论值,选取参与融合的第三播放速度中该帧的最小的播放倍率最大允许值与最小的播放倍率的计算值,该计算值可以为平均值,或者最大值,或者最小值,或者其他。
在另一种可能的实现方式中,参与融合操作的第三播放速度不包括播放倍率最大允许值,上述融合操作为选取不同第三播放速度中,相同帧的最大播放倍率理论值与最小的播放倍率理论值的计算值,该计算值可以为平均值,或者最大值,或者最小值,或者其他。
在另一种可能的实现方式中,上述第一信息还可以包括用户感兴趣的内容。其中,用户感兴趣的内容可以包括以下信息中的至少一种:视频的人物描述信息、视频的内容描述信息、视频的内容结构信息。相应的,用户感兴趣的内容对应的第三播放速度中可以包括对待播放视频中每一帧的播放倍率理论值。
其中,视频的人物描述信息用于指示用户对视频中感兴趣的人物的信息,该人物可以为演员或者扮演的角色或者其他。视频的内容描述信息用于指示用户对视频中感兴趣的情节或内容的信息。视频的内容结构信息用于指示用户对视频中感兴趣的章节或位置的信息。
在另一种可能的实现方式中,以第二播放速度播放视频中与用户感兴趣的内容相关的帧时的速度不快于以第一播放速度中播放该帧的速度,以实现用户感兴趣的内容慢速播放,提高用户观感体验。
另一种可能的实现方式中,上述第一信息还可以包括该待播放视频的第一播放模式信息,其中,该第一播放模式信息与视频所对应的播放尺寸信息相关联。其中,视频所对应的播放尺寸信息,可以用于指示视频的显示比例或显示尺寸,例如全屏显示或小窗口显示等。相应的,第一播放模式信息用于决定对视频的播放速度的理论值,播放尺寸大时可以采用较大的播放速度,播放尺寸小时可以采用较小的播放速度,以使得用户可以清晰观看视频内容。
另一种可能的实现方式中,上述第一信息还可以包括待播放的视频的第二播放模式信息,其中,该第二播放模式信息与视频的清晰度信息相关联。其中,视频的清晰度信息,可以用于指示视频播放分辨率,例如高清模式、蓝光模式、省流模式等。相应的,第二播放模式信息用于决定对视频的播放速度的理论值,视频的清晰度高时可以采用较大的播放速度,视频的清晰度低时可以采用较小的播放速度,以使得用户可以清晰观看视频内容。
另一种可能的实现方式中,上述第一信息还可以包括电子设备的运动状态信息。其中,运动状态信息,可以用于指示电子设备的移动速度或相对于用户的位姿等。相应的,运动状态信息用于决定对视频的播放速度的理论值,电子设备移动速度高时或者与处于不便于用户观看的角度时可以采用较小的播放速度,电子设备移动速度低时或者处于便于用户观看的角度时可以采用较大的播放速度,以使得用户可以清晰观看视频内容。
另一种可能的实现方式中,上述第一信息还可以包括电子设备的噪声强度信息。其中,电子设备的噪声强度信息,可以用于指示电子设备的环境干扰程度。相应的,电子设备的噪声强度信息用于决定对视频的播放速度的理论值,电子设备的噪声强度高时可以采用较小的播放速度,电子设备的噪声强度低时可以采用较大的播放速度,以使得用户可以清晰听清视频中的语音。
另一种可能的实现方式中,上述第一信息还可以包括用户视点信息。其中,用户视点信息,可以用于指示用户观看视频时视线的落点,体现了用户的兴趣。相应的,用户视点信息用于决定对视频的播放速度的理论值,用户视点信息指示用户长时间观看视频时可以采用较小的播放速度,用户视点信息指示用户存在未观看视频时可以采用较大的播放速度,以使得播放视频的速度满足用户的视点信息。
另一种可能的实现方式中,上述第一信息还可以包括音频播放设备的连接状态信息。其中,音频播放设备可以为耳机或者音箱。音频播放设备的连接状态信息用于指示音频播放设备是否连接,当连接时用户对视频语音的敏感度高,不易受到外界环境的干扰;当未连接时,用户对视频语音的敏感度低,容易受到外界环境的干扰。相应的,音频播放设备的连接状态信息用于决定对视频的播放速度的理论值,音频播放设备的连接状态信息为连接时,时可以采用较大的播放速度,音频播放设备的连接状态信息为未连接时可以采用较小的播放速度,以使得用户可以清晰听清视频中的语音。
另一种可能的实现方式中,上述第一信息还可以包括网络状态信息。网络状态信息用于指示电子设备接入的网络的质量或类型,当电子设备接入高质量的网络时,播放视频顺畅,否则播放视频卡顿。相应的,网络状态信息用于决定对视频的播放速度的理论值,网络状态信息指示电子设备连接的网络质量高时,可以采用较大的播放速度,网络状态信息指示电子设备连接的网络质量低时,可以采用较小的播放速度,以避免用户观看视频时出现卡顿的情况。
在另一种可能的实现方式中,上述第一信息还可以包括环境信息,该环境信息可以包括播放待播放视频的设备的内部状态信息或播放待播放视频的设备的外部环境信息。外部环境信息对应的第三播放速度包括由该外部环境信息决定的待播放视频中每一帧的播放倍率最大允许值;内部状态信息对应的第三播放速度包括由该内部状态信息决定的待播放视频中每一帧的播放倍率最大允许值。
在另一种可能的实现方式中,视频的图像信息对应的第三播放速度包括由画面中目标运动速度决定的视频中每一帧的播放倍率理论值。视频的语音信息对应的第三播放速度包括由语音速度决定的待播放视频中每一帧的播放倍率最大允许值。
在另一种可能的实现方式中,上述播放倍率理论值可以包括:符合用户感兴趣内容的不同程度对应不同的播放倍率理论值,或者,目标移动速度处于不同区间对应不同的播放倍率理论值。其中,符合用户感兴趣内容的程度越高,对应的播放倍率理论值越小;目标移动速度越快,对应的播放倍率理论值越小。以保证确定的播放速度满足用户的兴趣,或,保证确定的第二播放速度可以保证用户的视觉感受。
在另一种可能的实现方式中,本申请提供的播放视频的方法还可以包括:将第二播放速度与该待播放视频对应存储,以便于其他设备获取该待播放视频以及该第二播放速度,采用该第二播放速度播放该待播放视频。
第二方面,提供一种播放视频的装置,该装置可以包括第一获取单元、第二获取单元以及播放单元。其中:
第一获取单元,用于用于获取第一播放速度。可选的,第一播放速度与用户播放设置相关。
第二获取单元,用于用于获取第一信息,第一信息包括视频的图像信息和/或视频的语音信息。
播放单元,用于以第二播放速度播放视频,第二播放速度基于第一播放速度和第一信息得到。
通过本申请提供的播放视频的装置,基于用户个性化设置相关的第一播放速度以及第一信息确定最终播放视频的第二播放速度,这样一来,兼顾了用户对视频整体播放时长的需求和视频的画面、语速等内容的播放观感,提高了用户观看视频时的体验。
需要说明的是,第二方面的各个单元具体实现同第一方面的方法描述,这里不再赘述。
第三方面,本申请提供了一种电子设备,该电子设备可以实现上述所述第一方面描述的方法示例中的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。该电子设备可以以芯片的产品形态存在。
在一种可能的实现方式中,该电子设备的结构中包括处理器和收发器,该处理器被配置为支持该电子设备执行上述方法中相应的功能。该收发器用于支持该电子设备与其他设备之间的通信。该电子设备还可以包括存储器,该存储器用于与处理器耦合,其保存该电子设备必要的程序指令和数据。
第四方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面或其任一种可能的实现方式提供的播放视频的方法。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或其任一种可能的实现方式提供的播放视频的方法。
第六方面,本申请提供了一种芯片***,该芯片***包括处理器,还可以包括存储器,用于实现上述方法中相应的功能。该芯片***可以由芯片构成,也可以包含芯片和其他分立器件。
第七方面,本申请提供一种播放视频的***,该***包括第一设备,该第一设备可以为第三方面描述的电子设备,该电子设备具备上述第一方面以及任一可能的实现方式的功能。
在一种可能的实现方式中,该播放视频的***还可以包括第二设备,该第二设备用于从第一设备获取待播放视频的第二播放速度,采用第二播放速度播放待播放视频。
其中,需要说明的是,上述各个方面中的任意一个方面的各种可能的实现方式,在方案不矛盾的前提下,均可以进行组合。
附图说明
图1为一种调研结果示意图;
图2为本申请实施例提供的一种电子设备的结构示意图;
图3为本申请实施例提供的一种电子设备的软件结构示意图;
图4为本申请实施例提供的一种***架构示意图;
图5为本申请实施例提供的一种卷积神经网络(convolutional neuron network,CNN)网络的结构示意图;
图6为本申请实施例提供的一种芯片的硬件结构示意图;
图7为本申请实施例提供的电子设备的设置界面示意图;
图8为本申请实施例提供的播放界面示意图;
图9为本申请实施例提供的播放界面示意图;
图10为本申请实施例提供的一种播放视频的方法的流程示意图;
图11为本申请实施例提供的播放界面示意图;
图12为本申请实施例提供的播放界面示意图;
图13为本申请实施例提供的播放界面示意图;
图14为本申请实施例提供的播放界面示意图;
图15为本申请实施例提供的一种不同第一信息对应的第三播放速度的获取方式示意图;
图16为本申请实施例提供的一种播放速度进行融合的场景示意图;
图17为本申请实施例提供的另一种播放速度进行融合的场景示意图;
图18为本申请实施例提供的一种播放视频的方法的流程示意图;
图19为本申请实施例提供的一种变速曲线对比示意图;
图20为本申请实施例提供的一种自适应变速曲线示意图;
图21为本申请实施例提供的另一种自适应变速曲线;
图22为本申请实施例提供的一种播放视频的装置的结构示意图;
图23为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
在本申请实施例中,为了便于清楚描述本申请实施例的技术方案,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。该“第一”、第二”描述的技术特征间无先后顺序或者大小顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
在本申请实施例中,至少一个还可以描述为一个或多个,多个可以是两个、三个、四个或者更多个,本申请不做限制。
此外,本申请实施例描述的网络架构以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在描述本申请的实施例之前,此处先对本申请涉及的名词统一进行解释说明,后续不再一一进行说明。
视频,是指动态的连续图像序列以及与图像对应的语音序列。
视频的图像信息,是指视频中包括的图像(也称为画面)的序列。视频的图像信息是一个一个静态画面的集合。
视频的语音信息,是指视频中包括的语音序列,将视频中每帧图像对应的语音片段,作为一个语音帧,视频中所有语音帧构成该视频的语音信息。语音帧与图像帧一一对应,当播放某一图像帧时,其对应的语音帧同步播放。
图像帧的播放速度,可以表示播放视频时,单位时间内播放的帧数量(帧率),也可以表示播放一帧的时长。以一个播放速度播放一个视频时,播放该视频中每一帧图像的时长可以相同,也可以不同。根据人的眼睛对光的闪烁感知能力,可以得到视频的原始播放帧率。视频的原始播放帧率是视频的属性参数,视频可以默认按照原始播放帧率播放。
视频播放速度,是指视频中每一帧(图像帧和语音帧)的播放速度(或帧率)组成的播放速度序列,可以是恒定的,也可以变化。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
近年来,电子设备(例如终端)的功能越来越丰富,给用户带来了更好的使用体验。例如,电子设备可以观看在线视频,例如影视节目视频、在线教育视频、监控视频等,并在观看过程中,向用户提供倍速功能,实现用户按照个人喜好增加或降低视频的播放速度,改变视频的播放时长。
其中,电子设备可以是智能手机、平板电脑、可穿戴设备、增强现实(augmentedreality,AR)/虚拟现实(virtual reality,VR)设备等。本申请对电子设备的具体形态不予限定。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
在本申请中,电子设备的结构可以如图2所示。如图2所示,电子设备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)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。例如,在本申请中,处理器110可以获取第一播放速度,可选的,第一播放速度与用户播放设置相关;获取第一信息,第一信息包括视频的图像信息和/或视频的语音信息;以及基于第一播放速度和第一信息得到第二播放速度。
其中,控制器可以是电子设备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)接口等。
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也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
电子设备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的显示屏194上可以显示一系列图形用户界面(graphical userinterface,GUI),这些GUI都是该电子设备100的主屏幕。一般来说,电子设备100的显示屏194的尺寸是固定的,只能在该电子设备100的显示屏194中显示有限的控件。控件是一种GUI元素,它是一种软件组件,包含在应用程序中,控制着该应用程序处理的所有数据以及关于这些数据的交互操作,用户可以通过直接操作(direct manipulation)来与控件交互,从而对应用程序的有关信息进行读取或者编辑。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
电子设备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的各种功能应用以及数据处理。例如,在本实施例中,处理器110可以通过执行存储在内部存储器121中的指令,执行本申请提供的播放视频的方法,获取电子设备100播放的视频的播放速度。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
电子设备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还可以用于导航,体感游戏场景。陀螺仪传感器180B还可以判断电子设备100是否处于移动状态。
气压传感器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可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
另外,在上述部件之上,运行有操作***。例如苹果公司所开发的iOS操作***,谷歌公司所开发的Android开源操作***,微软公司所开发的Windows操作***等。在该操作***上可以安装运行应用程序。
电子设备100的操作***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构或其他架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备100的软件结构。
图3是本申请实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和***库,以及内核层。
应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。例如,在拍照时,相机应用可以访问应用程序框架层提供的相机接口管理服务。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:动态图像专家组(moving picture experts group,MPEG)4,H.264,MP3,高级音频编码(advanced audio coding,AAC),自适应多速率(adaptive multi rate,AMR),联合摄影制图专家组(joint photo graphic expertsgroup,JPEG),可移植网络图形格式(portable network graphic format,PNG)等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
二维(2dimensions,2D)图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例提供的播放视频的方法,可以应用在用户使用电子设备播放视频的场景。或者,本申请实施例提供的播放视频的方法还可以应用在视频服务器预处理视频的场景。视频服务器可向其提供的视频配置自适应的播放速度,在其他设备获取视频时提供配置的自适应的播放速度,用于其他设备可以选择按照该自适应的播放速度播放获取的视频。
下面结合图2和用户使用电子设备播放视频的场景,示例性说明电子设备100软件以及硬件的工作流程。
示例性的,在电子设备100播放视频的界面,电子设备100触摸传感器180K接收到用户对播放速度“2.0X”的触摸操作,上报给处理器110,使得处理器110响应于上述触摸操作,将电子设备100当前播放的视频,按照原始播放帧率的两倍帧率,在显示屏194上显示。在该示例中,用于通过触摸操作,选取固定两倍帧率播放视频,即前述的恒定倍速。恒定倍速功能对于视频中较快节奏的片段可能导致画面变得眩晕、语音变得尖锐,对于较慢节奏的片段可能无法满足用户的观看速度需求,用户需要频繁手动切换倍速以满足自己的需要。因此,众多视频自适应变速的方案应运而生。
基于大数据统计、基于画面内容、基于语音速度或基于语音和画面质量进行视频自适应变速的方案。其中,基于大数据统计的视频倍速方案,需要大量用户历史数据作为支撑,对于新上线的视频,无法冷启动自适应变速。
基于画面内容的视频倍速播放方案,对于特定的关注画面信息的场景(例如安防、体育等场景)有一定应用价值,但对于影音场景(对画面、语音都有信息摄入及观感需求)应用价值不高。
基于语音速度的视频倍速播放方案,仅按照人能听懂的最快吐词速度自适应调整视频变速倍率,无法考虑视频中画面的观感体验。
基于语音速度和画面质量的视频倍速播放方案,认为视频中声音过于嘈杂的片段以及画面晃动较大的片段是次要的,可以快加速,其他片段则慢加速,但该方案虽然考虑了声音和画面两种信息,但被快加速略过的语音和画面几乎无信息量,应用场景很有限,对于大多数影视作品,音画质量都较高,该方案并不能有效变速。
并且,上述自适应的视频倍速播放方案,最终的播放速度受到参考信息(视频的图像内容、或语音速度、或画面内容和语音速度)的绝对影响,并未考虑用户播放设置的相关的播放速度,因此,用户的观感体验有待提高。
基于此,本申请提供了一种播放视频的方法,具体包括:以用户播放设置相关的第一播放速度,以及视频的图像和/或语音的信息,确定播放视频的第二播放速度。这样一来,兼顾了视频内容以及用户需求实现自适应变速,提高了自适应变速播放视频的用户观感体验。
下面从模型训练侧和模型应用侧对本申请提供的方法进行描述:
本申请实施例提供的播放视频的方法,涉及视频的处理,具体可以应用数据训练、机器学习、深度学习等数据处理方法,对训练数据(如视频中的第一信息)进行符号化和形式化的智能信息建模、抽取、预处理、训练等,最终得到训练好的视频理解网络;并且,本申请实施例提供的播放视频的方法可以运用上述训练好的视频理解网络(视频图像理解网络、视频语音理解网络),将输入数据(如本申请中的待播放视频)输入到所述训练好的视频理解网络中,得到输出数据(第一信息对应的第三播放速度)。需要说明的是,本申请实施例提供的视频图像理解网络或视频语音理解网络的训练方法和视频播放方法是基于同一个构思产生的发明,也可以理解为一个***中的两个部分,或一个整体流程的两个阶段:如模型训练阶段和模型应用阶段。
由于本申请实施例涉及大量神经网络的应用,为了便于理解,下面先对本申请实施例涉及的相关术语及神经网络等相关概念进行介绍。
(1)神经网络(neural network,NN)
神经网络是机器学习模型,是一种模拟人脑的神经网络以能够实现类人工智能的机器学习技术。可以根据实际需求配置神经网络的输入及输出,并通过样本数据对神经网络训练,以使得其输出与样本数据对应的真实输出的误差最小。神经网络可以是由神经单元组成的,神经单元可以是指以xs和截距1为输入的运算单元,该运算单元的输出可以为:
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入。激活函数可以是sigmoid函数。神经网络是将许多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)深度神经网络
深度神经网络(deep neural network,DNN),也称多层神经网络,可以理解为具有很多层隐含层的神经网络,这里的“很多”并没有特别的度量标准。从DNN按不同层的位置划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下线性关系表达式:其中,是输入向量,是输出向量,b是偏移向量,W是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量经过如此简单的操作得到输出向量由于DNN层数多,则系数W和偏移向量b的数量也就很多了。这些参数在DNN中的定义如下所述:以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第三层的第2个神经元的线性系数定义为上标3代表系数W所在的层数,而下标对应的是输出的第三层索引2和输入的第二层索引4。总结就是:第L-1层的第k个神经元到第L层的第j个神经元的系数定义为需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的也就是学习权重矩阵的过程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。
(3)卷积神经网络
CNN是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。该特征抽取器可以看作是滤波器,卷积过程可以看作是使用一个可训练的滤波器与一个输入的图像或者卷积特征平面(feature map)做卷积。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。这其中隐含的原理是:图像的某一部分的统计信息与其他部分是一样的。即意味着在某一部分学习的图像信息也能用在另一部分上。所以对于图像上的所有位置,都能使用同样的学习得到的图像信息。在同一卷积层中,可以使用多个卷积核来提取不同的图像信息,一般地,卷积核数量越多,卷积操作反映的图像信息越丰富。
卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(4)循环神经网络(recurrent neural networks,RNN)是用来处理序列数据的。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,而对于每一层层内之间的各个节点是无连接的。这种普通的神经网络虽然解决了很多难题,但是却仍然对很多问题却无能无力。例如,你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐含层本层之间的节点不再无连接而是有连接的,并且隐含层的输入不仅包括输入层的输出还包括上一时刻隐含层的输出。理论上,RNN能够对任何长度的序列数据进行处理。对于RNN的训练和对传统的CNN或DNN的训练一样。同样使用误差反向传播算法,不过有一点区别:即,如果将RNN进行网络展开,那么其中的参数,如W,是共享的;而如上举例上述的传统神经网络却不是这样。并且在使用梯度下降算法中,每一步的输出不仅依赖当前步的网络,还依赖前面若干步网络的状态。该学习算法称为基于时间的反向传播算法Back propagation Through Time(BPTT)。
既然已经有了卷积神经网络,为什么还要循环神经网络?原因很简单,在卷积神经网络中,有一个前提假设是:元素之间是相互独立的,输入与输出也是独立的,比如猫和狗。但现实世界中,很多元素都是相互连接的,比如股票随时间的变化,再比如一个人说了:我喜欢旅游,其中最喜欢的地方是云南,以后有机会一定要去。这里填空,人类应该都知道是填“云南”。因为人类会根据上下文的内容进行推断,但如何让机器做到这一步?RNN就应运而生了。RNN旨在让机器像人一样拥有记忆的能力。因此,RNN的输出就需要依赖当前的输入信息和历史的记忆信息。
(6)损失函数
在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
下面介绍本申请实施例提供的***架构。
参见附图4,本发明实施例提供了一种***架构500。如所述***架构500所示,数据采集设备560用于采集训练数据,本申请实施例中训练数据包括:视频的第一信息(第一信息包括视频的图像信息和/或视频的语音信息);并将训练数据存入数据库530,训练设备520基于数据库530中维护的训练数据训练得到目标模型/规则501,该目标模型/规则501可以为本申请实施例中描述的视频理解网络,即将待播放视频输入该目标模型/规则501,即可得到待播放视频的第一信息对应的第三播放速度,该第三播放速度用于描述待播放视频中每个帧的播放倍率。在本申请提供的实施例中,该视频理解网络络是通过训练得到的。需要说明的是,在实际的应用中,所述数据库530中维护的训练数据不一定都来自于数据采集设备560的采集,也有可能是从其他设备接收得到的。另外需要说明的是,训练设备520也不一定完全基于数据库530维护的训练数据进行目标模型/规则501的训练,也有可能从云端或其他地方获取训练数据进行模型训练,上述描述不应该作为对本申请实施例的限定。
根据训练设备520训练得到的目标模型/规则501可以应用于不同的***或设备中,如应用于图4所示的执行设备510,所述执行设备510可以是电子设备,如手机终端,平板电脑,笔记本电脑,AR/VR,车载终端等,还可以是服务器或者云端等。在附图4中,执行设备510配置有I/O接口512,用于与外部设备进行数据交互,用户可以通过客户设备540向I/O接口512输入数据,所述输入数据在本申请实施例中可以包括待播放视频。
在执行设备510的计算模块511执行计算等相关的处理过程中,执行设备510可以调用数据存储***550中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储***550中。
最后,I/O接口512将处理结果,如得到的待播放视频的第二播放速度返回给客户设备540,由客户设备540按照该第二播放速度播放待播放视频,为用户提供信息完整、音画舒适的观感体验。
值得说明的是,训练设备520可以针对视频不同的第一信息,基于不同的训练数据生成相应的目标模型/规则501,该相应的目标模型/规则501即可以用于获取不同的第一信息对应的第三播放速度。
在图4中所示情况下,用户可以手动给定输入数据,该手动给定可以通过I/O接口512提供的界面进行操作。另一种情况下,客户设备540可以自动地向I/O接口512发送输入数据,如果要求客户设备540自动发送输入数据需要获得用户的授权,则用户可以在客户设备540中设置相应权限。客户设备540也可以作为数据采集端,采集如图4所示输入I/O接口512的输入数据及输出I/O接口512的输出结果作为新的样本数据,并存入数据库530。当然,也可以不经过客户设备540进行采集,而是由I/O接口512直接将如图4所示输入I/O接口512的输入数据及输出I/O接口512的输出结果,作为新的样本数据存入数据库530。
值得注意的是,图4仅是本发明实施例提供的一种***架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图4中,数据存储***550相对执行设备510是外部存储器,在其它情况下,也可以将数据存储***550置于执行设备510中。在一些实施例中,执行设备510与客户设备540可以集中部署,作为一个设备。
本申请实施例提供的方法和装置还可以用于扩充训练数据库,如图4所示执行设备510的I/O接口512可以将经执行设备510处理过的视频以及处理结果,作为训练数据对发送给数据库530,以使得数据库530维护的训练数据更加丰富,从而为训练设备520的训练工作提供更丰富的训练数据。
如图4所示,根据训练设备520训练得到目标模型/规则501,该目标模型/规则501在本申请实施例中可以是视频理解网络。在本申请实施例提供的视频理解网络都可以是卷积神经网络、循环神经网络,或者其他。
示例性的,当目标模型/规则501为视频图像理解网络时,视频图像理解网络的功能为针对视频的图像信息,确定图像是否满足条件。视频图像理解网络将预测出每一帧图像是否满足条件,对满足条件的图像配置较小的播放倍率理论值,不满足条件的图像配置较大的播放倍率理论值,将每一帧图像的播放倍率作为待播放视频的图像对应的第三播放速度输出。
需要说明的是,对于视频图像信息对应的第三播放速度中,是否满足条件配置的播放倍率具体值,可以根据实际需求配置,本申请实施例不予限定。
示例性的,当目标模型/规则501为视频图像理解网络时,视频图像理解网络的功能为针对视频图像信息,确定图像满足条件的程度。视频图像理解网络将预测出每一帧图像满足条件的程度,对完全满足条件的图像配置较小的播放倍率,对完全不满足条件的图像配置较大的播放倍率,对部分满足条件的图像配置中等的播放倍率,将每一帧图像的播放倍率作为待播放视频的图像信息对应的第三播放速度输出。
需要说明的是,对于视频图像信息对应的第三播放速度中,满足条件的不同程度配置的播放倍率具体值,可以根据实际需求配置,本申请实施例不予限定。
示例性的,当目标模型/规则501为视频图像理解网络,条件为图像中目标的运动速率大于阈值时,视频图像理解网络的功能为针对图像信息,进行图像中目标的运动速度预测。视频图像理解网络将预测出每一帧图像中目标的运动快慢,对目标运动较快的图像配置较小的播放倍率,目标较静止的图像配置较大的播放倍率,将每一帧图像面的播放倍率作为待播放视频的图像信息对应的第三播放速度输出。
需要说明的是,对于图像信息对应的第三播放速度中,图像中目标的运动不同速度配置的播放倍率具体值,可以根据实际需求配置,本申请实施例不予限定。
还需要说明的是,图像信息对应的第三播放速度,可以是对图像帧之间播放倍率快慢的相对建议,不约束最终变速倍率。
其中,图像中的目标可以为图像中运动最快的目标,或者,图像中的目标可以为图像中心区域内的目标,本申请实施例对于图像中目标不予限定。图像中心区域可以根据实际需求配置,本申请实施例对此也不予限定。
示例性的,当目标模型/规则501为视频语音理解网络时,视频语音理解网络的功能为针对视频的语音信息进行语速预测。视频语音理解网络预测出每个图像帧对应语音帧中的语速,根据统计得到人类最高舒适语速耐受值,计算出每一帧对应的最高可播放倍率,将每一帧语音的最高播放倍率作为待播放视频的语音信息对应的第三播放速度输出。
需要说明的是,语音信息对应的第三播放速度,可以是对播放倍率的绝对限制,表明最终播放速度的最高建议值,超过该播放倍率,视频将观感不佳。
如前文的基础概念介绍所述,卷积神经网络是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构,深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元可以对输入其中的图像作出响应。
如图5所示,卷积神经网络(CNN)600可以包括输入层610,卷积层/池化层620(其中池化层为可选的),以及神经网络层630。
卷积层/池化层620:
卷积层:
如图5所示卷积层/池化层620可以包括如示例621-626层,举例来说:在一种实现中,621层为卷积层,622层为池化层,623层为卷积层,624层为池化层,625为卷积层,626为池化层;在另一种实现方式中,621、622为卷积层,623为池化层,624、625为卷积层,626为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
下面将以卷积层621为例,介绍一层卷积层的内部工作原理。
卷积层621可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(depth dimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用多个尺寸(行×列)相同的权重矩阵,即多个同型矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度,这里的维度可以理解为由上面所述的“多个”来决定。不同的权重矩阵可以用来提取图像中不同的特征,例如一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化等。该多个权重矩阵尺寸(行×列)相同,经过该多个尺寸相同的权重矩阵提取后的特征图的尺寸也相同,再将提取到的多个尺寸相同的特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以用来从输入图像中提取信息,从而使得卷积神经网络600进行正确的预测。
当卷积神经网络600有多个卷积层的时候,初始的卷积层(例如621)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络600深度的加深,越往后的卷积层(例如626)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,在如图5中620所示例的621-626各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在图像处理过程中,池化层的唯一目的就是减少图像的空间大小。池化层可以包括平均池化算子和/或最大池化算子,以用于对输入图像进行采样得到较小尺寸的图像。平均池化算子可以在特定范围内对图像中的像素值进行计算产生平均值作为平均池化的结果。最大池化算子可以在特定范围内取该范围内值最大的像素作为最大池化的结果。另外,就像卷积层中用权重矩阵的大小应该与图像尺寸相关一样,池化层中的运算符也应该与图像的大小相关。通过池化层处理后输出的图像尺寸可以小于输入池化层的图像的尺寸,池化层输出的图像中每个像素点表示输入池化层的图像的对应子区域的平均值或最大值。
神经网络层630:
在经过卷积层/池化层620的处理后,卷积神经网络600还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层620只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或其他相关信息),卷积神经网络600需要利用神经网络层630来生成一个或者一组所需要的类的数量的输出。因此,在神经网络层630中可以包括多层隐含层(如图5所示的631、632至63n)以及输出层640,该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括图像识别,图像分类,图像超分辨率重建等等。
在神经网络层630中的多层隐含层之后,也就是整个卷积神经网络600的最后层为输出层640,该输出层640具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络600的前向传播(如图5由610至640方向的传播为前向传播)完成,反向传播(如图5由640至610方向的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络600的损失,及卷积神经网络600通过输出层输出的结果和理想结果之间的误差。
需要说明的是,如图5所示的卷积神经网络600仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在。
下面介绍本申请实施例提供的一种芯片硬件结构。
图6为本发明实施例提供的一种芯片硬件结构,该芯片包括神经网络处理器(NPU)70。该芯片可以被设置在如图4所示的执行设备510中,用以完成计算模块511的计算工作。该芯片也可以被设置在如图4所示的训练设备520中,用以完成训练设备520的训练工作并输出目标模型/规则501。如图5所示的卷积神经网络中各层的算法均可在如图6所示的芯片中得以实现。
如图6所示,NPU 70作为协处理器挂载到主中央处理器(central processingunit,CPU)(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路70,控制器704控制运算电路703提取存储器(权重存储器或输入存储器)中的数据并进行运算。
在一些实现中,运算电路703内部包括多个处理单元(process engine,PE)。在一些实现中,运算电路703是二维脉动阵列。运算电路703还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路703是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路703从权重存储器702中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路703从输入存储器701中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器708(accumulator)中。
向量计算单元707可以对运算电路703的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元707可以用于神经网络中非卷积/非全连接层(fully connected layers,FC)层的网络计算,如池化(Pooling),批归一化(Batch Normalization),局部响应归一化(Local Response Normalization)等。
在一些实现种,向量计算单元能707将经处理的输出的向量存储到统一缓存器706。例如,向量计算单元707可以将非线性函数应用到运算电路703的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元707生成归一化的值、合并值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路703的激活输入,例如用于在神经网络中的后续层中的使用。
例如,如图5所示的卷积神经网络中各层的算法均可以由703或707执行。图4中计算模块511、训练设备520的算法均可以由703或707执行。
统一存储器706用于存放输入数据以及输出数据。
权重数据直接通过存储单元访问控制器(direct memory access controller,DMAC)705将外部存储器中的输入数据搬运到输入存储器701和/或统一存储器706、将外部存储器中的权重数据存入权重存储器702,以及将统一存储器706中的数据存入外部存储器。
总线接口单元(bus interface unit,BIU)710,用于通过总线实现主CPU、DMAC和取指存储器709之间进行交互。
与控制器704连接的取指存储器(instruction fetch buffer)709,用于存储控制器704使用的指令。
控制器704,用于调用指存储器709中缓存的指令,实现控制该运算加速器的工作过程。
示例性的,这里的数据可以为是说明数据,可以是图5所示的卷积神经网络中各层的输入或输出数据,或者,可以是图4中计算模块511、训练设备520的输入或输出数据。
一般地,统一存储器706,输入存储器701,权重存储器702以及取指存储器709均为片上(On-Chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(double data rate synchronous dynamic random accessmemory,DDR SDRAM)、高带宽存储器(high bandwidth memory,HBM)或其他可读可写的存储器。
可选的,图4和图5中的程序算法是由主CPU和NPU共同配合完成的。
本申请实施例提供一种播放视频的方法,应用于用户使用电子设备播放视频的过程中,或者视频服务预处理视频的过程中。
一种可能的实现方式中,该播放视频的方法可以由图4中的执行设备510(例如提供视频的服务器)执行,执行设备510中的计算模块511可以用于执行下述S1001至S1002,由客户设备540按照S1002得到的第二播放速度播放待播放视频。
另一种可能的实现方式中,该播放视频的方法可以由图4中的客户设备540(例如电子设备)执行。
需要说明的是,本申请实施例对于该播放视频的方法的执行主体不予限定,下述实施例中由电子设备执行该播放视频的方法,该电子设备中的单元可以部署于一个设备上,也可以分离的部署在多个设备中,本申请实施例对此不予限定。
具体的,将本申请提供的播放视频的方案称之为自适应加速或AI加速,电子设备可以通过多种方式向用户提供开启自适应加速功能的方式。
在一种可能的实现方式中,电子设备的视频播放软件中,可以由用户设置开启自适应加速功能,当用户开启该功能时,对所有视频执行本申请提供的方案进行自适应加速。
示例性的,如图7所示的某软件的用户设置界面中,自适应加速功能设置图标701用于根据用户选择,开启或关闭自适应加速。当开启自适应加速功能时,用户播放每一个视频时,无需再单独选择开启该功能,即可享受自适应加速功能与自己选择的播放速率结合之后的加速效果。
在一种可能的实现方式中,电子设备的视频播放软件中,可以默认开启自适应加速功能,由用户在图7示意的设置界面中关闭自适应加速功能。
另一种可能的实现方式中,电子设备的视频播放软件中,可以默认关闭自适应加速功能,由用户在图7示意的设置界面中开启自适应加速功能。
另一种可能的实现方式中,电子设备的视频播放软件中,可以在视频播放界面,由用户操作,开启或关闭对当前播放的视频的自适应加速功能,当用户开启该功能时,对当前播放视频执行本申请提供的方案进行自适应加速。
示例性的,在图8示意的电子设备的界面中,根据用户的操作即将播放或正在播放视频A。图8的界面中提供了智能自适应(AI)加速图标801,图标801通过不同的颜色(或字体、符号、背景色等)指示自适应加速功能的开启与关闭。例如,当用颜色来区分自适应加速功能的开启与关闭时,用户对指示自适应加速功能的关闭的图标801进行一次点击操作,电子设备响应该点击操作,打开自适应加速功能,将图标801显示为指示自适应加速功能开启的颜色,如红色。用户对指示自适应加速功能的开启的图标801进行一次点击操作,电子设备响应该点击操作,关闭自适应加速功能,将图标801显示为指示自适应加速功能关闭的颜色,如白色。本申请对于如何显示自适应加速功能的开启与关闭不做限定。在用户选择开启自适应加速功能之前或之后,可以点击界面中的倍速图标802,以选择自己希望的播放速率,电子设备就会采用本申请的提供的方案在用户选择的播放速率的基础上结合视频内容特点对视频进行自适应加速并播放。
示例性的,在图9中的(a)示意的电子设备的界面中,根据用户的操作即将播放或正在播放视频A。当用户期望对视频A进行自适应加速时,用户在图9中的(a)的界面中对倍速图标901进行点击操作,电子设备响应该点击操作,显示如图9中的(b)所示的界面,该界面中包括多个选择项,一个选择项指示一个播放速度。如图9中的(b)所示的界面中,仅有播放速度的选择项(例如2.0X、1.0X等,还可以包括图9未示出的其他选择项,例如0.5X、0.75X、1.25X、1.5X、1.75X、2.25X、2.5X、2.75X、3.0X等,本申请对此不做限制),用于选择恒定倍率不进行自适应加速。如图9中的(b)所示的界面中,播放速度和AI指示的选择项(例如2.0+AI、1.0+AI等,还可以包括图9未示出的其他选择项,例如0.5X+AI、0.75X+AI、1.25X+AI、1.5X+AI、1.75X+AI、2.25X+AI、2.5X+AI、2.75X+AI、3.0X+AI等,本申请对此不做限制),用于选择恒定倍率且基于恒定倍率进行自适应加速。用户在图9中的(b)的界面中对选择项“2.0+AI”进行点击操作,以选择2.0X的播放速度且进行自适应加速。当用户在图9中的(a)界面中对倍速图标901进行点击操作,电子设备响应该点击操作,也可以只显示上述图9中的(b)中指示播放速度和AI加速的选择项,不显示仅用于指示恒定加速的选择项。对于如何显示用于指示本申请提供的自适应加速功能的选择项,本申请不做限定。
当用户操作开启自适应加速功能后,电子设备执行本申请提供的方案,对视频最后的播放速度是基于用户选择的第一播放速度以及第一信息决定的。
在另一种可能的实现方式中,上述自适应加速功能的开启或关闭,可以结合图7和图8(或图9)的方案,例如,用户在软件的整体设置界面打开了自适应加速功能,然后播放某一特定视频时又可以在该界面关闭自适应加速功能,以对该特定视频关闭自适应加速功能,而对其他的视频仍然采用自适应加速功能。
如图10所示,本申请实施例提供的播放视频的方法可以包括:
S1001、电子设备获取第一播放速度。
具体的,S1001中电子设备获取待播放视频的第一播放速度。一种可能的实现方式中,待播放视频是用户在电子设备上选取的期望播放的视频。例如,用户在电子设备中某一在线影音播放软件中,选择播放电影视频,该电影视频则为待播放视频。
另一种可能的实现方式中,待播放视频是视频服务器提供的任一视频。
其中,第一播放速度与用户播放设置相关。
一种可能的实现方式中,第一播放速度可以为用户选取的期望的播放速度,或者用户习惯的播放速度,获取用户默认的播放速度等。本申请实施例对于第一播放速度的获取方式不进行具体限定。
一种可能的实现方式中,获取第一播放速度具体可以实现为:根据获取的第一操作信息,显示第一界面。其中,第一界面包括至少两个选择项,一个选择项指示一个播放速度;获取第二操作信息;根据第二操作信息和至少两个选择项,确定第一播放速度。在该实现方式中,将用户通过第二操作信息在第一界面中选取的选择项指示的播放速度,确定为第一播放速度。
其中,第一操作信息可以为触发显示第一界面的操作信息,或者,第一操作可以为触发进行播放速度选择的操作信息。第一界面为进行播放速度选择的界面。
示例性的,在图11中的(a)示意的电子设备的界面中,根据用户的操作即将播放或正在播放视频A。用户在在图11中的(a)的界面中,对倍速图标1101进行点击操作(第一操作),电子设备显示如图11中的(b)示意的第一界面,该第一界面中包括多个选择项(如图11中的(b)中的2.0X、1.5X等,还可以包括图11未示出的其他选择项,例如0.5X、0.75X、1.25X、1.5X、1.75X、2.25X、2.5X、2.75X、3.0X等,本申请对此不做限制)。用户在图11中的(b)示意的第一界面中,对期望的播放速度对应的选择项(例如2.0X)进行点击操作(第二操作),电子设备根据该第二操作信息以及该第二操作信息在第一界面中选取的选择项“2.0X”,确定第一播放速度为“2.0X”。
在另一种可能的实现方式中,获取第一播放速度具体可以实现为:根据获取的第一操作信息,显示第一界面。其中,第一界面包括第一速度;根据获取的第二操作信息,显示第二界面,其中,第二界面包括第二速度;根据第二速度,确定第一播放速度。在该实现方式中,将用户通过第二操作信息触发的第二界面中的第二速度,确定为第一播放速度,实现了第一播放速度为用户选择的播放速度。
其中,该实现方式中的第一操作信息,可以为调起菜单的操作信息,第一界面为视频当前播放界面中呈现了当前的第一速度的界面。第二操作信息为调整播放速度的操作信息,第二操作信息可以为从多个选项中选取第二速度,或者,第二操作信息可以为步进确定第二速度。
示例性的,在图12中的(a)示意的电子设备的界面中,电子设备正在播放视频A,该界面中不包括任何操作项。用户在在图12中的(a)的界面中,对屏幕任一位置进行点击操作(第一操作),调起操作项,电子设备根据该点击操作,显示如图12中的(b)所示的第一界面,该第一界面中包括电子设备播放视频B的当前播放速度1201(第一速度)。用户在如图12中的(b)所示的第一界面中,对当前播放速度1201进行点击操作(第二操作),电子设备根据该第二操作,显示如图12中的(c)所示的第二界面,该第二界面为播放速度选择界面,第二界面中包括多个选择项,一个选择项对应一个播放速度,第二界面中包括用户期望的第二速度(例如“2.0X”),用户对期望的“2.0X”进行点击操作,电子设备根据该点击操作,确定第一播放速度为该第二速度“2.0X”。
示例性的,用户在如图12中的(b)所示的第一界面中,对当前播放速度1201进行点击操作(第二操作),每点击一次代表播放速度步进一档,电子设备根据该第二操作,显示如图12中的(d)所示的第二界面,该第二界面中包括用户通过一次或多次点击操作选取的第二速度(例如“2.0X”),电子设备确定第一播放速度为该第二速度“2.0X”。
需要说明的是,用户在如图12中的(b)所示的第一界面中,对当前播放速度1201进行点击操作(第二操作),电子设备根据该第二操作向用户呈现如图12中的(e)所示的第二界面,第二界面中包括用于选取播放速度的进度条1202,用户对该进度条1202进行拖动选取第二速度,电子设备确定第一播放速度为该第二速度。
在另一种可能的实现方式中,获取第一播放速度具体可以实现为:根据获取的第一操作信息,停止播放该视频的前一视频,开始播放该视频;根据该前一视频的播放速度,确定第一播放速度。在该实现方式中,将用户通过第一操作信息触发的切换播放目标视频时,原播放视频的播放速度确定为第一播放速度,实现了第一播放速度为用户习惯的播放速度。
其中,原播放视频的播放速度可以为原视频时第一播放速度,或者,也可以为原视频的第二播放速度。
示例性的,在图13示意的电子设备的界面中,电子设备正在播放视频A。用户在图13的界面中,对切换下一视频的切换图标1301或者选集图标1302,进行点击操作(第一操作),电子设备根据该点击操作,停止播放视频A,开始播放视频B。电子设备可以将播放视频A时的播放速度确定为播放视频B时的第一播放速度。
示例性的,在图14示意的电子设备的界面中,电子设备正在播放视频A,该界面中还包括多个周边视频。用户在图12的界面中,对周边视频D进行点击操作(第一操作),电子设备根据该点击操作,停止播放视频C,开始播放视频D。电子设备可以将播放视频C时的播放速度确定为播放视频D时的第一播放速度。
需要说明的是,上述图11至图14示意的选择第一播放速度的示例中,均已开启了自适应加速功能,具体的开启自适应加速功能的方式,已在前述内容中进行了详细说明,此处不再赘述。
在另一种可能的实现方式中,当用户未选择第一播放速度时,第一播放速度可以为视频默认的播放速度。
需要说明的是,上述获取第一播放速度的示例仅为举例说明,并不构成具体限定。
S1002、电子设备获取第一信息。
其中,第一信息为待播放视频的第一信息。第一信息可以包括视频的图像信息和/或视频的语音信息。图像信息可以为图像帧序列,语音信息可以为语音帧序列。
具体的,电子设备可以将待播放视频抽取为图像帧和语音帧,以获取待播放视频的画面信息和语音信息。
另一种可能的实现方式,上述第一信息还可以包括用户感兴趣的内容。其中,用户感兴趣的内容可以包括以下信息中的至少一种:视频的人物描述信息、视频的内容描述信息、视频的内容结构信息。
其中,视频的人物描述信息用于指示用户对视频中感兴趣的人物的信息,该人物可以为演员或者扮演的角色或者其他。视频的内容描述信息用于指示用户对视频中感兴趣的情节或内容的信息,例如特定的风景、特定的动作等。视频的内容结构信息用于指示用户对视频中感兴趣的章节或位置的信息,例如分篇章组织的长视频中的章节序号或与特定章节相关的内容等。
具体的,电子设备可以从内部获取该设备的用户感兴趣的内容,例如根据用户的历史观看记录等来确定用户感兴趣的内容。或者,电子设备也可以从外部获取该设备的用户感兴趣的内容,例如,用户使用同一账户登陆多个电子设备,使用同一账户的多个电子设备的历史观看记录等信息会进行同步;或者,用户可以手动输入自己感兴趣的内容,例如可以是电子设备显示若干用户可能感兴趣的内容供用户选择,也可以是用户通过文字、语音、图像等方式输入自己感兴趣的内容。上述用户感兴趣内容的具体获取方式,仅仅是示例性的,本申请不加限定。
另一种可能的实现方式中,上述第一信息还可以包括该待播放视频的第一播放模式信息,其中,该第一播放模式信息与视频所对应的播放尺寸信息相关联。其中,视频所对应的播放尺寸信息,可以用于指示视频的显示比例或显示尺寸,例如全屏显示或小窗口显示等。
另一种可能的实现方式,上述第一信息还可以包括待播放的视频的第二播放模式信息,其中,该第二播放模式信息与视频的清晰度信息相关联。其中,视频的清晰度信息,可以用于指示视频播放分辨率,例如高清模式、蓝光模式、省流模式等。
示例性的,电子设备可以在内部读取该设备中存储的用户感兴趣的内容、第一播放模式信息、第二播放模式信息。
另一种可能的实现方式,上述第一信息还可以包括电子设备的运动状态信息。其中,运动状态信息,可以用于指示电子设备的移动速度或位姿信息。
例如,电子设备可以通过陀螺仪确定设备是否移动中或移动速度,通过方向传感器确定设备的角度。
另一种可能的实现方式,上述第一信息还可以包括电子设备的噪声强度信息。其中,电子设备的噪声强度信息,可以用于指示电子设备的环境干扰程度。
例如,设备可以通过声音传感器确定电子设备的噪声强度信息。
另一种可能的实现方式中,上述第一信息还可以包括用户视点信息。其中,用户视点信息,可以用于指示用户观看视频时视线的落点,体现了用户的兴趣。
例如,电子设备可以通过摄像头捕获的图像,利用视线估计/视点估计技术确定人眼是否注视设备,具体方案本申请实施例不予限定也不进行赘述。
另一种可能的实现方式中,上述第一信息还可以包括音频播放设备的连接状态信息。其中,音频播放设备可以为耳机或者音箱。音频播放设备的连接状态信息用于指示音频播放设备是否连接,当连接时用户对视频语音的敏感度高,不易受到外界环境的干扰;当未连接时,用户对视频语音的敏感度低,容易受到外界环境的干扰。
另一种可能的实现方式,上述第一信息还可以包括网络状态信息。网络状态信息用于指示电子设备接入的网络的质量或类型,当电子设备接入高质量的网络时,播放视频顺畅,否则播放视频卡顿。
需要说明的是,本申请实施例S1002中描述的第一信息以及获取各第一信息的方式仅为示例说明,并不构成具体限定,在实际应用中,可以根据实际需求配置S1002的第一信息的内容,以及获取各第一信息的方式,本申请实施例不再一一赘述。
S1003、电子设备以第二播放速度播放该视频,第二播放速度基于第一播放速度和第一信息得到。
在一种可能的实现方式中,采用第一播放速度播放该视频的第一时长,与采用第二播放速度播放该视频的第二时长不同。
在一种可能的实现方式中,第二播放速度基于第一播放速度和第一信息得到包括:根据第一信息中的每一种信息确定对应的第三播放速度;根据第一播放速度和所有第三播放速度,确定第二播放速度。
在另一种可能的实现方式中,第二播放速度基于第一播放速度和第一信息得到,包括:根据第一信息中的每一种信息确定对应的第三播放速度;根据第一播放速度和部分第三播放速度,确定第二播放速度。其中,部分第三播放速度,是从所有第三播放速度中筛选出的。该筛选可以将明显不符合条件的第三播放速度过滤掉,可以提高确定第二播放速度的效率。本申请实施例对于筛选规则不予限定。
一个第一信息对应的第三播放速度可以包括该第一信息决定的对待播放视频中每一帧的播放倍率理论值或播放倍率最大允许值。第二播放速度中对一帧的播放倍率小于或等于任一包含播放倍率最大允许值的第三播放速度中对同一帧的播放倍率。
示例性的,符合用户感兴趣内容的不同程度对应不同的播放倍率理论值,或者,目标移动速度处于不同区间对应不同的播放倍率理论值。其中,符合用户感兴趣内容的程度越高,对应的播放倍率理论值越小;目标移动速度越快,对应的播放倍率理论值越小。
需要说明的是,配置播放倍率理论值的方案可以根据实际需求配置,本申请实施例对此不予限定。
具体的,当第一信息的内容不同时,第一信息对应的第三播放速度的内容也不同,下面分别示例说明:
示例1、对于视频的图像信息,图像信息对应的第三播放速度可以包括由图像中目标运动速度决定的待播放视频中每一帧的播放倍率理论值。
示例性的,在示例1中的图像信息对应的第三播放速度中,目标运动较快的图像播放倍率低,目标运动较慢的图像播放倍率高。具体的不同移动速度对应的播放倍率,可以根据实际需求配置,本申请实施例对此不予限定。
示例2、对于视频的图像信息,图像信息对应的第三播放速度包括图像信息在多个不同播放速度下对应的包括播放倍率理论值的第三播放速度。
其中,在示例2中,图像信息在一个播放速度下对应的包括播放倍率理论值的第三播放速度,与示例1中的类似,不在赘述。
具体的,在示例2中,可以通过插值的方式,得到多个不同播放速度下的图像信息,然后按照示例1的描述,得到多个不同播放速度下的图像信息对应的第三播放速度,作为该图像信息对应的第三播放速度。下面实施例一对该示例2的具体实现进行了说明,此处不进行赘述。
需要说明的是,本申请实施例对于多个不同播放速度的数量以及取值均不进行具体限定。
示例3、对于视频的语音信息,语音信息对应的第三播放速度可以包括由语音速度决定的待播放视频中每一帧的播放倍率最大允许值。
其中,语音信息对应的第三播放速度可以为保证用户观感体验的播放倍率最大允许值的集合。
具体的,可以将视频的语音信息输入语音理解模块,得到视频的语音信息对应的第三播放速度。语音理解模块可以为前述实施例中描述的视频语音理解网络,当然,也可以为其他模块,本申请实施例对此不予限定。
具体的,在示例3中,可以先预测出视频中每个图像的语音帧中的语音语速,根据统计得到人类最高舒适语速耐受值,计算每一帧对应的最高可播放倍速。
例如,人类最高舒适语速耐受值除以语音帧中的语音语速,减去预设余量,则为语音帧对应的最高可播放倍速。其中,预设余量可以根据实际需求配置,本申请实施例对此不予限定。例如,该预设余量可以为0。
示例4、针对视频的外部环境的第一信息,第一信息对应的第三播放速度包括由该外部环境信息决定的待播放视频中每一帧的播放倍率最大允许值。
具体的,外部环境的第一信息可以包括电子设备的运动状态信息、电子设备的噪声强度信息、用户视点信息、音频播放设备的连接状态信息中的任一项。示例4中电子设备可以根据第一信息对应的策略,确定外部环境信息中的第一信息对应的第三播放速度。该策略可以为保证用户观感体验的播放倍率最大允许值。
例如,在示例4中,配置的策略可以如下:
设备的移动速度越高,为了防止用户观看视频眩晕,则配置较低的播放倍率最大允许值,设备的移动速度越低,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值。设备的角度相对于用户倾斜时,可以配置较低的播放倍率最大允许值,以使得用户可以清晰地观看视频。
设备的噪声强度越大,为了保证用户的观感体验,则可以配置较低的播放倍率最大允许值,设备的噪声强度越小,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值。
用户视点信息指示用户专注看设备时,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值,用户视点信息指示设备的用户未专注看设备时,为了避免用户遗漏视频内容,则可以配置较低的播放倍率最大允许值。
当然,获取外部环境的第一信息对应的第三播放速度时配置的策略的内容,可以根据实际需求配置,本申请实施例仅示例描述,并不构成具体限定。在某一时刻,外部环境的第一信息是固定的信息,该时刻外部环境的第一信息对应的第三播放速度中的播放倍率可以相同。
示例5、针对视频的内部状态的第一信息,第一信息对应的第三播放速度可以包括由该内部状态信息决定的待播放视频中每一帧的播放倍率最大允许值。
具体的,视频的内部状态的第一信息可以包括网络状态信息、第一播放模式信息、第二播放模式信息中的任一项。
可以将内部状态信息输入内部状态理解模块,得到内部状态信息对应的第三播放速度。示例5中电子设备可以根据第一信息对应的策略,确定第一信息对应的第三播放速度。
例如,在示例5中,配置的策略可以如下:
设备的屏幕越大,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值;设备的屏幕越小,为了防止用户观看视频眩晕,则配置较低的播放倍率最大允许值。
设备的连接了耳机时,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值;设备外放时,为了保证用户可以听清,则配置较低的播放倍率最大允许值。
设备的播放音量越大时,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值;设备的播放音量越小时,为了保证用户可以听清,则配置较低的播放倍率最大允许值。
设备的播放清晰度越高时,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值;设备的播放清晰度越低时,为了保证用户可以看清,则配置较低的播放倍率最大允许值。
设备的网络质量越高时,用户可以观看较高速播放的视频,则可以配置较高的播放倍率最大允许值;设备的网络质量越低时,为了保证用户可以看清以防卡顿,则配置较低的播放倍率最大允许值。
当然,获取内部状态的第一信息对应的第三播放速度时配置的策略的内容,可以根据实际需求配置,本申请实施例仅示例描述,并不构成具体限定。在某一时刻,内部状态的第一信息是固定的信息,该时刻内部状态的第一信息对应的第三播放速度中的播放倍率可以相同。
示例6、针对用户个性化的第一信息,第一信息对应的第三播放速度可以包括由第一信息对应的图像内容决定的待播放视频中每一帧的播放倍率理论值。
用户个性化的第一信息可以包括用户感兴趣的内容。
示例性的,在示例6中的个性化的第一信息对应的第三播放速度中,满足用户兴趣的程度越高,播放倍率越低。具体的满足用户兴趣的不同程度对应的播放倍率,可以根据实际需求配置,本申请实施例对此不予限定。
以第二播放速度播放视频中与用户感兴趣的内容相关的帧时的速度不快于以第一播放速度中播放该帧的速度,以实现用户感兴趣的内容慢速播放,提高用户观感体验。
比如,个性化的第一信息对应的第三播放速度可以实现用户喜爱的明星部分慢速播放,而其他情节快速播放的效果。
示例7、针对个性化的第一信息,第一信息对应的第三播放速度可以包括由第一信息决定的待播放视频中每一帧的播放倍率最大允许值。
其中,示例7中个性化的第一信息可以包括用户年龄等。
例如,在示例7中,用户的年龄越大,为了防止用户观看视频眩晕,则配置较低的播放倍率最大允许值用户的年龄越大。
当然,上述示例只是通过举例的形式,对不同第一信息对应的第三播放速度的示例说明,并不构成具体限定。需要说明的是,上述各个示例描述的方式可以组合成多种方案,也可以单独使用,本申请实施例不再一一赘述。
可选的,用户的个性化的第一信息还可以包括用户是否接受根据设备内部状态、外部环境状态等信息调整变速倍率,S1003中可以根据该用户个性化的第一信息,决定是否根据设备内部状态、外部环境状态等信息调整播放倍率。
需要说明的是,若某一第一信息对应的第三播放速度中包括的播放倍率数量小于待播放视频的帧数,可以通过采样、插值等方式对齐,使得第三播放速度中包括的播放倍率数量等于待播放视频的帧数。
需要说明的是,第三播放速度中包括的播放倍率,均为有效播放倍率。有效播放倍率可以为非0的播放倍率,或者,有效播放倍率可以为大于门限的播放倍率。若获取的某一第一信息对应的第三播放速度中包括无效播放倍率,需对其进行处理更新为有效播放倍率。该处理可以为取相邻两帧的平均值,或者,取前一帧的播放倍率,或者,取后一阵的播放倍率,或者取第三播放速度中有效播放倍率的平均值,或者取其他第三播放速度中该位置的有效播放倍率,或其他处理方式,本申请实施例对此不予限定。
例如,语音信息中某一语音帧中不存在语音,确定的语音信息对应的第三播放速度中该帧的播放倍率可能为0,该播放倍率则为无效播放倍率,需处理为有效播放倍率。
需要说明的是,S1003中可以由部署于云端的单元,获取图像信息对应的第三播放速度、语音信息对应的第三播放速度,并存储于云端与待播放视频对应,电子设备播放该待播放视频时,直接获取使用即可。其中,该云端可以为待播放视频的源服务器或其他,本申请实施例对此不予限定。
可选的,S1003中可以由电子设备中的单元,获取图像信息、语音信息之外的第一信息对应的第三播放速度,以满足实时性需求。
示例性的,图15示意了不同第一信息对应的第三播放速度的获取方式。
如图15所示,待播放视频的图像信息对应的第三播放速度可以包括画面变化速度播放倍率理论值序列、指定的明星播放倍率理论值序列、兴趣情节播放倍率理论值或其他。待播放视频的语音信息对应的第三播放速度可以包括仅语速播放倍率理论值序列、考虑背景音播放倍率最大允许值序列、兴趣台词播放倍率理论值序列或其他。图像信息对应的第三播放速度、语音信息对应的第三播放速度可以通过云计算完成。
内部状态的第一信息对应的第三播放速度可以为播放倍率理论值(播放倍率最大允许值)序列,外部环境的第一信息对应的第三播放速度可以为播放倍率理论值(播放倍率最大允许值)序列,用户个性化的第一信息对应的第三播放速度可以为播放倍率理论值(播放倍率最大允许值)序列,可以由视频播放设备实时完成获取。
具体的,S1003中电子设备可以根据每个第一信息对应的第三播放速度以及第一播放速度,确定第二播放速度。
其中,该第二播放速度包括对待播放视频中每一帧的播放倍率,第二播放速度中对一帧的播放倍率小于或等于任一第一信息对应的,包含播放倍率最大允许值的第三播放速度中对同一帧的播放倍率。
一种可能的实现方式中,每个第一信息对应一个第三播放速度,将S1003中获取的每个第三播放速度进行融合操作,得到第二播放速度。
其中,本申请描述的融合操作,可以包括选取不同第三播放速度(参与融合第三播放速度)中,相同帧的最大播放倍率与最小的播放倍率之间的播放倍率。
一种可能的实现方式中,参与融合操作的第三播放速度包括播放倍率最大允许值,上述融合操作可以包括:若不同第三播放速度(参与融合的第三播放速度)中,相同帧的最小的播放倍率为播放倍率最大允许值,选取参与融合的第三播放速度中该帧的最小的播放倍率最大允许值;若不同第三播放速度(参与融合的第三播放速度)中,相同帧的最小的播放倍率为播放倍率理论值,选取选取参与融合的第三播放速度中该帧的最小的播放倍率最大允许值与最小的播放倍率理论值的计算值,该计算值可以为平均值,或者最大值,或者最小值,或者其他。
在另一种可能的实现方式中,参与融合操作的第三播放速度不包括播放倍率最大允许值,可以理解为仅包括播放倍率理论值,上述融合操作可以包括:选取不同第三播放速度(参与融合的第三播放速度)中,相同帧的最大播放倍率理论值与最小的播放倍率理论值的计算值,该计算值可以为平均值,或者最大值,或者最小值,或者其他。
图16示意了视频图像信息对应的第三播放速度与语音信息对应的第三播放速度进行融合操作的场景。如图16所示,语音信息对应的第三播放速度中,无语音部分的语音帧的播放倍率是无效播放倍率,有语音部分的播放倍率是有效播放倍率,无语音部分的语音帧位置融合后的播放倍率,是图像信息对应的第三播放速度中该位置的播放倍率。
另一种可能的实现方式中,为了保证用户的观感体验,采用S1003中确定的第二播放速度播放待播放视频的播放时长,与采用第一播放速度R0播放待播放视频的播放时长的差值,小于或等于门限值。该门限值可以根据实际需求配置,本申请对此不予限定。
一种可能的实现方式中,每个第一信息对应一个第三播放速度,将上述确定第二播放速度的第三播放速度称之为备选第三播放速度(所有第三播放速度或部分第三播放速度),根据备选第三播放速度以及第一播放速度,确定第二播放速度,具体可以实现为:对所有备选第三播放速度进行融合操作,或者,对包括播放倍率理论值的备选第三播放速度进行融合操作,得到第四播放速度;对包括播放倍率最大允许值的备选第三播放速度进行融合操作,得到第五播放速度;将第四播放速度、第五播放速度,按照第一播放速度R0进行数值优化,得到第二播放速度。
其中,可以采用随机梯度下降等数值优化方式,进行数值优化,得到第二播放速度。
示例性的,将第四播放速度、第五播放速度,按照R0进行数值优化,得到第二播放速度,具体可以实现为:将第四播放速度、第五播放速度以及R0,输入目标函数进行数值优化,将使得目标函数最小的播放速度作为第二播放速度。
其中,目标函数用于描述根据第四播放速度、第五播放速度得到的播放速度对R0的满足程度。目标函数值越小,根据第四播放速度、第五播放速度以得到的播放速度越接近R0。
具体的,将第四播放速度、第五播放速度以输入目标函数,通过调整目标函数中的预设参数,可以得到的不同的播放速度。
另一种可能的实现方式中,对应于S1003中的示例2,视频的图像信息对应的第三播放速度,包括视频的图像信息在多个不同播放速度下对应的包括播放倍率理论值的第三播放速度,S1003中根据根据第三播放速度以及第一播放速度,确定第二播放速度,具体可以实现为:将视频的图像信息在多个不同播放速度下对应的第三播放速度,分别与其他第一信息对应的第三播放速度进行融合操作,或者,将视频的图像信息在多个不同播放速度下对应的第三播放速度,分别与其他第一信息对应的包括播放倍率理论值的第三播放速度进行融合操作,得到多个第四播放速度;对包括播放倍率最大允许值的每个第三播放速度进行融合操作,得到第五播放速度;将第四播放速度、分别与第五播放速度以及第一播放速度R0,输入目标函数,将使得该目标函数最小的播放速度作为第二播放速度。
示例性的,上述目标函数可以满足如下表达式:
argminsEspeed(S,V)+βErate(S,R0)+αEsmooth(S′,n)+δEA(S,A) 式2
其中:
argmins表示选取第二播放速度S使函数值最低;α、β、δ为预设参数,可以根据实际需求配置,本申请实施例不予限定。α为自定义超参,该值越大表示优化过程越侧重考虑整体倍率趋近于R0,β为自定义超参,该值越大表示优化过程越侧重曲线的平滑性;δ为自定义超参,该值越大表示播放倍率最大允许值对最终结果的限制越严格。
在采用目标函数进行数值优化的过程中,可以通过调整预设参数的取值,以根据第四播放速度、第五播放速度得到不同的播放速度。
γ为预设参数,该值越小优化最终结果最低播放倍率越接近Rmin。
T为待播放视频中的画面总帧数。
n为目标函数的平滑宽度。
需要说明的是,上述目标函数仅为示例说明,并不构成具体限定。在实际应用中,可以根据实际需求配置目标函数的内容。
图17示意了视频的画面信息对应的第三播放速度与语音信息对应的第三播放速度进行融合操作的场景。在该场景中,视频的画面信息对应一个第三播放速度。如图15所示,语音信息对应的第三播放速度中,无语音部分的语音帧的播放倍率是无效播放倍率,有语音部分的播放倍率是有效播放倍率。视频的画面信息对应的第三播放速度与语音信息对应的第三播放速度进行融合操作,得到融合相对播放速度V(第四播放速度);包括播放倍率理论值的第三播放速度只有语音序列对应的第三播放速度,将其作为融合绝对播放速度A(第五播放速度),将V、A以及R0输入上述式2所示的目标函数,优化后得到的第二播放速度可以如图17所示。在图17所示的第二播放速度中,第一片段位置画面较快,第二播放速度中的低倍率防止眩晕;第二片段、第三片段通过低倍率保证用户听清语音。
通过本申请提供的播放视频的方法,基于用户播放设备相关的第一播放速度以及视频的第一信息确定最终播放视频的第二播放速度,这样一来,兼顾了视频内容以及用户需求实现自适应变速,使得视频的整体播放时长接近用户需求,但是播放时也考虑了视频的画面清晰、语速适度等与观看体验强相关的因素,提高了自适应变速播放视频的用户观感体验。
示例性的,假设用户对战争情节感兴趣,用户在电子设备中观看两个总时长相同的视频X和视频Y,且选取的相同的第一播放速度,视频X中包括了众多的战争情节,而视频Y是人文相关的纪录片,按照本申请提供的方案进行自适应加速后,由于视频X包括用于感兴趣的内容,播放视频X的第二播放速度就小于播放视频Y的第二播放速度,用户观看视频X的时长将大于视频Y的时长。
示例性的,图18示意了一种播放视频的方法,该方法中以视频中的图像信息和语音信息确定第二播放速度以播放视频,在图18示意的播放视频的方法中,以图像信息中目标的移动速度来确定图像信息对应的第三播放速度,且图像信息对应的第三播放速度,包括所述图像信息在多个不同播放速度下对应的包括播放倍率理论值的第三播放速度。该播放视频的方法具体可以包括:
S1、将待播放视频抽取为图像信息V和语音信息A。
S2-V、以抽帧方式,将图像信息V生成K段不同播放速度的图像帧序列,每段图像帧序列以滑窗方式,依次将连续的W帧的片段送入速率预测模块speednet中,得到K段图像帧序列的图像速度预测序列。
其中,K段图像帧序列的播放速度分别为X0~XK-1,X0~XK-1可以根据实际需求配置,本申请对其取值不予限定。
具体的,速率预测模块speednet用于预测每个图像中目标的移动速度,速率预测模块speednet可以为神经网络。
图像速度预测序列是速率预测模块speednet的输出结果,K段图像帧序列输入速率预测模块speednet,生成K个图像速度预测序列。图像速度预测序列中包括0~1之间的标量预测值,该值表示图像帧中目标的速度预测,例如,1表示图像中目标被算法认为运动正常,1之外的其他值表示图像中存在目标被算法认为处于快速运动状态。
S3-V、对K个图像速度预测序列进行长度对齐。
具体的,以待播放视频的帧数F为长度基准,通过插值法将K个图像速度预测序列插值为长度均为F的序列,实现序列长度对齐。
S4-V、根据阈值获取播放倍率理论值序列。
示例性的,在S4-V中,依次从0~1之间的阈值集合(例如阈值集合可以为{0.1,……,0.9},)中取多个阈值,该阈值用于界定是否快速运动,大于阈值认为快速运动,小于阈值认为正常运动。
对选取的每个阈值进行如下操作:
将K个图像速度预测序列,与阈值作比较,得到K个二进制序列(大于阈值的为1,小于阈值的为0),每个二进制序列乘以其对应的播放速度(X0~XK-1中的值)。乘以各自对应的播放速度后的K个序列,相同帧位置取对应的最大值,K个序列变为1个序列,称为播放倍率理论值序列,该播放倍率理论值序列中的每一个值代表了其对应图像帧使分类网络(速率预测模块speednet)判别为非加速状态(速率预测模块speednet输出值为1)的最大可能播放倍率。
对{0.1,……,0.9}中选取多个(例如选取9个)不同的阈值,分别进行上述操作,共形成多个(例如9个)播放倍率理论值序列,该播放倍率理论值序列可以理解为前述实施例中,图像信息对应的第三播放速度。
S2-A、将语音信息输入到语速估计模块中,估计出视频中人物说话片段的语速,形成语速序列。
其中,语速估计模块可以用于字幕速度统计。
S3-A、统计得到人类舒适的最高语速,根据语速序列计算得到语音最大可变速倍率序列。
具体的,在S3-A中将人类舒适的最高语速处于语速序列中每个语音帧的语速,得到每个语音帧最大可以变速的播放倍率,得到语音最大可变速倍率序列,最终变速不能超过该最大可以变速的播放倍率。
S4-A、将语音最大可变速倍率序列长度对齐为视频帧数F,得到播放倍率最大允许值序列。
S4-A中得到的播放倍率最大允许值序列可以理解为前述实施例中,语音信息对应的第三播放速度。
S5、将播放倍率理论值序列和播放倍率最大允许值序列对齐。
在S5中,画面信息对应的播放倍率理论值序列之外,不存在其他第一信息对应的播放倍率理论值序列,仅存在S4-A中得到的语音信息对应的播放倍率最大允许值序列,可以将S4-V中得到的多个播放倍率理论值序列,分别是S4-A中得到播放倍率最大允许值序列,融合得到多个融合相对可变速序列,将该多个融合相对可变速序列理解为前述实施例中描述的多个第四播放速度。在对其融合过程中,对存在语音部分,取两个序列中的最小有效值作为该处播放倍率,形成融合相对可变速序列。
在S5中,仅存在S4-A中得到的语音信息对应的播放倍率最大允许值序列,可以将S4-A中得到的播放倍率最大允许值序列理解为前述实施例中描述的第五播放速度。
例如,9个播放倍率理论值序列分别与播放倍率最大允许值序列对齐融合,得到9个融合相对可变速序列,该融合相对可变速序列是可以达到音画协同播放倍率序列。
S6、根据9条融合相对可变速序列及播放倍率最大允许值序列,选取最终的变速序列。
具体的,在S6中,可以对9条融合相对可变速序列中的数值,分别归一化到0~1之间;然后将归一化后的9条融合相对可变速序列,分别与播放倍率最大允许值序列以及用户指定的播放倍率R0,带入到目标函数中进行数值优化,选择使得目标函数最低的优化结果作为最终的变速序列,即前述实施例中描述的第二播放速度。该目标函数可以为前述式2示意的目标函数或其他,本申请实施例对此不予限定。
其中,对于归一化过程采用的归一化值,可以根据实际需求配置,本申请实施例对此不予限定。
示例性的,可以选取融合相对可变速序列中的最大值,对融合相对可变速序列进行归一化。
S7、根据最终的变速序列,对视频进行播放,形成自适应变速效果。
图19示意了仅基于图像的自适应变速方案的变速曲线与本申请方案的自适应变速曲线对比。如图19所示,在图像较慢但存在语音的片段1,仅基于图像的自适应变速方案的变速曲线播放倍率很高,语音信息几乎丢失,而本申请的变速曲线在具有更低的播放倍率,保证用户能听清台词,保证了语音清晰。在画面抖动较快的片段2,本申请的播放倍率均低于2x,整体观感比恒定2x更舒缓自然。
图20示意了一种本申请方案的自适应变速曲线,对于图像几乎不变化但语速极快的片段3,本申请提供的自适应变速曲线字该片段3播放倍率接近于1.0x,而此段台词在恒定2x播放时已听不清(信息丢失)。
图21示意了一种申请方案的自适应变速曲线,对于情节激烈的战争片中画面晃动剧烈的片段,使用恒定2x倍率观看已产生了视觉眩晕不适感,紧张的台词也听不清,如图21所示片段4,本申请在该片段4包括的各个片段中播放倍率远低于2x,极大缓解了眩晕不适感。
上述主要从电子设备的工作原理角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对执行本申请提供的播放视频的装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图22示出了上述实施例中所涉及的确定播放视频的装置220的一种可能的结构示意图。该确定播放视频的装置220可以为功能模块或者芯片。如图22所示,播放视频的装置220可以包括:第一获取单元2201、第二获取单元2202、播放单元2203。其中,第一获取单元2201用于执行图10中的过程S1001;第二获取单元2202用于执行图10中的过程S1002;播放单元2203用于执行图10中的过程S1003。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在采用集成的单元的情况下,图23示出了上述实施例中所涉及的电子设备230的一种可能的结构示意图。电子设备230可以包括:处理模块2301、通信模块2302。处理模块2301用于对电子设备230的动作进行控制管理,通信模块2302用于与其他设备通信。例如,处理模块2301用于执行图10中的过程S1001至S1003中任一过程。电子设备230还可以包括存储模块2303,用于存储电子设备230的程序代码和数据。
其中,处理模块2301可以为图2所示的电子设备100的实体结构中的处理器110,可以是处理器或控制器。例如可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理模块2301也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块2302可以为图2所示的电子设备100的实体结构中的移动通信模块150或无线通信模块160,通信模块2302可以是通信端口,或者可以是收发器、收发电路或通信接口等。或者,上述通信接口可以通过上述具有收发功能的元件,实现与其他设备的通信。上述具有收发功能的元件可以由天线和/或射频装置实现。存储模块2303可以是图2所示的电子设备100的实体结构中的内部存储器121。
如前述,本申请实施例提供的播放视频的装置220或电子设备230可以用于实施上述本申请各实施例实现的方法中相应的功能,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请各实施例。
作为本实施例的另一种形式,提供一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中的播放视频的方法。
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行时执行上述方法实施例中的播放视频的方法。
本申请实施例再提供一种芯片***,该芯片***包括处理器,用于实现本发明实施例的技术方法。在一种可能的设计中,该芯片***还包括存储器,用于保存本发明实施例必要的程序指令和/或数据。在一种可能的设计中,该芯片***还包括存储器,用于处理器调用存储器中存储的应用程序代码。该芯片***,可以由一个或多个芯片构成,也可以包含芯片和其他分立器件,本申请实施例对此不作具体限定。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM、闪存、ROM、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于核心网接口设备中。当然,处理器和存储介质也可以作为分立组件存在于核心网接口设备中。或者,存储器可以与处理器耦合,例如存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。存储器可以用于存储执行本申请实施例提供的技术方案的应用程序代码,并由处理器来控制执行。处理器用于执行存储器中存储的应用程序代码,从而实现本申请实施例提供的技术方案。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (27)
1.一种播放视频的方法,应用于电子设备,其特征在于,所述方法包括:
获取第一播放速度;
获取第一信息,所述第一信息包括所述视频的图像信息和/或所述视频的语音信息;
以第二播放速度播放所述视频,所述第二播放速度基于所述第一播放速度和所述第一信息得到。
2.根据权利要求1所述的方法,其特征在于,采用所述第一播放速度播放所述视频的第一时长,与采用所述第二播放速度播放所述视频的第二时长不同。
3.根据权利要求1或2所述的方法,其特征在于,所述获取第一播放速度包括:
根据获取的第一操作信息,显示第一界面,其中,所述第一界面包括至少两个选择项,一个所述选择项指示一个播放速度;
获取第二操作信息;
根据所述第二操作信息和所述至少两个选择项,确定所述第一播放速度。
4.根据权利要求1或2所述的方法,其特征在于,所述获取第一播放速度包括:
根据获取的第一操作信息,显示第一界面,其中,所述第一界面包括第一速度;
根据获取的第二操作信息,显示第二界面,其中,所述第二界面包括第二速度;
根据所述第二速度,确定所述第一播放速度。
5.根据权利要求1或2所述的方法,其特征在于,所述获取第一播放速度包括:
根据获取的第一操作信息,停止播放所述视频的前一视频,开始播放所述视频;
根据所述前一视频的播放速度,确定所述第一播放速度。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述第二播放速度基于所述第一播放速度和所述第一信息得到包括:
根据所述第一信息中的每一种信息确定对应的第三播放速度;
根据所述第一播放速度和所有所述第三播放速度,确定所述第二播放速度。
7.根据权利要求1-5中任一项所述的方法,其特征在于,所述第二播放速度基于所述第一播放速度和所述第一信息得到包括:
根据所述第一信息中的每一种信息确定对应的第三播放速度;
根据所述第一播放速度和部分所述第三播放速度,确定所述第二播放速度。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述第一信息还包括用户感兴趣的内容,所述用户感兴趣的内容包括以下信息中的至少一种:所述视频的人物描述信息、所述视频的内容描述信息、所述视频的内容结构信息。
9.根据权利要求8所述的方法,其特征在于,以所述第二播放速度播放所述视频中与所述用户感兴趣的内容相关的帧时的速度,不快于以所述第一播放速度播放所述相关的帧时的速度。
10.根据权利要求1-9中任一项所述的方法,其特征在于,所述第一信息还包括所述视频的播放模式信息,其中,所述播放模式信息与所述视频所对应的播放尺寸信息相关联。
11.根据权利要求1-10中任一项所述的方法,其特征在于,所述第一信息还包括所述视频的播放模式信息,其中,所述播放模式信息与所述视频的清晰度信息相关联。
12.根据权利要求1-11中任一项所述的方法,其特征在于,所述第一信息还包括所述电子设备的运动状态信息。
13.根据权利要求1-12中任一项所述的方法,其特征在于,所述第一信息还包括所述电子设备的噪声强度信息。
14.根据权利要求1-13中任一项所述的方法,其特征在于,所述第一信息还包括用户视点信息。
15.根据权利要求1-14中任一项所述的方法,其特征在于,所述第一信息还包括音频播放设备的连接状态信息。
16.根据权利要求1-15中任一项所述的方法,其特征在于,所述第一信息还包括网络状态信息。
17.一种视频播放装置,其特征在于,所述视频播放装置包括:
第一获取单元,所述第一获取单元用于获取第一播放速度;
第二获取单元,所述第二获取单元用于获取第一信息,所述第一信息包括所述视频的图像信息和/或所述视频的语音信息;
播放单元,所述播放单元用于以第二播放速度播放所述视频,所述第二播放速度基于所述第一播放速度和所述第一信息得到。
18.根据权利要求17所述的装置,其特征在于,采用所述第一播放速度播放所述视频的第一时长,与采用所述第二播放速度播放所述视频的第二时长不同。
19.根据权利要求17或18所述的装置,其特征在于,所述第一获取单元具体用于:
根据获取的第一操作信息,显示第一界面,其中,所述第一界面包括至少两个选择项,一个所述选择项指示一个播放速度;
获取第二操作信息;
根据所述第二操作信息和所述至少两个选择项,确定所述第一播放速度。
20.根据权利要求17或18所述的装置,其特征在于,所述第一获取单元具体用于:
根据获取的第一操作信息,显示第一界面,其中,所述第一界面包括第一速度;
根据获取的第二操作信息,显示第二界面,其中,所述第二界面包括第二速度;
根据所述第二速度,确定所述第一播放速度。
21.根据权利要求17或18所述的装置,其特征在于,所述第一获取单元具体用于:
根据获取的第一操作信息,停止播放所述视频的前一视频,开始播放所述视频;
根据所述前一视频的播放速度,确定所述第一播放速度。
22.根据权利要求17-21中任一项所述的装置,其特征在于,还包括处理单元,用于:
根据所述第一信息中的每一种信息确定对应的第三播放速度;
根据所述第一播放速度和所有所述第三播放速度,确定所述第二播放速度。
23.根据权利要求17-21中任一项所述的装置,其特征在于,还包括处理单元,用于:
根据所述第一信息中的每一种信息确定对应的第三播放速度;
根据所述第一播放速度和部分所述第三播放速度,确定所述第二播放速度。
24.根据权利要求17-23中任一项所述的装置,其特征在于,所述第一信息还包括用户感兴趣的内容,所述用户感兴趣的内容包括以下信息中的至少一种:所述视频的人物描述信息、所述视频的内容描述信息、所述视频的内容结构信息;所述播放单元播放所述视频中与所述用户感兴趣的内容相关的帧时的速度不快于以所述第一播放速度播放所述相关的帧时的速度。
25.一种电子设备,其特征在于,所述电子设备包括:处理器和存储器;
所述存储器与所述处理器连接;
所述存储器用于存储计算机指令,当所述处理器执行所述计算机指令时,所述电子设备执行如权利要求1至16中任一项所述的播放视频的方法。
26.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行权利要求1至16中任一项所述的播放视频的方法。
27.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1至16中任一项所述的播放视频的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110604488.9A CN115484498A (zh) | 2021-05-31 | 2021-05-31 | 一种播放视频的方法及装置 |
PCT/CN2022/094784 WO2022253053A1 (zh) | 2021-05-31 | 2022-05-24 | 一种播放视频的方法及装置 |
EP22815100.7A EP4329320A1 (en) | 2021-05-31 | 2022-05-24 | Method and apparatus for video playback |
US18/521,881 US20240107092A1 (en) | 2021-05-31 | 2023-11-28 | Video playing method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110604488.9A CN115484498A (zh) | 2021-05-31 | 2021-05-31 | 一种播放视频的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115484498A true CN115484498A (zh) | 2022-12-16 |
Family
ID=84322782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110604488.9A Pending CN115484498A (zh) | 2021-05-31 | 2021-05-31 | 一种播放视频的方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240107092A1 (zh) |
EP (1) | EP4329320A1 (zh) |
CN (1) | CN115484498A (zh) |
WO (1) | WO2022253053A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193841B (zh) * | 2016-03-15 | 2022-07-26 | 北京三星通信技术研究有限公司 | 媒体文件加速播放、传输及存储的方法和装置 |
CN106911961B (zh) * | 2017-02-22 | 2020-03-17 | 北京小米移动软件有限公司 | 多媒体数据播放方法及装置 |
CN110248241B (zh) * | 2019-06-11 | 2021-06-04 | Oppo广东移动通信有限公司 | 视频处理方法及相关装置 |
CN112822546A (zh) * | 2020-12-30 | 2021-05-18 | 珠海极海半导体有限公司 | 基于内容感知的倍速播放方法、***、存储介质和设备 |
-
2021
- 2021-05-31 CN CN202110604488.9A patent/CN115484498A/zh active Pending
-
2022
- 2022-05-24 WO PCT/CN2022/094784 patent/WO2022253053A1/zh active Application Filing
- 2022-05-24 EP EP22815100.7A patent/EP4329320A1/en active Pending
-
2023
- 2023-11-28 US US18/521,881 patent/US20240107092A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022253053A1 (zh) | 2022-12-08 |
US20240107092A1 (en) | 2024-03-28 |
EP4329320A1 (en) | 2024-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112717370B (zh) | 一种控制方法和电子设备 | |
CN111738122B (zh) | 图像处理的方法及相关装置 | |
CN113747085B (zh) | 拍摄视频的方法和装置 | |
CN109951633A (zh) | 一种拍摄月亮的方法和电子设备 | |
CN113099146B (zh) | 一种视频生成方法、装置及相关设备 | |
CN111669515B (zh) | 一种视频生成方法及相关装置 | |
CN110377204B (zh) | 一种生成用户头像的方法及电子设备 | |
US20220343648A1 (en) | Image selection method and electronic device | |
CN110471606B (zh) | 输入方法及电子设备 | |
CN113572993B (zh) | 一种视频处理方法及移动终端 | |
CN113364971A (zh) | 图像处理方法和装置 | |
CN113935898A (zh) | 图像处理方法、***、电子设备及计算机可读存储介质 | |
WO2021180046A1 (zh) | 图像留色方法及设备 | |
CN113452969B (zh) | 图像处理方法和装置 | |
CN113705665B (zh) | 图像变换网络模型的训练方法和电子设备 | |
WO2022156473A1 (zh) | 一种播放视频的方法及电子设备 | |
CN115525188A (zh) | 拍摄方法和电子设备 | |
CN112528760B (zh) | 图像处理方法、装置、计算机设备及介质 | |
WO2022143314A1 (zh) | 一种对象注册方法及装置 | |
CN115883958A (zh) | 一种人像拍摄方法 | |
WO2022253053A1 (zh) | 一种播放视频的方法及装置 | |
WO2021190097A1 (zh) | 图像处理方法和装置 | |
CN116861066A (zh) | 应用推荐方法和电子设备 | |
CN115734032A (zh) | 视频剪辑方法、电子设备及存储介质 | |
CN114079725A (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 |