WO2023197811A1 - 视频下载、传输方法、装置、终端设备、服务器及介质 - Google Patents

视频下载、传输方法、装置、终端设备、服务器及介质 Download PDF

Info

Publication number
WO2023197811A1
WO2023197811A1 PCT/CN2023/081525 CN2023081525W WO2023197811A1 WO 2023197811 A1 WO2023197811 A1 WO 2023197811A1 CN 2023081525 W CN2023081525 W CN 2023081525W WO 2023197811 A1 WO2023197811 A1 WO 2023197811A1
Authority
WO
WIPO (PCT)
Prior art keywords
video data
video
target
buffer length
perspective
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.)
Ceased
Application number
PCT/CN2023/081525
Other languages
English (en)
French (fr)
Inventor
孙黎阳
何伟
张傲阳
马茜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to US18/721,346 priority Critical patent/US12537984B2/en
Publication of WO2023197811A1 publication Critical patent/WO2023197811A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing 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/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video

Definitions

  • Figure 9 is a structural block diagram of a video transmission device in Embodiment 5 of the present disclosure.
  • Figure 4 is a flow chart of a video downloading method provided in Embodiment 2 of the present disclosure. This embodiment is adjusted based on each of the above embodiments.
  • the buffer length includes the first current buffer length and the first target buffer length; generating a video data download request according to the buffer length may include: if the first current buffer length is less than the first target buffer length, Then a video data download request for downloading the target video data belonging to the first video data is generated.
  • the target video data is the video data in the panoramic video stored in the server.
  • the historical perspective prediction accuracy can be determined by the user perspective recording/prediction module based on the user perspective sent in real time/regularly by the user perspective acquisition module, and can also be used to predict the user perspective in future time periods.
  • the download scheduling module can determine the target video to be downloaded after receiving the first target buffer length and the second target buffer length sent by the target buffer length control module, and the first current buffer length and the second current buffer length sent by the buffer zone.
  • the method of this embodiment may include the following steps:
  • the original video data may be unencoded video data of a certain frame of video in the panoramic video.
  • the original video data is spatially cut to obtain original video sub-data.
  • the video data corresponding to each small block is an original video sub-data.
  • each target video sub-data can be encoded separately based on the first preset code rate, and then the respective target video sub-data can be updated according to the encoding result. data and transmit them to the client respectively.
  • scalable video coding Scalable Video Coding, svc
  • svc Scalable Video Coding
  • FIG. 8 is a structural block diagram of a video downloading device provided in Embodiment 4 of the present disclosure.
  • the device is used to execute the video downloading method provided in any of the above embodiments.
  • This device has the same concept as the video downloading method in the above embodiments.
  • the device can be configured on the client and can include: a buffer length acquisition module 410, a download request generation module 420, and a target video data download module 430. in,
  • the video downloading device provided in Embodiment 4 of the present disclosure cooperates with the buffer length acquisition module and the download request generation module to obtain the buffer length, and generates a video file for downloading the target video data in the panoramic video stored in the server based on the buffer length.
  • Video data download request the target video data may include video data associated with the first video data and/or the second video data corresponding to the buffer length; further, the video data download request is sent to the server through the target video data download module, according to The received server downloads the target video data based on the request result returned by the video data download request.
  • the above-mentioned device improves the panoramic video viewing experience for video viewing users.
  • FIG. 9 is a structural block diagram of a video transmission device provided by Embodiment 5 of the present disclosure.
  • the device is used to execute the video transmission method provided by any of the above embodiments.
  • This device has the same concept as the video transmission methods in the above embodiments.
  • the device can be configured on a server that stores panoramic videos, and can include: a download request receiving module 510 and a target video data transmission module 520.
  • the download request receiving module 510 is configured to receive a video data download request sent by the client.
  • the video data download request includes a request generated according to the buffer length for downloading the target video data in the panoramic video.
  • the target video data is the same as the first one. Association of one video data and/or second video data;
  • the various units and modules included are only divided according to functional logic, but are not limited to the above divisions, as long as they can realize the corresponding functions; in addition, each unit and module is not limited to the above division.
  • the specific names of the functional units are only for the convenience of distinguishing each other and are not used to limit the scope of protection of the present disclosure.
  • embodiments of the present disclosure include a computer program product including a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the method illustrated in the flowchart.
  • the computer program may be downloaded and installed from the network via communication device 509, or from storage device 508, or from ROM 502.
  • the processing device 501 When the computer program is executed by the processing device 501, the above-mentioned functions defined in the method of the embodiment of the present disclosure are performed.
  • the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two.
  • the computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or any combination thereof.
  • Examples of computer readable storage media may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard drive, random access memory (RAM), read only memory (ROM), erasable programmable read only memory Memory (Erasable Programmable Read-Only Memory, EPROM) or flash memory, optical fiber, portable compact disk read-only memory (Compact Disc Read-Only Memory, CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above .
  • a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device.
  • the client and server can communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and can communicate with digital data in any form or medium.
  • Communications e.g., communications network
  • Examples of communication networks include Local Area Networks (LANs), Wide Area Networks (WANs), the Internet (e.g., the Internet), and end-to-end networks (e.g., ad hoc end-to-end networks), as well as any current network for knowledge or future research and development.
  • LANs Local Area Networks
  • WANs Wide Area Networks
  • the Internet e.g., the Internet
  • end-to-end networks e.g., ad hoc end-to-end networks
  • the buffer length includes at least one of the following: the first current buffer length and the first target buffer length of the first video data corresponding to the target perspective in the panoramic video, and the second video corresponding to the user perspective
  • the second current buffer length and the second target buffer length of the data, the user perspective includes the perspective of the video viewing user of the panoramic video, the coverage of the target perspective is greater than the user perspective, and the video quality of the first video data is lower than the second video data;
  • a video data download request is generated according to the buffer length, where the video data download request is a request for downloading target video data in the panoramic video stored in the server, and the target video data is the same as the first video data and/or the second video. data association;
  • the video data download request is sent to the server, and the target video data is downloaded according to the received request result returned by the server for the video data download request.
  • each block in the flowchart or block diagram may represent a module, segment, or portion of code that contains one or more logic functions that implement the specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown one after another may actually execute substantially in parallel, or they may sometimes execute in the reverse order, depending on the functionality involved.
  • each block of the block diagram and/or flowchart illustration, and combinations of blocks in the block diagram and/or flowchart illustration can be implemented by special purpose hardware-based systems that perform the specified functions or operations. , or can be implemented using a combination of specialized hardware and computer instructions.
  • the units involved in the embodiments of the present disclosure can be implemented in software or hardware. Among them, the name of the unit does not constitute a limitation on the unit itself under certain circumstances.
  • the target video data download module can also be described as "sending a video data download request to the server, and based on the received server's response to the video The request result returned by the data download request, the module for downloading the target video data.”
  • exemplary types of hardware logic components include: field programmable gate array (Field Programmable Gate Array, FPGA), application specific integrated circuit (Application Specific Integrated Circuit, ASIC), application specific standard product (Application Specific Standard Product, ASSP), system on chip (System on Chip, SOC), complex programmable logic device (Complex Programmable Logic Device, CPLD), etc.
  • the user perspective of the video viewing user at the playback time is predicted again, and it is determined that the panoramic video corresponds to the again predicted user perspective and playback time and is consistent with the second video data third video data with the same video quality;
  • the third video data does not include the fourth video data, it is determined that the fifth video data in the panoramic video has the same video quality as the currently buffered second video data and is spatially adjacent, and is generated for downloading based on the fifth video data.
  • the video data is obtained from the video data download request of the target video data.
  • Example 7 provides the method of Example 1.
  • a buffer is provided in the terminal device having the client, and the buffer includes a first buffer for buffering the downloaded first video data and a second buffer for buffering the downloaded second video data;
  • Example 8 provides a video transmission method, which is applied to a server that stores panoramic videos and may include:
  • the original video data For the original video data that has not been encoded in the panoramic video, the original video data is spatially segmented to obtain the original video sub-data;
  • the target video data downloaded by the client includes target video sub-data and/or user video sub-data.
  • the above video transmission method may also include:
  • the downloaded target video sub-data and the user video sub-data that overlap in spatial position are combined, and the combined target video sub-data is updated based on the combination result.
  • the buffer length acquisition module is configured to acquire the buffer length, wherein the buffer length includes at least one of the following: the first current buffer length and the first target buffer length of the first video data corresponding to the target perspective in the panoramic video, and the user The second current buffer length and the second target buffer length of the second video data corresponding to the perspective, the user perspective includes the perspective of the video viewing user of the panoramic video, the coverage of the target perspective is greater than the user perspective, and the video quality of the first video data is lower than second video data;
  • a download request generation module configured to generate a video data download request according to the buffer length, wherein the video data download request includes a request for downloading target video data in the panoramic video stored in the server, and the target video data is the same as the first video data. and/or second video data association;
  • the first download request generating unit is configured to generate a video data download request for downloading target video data belonging to the first video data if the first current buffer length is less than the first target buffer length.
  • Example 12 provides the device of Example 11, and the buffer length further includes a second current buffer length and a second target buffer length;
  • Download the request generation module which can also include:
  • the second current buffer length determination unit is configured to determine whether the second current buffer length is less than the second target buffer length if the first current buffer length is greater than or equal to the first target buffer length;
  • the second download request generating unit is configured to generate a video data download request for downloading the target video data belonging to the second video data if the second current buffer length is less than the second target buffer length.
  • Example 13 provides the device of Example 12, and the user perspective corresponding to the currently buffered second video data is the predicted video viewing user in the currently buffered second video.
  • the third video data determining unit is configured to, after determining whether the second current buffer length is less than the second target buffer length, and if the second current buffer length is greater than or equal to the second target buffer length, predict the video viewing user again at playback time user perspective, and determine third video data in the panoramic video that corresponds to the re-predicted user perspective and playback time and has the same video quality as the second video data;
  • the fourth download request generating unit is configured to determine a fifth video in the panoramic video that has the same video quality as the currently buffered second video data and is spatially adjacent if the third video data does not include the fourth video data. data to generate a video data download request for downloading target video data obtained based on the fifth video data.
  • Example 14 provides the device of Example 10.
  • the above video transmission device may also include:
  • the first target buffer length determination module is configured to obtain historical bandwidth information and historical bandwidth prediction accuracy, predict the network bandwidth when downloading the target video data based on the historical bandwidth information and historical bandwidth prediction accuracy, and determine the first target buffer length based on the network bandwidth;
  • the network bandwidth prediction unit is configured to predict the network bandwidth when downloading the target video data
  • the second video data playback module is configured to obtain and play the corresponding second video data from the second buffer if the second video data corresponding to the current video data is buffered in the second buffer when playing the current video data in the panoramic video. the second video data;
  • the first video data playing module is configured to obtain and play the first video data corresponding to the current video data from the first buffer.
  • Example 17 provides a video transmission device, which is configured on a server that stores panoramic videos, and may include:
  • the download request receiving module is configured to receive a video data download request sent by the client.
  • the video data download request includes a request generated based on the buffer length for downloading the target video data in the panoramic video.
  • the target video data is the same as the first video data. and/or second video data association;
  • the buffer length includes at least one of the following: a first current buffer length and a first target buffer length of the first video data corresponding to the target perspective in the panoramic video, and a third buffer length of the second video data corresponding to the user perspective. 2.
  • the current buffer length and the second target buffer length, the user's perspective includes the perspective of the video viewing user of the panoramic video, the coverage of the target perspective is greater than the user's perspective, and the video quality of the first video data is lower than the second video data.
  • Example 18 provides the device of Example 17.
  • the above video transmission device may also include:
  • the request result return unit is configured to determine the request result corresponding to the video data download request based on the target video sub-data and/or the user video sub-data, and return the request result to the client;
  • the target video data downloaded by the client includes target video sub-data and/or user video sub-data.
  • the target video data transmission module may also include:
  • the video sub-data combining unit is configured to, after the client downloads the target video data transmitted by the server according to the received request result, combine the downloaded target video sub-data that overlaps in spatial position with the user video sub-data, and The combined target video sub-data is updated based on the combination result.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本公开实施例公开了一种视频下载、传输方法、装置、终端设备、服务器及介质。该视频下载方法,可包括:获取缓冲长度,该缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度;根据缓冲长度生成用于对存储在服务器中的全景视频中与第一视频数据或第二视频数据中的至少一个关联的目标视频数据进行下载的视频数据下载请求;将视频数据下载请求发送给服务器,并根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。

Description

视频下载、传输方法、装置、终端设备、服务器及介质
本申请要求在2022年04月12日提交中国专利局、申请号为202210383767.1的中国专利申请的优先权,以上申请的全部内容通过引用结合在本申请中。
技术领域
本公开实施例涉及全景视频技术领域,例如涉及一种视频下载、传输方法、装置、终端设备、服务器及介质。
背景技术
在全景视频的观看场景中,为了让用户能够观看到任意视角的视频数据,用户设备通常会从存储有全景视频的服务器中下载整个全景视频(360*180度)。但是,全景视频中只有用户视角内的视频数据会被用户观看到。
发明内容
本公开实施例提供了一种视频下载、传输方法、装置、终端设备、服务器及介质。
第一方面,本公开实施例提供了一种视频下载方法,可应用于客户端,该方法可以包括:获取缓冲长度,其中,缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、以及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据;
根据缓冲长度生成视频数据下载请求,其中,视频数据下载请求是用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据或第二视频数据中的至少一个关联;
将视频数据下载请求发送给服务器,根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
第二方面,本公开实施例还提供了一种视频传输方法,可应用于存储有全景视频的服务器,该方法可以包括:
接收客户端发送的视频数据下载请求,其中,视频数据下载请求包括根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据或第二视频数据中的至少一个关联;
将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据;
其中,缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
第三方面,本公开实施例还提供了一种视频下载装置,可配置于客户端,该装置可以包括:
缓冲长度获取模块,设置为获取缓冲长度,其中缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据;
下载请求生成模块,设置为根据缓冲长度生成视频数据下载请求,其中视频数据下载请求包括用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据或第二视频数据中的至少一个关联;
目标视频数据下载模块,设置为将视频数据下载请求发送给服务器,并根据接收的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
第四方面,本公开实施例还提供了一种视频传输装置,可配置于存储有全景视频的服务器,该装置可以包括:
下载请求接收模块,设置为接收客户端发送的视频数据下载请求,视频数据下载请求包括根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据或第二视频数据中的至少一个关联;
目标视频数据传输模块,设置为将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据;
其中,缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
第五方面,本公开实施例还提供了一种终端设备,可以包括:
一个或多个处理器;
存储器,设置为存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本公开任意实施例所提供的视频下载方法。
第六方面,本公开实施例还提供了一种服务器,可以包括:
一个或多个处理器;
存储器,设置为存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本公开任意实施例所提供的视频传输方法。
第七方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本公开任意实施例所提供的视频下载方法或是视频传输方法。
附图说明
贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1是本公开实施例的应用场景的示例性说明中的通过全景视频中的某帧视频画面展示出的基础层和增强层的示意图;
图2是本公开实施例一中的一种视频下载方法的流程图;
图3A是本公开实施例一中的一种视频下载方法中基础层的下载示意图;
图3B是本公开实施例一中的一种视频下载方法中增强层的下载示意图;
图4是本公开实施例二中的一种视频下载方法的流程图;
图5是本公开实施例二中的一种视频下载方法中第一示例的流程图;
图6是本公开实施例二中的一种视频下载方法中第二示例的流程图;
图7是本公开实施例三中的一种视频传输方法的流程图;
图8是本公开实施例四中的一种视频下载装置的结构框图;
图9是本公开实施例五中的一种视频传输装置的结构框图;
图10是本公开实施例六中的一种电子设备的结构示意图。
具体实施方式
在全景视频的观看场景中,为了让用户能够观看到任意视角的视频数据, 用户设备通常会从存储有全景视频的服务器中下载整个全景视频(360*180度)。但是,全景视频中只有用户视角内的视频数据会被用户观看到,这造成了用户视角外的视频数据的下载浪费,同时限制了用户视角内的视频数据的视频质量。
为此,一种解决方式是用户设备只下载用户视角内的视频数据,由此可以最大化地利用带宽资源来增强用户视角内的视频数据的视频质量。但用户视角发生突变时,其会观看到未下载的视频数据,这就出现了视频数据缺失的情况。
因此,可以讨论的是,如何既能够让用户观看到高视频质量的视频数据,并且还不会出现视频数据缺失的情况,从而在最大程度上提升用户观看体验。
针对上述情况,本公开实施例提供了一种视频下载、传输方法、装置、终端设备、服务器及介质。
下面将参照附图描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个实施例,不应将每个编号的实施例仅视为 一个实施例。
在介绍本公开实施例之前,先对本公开实施例的应用场景进行示例性说明:全景视频可以理解为360*180度的视频,例如可以是原始全景视频(即对真实现实进行拍摄后得到的未经处理的全景视频)、虚拟现实(Virtual Reality,VR)全景视频、增强现实(Augmented Reality,AR)全景视频以及混合现实(Mixed Reality,MR)全景视频等。视频观看用户可以通过终端设备观看全景视频,该终端设备可以是头戴式显示设备、手机、平板电脑和笔记本等。正如上文所述,为了既能让视频观看用户观看到高视频质量的视频数据,又不会出现视频数据缺失的情况,本公开实施例提出了分层(即划分为基础层(base tier,BT)以及增强层(enhancement tier,ET)这两层)传输/下载全景视频的实施例。
例如,基础层中的第一视频数据是全景视频中清晰度较低(Low)并且对应于覆盖范围大于用户视角的目标视角的视频数据,这是为了兜底而设置的,避免在视频观看用户的用户视角发生突变时,出现视频数据缺失的情况,而且其并不会占用过多的网络带宽。增强层中的第二视频数据是全景视频中清晰度较高(High)并且对应于用户视角的视频数据,该用户视角可以通过视角方向(如前方、后方、上方、下方、左方和右方等)、视角范围(即上下和左右的从多少度到多少度的范围)等多种方式进行表示。示例性的,如图1所示,这是全景视频中的某帧视频画面,以目标视角是完整视角(即360*180度)为例,与整幅视频画面对应的视频数据可以理解为第一视频数据,与矩形框框出(即用户视角对应)的视频画面对应的视频数据可以理解为第二视频数据。
实施例一
图2是本公开实施例一中提供的一种视频下载方法的流程图。本实施例可以下载全景视频,也可以下载到既能够保证用户观看到的视频数据的视频质量,并且还不会出现视频数据缺失的全景视频。该方法可以由本公开实施例提供的视频下载装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在终端设备上。
参见图2,本公开实施例的方法包括如下步骤:
S110、获取缓冲长度。其中,缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、以及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
其中,用户视角可以是视频观看用户在观看全景视频时的视角,其可以是实时采集到的视频观看用户在当前时刻的视角,也可以是预测得到的视频观看用户在某未来时间点/未来时间段时的视角,在此未做具体限定。目标视角可以是覆盖范围大于用户视角的视角,即其可以包裹住整个用户视角并且包含用户视角未包含的视角。实际应用中,例如,为了杜绝出现视频数据缺失的情况,目标视角可以是完整视角。第一视频数据可以是全景视频中与目标视角对应的视频数据,第一当前缓冲长度可以是在当前时刻处于缓冲状态(即已缓冲且还未播放)的第一视频数据的实际长度;第一目标缓冲长度可以是处于缓冲状态的第一视频数据的目标长度,其是为了避免第一视频数据的播放过程出现卡顿现象而确定的长度。相应的,第二视频数据可以是全景视频中与用户视角对应的视频质量高于第一视频数据的视频数据,第二当前缓冲长度可以是当前时刻处于缓冲状态的第二视频数据的实际长度;第二目标缓冲长度可以是处于缓冲状态的第二视频数据的目标长度,其是为了避免第二视频数据的播放过程出现卡顿现象而确定的长度。获取缓冲长度,该缓冲长度包括第一当前缓冲长度、第一目标缓冲长度、第二当前缓冲长度和第二目标缓冲长度中的至少一个。
在实际应用中,例如,当用户视角是预测得到的用户在某未来时间段内的视角时,该未来时间段的时长(即用户视角的预测时间间隔)可以是与第二目标缓冲长度有关的时长,例如可以是第二目标缓冲长度决定了预测时间间隔,如第二目标缓冲长度是3秒(s),预测时间间隔也可以是3s,那么用户视角可以是视频观看用户在未预测时间段内的前3s(即未来时间段)内的视角。需要说明的是,用户视角预测的准确性通常会随着预测时间间隔的增加而下降,因此第二目标缓冲长度不能设置的过长;但是,反过来说,第二目标缓冲长度也不能设置的过短,因为在网络带宽不佳的情况下,其容易出现已缓冲的第二视频数据全部被播放完毕而导致高视频质量的第二视频数据缺失的情况。在此基础上,再例如,当目标视角是完整视角时,由于其无需通过视角预测得到,为了防止视频卡顿,可以设置一个较长的第一目标缓冲长度,即第一目标缓冲长度可以大于第二目标缓冲长度。在网络带宽较佳的情况下,第一视频数据的下载速度是可以得到保证的,因此第一目标缓冲长度也可以与第二目标缓冲长度相等,在此未做具体限定。
S120、根据缓冲长度生成视频数据下载请求。其中,视频数据下载请求是用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联。
其中,根据缓冲长度生成视频数据下载请求,即根据缓冲长度确定对全景视频中什么样的视频数据(这里称为目标视频数据)进行下载,然后生成相应的视频数据下载请求,该目标视频数据可以包括与第一视频数据和/或第二视频数据关联的视频数据,比如属于第一视频数据和/或第二视频数据的视频数据、根据第一视频数据和/或第二视频数据确定的视频数据等,在此未做具体限定。实际应用中,例如,当目标视频数据既与第一视频数据关联,又与第二视频数据关联时,视频数据下载请求可以理解为并行下载基础层和增强层的请求。
S130、将视频数据下载请求发送给服务器,并根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
其中,由于全景视频存储于服务器中,因此可以将视频数据下载请求发送给服务器,然后在接收到服务器针对于该视频数据下载请求返回的请求结果时,可以根据该请求结果下载目标视频数据,如请求结果是目标视频数据在服务器中的存储地址时,可以根据该存储地址从该服务器中下载目标视频数据;再如请求结果是目标视频数据本身时,可以直接通过接收该目标视频数据来达到下载该目标视频数据下载的目的。
需要说明的是,上述实施例,通过缓冲长度调度下载待缓冲的第一视频数据和第二视频数据,由此既可以下载到与用户视角对应的高视频质量的第二视频数据,又可以下载到与覆盖范围大于用户视角的目标视角对应的第一视频数据,换言之,这可以最大化地利用带宽资源来增强第二视频数据的视频质量,而且在预测得到的用户视角存在偏差或是视频观看用户突然转变视角时,可以让视频观看用户观看到第一视频数据,以避免出现视频数据缺失的情况,从而在最大程度上提升了视频观看用户对于全景视频的观看体验。
本公开实施例,通过获取缓冲长度,并根据缓冲长度生成用于对存储在服务器中的全景视频中的目标视频数据进行下载的视频数据下载请求,该目标视频数据可以包括与缓冲长度对应的第一视频数据和/或第二视频数据关联的视频数据;进一步,将视频数据下载请求发送给服务器,并根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。上述实施例,提升了视频观看用户对于全景视频的观看体验。
在一实施例中,在实施例一的基础上,上述视频下载方法,还可以包括:获取历史带宽信息和历史带宽预测精度,根据历史带宽信息和历史带宽预测精度预测在下载目标视频数据时的网络带宽,根据网络带宽确定第一目标缓冲长度;和/或,用户视角是预测出的视频观看用户在观看待缓冲的第二视频数据时 的视角,获取历史视角预测精度,并根据历史视角预测精度和网络带宽确定第二目标缓冲长度。
其中,历史带宽信息可以是与在当前时刻之前的历史时刻的网络带宽有关的信息,如历史带宽的数值和/或波动性;历史带宽预测精度可以是在历史时刻对相对于该历史时刻的未来时间段内的网络带宽的预测精度。根据这历史带宽信息以及历史带宽预测精度预测在下载目标视频数据时的网络带宽,由此可以确定届时以怎样的网速下载目标视频数据,进而确定第一目标缓冲长度,如较佳的网络带宽可以保证目标视频数据的下载速度,因此在网络带宽较佳时,可以设置较短的第一目标缓冲长度,这是因为可及时下载的目标视频数据不会造成视频卡顿现象;反之,可以设置较长的第一目标缓冲长度。上述实施例,通过预测出的在下载目标视频数据时的网络带宽确定第一目标缓冲长度,由此下载得到的目标视频数据可以避免出现视频卡顿现象。
当用户视角是预测得到的视频观看用户在观看待缓冲的第二视频数据时的视角时,可以获取用于表示在历史时刻对相对于该历史时刻的未来时间段内的用户视角的预测精度的历史视角预测精度,进而根据历史视角预测精度和网络带宽确定第二目标缓冲长度,如在较低的历史视角预测精度和较佳的网络带宽的情况下可以设置较短的第二目标缓冲长度,这样既可降低用户视角预测不准的风险,又不会出现视频卡顿现象;反之,可以设置较长的第二目标缓冲长度。上述实施例,通过历史视角预测精度以及预测出的在下载目标视频数据时的网络带宽定时和/或实时确定第二目标缓冲长度,由此下载得到的目标视频数据既可以让视频观看用户观看到高视频质量的视频数据,又可以避免出现高视频质量的视频数据缺失的情况。
在一实施例中,在实施例一的基础上,根据缓冲长度生成视频数据下载请求,可以包括:预测在下载目标视频数据时的网络带宽;根据缓冲长度以及网络带宽生成视频数据下载请求,该视频数据下载请求表示出的目标视频数据的目标码率与网络带宽有关。其中,第一视频数据和/或第二视频数据可以对应有至少两个候选码率,这意味着与第一视频数据和/或第二视频数据关联的目标视频数据也可以对应有至少两个候选码率。由于不同候选码率的目标视频数据需要得到不同网络带宽的支持方能正常下载,如高码率的目标视频数据需要较佳的网络带宽的支持,因此根据缓冲长度和网络带宽共同生成的视频数据下载请求,既可表示出待下载的目标视频数据是与第一视频数据还是第二视频数据相关联,又可表示出需下载哪个候选码率(即目标码率)的目标视频数据。
在一实施例中,在实施例一的基础上,在配置有客户端的终端设备内设置有缓冲区,缓冲区包括用于缓冲下载得到的第一视频数据的第一缓冲区以及用于缓冲下载得到的第二视频数据的第二缓冲区;在下载目标视频数据之后,上述视频下载方法,还可以包括:将目标视频数据缓冲到与目标视频数据关联的缓冲区内;在播放全景视频中的当前视频数据时,如果第二缓冲区中缓冲有与当前视频数据对应的第二视频数据,则从第二缓冲区中获取并播放对应的第二视频数据;如果第二缓冲区中未缓冲有与当前视频数据对应的第二视频数据,则确定第一缓冲区中是否缓冲有与当前视频数据相对应的第一视频数据;如果是,则从第一缓冲区中获取并播放与当前视频数据相对应的第一视频数据。
其中,当目标视频数据与第一视频数据关联时,可以将其缓冲到第一缓冲区中;当目标视频数据与第二视频数据关联时,可以将其缓冲到第二缓冲区中。这样一来,后续在播放该目标视频数据时,可以直接从存储有该目标视频数据的缓冲区中获取到该目标视频数据并进行播放。在此基础上,针对于全景视频中的需要在当前时刻或是当前时段进行播放的当前视频数据(其可能是先前已经下载得到的目标视频数据,也可能是还未下载得到的目标视频数据),为了让视频观看用户观看到高视频质量的视频数据,可以先确定第二缓冲区中是否缓冲有与当前视频数据对应的第二视频数据(即视频内容实质相同的第二视频数据),如果是,则从第二缓冲区中获取到该对应的第二视频数据并进行播放;否则,为了避免出现视频卡顿现象,可以再确定在第一缓冲区中是否缓冲有与当前视频数据对应的第一视频数据,若是,则从第一缓冲区中获取到该对应的第一视频数据并进行播放;在此基础上,否则,这说明当前视频数据是还未下载得到的目标视频数据,这时可能出现视频卡顿现象。上述实施例,可以在最大程度上先保证视频观看用户观看到高视频质量的视频数据,然后避免出现视频卡顿现象,由此提升了视频观看用户对于全景视频的观看体验。
为了从整体上更好地理解上述实施例,下面结合示例对其进行示例性的说明。示例性的,参见图3A,在全景视频中包括依次下载的N帧视频画面,与下载得到的某帧视频画面对应的第一视频数据被缓冲到第一缓冲区中,其中的实线斜线表示在当前时刻处于缓冲状态的第一视频数据,虚线斜线表示当前正在缓冲的第一视频数据,第一缓冲区的长度可以理解为第一目标缓冲长度。参见图3B,这里以全景视频中的第M帧视频画面为例,其展示出了视频画面M中与不同的用户视角对应的视频画面,每个用户视角下的视频画面对应有多个候选码率。第二缓冲区与第一缓冲区类似,在此不再赘述。因此,在下载第二视 频数据时,可以根据预测得到的用户视角和网络带宽确定对与什么用户视角下的什么候选码率的视频画面对应的第二视频数据进行下载。
实施例二
图4是本公开实施例二中提供的一种视频下载方法的流程图。本实施例以上述实施例中各个实施例为基础进行调整。本实施例中,在一示例中,缓冲长度包括第一当前缓冲长度和第一目标缓冲长度;根据缓冲长度生成视频数据下载请求,可以包括:如果第一当前缓冲长度小于第一目标缓冲长度,则生成用于下载属于第一视频数据的目标视频数据的视频数据下载请求。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
相应的,如图4所示,本实施例的方法可以包括如下步骤:
S210、获取缓冲长度。其中,缓冲长度包括全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度。
S220、如果第一当前缓冲长度小于第一目标缓冲长度,则生成用于对属于第一视频数据的目标视频数据进行下载的视频数据下载请求。其中,目标视频数据是存储在服务器中的全景视频中的视频数据。
其中,由于第一当前缓冲长度可以是在当前时刻处于缓冲状态的第一视频数据的实际长度,而第一目标缓冲长度可以是处于缓冲状态的第一视频数据的目标长度,即可以避免第一视频数据的播放过程出现卡顿现象的长度,因此当第一当前缓冲长度小于第一目标缓冲长度时,这说明此时有可能出现视频卡顿现象,相对于视频质量,视频卡顿更会影响到视频观看用户的观看体验。因此,当第一当前缓冲长度小于第一目标缓冲长度时,可以生成用于对属于第一视频数据的目标视频数据进行下载的视频数据下载请求,该目标视频数据可以理解为在当前时刻存在下载需求(即与当前已经缓冲的第一视频数据在播放时间上相邻并且还未缓冲)的第一视频数据,以便通过下载足够长度的第一视频数据来保证全景视频的流畅播放。
S230、将视频数据下载请求发送给服务器,并根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
本公开实施例,通过判断第一当前缓冲长度是否小于第一目标缓冲长度来确定当前处于缓冲状态的第一视频数据是否可保证全景视频的流畅播放,如果否,则可以生成用于对属于第一视频数据的目标视频数据进行下载的视频数据下载请求,其与后续步骤相互配合,由此可以通过下载足够长度的第一视频数据来保证全景视频的流畅播放。
在一实施例中,在实施例二的基础上,缓冲长度还可包括全景视频中与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据,在如果第一当前缓冲长度小于第一目标缓冲长度之后,上述视频下载方法,还可以包括:如果第一当前缓冲长度大于或是等于第一目标缓冲长度,则确定第二当前缓冲长度是否小于第二目标缓冲长度;如果第二当前缓冲长度小于第二目标缓冲长度,则生成用于对属于第二视频数据的目标视频数据进行下载的视频数据下载请求。
其中,当第一当前缓冲长度大于或是等于第一目标缓冲长度时,这说明此时可以保证全景视频的流畅播放。那么,为了提升视频观看用户的观看体验,可以再次判断第二当前缓冲长度是否小于第二目标缓冲长度,如果是,这说明此时无法保证视频观看用户可观看到高视频质量的视频数据,那么生成用于对属于第二视频数据的目标视频数据进行下载的视频数据下载请求,其中目标视频数据可以理解为在当前时刻存在下载需求(即与当前已经缓冲的第二视频数据在播放时间上相邻并且还未缓冲)的第二视频数据,其与后续步骤相互配合,由此通过下载足够长度的第二视频数据来保证视频观看用户可观看到高视频质量的视频数据。
在此基础上,在一实施例中,与当前缓冲的第二视频数据对应的用户视角是预测出的视频观看用户在当前缓冲的第二视频数据的播放时间时的视角,则在确定第二当前缓冲长度是否小于第二目标缓冲长度后,上述视频下载方法,还可以包括:如果第二当前缓冲长度大于或是等于第二目标缓冲长度,则再次预测视频观看用户在播放时间时的用户视角,确定全景视频中与再次预测的用户视角和播放时间对应并且与第二视频数据的视频质量相同的第三视频数据;如果第三视频数据中包括除了当前缓冲的第二视频数据之外的第四视频数据,则生成用于下载基于第四视频数据得到的目标视频数据的视频数据下载请求;如果第三视频数据中未包括第四视频数据,则确定全景视频中与当前缓冲的第二视频数据视频质量相同并且在空间位置上相邻的第五视频数据,生成用于下载基于第五视频数据得到的目标视频数据的视频数据下载请求。
其中,当第二当前缓冲长度大于或等于第二目标缓冲长度时,这说明当前缓冲(即在当前时刻下已缓冲完成且还未播放)的第二视频数据基本可以保证视频观看用户观看到高视频质量的视频数据。但是,考虑到与当前缓冲的第二视频数据对应的用户视角是预测得到的视频观看用户在该当前缓冲的第二视频 数据的播放时间时的视角,其可能存在预测有误的情况,因此为了提升视频观看用户的观看体验,可以再次预测视频观看用户在该播放时间时的用户视角,并确定第三视频数据,该第三视频数据可以是全景视频中与播放时间和再次预测的用户视角对应的并且与第二视频数据的视频质量相同的视频数据,这样的第三视频数据与第二视频数据关联。
如果第三视频数据中包括除当前缓冲的第二视频数据之外的第四视频数据,这说明先前预测的播放时间上的用户视角存在偏差,该第四视频数据正是先前未预测出的那部分用户视角对应的视频数据,因此可以生成用于下载基于第四视频数据得到的目标视频数据的视频数据下载请求,其与后续步骤相互配合,由此可以通过再次预测出的更加准确的用户视角来在最大程度上保证视频观看用户在播放时间时能够观看到高视频质量的视频数据。上述目标视频数据可以是第四视频数据,在第四视频数据的基础上加上以其为中心向外扩展出的当前缓冲的第二视频数据之外的视频数据,等等,在此未做具体限定。
如果第三视频数据中未包括第四视频数据,这说明先前预测的播放时间上的用户视角是准确的。在此基础上,考虑到视频观看用户在播放时间上有可能突然改变自身的用户视角,为了具有一定的容错性(即在各种情况下均让视频观看用户能够观看到高视频质量的视频数据),可以确定全景视频中的与当前缓冲的第二视频数据视频质量相同并且在空间位置上相邻的第五视频数据,即第五视频数据可以是第二视频数据外围的并且具有较好的视频质量的视频数据,然后生成用于下载基于第五视频数据得到的目标视频数据的视频数据下载请求,其与后续步骤相配合,由此可以通过下载超出用户视角的目标视频数据来提高视频观看用户观看到高视频质量的视频数据的鲁棒性。上述目标视频数据可以是第五视频数据,在第五视频数据的基础上加上以其为中心向外扩展出的视频数据,等等,在此未做具体限定。
为了从整体上更好地理解上述实施例中的各种判断分支,下面结合示例对其进行示例性的说明。示例性的,如图5所示,判断第一当前缓冲长度是否小于第一目标缓冲长度,如果是,则生成用于对属于第一视频数据的目标视频数据进行下载的视频数据下载请求(结束),否则判断第二当前缓冲长度是否小于第二目标缓冲长度,然后根据判断结果执行下述步骤;如果是,则生成用于对属于第二视频数据的目标视频数据进行下载的视频数据下载请求(结束),否则确定第三视频数据,并继续执行下述步骤;判断第三视频数据中是否包括第四视频数据,如果是,则生成用于下载基于该第四视频数据得到的目标视频数据 的视频数据下载请求(结束),否则,确定第五视频数据,并生成用于下载基于第五视频数据得到的目标视频数据的视频数据下载请求(结束)。各种判断分支相互配合,由此既可以避免出现视频卡顿的情况,又可以在最大程度上保证视频观看用户在播放时间时可以观看到高视频质量的视频数据。
为了从整体上更好地理解上述各个实施例,下面结合示例对其进行示例性的说明。示例性的,如图6所示,通过目标缓冲长度控制模块接收用户视角记录/预测模块发送的历史视角预测精度、及网络带宽测量/预测模块发送的网络带宽,进而确定第一目标缓冲长度和第二目标缓冲长度。其中,网络带宽可以是网络带宽测量/预测模块根据历史带宽信息和历史带宽预测精度预测到的,历史带宽信息和历史带宽预测精度可以是通过缓冲区实时/定时发送的网络带宽确定的,历史带宽信息可以通过已经发生的网络带宽波动性来表示。历史视角预测精度可以是用户视角记录/预测模块根据用户视角获取模块实时/定时发送的用户视角确定的,而且还可以由此进行未来时间段的用户视角的预测。下载调度模块在接收到目标缓冲长度控制模块发送的第一目标缓冲长度和第二目标缓冲长度、以及缓冲区发送的第一当前缓冲长度和第二当前缓冲长度后,可以确定待下载的目标视频数据是与第一视频数据还是第二视频数据关联(即下载调度结果),并将下载调度结果发送给视频数据下载请求模块,以使其根据下载调度结果、用户视角记录/预测模块预测出的用户视角、以及网络带宽测量/预测模块预测出的网络带宽生成视频数据下载请求,将生成结果发送给服务器,由此来从服务器中请求(即下载)到与第一视频数据和/或第二视频数据关联的、对应于与预测出的网络带宽匹配的目标码率的、及对应于预测出的用户视角的目标视频数据。将下载到的目标视频数据缓冲到缓冲区中,以便根据用户视角获取模块获取到的当前时刻下的用户视角从缓冲区中获取到当前视频数据,并进行视频渲染/解码/播放等操作,由此实现全景视频的播放。
实施例三
图7是本公开实施例三中提供的一种视频传输方法的流程图。本实施例可以传输全景视频,也可以传输既能够保证用户观看到的视频数据的视频质量,并且不会出现视频数据缺失的全景视频。该方法可以由本公开实施例提供的视频传输装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在服务器上,该服务器上存储有全景视频。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
相应的,如图7所示,本实施例的方法可以包括如下步骤:
S310、接收客户端发送的视频数据下载请求。其中,视频数据下载请求是根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联,缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角是全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
S320、将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据。
在实际应用中,在一实施例中,当目标视角是完整视角时,对于与第一视频数据关联的目标视频数据,可以将该帧视频画面的全部视频数据作为目标视频数据,并将该目标视频数据作为一个整体进行编码,然后将编码结果进行传输;对于与第二视频数据关联的目标视频数据,还可以将该帧视频画面划分为几大块,对该目标视频数据所在的那块的视频数据进行编码,然后将编码结果进行传输。即,与第一视频数据关联的目标视频数据以及与第二视频数据关联的目标视频数据可以分别进行独立编码;二者也可以进行依赖编码,这在后文介绍。
本公开实施例,接收客户端发送的视频数据下载请求,该视频数据下载请求可以是根据缓冲长度生成的用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,该目标视频数据可以包括与缓冲长度对应的第一视频数据和/或第二视频数据关联的视频数据;然后将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据。上述实施例,可以提升视频观看用户对于全景视频的观看体验。
在一实施例中,在实施例三的基础上,上述视频传输方法,还可包括:针对于全景视频中未进行编码的原始视频数据,将原始视频数据进行空间切割,得到原始视频子数据;针对于各原始视频子数据中与目标视角对应的目标视频子数据、及与用户视角对应的用户视频子数据,基于第一预设码率对目标视频子数据进行编码并更新,并且采用可分级视频编码的方式,基于第二预设码率对用户视频子数据进行编码并更新;将与视频数据下载请求对应的请求结果返回给客户端,可包括:根据目标视频子数据和/或用户视频子数据确定与视频数据下载请求对应的请求结果,将请求结果返回给客户端;客户端下载的目标视频数据包括目标视频子数据和/或用户视频子数据,在以使客户端根据接收到的 请求结果下载服务器传输的目标视频数据之后,上述视频传输方法,还可以包括:将下载得到的在空间位置上重叠的目标视频子数据和用户视频子数据进行组合,并基于组合结果更新进行组合的目标视频子数据。
其中,原始视频数据可以是全景视频中某帧视频画面的未进行编码的视频数据,将原始视频数据进行空间切割,得到原始视频子数据。示例性的,参见图1,其中的每小块对应的视频数据即为一个原始视频子数据。针对于各原始视频子数据中与目标视角对应的至少一个目标视频子数据,可以基于第一预设码率分别对每个目标视频子数据进行编码,然后根据编码结果分别更新各自的目标视频子数据,并将它们分别传输给客户端。针对于各原始视频子数据中与用户视角对应的至少一个用户视频子数据,可以采用可分级视频编码(Scalable Video Coding,svc)的方式,基于第二预设码率分别对各用户视频子数据进行编码,然后根据编码结果分别更新各自的用户视频子数据,并将它们分别传输给客户端。这样一来,针对于空间位置上重叠(即对应于同一原始视频子数据)的目标视频子数据和用户视频子数据,客户端可以将它们进行组合,由此得到对应于更高码率的目标视频子数据。示例性的,假设第一预设码率是100,并且第二预设码率是400,那么经组合后可以得到对应于500(100+400)的目标视频子数据。针对于对目标视频子数据和用户视频子数据分别进行独立编码和传输的方式,以基于100和500分别进行编码为例,100的用户视频子数据会被覆盖在500的目标视频子数据的下面,这就存在带宽浪费。相应的,上述实施例采用依赖编码的方式,服务器传输的目标视频子数据和用户视频子数据均可以被有效应用,由此提高了带宽利用率。
实施例四
图8为本公开实施例四提供的视频下载装置的结构框图,该装置用于执行上述任意实施例所提供的视频下载方法。该装置与上述各实施例中的视频下载方法属于同一个构思,在视频下载装置的实施例中未详尽描述的细节内容,可参考上述视频下载方法的实施例。参见图8,该装置可配置于客户端,可包括:缓冲长度获取模块410、下载请求生成模块420以及目标视频数据下载模块430。其中,
缓冲长度获取模块410,设置为获取缓冲长度,其中,缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视 角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据;
下载请求生成模块420,设置为根据缓冲长度生成视频数据下载请求,其中,视频数据下载请求包括用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
目标视频数据下载模块430,设置为将视频数据下载请求发送给服务器,并根据接收的服务器针对视频数据下载请求返回的请求结果,下载目标视频数据。
本公开实施例四提供的视频下载装置,通过缓冲长度获取模块和下载请求生成模块相互配合,获取缓冲长度,根据缓冲长度生成用于对存储在服务器中的全景视频中的目标视频数据进行下载的视频数据下载请求,该目标视频数据可以包括与缓冲长度对应的第一视频数据和/或第二视频数据关联的视频数据;进一步,通过目标视频数据下载模块将视频数据下载请求发送给服务器,根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。上述装置,提升了视频观看用户对于全景视频的观看体验。
本公开实施例所提供的视频下载装置可执行本公开任意实施例所提供的视频下载方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述视频下载装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
实施例五
图9为本公开实施例五所提供的视频传输装置的结构框图,该装置用于执行上述任意实施例所提供的视频传输方法。该装置与上述各实施例的视频传输方法属于同一个构思,在视频传输装置的实施例中未详尽描述的细节内容,可以参考上述视频传输方法的实施例。参见图9,该装置可配置于存储有全景视频的服务器,可包括:下载请求接收模块510和目标视频数据传输模块520。
其中,下载请求接收模块510,设置为接收客户端发送的视频数据下载请求,视频数据下载请求包括根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
目标视频数据传输模块520,设置为将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据;
其中,缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的 第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
本公开实施例五提供的视频传输装置,通过下载请求接收模块接收客户端发送的视频数据下载请求,该视频数据下载请求可以是根据缓冲长度生成的用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,该目标视频数据可以包括与缓冲长度对应的第一视频数据和/或第二视频数据关联的视频数据;然后通过目标视频数据传输模块将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据。上述装置,提升了视频观看用户对于全景视频的观看体验。
本公开实施例所提供的视频传输装置可执行本公开任意实施例所提供的视频传输方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述视频传输装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
实施例六
下面参考图10,其示出了适于用来实现本公开实施例的电子设备(例如图10中的终端设备或服务器)500的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,PDA)、平板电脑(PAD)、便携式多媒体播放器(Portable Media Player,PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字电视(Television,TV)、台式计算机等等的固定终端。图10示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图10所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(Read-Only Memory,ROM)502中的程序或者从存储装置508加载到随机访问存储器(Random Access Memory,RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(Input/Output,I/O)接口505也连接至 总线504。
通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(Liquid Crystal Display,LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图10中示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
实施例七
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介 质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(Local Area Network,LAN),广域网(Wide Area Network,WAN),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备(例如终端设备)执行时,使得该电子设备:
获取缓冲长度,其中,缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、以及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据;
根据缓冲长度生成视频数据下载请求,其中,视频数据下载请求是用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
将视频数据下载请求发送给服务器,根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备(例如存储有全景视频的服务器)执行时,使得该电子设备:
接收客户端发送的视频数据下载请求,其中,视频数据下载请求包括根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据;
其中,缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的 第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
存储介质可以是非暂态(non-transitory)存储介质。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,目标视频数据下载模块还可以被描述为“将视频数据下载请求发送给服务器,并根据接收的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据的模块”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用标准产品(Application Specific Standard  Product,ASSP)、片上系统(System on Chip,SOC)、复杂可编程逻辑设备(Complex Programmable Logic Device,CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)或快闪存储器、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,【示例一】提供了一种视频下载方法,该方法应用于客户端,可以包括:
获取缓冲长度,其中,缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、以及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据;
根据缓冲长度生成视频数据下载请求,其中,视频数据下载请求是用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
将视频数据下载请求发送给服务器,根据接收到的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
根据本公开的一个或是多个实施例,【示例二】提供了示例一的方法,缓冲长度包括第一当前缓冲长度和第一目标缓冲长度;
根据缓冲长度生成视频数据下载请求,可以包括:
如果第一当前缓冲长度小于第一目标缓冲长度,则生成用于下载属于第一视频数据的目标视频数据的视频数据下载请求。
根据本公开的一个或是多个实施例,【示例三】提供了示例二的方法,缓冲长度还包括第二当前缓冲长度和第二目标缓冲长度;
根据缓冲长度生成视频数据下载请求,还可以包括:
如果第一当前缓冲长度大于或是等于第一目标缓冲长度,则确定第二当前 缓冲长度是否小于第二目标缓冲长度;
如果第二当前缓冲长度小于第二目标缓冲长度,则生成用于下载属于第二视频数据的目标视频数据的视频数据下载请求。
根据本公开的一个或多个实施例,【示例四】提供了示例三的方法,与当前缓冲的第二视频数据对应的用户视角是预测出的视频观看用户在当前缓冲的第二视频数据的播放时间时的视角;
在确定第二当前缓冲长度是否小于第二目标缓冲长度之后之后,上述视频下载方法,还可以包括:
如果第二当前缓冲长度大于或是等于第二目标缓冲长度,则再次预测视频观看用户在播放时间时的用户视角,确定全景视频中与再次预测的用户视角和播放时间对应并且与第二视频数据的视频质量相同的第三视频数据;
如果第三视频数据中包括除当前缓冲的第二视频数据之外的第四视频数据,则生成用于下载基于第四视频数据得到的目标视频数据的视频数据下载请求;
如果第三视频数据中未包括第四视频数据,则确定全景视频中的与当前缓冲的第二视频数据视频质量相同并且在空间位置上相邻的第五视频数据,生成用于下载基于第五视频数据得到的目标视频数据的视频数据下载请求。
根据本公开的一个或是多个实施例,【示例五】提供了示例一的方法,上述视频下载方法,还可以包括:
获取历史带宽信息和历史带宽预测精度,并根据历史带宽信息和历史带宽预测精度预测在下载目标视频数据时的网络带宽,根据网络带宽确定第一目标缓冲长度;
和/或,
用户视角是预测出的视频观看用户在观看待缓冲的第二视频数据时的视角,获取历史视角预测精度,并根据历史视角预测精度以及网络带宽确定第二目标缓冲长度。
根据本公开的一个或是多个实施例,【示例六】提供了示例一的方法,根据缓冲长度生成视频数据下载请求,可以包括:
预测在下载目标视频数据时的网络带宽;
根据缓冲长度以及网络带宽生成视频数据下载请求,其中,视频数据下载请求表示出的目标视频数据的目标码率与网络带宽有关。
根据本公开的一个或多个实施例,【示例七】提供了示例一的方法,在配置 有客户端的终端设备内设置有缓冲区,缓冲区包括用于缓冲下载得到的第一视频数据的第一缓冲区以及用于缓冲下载得到的第二视频数据的第二缓冲区;
在下载目标视频数据之后,上述视频下载方法,还可以包括:
将目标视频数据缓冲到与目标视频数据关联的缓冲区内;
在播放全景视频中的当前视频数据时,若第二缓冲区中缓冲有与当前视频数据对应的第二视频数据,则从第二缓冲区中获取并播放对应的第二视频数据;
如果第二缓冲区中未缓冲有与当前视频数据对应的第二视频数据,则确定第一缓冲区中是否缓冲有与当前视频数据相对应的第一视频数据;
如果是,则从第一缓冲区中获取并播放对应的第一视频数据。
根据本公开的一个或多个实施例,【示例八】提供了一种视频传输方法,该方法应用于存储有全景视频的服务器,可以包括:
接收客户端发送的视频数据下载请求,其中,视频数据下载请求包括根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据;
其中,缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
根据本公开的一个或是多个实施例,【示例九】提供了示例八的方法,上述视频传输方法,还可以包括:
针对于全景视频中未进行编码的原始视频数据,将原始视频数据进行空间切割,得到原始视频子数据;
针对于各原始视频子数据中与目标视角对应的目标视频子数据、及与用户视角对应的用户视频子数据,基于第一预设码率对目标视频子数据进行编码并更新,并且采用可分级视频编码的方式,基于第二预设码率对用户视频子数据进行编码并更新;
将与视频数据下载请求对应的请求结果返回给客户端,可以包括:
根据目标视频子数据和/或用户视频子数据确定与视频数据下载请求对应的请求结果,并将请求结果返回给客户端;
客户端下载的目标视频数据包括目标视频子数据和/或用户视频子数据,在以使客户端根据接收到的请求结果下载服务器传输的目标视频数据之后,上述视频传输方法,还可以包括:
将下载得到的在空间位置上重叠的目标视频子数据和用户视频子数据进行组合,并基于组合结果更新进行组合的目标视频子数据。
根据本公开的一个或多个实施例,【示例十】提供了一种视频下载装置,该装置配置于客户端,可以包括:
缓冲长度获取模块,设置为获取缓冲长度,其中缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据;
下载请求生成模块,设置为根据缓冲长度生成视频数据下载请求,其中视频数据下载请求包括用于对存储在服务器中的全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
目标视频数据下载模块,设置为将视频数据下载请求发送给服务器,并根据接收的服务器针对于视频数据下载请求返回的请求结果,下载目标视频数据。
根据本公开的一个或多个实施例,【示例十一】提供了示例十的装置,缓冲长度包括第一当前缓冲长度和第一目标缓冲长度;
下载请求生成模块,可以包括:
下载请求第一生成单元,设置为若第一当前缓冲长度小于第一目标缓冲长度,则生成用于下载属于第一视频数据的目标视频数据的视频数据下载请求。
根据本公开的一个或是多个实施例,【示例十二】提供了示例十一的装置,缓冲长度还包括第二当前缓冲长度和第二目标缓冲长度;
下载请求生成模块,还可以包括:
第二当前缓冲长度判断单元,设置为如果第一当前缓冲长度大于或等于第一目标缓冲长度,则确定第二当前缓冲长度是否小于第二目标缓冲长度;
下载请求第二生成单元,设置为若第二当前缓冲长度小于第二目标缓冲长度,则生成用于下载属于第二视频数据的目标视频数据的视频数据下载请求。
根据本公开的一个或多个实施例,【示例十三】提供了示例十二的装置,与当前缓冲的第二视频数据对应的用户视角是预测出的视频观看用户在当前缓冲的第二视频数据的播放时间时的视角;
下载请求生成模块,还可以包括:
第三视频数据确定单元,设置为在确定第二当前缓冲长度是否小于第二目标缓冲长度之后,如果第二当前缓冲长度大于或等于第二目标缓冲长度,则再次预测视频观看用户在播放时间时的用户视角,并确定全景视频中与再次预测的用户视角和播放时间对应并且与第二视频数据的视频质量相同的第三视频数据;
下载请求第三生成单元,设置为如果第三视频数据中包括除当前缓冲的第二视频数据之外的第四视频数据,则生成用于下载基于第四视频数据得到的目标视频数据的视频数据下载请求;
下载请求第四生成单元,设置为如果第三视频数据中未包括第四视频数据,则确定全景视频中的与当前缓冲的第二视频数据视频质量相同并且在空间位置上相邻的第五视频数据,生成用于下载基于第五视频数据得到的目标视频数据的视频数据下载请求。
根据本公开的一个或多个实施例,【示例十四】提供了示例十的装置,上述视频传输装置,还可以包括:
第一目标缓冲长度确定模块,设置为获取历史带宽信息和历史带宽预测精度,根据历史带宽信息和历史带宽预测精度预测在下载目标视频数据时的网络带宽,根据网络带宽确定第一目标缓冲长度;
和/或,
第二目标缓冲长度确定模块,设置为用户视角包括预测出的视频观看用户在观看待缓冲的第二视频数据时的视角,获取历史视角预测精度,并根据历史视角预测精度以及网络带宽确定第二目标缓冲长度。
根据本公开的一个或多个实施例,【示例十五】提供了示例十的装置,下载请求生成模块,可以包括:
网络带宽预测单元,设置为预测在下载目标视频数据时的网络带宽;
下载请求第五生成单元,设置为根据缓冲长度和网络带宽生成视频数据下载请求,其中,视频数据下载请求表示出的目标视频数据的目标码率与网络带宽有关。
根据本公开的一个或多个实施例,【示例十六】提供了示例十的装置,在配置有客户端的终端设备内设置有缓冲区,缓冲区包括用于缓冲下载得到的第一视频数据的第一缓冲区以及用于缓冲下载得到的第二视频数据的第二缓冲区;
上述装置,还可以包括:
目标视频数据缓冲模块,设置为在下载目标视频数据之后,将目标视频数据缓冲到与目标视频数据关联的缓冲区内;
第二视频数据播放模块,设置为在播放全景视频中的当前视频数据时,如果第二缓冲区中缓冲有与当前视频数据对应的第二视频数据,则从第二缓冲区中获取并播放对应的第二视频数据;
第一缓冲区判断模块,设置为如果第二缓冲区中未缓冲有与当前视频数据对应的第二视频数据,则确定第一缓冲区中是否缓冲有与当前视频数据相对应的第一视频数据;
第一视频数据播放模块,用于如果是,则从第一缓冲区中获取并且播放与当前视频数据相对应的第一视频数据。
根据本公开的一个或多个实施例,【示例十七】提供了一种视频传输装置,该装置配置于存储有全景视频的服务器,可以包括:
下载请求接收模块,设置为接收客户端发送的视频数据下载请求,视频数据下载请求包括根据缓冲长度生成的用于对全景视频中的目标视频数据进行下载的请求,目标视频数据与第一视频数据和/或第二视频数据关联;
目标视频数据传输模块,设置为将与视频数据下载请求对应的请求结果返回给客户端,以使客户端根据接收到的请求结果下载服务器传输的目标视频数据;
其中,缓冲长度包括下述中的至少一个:全景视频中的与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,用户视角包括全景视频的视频观看用户的视角,目标视角的覆盖范围大于用户视角,第一视频数据的视频质量低于第二视频数据。
根据本公开的一个或是多个实施例,【示例十八】提供了示例十七的装置,上述视频传输装置,还可以包括:
原始视频子数据得到模块,设置为针对于全景视频中未进行编码的原始视频数据,将原始视频数据进行空间切割,得到原始视频子数据;
视频子数据更新模块,设置为针对于各原始视频子数据中与目标视角对应的目标视频子数据、及与用户视角对应的用户视频子数据,基于第一预设码率对目标视频子数据进行编码并更新,并且采用可分级视频编码的方式,基于第二预设码率对用户视频子数据进行编码并更新;
目标视频数据传输模块,可以包括:
请求结果返回单元,设置为根据目标视频子数据和/或用户视频子数据确定与视频数据下载请求对应的请求结果,并将请求结果返回给客户端;
客户端下载的目标视频数据包括目标视频子数据和/或是用户视频子数据,目标视频数据传输模块,还可以包括:
视频子数据组合单元,设置为在以使客户端根据接收的请求结果下载服务器传输的目标视频数据之后,将下载得到的在空间位置上重叠的目标视频子数据和用户视频子数据进行组合,并基于组合结果更新进行组合的目标视频子数据。
本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的实施例,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它实施例。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的实施例。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (14)

  1. 一种视频下载方法,应用于客户端,所述方法包括:
    获取缓冲长度,其中,所述缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长度和第一目标缓冲长度、以及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,所述用户视角包括所述全景视频的视频观看用户的视角,所述目标视角的覆盖范围大于所述用户视角,所述第一视频数据的视频质量低于所述第二视频数据;
    根据所述缓冲长度生成视频数据下载请求,其中,所述视频数据下载请求是用于对存储在服务器中的所述全景视频中的目标视频数据进行下载的请求,所述目标视频数据与所述第一视频数据或所述第二视频数据中的至少一个关联;
    将所述视频数据下载请求发送给所述服务器,并根据接收到的所述服务器针对于所述视频数据下载请求返回的请求结果,下载所述目标视频数据。
  2. 根据权利要求1所述的方法,其中,所述缓冲长度包括所述第一当前缓冲长度和所述第一目标缓冲长度;
    所述根据所述缓冲长度生成视频数据下载请求,包括:
    响应于所述第一当前缓冲长度小于所述第一目标缓冲长度,生成用于下载属于所述第一视频数据的所述目标视频数据的视频数据下载请求。
  3. 根据权利要求2所述的方法,其中,所述缓冲长度还包括所述第二当前缓冲长度和所述第二目标缓冲长度;
    所述根据所述缓冲长度生成视频数据下载请求,还包括:
    响应于所述第一当前缓冲长度大于或是等于所述第一目标缓冲长度,确定所述第二当前缓冲长度是否小于所述第二目标缓冲长度;
    响应于所述第二当前缓冲长度小于所述第二目标缓冲长度,生成用于下载属于所述第二视频数据的所述目标视频数据的视频数据下载请求。
  4. 根据权利要求3所述的方法,其中,与当前缓冲的所述第二视频数据对应的所述用户视角是预测出的所述视频观看用户在所述当前缓冲的所述第二视频数据的播放时间时的视角,在所述确定所述第二当前缓冲长度是否小于所述第二目标缓冲长度之后,所述方法还包括:
    响应于所述第二当前缓冲长度大于或是等于所述第二目标缓冲长度,再次预测所述视频观看用户在所述播放时间时的所述用户视角,确定所述全景视频中与再次预测的所述用户视角和所述播放时间对应并且与所述第二视频数据的视频质量相同的第三视频数据;
    响应于所述第三视频数据中包括除了所述当前缓冲的所述第二视频数据之外的第四视频数据,生成用于下载基于所述第四视频数据得到的所述目标视频数据的视频数据下载请求;
    响应于所述第三视频数据中未包括所述第四视频数据,确定所述全景视频中与所述当前缓冲的所述第二视频数据视频质量相同并且在空间位置上相邻的第五视频数据,生成用于下载基于所述第五视频数据得到的所述目标视频数据的视频数据下载请求。
  5. 根据权利要求1所述的方法,还包括以下中的至少一个:
    获取历史带宽信息和历史带宽预测精度,并根据所述历史带宽信息和所述历史带宽预测精度预测在下载所述目标视频数据时的网络带宽,根据所述网络带宽确定所述第一目标缓冲长度;
    或,
    当所述用户视角是预测出的所述视频观看用户在观看待缓冲的所述第二视频数据时的视角时,获取历史视角预测精度,并根据所述历史视角预测精度以及所述网络带宽确定所述第二目标缓冲长度。
  6. 根据权利要求1所述的方法,其中,所述根据所述缓冲长度生成视频数据下载请求,包括:
    预测在下载所述目标视频数据时的网络带宽;
    根据所述缓冲长度以及所述网络带宽生成视频数据下载请求,其中,所述视频数据下载请求表示出的所述目标视频数据的目标码率与所述网络带宽有关。
  7. 根据权利要求1所述的方法,其中,在配置有所述客户端的终端设备内设置有缓冲区,所述缓冲区包括用于缓冲下载得到的所述第一视频数据的第一缓冲区以及用于缓冲下载得到的所述第二视频数据的第二缓冲区;
    在所述下载所述目标视频数据之后,还包括:
    将所述目标视频数据缓冲到与所述目标视频数据关联的所述缓冲区内;
    在播放所述全景视频中的当前视频数据时,响应于所述第二缓冲区中缓冲有与所述当前视频数据对应的所述第二视频数据,从所述第二缓冲区中获取并播放所述对应的所述第二视频数据;
    响应于所述第二缓冲区中未缓冲有所述与所述当前视频数据对应的所述第二视频数据,确定所述第一缓冲区中是否缓冲有与所述当前视频数据相对应的所述第一视频数据;
    响应于所述第一缓冲区中缓冲有与所述当前视频数据相对应的所述第一视频数据,从所述第一缓冲区中获取并且播放所述与所述当前视频数据相对应的所述第一视频数据。
  8. 一种视频传输方法,应用于存储有全景视频的服务器上,所述方法包括:
    接收客户端发送的视频数据下载请求,其中,所述视频数据下载请求包括根据缓冲长度生成的用于对所述全景视频中的目标视频数据进行下载的请求,所述目标视频数据与第一视频数据或第二视频数据中的至少一个关联;
    将与所述视频数据下载请求对应的请求结果返回给所述客户端,以使所述客户端根据接收到的所述请求结果下载所述服务器传输的所述目标视频数据;
    其中,所述缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的所述第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的所述第二视频数据的第二当前缓冲长度和第二目标缓冲长度,所述用户视角包括所述全景视频的视频观看用户的视角,所述目标视角的覆盖范围大于所述用户视角,所述第一视频数据的视频质量低于所述第二视频数据。
  9. 根据权利要求8所述的方法,还包括:
    针对于所述全景视频中未进行编码的原始视频数据,将所述原始视频数据进行空间切割,得到原始视频子数据;
    针对于所述原始视频子数据中与所述目标视角对应的目标视频子数据、及与所述用户视角对应的用户视频子数据,基于第一预设码率对所述目标视频子数据进行编码并更新,并且采用可分级视频编码的方式,基于第二预设码率对所述用户视频子数据进行编码并更新;
    所述将与所述视频数据下载请求对应的请求结果返回给所述客户端,包括:
    根据所述目标视频子数据或所述用户视频子数据中的至少一个确定与所述视频数据下载请求对应的请求结果,并将所述请求结果返回给所述客户端;
    所述客户端下载的所述目标视频数据包括所述目标视频子数据或所述用户视频子数据中的至少一个,在所述以使所述客户端根据接收到的所述请求结果下载所述服务器传输的所述目标视频数据之后,还包括:
    将下载得到的在空间位置上重叠的所述目标视频子数据和所述用户视频子数据进行组合,并基于组合结果更新进行组合的所述目标视频子数据。
  10. 一种视频下载装置,配置于客户端,所述装置包括:
    缓冲长度获取模块,设置为获取缓冲长度,其中,所述缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的第一视频数据的第一当前缓冲长 度和第一目标缓冲长度、及与用户视角对应的第二视频数据的第二当前缓冲长度和第二目标缓冲长度,所述用户视角包括所述全景视频的视频观看用户的视角,所述目标视角的覆盖范围大于所述用户视角,所述第一视频数据的视频质量低于所述第二视频数据;
    下载请求生成模块,设置为根据所述缓冲长度生成视频数据下载请求,其中,所述视频数据下载请求包括用于对存储在服务器中的所述全景视频中的目标视频数据进行下载的请求,所述目标视频数据与所述第一视频数据或所述第二视频数据中的至少一个关联;
    目标视频数据下载模块,设置为将所述视频数据下载请求发送给所述服务器,并根据接收的所述服务器针对于所述视频数据下载请求返回的请求结果,下载所述目标视频数据。
  11. 一种视频传输装置,配置于存储有全景视频的服务器,所述装置包括:
    下载请求接收模块,设置为接收客户端发送的视频数据下载请求,所述视频数据下载请求包括根据缓冲长度生成的用于对所述全景视频中的目标视频数据进行下载的请求,所述目标视频数据与第一视频数据或第二视频数据中的至少一个关联;
    目标视频数据传输模块,设置为将与所述视频数据下载请求对应的请求结果返回给所述客户端,以使所述客户端根据接收到的所述请求结果下载所述服务器传输的所述目标视频数据;
    其中,所述缓冲长度包括下述中的至少一个:全景视频中与目标视角对应的所述第一视频数据的第一当前缓冲长度和第一目标缓冲长度、及与用户视角对应的所述第二视频数据的第二当前缓冲长度和第二目标缓冲长度,所述用户视角包括所述全景视频的视频观看用户的视角,所述目标视角的覆盖范围大于所述用户视角,所述第一视频数据的视频质量低于所述第二视频数据。
  12. 一种终端设备,包括:
    一个或多个处理器;
    存储器,设置为存储一个或多个程序;
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的视频下载方法。
  13. 一种服务器,包括:
    一个或多个处理器;
    存储器,设置为存储一个或多个程序;
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求8-9中任一所述的视频传输方法。
  14. 一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述的视频下载方法,或是如权利要求8-9中任一所述的视频传输方法。
PCT/CN2023/081525 2022-04-12 2023-03-15 视频下载、传输方法、装置、终端设备、服务器及介质 Ceased WO2023197811A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/721,346 US12537984B2 (en) 2022-04-12 2023-03-15 Method of video downloading, method of video transmission, terminal device, server and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210383767.1A CN114979762B (zh) 2022-04-12 2022-04-12 视频下载、传输方法、装置、终端设备、服务器及介质
CN202210383767.1 2022-04-12

Publications (1)

Publication Number Publication Date
WO2023197811A1 true WO2023197811A1 (zh) 2023-10-19

Family

ID=82976510

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/081525 Ceased WO2023197811A1 (zh) 2022-04-12 2023-03-15 视频下载、传输方法、装置、终端设备、服务器及介质

Country Status (3)

Country Link
US (1) US12537984B2 (zh)
CN (1) CN114979762B (zh)
WO (1) WO2023197811A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979762B (zh) 2022-04-12 2024-06-07 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质
CN115604584B (zh) * 2022-09-28 2025-06-10 脸萌有限公司 一种视角预测方法、装置、设备和存储介质
CN116112734B (zh) * 2023-02-13 2025-09-30 脸萌有限公司 一种视频传输方法、装置、存储介质及电子设备
CN116939254A (zh) * 2023-07-17 2023-10-24 中国电信股份有限公司技术创新中心 视频流发送方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105451075A (zh) * 2014-08-27 2016-03-30 北京大学 视频质量控制方法和装置
US9838687B1 (en) * 2011-12-02 2017-12-05 Amazon Technologies, Inc. Apparatus and method for panoramic video hosting with reduced bandwidth streaming
CN109286855A (zh) * 2017-07-19 2019-01-29 北京大学 全景视频的传输方法、传输装置和传输系统
CN112714315A (zh) * 2019-10-24 2021-04-27 上海交通大学 基于全景视频的分层缓冲方法及系统
CN114095756A (zh) * 2021-11-17 2022-02-25 天津大学 基于长期视野预测的自适应全景视频流传输系统及其方法
CN114979762A (zh) * 2022-04-12 2022-08-30 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9654528B1 (en) * 2013-03-11 2017-05-16 Google Inc. Dynamic bitrate selection for streaming media
WO2017031692A1 (zh) * 2015-08-25 2017-03-02 华为技术有限公司 视频下载方法、装置及系统
CN108616557B (zh) * 2016-12-13 2022-01-25 中兴通讯股份有限公司 一种全景视频传输方法、装置、终端、服务器及系统
CN108632631B (zh) * 2017-03-16 2020-08-07 华为技术有限公司 一种全景视频中视频分片的下载方法和装置
CN110149542B (zh) * 2018-02-13 2021-12-03 华为技术有限公司 传输控制方法
US10826964B2 (en) * 2018-09-05 2020-11-03 At&T Intellectual Property I, L.P. Priority-based tile transmission system and method for panoramic video streaming
CN110198495B (zh) * 2019-06-28 2022-03-22 广州市百果园信息技术有限公司 一种视频下载和播放的方法、装置、设备和存储介质
CN110430453B (zh) * 2019-08-28 2022-03-25 咪咕视讯科技有限公司 视频多码率切换处理方法、装置、电子设备及存储介质
CN111083523A (zh) * 2019-12-04 2020-04-28 聚好看科技股份有限公司 一种全景视频播放的方法及终端
CN112468828B (zh) * 2020-11-25 2022-06-17 深圳大学 全景视频的码率分配方法、装置、移动终端及存储介质
CN112565606B (zh) * 2020-12-02 2022-04-01 鹏城实验室 全景视频智能传输方法、设备及计算机存储介质
CN112822564B (zh) * 2021-01-06 2023-03-24 鹏城实验室 一种基于视点的全景视频自适应流媒体传输方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9838687B1 (en) * 2011-12-02 2017-12-05 Amazon Technologies, Inc. Apparatus and method for panoramic video hosting with reduced bandwidth streaming
CN105451075A (zh) * 2014-08-27 2016-03-30 北京大学 视频质量控制方法和装置
CN109286855A (zh) * 2017-07-19 2019-01-29 北京大学 全景视频的传输方法、传输装置和传输系统
CN112714315A (zh) * 2019-10-24 2021-04-27 上海交通大学 基于全景视频的分层缓冲方法及系统
CN114095756A (zh) * 2021-11-17 2022-02-25 天津大学 基于长期视野预测的自适应全景视频流传输系统及其方法
CN114979762A (zh) * 2022-04-12 2022-08-30 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质

Also Published As

Publication number Publication date
US20250063216A1 (en) 2025-02-20
CN114979762B (zh) 2024-06-07
US12537984B2 (en) 2026-01-27
CN114979762A (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
WO2023197811A1 (zh) 视频下载、传输方法、装置、终端设备、服务器及介质
US11785195B2 (en) Method and apparatus for processing three-dimensional video, readable storage medium and electronic device
CN114125551B (zh) 视频生成方法、装置、电子设备及计算机可读介质
US12598334B2 (en) Live-streaming starting method, device and program product
EP4525450A1 (en) Information display method and apparatus, device, storage medium, and program product
EP4297416A1 (en) Angle-of-view switching method, apparatus and system for free angle-of-view video, and device and medium
CN114567812B (zh) 音频播放方法、装置、系统、电子设备及存储介质
WO2023169262A1 (zh) 一种视频动态下载方法、装置、电子设备及存储介质
CN110290398B (zh) 视频下发方法、装置、存储介质及电子设备
JP2025516284A (ja) マルチメディアデータ処理方法、装置、機器、記憶媒体及びプログラム製品
CN111818383B (zh) 视频数据的生成方法、系统、装置、电子设备及存储介质
CN113965779B (zh) 云游戏数据的传输方法、装置、系统及电子设备
CN113542856A (zh) 在线录像的倒放方法、装置、设备和计算机可读介质
CN112887742B (zh) 直播流处理方法、装置、设备及存储介质
US20240163490A1 (en) Information sending method, electronic device, and non-transitory computer-readable storage medium
JP2025529659A (ja) 情報表示方法、装置、電子機器、記憶媒体、及びコンピュータプログラム
CN114915849B (zh) 视频的预加载方法、装置、设备和介质
WO2023226757A1 (zh) 视频缓存方法、装置、设备及存储介质
WO2024007770A1 (zh) 视频资源管理方法、装置、电子设备及存储介质
CN113794936A (zh) 一种精彩瞬间生成方法、装置、系统、设备和介质
CN115334305A (zh) 视频数据传输方法、装置、电子设备和介质
US20250343872A1 (en) Video recording method and apparatus, device, storage medium, and program product
CN113794836B (zh) 一种子弹时间视频生成方法、装置、系统、设备和介质
CN112040328A (zh) 数据交互方法、装置和电子设备
JP2026508311A (ja) マルチメディアデータストリーム処理方法、装置、電子機器、記憶媒体及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23787459

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18721346

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 31-01-2025)

122 Ep: pct application non-entry in european phase

Ref document number: 23787459

Country of ref document: EP

Kind code of ref document: A1

WWG Wipo information: grant in national office

Ref document number: 18721346

Country of ref document: US