CN117278802B - 一种视频剪辑痕迹的比对方法及装置 - Google Patents

一种视频剪辑痕迹的比对方法及装置 Download PDF

Info

Publication number
CN117278802B
CN117278802B CN202311568483.0A CN202311568483A CN117278802B CN 117278802 B CN117278802 B CN 117278802B CN 202311568483 A CN202311568483 A CN 202311568483A CN 117278802 B CN117278802 B CN 117278802B
Authority
CN
China
Prior art keywords
clip
array
target segment
video
fragment
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
CN202311568483.0A
Other languages
English (en)
Other versions
CN117278802A (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.)
Hunan Happly Sunshine Interactive Entertainment Media Co Ltd
Original Assignee
Hunan Happly Sunshine Interactive Entertainment Media 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 Hunan Happly Sunshine Interactive Entertainment Media Co Ltd filed Critical Hunan Happly Sunshine Interactive Entertainment Media Co Ltd
Priority to CN202311568483.0A priority Critical patent/CN117278802B/zh
Publication of CN117278802A publication Critical patent/CN117278802A/zh
Application granted granted Critical
Publication of CN117278802B publication Critical patent/CN117278802B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/44008Processing 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 operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip

Abstract

本发明提供了一种视频剪辑痕迹的比对方法及装置,该方法包括:将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组;若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素得到第一目标片段,从第二剪辑片段数组中移出首个元素得到第二目标片段;根据第一目标片段和第二目标片段的主视频ID、起止时间采取相应的操作,得到第一结果数组和第二结果数组;基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,不再依赖人工整理视频间的差异就能够实现视频剪辑痕迹的比对,从而提高视频剪辑痕迹的比对效率和可以保证视频剪辑痕迹的比对准确度。

Description

一种视频剪辑痕迹的比对方法及装置
技术领域
本发明涉及视频处理技术领域,具体涉及一种视频剪辑痕迹的比对方法及装置。
背景技术
视频剪辑是指将视频通过切割、合并、重组、二次编码等操作生成新视频的过程;视频剪辑痕迹的比对至少具有以下作用:可以帮助剪辑人员快速定位视频剪辑前后的效果,也可以帮助审查者快速定位送审视频剪辑前后版本的差异。
目前视频剪辑痕迹的比对主要还是依赖人工操作,即由人工将视频版本间的差异进行整理,此种方式费时费力且容易出现纰漏,视频剪辑痕迹的比对效率较低和无法保证视频剪辑痕迹的比对准确度。
发明内容
有鉴于此,本发明实施例提供一种视频剪辑痕迹的比对方法及装置,以解决现有依赖人工整理视频剪辑痕迹的方式存在的视频剪辑痕迹的比对效率较低和无法保证视频剪辑痕迹的比对准确度等问题。
为实现上述目的,本发明实施例提供如下技术方案:
本发明实施例第一方面公开一种视频剪辑痕迹的比对方法,所述方法包括:
将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组,所述第一剪辑片段数组包括组成所述第一视频的多个片段,所述第二剪辑片段数组包括组成所述第二视频的多个片段,所述第一视频为源视频或在所述源视频的基础上剪辑得到的视频;
判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集;
若所述第一剪辑片段数组和所述第二剪辑片段数组均不为空集,从所述第一剪辑片段数组中移出首个元素以得到第一目标片段,及从所述第二剪辑片段数组中移出首个元素以得到第二目标片段;
在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将所述第一目标片段和所述第二目标片段分别推送至所述第一视频对应的第一结果数组和所述第二视频对应的第二结果数组中,或者,将所述第一目标片段和所述第二目标片段进行时间补齐后分别***到所述第一剪辑片段数组和所述第二剪辑片段数组的首位;返回执行判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集这一步骤;
在所述第一目标片段和所述第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当所述第一目标片段在所述第二目标片段结束时开始,将所述第一目标片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将所述第二目标片段的剪辑类型标识修改为删减标识后推送到所述第一结果数组中,返回执行判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集这一步骤;
在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,基于所述第一目标片段和所述第二目标片段更新所述第一剪辑片段数组和所述第二剪辑片段数组的首个元素,返回执行判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集这一步骤;
若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,展示所述第一视频和所述第二视频之间的剪辑痕迹,所述剪辑痕迹至少包括删减、***和/或替片。
优选的,在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将所述第一目标片段和所述第二目标片段分别推送至所述第一视频对应的第一结果数组和所述第二视频对应的第二结果数组中,或者,将所述第一目标片段和所述第二目标片段进行时间补齐后分别***到所述第一剪辑片段数组和所述第二剪辑片段数组的首位,包括:
在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,当所述第一目标片段和所述第二目标片段的起止时间均相同时,将所述第一目标片段推送至所述第一视频对应的第一结果数组中,及将所述第二目标片段推送至所述第二视频对应的第二结果数组中;
当所述第一目标片段在所述第二目标片段之前开始,将所述第一目标片段的第一部分和第二部分***到所述第一剪辑片段数组的首位;将所述第一目标片段的第一部分补齐给所述第二目标片段,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位;其中,所述第一目标片段的第一部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的开始时间,所述第一目标片段的第二部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的结束时间;
当所述第二目标片段在所述第一目标片段之前开始,将所述第二目标片段的第一部分和第二部分***到所述第二剪辑片段数组的首位;将所述第二目标片段的第一部分补齐给所述第一目标片段,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位;其中,所述第二目标片段的第一部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的开始时间,所述第二目标片段的第二部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的结束时间;
当所述第一目标片段在所述第二目标片段之前结束,创建第一新项来对所述第一目标片段进行补齐,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位,其中,所述第一新项对应的时间段为所述第一目标片段的结束时间至所述第二目标片段的结束时间;
当所述第一目标片段在所述第二目标片段之后结束,创建第二新项来对所述第二目标片段进行补齐,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位,其中,所述第二新项对应的时间段为所述第二目标片的结束时间至所述第一目标片段的结束时间。
优选的,在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,基于所述第一目标片段和所述第二目标片段更新所述第一剪辑片段数组和所述第二剪辑片段数组的首个元素的过程,包括:
在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,当所述第一目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第二目标片段;将拷贝得到的第二目标片段的剪辑类型标识设置为删减标识后***到所述第一剪辑片段数组的首位,并将所述第二目标片段的剪辑类型标识修改为***标识后***到所述第二剪辑片段数组的首位;
当所述第二目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第一目标片段;将拷贝得到的第一目标片段的剪辑类型标识设置为删减标识后***到所述第二剪辑片段数组的首位,并将所述第一目标片段的剪辑类型标识修改为替片标识后***到所述第一剪辑片段数组的首位。
优选的,判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集之后,还包括:
若所述第一剪辑片段数组为空集且所述第二剪辑片段数组不为空集,将所述第二剪辑片段数组中剩余的片段的剪辑类型标识修改为***标识后推送到所述第一视频对应的第一结果数组中,及所述第二剪辑片段数组中剩余的片段推送到所述第二视频对应的第二结果数组中;
若所述第一剪辑片段数组不为空集且所述第二剪辑片段数组为空集,将所述第一剪辑片段数组中剩余的片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将第一剪辑片段数组中剩余的片段推送到所述第一结果数组中。
优选的,若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,展示所述第一视频和所述第二视频之间的剪辑痕迹,包括:
若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,以视频轨道的方式展示所述第一视频和所述第二视频之间的剪辑痕迹。
本发明实施例第二方面公开一种视频剪辑痕迹的比对装置,所述装置包括:
获取单元,用于将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组,所述第一剪辑片段数组包括组成所述第一视频的多个片段,所述第二剪辑片段数组包括组成所述第二视频的多个片段,所述第一视频为源视频或在所述源视频的基础上剪辑得到的视频;
判断单元,用于判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集;
移出单元,用于若所述第一剪辑片段数组和所述第二剪辑片段数组均不为空集,从所述第一剪辑片段数组中移出首个元素以得到第一目标片段,及从所述第二剪辑片段数组中移出首个元素以得到第二目标片段;
第一处理单元,用于在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将所述第一目标片段和所述第二目标片段分别推送至所述第一视频对应的第一结果数组和所述第二视频对应的第二结果数组中,或者,将所述第一目标片段和所述第二目标片段进行时间补齐后分别***到所述第一剪辑片段数组和所述第二剪辑片段数组的首位;返回执行所述判断单元;
第二处理单元,用于在所述第一目标片段和所述第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当所述第一目标片段在所述第二目标片段结束时开始,将所述第一目标片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将所述第二目标片段的剪辑类型标识修改为删减标识后推送到所述第一结果数组中,返回执行所述判断单元;
第三处理单元,用于在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,基于所述第一目标片段和所述第二目标片段更新所述第一剪辑片段数组和所述第二剪辑片段数组的首个元素,返回执行所述判断单元;
展示单元,用于若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,展示所述第一视频和所述第二视频之间的剪辑痕迹,所述剪辑痕迹至少包括删减、***和/或替片。
优选的,所述第一处理单元包括:
推送模块,用于在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,当所述第一目标片段和所述第二目标片段的起止时间均相同时,将所述第一目标片段推送至所述第一视频对应的第一结果数组中,及将所述第二目标片段推送至所述第二视频对应的第二结果数组中;
第一处理模块,用于当所述第一目标片段在所述第二目标片段之前开始,将所述第一目标片段的第一部分和第二部分***到所述第一剪辑片段数组的首位;将所述第一目标片段的第一部分补齐给所述第二目标片段,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位;其中,所述第一目标片段的第一部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的开始时间,所述第一目标片段的第二部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的结束时间;
第二处理模块,用于当所述第二目标片段在所述第一目标片段之前开始,将所述第二目标片段的第一部分和第二部分***到所述第二剪辑片段数组的首位;将所述第二目标片段的第一部分补齐给所述第一目标片段,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位;其中,所述第二目标片段的第一部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的开始时间,所述第二目标片段的第二部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的结束时间;
第三处理模块,用于当所述第一目标片段在所述第二目标片段之前结束,创建第一新项来对所述第一目标片段进行补齐,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位,其中,所述第一新项对应的时间段为所述第一目标片段的结束时间至所述第二目标片段的结束时间;
第四处理模块,用于当所述第一目标片段在所述第二目标片段之后结束,创建第二新项来对所述第二目标片段进行补齐,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位,其中,所述第二新项对应的时间段为所述第二目标片的结束时间至所述第一目标片段的结束时间。
优选的,所述第三处理单元包括:
第一处理模块,用于在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,当所述第一目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第二目标片段;将拷贝得到的第二目标片段的剪辑类型标识设置为删减标识后***到所述第一剪辑片段数组的首位,并将所述第二目标片段的剪辑类型标识修改为***标识后***到所述第二剪辑片段数组的首位;
第二处理模块,用于当所述第二目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第一目标片段;将拷贝得到的第一目标片段的剪辑类型标识设置为删减标识后***到所述第二剪辑片段数组的首位,并将所述第一目标片段的剪辑类型标识修改为替片标识后***到所述第一剪辑片段数组的首位。
优选的,还包括:
第四处理单元,用于若所述第一剪辑片段数组为空集且所述第二剪辑片段数组不为空集,将所述第二剪辑片段数组中剩余的片段的剪辑类型标识修改为***标识后推送到所述第一视频对应的第一结果数组中,及所述第二剪辑片段数组中剩余的片段推送到所述第二视频对应的第二结果数组中;
第五处理单元,用于若所述第一剪辑片段数组不为空集且所述第二剪辑片段数组为空集,将所述第一剪辑片段数组中剩余的片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将第一剪辑片段数组中剩余的片段推送到所述第一结果数组中。
优选的,所述展示单元具体用于:若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,以视频轨道的方式展示所述第一视频和所述第二视频之间的剪辑痕迹。
基于上述本发明实施例提供的一种视频剪辑痕迹的比对方法及装置,该方法包括:将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组;判断第一剪辑片段数组和第二剪辑片段数组是否为空集;若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段;根据第一目标片段和第二目标片段的主视频ID、起止时间采取相应的操作,得到第一视频对应的第一结果数组和第二视频对应的第二结果数组;基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,不再依赖人工整理视频间的差异就能够实现视频剪辑痕迹的比对,从而提高视频剪辑痕迹的比对效率和可以保证视频剪辑痕迹的比对准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种视频剪辑痕迹的比对方法的流程图;
图2(A)为本发明实施例提供的第一视频轨道的示例图;图2(B)为本发明实施例提供的第二视频轨道的示例图;
图3(A)-图3(D)为本发明实施例提供的剪辑痕迹比对结果示例图;
图4为本发明实施例提供的一种视频剪辑痕迹的比对方法的另一流程图;
图5为本发明实施例提供的一种视频剪辑痕迹的比对装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合背景技术可见,视频剪辑是指将视频通过切割、合并、重组、二次编码等操作生成新视频的过程;视频剪辑痕迹的比对至少具有以下作用:可以直观展示视频剪辑前后所做的切割、合并、重组、二次编码等操作痕迹;可以帮助剪辑人员快速定位视频剪辑前后的效果;也可以帮助审查者快速定位送审视频剪辑前后版本的差异。目前视频剪辑痕迹的比对主要还是依赖人工操作,即由人工将视频版本间的差异进行整理,此种方式费时费力且容易出现纰漏,视频剪辑痕迹的比对效率较低和无法保证视频剪辑痕迹的比对准确度。
因此,本方案提出一种视频剪辑痕迹的比对方法及装置,将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组。若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段。根据第一目标片段和第二目标片段的主视频ID、起止时间采取相应的操作,得到第一视频对应的第一结果数组和第二视频对应的第二结果数组。基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,不再依赖人工整理视频间的差异就能够实现视频剪辑痕迹的比对,从而提高视频剪辑痕迹的比对效率和可以保证视频剪辑痕迹的比对准确度。
在实际应用中,本方案可以基于送转码工程文件来实现视频剪辑痕迹的比对,送转码工程文件具体是指将剪辑工程转化为调用音视频处理软件(如ffmpeg)的参数;以下通过各个实施例对本方案进行详细说明。
参见图1,示出了本发明实施例提供的一种视频剪辑痕迹的比对方法的流程图,该比对方法包括以下步骤:
步骤S101:将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组。
在具体实现步骤S101的过程中,将第一视频(被剪辑的视频)剪辑成第二视频(剪辑后的视频)后,获取第一剪辑片段数组和第二剪辑片段数组;该第一剪辑片段数组包括组成第一视频的多个片段(也就是剪辑片段),该第二剪辑片段数组包括组成第二视频的多个片段,该第一视频为源视频或在源视频的基础上剪辑得到的视频。
需要说明的是,更具体来说,第一视频和第二视频为需要比对剪辑痕迹的两个视频;第一剪辑片段数组可以记为baseVideos,第二剪辑片段数组可以记为diffVideos;baseVideos和diffVideos即为需要对比剪辑痕迹和需要对齐的剪辑片段的数组。
预先构建第一视频对应的第一结果数组(记为baseVideos_)和第二视频对应的第二结果数组(diffVideos_);第一结果数组和第二结果数组是用于存储补充和同步对齐后的剪辑片段的数组。
第一剪辑片段数组和第二剪辑片段数组中各个片段都具有相应的FileId,FileId即为主视频ID,FileId可以用于区分剪辑片段的属性为***(也称为中插,记为add)、替片(记为rep)或删减(记为del)。
步骤S102:判断第一剪辑片段数组和第二剪辑片段数组是否为空集。若第一剪辑片段数组和第二剪辑片段数组均不为空集,执行步骤S103-步骤S106;若第一剪辑片段数组和第二剪辑片段数组均空集,执行步骤S107。
在具体实现步骤S102的过程中,判断第一剪辑片段数组和第二剪辑片段数组是否为空集,即判断第一剪辑片段数据和第二剪辑片段数组是否耗尽。
若第一剪辑片段数组和第二剪辑片段数组均不为空集(第一剪辑片段数据和第二剪辑片段数组均未耗尽),执行步骤S103-步骤S106。
若第一剪辑片段数组和第二剪辑片段数组均空集(第一剪辑片段数据和第二剪辑片段数组均耗尽),执行步骤S107。
一些实施例中,在从第一剪辑片段数组和第二剪辑片段数组中取出元素进行比对的过程中(下述步骤S103的内容),可能会存在第一目标片段缺失或第二目标片段缺失的情况(即第一剪辑片段数组或第二剪辑片段数组耗尽的情况),在该情况下,会将剩余的元素推送到结果数组中,并对这些剩余的元素修改剪辑类型标识(修改为add或del)。具体实现中,若第一剪辑片段数组为空集且第二剪辑片段数组不为空集,将第二剪辑片段数组中剩余的片段的剪辑类型标识修改为***标识后推送到第一视频对应的第一结果数组中,及第二剪辑片段数组中剩余的片段推送到第二视频对应的第二结果数组中。
若第一剪辑片段数组不为空集且第二剪辑片段数组为空集,将第一剪辑片段数组中剩余的片段的剪辑类型标识修改为删减标识后推送到第二结果数组中,及将第一剪辑片段数组中剩余的片段推送到第一结果数组中。
也就是说,在将片段补充给对方结果数组的时候需要修改补进去的片段的剪辑类型标识,补给自身结果数组的片段不需要修改剪辑类型标识。
步骤S103:若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段。
在具体实现步骤S103的过程中,若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出第一个元素存储到baseItem中,从第二剪辑片段数组中移出第一个元素存储到diffItem中;baseItem称为第一目标片段,diffItem称为第二目标片段。
在得到第一目标片段和第二目标片段之后,根据第一目标片段和第二目标片段是否具有相同的主视频ID(fileID)、第一目标片段和第二目标片段的之间是否存在时间重叠等情况,采取不同的措施,这些措施的具体内容详见以下步骤S104-步骤S106。
步骤S104:在第一目标片段和第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将第一目标片段和第二目标片段分别推送至第一视频对应的第一结果数组和第二视频对应的第二结果数组中,或者,将第一目标片段和第二目标片段进行时间补齐后分别***到第一剪辑片段数组和第二剪辑片段数组的首位;返回执行步骤S102。
在具体实现步骤S104的过程中,在第一目标片段和第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,即在baseItem和diffItem具有相同的fileID且时间重叠的情况下,将第一目标片段和第二目标片段分别推送至第一视频对应的第一结果数组(baseVideos_)和第二视频对应的第二结果数组中(diffVideos_),返回执行步骤S102继续下一轮的比对;
或者,将第一目标片段和第二目标片段进行时间补齐后分别***到第一剪辑片段数组和第二剪辑片段数组的首位,返回执行步骤S102继续下一轮的比对。
一些实施例中,在第一目标片段和第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,所采取的具体措施可见如下内容:
当第一目标片段和第二目标片段的起止时间均相同时,将第一目标片段推送至第一视频对应的第一结果数组(baseVideos_)中,及将第二目标片段推送至第二视频对应的第二结果数组(diffVideos_)中。
当第一目标片段在第二目标片段之前开始,将第一目标片段的第一部分和第二部分***到第一剪辑片段数组的首位;将第一目标片段的第一部分补齐给第二目标片段,并将补齐后的第二目标片段***到第二剪辑片段数组的首位;其中,第一目标片段的第一部分对应的时间段为第一目标片段的开始时间至第二目标片段的开始时间,第一目标片段的第二部分对应的时间段为第二目标片段的开始时间至第一目标片段的结束时间,第一目标片段的第二部分对应的时间段相当于第一目标片段除第一部分以外剩下的部分。
当第二目标片段在第一目标片段之前开始,将第二目标片段的第一部分和第二部分***到第二剪辑片段数组的首位;将第二目标片段的第一部分补齐给第一目标片段,并将补齐后的第一目标片段***到第一剪辑片段数组的首位;其中,第二目标片段的第一部分对应的时间段为第二目标片段的开始时间至第一目标片段的开始时间,第二目标片段的第二部分对应的时间段为第一目标片段的开始时间至第二目标片段的结束时间,第二目标片段的第二部分对应的时间段相当于第二目标片段除第一部分以外剩下的部分。
当第一目标片段在第二目标片段之前结束,创建第一新项来对第一目标片段进行补齐,并将补齐后的第一目标片段***到第一剪辑片段数组的首位,其中,第一新项对应的时间段为第一目标片段的结束时间至第二目标片段的结束时间,即第一新项用来表示第一目标片段结束后的时间段。
当第一目标片段在第二目标片段之后结束,创建第二新项来对第二目标片段进行补齐,并将补齐后的第二目标片段***到第二剪辑片段数组的首位,其中,第二新项对应的时间段为第二目标片的结束时间至第一目标片段的结束时间,即第二新项用来表示第二目标片段结束后的时间段。
步骤S105:在第一目标片段和第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当第一目标片段在第二目标片段结束时开始,将第一目标片段的剪辑类型标识修改为删减标识后推送到第二结果数组中,及将第二目标片段的剪辑类型标识修改为删减标识后推送到第一结果数组中,返回执行步骤S102。
在具体实现步骤S105的过程中,在第一目标片段和第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当第一目标片段在第二目标片段结束时开始(相当于第一目标片段紧接在第二目标片段结束之后开始),将第一目标片段的剪辑类型标识修改为删减标识后推送到第二结果数组中,及将第二目标片段的剪辑类型标识修改为删减标识后推送到第一结果数组中,返回执行步骤S102继续下一轮的比对。
需要说明的是,当第一目标片段不存在时,是将第二目标片段的剪辑类型标识修改为***标识后推送到第一结果数组中。
步骤S106:在第一目标片段和第二目标片段具有不同的主视频ID的情况下,基于第一目标片段和第二目标片段更新第一剪辑片段数组和第二剪辑片段数组的首个元素,返回执行步骤S102。
在具体实现步骤S106的过程中,在第一目标片段和第二目标片段具有不同的主视频ID的情况下,基于第一目标片段和第二目标片段更新第一剪辑片段数组和第二剪辑片段数组的首个元素,返回执行步骤S102继续进行下一轮的比对。
具体实现中,在第一目标片段和第二目标片段具有不同的主视频ID的情况下,基于第一目标片段和第二目标片段更新第一剪辑片段数组和第二剪辑片段数组的首个元素的过程如下内容:
在第一目标片段和第二目标片段具有不同的主视频ID的情况下,当第一目标片段的主视频ID与源视频的主视频ID相同时,拷贝第二目标片段;将拷贝得到的第二目标片段的剪辑类型标识设置为删减标识后(del)***到第一剪辑片段数组的首位,并将第二目标片段的剪辑类型标识修改为***标识(add)后***到第二剪辑片段数组的首位。
当第二目标片段的主视频ID与源视频的主视频ID相同时,拷贝第一目标片段;将拷贝得到的第一目标片段的剪辑类型标识设置为删减标识后***到所述第二剪辑片段数组的首位,并将第一目标片段的剪辑类型标识修改为替片标识(rep)后***到第一剪辑片段数组的首位。
步骤S107:若第一剪辑片段数组和第二剪辑片段数组均空集,基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹。
需要说明的是,剪辑痕迹至少包括删减、***和/或替片。
在具体实现步骤S107的过程中,若第一剪辑片段数组和第二剪辑片段数组均空集,基于第一结果数组和第二结果数组中各片段的剪辑类型标识,以视频轨道的方式展示第一视频和第二视频之间的剪辑痕迹。
具体来说,通过上述步骤S102-步骤S106的处理得到第一结果数组和第二结果数组;第一结果数组和第二结果数组里的片段一一对应(起止时间相同),根据第一结果数组和第二结果数组里各个片段的剪辑类型标识,依序对第一结果数组和第二结果数组里的各个片段进行渲染(可以通过不同颜色来表示不同剪辑类型标识的片段),从而得到第一结果数组的各个片段组成的第一视频轨道,及得到第二结果数组的各个片段组成的第二视频轨道;第一视频轨道和第二视频轨道中至少包含了各片段的剪辑类型标识,将第一视频轨道和第二视频轨道放在同一界面中显示,即可直观地反映出第一视频和第二视频之间的剪辑痕迹。
例如:通过上述步骤S101-步骤S107的处理,可得到如图2(A)和图2(B)示出的视频轨道,图2(A)为第一视频对应的第一视频轨道(也称为上轨道),图2(B)为第二视频对应的第二视频轨道(也称为下轨道)。通过不同颜色来表示各个片段的剪辑类型标识,其中,蓝色(init)代表源视频(主视频),红色(add,rep)代表其他视频,黑色(del)代表删除的片段。
图2(A)和图2(B)中各片段之间的“|”是两个视频剪辑操作对齐的锚点(时刻),表示在锚点处发生了剪辑操作,能够直观反馈给操作者以下内容:上轨道在哪些时刻进行了剪辑变成了下轨道。
图2(A)和图2(B)中,上轨道上的蓝色片段可以表征:该片段未被剪辑操作。上轨道上的黑色片段可以表征:baseItem和diffItem的主视频ID不一样且baseItem的主视频ID与源视频的主视频ID相同时,则将diffItem的剪辑类型标识修改为删减标识(del)补给baseVideos,或者,baseItem和diffItem没有时间上的交集时将diffItem的剪辑类型标识修改为删减标识(del)补给baseVideos_。上轨道上的红色片段可以表征:baseVideos已空,diffItem存在,则将diffItem的剪辑类型标识修改为***标识(add,红色)补给baseVideos_。
下轨道上的蓝色片段可以表征:该片段不是从baseVideos补充过来的,该片段未被剪辑操作。下轨道上的黑色片段可以表征:该片段仅被删减。下轨道上的红色片段可以表征:上轨道没有该片段,该片段的主视频ID与源视频的主视频ID不同,该片段的剪辑类型标识就即为替片标识(rep)。
在本发明实施例中,将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组。若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段。根据第一目标片段和第二目标片段的主视频ID、起止时间采取相应的操作,得到第一视频对应的第一结果数组和第二视频对应的第二结果数组。基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,不再依赖人工整理视频间的差异就能够实现视频剪辑痕迹的比对,从而提高视频剪辑痕迹的比对效率和可以保证视频剪辑痕迹的比对准确度。
在实际应用中,可以通过定义程序函数来实现本方案,具体实现方式通过以下过程A1-A5进行举例说明。
A1、定义一个AlignVideos函数,该AlignVideos函数用于将两个视频的片段进行补齐和同步对齐处理;该AlignVideos函数接收以下五个参数:FileId、baseVideos、baseVideos_、diffVideos、diffVideos_。
其中,FileId为主视频ID(用于区分片段的属性为***、替片或删减);baseVideos和diffVideos为需要对比剪辑痕迹和需要对齐的剪辑片段的数组;baseVideos_和diffVideos_用于存储补充和同步对齐后的剪辑片段的数组。
A2、AlignVideos函数开始时,从baseVideos和diffVideos中分别将第一个项目移出存储至baseItem和diffItem中。
A3、检查baseItem和diffItem是否都存在;如果都存在,根据baseItem和diffItem是否具有相同的FileId、时间是否重叠等条件,采取以下操作:
1)如果baseItem和diffItem具有相同的FileId且时间重叠:
a、如果baseItem和diffItem是起止时间相同的两个片段,则将baseItem推送到baseVideos_中,将diffItem推送到diffVideos_中。
b、如果baseItem在diffItem之前开始,则将baseItem拆分为两部分;将baseItem的第一部分和第二部分***baseVideos中,将baseItem的第一部分补齐给diffItem后***diffVideos中,这样就能够使下一轮取出的baseItem和diffItem的开始时间对齐了。
c、如果diffItem在baseItem之前开始,采取上述“b”中的类似方式进行处理。
d、如果baseItem在diffItem之前结束,创建一个新项来表示baseItem结束后的时间段,并将其推送到相应的数组中。
如果baseItem在diffItem之后结束,创建一个新项来表示diffItem结束后的时间段,并将其推送到相应的数组中。
2)如果baseItem和diffItem具有相同的FileId但没有时间充电,并且baseItem紧接在diffItem结束之后开始,则将diffItem的剪辑类型标识修改为del后推送到baseVideos_,将baseItem的剪辑类型标识修改为del后推送到diffVideos_。
3)如果baseItem和diffItem的FileId不一样:
a、如果baseItem的FileId和源视频的主视频ID相同,则拷贝一份diffItem(拷贝的diffItem的剪辑类型标识设置为del)***到baseVideos的首位,然后修改diffItem自身的剪辑类型标识为add并***到diffVideos的首位。
b、如果diffItem的FileId和源视频的主视频ID相同,则拷贝一份baseItem(拷贝的baseItem的剪辑类型标识设置为del)***到diffVideos的首位,然后修改baseItem自身的剪辑类型标识为rep并***到baseVideos的首位。
A4、如果baseItem或diffItem缺失(即baseVideos或diffVideos已耗尽),则会将剩余的片段推送给baseVideos_和diffVideos_,并根据实际情况修改这些剩余片段的剪辑类型标识(修改为add或del)。
A5、AlignVideos函数继续递归调用自身,直到baseVideos和diffVideos都为空,从而得到最终的baseVideos_和diffVideos_数组。
通过运行AlignVideos函数,可得到如图3(A)-图3(D)所示的剪辑痕迹比对结果示例图;图3(A)中包含了:版本A和版本A1之间的剪辑痕迹比对结果(称为版本区别);图3(B)中包含了:版本A1和版本A11之间的版本区别;图3(C)中包含了:版本A和版本A11之间的版本区别;图3(D)中包含了:版本A11和版本A1之间的版本区别。
需要说明的是,图3(A)-图3(D)中的空白处(空白中断部分)是为了更好展示比对结果而做的时间对齐处理。具体来说,图3(A)-图3(D)中的“-”表示一段段连续的源视频片段,“O”、“P”和“I”表示非源视频片段,“X”表示被删减的片段,“空白处”在时间维度上是连续的(主要是为了使比对效果清晰明了)。
A表示源视频,在A的基础上剪辑得到的视频可以在A后面追加数字编号来命名;对A进行剪辑得到A1,对A1进行剪辑得到A11。
为了更好解释说明上述AlignVideos函数运行的过程,通过图4示出的一种视频剪辑痕迹的比对方法的另一流程图进行举例说明,图4包括以下步骤:
步骤S401:运行AlignVideos函数。
步骤S402:判断baseVideos和diffVideos是否均为非空。若否,将非空的数组中剩余的片段推送到相应结果数组中;若是,执行步骤S403。
步骤S403:取baseVideos和diffVideos的首元素,得到baseItem和diffItem。
步骤S404:baseItem和diffItem的FileId是否相等。若不相等,则执行以下内容补齐片段:1、优先将与源视频FileId不同的片段补充给对方,2、其次将自身补充给对方;返回执行步骤S401。若相等,执行步骤S405。
步骤S405:baseItem和diffItem是否存在时间重叠。若不存在时间重叠,则补齐片段(具体为仅向前补齐片段),其中,向前补齐:将早出来的片段补充给对方;返回执行步骤S401。若存在时间重叠,执行步骤S406。
步骤S406:baseItem和diffItem的起止时间是否相等。若起止时间不相等,执行以下内容:1、分隔片段:具体为将时间重叠的部分分隔出来;2、补齐片段:仅向前补齐片段;3、将分隔和补齐的片段依次从头添加到各自数组中;返回执行步骤S401。若起止时间相等,执行步骤S407。
步骤S407:将baseItem推送到baseVideos_中,将diffItem推送到diffVideos_中,返回执行步骤S401。
以上是关于AlignVideos函数运行的举例说明,上述步骤S401-步骤S407的执行原理,已在上述各个实施例进行详细说明,在此不再赘述。
与上述本发明实施例提供的一种视频剪辑痕迹的比对方法相对应,参见图5,本发明实施例还提供了一种视频剪辑痕迹的比对装置的结构框图,该比对装置包括:获取单元501、判断单元502、移出单元503、第一处理单元504、第二处理单元505、第三处理单元506、展示单元507;
获取单元501,用于将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组,第一剪辑片段数组包括组成第一视频的多个片段,第二剪辑片段数组包括组成第二视频的多个片段,第一视频为源视频或在源视频的基础上剪辑得到的视频。
判断单元502,用于判断第一剪辑片段数组和第二剪辑片段数组是否为空集。
移出单元503,用于若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段。
第一处理单元504,用于在第一目标片段和第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将第一目标片段和第二目标片段分别推送至第一视频对应的第一结果数组和第二视频对应的第二结果数组中,或者,将第一目标片段和第二目标片段进行时间补齐后分别***到第一剪辑片段数组和第二剪辑片段数组的首位;返回执行判断单元502。
第二处理单元505,用于在第一目标片段和第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当第一目标片段在第二目标片段结束时开始,将第一目标片段的剪辑类型标识修改为删减标识后推送到第二结果数组中,及将第二目标片段的剪辑类型标识修改为删减标识后推送到第一结果数组中,返回执行判断单元502。
第三处理单元506,用于在第一目标片段和第二目标片段具有不同的主视频ID的情况下,基于第一目标片段和第二目标片段更新第一剪辑片段数组和第二剪辑片段数组的首个元素,返回执行判断单元502。
展示单元507,用于若第一剪辑片段数组和第二剪辑片段数组均空集,基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,剪辑痕迹至少包括删减、***和/或替片。
在具体实现中,展示单元507具体用于:若第一剪辑片段数组和第二剪辑片段数组均空集,基于第一结果数组和第二结果数组中各片段的剪辑类型标识,以视频轨道的方式展示第一视频和第二视频之间的剪辑痕迹。
在本发明实施例中,将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组。若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段。根据第一目标片段和第二目标片段的主视频ID、起止时间采取相应的操作,得到第一视频对应的第一结果数组和第二视频对应的第二结果数组。基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,不再依赖人工整理视频间的差异就能够实现视频剪辑痕迹的比对,从而提高视频剪辑痕迹的比对效率和可以保证视频剪辑痕迹的比对准确度。
优选的,结合图5示出的内容,第一处理单元504包括推送模块、第一处理模块、第二处理模块、第三处理模块、第四处理模块;各个模块的执行原理如下:
推送模块,用于在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,当所述第一目标片段和所述第二目标片段的起止时间均相同时,将所述第一目标片段推送至所述第一视频对应的第一结果数组中,及将所述第二目标片段推送至所述第二视频对应的第二结果数组中;
第一处理模块,用于当第一目标片段在第二目标片段之前开始,将第一目标片段的第一部分和第二部分***到第一剪辑片段数组的首位;将第一目标片段的第一部分补齐给第二目标片段,并将补齐后的第二目标片段***到第二剪辑片段数组的首位;其中,第一目标片段的第一部分对应的时间段为第一目标片段的开始时间至第二目标片段的开始时间,第一目标片段的第二部分对应的时间段为第二目标片段的开始时间至第一目标片段的结束时间。
第二处理模块,用于当第二目标片段在第一目标片段之前开始,将第二目标片段的第一部分和第二部分***到第二剪辑片段数组的首位;将第二目标片段的第一部分补齐给第一目标片段,并将补齐后的第一目标片段***到第一剪辑片段数组的首位;其中,第二目标片段的第一部分对应的时间段为第二目标片段的开始时间至第一目标片段的开始时间,第二目标片段的第二部分对应的时间段为第一目标片段的开始时间至第二目标片段的结束时间。
第三处理模块,用于当第一目标片段在第二目标片段之前结束,创建第一新项来对第一目标片段进行补齐,并将补齐后的第一目标片段***到第一剪辑片段数组的首位,其中,第一新项对应的时间段为第一目标片段的结束时间至第二目标片段的结束时间。
第四处理模块,用于当第一目标片段在第二目标片段之后结束,创建第二新项来对第二目标片段进行补齐,并将补齐后的第二目标片段***到第二剪辑片段数组的首位,其中,第二新项对应的时间段为第二目标片的结束时间至第一目标片段的结束时间。
优选的,结合图5示出的内容,第三处理单元506包括第一处理模块和第二处理模块;各个模块的执行原理如下:
第一处理模块,用于在第一目标片段和第二目标片段具有不同的主视频ID的情况下,当第一目标片段的主视频ID与源视频的主视频ID相同时,拷贝第二目标片段;将拷贝得到的第二目标片段的剪辑类型标识设置为删减标识后***到第一剪辑片段数组的首位,并将第二目标片段的剪辑类型标识修改为***标识后***到第二剪辑片段数组的首位。
第二处理模块,用于当第二目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝第一目标片段;将拷贝得到的第一目标片段的剪辑类型标识设置为删减标识后***到第二剪辑片段数组的首位,并将第一目标片段的剪辑类型标识修改为替片标识后***到第一剪辑片段数组的首位。
优选的,结合图5示出的内容,该装置还包括:
第四处理单元,用于若第一剪辑片段数组为空集且第二剪辑片段数组不为空集,将第二剪辑片段数组中剩余的片段的剪辑类型标识修改为***标识后推送到第一视频对应的第一结果数组中,及第二剪辑片段数组中剩余的片段推送到第二视频对应的第二结果数组中。
第五处理单元,用于若第一剪辑片段数组不为空集且第二剪辑片段数组为空集,将第一剪辑片段数组中剩余的片段的剪辑类型标识修改为删减标识后推送到第二结果数组中,及将第一剪辑片段数组中剩余的片段推送到第一结果数组中。
综上所述,本发明实施例提供一种视频剪辑痕迹的比对方法及装置,将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组。若第一剪辑片段数组和第二剪辑片段数组均不为空集,从第一剪辑片段数组中移出首个元素以得到第一目标片段,及从第二剪辑片段数组中移出首个元素以得到第二目标片段。根据第一目标片段和第二目标片段的主视频ID、起止时间采取相应的操作,得到第一视频对应的第一结果数组和第二视频对应的第二结果数组。基于第一结果数组和第二结果数组中各片段的剪辑类型标识,展示第一视频和第二视频之间的剪辑痕迹,不再依赖人工整理视频间的差异就能够实现视频剪辑痕迹的比对,从而提高视频剪辑痕迹的比对效率和可以保证视频剪辑痕迹的比对准确度。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***或***实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的***及***实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (2)

1.一种视频剪辑痕迹的比对方法,其特征在于,所述方法包括:
将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组,所述第一剪辑片段数组包括组成所述第一视频的多个片段,所述第二剪辑片段数组包括组成所述第二视频的多个片段,所述第一视频为源视频或在所述源视频的基础上剪辑得到的视频;
判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集;
若所述第一剪辑片段数组和所述第二剪辑片段数组均不为空集,从所述第一剪辑片段数组中移出首个元素以得到第一目标片段,及从所述第二剪辑片段数组中移出首个元素以得到第二目标片段;
在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将所述第一目标片段和所述第二目标片段分别推送至所述第一视频对应的第一结果数组和所述第二视频对应的第二结果数组中,或者,将所述第一目标片段和所述第二目标片段进行时间补齐后分别***到所述第一剪辑片段数组和所述第二剪辑片段数组的首位;返回执行判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集这一步骤;
在所述第一目标片段和所述第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当所述第一目标片段在所述第二目标片段结束时开始,将所述第一目标片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将所述第二目标片段的剪辑类型标识修改为删减标识后推送到所述第一结果数组中,返回执行判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集这一步骤;
在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,基于所述第一目标片段和所述第二目标片段更新所述第一剪辑片段数组和所述第二剪辑片段数组的首个元素,返回执行判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集这一步骤;
若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,展示所述第一视频和所述第二视频之间的剪辑痕迹,所述剪辑痕迹至少包括删减、***和/或替片;
在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将所述第一目标片段和所述第二目标片段分别推送至所述第一视频对应的第一结果数组和所述第二视频对应的第二结果数组中,或者,将所述第一目标片段和所述第二目标片段进行时间补齐后分别***到所述第一剪辑片段数组和所述第二剪辑片段数组的首位的过程,包括:
在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,当所述第一目标片段和所述第二目标片段的起止时间均相同时,将所述第一目标片段推送至所述第一视频对应的第一结果数组中,及将所述第二目标片段推送至所述第二视频对应的第二结果数组中;
当所述第一目标片段在所述第二目标片段之前开始,将所述第一目标片段的第一部分和第二部分***到所述第一剪辑片段数组的首位;将所述第一目标片段的第一部分补齐给所述第二目标片段,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位;其中,所述第一目标片段的第一部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的开始时间,所述第一目标片段的第二部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的结束时间;
当所述第二目标片段在所述第一目标片段之前开始,将所述第二目标片段的第一部分和第二部分***到所述第二剪辑片段数组的首位;将所述第二目标片段的第一部分补齐给所述第一目标片段,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位;其中,所述第二目标片段的第一部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的开始时间,所述第二目标片段的第二部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的结束时间;
当所述第一目标片段在所述第二目标片段之前结束,创建第一新项来对所述第一目标片段进行补齐,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位,其中,所述第一新项对应的时间段为所述第一目标片段的结束时间至所述第二目标片段的结束时间;
当所述第一目标片段在所述第二目标片段之后结束,创建第二新项来对所述第二目标片段进行补齐,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位,其中,所述第二新项对应的时间段为所述第二目标片的结束时间至所述第一目标片段的结束时间;
在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,基于所述第一目标片段和所述第二目标片段更新所述第一剪辑片段数组和所述第二剪辑片段数组的首个元素的过程,包括:
在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,当所述第一目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第二目标片段;将拷贝得到的第二目标片段的剪辑类型标识设置为删减标识后***到所述第一剪辑片段数组的首位,并将所述第二目标片段的剪辑类型标识修改为***标识后***到所述第二剪辑片段数组的首位;
当所述第二目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第一目标片段;将拷贝得到的第一目标片段的剪辑类型标识设置为删减标识后***到所述第二剪辑片段数组的首位,并将所述第一目标片段的剪辑类型标识修改为替片标识后***到所述第一剪辑片段数组的首位;
判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集之后,还包括:
若所述第一剪辑片段数组为空集且所述第二剪辑片段数组不为空集,将所述第二剪辑片段数组中剩余的片段的剪辑类型标识修改为***标识后推送到所述第一视频对应的第一结果数组中,及所述第二剪辑片段数组中剩余的片段推送到所述第二视频对应的第二结果数组中;
若所述第一剪辑片段数组不为空集且所述第二剪辑片段数组为空集,将所述第一剪辑片段数组中剩余的片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将第一剪辑片段数组中剩余的片段推送到所述第一结果数组中;
若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,展示所述第一视频和所述第二视频之间的剪辑痕迹,包括:
若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,以视频轨道的方式展示所述第一视频和所述第二视频之间的剪辑痕迹。
2.一种视频剪辑痕迹的比对装置,其特征在于,所述装置包括:
获取单元,用于将第一视频剪辑成第二视频后,获取第一剪辑片段数组和第二剪辑片段数组,所述第一剪辑片段数组包括组成所述第一视频的多个片段,所述第二剪辑片段数组包括组成所述第二视频的多个片段,所述第一视频为源视频或在所述源视频的基础上剪辑得到的视频;
判断单元,用于判断所述第一剪辑片段数组和所述第二剪辑片段数组是否为空集;
移出单元,用于若所述第一剪辑片段数组和所述第二剪辑片段数组均不为空集,从所述第一剪辑片段数组中移出首个元素以得到第一目标片段,及从所述第二剪辑片段数组中移出首个元素以得到第二目标片段;
第一处理单元,用于在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,将所述第一目标片段和所述第二目标片段分别推送至所述第一视频对应的第一结果数组和所述第二视频对应的第二结果数组中,或者,将所述第一目标片段和所述第二目标片段进行时间补齐后分别***到所述第一剪辑片段数组和所述第二剪辑片段数组的首位;返回执行所述判断单元;
第二处理单元,用于在所述第一目标片段和所述第二目标片段之间具有相同主视频ID但不存在时间重叠的情况下,当所述第一目标片段在所述第二目标片段结束时开始,将所述第一目标片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将所述第二目标片段的剪辑类型标识修改为删减标识后推送到所述第一结果数组中,返回执行所述判断单元;
第三处理单元,用于在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,基于所述第一目标片段和所述第二目标片段更新所述第一剪辑片段数组和所述第二剪辑片段数组的首个元素,返回执行所述判断单元;
展示单元,用于若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,展示所述第一视频和所述第二视频之间的剪辑痕迹,所述剪辑痕迹至少包括删减、***和/或替片;
所述第一处理单元包括:推送模块、第一处理模块、第二处理模块、第三处理模块和第四处理模块;
所述推送模块,用于在所述第一目标片段和所述第二目标片段之间存在时间重叠且具有相同主视频ID的情况下,当所述第一目标片段和所述第二目标片段的起止时间均相同时,将所述第一目标片段推送至所述第一视频对应的第一结果数组中,及将所述第二目标片段推送至所述第二视频对应的第二结果数组中;
所述第一处理模块,用于当所述第一目标片段在所述第二目标片段之前开始,将所述第一目标片段的第一部分和第二部分***到所述第一剪辑片段数组的首位;将所述第一目标片段的第一部分补齐给所述第二目标片段,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位;其中,所述第一目标片段的第一部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的开始时间,所述第一目标片段的第二部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的结束时间;
所述第二处理模块,用于当所述第二目标片段在所述第一目标片段之前开始,将所述第二目标片段的第一部分和第二部分***到所述第二剪辑片段数组的首位;将所述第二目标片段的第一部分补齐给所述第一目标片段,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位;其中,所述第二目标片段的第一部分对应的时间段为所述第二目标片段的开始时间至所述第一目标片段的开始时间,所述第二目标片段的第二部分对应的时间段为所述第一目标片段的开始时间至所述第二目标片段的结束时间;
所述第三处理模块,用于当所述第一目标片段在所述第二目标片段之前结束,创建第一新项来对所述第一目标片段进行补齐,并将补齐后的所述第一目标片段***到所述第一剪辑片段数组的首位,其中,所述第一新项对应的时间段为所述第一目标片段的结束时间至所述第二目标片段的结束时间;
所述第四处理模块,用于当所述第一目标片段在所述第二目标片段之后结束,创建第二新项来对所述第二目标片段进行补齐,并将补齐后的所述第二目标片段***到所述第二剪辑片段数组的首位,其中,所述第二新项对应的时间段为所述第二目标片的结束时间至所述第一目标片段的结束时间;
所述第三处理单元包括:第一处理模块和第二处理模块;
所述第一处理模块,用于在所述第一目标片段和所述第二目标片段具有不同的主视频ID的情况下,当所述第一目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第二目标片段;将拷贝得到的第二目标片段的剪辑类型标识设置为删减标识后***到所述第一剪辑片段数组的首位,并将所述第二目标片段的剪辑类型标识修改为***标识后***到所述第二剪辑片段数组的首位;
所述第二处理模块,用于当所述第二目标片段的主视频ID与所述源视频的主视频ID相同时,拷贝所述第一目标片段;将拷贝得到的第一目标片段的剪辑类型标识设置为删减标识后***到所述第二剪辑片段数组的首位,并将所述第一目标片段的剪辑类型标识修改为替片标识后***到所述第一剪辑片段数组的首位;
第四处理单元,用于若所述第一剪辑片段数组为空集且所述第二剪辑片段数组不为空集,将所述第二剪辑片段数组中剩余的片段的剪辑类型标识修改为***标识后推送到所述第一视频对应的第一结果数组中,及所述第二剪辑片段数组中剩余的片段推送到所述第二视频对应的第二结果数组中;
第五处理单元,用于若所述第一剪辑片段数组不为空集且所述第二剪辑片段数组为空集,将所述第一剪辑片段数组中剩余的片段的剪辑类型标识修改为删减标识后推送到所述第二结果数组中,及将第一剪辑片段数组中剩余的片段推送到所述第一结果数组中;
所述展示单元具体用于:若所述第一剪辑片段数组和所述第二剪辑片段数组均空集,基于所述第一结果数组和第二结果数组中各片段的剪辑类型标识,以视频轨道的方式展示所述第一视频和所述第二视频之间的剪辑痕迹。
CN202311568483.0A 2023-11-23 2023-11-23 一种视频剪辑痕迹的比对方法及装置 Active CN117278802B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311568483.0A CN117278802B (zh) 2023-11-23 2023-11-23 一种视频剪辑痕迹的比对方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311568483.0A CN117278802B (zh) 2023-11-23 2023-11-23 一种视频剪辑痕迹的比对方法及装置

Publications (2)

Publication Number Publication Date
CN117278802A CN117278802A (zh) 2023-12-22
CN117278802B true CN117278802B (zh) 2024-02-13

Family

ID=89220044

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311568483.0A Active CN117278802B (zh) 2023-11-23 2023-11-23 一种视频剪辑痕迹的比对方法及装置

Country Status (1)

Country Link
CN (1) CN117278802B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999173A (en) * 1992-04-03 1999-12-07 Adobe Systems Incorporated Method and apparatus for video editing with video clip representations displayed along a time line
US6560620B1 (en) * 1999-08-03 2003-05-06 Aplix Research, Inc. Hierarchical document comparison system and method
KR20090002076A (ko) * 2007-06-04 2009-01-09 (주)엔써즈 동영상 데이터의 동일성 판단 및 동일 구간 검출 방법 및장치
CN107111620A (zh) * 2014-10-10 2017-08-29 三星电子株式会社 使用上下文数据的视频编辑和使用群组的内容发现
CN108241598A (zh) * 2016-12-26 2018-07-03 北京奇虎科技有限公司 一种演示文稿的制作方法和装置
CN109246446A (zh) * 2018-11-09 2019-01-18 东方明珠新媒体股份有限公司 比较视频内容相似性的方法、装置和设备
KR20190061621A (ko) * 2017-11-28 2019-06-05 주식회사 트라이웍스 동영상 비교 방법 및 이를 이용한 동영상 비교 시스템
CN112437344A (zh) * 2020-10-30 2021-03-02 福建星网视易信息***有限公司 一种视频匹配方法及终端
CN113923472A (zh) * 2021-09-01 2022-01-11 北京奇艺世纪科技有限公司 视频内容分析方法、装置、电子设备及存储介质
CN114666637A (zh) * 2022-03-10 2022-06-24 阿里巴巴(中国)有限公司 视频剪辑方法、音频剪辑方法及电子设备
CN115499707A (zh) * 2022-09-22 2022-12-20 北京百度网讯科技有限公司 视频相似度的确定方法和装置
WO2023030098A1 (zh) * 2021-08-31 2023-03-09 华为技术有限公司 视频剪辑方法、电子设备及存储介质
WO2023088484A1 (zh) * 2021-11-22 2023-05-25 北京字跳网络技术有限公司 用于多媒体资源剪辑场景的方法、装置、设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW520602B (en) * 2001-06-28 2003-02-11 Ulead Systems Inc Device and method of editing video program
US20120136729A1 (en) * 2010-11-30 2012-05-31 At&T Intellectual Property I, L.P. Method and system for snippet-modified television advertising
CN110602566B (zh) * 2019-09-06 2021-10-01 Oppo广东移动通信有限公司 匹配方法、终端和可读存储介质
US11249890B2 (en) * 2020-06-24 2022-02-15 Webomates LLC Software defect creation

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999173A (en) * 1992-04-03 1999-12-07 Adobe Systems Incorporated Method and apparatus for video editing with video clip representations displayed along a time line
US6560620B1 (en) * 1999-08-03 2003-05-06 Aplix Research, Inc. Hierarchical document comparison system and method
KR20090002076A (ko) * 2007-06-04 2009-01-09 (주)엔써즈 동영상 데이터의 동일성 판단 및 동일 구간 검출 방법 및장치
CN107111620A (zh) * 2014-10-10 2017-08-29 三星电子株式会社 使用上下文数据的视频编辑和使用群组的内容发现
CN108241598A (zh) * 2016-12-26 2018-07-03 北京奇虎科技有限公司 一种演示文稿的制作方法和装置
KR20190061621A (ko) * 2017-11-28 2019-06-05 주식회사 트라이웍스 동영상 비교 방법 및 이를 이용한 동영상 비교 시스템
CN109246446A (zh) * 2018-11-09 2019-01-18 东方明珠新媒体股份有限公司 比较视频内容相似性的方法、装置和设备
CN112437344A (zh) * 2020-10-30 2021-03-02 福建星网视易信息***有限公司 一种视频匹配方法及终端
WO2023030098A1 (zh) * 2021-08-31 2023-03-09 华为技术有限公司 视频剪辑方法、电子设备及存储介质
CN113923472A (zh) * 2021-09-01 2022-01-11 北京奇艺世纪科技有限公司 视频内容分析方法、装置、电子设备及存储介质
WO2023088484A1 (zh) * 2021-11-22 2023-05-25 北京字跳网络技术有限公司 用于多媒体资源剪辑场景的方法、装置、设备及存储介质
CN114666637A (zh) * 2022-03-10 2022-06-24 阿里巴巴(中国)有限公司 视频剪辑方法、音频剪辑方法及电子设备
CN115499707A (zh) * 2022-09-22 2022-12-20 北京百度网讯科技有限公司 视频相似度的确定方法和装置

Also Published As

Publication number Publication date
CN117278802A (zh) 2023-12-22

Similar Documents

Publication Publication Date Title
CN105912628B (zh) 主从数据库的同步方法及装置
CN106033436B (zh) 一种数据库的合并方法
CN109885581A (zh) 数据库的同步方法、装置、设备及存储介质
CN105302533B (zh) 代码同步方法和装置
CN107491429B (zh) 一种解决同时编辑文档内容冲突的方法
CN109840194B (zh) 一种配置文件的检测方法及***
CN106933967B (zh) 文件内容的批量修改方法及批量修改装置
CN106055334B (zh) 代码管理***及方法
CN103631590B (zh) 自动化测试脚本的编辑方法
US20220179642A1 (en) Software code change method and apparatus
CN109783451A (zh) 基于消息摘要算法的文件更新方法、装置、设备及介质
US8028271B2 (en) Patch-aware editor
CN106294769B (zh) 同步工程数据的方法、***和装置
CN105867903A (zh) 代码库拆分的方法及装置
CN105554044A (zh) 在本地对象存储节点中同步对象的方法及装置
CN110633101A (zh) 一种程序代码管理方法、装置、设备及可读存储介质
CN117278802B (zh) 一种视频剪辑痕迹的比对方法及装置
US9037539B2 (en) Data synchronization
CN111984239A (zh) 一种页面配置方法、装置、服务器及存储介质
CN104834749A (zh) 一种移动终端与pc端的文件同步方法及同步***
CN110532006B (zh) 一种基于状态机的复杂配置文件升级方法
CN111506583A (zh) 更新方法、更新装置、服务器、计算机设备和存储介质
CN111125067B (zh) 数据维护方法及装置
CN113553373A (zh) 数据同步方法及装置、存储介质及电子设备
CN109902025A (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