CN113491122A - 视频处理方法、装置和设备、无人机、图传系统 - Google Patents

视频处理方法、装置和设备、无人机、图传系统 Download PDF

Info

Publication number
CN113491122A
CN113491122A CN202080015467.7A CN202080015467A CN113491122A CN 113491122 A CN113491122 A CN 113491122A CN 202080015467 A CN202080015467 A CN 202080015467A CN 113491122 A CN113491122 A CN 113491122A
Authority
CN
China
Prior art keywords
video
file
frame
encoder
video 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.)
Pending
Application number
CN202080015467.7A
Other languages
English (en)
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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN113491122A publication Critical patent/CN113491122A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/436Methods 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 using parallelised computational arrangements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D47/00Equipment not otherwise provided for
    • B64D47/08Arrangements of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本公开提供一种视频处理方法、装置和设备、无人机、图传系统,应用于包括第一编码器和第二编码器的视频处理设备,包括:获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。

Description

视频处理方法、装置和设备、无人机、图传系统
技术领域
本公开涉及视频处理技术领域,尤其涉及一种视频处理方法、装置和设备、无人机、图传系统。
背景技术
代理文件是与主视频文件基本同步但是画质较低的视频文件,其占用空间小,解码播放时对硬件的要求较低。通过采用代理文件,可以有效减少下载原视频的耗时并能够降低对播放硬件的负载。例如,在用剪辑软件进行视频剪辑时,可以先对代理文件进行预览,裁剪,加特效等,然后再调用主视频文件进行渲染。代理文件需要与主视频文件进行同步,以避免用户预览的代理文件与主视频内容不一致。传统的代理文件同步方式一般是在视频采集设备外部采用额外的设备,对主视频文件进行下采样处理,得到代理文件。由于下采样的方式耗时较长,因此,生成代理文件的过程效率较低。
发明内容
本公开提供了一种视频处理方法、装置和设备、无人机、图传系统,能够提高生成代理文件的效率。
第一方面,本公开实施例提供一种视频处理方法,应用于包括第一编码器和第二编码器的视频处理设备,所述方法包括:获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
第二方面,本公开实施例提供一种视频处理装置,包括处理器,其特征在于,所述处理器用于执行以下步骤:获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
第三方面,本公开实施例提供一种视频处理设备,包括第一编码器、第二编码器和处理器;所述第一编码器用于获取视频码流,根据所述视频码流生成第一视频帧,并将所述第一视频帧发送至所述处理器;所述第二编码器用于获取所述视频码流,根据所述视频码流生成第二视频帧,并将所述第二视频帧发送至所述处理器;所述处理器用于执行以下操作:获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
第四方面,本公开实施例提供一种无人机,包括:机体;设于所述机体上的摄像头,用于采集视频流;以及设于所述机体内的如本公开任一实施例所述的视频处理设备。
第五方面,本公开实施例提供一种图传系统,所述图传系统包括:云台相机,所述云台相机包括:壳体;安装在所述壳体上的云台;安装在所述云台上的摄像头,用于采集视频码流;以及设于所述壳体内的如本公开任一实施例所述的视频处理设备。
第六方面,本公开实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得所述计算机执行本公开任一实施例所述的视频处理方法。
本公开实施例中,通过视频处理设备中的两路编码器来并行地生成第一视频帧和第二视频帧,再基于第一视频帧生成主视频文件,并同步地基于第二视频帧生成代理文件,从而可以在视频处理设备采集到视频码流之后,在视频处理设备内部生成代理文件,保证了代理文件的生成效率,同时也保证了代理文件与主视频文件的同步性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是传统的代理文件生成方式的示意图。
图2是本公开实施例的视频处理方法的流程图。
图3是本公开实施例的代理文件生成方式的示意图。
图4是本公开实施例的编码器启动时的同步过程示意图。
图5是本公开实施例的正常录制过程中第二编码器视频帧流向的示意图。
图6是本公开实施例的暂停和恢复过程中的同步过程示意图。
图7是本公开实施例的文件拆分过程中的同步过程示意图。
图8是本公开实施例的音频和视频同步方式的示意图。
图9是本公开实施例的视频处理装置的示意图。
图10是本公开实施例的视频处理设备的示意图。
图11A和11B是本公开实施例的无人机的示意图。
图12是本公开实施例的图传系统的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
传统的代理文件大多采用的是外部设备如工作站、手机等获取到主视频文件,再通过画质压缩(如下采样等)将主视频文件转换为低画质的代理文件。如图1所示,是一种传统的代理文件生成方式。首先,相机101中的图像传感器101a采集视频码流,然后相机101中的编码器101b基于所述视频码流生成视频帧,该视频帧被写入主视频文件103中。与此同时,相机101将主视频文件103实时地传输给手机102,手机102对接收到的主视频文件进行下采样处理,生成代理文件104。在上述过程中,由于下采样处理所花费的时间较多,因此,生成代理文件的效率较低。除此之外,还有一些方案虽然能够在视频采集设备内生成代理文件,但是需要统一代理文件与主视频文件主要参数,如码率、帧率(Frame Per Second,FPS)、画面组(Group of Pictures,GOP)等,难以满足不同应用场景的需要。
基于此,本公开实施例提供一种视频处理方法,如图2所示,所述方法可包括:
步骤201:获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;
步骤202:将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
在本公开实施例中,主视频文件是指基于图像传感器采集到的视频码流生成的原始视频文件,主视频文件一般画质较高,但占用存储空间较大,解码播放时对硬件要求较高。代理文件是指与主视频文件内容大致相同,但画质较低的视频文件。相比于主视频文件,代理文件占用存储空间较小,解码播放时对硬件要求较低。
本公开实施例的视频处理方法可以由处理器执行。所述处理器可以是中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)等类型。所述处理器可以是单台处理器,也可以是包括多台处理器的处理器集群。
本公开实施例的视频处理设备可以是具有视频采集功能的设备,例如,相机。在步骤201中,可以通过视频处理设备中的图像传感器采集视频码流。第一编码器和第二编码器可以获取原始视频码流,并根据原始视频码流分别生成第一视频帧和第二视频帧。其中,所述第一编码器和第二编码器获取的原始视频码流可以是同一个图像传感器采集的视频码流,以降低硬件成本。
第一编码器和第二编码器可以是视频处理设备内部的编码器。通过在视频处理设备内部设置两路编码器,使得视频处理设备在采集到视频码流之后,在该视频处理设备的内部就可以生成代理文件,无需采用额外的设备来生成代理文件。第一编码器和第二编码器在生成对应的视频帧后,可以将视频帧发送给处理器。
在步骤202中,处理器可以调用写进程来将第一视频帧写入主视频文件,以及将第二视频帧写入代理文件,该过程称为视频录制。录制得到的主视频文件和代理文件可以存储在视频处理设备的存储单元(例如,SD卡)中。
在视频录制过程中,需要主视频文件中的第一视频帧与代理文件中的第二视频帧保持同步。应当说明的是,此处的同步并非是指绝对同步,而是指在一定误差内基本同步。所述一定误差可以小于或等于1帧视频帧对应的时长。也就是说,在主视频文件中的第一视频帧与代理文件中的第二视频帧之间的时差小于1帧视频帧对应的时长的情况下,可视为第一视频帧与第二视频帧是同步的。在主视频文件与代理文件帧率不同的情况下,所述1帧视频帧对应的时长可以是帧率较大的文件中1帧视频帧对应的时长。
本申请的代理文件可用于在视频显示设备上供用户进行预览以及选择待处理的视频片段。具体来说,可以用于实现分段下载和代理剪辑两种功能。其中,分段下载功能是指相机的机身存储主视频文件,由视频显示设备下载代理文件,用户在代理文件中选择真正要下载的视频片段,再请求相机侧传输主视频文件中分辨率较高的原始片段。通过采用分段下载功能,只需下载主视频文件的一部分,可以节省下载完整的主视频文件的时间和对完整的主视频文件进行解码的时间。代理剪辑功能是指代理文件和原文件都完整地下载到视频显示设备上,用户在视频显示设备上进行的预览、剪辑、裁切等操作都是针对代理文件进行的,只有在真正渲染时,才针对主视频文件中对应的视频片段进行处理,通过采用代理剪辑功能,可以节省解码完整的主视频文件所需的时间。
在进行分段下载时,处理器可以响应于接收到视频预览指令,从视频处理设备的存储空间中读取代理文件,并将读取到的代理文件发送至视频显示设备进行解码显示,得到解码后的视频图像,以供用户进行预览。其中,所述视频预览指令可以是用户通过视频处理设备上的交互控件(例如,按钮、触摸屏)向处理器发送的,或者是用户通过所述视频显示设备发送的,或者也可以是通过其他方式向处理器发送的。在接收到所述视频显示设备发送的针对所述视频图像中的第一视频片段的选择请求之后,可以响应于所述选择请求,将所述主视频文件中与所述第一视频片段对应的第二视频片段发送至所述视频显示设备进行处理。
当用户需要下载视频文件时,可以通过视频显示设备向处理器发送下载请求。所述下载请求中可以携带代理文件中的第一视频片段的标识信息。处理器可以响应该下载请求,将所述主视频文件中与所述第一视频片段同步的第二视频片段发送给视频显示设备,这种方式称为分段下载。其中,所述第二视频片段中包括第一视频片段,且所述第二视频片段时长可以略大于所述第一视频片段。
一种应用场景为:视频处理设备将拍摄的实时画面传输给视频播放设备,例如手机进行预览显示,用户可以通过预览画面触发视频处理设备进行视频录制,在录制过程中,视频处理设备会分别存储主视频文件和代理文件,当录制结束后,若用户想通过视频显示设备播放录制的视频,则视频处理设备可以先将代理文件传输至视频显示设备进行播放,节省传输开销以及时间。视频显示设备将接收到的代理文件进行解码,进而播放第二视频帧对应的视频画面,用户通过观看视频显示设备播放的视频来确定需要进行剪辑的视频片段。当用户从播放的视频画面中选择了要进行剪辑的视频片段后,视频显示设备向视频处理设备发送该段视频片段对应的时间戳信息,视频处理设备基于该时间戳信息从主视频文件中查找对应的文件数据,发送至视频显示设备,视频显示设备接收到该部分数据并进行解码后,进行后期的剪辑过程。
在进行代理剪辑时,处理器可以将所述主视频文件和所述代理文件分别发送至所述视频显示设备,其中,代理文件用于在所述视频显示设备上供用户进行预览以及剪辑,视频显示设备可以基于用户操作,针对代理文件中的第一视频片段进行第一处理,并基于所述第一处理对所述主视频文件中与所述第一视频片段对应的第二视频片段进行第二处理,以得到对主视频文件中高分辨率的视频帧的处理结果。
参见图3,在一种实际应用场景下,可以在相机300中设置第一编码器301和第二编码器302,第一编码器301和第二编码器302分别从图像传感器303接收视频码流,并分别生成第一视频帧和第二视频帧。第一视频帧用于生成主视频文件,第二视频帧用于生成代理文件。
本公开实施例中主视频文件的视频参数与代理文件的视频参数可以不同。其中,所述视频参数可以包括但不限于分辨率、码率、帧率、画面组中的至少一者。代理文件的视频参数可以根据实际需求设置。例如,可以根据用户偏好、硬件资源、应用场景等条件中的至少一者设置。例如,在用户倾向于预览画质较高的代理文件的情况下,或者在需要对视频文件进行高精度处理的场景下,可以将代理文件的分辨率设置得较高。又例如,在传输带宽受限的情况下,可以将代理文件的码率设置得较低。
可选地,可以将代理文件的码率设置为主视频文件码率的整数倍,或者将主视频文件的码率设置为代理文件码率的整数倍。例如,主视频文件的帧率为60fps,代理文件帧率为30fps;或者主视频文件的帧率为30fps,代理文件帧率为60fps。这样,可以提高代理文件中第二视频帧与主视频文件中第一视频帧的同步精确度。
下文将具体阐述对第一视频帧与第二视频帧进行同步的方式。本公开实施例在开始录制视频文件的情况下,或者在暂停录制以后又恢复录制的情况下,或者在发生文件拆分的情况下,可以基于第一编码器发送的即时解码刷新(Instantaneous DecodingRefresh,IDR)帧和第二编码器发送的IDR帧来进行第一视频帧与第二视频帧的同步。一个IDR帧的作用在于,清空参考帧队列,以在视频解码时阻断该IDR帧的后续视频帧对该IDR帧之前的视频帧的参考。具体来说,在开始录制视频文件的情况下,或者在暂停录制以后又恢复录制的情况下,或者在发生文件拆分的情况下,如果同步接收到第一编码器发送的第一IDR帧和第二编码器发送的第二IDR帧,将所述第一编码器发送的第一视频帧(包括第一IDR帧)和第二编码器发送的第二视频帧(包括第二IDR帧)同步地写入对应的视频文件。
在第一编码器和第二编码器启动过程中,在所述第一编码器和所述第二编码器的启动同步的情况下,如果同时接收到所述第一编码器发送的第一IDR帧和所述第二编码器发送的第二IDR帧,可以直接将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入代理文件。这里的同时并非指同一时刻,而是指时间间隔小于某个阈值,例如,小于1帧视频帧的时长。
在所述第一编码器和所述第二编码器的启动不同步的情况下,如果仅接收到所述第一IDR帧或者所述第二IDR帧,向发送所述第一IDR帧或者第二IDR帧的编码器循环发送IDR请求,直到同时接收到所述IDR帧和所述第二IDR帧,则将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入所述代理文件。
如图4所示,是所述第一编码器和所述第二编码器的启动不同步的情况下,第一视频帧和第二视频帧的同步过程的示意图。其中,启动不同步可以是第一编码器和第二编码器的启动时长不同,也可以是第一编码器和第二编码器开始启动的时刻不同。图4示出了第一编码器启动较快,第二编码器启动较慢的情况。
第一编码器在启动完成的情况下,生成第一视频帧。其中,第一编码器生成的第1帧第一视频帧为第一IDR帧。第一IDR帧之后生成的视频帧可以是B帧或者P帧,如图中空白的白色方块所示。第一编码器在生成第一IDR帧之后,可以将第一IDR帧发送给处理器。处理器此时可判断是否接收到第二编码器发送的第二IDR帧。如果未接收到,则再次向启动较快的编码器(即第一编码器)发送IDR请求,第一编码器在接收到该IDR请求的情况下将再次生成第一IDR帧。直到处理器同步接收到第一IDR帧和第二IDR帧,处理器才开始进行视频录制,即,将包括第一IDR帧在内的第一视频帧写入主视频文件,并同步地将第二IDR帧在内的第二视频帧写入代理文件。写入对应视频文件的第一视频帧和第二视频帧如图中虚线框内的灰色方块所示。在同步接收到第一IDR帧和第二IDR帧之前接收到的第一视频帧可以丢弃,丢弃的视频帧如图中虚线框外的白色方块所示。其中,虚线框内的IDR帧之后的视频帧可以是B帧或者P帧。
第一编码器和二编码器是否同步启动,受限于硬件条件。可以在出厂时根据硬件条件预先设置好编码器启动过程中的同步机制,如果硬件条件支持第一编码器和二编码器同时启动,则在启动后直接进行视频录制;如果硬件条件不支持第一编码器和二编码器同时启动,则通过图4所示的方式进行视频录制。在实际应用中,也可能出现第一编码器启动较慢,第二编码器启动较快的情况。这种情况与图4所示的情况原理类似,可参考图4所示的情况进行处理,此处不再赘述。
由于代理文件与主视频文件的帧率可能不同,且可能存在两路编码器出帧时间不同步的情况。因此,如图5所示,在视频录制过程中,可以将第一视频帧直接写入主视频文件,并将第二视频帧先写入缓存。在缓存中的第二视频帧的时间戳满足写入代理文件的时间条件的情况下,再从缓存中将第二视频帧写入代理文件。具体来说,可以将所述第二视频帧写入缓存,在获取到一帧第一视频帧时,检测所述第一视频帧对应的第一时间戳,在所述缓存中的第二视频帧的第二时间戳与所述第一时间戳戳之间的时间间隔小于预设值的情况下,将所述缓存中的第二视频帧写入所述代理文件。
例如,处理器当前接收到的第一视频帧f1的第一时间戳为t1,则将缓存中的第二视频帧的第二时间戳t2与t1进行比较。如果t2与t1的差值小于预设的△t,则将缓存中的第二视频帧写入代理文件。如果t2与t1的差值大于或等于△t,则将第二视频帧继续存储在缓存中。
第二编码器生成的第二视频帧除了用于生成代理文件之外,还可以用于实时传输到视频显示设备。实时传输的第二视频帧可以直接通过通信链路传输给视频显示设备,而不受到录制过程的影响。
在一些实施例中,用户可以对视频录制过程进行暂停。由于代理文件的视频参数与主视频文件的视频参数可能不同,可能导致暂停过程中第一视频帧和第二视频帧失去同步,导致代理文件无法起到其应有的作用。为了解决上述问题,在视频录制暂停的情况下,可以基于所述第二编码器编码的第二视频帧是否被用于进行实时图像传输,确定是否将所述第二视频帧写入代理文件,以保持第一视频帧和第二视频帧的同步。
具体来说,若所述第二视频帧未被用于进行实时图像传输,则第一编码器和第二编码器均可以进入暂停状态。在这种情况下,可以同步地向所述第一编码器和所述第二编码器发送暂停指令,以使所述第一编码器和所述第二编码器同步地暂停生成对应视频帧。
在视频录制暂停的情况下,若所述主视频文件的时长大于所述代理文件的时长,可以暂停向所述主视频文件写入第一视频帧,并继续向所述代理文件写入第二视频帧,直到所述主视频文件与所述代理文件的时长相等。第二视频帧可以先写入缓存,在接收到第一视频帧时,检测第一视频帧对应的时间戳,如果第二视频帧对应的时间戳小于第一视频帧对应的时间戳,表示主视频文件的时长大于代理文件的时长,从而可以将缓存中的至少一帧第二视频帧补入代理文件,以将代理文件的时长填充至与主视频文件基本相等的长度。其中,所述基本相等可以是主视频文件与代理文件的时长之差小于1帧视频帧的时长。
如图6所示,用户发送暂停指令后,第一编码器经过2帧第一视频帧(如图中暂停与恢复之间的两个灰色方块所示)对应的时长后进入暂停状态,暂停生成第一视频帧。由于暂停之后主视频文件比代理文件多两帧,则从缓存中继续读取两帧第二视频帧并补入代理文件。图中灰色方格表示写入代理文件或主视频文件的视频帧,白色方格表示未生成视频帧。
在另一种情况下,如果进入暂停状态后,缓存中的第二视频帧的时间戳大于暂停后接收到的最后一帧第一视频帧的时间戳,则将缓存中的第二视频帧全部写入代理文件后会使得代理文件的时长超过主视频文件。因此,可以丢弃缓存中的至少一帧第二视频帧,丢弃的第二视频帧将不会写入代理文件,以保持代理文件与主视频文件的时长基本相等。
在第二视频帧用于进行实时图像传输的情况下,恢复视频录制中的同步过程与启动过程类似,即,向先恢复启动的编码器循环发送IDR请求,并在同时接收到第一编码器的IDR帧和第二编码器的IDR帧的情况下开始视频录制,具体过程可参见编码器启动过程的同步方式,此处不再赘述。
若所述第二视频帧用于进行实时图像传输,由于需要保证实时图像传输(简称为图传)不中断,第二组编码器不能暂停或停止,将会始终保持工作。编码器可以向所述第一编码器发送暂停指令,以使所述第一编码器暂停生成第一视频帧,并继续向所述代理文件写入第二视频帧,当所述代理文件的时长与所述主视频文件的时长相等时停止向所述代理文件写入所述第二视频帧。继续写入第二视频帧至代理文件的时长与主视频文件的时长相等的方式与图6所示的方式类似,此处不再赘述。应当说明的是,这里的相等并非指绝对相等,也可以是基本相等。
在视频录制恢复的情况下,可以向所述第二编码器发送IDR请求,并向所述第一编码器发送启动指令,将所述第一编码器恢复启动后生成的第一视频帧写入所述主视频文件,并将所述第一编码器恢复启动之前,所述第二编码器生成的最后一帧IDR帧开始的第二视频帧写入所述代理文件。如图6所示,在恢复视频录制之后,处理器先请求第二编码器发送IDR帧,并在接收到第二编码器发送的IDR帧的情况下判断第一编码器是否重新启动。如果第一编码器未启动,则再次请求第二编码器发送IDR帧,直到第一编码器重新启动(图中的R表示第一编码器重新启动)。处理器可以从第一编码器重新启动后发送的第1帧第一视频帧开始,将第一视频帧写入主视频文件,并从第二编码器最后一次发送的IDR帧开始,将第二视频帧写入代理文件。
在一些实施例中,为了防止文件过大导致文件系统不支持或录制时长过长,需要在视频文件达到临界值前进行文件拆分。为了保证在拆分前后的主视频文件和代理文件中,第一视频帧和第二视频帧均能够保持同步,可以在所述主视频文件到达视频拆分条件的情况下,分别向所述第一编码器和所述第二编码器发送IDR请求,若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差大于第二预设值,重新向所述第一编码器和所述第二编码器发送IDR请求。
只有在接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差不大于所述第二预设值的情况下,才对所述主视频文件和所述代理文件进行拆分,以将所述第一视频帧和所述第二视频帧分别写入拆分后的主视频文件和拆分后的代理文件。
其中,所述视频拆分条件可以是主视频文件的时长或数据量达到临界值,例如,主视频文件的数据量达到3.8Gbit时,认为满足拆分条件。如图7所示,在拆分过程中,将分别向第一编码器和第二编码器发送IDR请求,只有在同时接收到第一编码器和第二编码器返回的IDR帧的情况下,才进行文件拆分,并将接收到的第一视频帧和第二视频帧分别写入新的文件。否则,仍然将第一视频帧和第二视频帧写入原文件中。图中灰色的视频帧表示写入原代理文件的第二视频帧或者写入原主视频文件的第一视频帧,虚线框中的视频帧表示写入新的代理文件的第二视频帧或者写入新的主视频文件的第一视频帧。
进一步地,由于主视频文件和代理文件的视频参数不同,在主视频文件和代理文件中的一者满足拆分条件时,另一者可能还不满足拆分条件。也就是说,主视频文件和代理文件的拆分过程不同步,主视频文件开始拆分的时刻可能早于代理文件开始拆分的时刻,也可能晚于代理文件开始拆分的时刻。以主视频文件开始拆分的时刻早于代理文件开始拆分的时刻为例,处理器可以在主视频文件开始拆分之后,再对代理文件进行拆分。在主视频文件开始拆分之后,处理器可以将表征拆分状态的标志位设置为第一标志位,以指示主视频文件和代理文件中的至少一者未拆分完成。在主视频文件和代理文件均拆分完成的情况下,将所述标志位设置为第二标志位,以指示主视频文件和代理文件均拆分完成。所述第一标志位和第二标志位可以分别用一个布尔类型的常量(例如“0”或者“1”)来表示。
在一些实施例中,每向所述主视频文件写入一帧第一视频帧,可以将一帧音频帧同步地写入所述主视频文件。应当说明的是,传统的音视频同步方式是先对音频帧和视频帧进行同步,再将同步后的音频帧和视频帧写入文件。而本公开实施例的方式是在将第一视频帧和第二视频帧分别写入主视频文件和代理文件之后,再将对应的音频帧分别写入主视频文件和代理文件。由于音视频同步机制的不同,导致了在文件拆分过程中可能出现音频帧和视频帧不同步的问题。为了解决这一问题,可以对在对所述主视频文件和所述代理文件进行拆分的过程中接收到的音频帧进行缓存,在所述主视频文件和所述代理文件拆分完成之后,将缓存中的音频帧与对应的第二视频帧同步写入所述代理文件。
如图8所示,在音频帧可以写入主视频文件的情况下,将音频帧复制一份,得到两份相同的音频帧。其中一份音频帧写入主视频文件,另一份音频帧视当前是否正在进行文件拆分而决定如何写入代理文件。如果当前正在进行文件拆分,则将音频帧写入缓存,否则,判断是否刚刚拆分完成。如果文件刚刚拆分完成,则将缓存中的音频帧读出直至清空缓存。其中,所述刚刚拆分完成可以是当前时间与拆分完成的时间之间的时间差小于预设的时间间隔。如果不是刚刚拆分完成,则按照各音频帧写入缓存的顺序,将各音频帧写入代理文件。这里的文件拆分完成是指主视频文件和代理文件均拆分完成。主视频文件和代理文件的拆分过程可能不同步,只要主视频文件和代理文件中的任意一者未完成文件拆分,则认为当前未完成文件拆分。
本公开采用第一编码器和第二编码器分别实现主视频文件和代理文件的录制,并保证了主视频文件中的第一视频帧和第二视频帧基本同步,实现了在视频处理设备内部生成代理文件,无需借助额外的设备,减少了代理文件的生成过程的流程开支。生成的代理文件与主视频文件均保存于相机的存储介质内,可以先下载代理文件预览并选取兴趣区域,再到主视频文件中下载对应视频片段,或使用代理文件进行预览和剪辑,再将剪辑结果应用于主视频文件,节省了视频文件的处理时间消耗,并方便用户剪辑。
此外,本公开中的代理文件生成方案能够保证暂停恢复、文件拆分不影响代理文件与主视频文件的同步效果,用户录制过程更加自由便利。同时代理文件的视频参数可以与主视频文件不同,解除了传统的代理文件需要保持与主视频文件视频参数完全相同的限制,可以通过降低帧率或增加画面组的方法来提升代理文件的清晰度,从而提升用户体验。
本公开实施例还提供一种视频处理装置,包括处理器,其特征在于,所述处理器用于执行以下步骤:
获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;
将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
在一些实施例中,所述主视频文件与所述代理文件的视频参数不同。
在一些实施例中,所述视频参数包括以下至少一种:分辨率、码率、帧率、画面组。
在一些实施例中,所述主视频文件的码率是所述代理文件的码率的整数倍,或者所述代理文件的码率是所述主视频文件的码率的整数倍。
在一些实施例中,所述处理器还用于:控制所述第二编码器与所述第一编码器同步启动,以使所述第一编码器和所述第二编码器同步地生成所述第一视频帧和所述第二视频帧。
在一些实施例中,所述处理器用于:在所述第一编码器和所述第二编码器的启动同步的情况下,如果同时接收到所述第一编码器发送的第一IDR帧和所述第二编码器发送的第二IDR帧,将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入代理文件;或者,在所述第一编码器和所述第二编码器的启动不同步的情况下,如果仅接收到所述第一IDR帧或者所述第二IDR帧,向发送所述第一IDR帧或者第二IDR帧的编码器循环发送IDR请求,直到同时接收到所述IDR帧和所述第二IDR帧,则将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入所述代理文件。
在一些实施例中,所述处理器用于:将所述第二视频帧写入缓存;在获取到一帧第一视频帧时,检测所述第一视频帧对应的第一时间戳;在所述缓存中的第二视频帧的第二时间戳与所述第一时间戳戳之间的时间间隔小于预设值的情况下,将所述缓存中的第二视频帧写入所述代理文件。
在一些实施例中,所述处理器用于:在视频录制暂停的情况下,基于所述第二编码器编码的第二视频帧是否被用于进行实时图像传输,确定是否将所述第二视频帧写入代理文件。
在一些实施例中,所述处理器还用于:若所述第二视频帧未被用于进行实时图像传输,同步地向所述第一编码器和所述第二编码器发送暂停指令,以使所述第一编码器和所述第二编码器同步地暂停生成对应视频帧。
在一些实施例中,所述处理器还用于:在视频录制暂停的情况下,若所述主视频文件的时长大于所述代理文件的时长,暂停向所述主视频文件写入第一视频帧,并继续向所述代理文件写入第二视频帧,直到所述主视频文件与所述代理文件的时长相等。
在一些实施例中,所述处理器还用于:若所述第二视频帧用于进行实时图像传输,向所述第一编码器发送暂停指令,以使所述第一编码器暂停生成第一视频帧,并继续向所述代理文件写入第二视频帧,当所述代理文件的时长与所述主视频文件的时长相等时停止向所述代理文件写入所述第二视频帧。
在一些实施例中,所述处理器用于:在视频录制恢复的情况下,向所述第二编码器发送IDR请求,并向所述第一编码器发送启动指令;将所述第一编码器恢复启动后生成的第一视频帧写入所述主视频文件,并将所述第一编码器恢复启动之前,所述第二编码器生成的最后一帧IDR帧开始的第二视频帧写入所述代理文件。
在一些实施例中,所述处理器还用于:在所述主视频文件到达视频拆分条件的情况下,分别向所述第一编码器和所述第二编码器发送IDR请求;若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差大于第二预设值,重新向所述第一编码器和所述第二编码器发送IDR请求。
在一些实施例中,所述处理器还用于:若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差不大于所述第二预设值,对所述主视频文件和所述代理文件进行拆分,以将所述第一视频帧和所述第二视频帧分别写入拆分后的主视频文件和拆分后的代理文件。
在一些实施例中,所述主视频文件开始拆分的时刻与所述代理文件开始拆分的时刻不同步。
在一些实施例中,所述处理器还用于:每向所述主视频文件写入一帧第一视频帧,将一帧音频帧同步地写入所述主视频文件。
在一些实施例中,所述处理器还用于:对在对所述主视频文件和所述代理文件进行拆分的过程中接收到的音频帧进行缓存;在所述主视频文件和所述代理文件拆分完成之后,将缓存中的音频帧与对应的第二视频帧同步写入所述代理文件。
在一些实施例中,所述处理器还用于:根据当前拆分状态生成标志位,所述标志位用于表征所述主视频文件和所述代理文件是否均拆分完成。
在一些实施例中,所述处理器还用于:将所述代理文件发送至所述视频显示设备进行解码显示,得到解码后的视频图像;接收所述视频显示设备发送的针对所述视频图像中的第一视频片段的选择请求;响应于所述选择请求,将所述主视频文件中与所述第一视频片段对应的第二视频片段发送至所述视频显示设备进行处理。
在一些实施例中,所述处理器还用于:将所述主视频文件和所述代理文件分别发送至所述视频显示设备,以使所述视频显示设备获取针对所述代理文件中的第一视频片段进行的第一处理,以及基于所述第一处理对所述主视频文件中与所述第一视频片段对应的第二视频片段进行第二处理。
本公开实施例中处理器所执行的方法详见前述视频处理方法的实施例,此处不再赘述。
图9示出了本说明书实施例所提供的一种更为具体的视频处理装置的硬件结构示意图,该设备可以包括:处理器901、存储器902、输入/输出接口903、通信接口904和总线905。其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。在所述时钟同步装置用于执行上述应用于第一子系统的方法时,所述处理器901为第一处理器,所述通信接口904为第一通信接口。在所述时钟同步装置用于执行上述应用于第二子系统的方法时,所述处理器901为第二处理器,所述通信接口904为第二通信接口。
处理器901可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器902可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行。
输入/输出接口903用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口904用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线905包括一通路,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器901、存储器902、输入/输出接口903、通信接口904以及总线905,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
如图10所示,本公开实施例还提供一种视频处理设备1000,包括第一编码器1001、第二编码器1002和处理器1003;
所述第一编码器1001用于获取视频码流,根据所述视频码流生成第一视频帧,并将所述第一视频帧发送至所述处理器1003;
所述第二编码器1002用于获取所述视频码流,根据所述视频码流生成第二视频帧,并将所述第二视频帧发送至所述处理器1003;
所述处理器1003用于执行以下操作:
获取所述第一编码器1001生成的第一视频帧和所述第二编码器1002生成的第二视频帧;
将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
本公开实施例中处理器1003所执行的方法详见前述视频处理方法的实施例,此处不再赘述。
如图11A和图11B所示,本公开实施例还提供一种无人机1100,包括:
机体1101;
设于所述机体1101上的摄像头1102,用于采集视频流;
以及设于所述机体1101内的视频处理设备1000。
所述摄像头1102采集的视频流可用于实时输出至与所述无人机1000通信连接的终端上,以供用户进行预览。所述终端可以是无人机专用的带屏遥控器,或者是手机、平板电脑、台式电脑等智能终端。在一些实施例中,所述摄像头1102设于所述机体1101上,可以指所述摄像头1102直接设于所述机体1101上,或者设于连接在所述机体1101上的云台上。
所述无人机1000还可以包括设于所述机体上的桨叶1104,以及动力系统,用于为所述无人机1000提供动力。所述无人机1000中所采用的视频处理设备1000的实施例与前述视频处理设备1000的实施例相同,此处不再赘述。
如图12所示,本公开实施例还提供一种图传系统1200,包括云台相机1201,所述云台相机1201包括:
壳体1201a;
安装在所述壳体1201a上的云台1201b;
安装在所述云台1201b上的摄像头1201c,用于采集视频码流;以及
设于所述壳体1201a内的视频处理设备(图中未示出)。
所述图传系统1200中所采用的视频处理设备的实施例与前述视频处理设备1000的实施例相同,此处不再赘述。
在一些实施例中,所述图传系统1200还可包括与所述视频处理设备通信连接的视频显示设备(例如,显示屏)1202。所述视频显示设备1202用于:接收所述代理文件;对经所述代理文件解码后得到的视频画面进行展示;以及向所述视频处理设备发送针对所述代理文件中的第一视频片段的下载请求;根据所述选择请求对所述主视频文件中与所述第一视频片段对应的第二视频片段进行处理。
可选地,所述视频显示设备1202用于根据所述选择请求向所述视频处理设备发送针对所述第二视频片段的下载请求;接收所述视频处理设备发送的所述第二视频片段;对所述第二视频片段进行显示,从而实现分段下载功能。
或者可选地,所述视频显示设备1202用于接收所述视频处理设备发送的所述主视频文件;根据所述选择请求对所述第二视频片段进行剪辑操作,生成剪辑后的视频,从而实现代理剪辑功能。
所述视频显示设备1202可以是手机、平板电脑等便携式移动设备,视频显示设备1202与云台相机1201可以通过USB接口、蓝牙等有线或无线方式进行通信,云台相机1201可以将生成的代理文件实时图传给视频显示设备1202进行预览,视频显示设备1202可以将用于暂停录制、恢复录制、下载视频文件等功能的指令发送给云台相机1201。
在一些实施例中,云台相机1201的壳体1201a上还可以安装固定支架1203,用于固定视频显示设备1202,以方便用户观看视频文件。所述固定支架1203可以固定地或者可拆卸地安装在壳体1201a上。
图12所示的云台相机1201仅仅是一种示例,云台相机1201还可以包括显示屏等。
本公开实施例还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得所述计算机执行前述任一实施例所述的方法。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
以上实施例中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本公开的范围。
本领域技术人员在考虑公开及实践这里公开的说明书后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。

Claims (47)

1.一种视频处理方法,其特征在于,应用于包括第一编码器和第二编码器的视频处理设备,所述方法包括:
获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;
将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
2.根据权利要求1所述的方法,其特征在于,所述主视频文件与所述代理文件的视频参数不同。
3.根据权利要求2所述的方法,其特征在于,所述视频参数包括以下至少一种:分辨率、码率、帧率、画面组。
4.根据权利要求2所述的方法,其特征在于,所述主视频文件的码率是所述代理文件的码率的整数倍,或者所述代理文件的码率是所述主视频文件的码率的整数倍。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
控制所述第二编码器与所述第一编码器同步启动,以使所述第一编码器和所述第二编码器同步地生成所述第一视频帧和所述第二视频帧。
6.根据权利要求1所述的方法,其特征在于,所述将所述第一视频帧写入主视频文件,并将所述第二视频帧写入代理文件,包括:
在所述第一编码器和所述第二编码器的启动同步的情况下,如果同时接收到所述第一编码器发送的第一即时解码刷新IDR帧和所述第二编码器发送的第二IDR帧,将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入代理文件;或者,
在所述第一编码器和所述第二编码器的启动不同步的情况下,如果仅接收到所述第一IDR帧或者所述第二IDR帧,向发送所述第一IDR帧或者第二IDR帧的编码器循环发送IDR请求,直到同时接收到所述IDR帧和所述第二IDR帧,则将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入所述代理文件。
7.根据权利要求1所述的方法,其特征在于,所述将所述第二视频帧写入代理文件,包括:
将所述第二视频帧写入缓存;
在获取到一帧第一视频帧时,检测所述第一视频帧对应的第一时间戳;
在所述缓存中的第二视频帧的第二时间戳与所述第一时间戳戳之间的时间间隔小于预设值的情况下,将所述缓存中的第二视频帧写入所述代理文件。
8.根据权利要求1所述的方法,其特征在于,所述将所述第二视频帧写入代理文件,包括:
在视频录制暂停的情况下,基于所述第二编码器编码的第二视频帧是否被用于进行实时图像传输,确定是否将所述第二视频帧写入代理文件。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若所述第二视频帧未被用于进行实时图像传输,同步地向所述第一编码器和所述第二编码器发送暂停指令,以使所述第一编码器和所述第二编码器同步地暂停生成对应视频帧。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
在视频录制暂停的情况下,若所述主视频文件的时长大于所述代理文件的时长,暂停向所述主视频文件写入第一视频帧,并继续向所述代理文件写入第二视频帧,直到所述主视频文件与所述代理文件的时长相等。
11.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若所述第二视频帧用于进行实时图像传输,向所述第一编码器发送暂停指令,以使所述第一编码器暂停生成第一视频帧,并继续向所述代理文件写入第二视频帧,当所述代理文件的时长与所述主视频文件的时长相等时停止向所述代理文件写入所述第二视频帧。
12.根据权利要求8所述的方法,其特征在于,所述将所述第一视频帧写入主视频文件,并将所述第二视频帧写入代理文件,包括:
在视频录制恢复的情况下,向所述第二编码器发送IDR请求,并向所述第一编码器发送启动指令;
将所述第一编码器恢复启动后生成的第一视频帧写入所述主视频文件,并将所述第一编码器恢复启动之前,所述第二编码器生成的最后一帧IDR帧开始的第二视频帧写入所述代理文件。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述主视频文件到达视频拆分条件的情况下,分别向所述第一编码器和所述第二编码器发送IDR请求;
若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差大于第二预设值,重新向所述第一编码器和所述第二编码器发送IDR请求。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差不大于所述第二预设值,对所述主视频文件和所述代理文件进行拆分,以将所述第一视频帧和所述第二视频帧分别写入拆分后的主视频文件和拆分后的代理文件。
15.根据权利要求14所述的方法,其特征在于,所述主视频文件开始拆分的时刻与所述代理文件开始拆分的时刻不同步。
16.根据权利要求1所述的方法,其特征在于,所述方法还包括:
每向所述主视频文件写入一帧第一视频帧,将一帧音频帧同步地写入所述主视频文件。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
对在对所述主视频文件和所述代理文件进行拆分的过程中接收到的音频帧进行缓存;
在所述主视频文件和所述代理文件拆分完成之后,将缓存中的音频帧与对应的第二视频帧同步写入所述代理文件。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
根据当前拆分状态生成标志位,所述标志位用于表征所述主视频文件和所述代理文件是否均拆分完成。
19.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述代理文件发送至所述视频显示设备进行解码显示,得到解码后的视频图像;
接收所述视频显示设备发送的针对所述视频图像中的第一视频片段的选择请求;
响应于所述选择请求,将所述主视频文件中与所述第一视频片段对应的第二视频片段发送至所述视频显示设备进行处理。
20.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述主视频文件和所述代理文件分别发送至所述视频显示设备,以使所述视频显示设备获取针对所述代理文件中的第一视频片段进行的第一处理,以及基于所述第一处理对所述主视频文件中与所述第一视频片段对应的第二视频片段进行第二处理。
21.一种视频处理装置,其特征在于,包括处理器,其特征在于,所述处理器用于执行以下步骤:
获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;
将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
22.根据权利要求21所述的装置,其特征在于,所述主视频文件与所述代理文件的视频参数不同。
23.根据权利要求22所述的装置,其特征在于,所述视频参数包括以下至少一种:分辨率、码率、帧率、画面组。
24.根据权利要求23所述的装置,其特征在于,所述主视频文件的码率是所述代理文件的码率的整数倍,或者所述代理文件的码率是所述主视频文件的码率的整数倍。
25.根据权利要求21所述的装置,其特征在于,所述处理器还用于:
控制所述第二编码器与所述第一编码器同步启动,以使所述第一编码器和所述第二编码器同步地生成所述第一视频帧和所述第二视频帧。
26.根据权利要求21所述的装置,其特征在于,所述处理器用于:
在所述第一编码器和所述第二编码器的启动同步的情况下,如果同时接收到所述第一编码器发送的第一IDR帧和所述第二编码器发送的第二IDR帧,将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入代理文件;或者,
在所述第一编码器和所述第二编码器的启动不同步的情况下,如果仅接收到所述第一IDR帧或者所述第二IDR帧,向发送所述第一IDR帧或者第二IDR帧的编码器循环发送IDR请求,直到同时接收到所述IDR帧和所述第二IDR帧,则将包括所述第一IDR帧的第一视频帧写入主视频文件,并将包括所述第二IDR帧的第二视频帧写入所述代理文件。
27.根据权利要求21所述的装置,其特征在于,所述处理器用于:
将所述第二视频帧写入缓存;
在获取到一帧第一视频帧时,检测所述第一视频帧对应的第一时间戳;
在所述缓存中的第二视频帧的第二时间戳与所述第一时间戳戳之间的时间间隔小于预设值的情况下,将所述缓存中的第二视频帧写入所述代理文件。
28.根据权利要求21所述的装置,其特征在于,所述处理器用于:
在视频录制暂停的情况下,基于所述第二编码器编码的第二视频帧是否被用于进行实时图像传输,确定是否将所述第二视频帧写入代理文件。
29.根据权利要求28所述的装置,其特征在于,所述处理器还用于:
若所述第二视频帧未被用于进行实时图像传输,同步地向所述第一编码器和所述第二编码器发送暂停指令,以使所述第一编码器和所述第二编码器同步地暂停生成对应视频帧。
30.根据权利要求29所述的装置,其特征在于,所述处理器还用于:
在视频录制暂停的情况下,若所述主视频文件的时长大于所述代理文件的时长,暂停向所述主视频文件写入第一视频帧,并继续向所述代理文件写入第二视频帧,直到所述主视频文件与所述代理文件的时长相等。
31.根据权利要求28所述的装置,其特征在于,所述处理器还用于:
若所述第二视频帧用于进行实时图像传输,向所述第一编码器发送暂停指令,以使所述第一编码器暂停生成第一视频帧,并继续向所述代理文件写入第二视频帧,当所述代理文件的时长与所述主视频文件的时长相等时停止向所述代理文件写入所述第二视频帧。
32.根据权利要求28所述的装置,其特征在于,所述处理器用于:
在视频录制恢复的情况下,向所述第二编码器发送IDR请求,并向所述第一编码器发送启动指令;
将所述第一编码器恢复启动后生成的第一视频帧写入所述主视频文件,并将所述第一编码器恢复启动之前,所述第二编码器生成的最后一帧IDR帧开始的第二视频帧写入所述代理文件。
33.根据权利要求21所述的装置,其特征在于,所述处理器还用于:
在所述主视频文件到达视频拆分条件的情况下,分别向所述第一编码器和所述第二编码器发送IDR请求;
若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差大于第二预设值,重新向所述第一编码器和所述第二编码器发送IDR请求。
34.根据权利要求33所述的装置,其特征在于,所述处理器还用于:
若接收到所述第一编码器发送的IDR帧的时刻与接收到所述第二编码器发送的IDR帧的时刻的时间差不大于所述第二预设值,对所述主视频文件和所述代理文件进行拆分,以将所述第一视频帧和所述第二视频帧分别写入拆分后的主视频文件和拆分后的代理文件。
35.根据权利要求34所述的装置,其特征在于,所述主视频文件开始拆分的时刻与所述代理文件开始拆分的时刻不同步。
36.根据权利要求21所述的装置,其特征在于,所述处理器还用于:
每向所述主视频文件写入一帧第一视频帧,将一帧音频帧同步地写入所述主视频文件。
37.根据权利要求36所述的装置,其特征在于,所述处理器还用于:
对在对所述主视频文件和所述代理文件进行拆分的过程中接收到的音频帧进行缓存;
在所述主视频文件和所述代理文件拆分完成之后,将缓存中的音频帧与对应的第二视频帧同步写入所述代理文件。
38.根据权利要求37所述的装置,其特征在于,所述处理器还用于:
根据当前拆分状态生成标志位,所述标志位用于表征所述主视频文件和所述代理文件是否均拆分完成。
39.根据权利要求21所述的装置,其特征在于,所述处理器还用于:
将所述代理文件发送至所述视频显示设备进行解码显示,得到解码后的视频图像;
接收所述视频显示设备发送的针对所述视频图像中的第一视频片段的选择请求;
响应于所述选择请求,将所述主视频文件中与所述第一视频片段对应的第二视频片段发送至所述视频显示设备进行处理。
40.根据权利要求21所述的装置,其特征在于,所述处理器还用于:
将所述主视频文件和所述代理文件分别发送至所述视频显示设备,以使所述视频显示设备获取针对所述代理文件中的第一视频片段进行的第一处理,以及基于所述第一处理对所述主视频文件中与所述第一视频片段对应的第二视频片段进行第二处理。
41.一种视频处理设备,其特征在于,包括第一编码器、第二编码器和处理器;
所述第一编码器用于获取视频码流,根据所述视频码流生成第一视频帧,并将所述第一视频帧发送至所述处理器;
所述第二编码器用于获取所述视频码流,根据所述视频码流生成第二视频帧,并将所述第二视频帧发送至所述处理器;
所述处理器用于执行以下操作:
获取所述第一编码器生成的第一视频帧和所述第二编码器生成的第二视频帧;
将所述第一视频帧写入主视频文件,将所述第二视频帧写入代理文件,以及将所述主视频文件中的第一视频帧与所述代理文件中的第二视频帧进行同步,其中,所述代理文件用于在视频显示设备对所述主视频文件进行处理之前,供用户进行预览及选择待处理的视频片段。
42.一种无人机,其特征在于,包括:
机体;
设于所述机体上的摄像头,用于采集视频流;
以及设于所述机体内的如权利要求41所述的视频处理设备。
43.一种图传系统,其特征在于,所述图传系统包括:
云台相机,所述云台相机包括:
壳体;
安装在所述壳体上的云台;
安装在所述云台上的摄像头,用于采集视频码流;以及
设于所述壳体内的如权利要求41所述的视频处理设备。
44.根据权利要求43所述的图传系统,其特征在于,所述图传系统还包括:
与所述视频处理设备通信连接的视频显示设备;
所述视频显示设备用于:
接收所述代理文件;
对所述代理文件进行解码并对解码后的视频图像进行显示;
接收用户对所述视频图像中的第一视频片段的选择请求;
根据所述选择请求对所述主视频文件中与所述第一视频片段对应的第二视频片段进行处理。
45.根据权利要求44所述的图传系统,其特征在于,所述视频显示设备用于:
根据所述选择请求向所述视频处理设备发送针对所述第二视频片段的下载请求;
接收所述视频处理设备发送的所述第二视频片段;
对所述第二视频片段进行显示。
46.根据权利要求44所述的图传系统,其特征在于,所述视频显示设备还用于:
接收所述视频处理设备发送的所述主视频文件;
根据所述选择请求对所述第二视频片段进行剪辑操作,生成剪辑后的视频。
47.一种计算机可读存储介质,包括指令,其特征在于,当其在计算机上运行时,使得所述计算机执行权利要求1至20任意一项所述的视频处理方法。
CN202080015467.7A 2020-10-20 2020-10-20 视频处理方法、装置和设备、无人机、图传系统 Pending CN113491122A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/122279 WO2022082457A1 (zh) 2020-10-20 2020-10-20 视频处理方法、装置和设备、无人机、图传系统

Publications (1)

Publication Number Publication Date
CN113491122A true CN113491122A (zh) 2021-10-08

Family

ID=77933292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080015467.7A Pending CN113491122A (zh) 2020-10-20 2020-10-20 视频处理方法、装置和设备、无人机、图传系统

Country Status (2)

Country Link
CN (1) CN113491122A (zh)
WO (1) WO2022082457A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020033842A1 (en) * 2000-09-15 2002-03-21 International Business Machines Corporation System and method of processing MPEG streams for storyboard and rights metadata insertion
US20100098161A1 (en) * 2008-10-20 2010-04-22 Fujitsu Limited Video encoding apparatus and video encoding method
CN106162225A (zh) * 2016-07-28 2016-11-23 杭州当虹科技有限公司 一种基于代理流的高时效编辑直播视频方法
CN106790558A (zh) * 2016-12-26 2017-05-31 国家新闻出版广电总局电影数字节目管理中心 一种影片多版本整合存储和提取系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002010251A (ja) * 2000-06-19 2002-01-11 Matsushita Electric Ind Co Ltd 映像信号符号化装置および映像信号復号化装置
EP2304937A1 (en) * 2008-07-28 2011-04-06 Thomson Licensing A method and apparatus for fast channel change using a secondary channel video stream
CN101370140A (zh) * 2008-09-25 2009-02-18 浙江大华技术股份有限公司 一种多码流生成的方法
US9060201B2 (en) * 2008-10-28 2015-06-16 Cisco Technology, Inc. Stream synchronization for live video encoding
KR20130136429A (ko) * 2010-08-06 2013-12-12 톰슨 라이센싱 신호들을 수신하기 위한 장치 및 방법
CN111654718A (zh) * 2020-04-14 2020-09-11 上海阅竞网络科技有限公司 基于物联网设备辅助的音视频线上制作与协作系统和方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020033842A1 (en) * 2000-09-15 2002-03-21 International Business Machines Corporation System and method of processing MPEG streams for storyboard and rights metadata insertion
US20100098161A1 (en) * 2008-10-20 2010-04-22 Fujitsu Limited Video encoding apparatus and video encoding method
CN106162225A (zh) * 2016-07-28 2016-11-23 杭州当虹科技有限公司 一种基于代理流的高时效编辑直播视频方法
CN106790558A (zh) * 2016-12-26 2017-05-31 国家新闻出版广电总局电影数字节目管理中心 一种影片多版本整合存储和提取系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
翁超等: "P2素材的高效剪辑实现", 《电视技术》 *

Also Published As

Publication number Publication date
WO2022082457A1 (zh) 2022-04-28

Similar Documents

Publication Publication Date Title
US12058387B2 (en) Video processing method and apparatus, computer device, and storage medium
US20190268601A1 (en) Efficient streaming video for static video content
JP2008243367A (ja) 同報通信データを記録するための方法、および、装置
US9055272B2 (en) Moving image reproduction apparatus, information processing apparatus, and moving image reproduction method
KR20210002459A (ko) 오디오 및 비디오를 동기시키기 위한 시스템 및 방법
US20120093489A1 (en) Smooth rewind media playback
CN112118473B (zh) 视频弹幕显示方法、装置、计算机设备及可读存储介质
US9654725B2 (en) Video processing method, video displaying method and video processing device
JP6869135B2 (ja) 再生装置、再生装置の制御方法、及び、プログラム
CN113491122A (zh) 视频处理方法、装置和设备、无人机、图传系统
CN113709574B (zh) 视频截图方法、装置、电子设备及计算机可读存储介质
US20200374567A1 (en) Generation apparatus, reproduction apparatus, generation method, reproduction method, control program, and recording medium
CN111918074A (zh) 直播视频故障预警方法及相关设备
CN117557701B (zh) 一种图像渲染方法和电子设备
US7751687B2 (en) Data processing apparatus, data processing method, data processing system, program, and storage medium
US7853118B2 (en) Image replay apparatus and method for moving-picture streams
CN115811621A (zh) 一种直播流播放方法、装置、计算机设备及存储介质
US20240073415A1 (en) Encoding Method, Electronic Device, Communication System, Storage Medium, and Program Product
CN117336563B (zh) 外挂字幕显示方法、装置、设备、介质及程序产品
US20240305858A1 (en) Real time rewind playback
CN117812362A (zh) 一种显示设备及播放动态内存回收方法
JP2025501468A (ja) 自由視点映像についての視点切り替え方法、装置及びシステム
WO2023129214A1 (en) Methods and system of multiview video rendering, preparing a multiview cache, and real-time multiview video conversion
KR20230078369A (ko) 하이브리드 전송 시스템을 이용하여 3차원 영상 서비스를 제공하는 방법
CN118612388A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20211008