CN107211163A - 用于实时串流内容的系统和方法 - Google Patents

用于实时串流内容的系统和方法 Download PDF

Info

Publication number
CN107211163A
CN107211163A CN201580051458.2A CN201580051458A CN107211163A CN 107211163 A CN107211163 A CN 107211163A CN 201580051458 A CN201580051458 A CN 201580051458A CN 107211163 A CN107211163 A CN 107211163A
Authority
CN
China
Prior art keywords
content
encoded
real
platform
event
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.)
Granted
Application number
CN201580051458.2A
Other languages
English (en)
Other versions
CN107211163B (zh
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.)
Martin Mindy M Ltd
Original Assignee
Martin Mindy M 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 Martin Mindy M Ltd filed Critical Martin Mindy M Ltd
Publication of CN107211163A publication Critical patent/CN107211163A/zh
Application granted granted Critical
Publication of CN107211163B publication Critical patent/CN107211163B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • 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
    • 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/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26225Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving billing parameters, e.g. priority for subscribers of premium services
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • H04N21/6379Control signals issued by the client directed to the server or network components directed to server directed to encoder, e.g. for requesting a lower encoding rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control
    • 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/812Monomedia components thereof involving advertisement data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/44Event detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明的实施方式一般涉及用于生成和串流实时内容的系统和方法。具体而言,本发明的实施方式提供用于在经由网络将经编码的内容传输到内容传递网络(CDN)以供远程最终用户消费之前,在单系统上对内容进行记录和编码的系统和方法。

Description

用于实时串流内容的系统和方法
技术领域
本发明的实施方式大体上涉及用于生成和串流实时内容的系统和方法。具体而言,本发明的实施方式提供用于在经由网络将经编码的内容传输到内容传递网络(CDN)以供远程最终用户消费之前在单系统上对内容进行记录和编码的系统和方法。本发明的进一步实施方式配置为允许提供多重经编码的内容流,其中,内容流基于订阅类型提供给用户,其中某些订阅类型基于订阅类型接收不同的内容类型(例如,广告、高级内容)。
相关申请的交叉引用
本申请要求于2015年1月23日提交的第62/106,984号美国临时专利申请以及于2015年11月20日提交的第14/947,783号美国专利申请的权益,以上申请的全部内容作为参考并入本文。
背景技术
目前,通过诸如互联网的网络提供内容的实时广播通常以非常公式化的方式来完成。广播方通过第三方软件应用被记录的内容,第三方软件应用将流内容传输到串流服务器群,串流服务器群接收串流的内容并将其转码为多种比特率。然后,经编码的内容被传输到内容传递网络(CDN),以经由流客户端提供给多个最终用户。
这种模式具有若干问题,包括延迟、缺乏对内容的控制、质量损失以及无法对实时广播视频内容提供高分辨率格式和/或更高帧速率的内容。问题的一部分在于视频内容必须在传输到串流服务器群之前首先进行编码以转码为各种比特率。
这一额外作业导致了实时广播和直至最终用户的最终传递之间的时间上的延迟。考虑到处理中的步骤的数量和控制的不足,广播延迟在现有技术系统中几乎是必然发生的,随之的实时内容和消费者的消费之间的平均时延处于30-60秒的范围中。类似地,现有技术系统中的对于每一分钟的内容缓冲大约6-10秒。
因此,在本领域中需要以这样一种方式对内容进行记录和编码的系统和方法,即,使得经编码的内容能够不受上述问题的影响而经由网络传输到内容传递网络(CDN)以供远程最终用户消费。本发明的这些以及其它特征和优点将通过以下对本发明的概述进行说明,并且这些特征和优点将对本领域技术人员变得显而易见。
发明内容
因此,本发明的一个方面是在于提供用于以如下方式对内容进行记录和编码的系统和方法,即,能够经由网络将经编码的内容传输到内容传递网络(CDN)以供远程最终用户消费,其中经编码的内容能够在(i)无时延问题、(ii)以多种分辨率和/或比特率,包括高分辨率格式(例如,60帧/秒的1080p,24帧/秒的4k),以及(iii)由系统操作者保留对内容(例如,广告内容、高级内容)的控制的情况下被提供。
根据本发明的实施方式,内容实时串流平台配置为允许对内容进行记录和编码,并且配置为将经编码的内容传输到远程内容传递网络以提供给多个最终用户。
根据本发明的实施方式,内容以多个比特率进行编码并以所述多个比特率提供至所述远程内容传递网络。
根据本发明的实施方式,内容包括广告内容,其中所述广告内容的插入通过所述内容实时串流平台控制。
根据本发明的实施方式,内容实时串流平台基于订阅类型来区分用户:其中所述经编码的内容包括多个内容流类型,并且其中内容流类型的提供基于所述订阅类型从所述多个内容流类型中选择。
根据本发明的实施方式,一种用于对内容进行记录和编码且配置为将经编码的内容传输到远程内容传递网络以提供给多个最终用户的内容实时串流平台包括:微处理器;非易失性计算机可读存储器;数据通信接口;以及用于接收被记录的内容的电路,其中非易失性计算机可读存储器通信地连接到所述处理器、数据通信接口和用于接收被记录的内容的电路,并且配置有计算机指令,所述计算机指令配置为:经由所述用于接收被记录的内容的电路接收事件内容;至少部分地基于所述数据通信接口和内容分发网络之间的连接,协同所述微处理器和数据通信接口,确定一个或多个编码比特率;经由所述微处理器,以所述一个或多个编码比特率对所述事件内容进行编码;以及将经编码的内容经由所述数据通信接口传输到所述内容分发网络。
根据本发明的实施方式,非易失性计算机可读存储器、处理器、数据通信接口和用于接收被记录的内容的电路还配置有计算机指令,所述计算机指令配置为:连接到所述内容传递网络;将测试数据传输到所述内容传递网络;至少部分地基于所述测试数据的传输来分析所述内容实时串流平台与所述内容传递网络之间的可用带宽;以及在确定所述一个或多个编码比特率时使用可用带宽分析。
根据本发明的实施方式,非易失性计算机可读存储器、处理器、数据通信接口和用于接收被记录的内容的电路还配置有计算机指令,所述计算机指令配置为:至少部分地基于响应于所述测试数据的传输而接收的包数据来分析所述数据通信接口与所述内容分发网络之间的所述连接的连接质量;以及在确定所述一个或多个编码比特率时使用连接质量分析。
根据本发明的实施方式,一个或多个编码比特率中的至少一个包括大于或等于500kbps的至少一个比特率。
根据本发明的实施方式,一个或多个编码比特率中的至少一个包括小于或等于1200kbps的至少一个比特率。
根据本发明的实施方式,一个或多个编码比特率中的至少一个包括小于或等于500kbps的至少一个比特率以及大于或等于1200kbps的比特率中的至少一个。
根据本发明的实施方式,经编码的内容包括广告内容,其中所述广告内容的插入通过所述内容实时串流平台控制。
根据本发明的实施方式,非易失性计算机可读存储器、处理器、数据通信接口和用于接收被记录的内容的电路还配置有计算机指令,计算机指令配置为:识别所述事件内容中的自然间断事件;以及在所述事件内容中的自然间断事件处插入所述广告内容。
根据本发明的实施方式,经编码的内容包括一个或多个开始触发器和一个或多个停止触发器,开始触发器识别经编码的内容中内容分发网络能够插入广告内容的位置,并且停止触发器识别经编码的内容中内容分发网络将停止插入广告内容并恢复经编码的内容的分发的位置,并且开始触发器和停止触发器通过所述内容实时串流平台插入所述经编码的内容中。
根据本发明的实施方式,非易失性计算机可读存储器、处理器、数据通信接口和用于接收被记录的内容的电路还配置有计算机指令,计算机指令配置为:基于订阅类型区分用户,其中所述经编码的内容包括多个内容流类型;以及基于所述订阅类型向用户提供对选自所述多个内容流类型的内容流类型的访问。
根据本发明的实施方式,一种用于提供对事件内容的记录和编码并将经编码的内容传输到远程内容传递网络以提供给多个最终用户的方法包括以下步骤:经由用于接收被记录的内容的电路接收事件内容;至少部分地基于所述数据通信接口和内容分发网络之间的连接,协同微处理器和数据通信接口,确定一个或多个编码比特率;经由所述微处理器,以所述一个或多个编码比特率对所述事件内容进行编码;以及经由所述数据通信接口将经编码的内容传输到所述内容分发网络。
根据本发明的实施方式,方法进一步包括以下步骤:连接到所述内容传递网络;将测试数据传输到所述内容传递网络;至少部分地基于所述测试数据的传输来分析所述内容实时串流平台与所述内容传递网络之间的可用带宽;以及在确定所述一个或多个编码比特率时使用可用带宽分析。
根据本发明的实施方式,方法进一步包括步骤:至少部分地基于响应于所述测试数据的传输而接收的包数据来分析所述数据通信接口与所述内容分发网络之间的所述连接的连接质量;以及在确定所述一个或多个编码比特率时使用连接质量分析。
根据本发明的实施方式,方法进一步包括步骤:识别所述事件内容中的自然间断事件;以及在所述事件内容中的所述自然间断事件处插入所述广告内容。
根据本发明的实施方式,方法进一步包括步骤:基于订阅类型来区分用户,其中所述经编码的内容包括多个内容流类型;以及基于所述订阅类型向用户提供对选自所述多个内容流类型的内容流类型的访问。
附图说明
图1示出了根据本发明实施方式的计算设备的示意图;以及
图2是在现有技术中进行的内容的实时串流的图示。
图3是根据本发明实施方式的用于生成和串流实时内容的方法的图示。
图4是根据本发明实施方式的、经由广播方、合作方和客户使用系统的方法的图示。
图5是根据本发明实施方式的、用于生成和串流实时内容的方法的流程图。
图6是根据本发明实施方式的、用于生成和串流实时内容的方法的流程图。
具体实施方式
本发明的实施方式大体上涉及用于生成和串流实时内容的系统和方法。具体而言,本发明的实施方式提供用于在经由网络将经编码的内容传输到内容传递网络(CDN)以供远程最终用户消费之前在单系统上对内容进行记录和编码的系统和方法。本发明的进一步实施方式配置为允许提供多重经编码的内容流,其中,内容流基于订阅类型提供给用户,其中某些订阅类型基于订阅类型接收不同的内容类型(例如,广告、高级内容)。
内容处理
首先参考图2,其示出了现有技术中如何实现当前实时串流(live streaming)的图。在大多数情况下,实时内容通过由第三方提供的串流应用进行记录。该应用使用本地硬件(例如,摄像机、麦克风、膝上型计算机、台式计算设备、智能电话)或通信地连接至该应用的其他硬件或系统(例如,经由诸如USB端口、HDMI端口、光学端口、模拟端口的输入装置附接至应用的音频/视频系统),以捕获内容(例如,视频、音频)并将被记录的内容传输到串流服务器。在串流服务器处,内容被转码为各种比特率,使得各种网络带宽的消费者可以以能够不发生持续的中断(例如,缓冲、卡顿、暂停)的情况下被消费的分辨率消费内容。一旦以各种比特率进行编码,串流服务器将以各种比特率将内容提供至CDN。然后,CDN复制流并将它们分发到全球数据中心以基于位置或其他参数提供给用户。最后,内容被提供给最终用户以供消费。
接下来参考图3,示出了与用于实时串流内容的系统有关的本发明示例性实施方式,其克服了本领域的当前状态的限制。在该系统中,事件的广播方利用硬件来捕获事件的内容,例如摄像机、麦克风或其他视觉/音频设备,并将该内容馈送到客户端系统(例如,现场系统)中,该客户端系统包括配置为实时或近实时地(即,即时地)处理并编码多重内容比特率的内容处理硬件和软件的组合。随着内容被编码,其可以以多个比特率提供至CDN,而不需要任何中介物进行处理。
系统的某些实施方式还可配置为分析客户端系统和CDN之间的带宽可用性和可靠性,以确定待传输的经编码的内容比特率的数量和类型。有益地,这不仅确保了经编码的内容的传输根据可用资源来实现,而且还作用于减少客户端系统所经历的处理负载且最终减少处理时间,这是因为基于系统所识别的带宽可用性和可靠性的确定,客户端系统仅对向CDN的传输所需的比特率进行编码。
在本发明的优选实施方式中,以合适的比特率将经编码的内容分发至最终用户是通过不受距离影响的用户数据报协议(UDP)上的实时消息协议(RTMP)完成的,使得对本地服务器的关注变得多余。在另一实施方式中,向最终用户分发经编码的内容可以通过HTTP实时串流(HLS)来完成。结合本文的公开内容及其公布之后,本领域的普通技术人员将理解,存在能够替代为向最终用户提供经编码的内容的其他协议,并且这种实施方式包含在本发明的预期范围内。
在这些优选实施方式中,通过以这种方式对内容进行处理和编码,并且将经编码的内容直接提供至CDN,然后经由CDN通过UDP协议上的RTMP提供给最终用户,则能够实现平均时延在1-6秒之间且对于每一分钟的内容缓冲减少到0.2-1秒的实时广播。通过UDP且通过RTMP从CDN发送经编码的内容增加了传送速率并降低了带宽要求,这是因为该协议不尝试重新发送个别最终用户未接收到的帧,并且UDP协议使用比CDN常用的其他协议(例如,传输控制协议(TCP)稍少的协议数据。组播技术进一步有助于将经编码的内容从CDN更快递传递至最终用户。
此外,客户端对内容的处理和编码允许以提升的分辨率和帧速率提供内容。现有技术的系统只能以60帧/秒实现720p分辨率。本发明的实施方式能够以60帧/秒或大于60帧/秒实现1080p且以24帧/秒或大于24帧/秒实现4k内容。此外,随着分辨率的增加以及如处理单元的硬件变得更强劲,通过使用本发明的实施方式还能够提供提升的分辨率和帧速率。
根据本发明的实施方式,通过使用一个或多个计算设备来实现所述系统和方法。如图1所示,本领域普通技术人员将理解,适合于与本申请的实施方式一同使用的计算设备100通常可由一个或多个中央处理单元(CPU)101、随机存取存储器(RAM)102、存储介质(例如,硬盘驱动器、固态驱动器、闪存、云存储)103、操作系统(OS)104、一个或多个应用软件105、配置为记录、编码、传输或以其他方式处理内容的一个或多个模块(即,内容记录和处理模块106)以及一个或多个输入/输出设备/装置107组成。可用于本发明的实施方式的计算设备的示例包括但不限于个人计算机、智能电话、膝上型计算机、移动计算设备以及平板个人电脑和服务器。术语计算设备还可以描述以分布和共享一个或多个资源的方式通信地链接的两个或更多个计算设备(诸如集群计算设备和服务器库/群)。本领域普通技术人员将理解,可以使用任何数量的计算设备,并且本发明的实施方式预期用于任何计算设备。
在根据本发明的示例性实施方式中,数据可以被提供给系统,由系统存储并且由系统通过局域网(LAN)(例如办公室网络、家庭网络)或者广域网(WAN)(例如,互联网)提供给系统的用户。根据前述实施方式,系统可以包括在一个或多个LAN和/或WAN上通信连接的多个服务器。本领域普通技术人员将理解,存在可以配置系统的多种方式,并且本发明的实施方式预期与任何配置一同使用。
内容和广告控制
除了允许提供质量提升的实时串流内容以外,本发明的实施方式还配置为提供对广告和其他内容中断的更好的控制。这是由与系统同时提供的两个主要特征产生的。
首先,系统能够通过一个或多个标准来定义用户。在本发明的优选实施方式中,系统定义用户的标准是订阅类型。系统可配置为向用户提供一个或多个订阅级别,允许用户通过他们的订阅等级被识别并且基于该订阅级别被提供内容和广告。例如,系统可提供免费订阅类型,通过该订阅类型提供给用户的内容将仅包含由系统提供的可用内容的子集,并且内容可能更频繁地被中断以加入广告或其他内容。类似地,高级或付费订阅类型可允许系统提供对高级内容和更少或更多的定向广告的访问。
在本发明的某些实施方式中,系统可配置为提供多个订阅类型,每个订阅类型具有对内容流以及提供的广告的数量和性质的不同的访问级别。本领域的普通技术人员将理解,存在能够与本发明的实施方式一同使用的许多订阅类型和订阅方法,并且本发明的实施方式预期为与任何适当的订阅方法和订阅类型一同使用。
对于第二主要特征,系统提供对广告和其他内容中断的更好的控制。系统提供特定广告内容和用于提供广告或其他内容中断的特定时间的定向合并。这很重要,因为在实时广播期间,在提供内容时可能存在自然间断点,诸如在事件之间调换、特定时间段的结束(例如,视频游戏中的回合、体育广播中的时段或节)。在现有技术系统中,广告是以特定间隔(例如,在开始向用户串流内容后,每30分钟)提供的,其通常不与这些自然间断点重合。有益地,本系统的实施方式能够在这些自然间断点并入适当的内容中断和/或广告。
另外,上述关于内容和广告控制的本发明实施方式的这两个特征可以一同使用以增强两者的有效性。例如,当确定在自然间断点期间待提供的内容的类型时,系统可以考虑用户的订阅级别。在这种情况下,系统可以向高级订阅者提供与实时广播或事件相关的高级内容(例如,非广告内容),诸如对事件参与者、选手或其他知名人物的访谈,或发生在自然间断点期间的附加事件(例如,在事件中发生的次要事件)。类似地,可以在自然间断点期间向免费或基础订阅者提供与高级内容相对的广告内容。此外,可以在自由间断点期间向免费或基础订阅者提供广告或升级至高级订阅等级的提议。
对于将广告并入内容流中,系统可配置为以各种方式处理广告的插入。首先,广告可由系统提供并且在自然事件间断点并入。例如,广告可由事件的赞助者提供或者由系统提供以并入任何事件。在某些实施方式中,可对广告进行预编码,使得不需要额外的资源来将它们插入实时的经编码的内容中。这具有减少开销和处理功率需求的优点。
在另一实施方式中,广告可由系统、由CDN或第三方广告源提供。在该实施方式中,系统向第三方广告源发送信号以向一个或多个用户提供广告,而且第三方广告源可直接向用户发送经编码的内容。另外,可以将广告提供至系统,并且系统可将广告并入适当的经编码的内容流中。在这些实施方式中,广告开始/停止信号可由实时事件广播的操作者发送以划定自然间断点的边界。在其他实施方式中,事件操作者可以设置自然间断点时间段(例如,5分钟),并且系统或第三方广告源可在指定时间段内提供适当的广告或其他内容。本领域的普通技术人员将理解,存在用于划定自然间断点的持续时间或开始/停止点的许多方法,并且本发明的实施方式预期为与任何适当的方法一同使用。
根据本发明的实施方式,广告开始/停止信号可通过在广告的整个广播时间内间断性地提供相关触发器来实现。以这种方式,在广告呈现的中途加入广播流的用户将仍然被发送广告(不同于错过单个开始触发器且不被提供广告内容)。类似地,停止触发器可在广告结束之后的特定持续时间内被发送以防止数据包的丢失导致用户停留在广告内容流中,而不是返回到广播流。在示例性实施方式中,可在提供广告流(或广告流的某些子集)的整个持续时间内每秒发送一系列广告开始触发器。在广告终止时,可在广告内容完成之后的10秒的期间里发送一系列广告停止信号。这些仅仅是触发器的示例性定时和持续时间,并且本领域普通技术人员将理解,信号的定时和持续时间能够以更大或更小的间隔和更大或更小的持续时间发生。
示例性实施方式
以下是本发明的示例性实施方式。转至图5,其示出了利用本文所描述的系统的方法。过程开始于步骤501,其中系统被用于记录、编码和提供实时串流广播。在步骤502,系统开始记录或以其它方式接收来自事件的被记录的内容。如上所述,这可以是音频/视觉内容类型或其它内容类型的任何组合。
在步骤503,系统开始处理实时串流内容并将其编码为适当的比特率。在某些实施方式中,系统的操作者可选择提供哪些比特率。在其他实施方式中,系统可自动选择用于编码的比特率。用于确定用于编码的比特率的示例性方法在图6中示出,并且该方法可在图5中详细描述的示例性过程的该步骤中使用,或者作为独立过程或以其他方式在过程内的不同时间或地点实现。
在用于选择比特率和经编码的内容的示例性过程中,如图6所示,过程开始于步骤601,其中系统被用于对事件内容进行编码。在步骤602,客户端系统连接到将从客户端系统接收经编码的内容的一个或多个CDN。连接参数可在客户端系统中被编码,或者手动地或自动地提供至系统,例如通过用户输入或通过与存储的模块或远程模块、数据存储或包含对一个或多个CDN的连接信息的系统的连接,其中CDN将用于当从客户端系统接收到经编码的内容时,将内容传输给用户。
在步骤603,客户端系统开始测试客户端系统和CDN之间的连接。在该优选实施方式中,通过向CDN发送测试数据来建立连接质量,例如一个或多个已知大小的文件或其他数据类型(例如,数据包)。通常,一个或多个文件或数据类型的大小应足以允许在一段时间内进行测试。鉴于简短测试可能不会遇到在连接中间歇性地发生的噪声或其他问题,传输测试数据所需的时间越长,带宽和连接质量的最终分析将越准确。
在传输数据之后,客户端系统将分析传输数据以确定可用带宽和连接质量(步骤604)。例如,这可以通过确定传输一个或多个已知大小的文件或数据类型和与传输相关联的包数据花费多长时间来完成。此外,由于在许多传输协议(例如,TCP)下的文件传输包括对丢失或损坏的数据分组的错误检查,客户端系统还可使用该信息来确定连接的质量,其中较高的数据包丢失是连接质量可能受损的迹象。
一旦确定了带宽和连接质量,则系统将基于可用带宽和连接质量来确定对内容进行编码的比特率(步骤605)。在优选实施方式中,客户端系统将确定编码的比特率的数量和类型,使得与CDN的连接不会因经编码的内容至CDN的传输而完全饱和。这虑及一些灵活性,因为即使对于带宽和连接测试,随着需求随时间变化,连接可能发生改变。此外,在客户端系统和CDN之间的连接允许的优选实施方式中,客户端系统将尝试提供高比特率的经编码的内容(例如,HD 1080p@H.264高配置5000kbps、HD 1080p@H.264高配置3000kbps、HD720p@H.264高配置2000kbps)、标准比特率的经编码的内容(例如,SD 480p@H.264主配置1200kbps)和低比特率的经编码的内容(例如,LD 360p@H.264主配置700kbps、LD 360p@H.264主配置500kbps、LD 240p@H.264基准配置350kbps)的混合。以这种方式,即使在宽且稳定的连接可用的情况下,客户端系统也将提供一些低比特率的经编码的内容,因为不是每个最终用户都具有宽且稳定的连接,并且可能依赖于接收较低比特率的经编码的内容以享受流畅的串流体验。
在步骤606,在确定客户端系统将以哪些比特率对内容进行编码之后,客户端系统可开始接收用于编码的事件内容(步骤606)。如本文所述,可以以各种方式从各种输入装置和来源接收事件内容。一旦收到,客户端系统将开始以确定的比特率对事件内容进行编码(步骤607),并且此时过程将返回到图5所详细描述的示例性过程。
重新参照图5,在步骤504,在对用于传输至CDN的事件内容进行记录和编码期间,系统可持续地进行检查以查看是否存在自然间断事件。通常,自然间断事件的发生由系统的操作者在事件的特定点处发起,诸如在比赛之间切换或者回合结束或其他时间段。在某些实施方式中,系统可通过监视事件状态来检测自然间断事件,包括但不限于以下方式:检测键盘/键按压事件的缺失,检测无屏幕重绘,检测在一段时间内无鼠标操作事件,检测来自网络摄像机的移动/动作的欠缺,或它们的任何组合。如果未检测到自然间断事件,系统则继续而不中断对实时广播流的处理和编码。如果检测到自然间断事件,则系统在步骤505向实时广播流的处理和编码发出信号以插入适当的广告或其他中断内容(例如,高级订阅者内容)。在某些实施方式中,中断不终止实时广播内容的记录和/或处理/编码,而是中断向CDN提供该内容。在又一实施方式中,内容的中断并不提供至所有用户(例如,排除高级用户),而相反地,对于那些用户,实时广播流继续进行或提供其他内容。提供什么内容可基于一个或多个因素,例如用户订阅级别(例如白金、黄金、白银)、用户设置(例如,有关用户更喜欢什么样的中断或其他内容的用户偏好)、系统设置(例如,基于事件类型或其他配置元素来选择可用的内容流和中断内容)或它们的任何组合。
在步骤506,并且通常与步骤503和505同步地,系统将经编码的内容传输到CDN。如本文所详述的,经编码的内容可包括各种比特率、分辨率和帧速率的多重内容流。
在步骤507,CDN为请求提供实时广播内容的每个用户确定适当的内容流。在某些实施方式中,用户可能需要连接到CDN或系统以便提供登录、注册或其他相关细节,从而识别用户或允许用户访问各种内容级别。本领域的普通技术人员将理解,存在用于提供和处理这种登录和注册信息的许多方法,并且本发明的实施方式被预期为与任何适当类型的登录和/或注册方法一同使用。
在步骤508,CDN基于用户类型和用户与CDN之间的网络连接的细节(例如,带宽和时延)向每个用户传输适当的内容流。此时,过程在步骤509终止。终止可因由用户或系统对内容流的终止(例如,实时广播事件的结束)而发生。
贯穿本公开及其他方面,框图和流程图示出了方法、装置(即系统)和计算机程序产品。框图和流程图说明中的每个元素以及框图和流程图说明中的元素的每个相应组合示出了方法、装置和计算机程序产品的功能。任何和所有这些功能(“所述的功能”)可由计算机程序指令;通过专用的、基于硬件的计算机系统;通过专用硬件和计算机指令的组合;通过通用硬件和计算机指令的组合等等来实现——以上的任何和全部在本文中通常可被称为“电路”、“模块”或“系统”。
虽然上述附图和描述阐述了所公开的系统的功能性方面,但是除非明确说明或通过上下文得以清晰,否则不应从这些描述中推断用于实现这些功能性方面的软件的特定布置。
流程图说明中的每个元素可描述计算机实现方法的一个步骤或一组步骤。此外,每个步骤可包含一个或多个子步骤。出于说明的目的,这些步骤(以及上文中识别并描述的任何和所有其他步骤)是按顺序呈现的。应当理解,实施方式可包含适合于本文公开技术的特定应用的步骤的替代顺序。所有这些变化和修改旨在落入本公开的范围内。除非由特定应用所要求、明确说明或通过上下文得以清晰,以任何特定顺序对步骤的进行的描述和说明并不旨在排除具有不同顺序的步骤的实施方式。
习惯上,计算机程序由有限序列的计算指令或程序指令组成。应当理解,可编程装置(即,计算设备)可接收这种计算机程序,并且通过处理其计算指令产生进一步的技术效果。
可编程装置包括能够适当地用于或配置为处理计算机程序指令、执行计算机逻辑、存储计算机数据等的一个或多个微处理器、微控制器、嵌入式微控制器、可编程数字信号处理器、可编程设备、可编程门阵列、可编程阵列逻辑、存储器设备、专用集成电路等。贯穿本公开及其他方面,计算机可包括至少一个专用计算机、可编程数据处理装置、处理器、处理器架构等的任何和所有适当的组合。
应当理解,计算机可包括计算机可读存储介质,并且该介质可以是内部的或外部的,可移动的和可替换的,或固定的。还将理解,计算机可包括能够包含、联接或支持本文所述的软件和硬件的基本输入/输出系统(BIOS)、固件、操作系统、数据库等。
本文描述的系统的实施方式不限于涉及运行应用的常规计算机程序或可编程装置的应用。例如,可以预期本文要求保护的本发明的实施方式可包括光学计算机、量子计算机、模拟计算机等。
与涉及的计算机程序或计算机的类型无关地,可将计算机程序加载到计算机上以产生能够执行任何和所有所述功能的特定机器。该特定机器提供用于实现任何和所有所述功能的装置。
可使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质例如可以是但不限于电子、磁、光学、电磁、红外或半导体系统、装置或设备或上述的任何适当的组合。计算机可读存储介质的更具体的示例(非穷尽列表)将包括以下:具有一个或多个线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光学存储设备、磁存储设备或上述的任何适当的组合。在本文件的上下文中,计算机可读存储介质可以是能够包含或存储由指令执行系统、装置或设备使用或与其结合使用的程序的任何有形介质。
根据本发明的实施方式,数据存储可由数据库、文件存储系统、关系数据存储系统或配置为优选以关系方式存储数据的任何其它数据系统或结构中的一个或多个组成。在本发明的优选实施方式中,数据存储可以是与用于接收、处理和存储数据的关系数据库管理系统(RDBMS)结合操作的关系数据库。在优选实施方式中,数据存储器可包括用于存储与移动信息和估计信息的处理相关的信息的一个或多个数据库,以及配置为存储和检索移动信息和估计信息的一个或多个数据库。
计算机程序指令可存储在能够使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读存储器中。存储在计算机可读存储器中的指令构成包括用于实现任何和所有所述功能的计算机可读指令的制品。
计算机可读信号介质可包括其中包含有计算机可读程序代码的传播数据信号,例如,在基带中或作为载波的一部分。这种传播信号可采用多种形式中的任一种,包括但不限于电磁、光学或它们的任何适当的组合。计算机可读信号介质可以是并非计算机可读存储介质的并且能够通信、传播或传输由指令执行系统、装置或设备使用或与其结合使用的程序的任何计算机可读介质。
包含在计算机可读介质上的程序代码可利用任何适当的介质传输,包括但不限于无线、有线、光纤电缆、RF等,或以上任何适当的组合。
贯穿附图的流程图说明和框图中描述的元件隐含元件之间的逻辑边界。然而,根据软件或硬件工程实践,所描述的元件及其功能可以实现为单片软件结构的部分、作为独立的软件模块、或作为采用外部例程、代码、服务等的模块、或者这些的任何组合。所有这些实现都含在本公开的范围内。
鉴于以上内容,现在将理解的是,框图和流程图说明的元件支持用于执行指定功能的装置的组合、用于执行指定功能的步骤的组合、用于执行指定功能的程序指令装置等。
应当理解,计算机程序指令可包括计算机可执行代码。可用各种语言表示计算机程序指令,包括但不限于C、C++、Java、JavaScript、汇编语言、PHP、ActionScript、C#、.NET、Visual Basic、HTML等。这种语言可包括汇编语言、硬件描述语言、数据库编程语言、功能编程语言、命令性编程语言等。在一些实施方式中,计算机程序指令可存储、编译或解释为运行于计算机、可编程数据处理装置、处理器或处理器架构的异构组合(包括使用中央处理单元(CPU)、图形处理单元(GPU)或它们的任何组合)等等。本文所描述的系统的实施方式可以非限制性地采用基于网络的计算机软件的形式,其包括客户端/服务器软件、软件即服务、点对点软件等。
在一些实施方式中,计算机使包括多个程序或线程的计算机程序指令能够得以执行。多个程序或线程可以或多或少同时处理为增强处理器的使用并且促进大致同步的功能。通过实施方式,本文所描述的任何和所有方法、程序代码、程序指令等可实现为一个或多个线程。线程可产生其他线程,其本身可具有与它们相关联的分配的优先级。在一些实施方式中,计算机可基于优先级或基于程序代码中提供的指令的任何其他顺序来处理这些线程。
除非明确说明或通过上下文得以清晰,动词“执行”和“处理”可互换地用于表示执行、处理、解释、编译、组合、链接、加载以及前述任何和所有组合等。因此,执行或处理计算机程序指令、计算机可执行代码等的实施方式可以以方才描述的任何和所有方式适当地作用于指令或代码。
本文呈现的功能和操作不是固有地与任何特定的计算机或其他装置相关。各种通用系统也可根据本文的教导与程序一同使用,或者可对构造更加专门性的装置以执行所需的方法步骤带来便利。各种这类系统所需的结构以及等同变型对于本领域技术人员将是显而易见的。此外,本发明的实施方式不参考任何特定的编程语言来描述。应当理解,各种编程语言可用于实现如本文所描述的本教导,并且提供了对特定语言的引用以用于公开本发明的实施方式的实现和最佳模式。本发明的实施方式在多种拓扑上很好地上适用于各种各样的计算机网络系统。在该领域内,大型网络的配置和管理包括通过网络(例如互联网)通信地联接到不同的计算机和存储设备的存储设备和计算机。
随着多个实施方式的公开,本发明的其他实施方式将根据详细的描述对本领域技术人员变得显而易见。在不背离本发明的精神和范围的情况下,本发明能够在各种显而易见的方面进行各种修改。因此,附图和描述在本质上应被认为是说明性的而不是限制性的。

Claims (21)

1.一种内容实时串流平台,用于对内容进行记录和编码且配置为将经编码的内容传输到远程内容传递网络以提供给多个最终用户,所述内容实时串流平台包括:
微处理器;
非易失性计算机可读存储器;
数据通信接口;以及
用于接收被记录的内容的电路,
其中,所述非易失性计算机可读存储器通信地连接到所述处理器、所述数据通信接口和所述用于接收被记录的内容的电路,并且所述非易失性计算机可读存储器配置有计算机指令,所述计算机指令配置为:
经由所述用于接收被记录的内容的电路接收事件内容;
协同所述微处理器和所述数据通信接口,至少部分地基于所述数据通信接口和内容分发网络之间的连接,确定一个或多个编码比特率;
经由所述微处理器,以所述一个或多个编码比特率对所述事件内容进行编码;以及
经由所述数据通信接口,将被编码的内容传输到所述内容分发网络。
2.根据权利要求1所述的内容实时串流平台,其中所述非易失性计算机可读存储器、所述处理器、所述数据通信接口和所述用于接收被记录的内容的电路还配置有计算机指令,所述计算机指令配置为:
连接到所述内容传递网络;
将测试数据传输到所述内容传递网络;
至少部分地基于所述测试数据的传输,分析所述内容实时串流平台与所述内容传递网络之间的可用带宽;以及
在确定所述一个或多个编码比特率时使用可用带宽分析。
3.根据权利要求2所述的内容实时串流平台,其中所述非易失性计算机可读存储器、所述处理器、所述数据通信接口和所述用于接收被记录的内容的电路还配置有计算机指令,所述计算机指令配置为:
至少部分地基于响应于所述测试数据的传输而接收的包数据,分析所述数据通信接口和所述内容分发网络之间的所述连接的连接质量;以及
在确定所述一个或多个编码比特率时使用连接质量分析。
4.根据权利要求1所述的内容实时串流平台,其中所述一个或多个编码比特率包括大于或等于5000kbps的至少一个比特率。
5.根据权利要求1所述的内容实时串流平台,其中所述一个或多个编码比特率包括小于或等于1200kbps的至少一个比特率。
6.根据权利要求1所述的内容实时串流平台,其中所述一个或多个编码比特率至少包括小于或等于1200kbps的一个比特率和大于或等于5000kbps的一个比特率。
7.根据权利要求1所述的内容实时串流平台,其中所述经编码的内容包括广告内容,其中所述广告内容的插入通过所述内容实时串流平台控制。
8.根据权利要求3所述的内容实时串流平台,其中所述非易失性计算机可读存储器、所述处理器、所述数据通信接口和所述用于接收被记录的内容的电路还配置有计算机指令,所述计算机指令配置为:
识别所述事件内容中的自然间断事件;以及
将所述广告内容插入所述事件内容中的所述自然间断事件处。
9.根据权利要求1所述的内容实时串流平台,其中,
所述经编码的内容包括一个或多个开始触发器和一个或多个停止触发器,所述一个或多个开始触发器识别所述经编码的内容中所述内容分发网络能够插入广告内容的位置,所述一个或多个停止触发器识别所述经编码的内容中所述内容分发网络停止插入广告内容并恢复所述经编码的内容的分发的位置,以及所述开始触发器和其中所述停止触发器通过所述内容实时串流平台插入所述经编码的内容中。
10.根据权利要求1所述的内容实时串流平台,其中所述非易失性计算机可读存储器、所述处理器、所述数据通信接口和所述用于接收被记录的内容的电路还配置有计算机指令,所述计算机指令配置为:
基于订阅类型区分用户,其中所述经编码的内容包括多个内容流类型;以及
基于所述订阅类型向用户提供对选自所述多个内容流类型的内容流类型的访问。
11.一种用于提供对事件内容的记录和编码以及将经编码的内容传输到远程内容传递网络以提供给多个最终用户的方法,所述方法包括以下步骤:
经由用于接收被记录的内容的电路接收事件内容;
协同微处理器和数据通信接口,至少部分地基于所述数据通信接口和内容分发网络之间的连接,确定一个或多个编码比特率;
经由所述微处理器,以所述一个或多个编码比特率对所述事件内容进行编码;以及
经由所述数据通信接口将经编码的内容传输到所述内容分发网络。
12.根据权利要求11所述的方法,还包括以下步骤:
连接到所述内容传递网络;
将测试数据传输到所述内容传递网络;
至少部分地基于所述测试数据的传输来分析所述内容实时串流平台与所述内容传递网络之间的可用带宽;以及
在确定所述一个或多个编码比特率时使用可用带宽分析。
13.根据权利要求12所述的方法,还包括以下步骤:
至少部分地基于响应于所述测试数据的传输而接收的包数据,分析所述数据通信接口与所述内容分发网络之间的所述连接的连接质量;以及
在确定所述一个或多个编码比特率时使用连接质量分析。
14.根据权利要求11所述的方法,其中所述一个或多个编码比特率包括大于或等于2000kbps的至少一个比特率。
15.根据权利要求11所述的方法,其中所述一个或多个编码比特率包括小于或等于1200kbps的至少一个比特率。
16.根据权利要求11所述的方法,其中所述一个或多个编码比特率至少包括小于或等于500kbps的一个比特率和大于或等于1200kbps的一个比特率。
17.根据权利要求11所述的方法,其中所述经编码的内容包括广告内容,其中所述广告内容的插入通过所述内容实时串流平台控制。
18.根据权利要求11所述的方法,还包括以下步骤:
识别所述事件内容中的自然间断事件;以及
将所述广告内容插入所述事件内容中的所述自然间断事件处。
19.根据权利要求11所述的方法,其中,
所述经编码的内容包括一个或多个开始触发器和一个或多个停止触发器,所述一个或多个启动触发识别所述经编码的内容中所述内容分发网络能够插入广告内容的位置,所述一个或多个停止触发器识别所述经编码的内容中所述内容分发网络停止插入广告内容并恢复所述经编码的内容的分发的位置,以及所述开始触发器和其中所述停止触发器通过所述内容实时串流平台插入所述经编码的内容中。
20.根据权利要求11所述的方法,还包括以下步骤:
基于订阅类型区分用户,其中所述经编码的内容包括多个内容流类型;以及
基于所述订阅类型向用户提供对选自所述多个内容流类型的内容流类型的访问。
21.一种如本文中参照附图充分描述的内容实时串流平台或方法。
CN201580051458.2A 2015-01-23 2015-12-03 用于实时串流内容的系统和方法 Expired - Fee Related CN107211163B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562106984P 2015-01-23 2015-01-23
US62/106,984 2015-01-23
US14/947,783 US9497498B2 (en) 2015-01-23 2015-11-20 System and method for live streaming of content
US14/947,783 2015-11-20
PCT/GB2015/000316 WO2016116720A1 (en) 2015-01-23 2015-12-03 System and method for live streaming of content

Publications (2)

Publication Number Publication Date
CN107211163A true CN107211163A (zh) 2017-09-26
CN107211163B CN107211163B (zh) 2018-12-18

Family

ID=55024152

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580051458.2A Expired - Fee Related CN107211163B (zh) 2015-01-23 2015-12-03 用于实时串流内容的系统和方法

Country Status (5)

Country Link
US (2) US9497498B2 (zh)
EP (1) EP3248378A1 (zh)
CN (1) CN107211163B (zh)
GB (1) GB2534465B (zh)
WO (1) WO2016116720A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708610A (zh) * 2019-10-11 2020-01-17 孟奇 一种线下直播互动系统及方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9300678B1 (en) 2015-08-03 2016-03-29 Truepic Llc Systems and methods for authenticating photographic image data
US9986267B2 (en) * 2015-10-23 2018-05-29 Disney Enterprises, Inc. Methods and systems for dynamically editing, encoding, posting and updating live video content
CA3040115C (en) * 2016-10-10 2022-05-24 Stephen Rosa Method and system for countering ransomware
US20200045094A1 (en) * 2017-02-14 2020-02-06 Bluejay Technologies Ltd. System for Streaming
GB201702386D0 (en) 2017-02-14 2017-03-29 Bluejay Tech Ltd System for streaming
US10375050B2 (en) * 2017-10-10 2019-08-06 Truepic Inc. Methods for authenticating photographic image data
US10361866B1 (en) 2018-08-13 2019-07-23 Truepic Inc. Proof of image authentication on a blockchain
US10360668B1 (en) 2018-08-13 2019-07-23 Truepic Inc. Methods for requesting and authenticating photographic image data
US10819760B2 (en) * 2018-10-01 2020-10-27 At&T Intellectual Property I, L.P. Method and apparatus for streaming video applications in cellular networks
CN111385591A (zh) * 2018-12-28 2020-07-07 阿里巴巴集团控股有限公司 网络直播方法、直播处理方法、装置、直播服务器及终端设备
US11037284B1 (en) 2020-01-14 2021-06-15 Truepic Inc. Systems and methods for detecting image recapture
CN111246239B (zh) * 2020-02-12 2022-07-22 广州虎牙科技有限公司 对直播节目的测试的方法、系统、装置、设备和存储介质
US12026378B2 (en) * 2021-12-22 2024-07-02 Comcast Cable Communications, Llc Method and system for efficient layout of stored video segments

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020744A1 (en) * 1998-08-21 2003-01-30 Michael D. Ellis Client-server electronic program guide
US20030055971A1 (en) * 2001-09-19 2003-03-20 Menon Rama R. Providing load balancing in delivering rich media
US20070039028A1 (en) * 2005-08-11 2007-02-15 Shahar Bar Real time bit rate switching for internet protocol television
CN101404759A (zh) * 2008-10-30 2009-04-08 中山大学 一种用于数字视频监控系统的网络自适应系统
US20130067109A1 (en) * 2011-09-12 2013-03-14 Tektronix, Inc. Monitoring Over-the-Top Adaptive Video Streaming
US20130291014A1 (en) * 2012-04-30 2013-10-31 John Raymond Mick, Jr. Method and system for uniformly marking and identifying placement opportunity locations for facilitating accelerated decision resolution
US20140359679A1 (en) * 2013-05-30 2014-12-04 Sonic Ip, Inc. Content streaming with client device trick play index
US20150106841A1 (en) * 2013-10-14 2015-04-16 Rhythm Newmedia Inc. Dynamic Advertisement During Live Streaming

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083445A1 (en) * 2000-08-31 2002-06-27 Flickinger Gregory C. Delivering targeted advertisements to the set-top-box
US6981040B1 (en) * 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
US20030055917A1 (en) * 2001-05-29 2003-03-20 Boreham David W. Method and system for determining a directory entry's class of service in an indirect manner
SG111978A1 (en) * 2002-11-20 2005-06-29 Victor Company Of Japan An mpeg-4 live unicast video streaming system in wireless network with end-to-end bitrate-based congestion control
US8752086B2 (en) * 2006-08-09 2014-06-10 Carson Victor Conant Methods and apparatus for sending content to a media player
DK2074762T3 (da) * 2006-09-26 2015-06-15 Liveu Ltd Fjerntransmissionssystem
WO2008073358A2 (en) * 2006-12-08 2008-06-19 Xm Satellite Radio Inc. System for insertion of locally cached information into received broadcast stream to implement tiered subscription services
US9438861B2 (en) * 2009-10-06 2016-09-06 Microsoft Technology Licensing, Llc Integrating continuous and sparse streaming data
JP5428734B2 (ja) * 2009-10-14 2014-02-26 ソニー株式会社 ネットワーク機器、情報処理装置、ストリーム切替方法、情報処理方法、プログラムおよびコンテンツ配信システム
CN103533386A (zh) * 2013-10-21 2014-01-22 腾讯科技(深圳)有限公司 一种直播控制方法,及主播设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020744A1 (en) * 1998-08-21 2003-01-30 Michael D. Ellis Client-server electronic program guide
US20030055971A1 (en) * 2001-09-19 2003-03-20 Menon Rama R. Providing load balancing in delivering rich media
US20070039028A1 (en) * 2005-08-11 2007-02-15 Shahar Bar Real time bit rate switching for internet protocol television
CN101404759A (zh) * 2008-10-30 2009-04-08 中山大学 一种用于数字视频监控系统的网络自适应系统
US20130067109A1 (en) * 2011-09-12 2013-03-14 Tektronix, Inc. Monitoring Over-the-Top Adaptive Video Streaming
US20130291014A1 (en) * 2012-04-30 2013-10-31 John Raymond Mick, Jr. Method and system for uniformly marking and identifying placement opportunity locations for facilitating accelerated decision resolution
US20140359679A1 (en) * 2013-05-30 2014-12-04 Sonic Ip, Inc. Content streaming with client device trick play index
US20150106841A1 (en) * 2013-10-14 2015-04-16 Rhythm Newmedia Inc. Dynamic Advertisement During Live Streaming

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708610A (zh) * 2019-10-11 2020-01-17 孟奇 一种线下直播互动系统及方法

Also Published As

Publication number Publication date
CN107211163B (zh) 2018-12-18
EP3248378A1 (en) 2017-11-29
US9497498B2 (en) 2016-11-15
WO2016116720A1 (en) 2016-07-28
US20160219320A1 (en) 2016-07-28
GB2534465A (en) 2016-07-27
US20170118493A1 (en) 2017-04-27
GB2534465B (en) 2017-05-03
GB201521359D0 (en) 2016-01-20

Similar Documents

Publication Publication Date Title
CN107211163A (zh) 用于实时串流内容的系统和方法
US11457283B2 (en) System and method for multi-user digital interactive experience
US20210385540A1 (en) Systems and methods for real-time adaptive bitrate transcoding and transmission of transcoded media
CN102143133B (zh) Http流播放方式中支持广告内容的方法、装置和系统
CN109565620A (zh) 低延迟http实时流传输
CN108391179A (zh) 直播数据处理方法、装置、服务器、终端及存储介质
CN110139113B (zh) 视频资源的传输参数分发方法及装置
WO2022227938A1 (zh) 一种云游戏的处理方法、装置、设备及存储介质
WO2021114845A1 (zh) 互动业务处理方法、系统、设备及存储介质
US11889159B2 (en) System and method for multi-user digital interactive experience
CN109152955A (zh) 云游戏中的用户保存数据管理
US10661165B2 (en) Methods, systems, and media for enhancing multiplayer game sessions with asymmetric information
CN106817354A (zh) 一种视频流传输方法、设备和系统
US20170353518A1 (en) Catching up to the live playhead in live streaming
US20170195617A1 (en) Image processing method and electronic device
Tizon et al. MPEG-4-based adaptive remote rendering for video games
CN107612912A (zh) 一种设置播放参数的方法和装置
US10063613B2 (en) Systems and methods for utilizing client-side synchronization of video and overlay
US10091265B2 (en) Catching up to the live playhead in live streaming
US10701118B2 (en) Method for the processing of a multimedia stream, corresponding device and computer program
US11750870B2 (en) Evolutionary parameter optimization for selecting optimal personalized screen carousels
Vankeirsbilck et al. Platform for real-time subjective assessment of interactive multimedia applications
CN114520925A (zh) 视频流处理方法、设备、系统和云端服务器系统
CN107835446A (zh) 媒体状态呈现及控制方法和装置
US20240357208A1 (en) System and method for multi-user digital interactive experience

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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181218

Termination date: 20191203