CN113747098B - 一种带有音频标识的照片文件生成方法、照片显示方法和设备 - Google Patents

一种带有音频标识的照片文件生成方法、照片显示方法和设备 Download PDF

Info

Publication number
CN113747098B
CN113747098B CN202110872635.0A CN202110872635A CN113747098B CN 113747098 B CN113747098 B CN 113747098B CN 202110872635 A CN202110872635 A CN 202110872635A CN 113747098 B CN113747098 B CN 113747098B
Authority
CN
China
Prior art keywords
audio
photo
user
segments
time
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
CN202110872635.0A
Other languages
English (en)
Other versions
CN113747098A (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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202110872635.0A priority Critical patent/CN113747098B/zh
Publication of CN113747098A publication Critical patent/CN113747098A/zh
Application granted granted Critical
Publication of CN113747098B publication Critical patent/CN113747098B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/9201Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving the multiplexing of an additional signal and the video signal
    • H04N5/9202Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving the multiplexing of an additional signal and the video signal the additional signal being a sound signal

Abstract

本申请提供一种带有音频标识的照片文件生成方法和照片显示方法,所述照片文件生成方法包括:获取用户拍摄的第一照片和拍摄第一照片时录音的第一音频,将该第一音频分割成N个音频片段,N为正整数且N≥2;在N个音频片段中确定M个音频片段,1≤M≤N,根据M个音频片段生成M个音频标识,其中音频片段与音频标识一一对应;结合第一照片和M个音频标识生成第一照片文件。本方法对用户拍照时录音的音频进行分割,生成至少一个音频标识,将拍摄的照片、分割后的M个音频标识相结合生成一种带有音频标识的照片文件,并存储该照片文件,从而使用户在预览照片的同时可以播放录音的音频片段。另外,音频标识还为后续海量照片的快速查找提供便捷。

Description

一种带有音频标识的照片文件生成方法、照片显示方法和设备
技术领域
本申请涉及终端设备技术领域,尤其是涉及一种带有音频标识的照片文件生成方法、照片显示方法和设备。
背景技术
相机拍照是手机的诸多功能中用户最常用的应用功能之一,一般在手机的相册里会存储用户拍摄的大量照片,可能存储有成百上千张照片。对于这些照片的分类,目前常见的分类方法是按照拍摄时间或照片信息中的地理位置进行划分。比如按照拍摄时间和日期,以一整日为单位,将所有存储的照片进行分类。或者,按照地理位置划分,将位于同一地点的照片归为一类。
但是,由于这两种方式划分的照片所包含的内容较丰富、种类多样,比如在一日内或者在同一区域位置,用户既拍摄了风景、建筑物等,又拍摄了人物和美食,所以当按照日期或地理位置对这些照片做分类时,用户难以找到特定的目标照片,比如查找拍摄有用户头像的照片。
发明内容
本申请实施例对用户拍照时录制的音频进行处理,提供了一种带有音频标识的照片文件生成方法,为后续海量照片的快速查找提供便捷。具体地,技术方案如下:
第一方面,本申请实施例提供了一种带有音频标识的照片文件生成方法,该方法包括:获取用户拍摄的第一照片和拍摄所述第一照片时录音的第一音频,将所述第一音频分割成N个音频片段,N为正整数且N≥2,在所述N个音频片段中确定M个音频片段,1≤M≤N,根据所述M个音频片段生成M个音频标识,所述M个音频片段与所述M个音频标识一一对应;结合所述第一照片和所述M个音频标识,生成第一照片文件。
本方面提供的方法,在用户拍照的同时进行录音,并对录音的音频进行分割,生成音频标识,将拍摄的照片、分割后的音频片段、音频标识等结合起来,生成一种带有音频标识的照片文件,并存储该照片文件,该方法可以提升用户照片浏览体验,在预览照片的同时可以播放录音的音频片段。
另外,本方法还可以通过音频标识快速地查找到目标图片/照片,进而提高了图片/照片的查找效率。
所述音频标识为一种音频指纹,所述音频指纹可以代表一段音频重要声学特征的基于内容的数字签名。
结合第一方面,在第一方面的一种可能的实施方式中,根据所述M个音频片段生成M个音频标识,包括:调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识。本实施方式中,从N个音频片段中筛选M个,并生成与M个音频片段一一对应的M个音频标识,当M小于N时,选择其中的部分音频片段而不是全部音频,从而节省处理资源,提高生成音频标识的效率。
结合第一方面,在第一方面的另一种可能的实施方式中,所述调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识,包括:根据拍摄的所述第一照片的时间戳和音频标识算法,生成与所述M个音频片段对应的所述M个音频标识;每个所述音频标识包括一个时间戳,所述每个音频标识的时间戳与所述第一照片的时间戳一致。本实施方式中,将每个音频标识的时间戳与照片的时间戳配置一致,从而方便后续对音频标识的快速查找。
结合第一方面,在第一方面的又一种可能的实施方式中,在所述N个音频片段中确定M个音频片段,包括:调用音频接口播放所述第一音频;接收用户根据播放的所述第一音频反馈的第一指令,所述第一指令用于指示在所述N个音频片段中选择的M个音频片段;根据所述第一指令确定所述M个音频片段。本实施方式根据用户的指令确定M个音频片段,剔除掉部分音频片段,保留具有显著声音或者具有标志性的音频片段,比如鸟鸣声、汽笛声等,实现了在保证对照片特征识别的同时,还节省了处理资源和存储资源。
结合第一方面,在第一方面的又一种可能的实施方式中,每个所述音频标识通过预设字段承载,所述预设字段用于指示是否承载所述音频标识信息。具体地,所述预设字段中承载每个音频标识的音频标识信息,所述音频标识信息包括:音频标识长度、音频标识头部信息。
可选的,所述音频标识信息为音频指纹信息,对应地,所述音频标识长度为音频指纹长度、音频标识头部信息为音频指纹头部信息。
可选的,所述预设字段为“魔数”。
结合第一方面,在第一方面的又一种可能的实施方式中,将所述第一音频分割成至少两个音频片段,包括:获取所述第一音频所对应的至少两个音频采样数据,每个所述音频采样数据为按照一个采样周期为单位采集的音频数据;根据所述至少两个音频采样数据生成至少两个音频片段。
可选的,所述第一照片文件包括:所述第一照片和所述一个或多个音频标识。
其中,每个音频标识的格式为“.dat”。另外,每个音频标识的命名中还包含一个时间戳,该时间戳与分割的音频片段的时间戳相一致。
结合第一方面,在第一方面的又一种可能的实施方式中,所述获取拍摄所述第一照片时录音的第一音频,包括:在终端设备的拍摄界面上显示“有声”按钮;接收用户在所述拍摄界面上点击所述“有声”按钮的操作;响应于所述用户的点击操作,启动录音功能,获取录音起始时刻;接收用户的拍照操作,根据所述拍照操作确定录音终止时刻;在所述录音起始时刻和所述录音终止时刻之间的时间段内录音得到所述第一音频。本实施方式中,实现了在拍摄照片的同时,还录音了周围的声音内容,比如海浪声、鸟鸣声、汽笛声等等,为后续音频分割提供依据。
其中,所述录音终止时刻为,接收的用户按下快门的时刻,或者,用户按下快门后经过预设时间间隔后的时刻。
另外,可选的,所述方法还包括:存储所述第一照片文件,其中所述第一照片文件以aupic格式存储。
第二方面,本申请实施例还提供了一种照片显示方法,所述方法包括:获取第一照片和拍摄所述第一照片时录音的第一音频;询问用户是否播放所述第一音频;在接收用户发送的播放指令时,播放所述第一音频同时显示所述第一照片。本方法,实现了在显示第一照片的同时播放拍摄第一照片时录音的音频。
结合第二方面,在第二方面的一种可能的实施方式中,所述获取拍摄所述第一照片时录音的第一音频,包括:在预设字段中查找是否包含音频标识信息;如果是,则根据所述预设字段中的音频标识信息确定所述第一音频。
进一步地,所述音频标识信息包括:音频标识长度和音频标识头部信息,根据所述预设字段中的音频标识信息确定所述第一音频,包括:根据得到所述音频标识长度和所述音频标识头部信息确定第一照片所对应的时间戳;根据所述第一照片所对应的时间戳确定所述第一音频,其中,所述第一音频的时间戳与所述第一照片对应的时间戳相同。
本实施方式,通过音频标识信息可以确定照片中是否携带音频标识,并且根据时间戳查找到当前照片所对应的音频,实现了音频标识的快速查找。
第三方面,本申请实施例还提供了一种带有音频标识的照片文件生成装置,该装置应用于一种终端设备,所述装置包括:获取模块、处理模块等。
获取模块,用于获取用户拍摄的第一照片和拍摄所述第一照片时录音的第一音频;处理模块,用于将所述第一音频分割成N个音频片段,N为大于等于2的正整数,在所述N个音频片段中确定M个音频片段,1≤M≤N,根据所述M个音频片段生成M个音频标识,所述M个音频片段与所述M个音频标识一一对应;以及,结合所述第一照片和所述M个音频标识,生成第一照片文件。其中,所述第一照片文件包括:所述第一照片和所述M个音频标识。
结合第三方面,在第三方面的一种可能的实施方式中,处理模块,还用于调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识。
结合第三方面,在第三方面的另一种可能的实施方式中,处理模块还用于根据拍摄的所述第一照片的时间戳和音频标识算法,生成与所述M个音频片段对应的所述M个音频标识;每个所述音频标识包括一个时间戳,所述每个音频标识的时间戳与所述第一照片的时间戳一致。
结合第三方面,在第三方面的又一种可能的实施方式中,处理模块还用于调用音频接口播放所述第一音频;所述获取模块还用于接收用户根据播放的所述第一音频反馈的第一指令,所述第一指令用于指示在所述N个音频片段中选择的M个音频片段;所述处理模块还用于根据所述第一指令确定所述M个音频片段。
其中,每个所述音频标识通过预设字段承载;所述预设字段中承载每个音频标识的音频标识信息,所述音频标识信息包括:音频标识长度、音频标识头部信息。
结合第三方面,在第三方面的又一种可能的实施方式中,所述获取模块还用于获取所述第一音频所对应的至少两个音频采样数据,每个所述音频采样数据为按照一个采样周期为单位采集的音频数据;处理模块还用于根据所述至少两个音频采样数据生成所述M个音频片段。
可选的,在又一种具体的实施方式中,还包括显示模块,所述显示模块,用于在终端设备的拍摄界面上显示“有声”按钮;所述获取模块还用于接收用户在所述拍摄界面上点击所述“有声”按钮的操作;所述处理模块还用于响应于所述用户的点击操作,启动录音功能,获取录音起始时刻;所述获取模块还用于接收用户的拍照操作,根据所述拍照操作确定录音终止时刻;所述处理模块还用于在所述录音起始时刻和所述录音终止时刻之间的时间段内录音得到所述第一音频。
其中,所述录音终止时刻为,接收的用户按下快门的时刻,或者,用户按下快门后经过预设时间间隔后的时刻。
结合第三方面,在第三方面的又一种可能的实施方式中,还包括存储模块或存储单元,用于存储所述第一照片文件,其中所述第一照片文件以aupic格式存储。
第四方面,本申请实施例还提供了一种照片显示装置时,包括获取模块、处理模块等。
所述获取模块,用于获取第一照片和拍摄所述第一照片时录音的第一音频;所述处理模块,用于询问用户是否播放所述第一音频;以及在所述获取模块接收到用户发送的播放指令时,播放所述第一音频同时显示所述第一照片。
结合第四方面,在第四方面的一种可能的实施方式中,所述获取模块还用于在预设字段中查找是否包含音频标识信息;如果是,则根据所述预设字段中的音频标识信息确定所述第一音频。
其中,所述音频标识信息包括:音频标识长度和音频标识头部信息。
所述处理模块还用于根据得到所述音频标识长度和所述音频标识头部信息确定第一照片所对应的时间戳;根据所述第一照片所对应的时间戳确定所述第一音频,其中,所述第一音频的时间戳与所述第一照片对应的时间戳相同。
第五方面,本申请实施例还提供一种终端设备,该终端设备包括至少一个处理器和存储器,此外,所述终端设备还包括:通信模块,显示屏,摄像头,音频模块等部件。
其中,所述音频模块包括:扬声器,受话器,麦克风和耳机接口等。
其中,所述存储器,用于为所述至少一个处理器提供计算机程序指令和/或数据;所述至少一个处理器,用于执行所述计算机程序指令,以实现前述第一方面及第一方面各种实现方式中的方法,或者,实现前述第二方面及第二方面各种实现方式中的方法。
当所述终端设备实现前述第一方面中的照片文件生成方法时,所述至少一个处理器用于获取用户拍摄的第一照片和拍摄所述第一照片时录音的第一音频;将所述第一音频分割成至少两个音频片段;根据所述至少两个音频片段生成一个或多个音频标识,所述音频片段与所述音频标识一一对应;结合所述第一照片和所述一个或多个音频标识,生成第一照片文件。
其中,所述第一音频可以通过所述音频模块采集。
当所述终端设备实现前述第二方面中的照片显示方法时,所述至少一个处理器用于获取第一照片和拍摄所述第一照片时录音的第一音频;询问用户是否播放所述第一音频;以及,在接收用户发送的播放指令时,播放所述第一音频同时显示所述第一照片。
其中,询问用户是否播放所述第一音频以及接收用户的播放指令等操作可通过用户界面UI实现。
可选的,所述至少一个处理器和存储器可以集成在一个处理芯片或者芯片电路中。
可选的,所述终端设备包括但不限于手机、PC、平板电脑。
第六方面,本申请还提供了一种计算机可读存储介质,该存储介质中存储有指令,使得当指令在计算机或处理器上运行时,可以用于执行前述第一方面或第二方面的各种实现方式中的方法。
另外,本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,当该指令被计算机或处理器执行时,可实现前述第一方面或第二方面的各种实现方式中的方法。
需要说明的是,上述第三方面至第六方面的各种实现方式的技术方案所对应的有益效果与前述第一方面以及第一方面的各种实现方式,以及第二方面以及第二方面的各种实现方式的有益效果相同,具体参见上述第一方面和第二方面的各种实现方式中的有益效果描述,不再赘述。
附图说明
图1为本申请实施例提供的一种用户拍照的场景示意图;
图2为本申请实施例提供的一种终端设备的硬件结构示意图;
图3为本申请实施例提供的一种终端设备的软件架构示意图;
图4为本申请实施例提供的一种带有音频标识的照片文件生成方法的流程图;
图5为本申请实施例提供的一种获取第一照片和第一音频的方法流程图;
图6a为本申请实施例提供的一种手机桌面的示意图;
图6b为本申请实施例提供的一种手机拍摄界面的示意图;
图6c为本申请实施例提供的一种用户点击“有声”控件的示意图;
图6d为本申请实施例提供的一种用户点击快门拍照的示意图;
图7为本申请实施例提供的一种生成照片和音频的示意图;
图8为本申请实施例提供的一种包含多个音频分割的示意图;
图9为本申请实施例提供的一种音频分割的方法流程图;
图10为本申请实施例提供的一种生成M个音频标识或音频索引的示意图;
图11为本申请实施例提供的一种音频片段的示意图;
图12为本申请实施例提供的一种将音频片段生成音频标识的流程图;
图13为本申请实施例提供的一种生成第一照片文件的示意图;
图14为本申请实施例提供的另一种带有音频标识的照片文件生成方法的流程图;
图15为本申请实施例提供的一种照片文件播放方法的流程图;
图16为本申请实施例提供的一种照片文件生成装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中的技术方案作进一步详细的说明。
在对本申请实施例的技术方案说明之前,首先对本申请实施例中的应用场景进行解释和说明。
本申请的技术方案可应用于终端拍照的技术场景。此外,本申请还可应用于图片编辑场景,为静态图片/照片生成音频索引。如图1所示,在一种拍照场景中,包括:用户和终端设备,用户利用该终端设备的照相功能拍摄景物、人物等景色。
其中,所述终端设备可以是一种便携式设备,比如智能终端、手机、笔记本电脑、平板电脑、个人计算机(personal computer,PC)、个人数字助理(personal digitalassistant,PDA),可折叠终端、具备无线通讯功能的可穿戴设备(例如智能手表或手环)、用户设备(user device)或用户设备(user equipment,UE)、以及增强现实(augmentedreality,AR)\虚拟现实(virtual reality,VR)设备等,本申请的实施例对终端设备的具体设备形态不做限定。另外,上述各种终端设备中搭载安卓(Android)、苹果(IOS)以及鸿蒙(HarmonyOS)系统。
图2是本申请实施例提供的终端设备的硬件结构示意图。如图2所示,终端设备可以包括处理器110,存储器120,传感器模块130,音频模块140,移动通信模块150,无线通信模块160,天线1,天线2,显示屏170,摄像头180,USB接口190,电源管理模块191等。
其中,传感器模块130可以包括压力传感器130A,陀螺仪传感器130B,触摸传感器130C,另外,传感器模块130中还可以包括加速度传感器,温度传感器,环境光传感器等。
音频模块140包括扬声器(Speaker)140A,受话器140B,麦克风(MIC)140C。此外还包括耳机接口等。
应理解,本实施例示意的结构并不构成对终端设备的具体限定。在本申请另一些实施例中,可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理模块,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-networkprocessing unit,NPU)等。其中不同的处理模块可以是独立的器件,也可以集成在一个或多个处理器中。
处理器110可以是终端设备的神经中枢和指挥中心。处理器110可以根据指令操作码和时序信号,产生操作控制信号,完成读取指令和执行指令的操作。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
可选的,所述处理器110为一种处理芯片。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
其中,USB接口190是符合USB标准规范的接口,具体可以是Mini USB接口,MicroUSB接口,USB Type C接口等。USB接口190可以用于连接外部设备,比如充电器等。
电源管理模块191用于连接电池与处理器110。电源管理模块191为处理器110,存储器120,显示屏170,摄像头180和无线通信模块160等供电。在一些实施例中,电池可以设置在电源管理模块191中。另外,可选的,还可以包括充电管理模块,所述充电管理模块用于从充电器接收充电输入,以及为电池充电的同时,还可以通过电源管理模块191为终端设备供电。
终端设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。终端设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noiseamplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频模块(包括但不不限于扬声器140A,受话器140B等)输出声音信号,或通过显示屏170显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,WiFi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160还可以从处理器110接收待发送的信号,并对其进行调频,放大处理,然后经天线2转为电磁波发射出去。
在一些实施例中,终端设备的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备可以通过无线通信技术与网络以及其他设备通信。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code divisionmultiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidou navigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备可通过GPU,显示屏170,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏170和应用处理器。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏170用于显示应用界面、窗口、控件等。显示屏170包括显示面板。所述显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organiclight-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED),柔性发光二极管(flexlight-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,终端设备可以包括至少一个显示屏170。
可选的,显示屏170为一种触摸显示屏,可以获取用户的一系列操作。
摄像头180,可用于拍摄并获取图像。在一些实施例中,终端设备可以包括至少一个摄像头。
存储器120可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器120可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如控件重组功能)等。存储数据区可存储终端设备使用过程中所创建的数据(比如滑动手势轨迹)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在存储器120的指令,来执行终端设备的各种功能应用以及界面处理。
在传感器模块130中,压力传感器130A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器130A可以设置于显示屏170。压力传感器130A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。当有触摸操作作用于显示屏170时,终端设备根据压力传感器130A检测所述触摸操作强度。或者也可以根据压力传感器130A的检测信号计算触摸点的位置。陀螺仪传感器130B可以用于获取终端设备的运动姿态。触摸传感器130C,也称“触控器件”。触摸传感器130C可以设置于显示屏170,由触摸传感器130C与显示屏170组成触摸屏。触摸传感器130C用于检测作用于其上或附近的滑动手势触摸操作。触摸传感器130C可以将检测到的触摸操作传递给应用处理器,以确定触摸事件发生。可以通过显示屏170提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器130C也可以设置于终端设备的表面,与显示屏170所处的位置不同。
参见图3,本申请实施例以终端设备的软件系统是Android系统为例,示例性说明终端设备的软件结构。
其中,上述任一终端设备的软件架构可以采用分层架构,请参考图3,为本申请实施例提供的一种软件架构的组成示意图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用层,应用程序框架层,系统层,内核层和驱动(Driver)硬件层。其中,系统层在图3中未示出。
应用层可以包括一系列应用程序包。如图3所示,应用程序包可以包括图库,相机,通话,导航,蓝牙,音乐,视频,短信息等应用程序。所述应用层中的各种应用可以通过Android应用程序包(Android application package,APK)实现,比如相机APK(cameraAPK)。
应用程序框架层(又简称“框架层”)为应用层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,框架层可以包括:音频记录模块(Audio Recorder),AudioTrack,图像处理模块(ImageProcessor),相机管理模块(CameraManager)。其中,AudioTrack用于播放已经解码的脉冲编码调制(Pulse Code Modulation,PCM)数据流,所述PCM数据流大部分是wav格式的音频文件。
此外,在框架层中还可以包括其他的单元和模块,比如窗口管理器,控件识别器,资源管理器,通知管理器等,本实施例对此不予限制。
在系统层,安卓运行时(Android Runtime)包括核心库(Core Libraries)和虚拟机。Android Runtime负责安卓系统的调度和管理。所述核心库包含两部分:一部分是java语言需要调用的功能函数,如Java核心库,另一部分是安卓的核心库。
应用层和框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:控件重组模块,媒体库(media libraries),三维图形处理库,2D图形引擎等。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:wmv,wav,MPEG4,H.264,mp3,aac,amr,jpg,png等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
内核层(Hardware Abstraction Layer,HAL)是硬件和软件之间的层。内核层至少包含音频服务模块(AudioService),音频调度服务(AudioFlinger),图像处理服务(ImageProcess Service),相机服务(CameraService)等。其中,AudioService负责Android音频服务,属于Android本地音频服务的API类。
驱动层(Driver)中包括显示驱动,摄像头驱动,音频驱动,传感器驱动等。音频驱动可用于驱动扬声器和/或麦克风等设备。
下面对本实施例提供的方法进行详细介绍。
本实施例提供一种带有音频标识的照片文件生成方法,该方法可由前述任意一种终端设备执行。如图4所示,所述方法包括:
步骤101:获取用户拍摄的第一照片和拍摄所述第一照片时录音的第一音频。
其中,所述第一音频记录所述第一照片在生成过程中的全部音频环境内容。所述音频环境内容包括人声、鸟鸣声、汽笛声、嘈杂声等各种环境声音。比如第一照片是用户在海边拍摄的照片,则第一音频记录了整个拍摄第一照片时的海浪声、鸟鸣声以及人声等全部音频。
具体地,如图5所示,步骤101具体包括:
步骤1011:终端设备启动相机APP,开启拍摄功能,显示拍摄界面。一种实施方式是,如图6a所示,用户在终端设备,比如手机桌面点击“相机”应用601,打开camera底层摄像头设备,同时在上层应用界面展示拍摄界面,开启相机的拍照模式。
可选的,所述第一照片存储格式为.jpg,该第一照片为二进制数据。
步骤1012:在所述终端设备的拍摄界面上显示“有声”按钮(控件),接收用户在所述拍摄界面上点击所述“有声”按钮的操作。
如图6b所示,所述“有声”按钮为一开关按钮或开关控件,当用户点击该按钮时,启动设备的录音功能,且将用户点击开关按钮的时刻设为录音的起始时刻,比如录音起始时刻是第一时刻(time1,T1)。录音的内容包括当前外部环境的所有声音,比如船汽笛声、人声、鸟鸣声等等。
步骤1013:响应于所述用户的点击操作,启动录音功能,开始录音,并获取录音起始时刻。如图6c所示,用户在T1时刻点击“有声”按钮,记录当前录音时长为1s(秒)。
步骤1014:终端设备接收用户的拍照操作,根据所述拍照操作确定录音终止时刻,并且响应于所述拍照操作生成第一照片以及第一音频。
所述拍照操作包括用户对所述拍摄界面内显示的影像进行对焦、点击快门等操作。
可选的,在生成第一照片和第一音频的同时,在拍摄界面还显示所述第一音频。如图6d所示,在第3s,用户按下快门,完成拍照,此时显示拍摄的第一照片,以及录音的第一音频。可选的,所述第一音频又称为原始音频。
所述录音终止时刻为,接收的用户按下快门的时刻,或者,用户按下快门后经过预设时间间隔后的时刻。比如用户按下快门拍照的时刻是第二时刻(time2,T2),则所述录音终止时刻为T2时刻,如图6d所示,录音终止时刻为第3s,此时,录音时长为从0~3s的时间间隔。
或者,另一种实施方式是,从第二时刻T2开始经过预设时间间隔后停止录音,比如在T2时刻(第3s)经过预设时间间隔(2s)后的时刻是第三时刻(time3,T3),所述录音终止时刻为T3时刻(第5s),则确定所述第一音频录音时长为从T1至T3,即0~5秒的时间间隔。
经过上述步骤1011至步骤1014后得到所述第一照片和所述第一音频。如图7所示,还包括存储第一照片和第一音频的存储目录。本示例中,存储目录为:DCIM/Camera/Pictures;所述第一照片存储格式为.jpg,命名为:IMG_20210320_180808.jpg;所述第一音频的格式为wmv,命名为:Rec_20210320_180808.wmv。其中,所述第一照片的命名中包含照片拍摄的时间戳,该时间戳的格式为:年月日_时分秒,如YYYYmmDD_HHMMSS。本示例中的“20210320_180808”可以表示为2021年3月20日,18时8分8秒。
参见图4,上述方法还包括:步骤102:将所述第一音频分割成N个音频片段,N为正整数且N≥2。每个所述音频片段记录所述第一照片在生成过程中的一段音频环境内容。
一种实施方式,如图8所示,将所述第一音频(即原始音频)分割成N个音频片段,分别是:音频片段1、音频片段2、……、音频片段N,N为正整数且N≥2。所述N个音频片段可被命名为:Rec_20210320_180808_01.wmv、Rec_20210320_180808_02.wmv、Rec_20210320_180808_N.wmv。
具体地,一种音频分割的实施方式是,根据音频采样周期对第一音频进行分割,具体地,获取所述第一音频所对应的至少两个音频采样数据,其中,每个所述音频采样数据为按照一个采样周期为单位采集的音频数据;然后根据所述至少两个音频采样数据生成所述N个音频片段。另外,可选的,上述步骤102可通过终端设备的分割音频(splitAudio)模块实现。
具体地,如图9所示,一种音频分割的方法包括:
步骤1021:获取第一音频所对应的总帧数。所述第一音频可以通过二进制文件表示。
步骤1022:根据所述总帧数,读取二进制文件,在所述二进制文件中,包括录制所述第一音频的起始时刻(start time),所述起始时刻从0开始,且随后依次增大。
步骤1023:判断所述起始时刻是否大于等于总时长。
设所述起始时刻从0开始,以采样周期1s为单位逐渐增加,所以起始时刻为0,1,2,3,逐次增加。所述总时长可以自行设置,比如所述总时长为5s。
步骤1024:如果否,即当前起始时刻未超过总时长,则按照1s步长获取音频采样数据:本示例中,设采样值存储位数为16bit(比特),双音频通道举例,获取起始时刻,start=start Time×16×2;获取终止时刻,所述终止时刻为end=(start Time+1000ms)×16×2,根据所述起始时刻和所述终止时刻将截取的音频片段转换为音频文件,该音频文件为数据格式,buff=data[start,end]。
步骤1025:将所述音频文件保存在缓存器(buffer),音频文件的格式为wmw。
另外,在步骤1023中,如果是,即起始时刻大于等于总时长,比如起始时刻为6s,总时长为5s,起始时刻6s大于等于5s,则分割结束。
可选的,在前述步骤102中,还包括:用户对分割的各个音频片段/分割音频进行标记。比如给每个音频片段添加一个标识,比如当前某一音频片段中船的汽笛声最响亮,则可以标记该音频片段为“船汽笛声”。
应理解,还可以通过其他方式对每个音频片段进行标记,本实施例对此不做具体限制。此外,本申请还对音频分割的具体实施方式不予限制。
步骤103:在所述N个音频片段中确定M个音频片段,1≤M≤N。
步骤104:根据所述M个音频片段生成M个音频标识,所述M个音频片段与所述M个音频标识一一对应。
具体地,如图10所示,终端设备先在分割的N个(N≥2)音频片段中确定M个音频片段,1≤M≤N;然后,调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识。其中,所述音频标识又称为音频指纹或音频索引,用于唯一标识一个音频片段。具体地,所述音频指纹或音频索引可以代表一段音频重要声学特征的基于内容的数字签名,可用于音频比对、音频库检索或者音频内容监测等应用场景。音频指纹作为内容自动识别技术的核心算法,已广泛应用于音乐识别、版权内容监播和电视第二屏幕互动等领域。
另外,每个音频标识中还用于指示音频片段的频谱特性,所述频谱特性包括:频谱幅值和频谱能量中至少一种,利用该频谱特性可对不同的照片进行分类和标识。
步骤104,在所述N个音频片段中确定M个音频片段,包括:调用音频接口,比如AudioTrack的play接口,播放所述第一音频;接收用户根据所述播放的第一音频反馈的第一指令,所述第一指令用于指示在所述N个音频片段中选择的M个音频片段;根据所述第一指令确定所述M个音频片段。其中,所述AudioTrack的play接口可以是框架层中的某一特定接口。
一种实施方式是,终端设备接收用户的第一指令,然后根据所述第一指令生成至少一个音频片段,如果用户选取其中的一个音频片段,则M=1,生成一个音频标识;如果用户在N个音频片段中选取M个,2≤M≤N,则对应生成M个音频标识,且一个音频片段对应一个音频标识。当M=N时,将N个音频片段中的每一个都生成一个音频标识。本示例中,确定的个数M比N少一个,即M=N-1。比如且生成N-1个音频标识,分割音频2与音频标识2相对应,分割音频M与分割音频M相对应。
如图11所示,将第一音频分割成多个音频片段后,在拍摄界面上显示每个分割音频,以及添加相应的音频播放进度条控件,例如:seekbar。其中,音频片段1中方格表示用户当前播放的音频位置;音频片段2中长格表示用户按段播放的音频。当用户认为某段音频可以作为音频标识时,用户便可以拖动该进度条,此时触发执行进度条的回调函数,比如所述回调函数为:onPregressChanged(),在该函数中执行生成音频标识的动作。
另外,在上述步骤104:将所述M个音频片段生成M个音频标识,具体包括:
如图12所示,步骤1041:终端设备将所述音频片段或音频数据生成音频指纹。终端设备根据拍摄的所述第一照片的时间戳和音频标识或音频指纹算法,生成与所述M个音频片段对应的所述M个音频标识。其中AudioTrack.genAudioFingerprint函数,采用成熟的音频指纹算法,生成音频标识。通过该音频指纹算法/代码表示为:data=genAudioFingerprint(audio file)。
其中,每个所述音频标识包括一个时间戳,所述每个音频标识的时间戳与所述第一照片的时间戳一致。比如,所述音频标识可以表示为:FingerPrint_20210320_180808_02.dat。该音频标识中的“20210320_180808”表示时间戳。
步骤1042:所述音频指纹或音频标识为数据格式“.data”,将该音频指纹或音频标识存储为data文件,其中每个data文件表示一个音频指纹或音频标识。
需要说明的是,本实施例还可以采用其他方式生成音频标识,本实施例对生成音频标识的方法不予限制。
步骤105:结合所述第一照片和所述M个音频标识,生成第一照片文件。
其中,所述第一照片文件包括:所述第一照片和所述一个或多个音频标识。如图13所示,所述第一照片文件中包括:第一照片和M个音频标识,且M个音频标识中的每个音频标识对应一个音频片段。在图13中所述音频标识为音频指纹。
所述第一照片文件为一种.aupic文件,且终端设备的相机安卓应用包(cameraapk)支持解析所述.aupic文件格式的功能。
另外,在图13所示的文件中,还包括:删除生成的中间文件,比如删除分割的音频片段,如wmv格式的分割音频1至N,以及音频指纹2至音频指纹M等音频数据dat。如图13所示,画虚线部分为可删除信息,从而节省了存储资源。
可选的,在本实施例中,每个所述音频标识可通过预设字段承载;所述预设字段又称为“魔数”,用于表示是否承载所述音频指纹/音频标识信息。如表1所示,如果该预设字段中有信息,不为空,比如0X5A5A5A5A5A,则表示该字段承载音频指纹/音频标识信息;如果该字段中未存储数据/信息,比如内容为空,则表示第一照片中不包含音频指纹/音频标识。
表1
Figure BDA0003189671880000121
此外,所述音频指纹/音频标识信息包括:音频指纹长度/音频标识和音频指纹/音频标识头部信息。如表2所示,设音频指纹2所对应的音频指纹信息中,音频指纹长度共8个字节,其中,音频指纹头部信息占6个字节,所述音频指纹2的头部信息包括编号(0x00)和大小(0012345678),其中,编号占2字节,大小占4字节。所述音频指纹2的格式为:FingerPrint_20210320_180808_02.dat。同理地,音频指纹M的头部信息包括编号(0x00)和大小(01ABCDEF00),该音频指纹M的头部信息长度也占6个字节,且音频指纹M的格式为:FingerPrint_20210320_180808_M.dat。
表2
Figure BDA0003189671880000122
本实施例提供的方法,在用户拍照的同时进行录音,并对录音的音频进行分割,生成音频标识,将拍摄的照片、分割后的音频片段、音频标识等结合起来,生成一种带有音频标识的照片文件,并存储该照片文件,该方法可以提升用户照片浏览体验,在预览照片的同时可以播放录音的音频片段,另外,还通过音频标识可以快速查找到目标图片,进而提高了照片查找效率。
在终端设备的软件层面,如图14所示,前述实施例所述的照片文件生成方法,包括:
S1:相机应用(Camera APP)开启相机应用功能。
具体地,相机应用向相机管理器(CameraManager)发送第一请求,该第一请求用于开启Camera底层摄像头设备。
S2:相机管理器接收来自相机应用的第一请求后,开启摄像头设备,启动拍照模式,并返回拍照界面给相机应用;同时,在拍照界面上显示“有声”按钮/控件。
S3:相机应用接收用户点击“有声”按钮/控件的操作,并向音频记录器(AudioRecorder)发送第二请求,所述第二请求用于请求开启音频记录器。
S4:所述音频记录器接收所述第二请求后,开始录音(openRecorder),并向所述相机应用反馈第一响应(response),所述第一响应指示已经启动并开始录音。
具体地,参见上述图3所示的软件结构,调用路径包括:AudioRecord调用AudioFlinger,AudioFlinger调用AudioModule,AudioModule调用音频驱动,音频驱动调用硬件设备,比如麦克风mic。其中,调用的接口可以按照现有的框架层、内核层的接口。
S5:用户点击拍照按钮/控件时,相机应用接收用户点击拍摄操作,调用相机管理器的拍照接口,得到第一照片并保存该第一照片。
S6:相机管理器完成拍照后,向所述相机应用反馈拍照结果,所述拍照结果包括所述第一照片,第一照片的存储目录等。
S7:在前述步骤S5用户拍照完成后,调用音频记录器停止录音(stopRecorder)。
S8:所述音频记录器接收调用指令后,停止录音,或者,在用户点击拍摄按钮之后经过预设时间间隔(如2s)后停止录音,同时向所述相机应用反馈停止录音的响应。
此时,生成一段完整录音内容,比如第一音频。终端设备显示界面上显示该第一照片和第一音频。
S9:相机应用向音频跟踪器(AudioTrack)发送音频分割请求,该请求用于对第一音频进行分割。
S10:音频跟踪器采用音频分割技术将所述第一音频分割成至少两个音频片段。一种可能的实现方式是,AudioTrack利用SplitAudio函数对所述第一音频进行分割。
所述生成的至少两个音频片段包括:分割音频1、分割音频2、……、分割音频N。
S11:音频跟踪器向所述相机应用反馈分割的音频片段,用户选择其中的至少一个音频片段,然后所述音频跟踪器对所述用户选择的所有音频片段进行处理,生成至少一个音频标识,并且将包含有第一照片和所述至少一个音频标识的第一照片文件发送给所述相机应用。
其中,当用户选中某个音频片段后,音频片段进度条会放大,以便于用户再次精选,或者,用户也可以放弃精选。可选的,用户可以将选择的某个音频片段进度条放大显示,其余的未被选择的音频片段择可以隐藏掉。
S12:音频跟踪器将所述第一照片文件存储在存储器或存储介质(Storage)上,并且,在应用层的相机应用中也存储所述第一照片文件。
可选的,上述生成的至少一个音频标识被存储在Storage的预设字段中,比如魔数,所述预设字段中承载每个音频标识的音频标识信息,所述音频标识信息包括:音频标识长度和音频标识头部信息。
其中,所述第一照片文件的具体内容,以及音频分割、生成音频标识的过程参见前述实施例的描述,本实施例不详细赘述。
本实施例,在软件层面上实现前述图4和图5所示的照片文件生成方法,为后续照片查找提供便捷。
本申请实施例还提供一种照片显示方法,用于对前述实施例的第一照片进行播放,如图15所示,以音频指纹信息为例,该方法包括:
步骤201:终端设备获取预设字段,所述预设字段可用于承载音频指纹信息。
其中,当终端设备获取第一照片时,执行步骤201。一种终端设备获取第一照片的方式是:当用户打开相册APP,预览相册APP中的某一照片时,比如预览第一照片时,获取该第一照片。或者,另一种实施方式是,用户在相机APP中拍摄完生成所述第一照片。
所述第一照片与一个预设字段对应,比如第一照片对应第一预设字段。
可选的,所述第一预设字段为一个魔数字段,如0X5A5A5A5A5A。
步骤202:在所述预设字段中查找是否有音频指纹信息。或者判断预设字段的内容是否有信息,不为空。
步骤203:如果是,则根据所述预设字段中的音频指纹信息确定第一音频。
其中,所述第一音频与预设字段中的音频指纹信息相匹配。所述音频指纹信息包括:音频指纹长度和音频指纹头部信息,如前述表2所示,音频指纹2的头部信息为0x000012345678,音频指纹长度为8个字节。
终端设备先根据得到所述音频指纹长度和音频指纹头部信息确定第一照片的存储目录,第一照片的命名,以及第一照片所对应的时间戳等信息。然后根据所述第一照片的命名,所述第一照片对应的时间戳中的至少一种信息确定所述第一音频,其中,第一音频的时间戳与所述第一照片对应的时间戳相同。
步骤204:询问用户是否播放所述第一音频。
步骤205:如果是,则播放所述第一音频。
其中,播放的第一音频可以是完整的原始音频,或者也可以是被分割的一个或多个音频片段。在步骤204中,在显示界面上弹出提示框,询问用户是否播放第一音频,当终端设备接收到用户在显示界面的提示框中点击“是”的操作时,确定接收用户发送的播放指令,执行步骤205。
步骤206:显示所述第一照片。
在步骤205中,播放所述第一音频的同时显示所述第一照片。
可选的,在步骤204中,如果否,即终端设备接收到用户在所述提示框中点击“否”的操作,则不播放所述第一音频,此时,只显示所述第一照片。
另外,在前述步骤202中,如果判断所述预设字段中没有音频指纹信息,内容为空,则表示该照片没有被录音,或者,理解为没有该照片对应的音频文件,也就没有音频标识,此时只显示所述第一照片。
本实施例提供的方法,实现对存储的照片文件中特定照片的查找,并同时播放该照片对应的音频。
下面介绍与上述方法实施例对应的装置实施例。
图16为本申请实施例提供的一种装置的结构示意图。所述装置可以应用于前述的终端设备,或者,还可以是位于终端设备中的处理芯片。并且,该装置用于执行前述实施例中的照片文件生成方法,以及照片显示方法。
其中,该装置包括:获取模块1601和处理模块1602,此外还可以包括其他单元或模块,比如存储模块/存储单元、发送模块等。
当该装置作为一种照片文件生成装置时,获取模块1601,用于获取用户拍摄的第一照片和拍摄所述第一照片时录音的第一音频;处理模块1602,用于将所述第一音频分割成N个音频片段,N为正整数且N≥2,在所述N个音频片段中确定M个音频片段,1≤M≤N,根据所述M个音频片段生成M个音频标识,所述音频片段与所述音频标识一一对应;以及,结合所述第一照片和所述M个音频标识生成第一照片文件。其中,所述第一照片文件包括:所述第一照片和所述M个音频标识。
可选的,在一种具体的实施方式中,处理模块1602,还用于调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识。
可选的,在另一种具体的实施方式中,处理模块1602,还用于根据拍摄的所述第一照片的时间戳和音频标识算法,生成与所述M个音频片段对应的所述M个音频标识;每个所述音频标识包括一个时间戳,所述每个音频标识的时间戳与所述第一照片的时间戳一致。
可选的,在又一种具体的实施方式中,处理模块1602,还用于调用音频接口播放所述第一音频;所述获取模块1601,还用于接收用户根据播放的所述第一音频反馈的第一指令,所述第一指令用于指示在所述N个音频片段中选择的M个音频片段;所述处理模块1602,还用于根据所述第一指令确定所述M个音频片段。
其中,每个所述音频标识通过预设字段承载;所述预设字段中承载每个音频标识的音频标识信息,所述音频标识信息包括:音频标识长度、音频标识头部信息。
可选的,在又一种具体的实施方式中,所述获取模块1601,还用于获取所述第一音频所对应的至少两个音频采样数据,每个所述音频采样数据为按照一个采样周期为单位采集的音频数据;处理模块1602,还用于根据所述至少两个音频采样数据生成M个音频片段。
可选的,在又一种具体的实施方式中,还包括显示模块,该显示模块在图16中未示出。
所述显示模块,用于在终端设备的拍摄界面上显示“有声”按钮;获取模块1601,还用于接收用户在所述拍摄界面上点击所述“有声”按钮的操作;处理模块1602,还用于响应于所述用户的点击操作,启动录音功能,获取录音起始时刻;所述获取模块1601,还用于接收用户的拍照操作,根据所述拍照操作确定录音终止时刻;所述处理模块1602,还用于在所述录音起始时刻和所述录音终止时刻之间的时间段内录音得到所述第一音频。
可选的,所述录音终止时刻为,接收的用户按下快门的时刻,或者,用户按下快门后经过预设时间间隔后的时刻。
可选的,在又一种具体的实施方式中,存储模块或存储单元,用于存储所述第一照片文件,其中所述第一照片文件以aupic格式存储。
当前述装置为一种照片显示装置时,获取模块1601,用于获取第一照片和拍摄所述第一照片时录音的第一音频;处理模块1602,用于询问用户是否播放所述第一音频;以及在所述获取模块1601接收到用户发送的播放指令时,播放所述第一音频同时显示所述第一照片。
进一步地,获取模块1601,还用于在预设字段中查找是否包含音频标识信息;如果是,则根据所述预设字段中的音频标识信息确定所述第一音频。
其中,所述音频标识信息包括:音频标识长度和音频标识头部信息。所述处理模块1602,还用于根据得到所述音频标识长度和所述音频标识头部信息确定第一照片所对应的时间戳;根据所述第一照片所对应的时间戳确定所述第一音频,其中,所述第一音频的时间戳与所述第一照片对应的时间戳相同。
本申请实施例还提供了一种终端设备,该终端设备的结构可参见前述图2所示的结构。在终端设备中,图16所示的获取模块1601的功能可通过摄像头180、音频模块140、传感器模块130中的一种或多种实现,所述处理模块1602的功能可通过处理器110和/或存储器120来实现。
此外,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的照片文件方法、照片显示方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体ROM或随机存储记忆体RAM等。
在上述实施例中,可以全部或部分通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机加载和执行所述计算机程序时,全部或部分地产生按照本申请上述各个实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。
所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网络设备、计算机、服务器或数据中心通过有线或无线方式向另一个设备、计算机或服务器进行传输。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于一种媒体流发送装置的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
此外,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。

Claims (11)

1.一种带有音频标识的照片文件生成方法,其特征在于,所述方法包括:
获取用户拍摄的第一照片和拍摄所述第一照片时录音的第一音频;
获取所述第一音频对应的总帧数,根据所述总帧数获取所述第一音频所对应的至少两个音频采样数据,每个所述音频采样数据为按照一个采样周期为单位采集的音频数据;根据所述至少两个音频采样数据生成N个音频片段;N为正整数且N≥2;其中,所述第一音频包括录制所述第一音频的起始时刻以及自所述起始时刻起每个采样周期对应的时刻,每个所述音频采样数据是按照一个采样周期的起始时刻和终止时刻对所述第一音频进行分割得到的;在所述N个音频片段中确定M个音频片段,1≤M≤N;
根据所述M个音频片段生成M个音频标识,所述M个音频片段与所述M个音频标识一一对应,其中每个所述音频标识通过预设字段承载,所述预设字段中承载每个音频标识的音频标识信息,所述音频标识信息包括:音频标识长度、音频标识头部信息;
结合所述第一照片和所述M个音频标识,生成第一照片文件,所述第一照片文件用于在显示第一照片时响应于用户的播放指令播放所述N个音频片段的至少一个。
2.根据权利要求1所述的方法,其特征在于,根据所述M个音频片段生成M个音频标识,包括:
调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识。
3.根据权利要求2所述的方法,其特征在于,所述调用目标函数执行音频标识的动作,将所述M个音频片段生成M个音频标识,包括:
根据拍摄的所述第一照片的时间戳和音频标识算法,生成与所述M个音频片段对应的所述M个音频标识;每个所述音频标识包括一个时间戳,所述每个音频标识的时间戳与所述第一照片的时间戳一致。
4.根据权利要求1-3任一项所述的方法,其特征在于,在所述N个音频片段中确定M个音频片段,包括:
调用音频接口播放所述第一音频;
接收用户根据播放的所述第一音频反馈的第一指令,所述第一指令用于指示在所述N个音频片段中选择的M个音频片段;
根据所述第一指令确定所述M个音频片段。
5.根据权利要求4所述的方法,其特征在于,所述第一照片文件包括:所述第一照片和一个或多个音频标识。
6.根据权利要求4所述的方法,其特征在于,所述获取拍摄所述第一照片时录音的第一音频,包括:
在终端设备的拍摄界面上显示“有声”按钮;
接收用户在所述拍摄界面上点击所述“有声”按钮的操作;
响应于所述用户的点击操作,启动录音功能,获取录音起始时刻;
接收用户的拍照操作,根据所述拍照操作确定录音终止时刻;
在所述录音起始时刻和所述录音终止时刻之间的时间段内录音得到所述第一音频。
7.根据权利要求6所述的方法,其特征在于,所述录音终止时刻为,接收的用户按下快门的时刻,或者,用户按下快门后经过预设时间间隔后的时刻。
8.根据权利要求4所述的方法,其特征在于,所述方法还包括:
存储所述第一照片文件,其中所述第一照片文件以aupic格式存储。
9.一种照片显示方法,其特征在于,所述方法包括:
显示第一照片文件,所述第一照片文件是根据权利要求1-8任一项所述的方法生成的;
从所述第一照片文件中获取第一照片;
根据预设字段中的音频标识信息确定第一音频,所述第一音频为拍摄所述第一照片时录音的音频,所述音频标识信息包括:音频标识长度和音频标识头部信息;
询问用户是否播放所述第一音频;
在接收用户发送的播放指令时,播放所述第一音频同时显示所述第一照片;
其中,根据所述预设字段中的音频标识信息确定所述第一音频,包括:
根据所述音频标识长度和所述音频标识头部信息确定第一照片所对应的时间戳;
根据所述第一照片所对应的时间戳确定所述第一音频,所述第一音频的时间戳与所述第一照片对应的时间戳相同。
10.一种终端设备,其特征在于,包括存储器和至少一个处理器,其中,
所述存储器中存储一个或多个计算机程序;
当所述至少一个处理器执行所述一个或多个计算机程序时,使得所述终端设备实现如权利要求1至9任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储器和至少一个处理器,其中,
所述存储器中存储有计算机程序指令,
当所述至少一个处理器运行所述计算机程序指令时,实现如权利要求1至9中任一项所述的方法。
CN202110872635.0A 2021-07-30 2021-07-30 一种带有音频标识的照片文件生成方法、照片显示方法和设备 Active CN113747098B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110872635.0A CN113747098B (zh) 2021-07-30 2021-07-30 一种带有音频标识的照片文件生成方法、照片显示方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110872635.0A CN113747098B (zh) 2021-07-30 2021-07-30 一种带有音频标识的照片文件生成方法、照片显示方法和设备

Publications (2)

Publication Number Publication Date
CN113747098A CN113747098A (zh) 2021-12-03
CN113747098B true CN113747098B (zh) 2023-04-07

Family

ID=78729569

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110872635.0A Active CN113747098B (zh) 2021-07-30 2021-07-30 一种带有音频标识的照片文件生成方法、照片显示方法和设备

Country Status (1)

Country Link
CN (1) CN113747098B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030174218A1 (en) * 2002-03-14 2003-09-18 Battles Amy E. System for capturing audio segments in a digital camera
CN101547360B (zh) * 2009-05-08 2010-11-10 南京师范大学 可定位视频文件格式及该格式文件数据的采集方法
KR20140114238A (ko) * 2013-03-18 2014-09-26 삼성전자주식회사 오디오와 결합된 이미지 표시 방법
CN104683677B (zh) * 2013-11-26 2019-06-18 深圳富泰宏精密工业有限公司 为照片增加语音描述的系统及方法
CN104580888B (zh) * 2014-12-17 2018-09-04 广东欧珀移动通信有限公司 一种图像处理方法及终端
CN108769786B (zh) * 2018-05-25 2020-12-29 网宿科技股份有限公司 一种合成音视频数据流的方法和装置
CN110866141A (zh) * 2018-08-28 2020-03-06 杭州网易云音乐科技有限公司 音频文件的处理方法、介质、装置和计算设备
CN111914103A (zh) * 2020-04-24 2020-11-10 南京航空航天大学 一种会议记录方法、计算机可读存储介质及装置

Also Published As

Publication number Publication date
CN113747098A (zh) 2021-12-03

Similar Documents

Publication Publication Date Title
WO2020238356A1 (zh) 界面显示方法、装置、终端及存储介质
WO2020078299A1 (zh) 一种处理视频文件的方法及电子设备
CN112783379B (zh) 一种选择图片的方法和电子设备
CN114461111B (zh) 启动功能的方法及电子设备
WO2020119455A1 (zh) 视频播放过程实现单词或语句复读的方法及电子设备
WO2021258814A1 (zh) 视频合成方法、装置、电子设备及存储介质
CN109819306B (zh) 一种媒体文件裁剪的方法、电子设备和服务器
CN112214636A (zh) 音频文件的推荐方法、装置、电子设备以及可读存储介质
KR20170054868A (ko) 콘텐트를 제공하는 방법 및 이를 지원하는 전자 장치
CN114827342B (zh) 视频处理方法、电子设备及可读介质
WO2021159746A1 (zh) 文件共享方法、系统及相关设备
CN112529645A (zh) 一种图片的布局方法及电子设备
CN114637890A (zh) 在图像画面中显示标签的方法、终端设备及存储介质
CN115237316A (zh) 一种音轨标记方法及电子设备
CN113704529B (zh) 一种带有音频标识的照片分类方法、查找方法和装置
CN113747098B (zh) 一种带有音频标识的照片文件生成方法、照片显示方法和设备
CN115098449B (zh) 一种文件清理方法及电子设备
CN113448658A (zh) 截屏处理的方法、图形用户接口及终端
WO2022166435A1 (zh) 分享图片的方法和电子设备
US20240098045A1 (en) Chat interaction method, electronic device, and server
US20230385345A1 (en) Content recommendation method, electronic device, and server
CN115730091A (zh) 批注展示方法、装置、终端设备及可读存储介质
EP4336357A1 (en) Message processing method and related apparatus
CN116668763B (zh) 录屏方法及装置
CN115359156B (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