CN100346644C - 一种数字视频截屏的实现方法 - Google Patents

一种数字视频截屏的实现方法 Download PDF

Info

Publication number
CN100346644C
CN100346644C CNB2004100079698A CN200410007969A CN100346644C CN 100346644 C CN100346644 C CN 100346644C CN B2004100079698 A CNB2004100079698 A CN B2004100079698A CN 200410007969 A CN200410007969 A CN 200410007969A CN 100346644 C CN100346644 C CN 100346644C
Authority
CN
China
Prior art keywords
video
current
buffer queue
seizure
frame
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 - Lifetime
Application number
CNB2004100079698A
Other languages
English (en)
Other versions
CN1674656A (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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CNB2004100079698A priority Critical patent/CN100346644C/zh
Publication of CN1674656A publication Critical patent/CN1674656A/zh
Application granted granted Critical
Publication of CN100346644C publication Critical patent/CN100346644C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)

Abstract

本发明公开了一种数字视频截屏的实现方法,该方法包括以下步骤:a.视频播放系统从音视频解码引擎中获取当前播放的视频制式信息,根据该视频制式信息确定当前视频制式的帧率;b.视频播放系统根据步骤a所确定的当前视频制式帧率以及当前视频制式下的最佳时滞,确定先进先出捕捉缓冲队列的大小,所有播放的画面帧以先进先出方式顺序进出所确定的捕捉缓冲队列;c.当视频播放系统收到截屏命令后,将当前捕捉缓冲队列中当前画面帧以外的所有画面帧进行读取、压缩并存储为静态图片。该方法既能解决画面截取时的时滞问题,又能保证精确获取用户所需的目标画面。

Description

一种数字视频截屏的实现方法
技术领域
本发明涉及视频画面处理技术,特别是指一种数字视频截屏的实现方法。
背景技术
随着数字视频技术的发展,人们非常希望能够获取并保留某一时刻的精彩画面,以便随时欣赏、或进行珍藏、或作为资料进行分析。通常,要想获取某一时刻的精彩画面,就需要实时连续截取一段时间的数字视频画面,将所截取的画面存储在硬盘或其它存储设备中,然后用户再从所存储的若干幅画面中选择想截取的目标画面,这种截取画面的技术也称为截屏技术。
目前,数字视频的截屏技术已广泛应用于PC以及其它众多的多媒体产品中,常见的实现方法就是:在PC或多媒体设备中的音视频播放(Decoder)引擎中同时包括一个屏幕画面捕捉引擎(Capturer),当系统接收到屏幕画面捕捉命令后,屏幕画面捕捉引擎会捕捉当前屏幕显示的画面帧(Frame),并进行编码和压缩,最后将经过编码压缩后的画面帧,以某种格式,如JPEG格式的静态图片方式存储在非易失性存储器中,比如:硬盘或其它存储设备中。
然而,上述方法存在着一个明显的缺点:时滞,也就是说,当用户从屏幕上观看到期望截取的画面后,再向系统发送屏幕画面截取命令以截取屏幕的画面,比如:通过手中的遥控器向当前使用的系统发送截取屏幕命令时,由于屏幕上的画面是连续播放的,而系统从接收到命令到系统指示屏幕画面捕捉引擎启动捕捉,这一过程存在着一定的时延,一般大约为0.05~0.1s,具体的时延值与系统的硬件配置和系统软件中的捕捉逻辑有关,那么,系统实际截取并存储的屏幕画面帧(Frame)已经不是用户希望所截取的画面帧了,而是比用户希望截取的屏幕画面要滞后的画面,从而造成了屏幕画面截取的时滞。
为解决时滞的问题,一些截屏实现方法在内存中维护一个缓冲区,画面帧需要存储在这个缓冲区中,然后根据时滞时间的具体大小值,从当前画面推算出要截取的目标画面帧在该缓冲区的具体位置,再压缩和存储该画面帧。但是,由于时滞时间一般与系统的硬件配置和系统软件中的捕捉逻辑的设计有关,所以很难有一个确定的、具体的值;如果以一个相对固定的时滞时间值来推算目标画面帧在缓冲区所处的位置,势必会出现无法精确捕获目标画面的问题,所以,虽然这种实现方法在弥补时滞方面有很大改善,但又存在不能精确捕获画面的问题。另外,在内存中设置缓冲区进行存储,尤其缓冲区大小设置较大时,会占用大量内存资源;这种情况对基于嵌入式硬件架构开发的消费电子类产品的性能将会产生较大影响,因为基于嵌入式平台开发消费电子类产品时,为了节约成本,内存资源是非常宝贵的,占用内存资源太多,势必会影响到产品的性能;但如果为了减少占用资源而设置较小的缓冲区,又很可能无法存储到用户所需的目标画面。
发明内容
有鉴于此,本发明的主要目的在于提供一种数字视频截屏的实现方法,既能解决画面截取时的时滞问题,又能保证精确获取用户所需的目标画面。
为达到上述目的,本发明的技术方案是这样实现的:
一种数字视频截屏的实现方法,该方法包括以下步骤:
a.视频播放系统从音视频解码引擎中获取当前播放的视频制式信息,根据该视频制式信息确定当前视频制式的帧率;
b.视频播放系统根据步骤a所确定的当前视频制式的帧率以及当前视频制式下的最佳时滞,确定先进先出捕捉缓冲队列的大小,所有播放的画面帧以先进先出方式顺序进出所确定的捕捉缓冲队列;
c.当视频播放系统收到截屏命令后,将当前捕捉缓冲队列中当前画面帧以外的所有画面帧进行读取、压缩并存储为静态图片。
其中,步骤a所述根据该视频制式信息确定当前视频制式的帧率的步骤具体为:根据该视频制式信息判断当前视频制式为PAL制还是NTSC制,进而确定当前视频制式的帧率;
所述步骤b具体包括:如果当前视频制式为PAL制,则根据PAL制的帧率以及PAL制式下的最佳时滞确定捕捉缓冲队列的大小;如果当前视频制式为NTSC制,则根据NTSC制的帧率以及NTSC制式下的最佳时滞确定捕捉缓冲队列的大小。
在所述步骤c之后,该方法进一步包括:判断当前是否接收到新的截屏命令,如果收到,则返回步骤c;否则继续检测和判断。
上述方案中,所述捕捉缓冲队列的大小为:当前视频制式下的最佳时滞乘以2再乘上当前视频制式的帧率,之后再加1。
上述方案中,步骤c中所述当前画面帧放置于先进先出捕捉缓冲队列入口侧的第一位置。
本发明所提供的数字视频截屏方法,由于是根据当前播放的视频制式确定一个大小适当的捕捉缓冲队列,并且,该捕捉缓冲队列的管理与维护采用先进先出策略,如此,既不会占用大量的存储空间,又能保证精确捕捉到用户所需的目标画面,因为捕捉缓冲队列的大小是根据视频制式的帧率来确定的。同时,由于增加了捕捉缓冲队列对用于截取的视频画面进行存储,所以也较好地避免了目前截屏实现方法中普遍存在的画面截取时的时滞问题,从而可以使用户体验到“不错过任何一个精彩画面”的实时、精确的数字视频截屏应用。
本发明方法所实现的精确截屏对于多媒体设备,特别是消费电子类产品如个人数字录像机(PVR)、数字视频录像机(DVR)、STB,有着非常重要的作用。因为消费电子类产品采用的是低成本、低配置的嵌入式硬件平台,截屏时延较大;同时这类产品的用户均为对音视频的各种应用体验需求强烈,甚至是带有挑剔性的需求,所以对于截屏并保存目标画面帧有着很高的要求,尽管几个连续的画面帧之间差别不是很大,但对于一些有着“挑剔”需求的用户来讲,比如:对一些音视频发烧级用户或体育超级爱好者来说,实现精确捕获目标画面是非常重要的,也是必不可少的。
附图说明
图1为一实施例中FIFO捕捉缓冲队列的结构示意图;
图2为屏幕画面捕获的实现流程示意图。
具体实施方式
本发明的核心思想是:根据当前播放的视频制式确定一个大小适当的捕捉缓冲队列,并且,采用先进先出(FIFO,First In First Out)策略管理和维护该捕捉缓冲队列,所有的视频画面帧都按照FIFO的原则,从该捕捉缓冲区中流过。当系统收到截屏指令后,会将捕捉缓冲队列中除当前画面帧以外的其它画面帧作为要截取的画面帧进行存储,其中包含用户需要的目标画面帧。
针对PC或其它多媒体设备中的音视频解码引擎(Decoder),其解码时一般采用两种流解码:程序流(PS,Program Stream)和传输流(TS,TransportStream)。解码后不同的视频格式有不同的帧率,如:PAL制式视频的帧率为25帧/秒(fps,Frame per Second)、NTSC制式视频的帧率为30fps,这样不同制式的视频会以不同的帧率进行传输并显示在屏幕上。
在本发明中,要在截屏之前先根据帧速率确定用于存储截取画面帧的捕捉缓冲队列的大小,该捕捉缓冲队列由系统维护在内存中。由于不同视频制式的帧速率不同,所以针对同样的时延,所要求的捕捉缓冲队列大小也不一样。又由于最佳时滞时间一般为最长时滞时间的1/2,所以依据最佳时滞时间所得到的捕捉缓冲队列的大小应该只是系统需要维护的捕捉缓冲队列的1/2。本发明中,捕捉缓冲队列大小的确定是根据当前播放的视频制式来计算的,具体可按照公式(1)确定捕捉缓冲队列的大小:
            Queue=2*Tf*FN(或Fp)    (1)
其中,Queue表示捕捉缓冲队列的大小;Tf为最佳时滞时间,是最长时滞时间的1/2;FN为NTSC制式的帧率;Fp为PAL制式的帧率。
至于当前所播放的视频制式到底是PAL制还是NTSC制,系统的视频解码引擎(Decoder)是完全可以从视频流中特定字节(Byte)的特定位(Bit)进行识别的,所以在屏幕画面捕捉引擎(Capturer)的程序设计上,完全可以让系统根据对视频制式的判断自动设定捕捉缓冲队列的大小。
举个例子,如果当前播放的视频制式为NTSC制,最佳时滞时间Tf=0.1s,则系统需要维护的捕捉缓冲队列大小Queue=2*0.1*30=6,即捕捉缓冲队列大小为能保留六个已处理画面帧的存储区域。但在实际应用中,通常要将当前画面帧作为参考基准,因此确定的实际捕捉缓冲队列大小=Queue+1。
本实施例中捕捉缓冲队列的结构如图1所示,该捕捉缓冲队列实际设定为7,该捕捉缓冲队列的最左位置,即入口侧的第一个缓冲区域为位置1,也可称为Position=0,该位置用于放置当前画面帧,位置序号从左至右依次递增。每个画面帧从左至右依次进出捕捉缓冲队列,每个画面帧进出捕捉缓冲队列时采用先进先出的策略,换句话说就是:针对某一特定画面帧,例如Frame 0,它从位置1(Position=0)开始进入捕捉缓冲队列,并随着后续画面帧的进入依次向右移动,直至从位置7(Position=6)移出捕捉缓冲队列。也就是说,所有当前屏幕显示的画面帧均处在捕捉缓冲队列中的位置1(Position=0)处,一旦该画面帧被读取并显示完成,其会按照捕捉缓冲队列的位置递增自动向右移动,并填充该位置。这样,所有被读取并在屏幕上显示过的视频画面帧并没有在显示完成后立刻从捕捉缓冲队列消失,而是在捕捉缓冲队列中保留一段时间,保留时间的长短完全依赖于所设定的捕捉缓冲队列的大小。
这样,一旦用户看到当前的画面为自己所需的画面,立即向系统发出截屏指令,例如按下遥控器,这里,假定用户所需的画面帧为Frame 0;系统接收到截屏指令后,会发出指令启动屏幕画面捕捉引擎,由屏幕画面捕捉引擎对当前显示的画面帧进行捕捉。由于时滞的关系,此时当前的画面帧,即位置1(Position=0)的画面帧已被更新,例如:在最大时延的情况下,处于位置1的画面帧已被更新为Frame 6,而Frame 0已经到达了捕捉缓冲队列的位置7(Positon=6),那么,为了精确捕捉该目标帧Frame 0,系统需要将捕捉缓冲队列中从位置2(Positon=1)开始到位置7(Position=6)的所有缓冲画面帧都读取、压缩并以某种格式,比如JPEG格式来存储为静态的图片,存储的目录包含一个连续六帧图片,用户就可以从中找到并选择自己在发出截屏指令时想截取的目标画面,从而达到精确画面捕获的效果,用户可以永远“不错过任何一个精彩画面”。
上面所述的屏幕画面捕捉流程如图2所示,具体包括:
步骤201:当视频播放系统开始播放数字视频画面时,系统从音视频解码引擎中读取当前播放的视频制式的信息。
步骤202~204:判断当前播放的视频制式为PAL制还是NTSC制,如果是PAL制,则根据PAL制的帧率确定所需的实际捕捉缓冲队列大小;如果是NTSC制,则根据NTSC制的帧率确定所需的实际捕捉缓冲队列大小。确定捕捉缓冲队列大小后,所有播放的视频画面帧就会在音视频解码引擎完成解码后,依照FIFO的原则在捕捉缓冲队列中顺序进入、移动并移出,同时在屏幕上显示。
步骤205:当系统接收到用户发送的截屏指令后,就启动相应的屏幕画面捕捉引擎,具体说就是,如果是PAL制,就调用系统中现有的PAL制式视频捕捉逻辑;如果是NTSC制,就调用系统中现有的NTSC制式视频捕捉逻辑。将当前捕捉缓冲队列中除当前画面帧以外的其它帧读取、压缩并以某种格式如JPEG格式存储为静态的图片,所存储的静态图片可进一步提供给用户进行选择。
步骤206:系统再判断是否有新的截屏指令输入,如果有,则返回步骤205;否则,继续检测和判断。
上述过程中,步骤201~205执行一次截屏的过程,如果加上步骤206,就是连续截屏的实现过程。
由于时滞时间的不同,捕捉缓冲队列的最佳大小也会有所差异;而时滞时间只与系统的硬件配置,如CPU主频,以及系统软件中屏幕画面捕捉逻辑的设计有关,其中最重要的因素就是CPU主频,所以针对不同的主频,捕捉缓冲队列的最佳大小也可以在屏幕画面捕捉引擎的逻辑模块中进行不同的设定,以便既可以不错过任何一个截屏画面帧,又可以提高捕获目标画面帧的效率,即:可以在最少的捕获存储画面帧中包括目标画面帧,因此,本发明在实施方式上主要是针对两类产品有所区分:
1)针对PC等硬件配置较高的设备,由于时滞时间较短,实现最佳捕获的捕捉缓冲队列大小可以较小,衡量参数就是时滞时间,最佳的时滞时间一般为0.05s,所以实际捕捉缓冲队列大小通常为三个帧的队列。
2)针对基于嵌入式硬件平台进行开发的消费电子类产品,例如DVR、PVR等等,由于其硬件配置较低,CPU效率不高,所以对实现最佳捕捉的捕捉缓冲队列的大小需求较高,一般来讲,最佳的时滞时间为0.1s,那么,实际捕捉缓冲队列大小就为七个帧的队列。
本发明的方法可主要应用于消费电子类产品中,实现实时连续截取数字视频的画面,并以JPEG格式的静态图片方式存储在硬盘或其他存储设备中,用户可以从中找到并选择想截取的目标画面。利用该方法,用户可以实现“不错过任何一个精彩画面”的实时、精确的截屏和画面帧保存。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (5)

1、一种数字视频截屏的实现方法,其特征在于,该方法包括以下步骤:
a.视频播放系统从音视频解码引擎中获取当前播放的视频制式信息,根据该视频制式信息确定当前视频制式的帧率;
b.视频播放系统根据步骤a所确定的当前视频制式的帧率以及当前视频制式下的最佳时滞,确定先进先出捕捉缓冲队列的大小,所有播放的画面帧以先进先出方式顺序进出所确定的捕捉缓冲队列;
c.当视频播放系统收到截屏命令后,将当前捕捉缓冲队列中当前画面帧以外的所有画面帧进行读取、压缩并存储为静态图片。
2、根据权利要求1所述的方法,其特征在于,步骤a所述根据该视频制式信息确定当前视频制式的帧率的步骤具体为:根据该视频制式信息判断当前视频制式为PAL制还是NTSC制,进而确定当前视频制式的帧率;
所述步骤b具体包括:如果当前视频制式为PAL制,则根据PAL制的帧率以及PAL制式下的最佳时滞确定捕捉缓冲队列的大小;如果当前视频制式为NTSC制,则根据NTSC制的帧率以及NTSC制式下的最佳时滞确定捕捉缓冲队列的大小。
3、根据权利要求1所述的方法,其特征在于,所述步骤c之后,该方法进一步包括:判断当前是否接收到新的截屏命令,如果收到,则返回步骤c;否则继续检测和判断。
4、根据权利要求1、2或3所述的方法,其特征在于,所述捕捉缓冲队列的大小为:当前视频制式下的最佳时滞乘以2再乘上当前视频制式的帧率,之后再加1。
5、根据权利要求1、2或3所述的方法,其特征在于,步骤c中所述当前画面帧放置于先进先出捕捉缓冲队列入口侧的第一位置。
CNB2004100079698A 2004-03-23 2004-03-23 一种数字视频截屏的实现方法 Expired - Lifetime CN100346644C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100079698A CN100346644C (zh) 2004-03-23 2004-03-23 一种数字视频截屏的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100079698A CN100346644C (zh) 2004-03-23 2004-03-23 一种数字视频截屏的实现方法

Publications (2)

Publication Number Publication Date
CN1674656A CN1674656A (zh) 2005-09-28
CN100346644C true CN100346644C (zh) 2007-10-31

Family

ID=35046884

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100079698A Expired - Lifetime CN100346644C (zh) 2004-03-23 2004-03-23 一种数字视频截屏的实现方法

Country Status (1)

Country Link
CN (1) CN100346644C (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100447739C (zh) * 2006-03-28 2008-12-31 联想(北京)有限公司 一种实时获取多媒体图像的方法以及设备
CN101626500B (zh) * 2009-07-31 2011-07-27 北京大学深圳研究生院 一种视频帧率控制方法及装置
CN102799422B (zh) * 2011-05-23 2016-03-30 深圳市快播科技有限公司 数字视频中的拖拽截屏方法
CN102509256B (zh) * 2011-11-17 2014-07-16 厦门游家网络有限公司 一种Flash小游戏批量添加截图的方法及装置
CN102510533A (zh) * 2011-12-12 2012-06-20 深圳市九洲电器有限公司 一种消除视频抓图延时的方法、装置及机顶盒
CN103369372B (zh) * 2013-07-17 2017-11-10 广州珠江数码集团股份有限公司 一种电视直播截屏系统及方法
CN103414863A (zh) * 2013-08-07 2013-11-27 天脉聚源(北京)传媒科技有限公司 一种视频的处理方法及装置
CN103870110B (zh) * 2013-12-06 2017-07-25 深圳Tcl新技术有限公司 即时截图方法和装置
CN109862418A (zh) * 2018-11-21 2019-06-07 视联动力信息技术股份有限公司 文件传输方法和终端设备
CN111372118A (zh) * 2018-12-25 2020-07-03 深圳Tcl新技术有限公司 一种截屏方法、智能终端及存储介质
CN111405306A (zh) * 2020-03-20 2020-07-10 深圳宇翊技术股份有限公司 一种基于播放后捕获再二次编码的pis流媒体服务方法
CN112468871B (zh) * 2020-11-24 2022-10-14 青岛创新奇智科技集团股份有限公司 监控视频播放方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0983927A (ja) * 1995-09-08 1997-03-28 Matsushita Electric Ind Co Ltd 映像表示装置
US5907443A (en) * 1990-05-30 1999-05-25 Canon Kabushiki Kaisha Recording and reproducing apparatus adapted to selectively control the number of copies made
CN1224526A (zh) * 1997-04-28 1999-07-28 索尼公司 节目记录装置和方法
US6445876B1 (en) * 1997-07-09 2002-09-03 Denon, Ltd. Image reproduction apparatus
CN1367925A (zh) * 1999-03-30 2002-09-04 提维股份有限公司 在快进或快倒后的自动修正播放位置的系统
CN1409553A (zh) * 2001-09-25 2003-04-09 维音数码(上海)有限公司 数字化截屏装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5907443A (en) * 1990-05-30 1999-05-25 Canon Kabushiki Kaisha Recording and reproducing apparatus adapted to selectively control the number of copies made
JPH0983927A (ja) * 1995-09-08 1997-03-28 Matsushita Electric Ind Co Ltd 映像表示装置
CN1224526A (zh) * 1997-04-28 1999-07-28 索尼公司 节目记录装置和方法
US6445876B1 (en) * 1997-07-09 2002-09-03 Denon, Ltd. Image reproduction apparatus
CN1367925A (zh) * 1999-03-30 2002-09-04 提维股份有限公司 在快进或快倒后的自动修正播放位置的系统
CN1409553A (zh) * 2001-09-25 2003-04-09 维音数码(上海)有限公司 数字化截屏装置

Also Published As

Publication number Publication date
CN1674656A (zh) 2005-09-28

Similar Documents

Publication Publication Date Title
JP6780080B2 (ja) 画像復号装置、画像復号方法及びプログラム
CN100589567C (zh) 视频数据的处理方法及存储设备
US7023924B1 (en) Method of pausing an MPEG coded video stream
US11197057B2 (en) Storage management of data streamed from a video source device
CA2660725C (en) Method and apparatus for receiving, storing, and presenting multimedia programming without indexing prior to storage
JP4358081B2 (ja) 映像記録装置
CN100346644C (zh) 一种数字视频截屏的实现方法
US20150208103A1 (en) System and Method for Enabling User Control of Live Video Stream(s)
JP4669902B2 (ja) 映像記録装置、多重方法、プログラム、及び記録媒体
CN101843099B (zh) 存储视频数据的装置和方法
EP1813104B1 (en) Apparatus and method of storing video data
EP3249652B1 (en) Method and apparatus for playing back recorded video
CN107948713B (zh) 一种延时直播方法及系统
JP2007325294A (ja) フォーマット化されたデジタルデータの連続ストリームにおけるランダムアクセス及び時間基準の機能を実施する方法及び装置
JP2011050117A (ja) トリックモードおよび速度移行
CN101924890B (zh) 图像处理设备和图像处理方法
CN112073737A (zh) 在直播视频流应用中重新编码预测的图像帧
EP3185564A1 (en) Video stream splicing of groups of pictures (gop)
JP2007049516A (ja) 映像記録装置及びシーンチェンジ抽出方法
JP2004522366A (ja) 多チャンネル動映像圧縮方法及び装置
CN1826806A (zh) 用于特技模式操作的不连续指示器的开发
EP3678368B1 (en) Video streaming batch
TW201519641A (zh) 資料處理裝置、資料處理方法、程式、記錄媒體及資料處理系統
WO2007092891A2 (en) Methods and systems for picture rate reduction of stored video while under continuous record load
US9641792B2 (en) Data recording device and method relating to a time shifting function on a recording medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20071031

CX01 Expiry of patent term