CN106688240B - 用于记录视频节目的方法、接收装置、服务器装置和系统 - Google Patents

用于记录视频节目的方法、接收装置、服务器装置和系统 Download PDF

Info

Publication number
CN106688240B
CN106688240B CN201580048253.9A CN201580048253A CN106688240B CN 106688240 B CN106688240 B CN 106688240B CN 201580048253 A CN201580048253 A CN 201580048253A CN 106688240 B CN106688240 B CN 106688240B
Authority
CN
China
Prior art keywords
segment
record identifier
remote server
identifier receiver
video program
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.)
Expired - Fee Related
Application number
CN201580048253.9A
Other languages
English (en)
Other versions
CN106688240A (zh
Inventor
D·萨尔托里
P·萨巴蒂尔
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.)
Idemia Identity and Security France SAS
Original Assignee
Idemia Identity and Security France SAS
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 Idemia Identity and Security France SAS filed Critical Idemia Identity and Security France SAS
Publication of CN106688240A publication Critical patent/CN106688240A/zh
Application granted granted Critical
Publication of CN106688240B publication Critical patent/CN106688240B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • 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/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
    • H04N21/4334Recording 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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/632Control 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 using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

用于记录视频节目的方法、接收装置、服务器装置和系统。本发明涉及一种远程地记录视频节目的方法,所述视频节目由必须利用通信网络将所述视频节目记录在远程服务器上的至少一个所谓的“记录”接收器以比特流的形式接收。所述方法由各个记录接收器实现并且针对各个记录接收器包括以下步骤:‑获得(3051)所述视频节目的压缩因子;‑基于所获得的压缩因子将所述比特流分割(3054)成连续片段的集合;‑基于移位值和所述压缩因子从所述连续片段的集合中确定(3055)要发送至所述远程服务器的片段的子集,所述移位值是由所述记录接收器确定的随机数整除所述压缩因子的余数;以及‑将来自所确定的片段的子集的片段发送至所述远程服务器。

Description

用于记录视频节目的方法、接收装置、服务器装置和系统
技术领域
本发明涉及一种用于视频节目的远程记录的方法、能够远程地记录表示视频节目的二进制流的接收装置、能够记录表示视频节目的二进制流的服务器装置以及包括所述服务器装置和至少一个客户端装置的实现所述记录方法的用于记录视频节目的系统。
背景技术
最近几年已看到访问视频节目(或电视节目)的手段的激增以及视频节目的增加。因此,尽管在二十世纪八十年代仅模拟电视广播网络可用,目前个人能够通过诸如TDT(地面数字电视)广播网络和ADSL(不对称数字订户线)以及3G/4G-LTE(第三/第四代)电视广播网络的许多数字电视广播网络访问视频节目。可在诸如电视屏幕、计算机屏幕、数字平板或智能电话的许多显示装置上观看这些视频节目(或电视节目)。视频节目的增加主要是由于表示这些视频节目的数据的数字化。这是因为对于几乎相同的质量,数字化视频节目所需的传输带宽远小于模拟视频节目所需的传输带宽。因此对于恒定的图像质量,数字化使得在相同的通信信道上可发送的数字化视频节目的数量远大于模拟视频节目的数量。
视频节目的数字化包括采样,然后以视听数据压缩格式来压缩表示视频节目的模拟数据。存在包括视频数据压缩格式、音频数据压缩格式以及音频和视频数据复用和同步格式的各种视听数据压缩格式。
H264/AVC格式(ISO/IEC 14496-10–MPEG-4第10部分,高级视频编码/ITU-TH.264)当前是最多用于广播视频节目的压缩格式。然而,此格式将必然被新兴的对分辨率非常高的视频提供更好的压缩性能的HEVC标准(ISO/IEC 23008-2–MPEG-H第2部分,高效视频编码/ITU-T H.265)快速取代。
AAC音频压缩格式(ISO/IEC 13818-7,ISO/IEC 14496-3)非常多地用于压缩音频数据。
MPEG-TS封装格式(ISO/IEC 13818-1)经常特别是由DVB(数字视频广播)和ATSC(高级电视系统委员会)广播标准用于将视频流和音频流封装在同一二进制流中并且确保这些流的同步。
非常常见的是个人希望记录视听节目。用于接收数字化视频节目的许多系统,例如与连接至互联网的家用网关(通常称作互联网盒)关联的数字解码器(通常称作解码器)具有诸如硬盘的用于记录与视频节目对应的二进制流的装置。以下,为了简化,由数字解码器和家用网关组成的组件将被称作“接收器”。接收器的记录装置通常有限,并且无法存储大量的数据。
一个可能的解决方案将是使用接收器的网络容量来在互联网的远程记录服务器(称作“远程服务器”)上保存二进制流。然而,尽管接收器具有与和视频节目对应的二进制流的接收兼容的接收速率,但是接收器具有非常有限的传输速率,无法与在合理的时间内向远程服务器传输二进制流兼容。这里,传输速率被定义为接收器可发送数据的理论最大速率。
发明内容
本发明的目的在于解决上述问题。具体地讲,本发明旨在提出一种使得要在远程服务器上记录相同视频节目的多个接收器能够合作以便记录所述视频节目的用于远程记录视频节目的方法、能够实现所述方法的接收装置和服务器装置、以及包括所述服务器装置和至少一个客户端装置并且实现所述方法的视频节目记录系统。
为此,根据本发明的第一方面,本发明涉及一种记录视频节目的方法,所述视频节目由必须将所述视频节目记录在远程服务器上的至少一个接收器(称作记录接收器)以二进制流的形式接收,各个记录接收器通过通信网络连接至所述远程服务器并且由传输速率表征,所述二进制流由编码速率表征,其特征在于,所述方法由各个记录接收器实现并且对于记录接收器,所述方法包括以下步骤:获得视频节目压缩因子;根据所获得的压缩因子将所述二进制流分割成连续片段的集合;根据偏移值以及与所述压缩因子对应的片段之间的差值从所述连续片段的集合中确定要发送至所述远程服务器的片段的子集,所述偏移值是由所述记录接收器确定的随机数整除所述压缩因子的余数;以及将所确定的片段的子集中的片段传输至所述远程服务器以便保存。
通过在可能时在多个记录接收器之间分配片段的传输,所述方法使得可不使记录接收器的传输速率饱和。
根据一个实施方式,所述压缩因子根据视频节目编码速率、记录接收器的传输速率、要记录视频节目的记录接收器的数量、所述远程服务器所允许的连接的数量和/或由所述记录接收器同时记录的视频节目的数量来计算。
这样,所述片段利用小于或等于记录接收器的传输速率的传输速率来发送,但是可考虑其它参数以便于更好地适应传输速率。
根据一个实施方式,所述压缩因子由所述记录接收器或者由将所述压缩因子发送至所述记录接收器的所述远程服务器计算。
由记录接收器计算压缩因子使得可确保压缩因子确实适合于记录接收器的传输速率。此外,由于远程服务器集中地了解请求节目的所有记录接收器,由远程服务器计算压缩因子允许压缩因子适应记录接收器集合。
根据一个实施方式,根据表示二进制数据的数量的大小测量,所述连续片段的集合中的片段具有固定的大小。
根据一个实施方式,根据表示持续时间的大小测量,所述连续片段的集合中的片段具有固定的大小,所述连续片段的集合中的各个片段与视频节目中固定的时间间隔对应。
使用固定大小的片段有利于重组与视频节目对应的二进制流的步骤。
根据一个实施方式,所述连续片段的集合中的片段根据它们在所述二进制流中出现的顺序来排序,并且当确定要发送至所述远程服务器的所述片段的子集时,所述记录接收器通过从与所述偏移值对应的片段开始遍历所述连续片段的集合,选择所述连续片段的集合中的如下的多个片段,即,该多个片段间隔开等于所述片段之间的差值的数量的片段。
然后,记录接收器仅发送与其传输速率兼容的片段的子集。
根据一个实施方式,在传输所述片段的子集中的片段之前,所述记录接收器向所述远程服务器发送表示所述视频节目的包括所述偏移值、所述压缩因子以及表示所述片段的大小的值的元数据的集合。
元数据的集合等使得远程服务器能够重组所述片段。
根据一个实施方式,当记录接收器被远程服务器告知必须记录所述视频节目的另一记录接收器与相同的偏移值关联时,所述记录接收器中断所述片段的传输。
这样,避免了同一片段无意的多次传输。
根据一个实施方式,所述记录接收器还将所述连续片段的集合中的片段或者所述片段的子集中的片段保存在远程服务器的本地存储单元中。
将所述片段保存在本地存储单元中使得记录接收器例如能够实现显示时移的视频节目的应用。
在一个实施方式中,所述记录接收器周期性地向所述远程服务器发送授权删除片段的请求,并且在接收到对授权删除片段的请求的肯定响应的情况下,删除记录在所述本地存储单元中的片段。
通过将删除片段的决策集中于远程服务器处,远程服务器能够控制所述片段的保存。
根据一个实施方式,在将所述二进制流的至少部分记录在所述远程服务器上之后,所述记录接收器向所述远程服务器发送显示所述视频节目的请求,从所述远程服务器和/或从保存了所述二进制流的片段的至少一个其它记录接收器接收与所述二进制流对应的片段,并且重组所述二进制流以便显示。
因此,远程服务器不是仅有的一个能够对显示记录的视频节目的请求作出响应。这样,可能的话避免了远程服务器的过载。
根据本发明的第二方面,本发明涉及一种记录视频节目的方法,所述视频节目由必须将所述视频节目记录在远程服务器上的至少一个接收器(称作记录接收器)以二进制流的形式接收,各个记录接收器通过通信网络连接至所述远程服务器并且由传输速率表征,所述二进制流由编码速率表征。所述方法在由所述远程服务器实现时包括以下步骤:获得至少一个元数据集合,各个元数据集合由记录接收器发送并且包括偏移值,所述偏移值是由所述记录接收器确定的随机数整除由所述记录接收器获得的压缩因子的余数;在发送所述视频节目的元数据的记录接收器集合中寻找与相同的偏移值关联的记录接收器;针对所接收的各个不同的偏移值向至少一个不同的记录接收器发送传输授权;从接收到传输授权的记录接收器以片段的形式接收二进制流,各个记录接收器根据所述压缩因子将所述二进制流分割成连续片段的集合,并且根据所述偏移值以及与所述压缩因子对应的片段之间的差值从所述连续片段的集合中确定该各个记录接收器发送至所述远程服务器的片段;以及重组所述二进制流以便将所述二进制流保存在所述远程服务器的存储单元中。
因此,远程服务器控制与要记录的视频节目对应的二进制流的记录。
根据一个实施方式,当在针对所接收的各个不同的偏移值从至少一个记录接收器接收到所述片段之后,一些片段的缺少阻止了所述二进制流的重组时,所述远程服务器向至少一个记录接收器发送表示至少一个丢失的片段的信息,以使得发送各个丢失的片段。
因此,远程服务器确保没有片段丢失。
根据一个实施方式,在从记录接收器接收到授权删除片段的请求之后,所述远程服务器向所述记录接收器发送包括要删除的片段的列表的删除授权。
因此,远程服务器控制保存在记录接收器的本地存储单元中的片段的删除。
根据一个实施方式,在针对所接收的各个不同的偏移值对至少一个记录接收器打开连接之前,所述远程服务器等待预定义的周期。
因此,远程服务器确保识别出要记录视频节目的所有记录接收器。
根据一个实施方式,当接收到片段时,各个片段与信息关联,所述信息包括表示所述各个片段在二进制流中的位置的信息以及表示保存所述各个片段的记录接收器的信息。
在一个实施方式中,当在重组所述二进制流之后,所述远程服务器从第一记录接收器接收显示所述视频节目的请求时,所述远程服务器构造列表,该列表针对所述二进制流的至少一个片段指示包括保存所述片段的本地存储单元的至少一个第二记录接收器。
这样,当显示视频节目时,记录接收器可向另一记录接收器而非向远程服务器请求片段,这避免了使远程服务器过载。
根据本发明的第三方面,本发明涉及一种能够远程地记录表示视频节目的二进制流的接收装置,其特征在于,所述接收装置包括:用于获得所述视频节目的压缩因子的装置;用于根据所获得的压缩因子将所述二进制流分割成连续片段的集合的装置;用于根据偏移值以及与所述压缩因子对应的片段之间的差值从所述连续片段的集合中确定要发送至远程服务器装置的片段的子集的装置,所述偏移值是由所述接收装置确定的随机数整除所述压缩因子的余数;用于将所确定的片段的子集中的片段发送至所述远程服务器装置以便保存的装置。
根据本发明的第四方面,本发明涉及一种能够记录表示视频节目的二进制流的服务器装置,所述服务器装置包括:用于获得至少一个元数据集合的装置,各个元数据集合由接收装置发送并且包括偏移值,所述偏移值是由所述接收装置确定的随机数整除由所述接收装置获得的压缩因子的余数;用于在发送所述视频节目的元数据的接收装置的集合中寻找与相同的偏移值关联的接收装置的装置;用于针对所接收的各个不同的偏移值向至少一个不同的接收装置发送传输授权的装置;用于从接收到传输授权的接收装置以片段的形式接收二进制流的装置,各个接收装置根据所述压缩因子将所述二进制流分割成连续片段的集合,并且根据所述偏移值以及与所述压缩因子对应的片段之间的差值从所述连续片段的集合中确定所述各个接收装置发送至所述服务器装置的片段;以及用于重组所述二进制流以便将所述二进制流保存在所述服务器装置的存储单元中的装置。
根据本发明的第五方面,本发明涉及一种用于记录视频节目的系统,该系统包括根据第三方面的至少一个接收装置以及根据第四方面的服务器装置。
根据本发明的第六方面,本发明涉及一种包含指令的计算机程序产品,所述指令用于在所述程序被装置的处理器执行时由所述装置实现根据第一方面的方法或者根据第二方面的方法。
根据本发明的第七方面,本发明涉及一种存储包含指令的计算机程序的存储装置,所述指令用于在所述程序被装置的处理器执行时由所述装置实现根据第一方面的方法或者根据第二方面的方法。
附图说明
上述的本发明的特征以及其它将通过阅读示例实施方式的以下描述来更清楚地显露,关于附图来给出所述描述,附图中:
图1A示意性地示出根据本发明的用于视频节目的远程记录的方法的实现的示例,其中多个接收器合作以便在远程服务器上记录相同的视频节目,
图1B示意性地示出在连接至接收器的显示器上显示保存在远程服务器上的视频节目的实现的第一示例,
图1C示意性地示出在连接至接收器的显示器上显示保存在远程服务器上的视频节目的实现的第二示例,
图2A示意性地示出能够实现根据本发明的远程记录方法的接收装置的硬件架构的示例,
图2B示意性地示出能够实现根据本发明的远程记录方法的远程服务器装置的硬件架构的示例,
图3示意性地描绘由接收器实现的根据本发明远程地记录视频节目的方法的示例,
图4示意性地描绘由接收器实现的用于确定表示要发送至远程服务器的视频节目的二进制流的子部分的方法,
图5示意性地描绘由远程服务器实现的根据本发明远程地记录视频节目的方法的第一示例,
图6示意性地描绘由远程服务器实现的根据本发明远程地记录视频节目的方法的第二示例,
图7示意性地描绘由接收器实现的删除表示视频节目的二进制流的片段的方法的示例,
图8示意性地描绘由远程服务器实现的根据本发明远程地记录视频节目的方法的第三示例,
图9示意性地描绘由接收器实现的在连接至接收器的显示装置上提供记录在远程服务器上的视频节目的显示的方法的示例,
图10示意性地描绘由远程服务器实现的在连接至接收器的显示装置上提供记录在远程服务器上的视频节目的显示的方法的示例。
具体实施方式
图1A示意性地示出根据本发明的用于视频节目的远程记录的方法的实现的示例,其中多个接收器合作以在远程服务器上记录相同的视频节目。以下,能够实现本发明的接收器被称作“记录接收器”。图1A描绘了包括通过诸如互联网的通信网络100连接至远程服务器109的多个记录接收器101至108的网络。视频节目提供商(未示出)向记录接收器101至108发送视频节目的集合。各个记录接收器101至108具有诸如TDT、ADSL、3G或4G接口的用于接收视频节目的接口。这里假设记录接收器101至108的视频节目接收接口全部相同。这样,只要在其传输期间没有错误影响这些二进制流,由各个记录接收器101至108接收的二进制流全部相同。各个记录接收器101至108也具有使得它能够通过通信网络100与远程服务器109通信的网络接口。这里假设所有记录接收器具有相同的网络接口,因此它们具有相同的接收速率和相同的传输速率。此外,各个记录接收器101至108具有诸如硬盘的存储单元以用于保存与视频节目对应的二进制流。
远程服务器109具有:网络接口,用于通过通信网络100与记录接收器101至108通信;诸如一个或更多个硬盘的存储装置,用于存储与视频节目对应的二进制流;以及视频节目数据库,包括各个二进制流的描述性数据(或元数据)。
在图1A中的示例中,记录接收器101至108必须将相同的视频节目记录在远程服务器上。为此,根据下面关于图3描述的方法,各个记录接收器101至108将与视频节目对应的二进制流的多个片段发送至远程服务器,远程服务器继续进行二进制流的重组。与所述多个片段的传输并行,各个记录接收器101至108发送描述视频节目以及所述多个片段的元数据。重组的二进制流被存储在远程服务器的存储单元中。元数据被存储在视频节目数据库中并且与重组的二进制流关联。
图2A示意性地示出能够实现根据本发明的远程记录方法的记录接收装置(称作“记录接收器”)20的硬件架构的示例。记录接收器20与记录接收器101至108相同。记录接收器20包括通过通信总线205连接的:处理器或CPU(中央处理单元)200;随机存取存储器(RAM)201;只读存储器(ROM)202;存储单元203或存储介质读取器,例如SD(安全数字)卡读取器或USB(通用串行总线)密钥或硬盘驱动器(HDD);至少一个接口204,用于与其它装置交换数据。记录接收器20的存储单元具有小尺寸并且仅可存储有限数量的二进制流。在一个实施方式中,接口204使用视频节目接收接口、网络接口以及用于与客户端装置(例如,计算机、平板或智能电话)通信的接口。接口204可例如包括接收与视频节目提供商所发送的视频节目对应的二进制流等的ADSL接口。此外,接口204允许与远程服务器109和其它记录接收器交换数据。另外,用户可使用接口204以用于从客户端装置控制记录接收器20以及例如选择要记录的视频节目。
处理器200能够执行从ROM 202、从外部存储器(未示出)、从存储介质或者从通信网络加载到RAM 201中的指令。当记录接收器20上电时,处理器200能够从RAM 201读取指令并且执行所述指令。这些指令形成计算机程序,该计算机程序使得处理器200实现关于记录接收器20以及图3、图4、图7和图9描述的所有或一些算法和步骤。
图2B示意性地示出能够实现根据本发明的远程记录方法的远程服务器装置(称作“远程服务器”)21的硬件架构的示例。远程服务器21与远程服务器109相同。远程服务器21包括通过通信总线215连接的:处理器或CPU(中央处理单元)210;随机存取存储器(RAM)211;只读存储器(ROM)212;存储单元213或存储介质读取器,例如SD(安全数字)卡读取器或USB(通用串行总线)密钥或硬盘驱动器(HDD);至少一个接口214,用于与其它装置交换数据。远程服务器21的存储单元213具有大尺寸并且使得可存储大量的二进制流以及将元数据与所记录的各个二进制流关联的视频节目数据库。在一个实施方式中,存储单元213可以是在远程服务器21外部并且通过通信网络连接至远程服务器21的远程存储单元。接口214使得可使用并行的多个连接,因此可同时与多个记录接收器交换数据。
处理器210能够执行从ROM 212、从外部存储器(未示出)、从存储介质或者从通信网络加载到RAM 211中的指令。当远程服务器21上电时,处理器210能够从RAM 211读取指令并且执行所述指令。这些指令形成计算机程序,该计算机程序使得处理器210实现关于远程服务器21以及图5、图6、图8和图10描述的所有或一些算法和步骤。
以下描述的所有或一些算法和步骤因此可通过由诸如DSP(数字信号处理器)或微控制器的可编程机器执行指令集合以软件形式实现,或者由诸如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的机器或专用组件以硬件形式实现。
图3示意性地描绘由记录接收器实现的根据本发明的用于视频节目的远程记录的方法的示例。在此示例中我们聚焦于记录接收器101,其实现图3中的方法。然而,我们将在此示例中考虑记录接收器102至108同时实现相同的方法。该方法开始于步骤301,在该步骤期间用户选择要记录在远程服务器109上的视频节目。在步骤302中,记录接收器101向远程服务器发送请求以请求打开连接。例如,记录接收器101请求打开HTTPS(安全超文本传输协议)连接。
在步骤303中,记录接收器101从远程服务器109接收同意打开连接。然后打开连接。
在步骤304中,记录接收器101创建例如XML(可扩展标记语言)格式的元数据。这些元数据包括表示所选择的视频节目的开始时刻的信息、表示所选择的视频节目的结束时刻的信息、标识节目的名称的信息以及表示由视频节目提供商用于将视频节目发送给记录接收器101至108的传输信道的信息。
由于记录接收器101的传输速率不足以允许向远程服务器109传输与所选择的视频节目对应的二进制流,所以记录接收器101仅发送该二进制流的子部分。为此,记录接收器101在步骤305期间根据关于图4描述的方法确定二进制流的哪一子部分要发送给远程服务器109。步骤305的目的在于防止所有记录接收器发送相同的子部分。
在步骤306中,接收器101利用表示在步骤305期间确定的二进制流的子部分的信息来补充元数据。
在步骤307中,记录接收器101开始向远程服务器109传输在步骤305期间确定的二进制流的子部分。
继续传输,只要所确定的子部分没有完全发送或者只要远程服务器没有请求停止传输即可。在步骤307之后,记录接收器101结束连接。
图4示意性地示出与图3的步骤305对应的由记录接收器101实现的用于确定表示要发送至远程服务器的视频节目的二进制流的子部分的方法。该方法开始于步骤3051,在该步骤期间记录接收器101获得压缩因子F。在一个实施方式中,由记录接收器101通过将记录接收器101的传输速率除以视频节目的编码速率来计算压缩因子F。这里我们假设记录接收器知道它所接收的各个视频节目的编码速率。
在步骤3052中,记录接收器101继续进行非零随机正整数A的计算。
在步骤3053中,记录接收器101确定偏移值S(以下说明)。偏移值S被计算为随机数A整除压缩因子F的余数。
在步骤3054中,记录接收器101将与要记录的视频节目对应的二进制流分成连续片段的集合,连续片段的集合中的片段按照所述片段在二进制流中出现的顺序来排序。在一个实施方式中,记录接收器101根据表示二进制数据的数量(即,比特数)的大小的测量将二进制流分成固定大小TB的片段。该大小任意地定义并且在所有记录接收器上相同。
在步骤3055中,记录接收器101确定连续片段的集合中的哪些片段必须被发送至远程服务器109。为此,连续片段的集合中的片段按照它们在二进制流中出现的顺序被解析。记录接收器101将各个片段与该各个片段在连续片段的集合中的位置所对应的索引关联。记录接收器101通过从索引S的片段开始遍历连续片段的集合选择连续片段的集合中的如下的多个片段,即,所述多个片段间隔开数量等于F的片段,即,记录接收器101选择索引I=S+F.x的片段,其中x为正整数或零,使得I小于或等于值N(等于包括在二进制流中的片段的总数)。这样,记录接收器101仅发送连续片段的集合中的N/F个片段的子集。
在步骤3056中,记录接收器101通过在其中插入表示各个片段的大小的信息、表示偏移值S的信息以及如果记录接收器101刚开始计算压缩因子F,表示压缩因子F的值来补充元数据。
在一个实施方式中,记录接收器101将各个片段与包括该各个片段在连续片段的集合中的索引和片段的最大索引的元数据文件相关联。各个元数据文件在发送对应片段时被发送至远程服务器109。
当记录接收器的数量(这里,8)等于压缩因子F并且各个记录接收器101至108已经计算不同的偏移值S时,记录接收器以互补方式动作,并且构成二进制流的所有片段被发送至远程服务器109。
如果记录接收器101至108当中的记录接收器计算相同的偏移值S,则远程服务器109根据关于图5描述的方法防止一些记录接收器继续传输它们的片段以便仅保留计算了所述偏移值S的一个记录接收器。特别是当记录接收器的数量大于压缩因子F时可发生这种情况。
如果记录接收器的数量小于压缩因子F,则存在远程服务器109可能无法接收与要记录的视频节目对应的所有片段的风险。在这种情况下,根据关于图5描述的方法,远程服务器109将请求记录接收器发送丢失的片段。
在一个实施方式中,记录接收器101至108不计算压缩因子F。然后压缩因子F的确定被留给远程服务器109,远程服务器109将压缩因子F发送给记录接收器101至108。关于图8描述由远程服务器109确定压缩因子F的方法的示例。
与各个片段关联的元数据文件使该各个片段本身的传输速率显著增加。在一个实施方式中,为了减小传输速率,记录接收器101不将各个片段与元数据文件关联。在此实施方式中,我们将随后看到远程服务器109必须分析各个片段以便确定按照什么顺序重组二进制流。
在一个实施方式中,记录接收器101至108当中的至少一个记录接收器(例如,记录接收器101)在其存储单元203中保存连续片段的集合中的片段或者连续片段的集合中的N/F个片段的子集中的片段。这些片段可例如按照时间保存以便实现时移服务。
在一个实施方式中,在其存储单元203中保存了片段的记录接收器101实现删除所保存的片段的本地策略(例如,通过删除最老的片段)。
在一个实施方式中,记录接收器101与远程服务器109合作以便根据关于图6和图7描述的方法确定其存储单元中保存的哪些片段可被删除。
在一个实施方式中,记录接收器101根据表示持续时间的大小测量将二进制流分成固定大小TD的片段。该大小任意地定义并且在所有记录接收器上相同。此实施方式需要分析与要保存的视频节目对应的二进制流以便寻找包括在二进制流中的图像。二进制流的分析可基于例如对二进制流中的时间戳的搜索,例如存在于MPEG-TS封装格式中的表现时间戳(PTS)或解码时间戳(DTS)。二进制流中的各个图像与分别指示该各个图像的表现时刻和该各个图像的解码时刻的PTS标记和DTS标记关联。在一个实施方式中,将二进制流分成片段包括基于与图像关联的PTS戳将二进制流分成持续时间TD的连续片段。
在一个实施方式中,记录接收器可同时记录多个视频节目。那么压缩因子F必须适于要记录的节目的数量。例如,如果多个节目被同时记录,则压缩因子F是记录接收器101的传输速率除以要记录的各个视频节目的编码速率之和的结果。
图5示意性地示出由远程服务器109实现的用于视频节目的远程记录的方法的第一示例。在步骤501中,远程服务器109从记录接收器101至108中的一个(例如,记录接收器101)接收连接请求。在步骤502中,远程服务器109允许与记录接收器101连接。
在步骤503中,远程服务器109接收在步骤306期间由记录接收器101发送的元数据。然后,远程服务器109获得视频节目的描述,具体地讲,表示视频节目的开始时间的信息、表示视频节目的结束时间的信息以及由记录接收器101计算的偏移值S。如果还没有从接收自必须记录相同的视频节目的另一记录接收器的元数据计算出它,则远程服务器109从表示视频节目的开始时间的信息和表示视频节目的结束时间的信息计算视频节目的持续时间D。
在步骤504期间,远程服务器109将所接收的偏移值S与可能从要记录相同的视频节目的其它记录接收器(102至108)接收的其它偏移值S进行比较。如果证明记录接收器102至108当中的记录接收器已经发送相同的偏移值S,则在步骤506中,远程服务器109向记录接收器101发送消息以指示它停止在步骤505期间其片段的传输并且释放在步骤502期间打开的连接。记录接收器101已经发送的所有片段被远程服务器109拒绝。
如果没有其它记录接收器发送偏移值S,则远程服务器109实现步骤507。在步骤507期间,远程服务器109接收由记录接收器101发送的片段。
在步骤508中,远程服务器109开始重组与视频节目对应的二进制流。为此,针对视频节目从记录接收器101至109接收的所有片段首尾相连地布置以便形成文件。在一个实施方式中,远程服务器109利用与各个片段关联并且包括所述各个片段的索引的元数据文件来对片段进行排序。此外,在步骤508期间,远程服务器109将描述视频节目的元数据保存在其视频节目数据库中,以及对于各个片段,使得可识别哪一记录接收器发送所述片段的信息。
在步骤509中,远程服务器109检查已接收所有片段。为此,远程服务器109检查实际上已接收到从索引“1”直至片段的最大索引的所有索引。如果情况是这样,则远程服务器109在步骤511期间声明已重组与视频节目对应的二进制流并且在步骤512期间释放将它连接至记录接收器101至108的各个连接。
如果证明索引丢失,则在步骤510期间远程服务器109请求记录接收器101至108中的至少一个发送与丢失的索引对应的片段。步骤510之后是已经说明的步骤509。
可按照各种方式进行重发与丢失的索引对应的片段的请求。
在一个实施方式中,远程服务器109将丢失的索引的列表发送至记录接收器101至109中发送对应片段的一个记录接收器。
在另一实施方式中,知道远程服务器109必须接收F个不同的偏移值以能够重组与视频节目对应的二进制流,如果接收到少于F个不同的值,则远程服务器109确定哪一或哪些偏移值S丢失。丢失的偏移值S被发送至记录接收器101至108当中的至少一个记录接收器,以使得它或它们可确定必须发送哪些片段。与发送片段的索引的列表相比,发送一个或更多个偏移值在速率方面成本较低。
图6示意性地示出由远程服务器109实现的用于远程地记录视频节目的方法的第二示例。关于图6描述的方法通过增加实现删除保存在记录接收器101的存储单元203中的片段的策略的步骤来补充关于图5描述的方法。此方法包括分别与步骤501至506以及508至512相同的步骤601至606以及608至612。步骤507被步骤6071、6072、6073和6074代替。在此方法中假设在步骤603期间接收的元数据包括指示片段是否被保存在记录接收器101的存储单元203中,以及如果情况是这样,哪些片段被保存的信息。这些元数据被存储在远程服务器109的视频节目数据库中。例如,与各个片段关联的元数据文件包含指示该各个片段是否被发送该各个片段的记录接收器保存的信息。
在步骤6071期间,远程服务器109接收片段。在步骤6072中,远程服务器109通过参考与该片段关联的文件来确定该片段是否被保存在记录接收器101的存储单元203中。如果情况不是这样,则远程服务器109在步骤6074期间确定它是否已接收到记录接收器101必须发送的所有片段。如果已接收到要由记录接收器101发送的所有片段,则远程服务器109实现步骤608。或者,记录接收器101等待新的片段并且当接收到新的片段时返回到步骤6071。
如果在步骤6072期间远程服务器109确定所述片段已被记录接收器101保存,则远程服务器109在步骤6073期间发送删除与记录接收器101有关的片段的请求,以便使得从记录接收器101的存储单元203删除相关片段。然后,远程服务器109实现步骤6074。
图7示意性地描绘了由记录接收器101至108中的至少一个(例如,记录接收器101)实现的删除表示视频节目的二进制流的片段的方法的示例。图7的方法是关于图6描述的删除方法的替代。图7的方法与关于图5描述的方法兼容,并且可由记录接收器101在已开始将所述片段发送至远程服务器109之后在任何时刻实现。例如,记录接收器101可在将与视频节目对应的二进制流记录在远程服务器109上之后实现图7的方法。此外,如图6的方法中一样,假设在步骤503期间接收的元数据包括针对各个片段指示该各个片段是否被保存在记录接收器的存储单元203中的信息。这些元数据先前在所述片段被接收时被保存在远程服务器109的视频节目数据库中。
在步骤701中,记录接收器101检查片段是否被存储在其存储单元203中。如果没有片段被存储在存储单元203中,则记录接收器101在步骤706中等待周期T。步骤706使得可按照周期T周期性地检查是否可从存储单元203删除所述片段。
如果片段存在于存储单元203中,则在步骤702期间记录接收器101检查是否处于保存模式。保存模式是记录接收器101的操作模式,其中,记录接收器101必须存储连续片段的集合中的片段或者连续片段的集合中的片段的子集中的片段。在此模式下,存储在存储单元203中的片段无法被删除。例如,可由用户利用连接至记录接收器101的客户端装置激活保存模式。如果记录接收器101处于保存模式,则记录接收器实现步骤706。
如果记录接收器不处于保存模式,则在步骤703中,记录接收器101向远程服务器109发送删除使能请求。如果记录接收器101在小于T的预定义的周期之后没有接收到对其请求的任何响应,则记录接收器101实现步骤706。另一方面,如果记录接收器101接收到对其删除请求的响应,则记录接收器101在步骤705中删除在响应中在由记录接收器101发送的片段的列表中标识的片段。记录接收器101接下来实现步骤706。
对其本身而言,远程服务器109可在开始记录与要记录的节目对应的二进制流之后在任何时间从记录接收器101至109中的一个接收删除使能请求。当它接收到该请求时,它确定哪一或哪些片段可被删除。例如,当删除请求来自记录接收器101时,远程服务器109使用视频节目数据库以便识别由记录接收器101发送的片段,以及在这些片段当中,保存在记录接收器101的存储单元203中的片段。然后,根据预定义的标准,远程服务器109确定哪些片段可被删除。例如,所述预定义的标准可以是时间标准。因此,远程服务器109可发送与最老的片段对应的片段的列表。
在一个实施方式中,所述预定义的标准是冗余保存片段的标准。在此实施方式中,记录接收器101至108当中的多个记录接收器可存储相同的片段。例如,当删除请求产生自记录接收器101时,远程服务器109使用视频节目数据库来识别由记录接收器101发送的片段,以及在这些片段当中,保存在记录接收器101的存储单元203中的也保存在记录接收器102至108当中的至少一个其它记录接收器的存储单元203中的片段。然后,远程服务器109可将与保存在记录接收器102至108当中的至少一个其它记录接收器的存储单元203中的片段对应的要删除的片段的列表发送至记录接收器101。
图8示意性地描绘了由远程服务器109实现的根据本发明的用于视频节目的远程记录的方法的第三示例。在图8中的方法中,由远程服务器109确定压缩因子F。在步骤801中,远程服务器109接收连接打开请求。假设对于图8中的方法的实现方式,当在步骤302期间发送连接打开请求时,各个记录接收器向远程服务器109发送表示要记录的视频节目的信息。在步骤801期间,远程服务器109在继续方法之前等待预定义的周期D以便从最大数量的记录接收器获得对相同视频节目的连接请求。预定义的周期D是例如在请求记录过去的视频节目期间确定的周期。该预定义的周期D使得可确保由用于记录相同视频节目的记录接收器可作出的所有连接请求将在远程服务器109确定压缩因子F之前由远程服务器109接收到。各个连接请求与必须记录视频节目的记录接收器对应,通过对连接请求的数量进行计数,远程服务器109可确定要记录相同节目的记录接收器的总数Nmax。事先知道要记录相同视频节目的记录接收器的数量Nmax使得可确定适合于要记录相同视频节目的记录接收器的数量Nmax的压缩因子F,因此更利于在记录接收器之间分配片段的发送。这样,可利用比记录接收器的传输速率低的传输速率来发送所述片段。
在步骤802中,远程服务器109确定压缩因子F。这里假设远程服务器109知道视频节目的平均速率DV和记录接收器的传输速率DR。然后,远程服务器109选择落在DV/DR和Nmax之间的压缩因子F。然而,如果Nmax大于远程服务器109所接受的连接的数量MAX_C,则远程服务器109选择介于DV/DR和MAX_C之间的压缩因子。此外,在步骤809期间,远程服务器109从要记录相同的视频节目的Nmax个记录接收器选择数量N个记录接收器,数量N小于或等于MAX_C。在一个实施方式中N=F。
在步骤803中,远程服务器109将变量n初始化为“0”。变量n用于遍历所选择的N个记录接收器。在步骤804中,远程服务器109打开与N个记录接收器中的第n记录接收器的连接。在步骤805期间,远程服务器109接收N个记录接收器中的第n记录接收器的元数据。步骤805与步骤503相同。
在步骤806中,远程服务器109确定在元数据中接收的偏移值S是否已经用于另一记录接收器。步骤806与步骤504相同。如果偏移值S已经被使用,则步骤806之后是步骤807和步骤808(分别与步骤505和506相同)。
步骤808之后是步骤810,在步骤810期间远程服务器109针对N个记录接收器测试是否已打开连接。如果情况不是这样,则在步骤811期间将变量n增加一个单位并且远程服务器109再一次实现步骤804。
如果偏移值S还未被使用,则在与步骤507相同的步骤809期间,远程服务器109从第n连接所涉及的记录接收器接收片段。步骤809之后是步骤810。
当N个连接已被打开并且已接收到与这些连接对应的片段时,远程服务器109在步骤812期间继续重组与视频节目对应的二进制流。在关于图8描述的示例方法中,我们假设所述片段在没有指示所述片段在二进制流中的位置的元数据文件的情况下发送。另外,根据与周期对应的大小的测量,我们假设所述片段具有固定的大小TD。在这种情况下,远程服务器109必须继续分析各个片段以便重组二进制流。因为在基于固定的大小TD将二进制流分成片段期间,重组可基于对所述片段中的PTS戳的搜索。然后,所述片段根据它们所包含的PTS戳来排序并且被组装以重组二进制流。
在步骤813中,远程服务器109确定二进制流是否完成。为此,远程服务器109利用表示所选择的视频节目的开始时刻的信息以及表示的所选择的视频节目的结束时刻的信息来计算视频节目的持续时间,然后遍历所接收的所有片段以便利用PTS来确定所述片段是否连续地覆盖该持续时间。
如果已接收所有片段,则在步骤815期间远程服务器109在其视频节目数据库中针对各个片段存储表示所述片段在视频节目中所覆盖的时段的信息(例如,所述片段的开始时刻和结束时刻)。此外,在步骤815期间,远程服务器109将重组的二进制流记录在其存储单元213中。
在步骤816中,远程服务器109注意到二进制流被完整地保存并且与视频节目有关的所有元数据已被保存在数据库中。在步骤817中,远程服务器109释放在步骤814期间打开的连接。
如果在步骤813期间证明片段丢失,则在步骤814期间,远程服务器109例如通过向记录接收器101至108中的至少一个发送表示视频节目中未被所接收的片段覆盖的时间段的信息来对丢失的片段作出请求。
直到此刻,我们考虑了与记录接收器所接收的视频节目对应的二进制流没有错误地接收。然而,常见的是在视频节目供应商与记录接收器之间传输这些二进制流期间发生错误。在二进制流中可发生两种类型的错误。所述错误可导致损失二进制流的片段或者接收包括比特颠倒的二进制流的片段。当二进制流被分成片段时,接收到受错误影响的比特流的记录接收器有创建包含错误的片段的风险。
在一个实施方式中,各个记录接收器能够检测它接收的二进制流中的错误。例如,记录接收器所接收的各个二进制流片段与用于确定所述片段是否错误的校验和关联。在这种情况下,记录接收器仅针对所接收的不包含任何错误的二进制流片段创建片段。如例如利用步骤813和814看出的,远程服务器109能够检测丢失的片段并且请求添加。
在一个实施方式中,记录接收器无法检测错误。在此实施方式中,远程服务器109能够检测所接收的片段中的错误。在此实施方式中假设各个片段与整数个图像对应并且各个图像被分解为数量固定并且远程服务器109已知的宏块或CTB(编码树块)。可指出,术语宏块(以及术语CTB)是H.264/AVC标准(以及H.265/HEVC标准)中所使用的与图像的正方形或矩形像素块对应的术语。对于片段中所接收的各个图像,远程服务器109包括若干解码的宏块或CTB。当解码的宏块或CTB的数量不同于宏块或CTB的固定数量时,远程服务器109声明所述片段包含错误。然后,所接收的包含错误的该片段被远程服务器109拒绝并且由记录接收器重新请求。
在一个实施方式中,远程服务器109可在所接收的片段中创建冗余以避免必须重新请求错误的片段。在该实施方式中,远程服务器109通过在步骤802期间在要记录相同的视频节目的Nmax个记录接收器当中选择N>FI个记录接收器使得比所需更多的记录接收器能够发送片段。在一个实施方式中,N=2.F。这样,一些记录接收器使用相同的偏移值S并且发送相同的片段。远程服务器109在接收相同的片段时在所接收的片段当中寻找没有错误的片段。一旦找到没有错误的片段,远程服务器109就仅保留该片段,与该片段相同的片段被拒绝。
记录视频节目的一个目的是能够稍后观看视频节目。图1B示意性地示出在连接至记录接收器101的显示器110上观看保存在远程服务器109上的视频节目的使用的第一示例。在此示例中,记录接收器101已向远程服务器109请求观看视频节目。作为响应,根据关于图9和图10描述的方法,远程服务器109发送列表,该列表针对与视频节目对应的二进制流的各个片段包含向记录接收器101指示记录接收器102至108和远程服务器109当中应该向哪里请求所述片段的信息。在此示例中,仅远程服务器109具有所述片段。因此,记录接收器101从远程服务器109接收所有片段。
图1C示意性地示出在连接至记录接收器101的显示器110上观看保存在远程服务器109上的视频节目的实现的第二示例。在该第二示例中,记录接收器103、104和108已保存与要观看的视频节目对应的二进制流的片段。因此,远程服务器109向记录接收器101指示可从记录接收器103、104和108获得哪些片段。从远程服务器109获得还未被记录接收器103、104和108保存的丢失片段。因此,记录接收器101从记录接收器103、104和108以及从远程服务器109接收所有片段,这使得可不使远程服务器109过载。
图9示意性地描绘了由记录接收器(例如,记录接收器101)实现的在连接至记录接收器101的显示装置110上显示记录在远程服务器109上的视频节目的方法的示例。针对图9的方法,而且针对图10的方法,假设记录接收器102至108当中的一些记录接收器已将片段保存在其存储单元203中并且远程服务器109在其数据库中已针对各个片段保存指示记录接收器101和108以及远程服务器109当中的哪一个具有所述片段的信息。在一个实施方式中,远程服务器109系统地拥有所有片段。
在步骤901中,记录接收器101打开与远程服务器109的连接。在步骤902中,记录接收器101向远程服务器109请求显示视频节目。在步骤903中,记录接收器101接收列表,该列表指示对于与要显示的视频节目对应的二进制流的各个片段,指示所述片段对应于视频节目的哪一时段或所述片段的索引的信息以及指示在哪里找到所述片段的信息
在步骤904中,如果记录接收器101所接收的列表指示将必须向记录接收器102至108当中的至少一个其它记录接收器(例如,记录接收器102)请求一些片段,则记录接收器101打开与至少一个其它记录接收器(这里,记录接收器102)的连接。
在步骤905中,记录接收器101通过将表示时间的变量t固定为0来使时钟开始。变量t表示视频节目中的时刻。
在步骤906中,记录接收器101使用在步骤903期间接收的列表来确定谁具有与时刻t对应的片段。在步骤904期间,记录接收器101根据步骤906的结果向记录接收器101或者向远程服务器109发送对与时刻t对应的片段的请求。在步骤908期间,记录接收器101接收所请求的片段。
在步骤909期间,记录接收器101通过将时刻t的值增加片段TD的大小的值来转到随后的片段。如果在步骤910期间时刻t还未达到视频节目的持续时间D,则记录接收器101返回到步骤907。
如果时刻t大于节目的持续时间D,则记录接收器101转到在步骤911期间重组二进制流并且在步骤912期间显示视频节目。
在可随步骤912之后或者在步骤911和912期间实现的步骤913期间,记录接收器101释放在步骤901(以及步骤904)期间打开的连接。
图10示意性地示出由远程服务器109实现的允许在连接至记录接收器101的显示装置110上显示记录在远程服务器109上的视频节目的方法的示例。
在步骤1001中,远程服务器109打开与记录接收器(例如,记录接收器101)的连接。在步骤1002中,远程服务器109接收显示节目的请求。为此,记录接收器101向远程服务器1109发送了表示要显示的节目的信息。
在步骤1003中,远程服务器109确定用于将所述片段发送至记录接收器101的记录接收器的数量K。数量K的记录接收器的选择可基于在记录接收器之间分配传输负载的标准。目的是不独占记录接收器的整个传输速率以使得另一接收器可显示视频节目,而是使用多个记录接收器的传输速率的小部分。
在步骤1004中,远程服务器109确定除了它之外记录接收器101至108当中谁具有与要显示的视频节目对应的片段。为此,它遍历存储在其视频节目数据库中的与要显示的视频节目对应的元数据并且寻找具有要显示的视频节目的片段的K个记录接收器。针对所识别的各个记录接收器,远程服务器109确定该记录接收器是否已经参与片段的重传。不重用已经参与片段的重传的记录接收器。
在步骤1005期间,远程服务器109检查被识别为能够发送所请求的节目的片段的数量k的记录接收器。如果k<K,则所识别的记录接收器的数量k小于要使用的记录接收器的数量k,远程服务器109用它自己代替K-k个丢失的记录接收器。因此,远程服务器109参与传输用于显示记录接收器101所请求的视频节目的片段。在特定情况下,如果没有记录接收器具有所请求的视频节目的片段,则远程服务器109是仅有的一个发送所述片段。
在步骤1006之后,如果已识别出能够发送与所请求的视频节目对应的片段的至少K个记录接收器,则远程服务器109实现步骤1007,在步骤1007期间它创建列表,该列表针对与所请求的节目对应的二进制流的各个片段包含指示所述片段对应于视频节目的哪一时段或者所述片段的索引的信息以及指示在哪里找到所述片段的信息。该列表对应于记录接收器101在步骤903期间接收的列表。
在步骤1008期间,将列表发送至记录接收器101以使得它可继续图9中的方法的实现。
在一个实施方式中,如果在步骤1004期间识别出能够发送与要显示的视频节目对应的片段的超过K个记录接收器,则远程服务器109随机地指定它们中的K个。
在一个实施方式中,如果在步骤1004期间识别出能够发送与要显示的视频节目对应的片段的超过K个记录接收器,则远程服务器109以记录接收器之间的距离为标准指定它们中的K个。选择最靠近记录接收器101的记录接收器。通过对要经过以使得这两个记录接收器可通信的路由器的数量进行计数来计算两个记录接收器之间的距离。如果为了在两个记录接收器之间通信而要经过的路由器的数量较少,则声明两个记录接收器靠近。
在一个实施方式中,如果在步骤1004期间识别出能够发送与要显示的视频节目对应的片段的超过K个记录接收器,则远程服务器109指定它们中属于相同互联网接入提供商的K个。优选属于订阅相同互联网接入提供商的用户的记录接收器。

Claims (18)

1.一种记录视频节目的方法,所述视频节目由必须将所述视频节目记录在远程服务器上的每一个均被称作记录接收器的至少一个接收器以二进制流的形式接收,各个记录接收器通过通信网络连接至所述远程服务器并且具有一传输速率,所述二进制流已经根据编码速率来编码,其特征在于,所述方法由各个记录接收器实现并且对于所述至少一个接收器中的一个,所述方法包括以下步骤:
-获得(3051)被称作压缩因子的值,所述压缩因子被所述记录接收器用来确定所述二进制流的哪一子部分将被发送到所述远程服务器,所述压缩因子是使用表示将记录的所述视频节目的编码速率的值和表示所述记录接收器的传输速率的值来计算的;
-将所述二进制流分割(3054)成固定大小的连续片段的集合并且根据所述片段在所述二进制流中出现的顺序来对所述片段进行排序;
-通过在所述连续片段的集合中选择如下的多个片段,即,该多个片段间隔开等于所述压缩因子的数量的片段,从所述连续片段的集合中确定(3055)要发送至所述远程服务器的片段的子集,所述连续片段的集合从与偏移值对应的片段解析,所述偏移值是由所述记录接收器确定的随机数整除所述压缩因子的余数;以及
-将所确定的片段的子集中的片段传输(307)至所述远程服务器以便保存,如果另一记录接收器已经将相同偏移值发送至所述远程服务器,则所述远程服务器禁止所述传输。
2.根据权利要求1所述的方法,其特征在于:所述压缩因子也使用要记录所述视频节目的记录接收器的数量、所述远程服务器所允许的连接的数量和/或由所述记录接收器同时记录的视频节目的数量来计算。
3.根据权利要求2所述的方法,其特征在于:针对各个记录接收器,所述压缩因子由所述记录接收器或者由将所述压缩因子发送至所述记录接收器的所述远程服务器计算。
4.根据权利要求1所述的方法,其特征在于:根据表示二进制数据的数量的大小测量来测量所述片段的大小。
5.根据权利要求1所述的方法,其特征在于:根据表示持续时间的大小测量来测量所述片段的大小,所述连续片段的集合中的各个片段与所述视频节目中的固定时间间隔对应。
6.根据权利要求1所述的方法,其特征在于:在传输所述片段的子集中的片段之前,所述记录接收器向所述远程服务器发送(306)表示所述视频节目的包括所述偏移值、所述压缩因子以及表示所述片段的大小的值的元数据的集合。
7.根据权利要求6所述的方法,其特征在于:所述记录接收器还将所述连续片段的集合中的片段或者所述片段的子集中的片段记录在所述远程服务器的本地存储单元中。
8.根据权利要求7所述的方法,其特征在于:所述记录接收器周期性地向所述远程服务器发送(703)授权删除片段的请求,并且在接收到对授权删除片段的请求的肯定响应的情况下,删除记录在所述本地存储单元中的片段。
9.根据权利要求7所述的方法,其特征在于:在将所述二进制流的至少部分记录在所述远程服务器上之后,所述记录接收器向所述远程服务器发送(902)显示所述视频节目的请求,从所述远程服务器和/或从保存了所述二进制流的片段的至少一个其它记录接收器接收(908)与所述二进制流对应的所述片段,并且重组(911)所述二进制流以便显示。
10.一种记录视频节目的方法,所述视频节目由必须将所述视频节目记录在远程服务器上的记录接收器的集合中被称作记录接收器的接收器以二进制流的形式接收,各个记录接收器通过通信网络连接至所述远程服务器并且具有传输速率,所述二进制流已经根据编码速率被编码,所述方法在由所述远程服务器实现时包括以下步骤:
-获得(503)至少一个元数据集合,各个元数据集合由所述记录接收器中的一个发送并且包括偏移值,所述偏移值是由所述记录接收器确定的随机数整除由所述记录接收器获得的被称为压缩因子的值的余数,所述压缩因子被所述记录接收器用来确定所述二进制流的哪一子部分将被发送到所述远程服务器,所述压缩因子是使用表示将记录的所述视频节目的编码速率的值和表示所述记录接收器的传输速率的值来计算的,-在发送所述视频节目的元数据的记录接收器的集合中寻找(504)与相同的偏移值关联的记录接收器以针对各个接收的偏移值保留单个接收器,
-从保留的各个记录接收器以片段的形式接收(507)所述二进制流,各个记录接收器将所述二进制流分割在固定大小的连续片段的集合中并且根据所述片段在所述二进制流中出现的顺序来对所述片段进行排序,并且通过在所述连续片段的集合中选择如下的多个片段,即,该多个片段间隔开等于所述压缩因子的数量的片段,并且通过从与所述偏移值对应的片段解析所述连续片段的集合,确定要发送的片段,以及
-重组(508)所述二进制流以便将所述二进制流保存在所述远程服务器的存储单元中。
11.根据权利要求10所述的方法,其特征在于:当在针对所接收的各个不同的偏移值从一个记录接收器接收到所述片段之后,一些片段的缺少阻止了所述二进制流的重组时,所述远程服务器向至少一个记录接收器发送(510)表示至少一个丢失的片段的信息,以使得发送各个丢失的片段。
12.根据权利要求10所述的方法,其特征在于:在从所述记录接收器接收到授权删除片段的请求之后,所述远程服务器向该记录接收器发送包括要删除的片段的列表的删除授权。
13.根据权利要求10所述的方法,其特征在于:在针对所接收的各个不同的偏移值对一个记录接收器打开连接(804)之前,所述远程服务器等待(801)预定义的周期。
14.根据权利要求10所述的方法,其特征在于:当接收到片段时,各个片段与描述符关联,该描述符包括表示所述各个片段在所述二进制流中的位置的信息以及表示发送所述各个片段的所述记录接收器的信息。
15.根据权利要求14所述的方法,其特征在于:当在重组所述二进制流之后,所述远程服务器从第一记录接收器接收显示所述视频节目的请求时,所述远程服务器构造列表,该列表针对所述二进制流的至少一个片段指示包括保存所述片段的本地存储单元的至少一个第二记录接收器。
16.一种能够将表示视频节目的二进制流远程地记录在远程服务器上的接收装置,其特征在于,所述接收装置包括:
-用于获得(3051)被称作压缩因子的值的装置,所述压缩因子被所述接收装置用来确定所述二进制流的哪一子部分将被发送到所述远程服务器,所述压缩因子是使用表示将记录的所述视频节目的编码速率的值和表示所述接收装置的传输速率的值来计算的,
-用于将所述二进制流分割(3054)成固定大小的连续片段的集合并且根据所述片段在所述二进制流中出现的顺序来对所述片段进行排序的装置,
-用于通过在所述连续片段的集合中选择如下的多个片段,即,该多个片段间隔开等于所述压缩因子的数量的片段,并且通过从与偏移值对应的片段解析所述连续片段的集合,从所述连续片段的集合中确定(3055)要发送至所述远程服务器的片段的子集的装置,所述偏移值是由所述接收装置确定的随机数整除所述压缩因子的余数,
-用于将所确定的片段的子集中的片段发送(307)至所述远程服务器以便保存的装置,如果另一接收装置已经将相同偏移值发送至所述远程服务器,则所述远程服务器禁止所述传输。
17.一种能够记录表示视频节目的二进制流的服务器装置,其特征在于,所述服务器装置包括:
-用于获得(503)至少一个元数据集合的装置,各个元数据集合由接收装置的集合中的接收装置发送并且包括偏移值,所述偏移值是由所述接收装置确定的随机数整除由所述接收装置获得的被称作压缩因子的值的余数,所述压缩因子被所述接收装置用来确定所述二进制流的哪一子部分将被发送到所述服务器装置,所述压缩因子是使用表示将记录的所述视频节目的编码速率的值和表示所述接收装置的传输速率的值来计算的,
-用于在发送所述视频节目的元数据的所述接收装置的集合中寻找(504)与相同的偏移值关联的接收装置以针对各个接收的偏移值保留单个接收器的装置,
-用于从保留的各个接收装置以片段的形式接收(507)所述二进制流的装置,各个接收装置根据所述压缩因子将所述二进制流分割成固定大小的连续片段的集合,根据所述片段在所述二进制流中出现的顺序来对所述片段进行排序,并且通过在所述连续片段的集合中选择如下的多个片段,即,该多个片段间隔开等于所述压缩因子的数量的片段,确定要发送至所述服务器装置的片段,所述连续片段的集合从与偏移值对应的片段解析,以及
-用于重组(508)所述二进制流以便将所述二进制流保存在所述服务器装置的存储单元中的装置。
18.一种用于记录视频节目的系统,该系统包括至少一个根据权利要求16所述的接收装置以及根据权利要求17所述的服务器装置。
CN201580048253.9A 2014-07-08 2015-07-07 用于记录视频节目的方法、接收装置、服务器装置和系统 Expired - Fee Related CN106688240B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1456571 2014-07-08
FR1456571A FR3023665B1 (fr) 2014-07-08 2014-07-08 Procede et dispositif d'enregistrement a distance de programmes video.
PCT/EP2015/065416 WO2016005353A1 (fr) 2014-07-08 2015-07-07 Procédé et dispositif d'enregistrement à distance de programmes vidéo

Publications (2)

Publication Number Publication Date
CN106688240A CN106688240A (zh) 2017-05-17
CN106688240B true CN106688240B (zh) 2019-11-05

Family

ID=52358835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580048253.9A Expired - Fee Related CN106688240B (zh) 2014-07-08 2015-07-07 用于记录视频节目的方法、接收装置、服务器装置和系统

Country Status (6)

Country Link
US (1) US10264307B2 (zh)
EP (1) EP3167617B1 (zh)
CN (1) CN106688240B (zh)
BR (1) BR112017000329A2 (zh)
FR (1) FR3023665B1 (zh)
WO (1) WO2016005353A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3068552B1 (fr) 2017-06-28 2021-04-02 Tdf Procede de reception de contenus audio dans un recepteur hybride et reproduction en differe, recepteur et programme associe au procede
FR3068554B1 (fr) * 2017-06-28 2020-07-17 Tdf Procede de transmission d'un contenu audio interrompu dans un recepteur hybride, systeme, recepteur et programme associe au procede
US10375441B2 (en) 2017-12-28 2019-08-06 Dish Network L.L.C. Locally generated spot beam replacement
US10820023B2 (en) 2017-12-28 2020-10-27 Dish Network L.L.C. Remotely generated encoding metadata for local content encoding
US20220216952A1 (en) * 2019-04-25 2022-07-07 Panasonic Intellectual Property Corporation Of America Terminal, base station, receiving method, and transmitting method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102740156A (zh) * 2011-04-11 2012-10-17 深圳创维数字技术股份有限公司 一种机顶盒的节目回放实现方法、机顶盒、服务器及系统
CN103596036A (zh) * 2013-11-12 2014-02-19 浪潮齐鲁软件产业有限公司 一种流媒体播放器智能缓冲方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028329B1 (en) * 2000-10-13 2006-04-11 Seiko Epson Corporation Remote accessible programming
US7930723B2 (en) * 2005-04-28 2011-04-19 Microsoft Corporation Downloading previously aired programs using peer-to-peer networking
WO2008113948A1 (fr) * 2007-02-26 2008-09-25 France Telecom Procede d'enregistrement distribue d'un flux multimedia, dispositif, et produit programme d'ordinateur correspondant
KR20140033312A (ko) * 2010-10-21 2014-03-18 홀리브레인 비브이비에이 인간 경험과 구매 행동의 신경심리학적 모델링을 위한 방법 및 장치
WO2013001325A1 (en) * 2011-06-29 2013-01-03 Thomson Licensing Managing common content on a distributed storage system
EP3140994B1 (en) * 2014-05-06 2022-03-16 TiVo Solutions Inc. Cloud-based media content management

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102740156A (zh) * 2011-04-11 2012-10-17 深圳创维数字技术股份有限公司 一种机顶盒的节目回放实现方法、机顶盒、服务器及系统
CN103596036A (zh) * 2013-11-12 2014-02-19 浪潮齐鲁软件产业有限公司 一种流媒体播放器智能缓冲方法

Also Published As

Publication number Publication date
US10264307B2 (en) 2019-04-16
FR3023665A1 (fr) 2016-01-15
CN106688240A (zh) 2017-05-17
FR3023665B1 (fr) 2016-08-19
US20170171586A1 (en) 2017-06-15
BR112017000329A2 (pt) 2017-11-07
EP3167617B1 (fr) 2019-08-28
WO2016005353A1 (fr) 2016-01-14
EP3167617A1 (fr) 2017-05-17

Similar Documents

Publication Publication Date Title
CN106688240B (zh) 用于记录视频节目的方法、接收装置、服务器装置和系统
US10687122B2 (en) Concept for determining the quality of a media data stream with varying quality-to-bitrate
TWI519147B (zh) 提供與傳送複合濃縮串流之方法以及系統
US9462307B2 (en) ABR live to VOD system and method
US11700431B2 (en) Policy based transcoding
Krishnappa et al. Optimizing the video transcoding workflow in content delivery networks
WO2016054916A1 (zh) 视频内容的推荐、评价方法及装置
EP3493547B1 (en) Video streaming delivery
CA3122639A1 (en) Method and apparatus for transmitting media data in multimedia transport system
CN110460871A (zh) 直播视频的生成方法、装置、系统及设备
CN106657143A (zh) 一种流媒体传输方法、装置、服务器及终端
CN104584571A (zh) 在机顶盒处产生音频指纹序列
CA2842810C (en) Fragmenting media content
CN104378259A (zh) 质量统计的收集方法和质量统计的收集的相应管理方法
CN109792547A (zh) 观看者重视度自适应比特率传送
CN111629283B (zh) 一种多流媒体网关服务系统及方法
KR20130088036A (ko) 하이브리드 전송 메커니즘
CN105812961B (zh) 自适应流媒体处理方法及装置
US8204987B2 (en) Providing reports of received multimedia programs
CN105916011A (zh) 视频实时播放方法及装置
CN101969447A (zh) 一种提供流媒体服务的方法和系统
CN112929677A (zh) 直播视频的回看方法、装置和服务器
Nguyen et al. CADLAD: Device-aware bitrate ladder construction for HTTP adaptive streaming
da Silva et al. Analysis of mobile-live-users of a large cdn
CN106303503A (zh) 一种判定mpeg2-ts vbr码流质量的方法

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: 20191105

Termination date: 20210707