WO2011026333A1 - 一种流媒体的传输方法、视频播放装置及终端 - Google Patents

一种流媒体的传输方法、视频播放装置及终端 Download PDF

Info

Publication number
WO2011026333A1
WO2011026333A1 PCT/CN2010/072134 CN2010072134W WO2011026333A1 WO 2011026333 A1 WO2011026333 A1 WO 2011026333A1 CN 2010072134 W CN2010072134 W CN 2010072134W WO 2011026333 A1 WO2011026333 A1 WO 2011026333A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
time
frames
interval
played
Prior art date
Application number
PCT/CN2010/072134
Other languages
English (en)
French (fr)
Inventor
赵国强
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2011026333A1 publication Critical patent/WO2011026333A1/zh

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/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
    • H04N21/234381Processing 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 by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping

Definitions

  • the present invention relates to the field of IPTV (Interactive Personal Televison) terminals, and more particularly to a flow of various trick operations such as fast forward rewind and position playback by searching for an I frame index on an IPTV set top box.
  • IPTV Interactive Personal Televison
  • the local time shift is a service description of the set top box.
  • the multimedia stream of the channel is recorded in the set top box, and the user can perform the trick mode in the time shift time range (trick mode, fast forward, The general name for rewinding, pausing, positioning playback, slow playback, etc.) Operation, the content played in trick mode is the content on the set-top box storage medium.
  • the set-top box plays local recorded media files when it implements local time shifting (which can play back programs a few hours ago).
  • IPTV cannot play continuous pictures like PVR (Personal Video Recorder), such as: playing 4X 6M stream, you need 24M Bandwidth, so only certain frames can be selected for playback.
  • PVR Personal Video Recorder
  • playing with I frames is the only choice, because I frames do not need other reference frames and can be decoded independently. Therefore, when fast forward and rewind, only I frames are sent, no longer sent.
  • the strategy for selecting an I frame is as follows: When the speed is 2 n, the n-1 frames will be skipped for transmission. Until the number of I frames is insufficient, the last I frame will be sent out, and then the RTSP will be sent (Real Time).
  • Both slice 1 and slice 2 are the source of the 2 minutes broadcast at normal playback speed. There are 180 I frames in slice 1 and 200 I frames in slice 2. When playing at 2X speed, it should be After 1 minute of playback (if it is 4X, it should be played in 30 seconds; 8X is 15 seconds, and so on).
  • the technical problem to be solved by the present invention is to provide a streaming media transmission method, a video playback device, and a terminal, so that the playback time during fast forward and rewind is consistent with the theoretical time.
  • the present invention provides a method for transmitting a streaming media, including: setting a number of I frames to be sent in a unit time during fast forward and fast reverse, and calculating a transmission interval of adjacent I frames; When entering or rewinding, multiplying the transmission interval time of the adjacent I frame by the current transmission multiple speed of the streaming media, and calculating the interval time of the I frame to be taken; according to the interval of the I frame to be taken in the slice Find the I frame to play in the source;
  • the step of searching for the I frame to be played in the source according to the interval of the I frame to be fetched comprises: reading the display timestamp of the first I frame of the slice where the current playback position is located (PTS Calculating a theoretical play time of each I frame to be fetched based on the interval between the PTS of the first I frame and the I frame to be fetched; searching in the slice according to the theoretical play time
  • the matched I frame is used as the I frame to be played.
  • the I frame in the slice that matches the theoretical play time is an I frame whose I frame offset recorded in the slice is closest to and greater than the theoretical play time.
  • the streaming medium is set to transmit 3 I frames per second during fast forward and fast rewind.
  • one I frame to be played is sent every other interval of the adjacent I frame.
  • the present invention provides a video playback apparatus, including an I frame number setting module, a calculation module, a lookup I frame module, and a sending module, which are sequentially connected, wherein: the I frame number setting module is set to: Set the number of I frames to be sent in the unit time of the fast forward and fast rewind; the calculation module is configured to: calculate the adjacent number according to the number of I frames sent in the unit time set by the I frame number setting unit The interval of the I frame is multiplied by the current transmission time of the adjacent I frame to obtain the interval of the I frame to be fetched; the lookup I frame module is set to: The interval of the I frame is found in the source of the I frame to be played, and the found I frame to be played is sent to the sending module; the sending module is configured to: send the found I frame to be played .
  • the lookup I frame module comprises: a reading unit, a playing time calculating unit and a searching unit, wherein:
  • the reading unit is configured to: read a display timestamp (PTS) of the first I frame of the slice where the current playback position is located, and read the I frame to be played by the search unit and send the I frame Sending to the sending module;
  • the playing time calculating unit is configured to: calculate a theoretical playing time of each I frame to be fetched based on a PTS of the first I frame and an interval of the I frame to be fetched;
  • the searching unit is configured to: find a matching I frame in the slice according to the theoretical play time, and use the I frame as an I frame to be played.
  • the I frame in the slice that matches the theoretical play time is an I frame whose I frame offset recorded in the slice is closest to and greater than the theoretical play time.
  • the I frame number setting module is further configured to: stream media in fast forward and rewind units The number of I frames sent during the time is set to send 3 I frames per second.
  • the sending module is further configured to: send one I frame to be played every interval of the sending interval of the adjacent I frame.
  • the present invention provides a terminal, including the above video playback apparatus.
  • the method for transmitting streaming media, the video playing device and the terminal provided by the invention can make the playing time of fast forward and fast rewind coincide with the theoretical time, and the function of fast forward and fast backward is fully realized.
  • FIG. 1 is a schematic diagram of a video playback apparatus according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a streaming media transmission method according to an embodiment of the present invention.
  • the video playback apparatus of this embodiment includes an I frame number setting module 11, a calculation module 12, a lookup I frame module 13, and a transmission module 14. , among them,
  • the I frame number setting module 11 is configured to: set the number of I frames to be sent by the streaming media per unit time during fast forward and fast rewind, for example, set the streaming media to send 3 I frames per second during fast forward and rewind.
  • the calculation module is configured to: calculate a transmission interval time of the adjacent I frame according to the number of I frames sent per unit time, for example, 1/3 second; multiply the transmission interval time of the adjacent I frame by the transmission multiple speed to obtain The interval between I frames, for example, when data is transmitted at 4 times, the interval of I frames to be fetched is 1/3 second ⁇ 4.
  • the lookup I frame module 13 is configured to: find an I frame to be played in the slice source according to the interval of the I frame to be fetched, and send the found I frame to be played to the sending module 14.
  • the search I frame module 13 specifically includes: a reading unit 131 and a theoretical playing time calculating unit 132. And a search unit 133, wherein the reading unit 131 is configured to: the PTS of the first I frame of the slice where the current playback position is located, the I frame to be played by the search unit 133, and send the I frame to the sending module.
  • the playing time calculation unit 132 is configured to: calculate a theoretical playing time of each I frame to be fetched based on the PTS of the first I frame and the interval of the I frame to be fetched; the searching unit 133 is configured to Finding a matching I frame in the fragment according to the theoretical playing time, and using the I frame as an I frame to be played, where an I frame matching the theoretical playing time in the fragment refers to the The I frame offset recorded in the slice is closest to and larger than the I frame of the theoretical play time.
  • the sending module 14 is configured to: send the I frame to be played, and specifically, send one I frame to be played every interval of the sending interval of the adjacent I frame.
  • the present invention also provides a terminal comprising the above video playback device.
  • the terminal can be a set top box, such as an IPT V set top box.
  • a method for transmitting a streaming media according to an embodiment of the present invention includes: Step 1: setting a unit of streaming media in fast forward and rewind When the number of I frames is transmitted in the time, the transmission interval of the adjacent I frames can be obtained, and the unit time is divided by m. It can be set to send 3 I frames per second during fast forward and rewind. This is an experience value, and the interval between adjacent I frames is 1/3 second. If the number of I frames sent per second is less than 3, the picture performs poorly in terms of fluency; if it is greater than 3, the gain for the effect is not large.
  • Step 2 Calculate the interval of the I frame to be fetched.
  • the interval of the I frame to be fetched is the transmission interval time of the adjacent I frame multiplied by the current transmission speed of the streaming media. For example, if the number of I frames sent per second is 3, the interval between adjacent I frames is 333 milliseconds, that is, one I frame is sent every 333 milliseconds;
  • the transmission speed (speed) is, for example, 2, 4, 8, etc. 2 n power; the interval of the I frame to be fetched should be 333 milliseconds multiplied by speed.
  • step 3 find the I frame.
  • step 1 and step 2 it is known that the interval time of each I frame to be found is plus the PTS (resentation time stamp) of the first I frame of the slice where the current playback position is located.
  • PTS transmission time stamp
  • the PTS of the first I frame of the slice in which the current playback position is located can be easily read from the slice of the source.
  • the I frame can be searched by the slice index file and the I frame index file, wherein the slice index file includes several fragments of the slice source, the name of the slice, the position of the slice on the disk, and the corresponding of each slice.
  • the name of the I frame index file and the display time range of each slice for example: slice 1 is from 0th minute to 1st minute, slice 2 is from first minute to second minute; record in I frame index file
  • the I frame record close to the PTS of the I frame is searched, because the playback time interval of each I frame relative to the first I frame is recorded in the I frame index file. , offset and size, so as long as the PTS of the first I frame is taken as the reference, and the time interval of the I frame to be fetched in step 2 is added, the next I frame to be fetched can be obtained (to be taken)
  • the theoretical play time of the second I frame the theoretical play time is recorded; then the matching I frame is searched in the I frame index file.
  • the I frame Since it is impossible to find an I frame completely corresponding to the theoretical playback time obtained above, the I frame is searched according to the principle of proximity and the offset of the I frame recorded in the I frame index file is larger than the theoretical playback time; According to the offset and size of the found I frame, the I frame data is read out and waiting for transmission.
  • transmitting when calculating the next I frame, use the theoretical playback time of the last I frame recorded plus the time interval of the I frame to be fetched in step 2, instead of the I frame previously found. The actual play time plus the time interval of the I frame to be fetched in step 2.
  • Step 2 Adjust the I frame transmission time to send the I frame. It should be noted that the time taken to find the I frame is 4 ⁇ short and can be ignored. When an I frame is sent out, the second one cannot be sent immediately. Wait for a period.
  • the streaming media transmission method provided by the present invention improves the strategy of taking I frames.
  • the method for transmitting streaming media provided by the present invention can also be applied to other streaming media transmission.
  • the streaming media transmission method provided by the present invention can also be used to complete the fast forward. Rewinding code stream transmission.

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)

Abstract

本发明公开了一种流媒体的传输方法、视频播放装置及终端,其中,所述方法包括:设置流媒体在快进和快退时单位时间内发送I帧的个数,计算相邻I帧的发送间隔时间;快进或快退时,将所述相邻I帧的发送间隔时间乘以流媒体当前的传输倍速,计算得到要取的I帧的间隔时间;根据所述要取的I帧的间隔时间在片源中查找要播放的I帧;发送所述查找到的要播放的I帧。本发明能使快进快退时的播放时间能与理论时间相吻合,完善地实现了快进快退的功能。

Description

一种流媒体的传输方法、 视频播放装置及终端
技术领域 本发明涉及 IPTV ( Interactive Personal Televison, 交互式个人电视)终 端领域, 尤其涉及一种在 IPTV机顶盒上通过对 I帧索引的搜索来进行快进 快退和定位播放等各种特技操作的流媒体的传输方法、视频播放装置及终端。
背景技术
目前, 本地时移是机顶盒的一种业务描述, 在播放一个直播频道的同时 将此频道的多媒体流录制在机顶盒中, 用户可以在时移时间范围内进行 trick mode (特技模式, 是快进、 快退、 暂停、 定位播放、 慢放等的统称。 )操作, 在 trick mode时播放的内容都是机顶盒存储介质上的内容。 机顶盒在实现本 地时移(可以回放几个小时之前的节目 )时, 是播放本地录制好的媒体文件。 当快进快退播放时, 由于带宽、 机器性能和平台的限制, IPTV不能像 PVR ( Personal Video Recorder, 个人视频录像机)那样播放连续的画面, 比如: 播放 4X的 6M码流, 就需要 24M的带宽, 所以只能选择某些帧来播放。 根 据编码的格式来看, 用 I帧来播放是唯一的选择, 因为 I帧不需要其他的参 考帧, 可以独立解码, 所以, 在快进快退播放时, 就只发送 I帧, 不再发送 B帧或 P帧。 以前选取 I帧的策略如下: 倍速为 2的 n次方时, 将跳过 n-1 个 I帧来发送, 直到 I帧数量不够时, 将最后一个 I帧发送出去, 然后发送 RTSP ( Real Time Streaming Protocol,实时流传输协议信令), 结束本地播放。 由于不同厂家的编码器在实际制作片源时, 会釆取不同的编码算法或策 略, 这就使片源中 I帧的数量不是一个常量, 所以即使播放长度和快进快退 的播放速度一样的两个不同片源, 都可能出现快进到尾或快退到头时的播放 时间不同的情况。例如: 片 1和片 2都是正常播放速度下 2分钟播完的片源 , 片 1中的 I帧有 180个和片 2中的 I帧有 200个, 当以 2X倍速播放时, 就应 该在 1分钟播放完毕(如果是 4X, 就应该在 30秒播放完毕; 8X就是 15秒, 以此类推) , 现在若规定每秒钟发送的 I帧个数是恒定的 M, 每个 I帧的发 送时间很短, 可以忽略不计。 根据前面讲到的取 I帧的方法, 在 2X倍速的 情况下, 将用 1分钟发送所有的 I帧, 那么在这种情况下, N=l , 就是跳过 0 个 I帧, 即连续发送 I帧, 这样片 1和片 2的播放时间将是 180/M和 200/M, 本应该都是 60秒播放完毕的片源已经出现了不同的播放时间。尤其在高倍速 下, 几秒应该播放完的片子要几十秒, 这样就导致了快进快退播放的时间不 准确, 给依赖这个时间的程序带来了严重影响。
发明内容 本发明要解决的技术问题是提供一种流媒体的传输方法、 视频播放装置 及终端, 以使快进快退时的播放时间与理论时间相吻合。 为了解决上述技术问题, 本发明提供一种流媒体的传输方法, 包括: 设置流媒体在快进和快退时单位时间内发送 I帧的个数, 计算相邻 I帧 的发送间隔时间; 快进或快退时, 将所述相邻 I帧的发送间隔时间乘以流媒体当前的传输 倍速, 计算得到要取的 I帧的间隔时间; 根据所述要取的 I帧的间隔时间在片源中查找要播放的 I帧;
发送所述查找到的要播放的 I帧。 优选地, 所述根据所述要取的 I帧的间隔时间在片源中查找要播放的 I 帧的步骤包括: 读取当前播放位置所在分片的第一个 I帧的显示时间戳(PTS ) ; 基于所述第一个 I帧的 PTS和所述要取的 I帧的间隔时间, 计算得到各 个要取的 I帧的理论播放时间; 根据所述理论播放时间在所述分片中查找相匹配的 I帧, 将该 I帧作为 要播放的 I帧。 优选地, 所述分片中与所述理论播放时间相匹配的 I帧为所述分片中记 录的 I帧偏移量最接近且大于所述理论播放时间的 I帧。 优选地, 在设置流媒体在快进和快退时单位时间内发送 I帧的个数的步 骤中, 设置流媒体在快进和快退时每秒发送 3个 I帧。 优选地, 在发送所述查找到的要播放的 I帧的步骤中, 每隔所述相邻 I 帧的发送间隔时间发送一个所述要播放的 I帧。 为了解决上述技术问题, 本发明提供一种视频播放装置, 包括依次相连 的 I帧个数设置模块、 计算模块、 查找 I帧模块和发送模块, 其中: 所述 I帧个数设置模块设置成: 设置流媒体在快进和快退时单位时间内 发送 I帧的个数; 所述计算模块设置成: 根据所述 I帧个数设置单元设置的单位时间内发 送 I帧的个数计算相邻 I帧的发送间隔时间,将所述相邻 I帧的发送间隔时间 乘以流媒体当前的传输倍速得到要取的 I帧的间隔时间; 所述查找 I帧模块设置成: 根据所述要取的 I帧的间隔时间在片源中查 找要播放的 I帧, 并将查找到的要播放的 I帧发送给发送模块; 所述发送模块设置成: 发送所述查找到的要播放的 I帧。 优选地, 所述查找 I帧模块包括: 读取单元、 播放时间计算单元和查找 单元, 其中:
所述读取单元设置成: 读取当前播放位置所在分片的第一个 I帧的显示 时间戳(PTS ) , 以及, 读取查找单元查找到的要播放的 I帧并将该 I帧发送 给所述发送模块; 所述播放时间计算单元设置成: 基于所述第一个 I帧的 PTS和所述要取 的 I帧的间隔时间, 计算得到各个要取的 I帧的理论播放时间; 所述查找单元设置成: 根据所述理论播放时间在所述分片中查找相匹配 的 I帧, 将该 I帧作为要播放的 I帧。 优选地, 所述分片中与所述理论播放时间相匹配的 I帧为所述分片中记 录的 I帧偏移量最接近且大于所述理论播放时间的 I帧。 优选地, 所述 I帧个数设置模块还设置成: 将流媒体在快进快退时单位 时间内发送 I帧的个数设置为每秒发送 3个 I帧。 优选地, 所述发送模块还设置成: 每隔所述相邻 I帧的发送间隔时间发 送一个所述要播放的 I帧。 为了解决上述技术问题,本发明提供一种终端, 包括上述视频播放装置。
本发明提供的一种流媒体的传输方法、 视频播放装置及终端, 能使快进 快退时的播放时间能与理论时间相吻合, 完善地实现了快进快退的功能。
附图概述 图 1是根据本发明实施例的视频播放装置的示意图; 图 2是根据本发明实施例的流媒体的传输方法的流程图。
本发明的较佳实施方式 下面结合实施例对本发明的技术方案进行更详细的说明。 图 1是根据本发明实施例的视频播放装置的示意图, 如图 1所示, 本实 施例的视频播放装置包括 I帧个数设置模块 11、 计算模块 12、 查找 I帧模块 13和发送模块 14, 其中,
I帧个数设置模块 11设置成: 设置流媒体在快进和快退时单位时间内发 送 I帧的个数, 例如, 设置流媒体在快进快退时每秒发送 3个 I帧。 计算模块设置成: 根据单位时间内发送 I帧的个数计算相邻 I帧的发送 间隔时间, 例如 1/3秒; 将所述相邻 I帧的发送间隔时间乘以传输倍速得到 要取的 I帧的间隔时间, 例如, 以 4倍速传输数据, 则要取的 I帧的间隔时 间为 1/3秒 χ 4。 查找 I帧模块 13设置成:根据要取的 I帧的间隔时间在片源中查找要播 放的 I帧, 并将查找到的要播放的 I帧发送给发送模块 14。 查找 I帧模块 13具体包括: 读取单元 131、 理论播放时间计算单元 132 和查找单元 133 , 其中读取单元 131设置成: 当前播放位置所在分片的第一 个 I帧的 PTS,读取查找单元 133查找到的要播放的 I帧并将该 I帧发送给发 送模块 14; 播放时间计算单元 132设置成: 基于所述第一个 I帧的 PTS和所 述要取的 I帧的间隔时间, 计算得到各个要取的 I帧的理论播放时间; 查找 单元 133设置成: 根据所述理论播放时间在所述分片中查找相匹配的 I帧, 将该 I帧作为要播放的 I帧,这里分片中与所述理论播放时间相匹配的 I帧是 指所述分片中记录的 I帧偏移量最接近且大于所述理论播放时间的 I帧。 发送模块 14设置成: 发送所述要播放的 I帧, 具体地, 每隔相邻 I帧的 发送间隔时间发送一个所述要播放的 I帧。
本发明还提供一种终端, 该终端包括上述的视频播放装置。 该终端可以 是机顶盒, 例如 IPT V机顶盒。
图 2是根据本发明实施例的流媒体的传输方法的流程图, 如图 2所示, 本发明实施例的流媒体的传输方法, 包括: 步骤 1 , 设置流媒体在快进快退时单位时间内发送 I帧的个数 m, 则可 以得到相邻 I帧的发送间隔时间 , 为单位时间除以 m。 可以设置在快进快退时每秒钟发送 3个 I帧, 这是个经验值, 则相邻 I 帧的发送间隔时间为 1/3秒。 如果每秒钟发送 I帧的个数少于 3个的话, 画 面在流畅度方面表现的较差; 大于 3 , 对于效果的增益不大。 当然每秒钟发 送 I帧的个数 M不限于 3个, 也可以是其它个数, 可以由厂家等根据实际情 况自由设定。 步骤 2, 计算要取的 I帧的间隔时间。 要快进快退时, 要取的 I帧的间隔时间为相邻 I帧的发送间隔时间乘以 流媒体当前的传输倍速。 例如, 每秒钟发送 I帧的个数为 3 , 则相邻 I帧的发送间隔时间为 333 毫秒, 就是说每 333毫秒就发送一个 I帧; 传输倍速( speed )例如为 2、 4、 8等 2的 n次方; 要取的 I帧的间隔时间应该是 333毫秒乘以 speed。比如说, speed是 4x, 那么, 在正常倍速下, 要取的 I帧的间隔时间就是 333 χ4毫秒。 步骤 3 , 查找 I帧。 通过步骤 1和步骤 2知道要找的每一个 I帧的间隔时间是多少,再加上当 前播放位置所在分片的第一个 I帧的 PTS ( resentation time stamp, 显示时间 戳), 就可以得到下一个要播放的 I帧的 PTS。 可以容易地从片源的分片中读 取当前播放位置所在分片的第一个 I帧的 PTS。
可以通过分片索引文件和 I帧索引文件来查找 I帧, 其中分片索引文件 中包含片源有几个分片、 分片的名字、 分片在磁盘中的位置、 每个分片对应 的 I帧索引文件的名称和每个分片的显示时间范围, 例如: 分片 1是从第 0 分钟到第 1分钟, 分片 2是从第一分钟到第二分钟; I帧索引文件中记录每 个 I帧的序号、 偏移量、 大小和 PTS等。 首先需要查找要播放的 I帧所在的分片位置, 即找 I帧在某个分片的偏 移量, 先大致确定 I帧在哪个分片中, 这个主要是通过判断 I帧的 PTS是否 在这个分片的显示时间范围内。 然后再在这个分片对应的 I帧索引文件中查找与该 I帧的 PTS接近的 I 帧记录,由于在 I帧索引文件中记录了每个 I帧相对于第一个 I帧的播放时间 间隔、 偏移量和大小, 所以只要取出第一个 I帧的 PTS作为基准, 加上步骤 2中算出的要取的 I帧的时间间隔,就可以得到下一个要取的 I帧(要取的第 二个 I帧) 的理论播放时间, 将该理论播放时间记录下来; 然后在 I帧索引 文件中查找相匹配的 I帧。 由于不可能找到完全与上述得到的理论播放时间 相对应的值的 I帧,所以根据就近原则且 I帧索引文件中记录的 I帧的偏移量 大于这个理论播放时间来查找 I帧; 最后, 根据找到的 I帧的偏移量和大小, 将 I帧数据读取出来, 等待发 送。 当发送出去后, 计算下一个 I帧时, 要用记录下来的上一个 I帧的理论 播放时间加上步骤 2中算出的要取的 I帧的时间间隔, 而不是之前找到的那 个 I帧的实际播放时间加上步骤 2中算出的要取的 I帧的时间间隔。 也就是 基于当前播放位置所在分片的第一个 I帧的 PTS和步骤 2中算出的要取的 I 帧的间隔时间, 计算得到各个要取的 I帧的理论播放时间。 这样做可以减少误差的累积, 因为找到的 I帧的 PTS并不是完全等于计 算出来的理论值, 当下一次找 I帧时, 就要用到上一个发送 I帧的 PTS, 如 果用 I帧实际的 PTS, 那么就会产生一个误差, 如此循环, 这个误差就会增 大。 步骤 4, 调整 I帧发送时间发送 I帧, 需要说明的是找到 I帧所花费的时 间 4艮短, 可以忽略不计, 当一个 I帧发送出去后, 并不能马上发送第二个, 要等待一段时间, 这个时间就是相邻 I帧的发送间隔时间。 由于只发送 I帧, 所以如果不控制一下发送速度, 那么就会有图像和理 论时间不匹配, 如果不控制发送的间隔时间, 加上网络传输延时的忽略, 估 计在几秒内就能播放完毕, 严重和理论的 1分钟不符合。 例如, 若要在 1秒 钟内发送 3个 I帧, 则相邻 I帧的发送的时间间隔是 1000/3 = 333ms„ 本发明提供的流媒体的传输方法改进了取 I帧的策略, 通过计算应该发 送的 I帧的时间间隔来取 I帧, 以达到快进快退时的播放时间能与理论时间 相吻合(理论时间就是播放时间除以播放倍速) , 从而完美地实现了快进快 退功能, 尤其在高倍速下(32x以上), 播放时间几乎和理论时间相差无几, 较现有技术的取 I帧的策略有极大的提升, 无论是现场测试还是用户体验都 得到了非常好的评价。 本发明提供的流媒体的传输方法也可以应用到其他的 流媒体传输方面, 对于流媒体平台的特技显示的传输, 也可借鉴此本发明提 供的流媒体的传输方法来完成快进快退的码流传输。 尽管本发明结合特定实施例进行了描述, 但是对于本领域的技术人员来 说, 可以在不背离本发明的精神或范围的情况下进行修改和变化。 这样的修 改和变化被视作在本发明的范围和附加的权利要求书范围之内。 工业实用性 本发明提供一种流媒体的传输方法、 视频播放装置及终端, 能使快进快 退时的播放时间能与理论时间相吻合, 完善地实现了快进快退的功能。

Claims

权 利 要 求 书
1、 一种流媒体的传输方法, 包括: 设置流媒体在快进和快退时单位时间内发送 I帧的个数, 计算相邻 I帧 的发送间隔时间; 快进或快退时, 将所述相邻 I帧的发送间隔时间乘以流媒体当前的传输 倍速, 计算得到要取的 I帧的间隔时间; 根据所述要取的 I帧的间隔时间在片源中查找要播放的 I帧;
发送所述查找到的要播放的 I帧。
2、 如权利要求 1所述的传输方法, 其中: 所述根据所述要取的 I帧的间隔时间在片源中查找要播放的 I帧的步骤 包括: 读取当前播放位置所在分片的第一个 I帧的显示时间戳(PTS ) ; 基于所述第一个 I帧的 PTS和所述要取的 I帧的间隔时间, 计算得到各 个要取的 I帧的理论播放时间; 才艮据所述理论播放时间在所述分片中查找相匹配的 I帧, 将该 I帧作为 要播放的 I帧。
3、 如权利要求 2所述的传输方法, 其中: 所述分片中与所述理论播放时间相匹配的 I帧为所述分片中记录的 I帧 偏移量最接近且大于所述理论播放时间的 I帧。
4、 如权利要求 1所述的传输方法, 其中: 在设置流媒体在快进和快退时单位时间内发送 I帧的个数的步骤中, 设 置流媒体在快进和快退时每秒发送 3个 I帧。
5、 如权利要求 1至 4任一项所述的传输方法, 其中: 在发送所述查找到的要播放的 I帧的步骤中, 每隔所述相邻 I帧的发送 间隔时间发送一个所述要播放的 I帧。
6、 一种视频播放装置, 包括依次相连的 I帧个数设置模块、 计算模块、 查找 I帧模块和发送模块, 其中: 所述 I帧个数设置模块设置成: 设置流媒体在快进和快退时单位时间内 发送 I帧的个数; 所述计算模块设置成: 根据所述 I帧个数设置单元设置的单位时间内发 送 I帧的个数计算相邻 I帧的发送间隔时间,将所述相邻 I帧的发送间隔时间 乘以流媒体当前的传输倍速得到要取的 I帧的间隔时间; 所述查找 I帧模块设置成: 根据所述要取的 I帧的间隔时间在片源中查 找要播放的 I帧, 并将查找到的要播放的 I帧发送给发送模块; 所述发送模块设置成: 发送所述查找到的要播放的 I帧。
7、 如权利要求 6所述的视频播放装置, 所述查找 I帧模块包括: 读取单 元、 播放时间计算单元和查找单元, 其中: 所述读取单元设置成: 读取当前播放位置所在分片的第一个 I帧的显示 时间戳(PTS ) , 以及, 读取查找单元查找到的要播放的 I帧并将该 I帧发送 给所述发送模块; 所述播放时间计算单元设置成: 基于所述第一个 I帧的 PTS和所述要取 的 I帧的间隔时间, 计算得到各个要取的 I帧的理论播放时间; 所述查找单元设置成: 根据所述理论播放时间在所述分片中查找相匹配 的 I帧, 将该 I帧作为要播放的 I帧。
8、 如权利要求 7所述的视频播放装置, 其中: 所述分片中与所述理论播放时间相匹配的 I帧为所述分片中记录的 I帧 偏移量最接近且大于所述理论播放时间的 I帧。
9、 如权利要求 6所述的视频播放装置, 其中: 所述 I帧个数设置模块还设置成: 将流媒体在快进快退时单位时间内发 送 I帧的个数设置为每秒发送 3个 I帧。
10、 如权利要求 6至 9任一项所述的视频播放装置, 其中: 所述发送模块还设置成: 每隔所述相邻 I帧的发送间隔时间发送一个所 述要播放的 I帧。
11、 一种终端, 包括如权利要求 6至 10任一项所述的视频播放装置。
PCT/CN2010/072134 2009-09-02 2010-04-23 一种流媒体的传输方法、视频播放装置及终端 WO2011026333A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200910168947.2 2009-09-02
CN2009101689472A CN101635847B (zh) 2009-09-02 2009-09-02 一种流媒体的传输方法、视频播放装置及终端

Publications (1)

Publication Number Publication Date
WO2011026333A1 true WO2011026333A1 (zh) 2011-03-10

Family

ID=41594877

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2010/072134 WO2011026333A1 (zh) 2009-09-02 2010-04-23 一种流媒体的传输方法、视频播放装置及终端

Country Status (2)

Country Link
CN (1) CN101635847B (zh)
WO (1) WO2011026333A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101635847B (zh) * 2009-09-02 2011-11-30 中兴通讯股份有限公司 一种流媒体的传输方法、视频播放装置及终端
CN102469309B (zh) * 2010-11-16 2014-03-12 扬智科技股份有限公司 影像处理方法
CN102123281A (zh) * 2011-01-07 2011-07-13 中兴通讯股份有限公司 视频播放时快进快退处理方法、装置以及移动终端
CN102611945B (zh) * 2011-12-19 2014-06-04 北京蓝汛通信技术有限责任公司 一种流媒体切片方法、切片服务器及流媒体点播系统
CN103581741B (zh) * 2012-07-26 2016-08-17 三星电子(中国)研发中心 特效播放设备和方法
CN103118300A (zh) * 2013-02-06 2013-05-22 北京佳视互动科技股份有限公司 一种网络媒体流的播放控制方法及装置
CN103581711B (zh) * 2013-10-31 2017-01-11 广州西维尔计算机系统有限公司 快进快退播放视频数据的方法及装置
CN105306973B (zh) * 2014-07-14 2018-08-17 中国科学院声学研究所 一种视频倍速文件的生成方法
CN104581436B (zh) * 2015-01-28 2017-12-05 青岛海信宽带多媒体技术有限公司 一种视频帧定位方法及装置
CN105307013B (zh) * 2015-10-22 2020-09-22 厦门雅迅网络股份有限公司 一种快进播放视频帧选择方法
CN105578216B (zh) * 2015-12-21 2018-11-13 武汉市烽视威科技有限公司 一种实现hls点播快进快退的方法
CN107087214A (zh) * 2016-02-16 2017-08-22 中国电信股份有限公司 实现流媒体内容倍速播放的方法、客户端及系统
CN106101752B (zh) * 2016-07-08 2019-01-01 青岛海信宽带多媒体技术有限公司 一种时移时间获取方法及机顶盒
CN106454417B (zh) * 2016-11-11 2019-08-09 青岛海信宽带多媒体技术有限公司 流媒体倍速播放方法及装置
CN112468847B (zh) * 2019-09-06 2022-12-02 中兴通讯股份有限公司 一种多媒体流的特技播放方法、装置和多媒体播放器
CN114640711B (zh) * 2020-12-15 2023-08-01 深圳Tcl新技术有限公司 一种tlv数据包的推送方法、智能终端及存储介质
CN113747123B (zh) * 2021-08-24 2024-02-09 成都纵横自动化技术股份有限公司 航拍违法检测系统、视频处理装置和违法检测装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001145065A (ja) * 1999-11-12 2001-05-25 Sanyo Electric Co Ltd 映像記録再生装置における再生速度調整方法および映像記録再生装置
JP2008078755A (ja) * 2006-09-19 2008-04-03 Sony Computer Entertainment Inc 動画再生方法および装置
CN101262600A (zh) * 2007-03-08 2008-09-10 凌阳科技股份有限公司 一种网络视频快进快退播放系统和方法
CN101635847A (zh) * 2009-09-02 2010-01-27 中兴通讯股份有限公司 一种流媒体的传输方法、视频播放装置及终端

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1291598C (zh) * 2003-12-31 2006-12-20 清华大学 基于帧内编码图象检索的视频快进快退及恢复常速的方法
CN101262291B (zh) * 2008-04-30 2010-04-07 中兴通讯股份有限公司 一种实现变速播放媒体的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001145065A (ja) * 1999-11-12 2001-05-25 Sanyo Electric Co Ltd 映像記録再生装置における再生速度調整方法および映像記録再生装置
JP2008078755A (ja) * 2006-09-19 2008-04-03 Sony Computer Entertainment Inc 動画再生方法および装置
CN101262600A (zh) * 2007-03-08 2008-09-10 凌阳科技股份有限公司 一种网络视频快进快退播放系统和方法
CN101635847A (zh) * 2009-09-02 2010-01-27 中兴通讯股份有限公司 一种流媒体的传输方法、视频播放装置及终端

Also Published As

Publication number Publication date
CN101635847B (zh) 2011-11-30
CN101635847A (zh) 2010-01-27

Similar Documents

Publication Publication Date Title
WO2011026333A1 (zh) 一种流媒体的传输方法、视频播放装置及终端
KR101010258B1 (ko) 미디어 스트림의 타임­쉬프트 프리젠테이션
CN101120590B (zh) 现场提交数字信号的方法
US9955107B2 (en) Digital video recorder recording and rendering programs formed from spliced segments
JP4702397B2 (ja) コンテンツサーバ、情報処理装置、ネットワーク機器、コンテンツ配信方法、情報処理方法およびコンテンツ配信システム
US20080155581A1 (en) Method and Apparatus for Providing Commercials Suitable for Viewing When Fast-Forwarding Through a Digitally Recorded Program
US8244897B2 (en) Content reproduction apparatus, content reproduction method, and program
WO2011153868A1 (zh) 频道切换方法、装置及系统
TW200820777A (en) System and method of audio/video streaming
US20080212774A1 (en) Device for and a Method of Processing an Encrypted Data Stream in a Cryptographic System
WO2014079239A1 (zh) 实时视频通讯回放数据流的获取方法、装置及系统
WO2018103696A1 (zh) 媒体文件的播放方法、服务端、客户端及系统
JP5282383B2 (ja) コンテンツ再生装置、コンテンツ再生方法、プログラム、およびコンテンツ再生システム
CN102355605B (zh) Iptv机顶盒的直播时移处理方法
US9136964B2 (en) Viewing impression report collection, storage, and reportback of inserted content with DVR playback
US20090136204A1 (en) System and method for remote live pause
JP2005303925A (ja) ストリームデータ送信装置、ストリームデータ受信装置およびそれらの処理をコンピュータに実行させるための処理プログラムを記録した記録媒体
WO2016090916A1 (zh) 码流传输方法和装置
WO2012094992A1 (zh) 一种实现数据获取的方法和系统
JP2006262437A (ja) 映像配信システム
JP2010287923A (ja) 映像サーバ
WO2017175482A1 (ja) 配信システム、ミッドロールサーバ、端末装置、広告発火装置、および情報処理方法
EP2015305A1 (en) A device and method for smooth reverse playback of media
KR100991845B1 (ko) Vod 시스템에서 컨텐츠의 정보파일과 gop 단위의 전송을 이용한 vcr 유사 동작 처리방법
JP3773892B2 (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: 10813255

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10813255

Country of ref document: EP

Kind code of ref document: A1