CN111935545B - 转码视频数据的方法、装置、设备及存储介质 - Google Patents

转码视频数据的方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111935545B
CN111935545B CN202010767960.6A CN202010767960A CN111935545B CN 111935545 B CN111935545 B CN 111935545B CN 202010767960 A CN202010767960 A CN 202010767960A CN 111935545 B CN111935545 B CN 111935545B
Authority
CN
China
Prior art keywords
video data
coding format
peak signal
noise ratio
video
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.)
Active
Application number
CN202010767960.6A
Other languages
English (en)
Other versions
CN111935545A (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.)
Tencent Music Entertainment Technology Shenzhen Co Ltd
Original Assignee
Tencent Music Entertainment Technology Shenzhen Co 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 Tencent Music Entertainment Technology Shenzhen Co Ltd filed Critical Tencent Music Entertainment Technology Shenzhen Co Ltd
Priority to CN202010767960.6A priority Critical patent/CN111935545B/zh
Publication of CN111935545A publication Critical patent/CN111935545A/zh
Application granted granted Critical
Publication of CN111935545B publication Critical patent/CN111935545B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440254Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering signal-to-noise parameters, e.g. requantization

Abstract

本申请公开了一种转码视频数据的方法、装置、设备及存储介质,属于计算机技术领域。所述方法包括:获取第一编码格式的视频数据,将所述第一编码格式的视频数据转码为终端支持的第二编码格式的视频数据;确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比;如果所述峰值信噪比大于或等于预设阈值,则向所述终端发送所述第二编码格式的视频数据,如果所述峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将所述第一编码格式的视频数据转码为第二编码格式的视频数据的处理。通过本申请可以使终端不会因为接收到有错误的第二编码格式的视频数据而出现显示错误。

Description

转码视频数据的方法、装置、设备及存储介质
技术领域
本申请涉及计算机技术领域,特别涉及一种转码视频数据的方法、装置、设备及存储介质。
背景技术
在生活中,随着计算机技术的发展,使用应用程序播放视频已经是很常见的事了,在播放视频之前,需要对视频数据进行处理,并将其发送到相应的终端上,其处理可以如下:
服务器接收一个终端发送的第一编码格式的视频数据或者获取服务器中存储的第一编码格式的视频数据,对该第一编码格式的视频数据进行转码,得到第二编码格式的视频数据,然后将该第二编码格式的视频数据发送给另一个终端。
在实现本申请的过程中,发明人发现现有技术至少存在以下问题:
服务器在进行转码的过程中很可能会出现转码错误,如果将转码错误的视频数据发送给终端,终端在播放视频时会出现显示错误。
发明内容
本申请实施例提供了一种转码视频数据的方法、装置、设备及存储介质,能够解决终端在播放视频时会出现显示错误的问题。所述技术方案如下:
一方面,提供了一种转码视频数据的方法,所述方法包括:
获取第一编码格式的视频数据,将所述第一编码格式的视频数据转码为终端支持的第二编码格式的视频数据;
确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比;
如果所述峰值信噪比大于或等于预设阈值,则向所述终端发送所述第二编码格式的视频数据,如果所述峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将所述第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
可选的,所述获取第一编码格式的视频数据之前,还包括:
接收所述终端在登录目标应用程序时发送的设备信息;
基于预先存储的设备信息与支持的编码格式的对应关系,以及所述终端发送的设备信息,确定所述终端支持的编码格式;
在所述终端支持的编码格式中,选取第二编码格式。
可选的,所述设备信息包括设备型号和/或系统版本。
可选的,所述确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比,包括:
确定所述第二编码格式的视频数据与所述第一编码格式的视频数据的相似度;
基于像素值上限的平方与所述相似度的比值,确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比。
可选的,所述峰值信噪比包括单帧视频数据之间的单帧峰值信噪比以及所有帧视频数据的平均峰值信噪比;
所述峰值信噪比大于或等于预设阈值包括:所述单帧峰值信噪比大于或等于第一预设阈值以及所述平均峰值信噪比大于或等于第二预设阈值;
所述峰值信噪比小于预设阈值包括:所述单帧峰值信噪比小于第一预设阈值或者所述平均峰值信噪比小于第二预设阈值。
另一方面,提供了一种转码视频数据的装置,所述装置包括:
转码模块,用于获取第一编码格式的视频数据,将所述第一编码格式的视频数据转码为终端支持的第二编码格式的视频数据;
确定模块,用于确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比;
判断模块,用于如果所述峰值信噪比大于或等于预设阈值,则向所述终端发送所述第二编码格式的视频数据,如果所述峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将所述第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
可选的,所述装置还包括选取模块,所述选取模块,用于:
接收所述终端在登录目标应用程序时发送的设备信息;
基于预先存储的设备信息与支持的编码格式的对应关系,以及所述终端发送的设备信息,确定所述终端支持的编码格式;
在所述终端支持的编码格式中,选取第二编码格式。
可选的,所述设备信息包括设备型号和/或系统版本。
可选的,所述确定模块,用于:
确定所述第二编码格式的视频数据与所述第一编码格式的视频数据的相似度;
基于像素值上限的平方与所述相似度的比值,确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比。
可选的,所述峰值信噪比包括单帧视频数据之间的单帧峰值信噪比以及所有帧视频数据的平均峰值信噪比;
所述峰值信噪比大于或等于预设阈值包括:所述单帧峰值信噪比大于或等于第一预设阈值以及所述平均峰值信噪比大于或等于第二预设阈值;
所述峰值信噪比小于预设阈值包括:所述单帧峰值信噪比小于第一预设阈值或者所述平均峰值信噪比小于第二预设阈值。
再一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有指令,所述处理器执行所述指令使得所述计算机设备实现所述转码视频数据的方法。
再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有指令,计算机设备执行所述指令使得所述计算机设备实现所述转码视频数据的方法。
本申请实施例提供的技术方案带来的有益效果是:
本申请将第一编码格式的视频数据转码为第二编码格式的视频数据,确定第二编码格式的视频数据相对于第一编码格式的视频数据的峰值信噪比,进而通过比较上述峰值信噪比与预设与之的大小关系来确定第二编码格式的视频数据中每一帧在转码过程中是否出现错误,如果出现错误,则重新转码并重复上述处理,从而最终获得没有错误第二编码格式的视频数据,并将其发送个终端,使得终端在播放第二编码格式的视频数据时,不会因为接收到有错误的第二编码格式的视频数据而出现显示错误。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种转码视频数据的方法的实施环境图;
图2是本申请实施例提供的一种转码视频数据的方法的流程图;
图3是本申请实施例提供的一种转码视频数据的装置结构示意图;
图4是本申请实施例提供的服务器结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供了一种转码视频数据的方法,该方法可以由服务器实现。服务器可以是应用程序的后台服务器,比如,服务器是视频播放应用程序的后台服务器,该服务器可以是一个单独的服务器也可以是一个服务器组,如果是单独的服务器,该服务器可以负责下述方案中的所有需要由服务器进行的处理,如果是服务器组,服务器组中的不同服务器分别可以负责下述方案中的不同处理,具体的处理分配情况可以由技术人员根据实际需求任意设置,此处不再赘述。
如图1所示,服务器可以对接收到的第一编码格式的视频数据进行解封装、解码,进而得到该视频数据的源数据(或称为裸数据),服务器对该视频数据的源数据进行编码,得到第二编码格式的视频数据,然后对其进行封装。
图2是本申请实施例提供的一种转码视频数据的方法的流程图。参见图2,该流程包括:
步骤201、获取第一编码格式的视频数据,将第一编码格式的视频数据转码为第二编码格式的视频数据。
在实施中,服务器可以先确定至少一个第一编码格式的视频数据,然后检测该至少一个第一编码格式是否属于上述终端支持的编码格式,如果上述至少一个第一编码格式不属于上述终端支持的编码格式,则服务器将至少一个第一编码格式的视频数据转码为第二编码格式的视频数据,处理可以如下:
服务器可以先确定至少一个第一编码格式的视频数据。
服务器可以接收终端发送的视频数据请求,服务器还可以接收技术人员设置的向终端推送视频数据的指令,进而服务器可以根据上述指令或者上述视频数据请求确定发送给终端的至少一个视频数据,该获取到的至少一个视频数据的编码格式即为第一编码格式,该第一编码格式可以是多个编码格式的集合,还可以是特指一个具体的编码格式。
其中,视频数据请求以及向终端推送视频数据的指令中可以包含有终端的设备信息。
例如,服务器接收到终端发送的视频数据请求,该请求中携带有一个视频数据的标识,则服务器根据该标识获取对应的视频数据,该获取到的视频数据的编码格式即为第一编码格式。
然后,服务器可以检测该至少一个第一编码格式是否属于上述终端支持的编码格式。
在确定至少一个第一编码格式的视频数据后,服务器可以根据视频数据请求或者上述指令获取终端的设备信息,获取内存中预先存储的设备信息与终端支持的编码格式的对应关系,然后基于该对应关系以及上述设备信息确定上述终端支持的编码格式,并检测上述第一编码格式是否属于上述终端支持的编码格式。
再然后,如果上述至少一个第一编码格式不属于上述终端支持的编码格式,则服务器将至少一个第一编码格式的视频数据转码为至少一个第二编码格式的视频数据。
可选的,如果上述第一编码格式属于上述终端支持的编码格式,则直接将该第一编码格式的视频数据发送给终端。
可选的,在进行上述步骤201之前,服务器可以获取第二编码格式,其处理可以如下:
首先,服务器接收终端在登录目标应用程序时发送的设备信息。
其中,设备信息包括设备型号和/或系统版本。
用户通过终端使用视频播放应用程序时,用户需要在该视频播放应用程序中进行登录,当用户输入账号以及密码并触发登录控件时,终端可以将设备型号和/或系统版本与账号以及密码一起发送给服务器,服务器可以接收终端发送设备型号和/或系统版本与账号以及密码。
例如,用户通过第一终端使用视频播放应用程序时,当第一终端检测到用户输入账户、密码并触发登录控件时,第一终端将其设备型号A和/或系统版本a与账号以及密码一起发送给服务器,进而服务器接收终端发送设备型号A和/或系统版本a与账号以及密码。而后,用户又通过第二终端使用视频播放应用程序时,当第二终端检测到用户输入账户、密码并触发登录控件时,第二终端将其设备型号B和/或系统版本b与账号以及密码一起发送给服务器,进而服务器接收终端发送设备型号B和/或系统版本b与账号以及密码。
其次,服务器可以基于预先存储的设备信息与支持的编码格式的对应关系,以及终端发送的设备信息,确定终端支持的编码格式。
例如,服务器在接收到设备信息后,服务器基于预先存储的设备信息与支持的编码格式的对应关系,以及第一终端发送的设备型号A和/或系统版本a,确定第一终端支持的编码格式。
再次,服务器可以在终端支持的编码格式中选取第二编码格式。
在完成上述处理后服务器可以获得至少一个终端支持的编码格式,进而服务器可以在上述终端支持的编码格式中随机选择一个编码格式作为第二编码格式。
可选的,服务器还可以预先设置编码格式优先级,然后,基于上述编码格式优先级对终端支持的编码格式进行排序,进而服务器可以获取经排序后优先级最高的编码格式作为第二编码格式。
步骤202、确定第二编码格式的视频数据相对于第一编码格式的视频数据的峰值信噪比。
在实施中,服务器将第一编码格式的视频数据转码为第二编码格式的视频数据后,还可以确定第二编码格式的视频数据与第一编码格式的视频数据的相似度,然后基于相似度,确定第二编码格式的视频数据相对于第一编码格式的视频数据的峰值信噪比,具体处理可以如下:
首先,服务器可以确定像素值上限。
服务器将第一编码格式的视频数据转码为第二编码格式的视频数据后,可以将第一编码格式的视频数据解码为裸数据,进而服务器可以获取到第一视频帧,该第一视频帧是上述裸数据的视频帧,且服务器还可以将第二编码格式的视频数据解码为裸数据,进而服务器可以获取到第二视频帧,在得到第一视频帧以及第二视频帧后,服务器可以获取像素值上限,例如,该像素值是用8个比特表示的,则该像数值上限为255。
在此需要说明的是,在同分辨率以及同帧率转码的应用场景中,转码前后的视频数据的分辨率是相等的且视频帧是对齐的,也就是说在此应用场景中第一视频帧与第二视频帧一一对应。
其次,服务器可以基于像素值上限的平方与相似度的比值,确定第二编码格式的视频数据相对于第一编码格式的视频数据的峰值信噪比。
在服务器获取到像素值上限后,服务器可以确定第二视频帧与第一视频帧的相似度,其处理可以如下:
服务器可以获取第一视频帧与第二视频帧中相对应的两个像素点,计算第二视频帧的像素点相对第一视频帧的像素点的方差,并重复获取以及计算两个处理操作,直至每个第一视频帧中所有的像素点与相对应的第二视频帧中所有的像素点都被计算出了方差,进而将所有方差相加得到方差总和,然后将得到的方差总和除以每个第一视频帧中像素点的总数或者每个第二视频帧中像素点的总数,得到每个第二视频帧相对每个第一视频帧的均值方差,即得到每个第二视频帧相对每个第一视频帧的相似度。
在此需要说明的是,每个第一视频帧中像素点的总数与对应的第二视频帧中像素点的总数是相同的,且第一视频帧与对应的第二视频帧中的像素点一一对应。
在服务器获取到像素值上限以及第二视频帧相对第一视频帧的相似度后,可以确定各第二视频帧相对各第一视频帧的峰值信噪比,其处理可以如下:
在服务器获取到像素值上限以及每个第二视频帧与其对应的第一视频帧的相似度后,服务器可以计算像素值上限的平方与相似度的比值,进而服务器可以取该比值的对数,即可得到每个第二视频帧与其相对应的第一视频帧的峰值信噪比。
可选的,在确定每个第二视频帧与其相对应的第一视频帧的峰值信噪比之后,服务器可以获取平均峰值信噪比。
其中,第一视频帧的总数与第二视频帧的总数相同,且第一视频帧与第二视频帧一一对应。
服务器可以获取每个第二视频帧与其对应的第一视频帧的峰值信噪比,将得到的各个峰值信噪比累加,然后将累加的结果除以第二视频帧的总数或者第一视频帧的总数,得到第二编码格式的视频数据与第一编码格式的视频数据的平均峰值信噪比。
步骤203、如果峰值信噪比大于或等于预设阈值,则向终端发送第二编码格式的视频数据,如果峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
在实施中,服务器中存储有技术人员根据多次实验得到的预设阈值,服务器得到各第二视频帧与其所对应的第一视频帧的峰值信噪比后,可以根据该预设阈值来区分该视频帧是否为花屏帧,其处理可以如下:
第一步,逐一获取各第二视频帧与其所对应的第一视频帧的峰值信噪比,并检测峰值信噪比与预设阈值的大小关系。
第二步,如果峰值信噪比大于或等于预设阈值,则将该第二视频帧按顺序进行存储。
例如,预设阈值的大小为30dB,第一个第二视频帧与其所对应的第一个第一视频帧的峰值信噪比为40dB,则证明该第一个第二视频帧不是花屏帧,服务器可以将该第一个第二视频帧存储下来。
可选的,如果峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
例如,预设阈值的大小为30dB,第二个第二视频帧与其所对应的第二个第一视频帧的峰值信噪比为20dB,则证明该第二视频帧是花屏帧。服务器可以获取该第二个第二视频帧对应的第二个第一视频帧,进而对其进行重新转码,即服务器可以根据第一视频帧与第二视频帧的对应关系,获取第二个第二视频帧对应的第二个第一视频帧。然后,服务器可以获取该第二个第一视频帧的第一编码格式的视频数据,将服务器可以将该第一编码格式的视频数据转码为第二编码格式的视频数据,并计算出该重新转码后的第二个第二视频帧相对第二个第一视频帧的峰值信噪比。然后,重新检测峰值信噪比与预设阈值的大小关系,如果峰值信噪比大于或等于预设阈值,则证明该重新转码后的第二个第二视频帧不是花屏帧,服务器可以将该第二个第二视频帧存储在第一个第二视频帧后。
第三步,重复上述步骤直至所有第二视频帧都不是花屏帧,进而服务器可以得到完整的第二编码格式的视频数据,并向终端发送上述第二编码格式的视频数据。
可选的,服务器中存储有技术人员根据多次实验得到的预设阈值,服务器得到第二编码格式的视频数据相对第一编码格式的视频数据的平均峰值信噪比后,可以根据该预设阈值来区分该第二编码格式的视频数据是否存在转码错误,其处理可以如下:
第一步,检测平均峰值信噪比与预设阈值的大小关系。
获取平均峰值信噪比以及预设阈值,比较平均峰值信噪比与预设阈值的大小。
第二步,如果平均峰值信噪比大于或等于预设阈值,则向终端发送第二编码格式的视频数据。
例如,预设阈值的大小为30dB,平均峰值信噪比为40dB,则证明第二编码格式的视频数据中不存在转码错误,服务器向终端发送第二编码格式的视频数据。
可选的,如果平均峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
例如,预设阈值的大小为30dB,平均峰值信噪比为20dB,则证明第二编码格式的视频数据中存在转码错误。服务器可以重新获取第一编码格式的视频数据,进而对其进行重新转码,得到第二编码格式的视频数据,并计算出该重新转码后的第二编码格式的视频数据的平均峰值信噪比。然后,重新检测平均峰值信噪比与预设阈值的大小关系。
需要说明的是,也可以使用峰值信噪比以及平均峰值信噪比同时对转码后的视频数据进行检测。如果所有帧每一帧的峰值信噪比以及所有帧的平均峰值信噪比都大于各自对应的预设阈值,则可以确定视频数据并未存在花屏,可以向终端发送所述第二编码格式的视频数据;如果某帧的峰值信噪比或者所有帧的平均峰值信噪比任一不大于各自对应的预设阈值,则确定视频数据存在花屏,重新执行转码操作。
本申请将第一编码格式的视频数据转码为第二编码格式的视频数据,确定第二编码格式的视频数据相对于第一编码格式的视频数据的峰值信噪比,进而通过比较上述峰值信噪比与预设阈值的大小关系来确定第二编码格式的视频数据中每一帧在转码过程中是否出现错误,如果出现错误,则重新转码并重复上述处理,从而最终获得没有错误第二编码格式的视频数据,并将其发送给终端,使得终端在播放第二编码格式的视频数据时,不会因为接收到有错误的第二编码格式的视频数据而出现显示错误。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
本申请实施例提供一种转码视频数据的装置,该装置可以是上述服务器,如图3所示,所述装置包括:
转码模块310,用于获取第一编码格式的视频数据,将所述第一编码格式的视频数据转码为终端支持的第二编码格式的视频数据;
确定模块320,用于确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比;
判断模块330,用于如果所述峰值信噪比大于或等于预设阈值,则向所述终端发送所述第二编码格式的视频数据,如果所述峰值信噪比小于预设阈值,则转至重新执行获取第一编码格式的视频数据将所述第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
可选的,所述装置还包括选取模块,所述选取模块,用于:
接收所述终端在登录目标应用程序时发送的设备信息;
基于预先存储的设备信息与支持的编码格式的对应关系,以及所述终端发送的设备信息,确定所述终端支持的编码格式;
在所述终端支持的编码格式中,选取第二编码格式。
可选的,所述设备信息包括设备型号和/或系统版本。
可选的,所述确定模块320,用于:
确定所述第二编码格式的视频数据与所述第一编码格式的视频数据的相似度;
基于像素值上限的平方与所述相似度的比值,确定所述第二编码格式的视频数据相对于所述第一编码格式的视频数据的峰值信噪比。
可选的,所述峰值信噪比包括单帧视频数据之间的单帧峰值信噪比以及所有帧视频数据的平均峰值信噪比;
所述峰值信噪比大于或等于预设阈值包括:所述单帧峰值信噪比大于或等于第一预设阈值以及所述平均峰值信噪比大于或等于第二预设阈值;
所述峰值信噪比小于预设阈值包括:所述单帧峰值信噪比小于第一预设阈值或者所述平均峰值信噪比小于第二预设阈值。
本申请将第一编码格式的视频数据转码为第二编码格式的视频数据,确定第二编码格式的视频数据相对于第一编码格式的视频数据的峰值信噪比,进而通过比较上述峰值信噪比与预设与之的大小关系来确定第二编码格式的视频数据中每一帧在转码过程中是否出现错误,如果出现错误,则重新转码并重复上述处理,从而最终获得没有错误第二编码格式的视频数据,并将其发送个终端,使得终端在播放第二编码格式的视频数据时,不会因为接收到有错误的第二编码格式的视频数据而出现显示错误。
需要说明的是:上述实施例提供的转码视频数据的装置在进行转码视频数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的转码视频数据的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图4是本申请实施例提供的一种服务器的结构示意图,该服务器可以是上述服务器,该服务器400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)401和一个或一个以上的存储器402,其中,所述存储器402中存储有至少一条指令,所述至少一条指令由所述处理器401加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中转码视频数据的方法。例如,所述计算机可读存储介质可以是只读存储器(Read-only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (8)

1.一种转码视频数据的方法,其特征在于,所述方法包括:
获取第一编码格式的视频数据,将所述第一编码格式的视频数据转码为终端支持的第二编码格式的视频数据;
将解码所述第一编码格式的视频数据得到的裸数据的视频帧作为第一视频帧,将解码所述第二编码格式的视频数据得到的裸数据的视频帧作为第二视频帧,所述第一视频帧和所述第二视频帧一一对应;
确定每个第二视频帧相对每个第一视频帧的相似度;基于像素值上限的平方与所述相似度的比值,确定所述每个第二编码格式的视频数据相对于所述每个第一编码格式的视频数据的峰值信噪比,所述峰值信噪比为单帧峰值信噪比;
将得到的各个所述单帧峰值信噪比累加,将累加的结果除以所述第二视频帧的总数或者所述第一视频帧的总数,得到所述第二编码格式的视频数据与所述第一编码格式的视频数据的平均峰值信噪比;
如果所述单帧峰值信噪比大于第一预设阈值以及所述平均峰值信噪比大于第二预设阈值,则向所述终端发送所述第二编码格式的视频数据,如果所述单帧峰值信噪比不大于所述第一预设阈值或者所述平均峰值信噪比不大于所述第二预设阈值,则转至重新执行获取第一编码格式的视频数据将所述第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
2.根据权利要求1所述的方法,其特征在于,所述获取第一编码格式的视频数据之前,还包括:
接收所述终端在登录目标应用程序时发送的设备信息;
基于预先存储的设备信息与支持的编码格式的对应关系,以及所述终端发送的设备信息,确定所述终端支持的编码格式;
在所述终端支持的编码格式中,选取第二编码格式。
3.根据权利要求2所述的方法,其特征在于,所述设备信息包括设备型号和/或系统版本。
4.一种转码视频数据的装置,其特征在于,所述装置包括:
转码模块,用于获取第一编码格式的视频数据,将所述第一编码格式的视频数据转码为终端支持的第二编码格式的视频数据;
确定模块,用于将解码所述第一编码格式的视频数据得到的裸数据的视频帧作为第一视频帧,将解码所述第二编码格式的视频数据得到的裸数据的视频帧作为第二视频帧,所述第一视频帧和所述第二视频帧一一对应;确定每个第二视频帧相对每个第一视频帧的相似度;基于像素值上限的平方与所述相似度的比值,确定所述每个第二编码格式的视频数据相对于所述每个第一编码格式的视频数据的峰值信噪比,所述峰值信噪比为单帧峰值信噪比;将得到的各个所述单帧峰值信噪比累加,将累加的结果除以所述第二视频帧的总数或者所述第一视频帧的总数,得到所述第二编码格式的视频数据与所述第一编码格式的视频数据的平均峰值信噪比;
判断模块,用于如果所述单帧峰值信噪比大于第一预设阈值以及所述平均峰值信噪比大于第二预设阈值,则向所述终端发送所述第二编码格式的视频数据,如果所述单帧峰值信噪比不大于所述第一预设阈值或者所述平均峰值信噪比不大于所述第二预设阈值,则转至重新执行获取第一编码格式的视频数据将所述第一编码格式的视频数据转码为第二编码格式的视频数据的处理。
5.根据权利要求4所述的装置,其特征在于,所述装置还包括选取模块,所述选取模块,用于:
接收所述终端在登录目标应用程序时发送的设备信息;
基于预先存储的设备信息与支持的编码格式的对应关系,以及所述终端发送的设备信息,确定所述终端支持的编码格式;
在所述终端支持的编码格式中,选取第二编码格式。
6.根据权利要求5所述的装置,其特征在于,所述设备信息包括设备型号和/或系统版本。
7.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至权利要求3任一项所述的转码视频数据的方法所执行的操作。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至权利要求3任一项所述的转码视频数据的方法所执行的操作。
CN202010767960.6A 2020-08-03 2020-08-03 转码视频数据的方法、装置、设备及存储介质 Active CN111935545B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010767960.6A CN111935545B (zh) 2020-08-03 2020-08-03 转码视频数据的方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010767960.6A CN111935545B (zh) 2020-08-03 2020-08-03 转码视频数据的方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111935545A CN111935545A (zh) 2020-11-13
CN111935545B true CN111935545B (zh) 2023-03-24

Family

ID=73306377

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010767960.6A Active CN111935545B (zh) 2020-08-03 2020-08-03 转码视频数据的方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111935545B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107948649A (zh) * 2016-10-12 2018-04-20 北京金山云网络技术有限公司 一种基于主观质量模型的视频编码方法及装置
CN109413416A (zh) * 2018-12-14 2019-03-01 网宿科技股份有限公司 一种直播视频流转码质量监控的方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8325822B2 (en) * 2006-01-20 2012-12-04 Qualcomm Incorporated Method and apparatus for determining an encoding method based on a distortion value related to error concealment
CN101583036B (zh) * 2009-06-22 2010-11-17 浙江大学 像素域视频转码中确定运动特征和高效编码模式关系的方法
US9538128B2 (en) * 2011-02-28 2017-01-03 Cisco Technology, Inc. System and method for managing video processing in a network environment
US9020254B2 (en) * 2011-12-15 2015-04-28 Microsoft Technology Licensing, Llc Dynamic image quality checker for use in image transcoding
CN105681823A (zh) * 2014-11-21 2016-06-15 华为技术有限公司 一种对视频文件进行在线转码的方法和装置
CN105898318A (zh) * 2015-12-21 2016-08-24 乐视云计算有限公司 离线转码方法和系统
CN108012154B (zh) * 2016-10-28 2020-07-03 北京金山云网络技术有限公司 一种视频编码方法及装置
CN107659806B (zh) * 2017-08-22 2019-08-16 华为技术有限公司 视频质量的评估方法和装置
CN111107393A (zh) * 2019-11-29 2020-05-05 视联动力信息技术股份有限公司 视频转码方法、转码器、电子设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107948649A (zh) * 2016-10-12 2018-04-20 北京金山云网络技术有限公司 一种基于主观质量模型的视频编码方法及装置
CN109413416A (zh) * 2018-12-14 2019-03-01 网宿科技股份有限公司 一种直播视频流转码质量监控的方法及装置

Also Published As

Publication number Publication date
CN111935545A (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
US10194188B1 (en) Bitrate selection for video streaming
US10282246B2 (en) Application error detection method for cloud streaming service, and apparatus and system therefor
CN110740313B (zh) 硬件编码能力检测方法及装置
US10601891B2 (en) Cloud streaming service system and cloud streaming service method for utilizing an optimal GPU for video decoding based on resource conditions, and apparatus for the same
CN110392306B (zh) 一种数据处理方法以及设备
CN111669577A (zh) 一种硬件解码检测方法、装置、电子设备及存储介质
CN110177300B (zh) 程序运行状态的监控方法、装置、电子设备和存储介质
US20240098316A1 (en) Video encoding method and apparatus, real-time communication method and apparatus, device, and storage medium
CN111935545B (zh) 转码视频数据的方法、装置、设备及存储介质
CN113596467B (zh) 一种转码服务的检测方法、装置、电子设备及存储介质
US20230018087A1 (en) Data coding method and apparatus, and computer-readable storage medium
CN113810629B (zh) 一种融合平台多媒体信号的视频帧处理方法及装置
CN114071190B (zh) 云应用视频流处理方法、相关装置及计算机程序产品
CN115412682A (zh) 一种视频轮播方法、装置、计算机设备及存储介质
CN113066140A (zh) 图像编码方法、装置、计算机设备及存储介质
CN115914228B (zh) 一种数据处理方法、装置、存储介质及计算机程序产品
US20200218491A1 (en) Video data display method and device
CN110855619A (zh) 播放音视频数据的处理方法、装置、存储介质及终端设备
CN112055174A (zh) 一种视频传输方法、装置及计算机可读存储介质
CN115546329B (zh) 一种音视频硬件加速转码检测方法及系统
CN115348231B (zh) 一种消息处理方法、装置、服务端及存储介质
US11647153B1 (en) Computer-implemented method, device, and computer program product
CN110662088B (zh) 一种防止视频重复转码的去重方法及处理终端
CN110022480B (zh) 一种基于amd显卡的h265硬件编码方法及直播平台
CN116233531A (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
GR01 Patent grant
GR01 Patent grant