CN107018415A - 一种基于双码流输出视频数据的方法和装置 - Google Patents
一种基于双码流输出视频数据的方法和装置 Download PDFInfo
- Publication number
- CN107018415A CN107018415A CN201710160638.5A CN201710160638A CN107018415A CN 107018415 A CN107018415 A CN 107018415A CN 201710160638 A CN201710160638 A CN 201710160638A CN 107018415 A CN107018415 A CN 107018415A
- Authority
- CN
- China
- Prior art keywords
- video data
- frame
- code stream
- auxiliary code
- resolution ratio
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000009977 dual effect Effects 0.000 title claims abstract description 20
- 230000006835 compression Effects 0.000 claims description 15
- 238000007906 compression Methods 0.000 claims description 15
- 241001269238 Data Species 0.000 claims description 9
- 238000004891 communication Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 12
- 230000001133 acceleration Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440281—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明实施例涉及通信领域,尤其涉及一种基于双码流输出视频数据的方法和装置,用于实现获取不同分辨率和帧率的码流。本发明实施例中,获取视频数据;根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储主码流视频数据;根据辅码流的分辨率,缩放视频数据,得到辅码流视频数据,并传输辅码流视频数据;辅码流的分辨率小于主码流的分辨率;由于本发明实施例中根据主码流的分辨率,对视频数据进行缩放,得到主码流视频数据;根据辅码流的分辨率,对视频数据进行缩将辅码流的视频数据进行传输。如此,可以实现同时获得不同分辨率和帧率的码流,将主码流的视频数据进行存储,将辅码流的视频数据进行传输。
Description
技术领域
本发明实施例涉及通信领域,尤其涉及一种基于双码流输出视频数据的方法和装置。
背景技术
视频数据是将一系列的静态影像以电信号方式加以捕捉,纪录,处理,储存,传送,与重现的各种技术。
目前,输入的视频数据只有一路视频数据输出,无法实现获得与录像时视频数据不同分辨率、帧率的码流。但是视频数据在网络传输时,由于带宽的限制,往往需要较低带宽的视频数据,因此,在网络传输的时候需要较低分辨率和帧率的辅码流。
发明内容
本发明实施例提供了一种基于双码流输出视频数据的方法和装置,用于实现获取不同分辨率和帧率的码流。
本发明实施例提供一种基于双码流输出视频数据的方法,包括:
获取视频数据;根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储所述主码流视频数据;根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据,并传输所述辅码流视频数据;所述辅码流的分辨率小于所述主码流的分辨率。
可选地,所述视频数据中包括N帧视频数据,其中,所述N为正整数;
所述根据辅码流的分辨率,缩放所述视频数据得到辅码流视频数据,并传输所述辅码流视频数据,包括:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:根据辅码流视频数据的帧率,确定是否需要对所述第i帧视频数据进行丢帧处理;在确定所述第i帧视频数据需进行丢帧处理的情况下,将所述第i帧视频数据丢弃;在确定所述第i帧视频数据不需进行丢帧处理的情况下,根据辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,得到第j帧辅码流视频数据,并传输所述第j帧辅码流视频数据;j为大于等于0且小于等于N的正整数。
可选地,所述根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据,并传输所述辅码流视频数据,包括:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:步骤A,将i赋值0,将j赋值0;执行步骤B;步骤B,在γ×i+k的整数部分大于j的情况下,执行步骤C;在γ×i+k的整数部分不大于j的情况下,执行步骤D;其中,γ为所述辅码流的帧率与所述视频数据的原始帧率的比值;k为常数;步骤C,确定所述第i帧视频数据不需进行丢帧处理,根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;且:在确定i小于N的情况下,i++,j++,重复执行步骤B;在确定i等于N的情况下,结束;步骤D,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;在确定i小于N的情况下,i++,重复执行步骤B;在确定i等于N的情况下,结束。
可选地,所述根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,包括:设置第一输入参数和第一输出参数;其中,所述第一输入参数为所述第i帧视频数据的原始分辨率,所述第一输出参数为所述辅码流的分辨率;根据所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧的视频数据进行编码,得到第j帧辅码流视频数据。
可选地,所述根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储所述主码流视频数据,包括:设置第二输入参数和第二输出参数;其中,所述第二输入参数为所述第i帧视频数据的原始分辨率,所述第二输出参数为主码流的分辨率;根据所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧视频数据进行编码,得到第i帧主码流视频数据。
本发明实施例提供一种基于双码流输出视频数据的装置,包括:
获取模块:用于获取视频数据;处理模块:用于根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据;根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据;其中,所述辅码流的分辨率小于所述主码流的分辨率;存储模块,用于存储所述主码流视频数据;传输模块,用于传输所述辅码流视频数据。
可选地,所述视频数据中包括N帧视频数据,其中,所述N为正整数;
所述处理模块,用于:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:根据辅码流视频数据的帧率,确定是否需要对所述第i帧视频数据进行丢帧处理;在确定所述第i帧视频数据需进行丢帧处理的情况下,将所述第i帧视频数据丢弃;在确定所述第i帧视频数据不需进行丢帧处理的情况下,根据辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,得到第j帧辅码流视频数据,并传输所述第j帧辅码流视频数据;j为大于等于0且小于等于N的正整数。
可选地,所述处理模块,用于:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:步骤A,将i赋值0,将j赋值0;执行步骤B;步骤B,在γ×i+k大于j的情况下,执行步骤C;在γ×i+k不大于j的情况下,执行步骤D;其中,γ为所述辅码流的帧率与所述视频数据的原始帧率的比值;k为常数;步骤C,确定所述第i帧视频数据不需进行丢帧处理,根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;且:在确定i小于N的情况下,i++,j++,重复执行步骤B;
在确定i等于N的情况下,结束;步骤D,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;在确定i小于N的情况下,i++,重复执行步骤B;在确定i等于N的情况下,结束。
可选地,所述处理模块,用于:设置第一输入参数和第一输出参数;其中,所述第一输入参数为所述第i帧视频数据的原始分辨率,所述第一输出参数为所述辅码流的分辨率;根据所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧的视频数据进行编码,得到第j帧辅码流视频数据。
可选地,所述处理模块,用于:设置第二输入参数和第二输出参数;其中,所述第二输入参数为所述第i帧视频数据的原始分辨率,所述第二输出参数为主码流的分辨率;根据所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧的视频数据进行编码,得到第i帧主码流视频数据。
本发明实施例中,由于本发明实施例中根据主码流的分辨率,对所述视频数据进行缩放,得到主码流视频数据;根据辅码流的分辨率,对所述视频数据进行缩放,得到辅码流视频数据;如此,可以实现同时获得不同分辨率和帧率的码流,将主码流的视频数据进行存储,将辅码流的视频数据进行传输。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为本发明实施例提供的一种系统架构示意图;
图2为本发明实施例提供的一种基于双码流输出视频数据的方法流程示意图;
图3为本发明实施例提供的另一种基于双码流输出视频数据的方法流程示意图;
图4为本发明实施例提供的一种基于双码流输出视频数据的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了应用本发明实施例的一种系统架构示意图。如图1所示,该系统架构可以是Android系统,Symbian系统、Windows mobile系统、以及苹果iPhone OS系统等等,该系统构架可以应用在终端上,终端可以个人数字处理(Personal Digital Assistant,简称PDA)、具有无线通信功能的手持设备、如手机、平板电脑等。
该系统架构包括摄像头模块101,框架层102、应用层103。摄像头模块101包括:硬件104、内核105。其中,硬件104包括图像传感器106,用于传输摄像头拍摄的视频数据;内核105包括相机驱动107,用于对图像传感器传输的视频数据进行格式的转换,比如将采集的视频数据转换为YUV格式的视频数据,或者转换为红绿蓝(Red Green Blue,简称RGB)格式的视频数据;
框架层102包括获取模块108,存储模块109。其中,存储模块用于存储主码流视频数据;获取模块108可以为相机服务模块,相机服务从内核105中的相机驱动中获取视频数据,相机服务模块将获取到的视频数据传输到应用层103。
应用层103包括处理模块110,传输模块111,预览模块112。处理模块110包括:图形加速模块113,第一视频编码模块114,第二视频编码模块115;图形加速模块可以实现视频数据的缩放,可以为3D图形加速模块;图形加速模将缩放后的视频数据发送到第一视频编码模块或第二视频编码模块,第一视频编码模块对缩放后的视频数据进行编码,获得主码流视频数据;第二视频编码模块对缩放后的视频数据进行编码,获得辅码流视频数据,传输模块用于传输辅码流视频数据,预览模块用于预览缩放后的视频数据。
基于图1所示的系统架构,图2示例性示出了本发明实施例提供的一种基于双码流输出视频数据的方法流程示意图,如图2所示,该基于双码流输出视频数据的方法包括以下步骤:
步骤201,获取视频数据;
步骤202,根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储所述主码流视频数据;其中所述辅码流的分辨率小于所述主码流的分辨率;
步骤203,根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据,并传输所述辅码流视频数据。
在步骤202中,根据主码流的分辨率,缩放所述视频数据,对缩放后所述视频数据进行编码,获得主码流视频数据,将主码流视频数据进行存储;
在步骤203中,根据辅码流的分辨率,缩放所述视频数据,对缩放后所述视频数据进行编码,获得辅码流视频数据,将辅码流数据进行传输。
由于本发明实施例中根据主码流的分辨率,对所述视频数据进行缩放,得到主码流视频数据;根据辅码流的分辨率,对所述视频数据进行缩放,得到辅码流视频数据;如此,可以实现同时获得不同分辨率和帧率的码流,将主码流的视频数据进行存储,将辅码流的视频数据进行传输。
本发明实施中,在获取视频数据之前,还包括打开并初始化摄像头模块;初始化摄像头模块包括设置获取所需要视频数据的参数,如:分辨率,帧率,曝光参数等参数信息。比如现在想要获得存储1080p的视频,那么在初始化摄像头模块时,设置的分辨率参数为1920×1080,帧率通常设置为60HZ。
可选地,本发明实施例中,所述根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储所述主码流视频数据,包括:设置第二输入参数和第二输出参数;其中,所述第二输入参数为所述第i帧视频数据的原始分辨率,所述第二输出参数为主码流的分辨率;根据所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧的视频数据进行编码,得到第i帧主码流视频数据;并存储所述第i帧主码流视频数据。
本发明实施例中,可以在3D图形加速模块实现缩放所述视频数据。比如假设主码流的分辨率为720p,即第二输出参数为720p;第二输入参数为第i帧视频数据的原始分辨率,原始分辨率为在初始化摄像头模块时设置的分辨率,即1080p;根据第二输入参数和所述第二输出参数对第i帧的视频数据进行压缩,对压缩后的第i帧的视频数据进行编码;可选地,编码器可采用H.264或MPEG-4等编码格式进行编码,编码后得到第i帧主码流视频数据,并所述第i帧主码流视频数据。本发明实施例中,根据主码流的分辨率和视频数据的原始分辨率,设置第二输入参数和第二输出参数,实现了对获取的视频数据根据需要的分辨率进行等比放缩。
可选地,本发明实施例中,根据预览界面中显示窗口的分辨率,在3D图形加速模块中,设置第三输入参数和第三输出参数;其中,所述第三输入参数为所述第i帧视频数据的原始分辨率,所述第三输出参数为显示窗口的宽和高;根据所述第三输入参数和所述第三输出参数,在3D图形加速模块对所述第i帧的视频数据进行压缩,得到预览视频数据;并在所述预览界面上显示预览视频数据。比如,预览界面中显示窗口的宽和高为480×800,即第三输出参数为480×800,预览界面可以有一个显示窗口,也可以有多个显示窗口。
可选地,本发明实施例中,所述视频数据中包括N帧视频数据,其中,所述N为正整数;所述根据辅码流的分辨率,缩放所述视频数据得到辅码流视频数据,并传输所述辅码流视频数据,包括:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:根据辅码流视频数据的帧率,确定是否需要对所述第i帧视频数据进行丢帧处理;在确定所述第i帧视频数据需进行丢帧处理的情况下,将所述第i帧视频数据丢弃;在确定所述第i帧视频数据不需进行丢帧处理的情况下,根据辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,得到第j帧辅码流视频数据,并传输所述第j帧辅码流视频数据;j为大于等于0且小于等于N的正整数。
可选地,所述根据辅码流的分辨率,缩放所述视频数据得到辅码流视频数据,并传输所述辅码流视频数据,包括:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:步骤A,将i赋值0,将j赋值0;执行步骤B;步骤B,在γ×i+k的整数部分大于j的情况下,执行步骤C;在γ×i+k的整数部分不大于j的情况下,执行步骤D;其中,γ为所述辅码流视频数据的帧率与所述视频数据的原始帧率的比值;k为常数;步骤C,确定所述第i帧视频数据不需进行丢帧处理,根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;且:在确定i小于N的情况下,i++,j++,重复执行步骤B;在确定i等于N的情况下,结束;步骤D,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;在确定i小于N的情况下,i++,重复执行步骤B;在确定i等于N的情况下,结束。
本发明实施例中,假设视频数据的原始帧率为X,X为大于等于1的正整数,预设的辅码流视频数据的帧率为Y,为大于等于1的正整数;其中,帧率Y小于原始帧率X,则γ=Y/X,可选地,针对所述N帧视频数据中的第i帧视频数据,本发明实施例中将i赋值0,j赋值0,则帧数i为第i帧,帧数j为第j帧。当i=1,即获取第1帧视频数据时,此时,辅码流的帧数j的取值为0,对γ×i+0.5的整数部分与辅码流的第0帧进行比较;在γ×1+0.5的整数部分大于0的情况下,确定所述第1帧视频数据不需进行丢帧处理。在确定不需要丢帧处理的情况下,根据所述辅码流的分辨率,对所述第1帧视频数据以所述辅码流的分辨率进行压缩,获得第1帧辅码流的视频数据。继续获取2帧视频数据,在确定2小于N的情况下,重复执行:确定γ×i+0.5的整数部分与j的大小情况;在γ×i+0.5的整数部分不大于1的情况下,确定所述第2帧视频数据需进行丢帧处理,将所述第2帧视频数据丢弃;如此循环i++,j++,其中,i++表示i的取值加1,j++表示j的取值加1,直到在确定i等于N的情况下,结束。本发明实施例中,通过丢帧处理,实现了对辅码流帧率的控制。
可选地,所述根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,包括:设置第一输入参数和第一输出参数;其中,所述第一输入参数为所述第i帧视频数据的原始分辨率,所述第一输出参数为所述辅码流的分辨率;根据所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩;得到第j帧辅码流视频数据。
本发明实施例中,设置所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩后的视频数据进行编码与对所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩后的视频数据进行编码可以在相同的视频编码器中执行,也可以在不同的编码器中执行;编码器可采用H.264或MPEG-4等编码格式进行编码。设置所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩,对压缩后的数据进行编码获得第j帧辅码流视频数据;设置所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩,对压缩后的数据进行编码获得第i帧主码流视频数据。本发明实施例中,根据辅码流的分辨率和第i帧视频数据的原始分辨率,设置所述第一输入参数和所述第一输出参数,实现了对辅码流分辨率的控制。
为了更清楚的介绍上述方法流程,图3示例性示出了本发明实施例提供的一种基于双码流输出视频数据的方法。该实施例中基于双码流输出视频的方法可以在Android系统实现,本发明实施例中,可以在3D图形加速模块对视频数据进行压缩,对压缩后的视频数据通过编码器进行编码,获得压缩后的辅码流视频数据。基于双码流输出视频数据的方法在Android系统应用的过程见下述内容。
如图3所示,该方法包括:
步骤301,调用Android框架层的相机服务接口来打开并初始化摄像头模块;
可选地,初始化摄像头模块包括设置获取视频数据所需要的参数,如:分辨率,帧率,曝光参数等参数信息;
步骤302,获取第i帧视频数据;
可选地,视频数据可以为YUV格式的视频数据,也可以为RGB格式的视频数据;
步骤303,确定主码流的分辨率;
步骤304,设置第二输入参数为第i帧视频数据的分辨率,设置第二输出参数为存储所述第i帧视频数据的分辨率;对第i帧视频数据进行缩放;
可选地,可以在3D图形加速模块,设置第二输入参数和第二输出参数;
步骤305,对缩放后的第i帧视频数据进行编码,获得主码流视频数据;
步骤306,存储主码流视频数据;
步骤307,确定辅码流的帧率和分辨率;
步骤308,根据辅码流的帧率和视频数据的原始帧率的比确定帧率比值γ;
步骤309,针对N帧视频数据中的第i帧视频数据,根据γ×i+k的整数部分与j的大小关系,确定是否需要对所述第i帧视频数据进行丢帧处理;在γ×i+k大于j的情况下,执行步骤310;在γ×i+k的整数部分不大于j的情况下,执行步骤315;j表示第j帧辅码流视频数据,将i赋值0,将j赋值0;
步骤310,确定所述第i帧视频数据不需进行丢帧处理;
步骤311,设置第一输入参数为第i帧视频数据的分辨率,设置第一输出参数为所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;其中,在确定i小于N的情况下,i++,重复执行步骤308;在确定i等于N的情况下,结束;
可选地,在3D图形加速模块,设置第一输入参数和第一输出参数;
步骤312,调用Android框架层视频编码器,对以所述辅码流的分辨率进行压缩后的视频数据进行编码;
步骤313,获取第j帧辅码流视频数据;
步骤314,传输所述辅码流视频数据;
步骤315,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;其中,在确定i小于N的情况下,i++,重复执行步骤308;在确定i等于N的情况下,结束;
步骤316,确定预览界面中显示窗口的分辨率;
步骤317,设置第三输入参数为第i帧视频数据的原始分辨率,第三输出参数为显示第i帧视频数据的显示预览界面中显示窗口的分辨率;对第i帧视频数据进行缩放;
步骤318,获得预览视频数据;
步骤319,在预览界面上显示所述预览视频数据;
可选地,本发明实施例中,根据预览界面中显示窗口的分辨率,在3D图形加速模块中,设置第三输入参数和第三输出参数;其中,所述第三输入参数为所述第i帧视频数据的原始分辨率,所述第三输出参数为预览界面的显示窗口的宽和高;根据所述第三输入参数和所述第三输出参数,在3D图形加速模块对所述第i帧的视频数据进行压缩,得到预览视频数据;并在所述预览界面上显示预览视频数据。比如,预览界面中显示窗口的宽和高为480×800,即第三输出参数为480×800,预览界面可以有一个显示窗口,也可以有多个显示窗口。
上述步骤中,步骤303,步骤307,步骤316没有先后顺序,根据实际需要确定执行其中一个多多个。
从上述内容可以看出:本发明实施例中,由于本发明实施例中根据主码流的分辨率,对所述视频数据进行缩放,得到主码流视频数据;根据辅码流的分辨率,对所述视频数据进行缩放,得到辅码流视频数据;如此,可以实现同时获得不同分辨率和帧率的码流,将主码流的视频数据进行存储,将辅码流的视频数据进行传输。
图4示例性示出了本发明实施例提供的一种基于双码流输出视频数据的装置的结构示意图。
基于相同构思,本发明实施例提供一种基于双码流输出视频数据的装置,如图4所示,基于双码流输出视频数据的装置400包括获取模块401、处理模块402、存储模块403和传输模块404。其中:
获取模块:用于获取视频数据;处理模块:用于根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据;根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据;其中,所述辅码流的分辨率小于所述主码流的分辨率;存储模块,用于存储所述主码流视频数据;传输模块,用于传输所述辅码流视频数据。
可选地,所述视频数据中包括N帧视频数据,其中,所述N为正整数;
所述处理模块,用于:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:根据辅码流视频数据的帧率,确定是否需要对所述第i帧视频数据进行丢帧处理;在确定所述第i帧视频数据需进行丢帧处理的情况下,将所述第i帧视频数据丢弃;在确定所述第i帧视频数据不需进行丢帧处理的情况下,根据辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,得到第j帧辅码流视频数据,并传输所述第j帧辅码流视频数据;j为大于等于0且小于等于N的正整数。
可选地,所述处理模块,用于:针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:步骤A,将i赋值0,将j赋值0;执行步骤B;步骤B,在γ×i+k大于j的情况下,执行步骤C;在γ×i+k不大于j的情况下,执行步骤D;其中,γ为所述辅码流的帧率与所述视频数据的原始帧率的比值;k为常数;步骤C,确定所述第i帧视频数据不需进行丢帧处理,根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;且:在确定i小于N的情况下,i++,j++,重复执行步骤B;
在确定i等于N的情况下,结束;步骤D,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;在确定i小于N的情况下,i++,重复执行步骤B;在确定i等于N的情况下,结束。
可选地,所述处理模块,用于:设置第一输入参数和第一输出参数;其中,所述第一输入参数为所述第i帧视频数据的原始分辨率,所述第一输出参数为所述辅码流的分辨率;根据所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧的视频数据进行编码,得到第j帧辅码流视频数据。
可选地,所述处理模块,用于:设置第二输入参数和第二输出参数;其中,所述第二输入参数为所述第i帧视频数据的原始分辨率,所述第二输出参数为主码流的分辨率,所述主码流的分别率为存储所述第i帧视频数据的存储界面的分辨率;根据所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩;对压缩后的所述第i帧的视频数据进行编码,得到第i帧主码流视频数据;所述存储模块,用于:在所述存储界面上存储所述第i帧主码流视频数据。
从上述内容可以看出:本发明实施例中,由于本发明实施例中,根据主码流的分辨率,对所述视频数据进行缩放,得到主码流视频数据;根据辅码流的分辨率,对所述视频数据进行缩放,得到辅码流视频数据;如此,可以实现获得不同分辨率和帧率的码流,将主码流的视频数据进行存储,将辅码流的视频数据进行传输。
本领域内的技术人员应明白,本发明实施例可提供为方法、系统、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种基于双码流输出视频数据的方法,其特征在于,包括:
获取视频数据;
根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储所述主码流视频数据;
根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据,并传输所述辅码流视频数据;
所述辅码流的分辨率小于所述主码流的分辨率。
2.如权利要求1所述的方法,其特征在于,所述视频数据中包括N帧视频数据,其中,所述N为正整数;
所述根据辅码流的分辨率,缩放所述视频数据得到辅码流视频数据,并传输所述辅码流视频数据,包括:
针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:
根据辅码流视频数据的帧率,确定是否需要对所述第i帧视频数据进行丢帧处理;
在确定所述第i帧视频数据需进行丢帧处理的情况下,将所述第i帧视频数据丢弃;
在确定所述第i帧视频数据不需进行丢帧处理的情况下,根据辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,得到第j帧辅码流视频数据,并传输所述第j帧辅码流视频数据;j为大于等于0且小于等于N的正整数。
3.如权利要求2所述的方法,其特征在于,所述根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据,并传输所述辅码流视频数据,包括:
针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:
步骤A,将i赋值0,将j赋值0;执行步骤B;
步骤B,在γ×i+k的整数部分大于j的情况下,执行步骤C;在γ×i+k的整数部分不大于j的情况下,执行步骤D;其中,γ为所述辅码流的帧率与所述视频数据的原始帧率的比值;k为常数;
步骤C,确定所述第i帧视频数据不需进行丢帧处理,根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;且:
在确定i小于N的情况下,i++,j++,重复执行步骤B;
在确定i等于N的情况下,结束;
步骤D,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;
在确定i小于N的情况下,i++,重复执行步骤B;
在确定i等于N的情况下,结束。
4.如权利要求2或3所述的方法,其特征在于,所述根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,包括:
设置第一输入参数和第一输出参数;其中,所述第一输入参数为所述第i帧视频数据的原始分辨率,所述第一输出参数为所述辅码流的分辨率;
根据所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩;
对压缩后的所述第i帧的视频数据进行编码,得到第j帧辅码流视频数据。
5.如权利要求1所述的方法,其特征在于,所述根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据,并存储所述主码流视频数据,包括:
设置第二输入参数和第二输出参数;其中,所述第二输入参数为所述第i帧视频数据的原始分辨率,所述第二输出参数为主码流的分辨率;
根据所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩;
对压缩后的所述第i帧视频数据进行编码,得到第i帧主码流视频数据。
6.一种基于双码流输出视频数据的装置,其特征在于,包括:
获取模块:用于获取视频数据;
处理模块:用于根据主码流的分辨率,缩放所述视频数据,得到主码流视频数据;根据辅码流的分辨率,缩放所述视频数据,得到辅码流视频数据;其中,所述辅码流的分辨率小于所述主码流的分辨率;
存储模块,用于存储所述主码流视频数据;
传输模块,用于传输所述辅码流视频数据。
7.如权利要求6所述的装置,其特征在于,所述视频数据中包括N帧视频数据,其中,所述N为正整数;
所述处理模块,用于:
针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:
根据辅码流视频数据的帧率,确定是否需要对所述第i帧视频数据进行丢帧处理;
在确定所述第i帧视频数据需进行丢帧处理的情况下,将所述第i帧视频数据丢弃;
在确定所述第i帧视频数据不需进行丢帧处理的情况下,根据辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩,得到第j帧辅码流视频数据,并传输所述第j帧辅码流视频数据;j为大于等于0且小于等于N的整数。
8.如权利要求7所述的装置,其特征在于,所述处理模块,用于:
针对所述N帧视频数据中的第i帧视频数据,所述i为大于等于零且小于等于N的正整数,执行:
步骤A,将i赋值0,将j赋值0;执行步骤B;
步骤B,在γ×i+k大于j的情况下,执行步骤C;在γ×i+k不大于j的情况下,执行步骤D;其中,γ为所述辅码流的帧率与所述视频数据的原始帧率的比值;k为常数;
步骤C,确定所述第i帧视频数据不需进行丢帧处理,根据所述辅码流的分辨率,对所述第i帧视频数据以所述辅码流的分辨率进行压缩;且:
在确定i小于N的情况下,i++,j++,重复执行步骤B;
在确定i等于N的情况下,结束;
步骤D,确定所述第i帧视频数据需进行丢帧处理,将所述第i帧视频数据丢弃;
在确定i小于N的情况下,i++,重复执行步骤B;
在确定i等于N的情况下,结束。
9.如权利要求7或8所述的装置,其特征在于,所述处理模块,用于:
设置第一输入参数和第一输出参数;其中,所述第一输入参数为所述第i帧视频数据的原始分辨率,所述第一输出参数为所述辅码流的分辨率;根据所述第一输入参数和所述第一输出参数,对所述第i帧的视频数据进行压缩;
对压缩后的所述第i帧的视频数据进行编码,得到第j帧辅码流视频数据。
10.如权利要求6所述的装置,其特征在于,所述处理模块,用于:
设置第二输入参数和第二输出参数;其中,所述第二输入参数为所述第i帧视频数据的原始分辨率,所述第二输出参数为主码流的分辨率;根据所述第二输入参数和所述第二输出参数,对所述第i帧的视频数据进行压缩;
对压缩后的所述第i帧的视频数据进行编码,得到第i帧主码流视频数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710160638.5A CN107018415A (zh) | 2017-03-17 | 2017-03-17 | 一种基于双码流输出视频数据的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710160638.5A CN107018415A (zh) | 2017-03-17 | 2017-03-17 | 一种基于双码流输出视频数据的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107018415A true CN107018415A (zh) | 2017-08-04 |
Family
ID=59440495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710160638.5A Pending CN107018415A (zh) | 2017-03-17 | 2017-03-17 | 一种基于双码流输出视频数据的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107018415A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112135189A (zh) * | 2020-09-23 | 2020-12-25 | 上海博泰悦臻网络技术服务有限公司 | 一种车载视频数据的处理方法、装置及系统 |
CN112203043A (zh) * | 2020-09-14 | 2021-01-08 | 中标慧安信息技术股份有限公司 | 一种视频传输方法及系统 |
USD918654S1 (en) | 2019-06-06 | 2021-05-11 | Sharkninja Operating Llc | Grill plate |
USD922126S1 (en) | 2019-06-06 | 2021-06-15 | Sharkninja Operating Llc | User interface for a food preparation device |
CN113810767A (zh) * | 2021-09-13 | 2021-12-17 | 南京国电南自电网自动化有限公司 | 一种基于websocket的视频实时监视方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102547228A (zh) * | 2011-10-10 | 2012-07-04 | 南京航空航天大学 | 基于本地存储和分辨率分级传输的高清网络视频监控系统 |
CN102905128A (zh) * | 2012-09-07 | 2013-01-30 | 武汉长江通信产业集团股份有限公司 | 编解码处理器在无线视频传输过程中码率控制的方法 |
US20130050401A1 (en) * | 2009-09-04 | 2013-02-28 | Breitblick Gmbh | Portable wide-angle video recording system |
CN105049918A (zh) * | 2015-07-08 | 2015-11-11 | 成都西可科技有限公司 | 一种本地录制视频和网络直播视频的分离方法 |
-
2017
- 2017-03-17 CN CN201710160638.5A patent/CN107018415A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130050401A1 (en) * | 2009-09-04 | 2013-02-28 | Breitblick Gmbh | Portable wide-angle video recording system |
CN102547228A (zh) * | 2011-10-10 | 2012-07-04 | 南京航空航天大学 | 基于本地存储和分辨率分级传输的高清网络视频监控系统 |
CN102905128A (zh) * | 2012-09-07 | 2013-01-30 | 武汉长江通信产业集团股份有限公司 | 编解码处理器在无线视频传输过程中码率控制的方法 |
CN105049918A (zh) * | 2015-07-08 | 2015-11-11 | 成都西可科技有限公司 | 一种本地录制视频和网络直播视频的分离方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USD918654S1 (en) | 2019-06-06 | 2021-05-11 | Sharkninja Operating Llc | Grill plate |
USD922126S1 (en) | 2019-06-06 | 2021-06-15 | Sharkninja Operating Llc | User interface for a food preparation device |
CN112203043A (zh) * | 2020-09-14 | 2021-01-08 | 中标慧安信息技术股份有限公司 | 一种视频传输方法及系统 |
CN112135189A (zh) * | 2020-09-23 | 2020-12-25 | 上海博泰悦臻网络技术服务有限公司 | 一种车载视频数据的处理方法、装置及系统 |
CN113810767A (zh) * | 2021-09-13 | 2021-12-17 | 南京国电南自电网自动化有限公司 | 一种基于websocket的视频实时监视方法及系统 |
CN113810767B (zh) * | 2021-09-13 | 2024-02-13 | 南京国电南自电网自动化有限公司 | 一种基于websocket的视频实时监视方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107018415A (zh) | 一种基于双码流输出视频数据的方法和装置 | |
CN102857751B (zh) | 一种视频编解码方法和装置 | |
CN109076246B (zh) | 使用图像数据校正掩码的视频编码方法和系统 | |
KR102617258B1 (ko) | 이미지 프로세싱 방법 및 장치 | |
CN107736019B (zh) | 车载安防监控方法、系统及终端设备 | |
EP3635953B1 (en) | Electronic device for high-speed compression processing of feature map of cnn utilizing system and controlling method thereof | |
US20220014447A1 (en) | Method for enhancing quality of media | |
US20190182503A1 (en) | Method and image processing apparatus for video coding | |
CN113421312A (zh) | 一种对黑白视频的着色方法、装置、存储介质及终端 | |
CN105657247A (zh) | 一种电子设备的二次曝光拍照方法和装置 | |
CN111818295B (zh) | 一种图像获取方法及装置 | |
CN114040246A (zh) | 图形处理器的图像格式转换方法、装置、设备及存储介质 | |
CN109982091B (zh) | 一种图像的处理方法及装置 | |
CN114782250A (zh) | 视频图像处理方法、装置、电子设备及存储介质 | |
CN112261417B (zh) | 视频推送方法及系统、设备及可读存储介质 | |
CN113727105A (zh) | 一种深度图压缩方法、装置、系统及存储介质 | |
CN111246208B (zh) | 视频处理方法、装置及电子设备 | |
CN106921840B (zh) | 一种即时视频中的人脸美化方法、设备及系统 | |
CN113132418A (zh) | 一种可变等级加密方法、系统及装置 | |
CN101262598A (zh) | 马赛克图像合成的方法及装置 | |
CN106998457A (zh) | 立体摄像装置及利用此的图像处理方法 | |
US12015777B2 (en) | Signaling profile level exemptions for immersive video | |
EP3804333A1 (en) | Prediction for light-field coding and decoding | |
CN115422986A (zh) | 处理方法、处理设备及存储介质 | |
CN116248889A (zh) | 图像编码及解码方法、装置和电子设备 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170804 |