CN110603805A - 呼叫者预览数据和基于呼叫者预览数据的呼叫消息 - Google Patents

呼叫者预览数据和基于呼叫者预览数据的呼叫消息 Download PDF

Info

Publication number
CN110603805A
CN110603805A CN201780079898.8A CN201780079898A CN110603805A CN 110603805 A CN110603805 A CN 110603805A CN 201780079898 A CN201780079898 A CN 201780079898A CN 110603805 A CN110603805 A CN 110603805A
Authority
CN
China
Prior art keywords
caller
data
preview data
recipient
caller preview
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.)
Granted
Application number
CN201780079898.8A
Other languages
English (en)
Other versions
CN110603805B (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.)
Google LLC
Original Assignee
Google LLC
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
Priority claimed from US15/466,806 external-priority patent/US9832308B1/en
Application filed by Google LLC filed Critical Google LLC
Publication of CN110603805A publication Critical patent/CN110603805A/zh
Application granted granted Critical
Publication of CN110603805B publication Critical patent/CN110603805B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42025Calling or Called party identification service
    • H04M3/42034Calling party identification service
    • H04M3/42042Notifying the called party of information on the calling party
    • H04M3/42051Notifying the called party of information on the calling party where the notification is included in the ringing tone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/23Reliability checks, e.g. acknowledgments or fault reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1089In-session procedures by adding media; by removing media
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1096Supplementary features, e.g. call forwarding or call holding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • H04L65/4015Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/02Calling substations, e.g. by ringing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/10Multimedia information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/53Centralised arrangements for recording incoming messages, i.e. mailbox systems
    • H04M3/5307Centralised arrangements for recording incoming messages, i.e. mailbox systems for recording messages comprising any combination of audio and non-audio components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/53Centralised arrangements for recording incoming messages, i.e. mailbox systems
    • H04M3/533Voice mail systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请的实施方式涉及呼叫者预览数据和基于呼叫者预览数据的呼叫消息。在一些实施方式中,一种方法包括呼叫者设备向一个或多个受话者设备发送呼叫请求,并且在接收到所述至少一个受话者设备对所述呼叫请求的接受之前,建立与至少一个受话者设备的连接。至少一部分呼叫者预览数据在收到呼叫接受之前传输到受话者设备。响应于确定在未接收到所述呼叫请求的所述接受的情况下、所述呼叫者预览数据的所述至少一部分通过所述连接传输了特定时间段,则传输信息以指令将呼叫消息存储在受话者设备上,其中呼叫消息包括呼叫者预览数据的至少一部分。

Description

呼叫者预览数据和基于呼叫者预览数据的呼叫消息
相关申请的交叉引用
本申请要求于2017年3月22日提交的名称为“呼叫者预览数据和基于呼叫者预览数据的呼叫消息”的美国专利申请No.15/466,806的优先权,其全部内容通过引用合并于此。
背景技术
数字设备的普及和便利以及互联网通信的广泛使用已使数字图像和视频变得无处不在。数字设备的用户参与许多不同形式的通信,包括文本聊天、电子邮件、语音呼叫和视频呼叫。例如,可以在设备之间建立视频呼叫,以向呼叫的参与者提供音频通信以及描绘参与者的视频图像。
本文提供的背景描述是为了总体上呈现本公开的背景。目前所述发明人的工作,直到在本背景技术部分中描述的程度,以及在提交时可能不具有现有技术资格的描述的各方面,既不明确也不暗示地被认为是针对本公开的现有技术。
发明内容
本实施例涉及呼叫者预览数据和基于呼叫者预览数据的呼叫消息。在一些实施方式中,一种方法包括呼叫者设备向一个或多个受话者设备发送呼叫请求,并且在接收到所述至少一个受话者设备对所述呼叫请求的接受之前,建立与所述一个或多个受话者设备中的至少一个受话者设备的连接。在收到所述呼叫请求的接受之前,通过所述连接向所述至少一个受话者设备传输呼叫者预览数据的至少一部分。响应于确定在未接收到所述呼叫请求的所述接受的情况下、所述呼叫者预览数据的所述至少一部分通过所述连接传输了特定时间段,该方法向所述至少一个受话者设备传输呼叫消息和指令将呼叫消息存储在所述至少一个受话者设备上的信息中的至少一个,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分内容。
描述了各种实施方式和该方法的示例。例如,在各种不同的实施方式中,所述呼叫者预览数据包括不包括音频数据的视频数据;不包括视频数据的音频数据;和视频数据和音频数据两者。在一些示例中,所述呼叫者预览数据包括呼叫者预览视频,并且所述呼叫消息包括所述呼叫者预览视频的多个帧。例如,所述呼叫者预览数据可以是由与所述呼叫者设备通信的摄像机捕获的帧所创建的实时视频。在一些实施方式中,所述呼叫消息包括文本消息,该文本消息包括与所述呼叫者预览数据中包括的音频数据相关联的文本。
在一些实施方式中,该方法还包括将所述呼叫者预览数据存储在所述呼叫者设备的存储器中,其中向所述至少一个受话者设备传输所述信息包括通过连接向所述至少一个受话者设备传输所述呼叫消息。例如,在一些实施方式中,所述呼叫消息中包括的所述呼叫者预览数据的至少一部分可以是与传输的所述呼叫者预览数据的至少一部分中的音频数据和视频数据不同分辨率的音频数据和视频数据中的至少一个。在一些实施方式中,向所述至少一个受话者设备传输所述信息包括通过所述连接向所述至少一个受话者设备传输命令,其中所述命令指令所述至少一个受话者设备将所述传输的所述呼叫者预览数据的至少一部分存储为所述呼叫消息。例如,在一些实施方式中,该方法还包括向所述至少一个受话者设备传输所述呼叫者预览数据的附加部分,其中所述命令指令所述至少一个受话者设备将所述附加部分与所述传输的所述呼叫者预览数据的至少一部分相结合作为所述呼叫消息。
在一些实施方式中,该方法可以进一步包括使与所述呼叫者设备通信的一个或多个摄像机捕获所述呼叫者预览数据;和在所述呼叫者设备上提供自动建议,请求用户输入,所述用户输入指示是否将所述呼叫者预览数据作为所述呼叫消息提供,其中响应于确定所述呼叫者预览数据的一个或多个部分中包括一个或多个特定内容特征而提供自动建议,和/或确定所述呼叫者设备的呼叫者与所述至少一个受话者设备的至少一个受话者之间存在特定的社交关系。在一些实施方式中,该方法还可以包括从所述呼叫者设备的摄像机获取所述呼叫者预览数据,所述摄像机捕获所述呼叫者预览数据;和使得所述呼叫者设备输出所述呼叫者预览数据存储在所述呼叫者设备上的指示,其中所述呼叫者预览数据的至少一部分可用作所述呼叫消息。
该方法可以进一步包括,响应于确定在未收到所述呼叫请求的接受的情况下、所述呼叫者预览数据已经通过所述连接传输了特定时间段,使得所述呼叫者设备显示多个选项。其中所述多个选项包括:使用所述呼叫者预览数据的至少一部分作为所述呼叫消息的第一选项,其中响应于收到选择所述第一选项的第一输入,执行向所述至少一个受话者设备传输所述信息;选项可以包括拒绝包括所述呼叫消息中的所述呼叫者预览数据的至少一部分的第二选项,其中响应于收到选择所述第二选项的第二输入,使所述呼叫者设备确定新的呼叫消息。在一些示例中,通过所述呼叫者设备使所述多个选项的显示包括使所述呼叫者设备显示用户界面,所述呼叫者设备包括一个或多个控件,所述一个或多个控件接收来自所述用户的第三输入,并被配置为使在传输所述信息之前,使所述呼叫者设备输出所述呼叫者预览数据的一个或多个部分。
在一些实施方式中,该方法还包括:从所述呼叫者设备的呼叫者接收编辑输入,并基于编辑输入编辑所述呼叫者预览数据,以生成编辑的呼叫者预览数据,其中,编辑后的呼叫者预览数据作为所述呼叫消息被传输到所述受话者设备。例如,所述呼叫者预览数据可以包括顺序数据,并且接收编辑输入可以包括接收以下一个或多个选择:所述呼叫者预览数据的起始点,使得所述起始点之前的部分顺序数据被排除在所述呼叫者预览数据之外,和/或所述呼叫者预览视频的结束点,使得所述结束点之后的部分顺序数据被排除在所述呼叫者预览数据之外。该方法可以进一步包括自动验证在所述呼叫者预览数据的一个或多个帧中的像素中描绘了一个或多个视觉特征,其中响应于验证所述一个或多个视觉特征被描绘,使所述呼叫消息存储在所述至少一个受话者设备上。该方法还可以包括自动确定所述呼叫者预览数据中描绘的一个或多个内容特征,并自动修改所述呼叫者预览数据以生成修改的呼叫者预览数据,其中所述修改的呼叫者预览数据排除包含所述一个或多个内容特征的所述呼叫者预览数据的一个或多个帧,其中所述修改的呼叫者预览数据被包括在向所述至少一个受话者设备传输的所述信息中。在一些实施方式中,该方法还包括检测与所述呼叫者预览数据相关联的音频数据中的语音,获得对应于该语音的一个或多个文本字幕,其中每个文本字幕对应于该语音的一部分,并使得特定的文本字幕被插入到所述呼叫者预览数据的相应帧中,其与对应于特定文本字幕的语音的部分相关联。在一些实施方式中,所述呼叫者预览数据包括呼叫者预览视频的多个帧,并且传输信息包括选择多个帧的若干个帧进行传输,其中所述所述呼叫者预览数据的若干个帧的数量少于多个帧的数量,并将这若干个帧作为所述呼叫消息发送到所述至少一个受话者设备。
在一些实施方式中,一种设备包括存储设备和至少一个被配置为访问存储设备的处理器。处理器被配置为执行操作,操作包括呼叫者设备向一个或多个受话者设备发送呼叫请求,并在接收到所述至少一个受话者设备对所述呼叫请求的接受之前,建立与所述一个或多个受话者设备中的至少一个受话者设备的连接。操作包括通过所述连接,向所述至少一个受话者设备传输呼叫者预览数据的至少一部分,其中在接收到所述呼叫请求的所述接受之前,传输所述呼叫者预览数据的所述至少一部分。该操作包括,响应于确定在未接收到所述呼叫请求的所述接受的情况下、所述呼叫者预览数据的所述至少一部分通过所述连接传输了特定时间段,向所述至少一个受话者设备传输呼叫消息和信息中的至少一个,所述信息指令将呼叫消息存储在所述至少一个受话者设备上,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。在一些实施方式中,所述操作包括存储由所述呼叫者设备捕获的所述呼叫者预览数据的至少一部分,其中所述呼叫者预览数据包括视频数据和音频数据中的至少一个。
在一些实施方式中,一种方法包括由受话者设备接收来自呼叫者设备的呼叫请求,在所述受话者设备发送呼叫请求的接受之前建立与所述呼叫者设备的连接。通过所述连接,在所述受话者设备处接收呼叫者预览数据,其中在所述受话者设备发送所述呼叫请求的所述接受之前,接收所述呼叫者预览数据的所述至少一部分,使所述受话者设备输出所述呼叫者预览数据,并且,响应于在没有发送所述呼叫请求的所述接受的情况下、所述呼叫者预览数据通过所述连接被接收了特定时间段,使呼叫消息存储在所述受话者设备的存储器中,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。描述了各种实施方式和方法的实例。例如,在一些实施方式中,该方法还包括使得在所述受话者设备处显示与所述呼叫者预览数据相关联的音频输出选项,其中所述音频输出选项响应于用户选择,以使得与所述呼叫者预览数据相关联的音频数据由所述受话者设备输出。响应于在没有发送所述呼叫请求的所述接受的情况下、所述呼叫者预览数据通过所述连接被接收了特定时间段,从所述呼叫者设备接收所述呼叫消息。在一些实施方式中,使得所述受话者设备输出所述呼叫者预览数据包括,使所述受话者设备基于所述呼叫者预览数据输出音频,代替所述受话者设备可以访问的铃声数据引起的铃声音频输出。
在一些实施方式中,一种设备包括存储设备和至少一个被配置为访问存储设备的处理器。处理器被配置为执行操作,操作包括由受话者设备接收来自呼叫者设备的呼叫请求,在由所述受话者设备发送呼叫请求的接受之前建立与所述呼叫者设备的连接。通过所述连接在所述受话者设备处接收呼叫者预览数据,其中在所述受话者设备发送所述呼叫请求的接受之前,接收所述呼叫者预览数据的至少一部分,使所述受话者设备输出所述呼叫者预览数据,和,响应于在没有发送所述呼叫请求的所述接受的情况下、所述呼叫者预览数据通过所述连接被接收了特定时间段,使呼叫消息存储在所述受话者设备的存储器中,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。
附图说明
图1是可用于本文所述的一个或多个实施方式的示例网络环境的框图;
图2A和2B是示出根据一些实施方式的呼叫者设备和受话者设备之间的通信的图;
图3是示出根据一些实施方式的用于呼叫者设备的示例方法的流程图;
图4是示出根据一些实施方式的用于受话者设备的示例方法的流程图;
图5A-5F是示出根据一些实施方式的示出本文描述的一个或多个特征的用户界面的示例表示的示意图。
图6是示出根据一些实施方式的用于呼叫者设备的另一示例方法的流程图;
图7是示出根据一些实施方式的用于受话者设备的另一示例方法的流程图;
图8A-8E是根据一些实施方式的用户界面的示例表示的示意图,该用户界面示出了本文针对呼叫者描述的一个或多个呼叫消息特征。
图9A-9D是根据一些实施方式的用户界面的示例表示的示意图,该用户界面示出了本文针对受话者描述的一个或多个呼叫消息特征;和
图10是可用于本文所述的一个或多个实施方式的示例设备的框图。
具体实施方式
本文描述的一个或多个实施方式涉及提供呼叫的呼叫者预览数据并基于呼叫者预览数据提供呼叫消息。在一些实施方式中,呼叫者设备(caller device)向受话者设备(callee device)发送呼叫请求。在与受话者设备建立连接之后(在受话者设备接受呼叫之前),在从受话者设备接收到对呼叫请求的接受之前,通过与受话者设备的连接,呼叫者设备发送呼叫者预览数据的至少一部分,例如呼叫者预览视频数据和/或呼叫者预览音频数据。在一些示例中,呼叫者预览数据可以是由呼叫者设备的摄像机记录的实时视频、由麦克风捕获的实时音频、存储的视频或音频段等。受话者设备可以在受话者接受呼叫之前输出呼叫者预览数据,例如,作为给呼叫受话者的人的自动预览。如果呼叫者预览数据的至少一部分已经通过连接发送并且尚未接收到对呼叫请求的接受,例如,自呼叫请求以来的特定时间段,则已经发生呼叫请求的超时。在一些实施方式中,超时使呼叫消息存储在至少一个受话者设备上,其中呼叫消息包括呼叫者预览数据的至少一部分。其他条件可以使呼叫消息被存储在至少一个受话者设备上。
在一些实施方式中,呼叫者设备可以存储呼叫者预览数据的数据,例如,呼叫者预览视频的帧,并且在超时之后,可以终止与受话者设备的呼叫请求。通过受话者设备存储的连接将呼叫消息发送到受话者设备。在呼叫者设备中,呼叫者设备可以代替发送呼叫消息,向受话者设备发送命令,该命令指示受话者设备存储至少一部分先前发送的呼叫者预览数据。作为呼叫消息,可以在以后被受话者访问。在更进一步的实施方式中,呼叫者设备可以将呼叫者预览数据的附加(尚未发送的)部分(例如,剩余部分)发送到受话者设备,并指示受话者设备将附加部分与呼叫者预览数据的先前发送的部分组合,以形成由受话者设备存储的呼叫消息。在各种实施方式中,呼叫消息可以是视频消息并且可以包括呼叫者预览数据的帧(例如,呼叫消息可以具有呼叫者预览数据的所选帧,并且包括比整个呼叫者预览更少的帧),或者可以是整个呼叫者预览数据。在一些实施方式中,呼叫消息可以是音频消息或其他类型的消息。在一些实施方式中,与呼叫者预览视频相关联的音频数据不由呼叫者设备发送或被禁用,直到受话者接受呼叫请求。
在各种实施方式中,呼叫者设备可以在发送编辑的预览数据之前在呼叫消息中编辑或处理呼叫者预览数据。例如,呼叫者设备可以对呼叫者预览数据的至少一部分进行编码或压缩以形成呼叫消息,其中编码使呼叫消息与发送给至少一个受话者设备的呼叫者预览视频不同。在一些示例中,可以在呼叫者设备上提供一个或多个用户可选选项的显示,例如,在发送呼叫消息之前。选项可以包括使用呼叫者预览数据(例如,整个预览视频或音频段)作为呼叫消息的第一选项,和/或拒绝使用呼叫者预览数据作为呼叫消息的第二选项,并且由呼叫者设备发起确定(例如,选择和/或捕获)新的呼叫消息。在一些实施方式中,可以在呼叫者设备上输出自动建议,该呼叫者设备请求用户输入,该用户输入指示呼叫者预览数据是否将被提供为呼叫消息。例如,可以响应于呼叫者设备确定特定视觉内容被包括在呼叫者预览数据中(例如,基于用户同意的特定人或对象类型,可访问的呼叫者和/或受话者偏好),呼叫者和受话者之间存在特定的社会关系(通过用户同意确定的,可访问的数据库或联系人列表数据)等,提供自动建议。呼叫者设备可以提供包括一个或者更多控件的用户界面的显示,接受来自呼叫者的输入,并且被配置为在呼叫消息中使用呼叫者预览数据之前播放(例如,查看)呼叫者预览数据。在一些实施方式中,呼叫者预览数据可以在被发送之前在呼叫消息中被编辑,例如,以删除、添加或改变呼叫者预览数据的所选部分。例如,编辑用户界面可以包括接受的用户输入的一个或多个编辑控件,被配置为使得用户能够编辑呼叫者预览视频,使得编辑的呼叫者预览视频可以在呼叫消息中或者作为呼叫消息被发送到受话者设备。
在一些实施方式中,系统(例如,呼叫者设备或其他系统)可以对呼叫者预览数据执行自动确定和/或修改以形成呼叫消息。例如,系统可以验证一个或多个特定内容特征以使一个或多个特定内容特征存在于呼叫者预览数据中,以使呼叫消息能够存储在受话者设备上,例如视觉内容和/或音频内容。在一些实施方式中,呼叫者预览数据中的一个或多个内容特征可以被自动确定,例如由呼叫者设备或其他连接的系统确定,并且呼叫者预览数据可以基于确定的特征被自动修改。例如,呼叫者预览视频中描绘的视觉特征可以被自动检测,并且呼叫者预览视频可以被系统自动修改以从呼叫者预览视频中移除一个或多个不描绘一个或多个视觉特征的帧,和/或移除描绘特定视觉特征或特定类型的视觉特征的一个或多个帧。类似地,可以在呼叫者预览音频数据中自动检测音频特征,并且可以自动修改音频数据,例如,从呼叫者音频数据中去除包括或不包括特定音频特征或特定类型的音频特征的部分。一些实施方式可以检测与呼叫者预览视频相关联的音频数据中的语音,获得与语音相对应的文本字幕,并且将特定文本字幕插入到与对应于文本字幕的语音相关联的呼叫者预览数据的相应部分中。一些实施方式可以确定呼叫者情境,包括参考至少一个受话者的一个或多个偏好,并且基于所确定的呼叫者情境,选择多个数据段中的一个数据段作为呼叫者预览数据,在某些情况下,呼叫消息可以基于该呼叫者预览数据。
类似地,受话者设备可以从呼叫者设备接收呼叫请求,在发送呼叫请求的接受之前建立与呼叫者设备的连接,通过连接在受话者设备处接收呼叫者预览数据,引起受话者设备输出呼叫者预览数据,并且,响应于在没有发送呼叫请求的接受的情况下、通过连接接收呼叫者预览数据特定时间段,使呼叫消息存储在受话者设备的存储器中,其中呼叫消息包括呼叫者预览数据的至少一部分。在一些实施方式中,可以在受话者设备处显示音频输出选项,以允许用户输入以使受话者设备能够输出与所接收的呼叫者预览数据相关联的音频数据。通过受话者设备的呼叫者预览数据的输出可以包括响应于呼叫请求而播放呼叫者预览音频数据来代替典型地受话者设备输出的铃声音频数据。
本文描述的一个或多个特征允许呼叫者预览数据(例如呼叫者预览视频和/或音频段)被自动(无需用户干预)确定并发送到受话者设备,例如,以为受话者提供呼叫者的预览。在一些实施方式中,如果受话者不接受呼叫,则呼叫者预览数据可以用作呼叫消息的基础,该呼叫消息被发送到受话者设备并由受话者设备存储,以供以后访问受话者。这允许呼叫消息被发送到受话者,而呼叫者不必记录新的呼叫消息。例如,如果呼叫者记录了一个实时视频作为预览呼叫者预览视频发送给受话者,则呼叫者不必创建另一个类似的记录作为呼叫消息,而是可以选择使用已经记录的呼叫者预览视频作为呼叫消息的至少一部分。所描述的特征还包括向呼叫者提供选项以将呼叫者预览数据作为呼叫消息发送或记录新的呼叫消息,以及在呼叫者预览数据发送到受话者之前在呼叫消息中的编辑呼叫者预览数据的选项,从而允许呼叫者控制提供给受话者的消息。各种特征还可以使呼叫者能够使用呼叫者预览数据与新记录结合作为呼叫消息,以及本文描述的其他特征。
所描述的特征可以在受话者接受呼叫之前提供呼叫者预览数据的自动选择和传输,和/或选择和传递用于呼叫消息的呼叫者预览数据给没有接受呼叫的受话者设备。可以选择相关且感兴趣的呼叫者预览数据,并将其传输给受话者而无需呼叫者干预,并允许受话者更一致和可靠地确定是否接受呼叫。所描述的特征可以允许设备向受话者提供预览呼叫者数据,而不使用呼叫用户的时间和设备处理资源来手动指定适当的呼叫者数据并指定各种呼叫选项(过滤等)。所描述的特征可以允许设备重新使用先前传输的预览视频和/或音频数据来提供呼叫消息,而无需使用时间和设备处理资源来记录新的呼叫消息。例如,可以提供呼叫消息,而呼叫者不必重复许多已经记录在先前发送的呼叫者预览数据中的相同动作或语音。例如,呼叫者预览数据可能适用于呼叫消息,因为呼叫者已经为受话者设备发送并有效地批准了该数据。因此,一个或多个所描述的实施方式的技术效果是呼叫者预览数据的选择和传输在为了获得结果的计算时间和消耗的资源方面减少。一个或多个所描述的实施方式的另一技术效果是呼叫消息的捕获、存储和传输在为了获得结果的计算时间和消耗的资源方面减少。例如,所描述的特征的技术效果是减少显示和选择与呼叫者预览数据和呼叫消息相关的选项所需的系统处理资源的消耗问题,否则系统可以使用该选项来提供手动选项,用于创建、存储和/或传递呼叫者预览数据和呼叫消息。在一些实施方式中,呼叫消息由于先前已经在预览数据中发送了至少一些消息数据而具有减少的带宽和其他数据传递需求。此外,所描述的特征的技术效果是减少受话者设备在接受呼叫时所需的系统处理资源的消耗问题,如果首先呈现相关的预览呼叫者数据则呼叫不会被接受。此外,所描述的特征的技术效果是通过使呼叫者设备能够容易地输出呼叫消息而不是接受和参与不期望的呼叫来减少受话者设备所需的系统处理资源的消耗问题。
在这里讨论的某些实施方式可以收集或使用关于用户的个人信息的情况下(例如,用户数据、关于用户的社交网络的信息、用户的位置和在该位置时间、用户的生物信息、用户的活动和人口统计信息),向用户提供一个或多个机会来控制是否收集信息,是否存储个人信息,是否使用个人信息,以及如何收集、存储和使用关于用户的信息。也就是说,这里讨论的系统和方法仅在接收到相关用户的明确授权时才收集、存储和/或使用用户个人信息。例如,向用户提供对程序或特征是否收集关于该特定用户或与该程序或特征相关的其他用户的用户信息的控制。要为其收集个人信息的每个用户被呈现一个或多个选项以允许控制与该用户相关的信息收集,以提供关于是否收集信息以及关于信息的哪些部分被收集的许可或授权。例如,可以通过通信网络向用户提供一个或多个这样的控制选项。另外,某些数据可以在存储或使用之前以一种或多种方式处理,以便移除个人可识别信息。作为一个示例,可以处理用户的身份,以便不能确定个人可识别信息。作为另一示例,用户的地理位置可以被推广到更大的区域,使得不能确定用户的特定位置。
图1示出了示例网络环境100的框图,其可以在本文描述的一些实施方式中使用。在一些实施方式中,网络环境100包括一个或多个服务器系统,例如,图1的示例中的服务器系统102。例如,服务器系统102可以与网络130通信。服务器系统102可以包括服务器设备104和数据库106或其他存储设备。网络环境100还可以包括一个或多个客户端设备,例如客户端设备120,122,124和126,它们可以经由网络130彼此通信和/或与服务器系统102通信。网络130可以是任何类型的通信网络,包括因特网、局域网(LAN)、无线网络、交换机或集线器连接等中的一个或多个。在一些实施方式中,网络130可以包括设备之间的对等通信132,例如,使用对等无线协议。
为了便于说明,图1对于服务器系统102、服务器设备104和数据库106示出了一个块,并且对于客户端设备120,122,124和126示出了四个块。服务器块102,104和106可以表示多个系统、服务器设备和网络数据库,并且可以以不同于所示的配置来提供块。例如,服务器系统102可以表示可以经由网络130与其他服务器系统通信的多个服务器系统。在一些示例中,数据库106和/或其他存储设备可以被设置在与服务器设备104分离的服务器系统块中、并且可以通过网络130与服务器设备104和其他服务器系统通信。此外,可以有任何数量的客户端设备。每个客户端设备可以是任何类型的电子设备,例如台式计算机、膝上型计算机、便携式或移动设备、手机、智能电话、平板电脑、电视、电视机顶盒或娱乐设备、可穿戴设备(例如,显示器)眼镜或护目镜、手表、耳机、臂章、珠宝等)、个人数字助理(PDA)、媒体播放器、游戏设备等。一些客户端设备还可以具有类似于数据库106或其他存储的本地数据库。在其他实施方式中,网络情境100可以不具有所示的所有组件,和/或可以具有包括其他类型的元件的其他元件来代替或补充本文描述的那些元件。
在各种实施方式中,终端用户U1,U2,U3和U4可以使用相应的客户端设备120,122,124和126与服务器系统102和/或彼此通信。在一些示例实施方式中,用户U1,U2,U3和U4可以通过在相应的客户端设备和/或服务器系统102上运行的应用来彼此交互。在一些实施方式中,可以经由网络服务(例如,在服务器系统102上实现的社交网络服务或其他类型的网络服务)进行交互。例如,相应的客户端设备120,122,124和126可以与一个或多个服务器系统(例如,系统102)进行数据通信。在一些实施方式中,服务器系统102可以向客户端设备提供适当的数据,使得每个客户端设备可以接收上传到服务器系统102和/或网络服务的传输内容或共享内容。在一些示例中,网络服务可以包括允许用户执行各种通信(例如,语音或其他音频呼叫、视频呼叫、聊天、消息传递等),形成链接和关联,上传和发布例如图像、视频、音频和其他类型的内容的共享内容,接收各种形式的数据,和/或执行与社交相关的功能的任何系统。例如,网络服务可以允许用户向特定或多个其他用户发送消息,以与网络服务内的其他用户关联的形式形成社交链接,将用户列表、朋友列表或其他用户组中的其他用户分组,发布或发送由网络服务的指定用户或用户组访问的包括文本、图像、视频序列、音频序列或记录或其他类型内容的内容,参与与服务的其他用户的实时视频、音频和/或文本聊天等。可以使用已知协议提供语音呼叫、视频呼叫和其他通信,已知协议例如是,会话发起协议(SIP)或其他VOIP协议、蜂窝电话网络、公共交换电话网络(PTSN)等,或特定应用的定制化协议。在一些实施方式中,“用户”可以包括一个或多个程序或虚拟实体,以及与系统或网络交接的人。
用户界面可以在客户端设备120,122,124和126上(或者可选地在服务器系统上102)显示图像、视频数据和其他内容以及通信、隐私设置、通知和其他数据。可以使用客户端设备上的软件、服务器设备上的软件和/或客户端软件以及在服务器设备104上执行的服务器软件(例如,与服务器系统102通信的应用软件或客户端软件)的组合来显示这样的界面。用户界面可以由客户端设备或服务器设备的显示设备显示,例如显示屏、投影仪等。在一些实施方式中,在服务器系统上运行的应用程序可以与客户端设备通信,以接收在客户端设备的用户输入,并在客户端设备输出诸如可视数据、音频数据等的数据。
在一些实施方式中,服务器系统102和/或一个或多个客户端设备120-126可以提供一个或多个通信应用。通信应用可以提供一个或多个通信功能。例如,这些功能可以包括,允许设备发起和接收与其他设备的呼叫,通过网络130与其他设备通信数据,例如,聊天、语音呼叫、视频呼叫等。通信应用可以输出相关数据,包括通信控制、联系人列表、联系人标识符、文本和视频等。通信应用可以提供创建呼叫消息并将呼叫消息发送到其他设备的特征,以及列出可以由用户访问的接收到的和存储的呼叫消息的特征。通信应用可以提供相关用户界面,在与服务器系统或客户端设备相关联的显示设备上显示该相关用户界面。用户界面可以为通信应用提供各种功能,允许用户选择和控制可用功能。
本文描述的特征的其他实施方式可以使用任何类型的系统和/或服务。例如,可以使用视频呼叫服务,照片收集服务或其他网络服务(例如,连接到因特网的)来代替或补充社交网络服务。任何类型的电子设备都可以利用这里描述的特征。一些实施方式可以在间歇地连接到计算机网络的客户端或服务器设备上提供这里描述的特征。在一些示例中,包括或连接到显示设备的客户端设备可以处理和显示存储在客户端设备本地的存储设备上的数据(例如,不通过通信网络连接),并且可以提供如本文所述的可供用户查看的特征和结果。
图2A是示出根据一些实施方式的使用本文描述的一个或多个特征的呼叫者设备和受话者设备之间的通信200的示意图。例如,呼叫者设备和受话者设备可以是如参考图1所述的客户端设备,和/或在一些实施方式中一个或两个设备可以是服务器设备。
呼叫者设备通过网络向一个或多个受话者设备传输用于呼叫(例如,语音呼叫或视频呼叫)的呼叫请求(202)。响应该请求,受话者设备向呼叫者设备发送确认(204)。在各种实施方式中,可以在没有明确的用户动作的情况下,例如,在受话者没有执行任何动作的情况下,发送确认。确认是在呼叫启动之前发送的,并不是对呼叫的接受。经由网络建立连接(206)。在各种实施方式中,连接的建立可以遵循协议,该协议包括呼叫者设备和发送确认的受话者设备之间的握手。此外,作为连接的建立的一部分,呼叫者设备和受话者设备可以协商连接参数,例如用于连接的媒体编码技术。例如,可以基于可用带宽、测得的延迟、呼叫者设备和受话者设备的处理能力等来选择媒体编码技术。在建立连接之后,可以将用于呼叫的呼叫者预览数据从呼叫者设备传输(208)到受话者设备。在该示例中,呼叫者预览数据是呼叫者预览视频。在各种实施方式中,呼叫者预览数据可以被过滤或不过滤,例如,呼叫者预览视频可以是过滤的视频或未过滤的视频。本文描述了可以在该阶段发送的呼叫者预览数据的各种示例。
当呼叫者预览数据传输正在通过连接进行时,受话者设备向呼叫者设备发送呼叫请求的接受(210),以发起呼叫者设备和受话者设备之间的呼叫。例如,受话者设备响应用户输入而发送接受。例如,接受可以是根据通信协议的信号或数据,其指示受话者已经接受呼叫,使得呼叫可以在呼叫者设备和受话者设备之间建立。此外,受话者设备可以通过连接发送受话者预览数据(例如,受话者视频和/或音频数据)(212)。呼叫开始并且仍然在进行(214),例如,直到受话者或呼叫者挂断,或者连接因某种原因而中断,例如,呼叫者设备和受话者设备中的一个或两个处的连接丢失。
图2B是示出根据一些实施方式的使用本文描述的包括呼叫消息的一个或多个特征的呼叫者设备和受话者设备之间的通信220的示意图。例如,呼叫者设备和受话者设备可以是如参考图1所述的客户端设备,和/或在一些实施方式中一个或两个设备可以是服务器设备。
呼叫者设备通过网络向一个或多个受话者设备传输用于呼叫(例如,语音呼叫或视频呼叫)的呼叫请求(222)。响应该请求,受话者设备向呼叫者设备发送确认(224)。在各种实施方式中,可以在没有明确的用户动作的情况下,例如,在受话者没有执行任何动作的情况下,发送确认。确认是在呼叫启动之前发送的,并且不是呼叫的接受(例如,接受可以是根据通信协议由受话者设备发送并由呼叫者设备接收的信号或数据,表示受话者设备已经接受呼叫,使得可以在呼叫者设备和受话者设备之间建立呼叫)。经由网络建立连接(226)。在各种实施方式中,连接的建立可以遵循协议,该协议包括呼叫者设备和发送确认的受话者设备之间的握手。此外,作为连接的建立的一部分,呼叫者设备和受话者设备可以协商连接参数,例如用于连接的媒体编码技术。例如,可以基于可用带宽、测得的延迟、呼叫者设备和受话者设备的处理能力等来选择媒体编码技术。在建立连接之后,可以将呼叫者预览数据从呼叫者设备传输到受话者设备(228)。在该示例中,呼叫者预览数据是呼叫者预览视频。在各种实施方式中,呼叫者预览数据可以被过滤或不过滤,例如,呼叫者预览视频可以是过滤的视频或未过滤的视频。本文描述了可以在该阶段发送的呼叫者预览数据的各种示例。
在等待受话者设备的接受的同时,发送呼叫者预览数据。如果已经过了特定时间量,则发生超时,并且可以终止呼叫请求(230)。然后呼叫者设备可以将呼叫消息发送到受话者设备(232),其中呼叫消息可以包括呼叫者预览数据的至少一部分,如本文描述的特征中那样。呼叫消息可以存储在受话者设备或其他可访问存储器中,并且可以由受话者访问。
图3是示出根据一些实施方式的呼叫者设备的示例方法300的流程图。例如,方法300中的一些或全部可以在诸如图1所示的一个或多个客户端设备120,122,124或126的系统上实施。在一些实施方式中,方法300可以是在如图1所示服务器系统102上实施,和/或在服务器系统和客户端系统两者上实施。在所描述的示例中,实施系统包括一个或多个处理器或处理电路,以及一个或多个存储设备。在一些实施方式中,一个或多个客户端和/或服务器的不同组件可以执行方法300的不同块或其他部分。
如本文所述的视频可包括多个数字图像(“帧”),每个图像由多个像素,例如,具有一个或多个像素值(例如,颜色值、亮度值等)的像素组成。视频可以是任何图像集合,例如,一列图像、随时间显示的一系列图像、动画、电影图等。如本文所述的图像或视频可以存储在实施系统的一个或多个存储设备上,或以其他方式可由系统访问的一个或多个存储设备上,例如连接的存储设备,例如本地存储设备和/或通过网络连接的存储设备。在各种实施方式中,图像和视频可以从各种来源获得。对于特定用户,图像和视频可以从由用户通过一个或多个网络从服务器上传或其他传输获得,从用户拥有或可访问的相簿或多个图像和视频的其他存储集合等获得。
在块302中,检查是否已经获得用户同意(例如,用户许可)以在方法300的实施中使用用户数据。例如,用户数据可以包括用户偏好、用户生物信息、用户特征(身份、姓名、年龄、性别、专业等)、关于用户的社交网络和联系人的信息、社交和其他类型的动作和活动、内容、评级和用户创建或提交的意见、用户的当前位置、历史用户数据等。在一些实施方式中,本文描述的方法的一个或更多块或更多块可以使用这样的用户数据。如果已经从可以在方法300中使用用户数据的相关用户获得用户同意,则在块304中,确定能够在使用用户数据的情况下,实现本文中的方法的块,如针对那些块所描述的那样,并且该方法继续到块310。如果尚未获得用户同意,则在块306中确定将在不使用用户数据的情况下实施块,并且该方法继续到块310。在一些实施方式中,如果尚未获得用户同意,则不执行方法300的其余部分。
在块310中,将呼叫请求从呼叫者设备发送到一个或多个受话者设备。在本说明书中,为了解释的目的,通常描述单个受话者,尽管也可以提供多个受话者。在各种实施方式中,呼叫者设备可以是能够进行呼叫(例如,视频呼叫)的任何设备。例如,呼叫者设备可以是移动电话、计算机、可穿戴设备等。在一些实施方式中,呼叫用户(例如,“呼叫者”)可以从地址簿中选择特定条目,该特定条目指定受话者用户(例如,“受话者”),并响应于该选择来发送呼叫请求。在一些实施方式中,呼叫者可以从呼出呼叫记录中选择指定受话者的特定条目,并且响应于该选择来传送呼叫请求。在一些实施方式中,例如,当受话者不在呼叫者的地址簿或呼出呼叫记录中时,受话者可以输入与受话者的标识符对应的文本,并且呼叫者设备可以根据识别的受话者来发送呼叫请求。
在各种实施方式中,呼叫者可以通过各种输入技术中的任何一种来选择受话者。在一些示例中,呼叫者可以输入与受话者的姓名、电话号码等相对应的文本,例如“艾比·C.”,“404-XXX-YYYY”等。在另一个示例中,呼叫者可以选择对应于受话者的条目,例如,作为在显示的用户界面中显示的、经由触摸屏、键盘、触控板、鼠标或其他指示设备选择的项目的条目等。在另一个示例中,呼叫者可以说出受话者的名字,例如,用命令;例如,“呼叫艾比”。在各种实施方式中,受话者的标识符可以存储在呼叫者的地址簿(例如,联系人列表)中的条目中或者在呼叫者的呼出呼叫记录中的条目中,例如,存储在呼叫者设备上和/或通过网络存储在服务器或其他设备的可用存储器上。在各种实施方式中,地址簿可以包括呼叫者已经存储的联系人的列表,或者已经例如基于将地址簿与在线服务或其他信息来源同步,为呼叫者自动保存的联系人的列表。在各种实施方式中,呼出呼叫记录可以包括例如使用特定呼叫者设备或与呼叫者相关联的任何设备,呼叫者先前已经呼叫过的标识符列表。
在各种实施方式中,标识符可以对应于唯一地识别受话者的信息。例如,标识符可以是受话者的电话号码。在另一示例中,标识符可以是受话者的电子邮件地址。在另一示例中,标识符可以是与网络服务上使用的受话者的网络账户相对应的网络服务标识符(例如,社交网络标识符)。在一些示例中,标识符可以是用于特定呼叫服务(例如,视频呼叫服务)的受话者的登录名、屏幕名、用户ID等。
在各种实施方式中,受话者可以利用一个或多个设备来进行呼叫,例如视频呼叫。例如,受话者可以使用能够进行这种通信的任何设备进行呼叫,任何设备例如是移动电话、计算机、可穿戴设备等。在各种实施方式中,受话者的标识符可以与一个或更多受话者设备相关联。例如,受话者的网络帐户可以与她的移动电话、计算机和可穿戴设备相关联,网络帐户例如是社交网络帐户或另一网络服务上的帐户。在另一个示例中,受话者的电话号码可以与她的移动电话相关联。在各种示例中,标识符可以与一个或多个受话者设备相关联。
在一些实施方式中,呼叫请求可以被发送到与标识符相关联的每个受话者设备。在一些实施方式中,呼叫请求可以被发送到与标识符相关联的受话者设备的子集。在一些实施方式中,呼叫请求可以被发送到单个受话者设备。
在块312中,从受话者设备接收确认。例如,可以从一个或多个受话者设备接收确认。在各种实施方式中,确认可以是非接受确认,其指示一个或多个受话者设备可通过网络到达,但不指示受话者已接受呼叫请求。在各种实施方式中,可以从受话者设备接收确认,而无需来自受话者的任何动作或输入。例如,受话者设备可以在呼叫的接受被受话者设备发送并由呼叫者设备接收之前自动将确认发送回呼叫者设备。
在块314中,在呼叫者设备和从其接收确认的受话者设备之间建立连接。例如,可以通过网络建立连接。在各种实施方式中,建立连接可以通过任何合适的协议来执行,例如会话发起协议(SIP)或其他协议。在一些实施方式中,可以自动选择媒体编码技术,例如,音频/视频编码技术可以被自动选择用于连接。例如,可以基于各种参数来选择媒体编码技术,包括但不限于连接带宽、延迟和分组丢失度量、呼叫者设备和受话者设备的处理器能力等。例如,媒体编码对于连接上较低带宽量的技术,可以将视频数据和/或音频数据压缩到比连接上存在更高带宽量的程度更大的程度。在一些实施方式中,可以建立连接,使得呼叫者设备可以将媒体(例如视频)发送到受话者设备,但受话者设备不能将媒体发送到呼叫者设备。在一些实施方式中,可以建立连接,使得呼叫者设备和受话者设备可以经由网络彼此传输媒体。
在块316中,在用户同意使用这样的数据的情况下,确定受话者标识符是否先前存储在与呼叫者(或呼叫者设备)相关联的呼叫相关存储中,例如,目前,呼叫者标识符是否存储在呼叫者的地址簿和呼叫者的呼出呼叫记录中的至少一个中。在地址簿中存在受话者标识符可以指示呼叫者认识受话者,例如,呼叫者是呼叫者的朋友、同事、熟人、商业联系人等。在一些示例中,呼叫者可能已经在地址簿中输入了受话者标识符,可能已经通过另一个源或处理(例如,通过软件,设备或自动处理)接受了在地址簿中的受话者标识符的条目。
在一些实施方式中,在呼出呼叫记录中存在受话者标识符可以指示呼叫者先前和最近与受话者交互,例如,呼叫受话者。在各种实施方式中,呼出呼叫记录可以包括呼叫者在最近过去,例如在过去24小时内、在过去的一周内、在过去的一个月内、在过去的一年内等,已经呼叫过的标识符。在这些实施方式中,存储呼出呼叫记录的时段可以是用户可配置的。在一些实施方式中,该呼出记录可以包括一定数量的最近呼叫(例如,最后50呼叫,最后500呼叫等)的标识符。在这些实施方式中,存储在呼出呼叫记录中的特定呼叫数可以是用户可配置的。在一些实施方式中,呼出呼叫记录可以包括所有先前的呼出呼叫的历史。在一些实施方式中,例如,基于用户偏好,可以不保留呼出呼叫记录,使得呼出呼叫记录是空的。
在一些实施方式中,呼叫者的呼叫相关存储的特定部分或区段可以与在方法300中确定和传输的呼叫者预览数据的使用相关联。呼叫者的呼叫相关存储的其他部分可以与预览呼叫者数据无关。例如,呼叫者可以指定用于呼叫者预览数据的特定数据,例如地址簿、部分地址簿(例如,亲密的家庭成员)、在特定日期范围中指示的用户(例如,参与与呼叫者的先前呼叫的用户)、存储在地址簿或呼出呼叫记录中的特定用户,或呼叫相关存储的其他区段。例如,呼叫者可以使用用户界面的选择特征来执行对用户界面中显示的这种数据的选择。然后,块316可以仅检查指定的数据以确定是否存在受话者标识符,并且不检查未指定的数据。这允许呼叫者例如指定特定地址簿、呼出呼叫记录的特定部分、和/或在受话者接受之前将对其发送预览呼叫者数据的特定用户,和/或指定其他地址簿、呼出记录、以及在受访者接受之前不会对其传输呼叫者预览数据的用户。
在一些实施方式中,如果确定受话者在呼叫者的呼叫相关存储中,例如,在呼叫者的地址簿和呼出呼叫呼叫记录中的至少一个中,则方法继续到块318。在一些实施方式中,如果确定受话者不在呼叫相关存储中,例如,不在地址簿也不在呼出呼叫记录中,则该方法继续到块334,这样在收到呼叫请求的接受之前,不传输呼叫者预览数据。
在块318中,确定呼叫者情境。在各种实施方式中,可以基于多个因素中的任何一个来确定呼叫者情境,多个因素包括呼叫者设备位置、呼叫请求被传输的当前时间和/或各种其他因素。例如,呼叫者设备位置可以基于呼叫者设备中的全球定位系统(GPS)传感器,通过呼叫者设备耦合到的无线网络的信号三角测量(signal triangulation)等来确定。在各种实施方式中,当呼叫者用户同意使用用户数据时,指示呼叫者情境的各种因素可包括呼叫者陪伴或接近朋友或家庭成员和/或处于特定事件(例如,生日庆典、婚礼、派对、篮球比赛、毕业典礼等),与当前位置或当前时间相关的因素(位于家中、工作中、度假时、在朋友家中、早上或深夜等)等。
在一些实施方式中,当呼叫者用户同意使用用户数据时,各种情境因素可以包括受话者标识符,例如,为视频呼叫选择的特定受话者。例如,在受话者同意的情况下,呼叫者设备可以访问受话者偏好或其他先前存储的信息,该信息指示该特定受话者可能喜欢看的视频的类型或内容,和/或受话者的其他用户数据。例如,受话者偏好可以指示受话者喜欢描述呼叫者的呼叫者预览数据(例如,描述呼叫者的人的视频和/或输出呼叫者的语音的音频)而不是呼叫者缺席的呼叫者预览数据(例如,显示呼叫者的风景或环境而不显示呼叫者的人的视频,或存量视频(stock videos))。受话者偏好可以指示受话者仅在一天中的特定时间或在受话者位于特定地理位置(例如,在家中,如果已经获得受话者同意,则可以访问受话者的位置)时更喜欢接收呼叫者预览数据。
在一些实施方式中,如果已经获得用户同意,则可以基于在确定情境的时间(或者在该时间之前不久)来自呼叫者设备的一个或多个摄像机的捕获视频,来确定一个或多个情境因素。例如,如果已经获得用户同意,则可以使用(例如,检测面部、纪念碑、风景、对象等的)图像对象检测技术,来分析捕获的视频的内容和检测到的对象的类型。在一些实施方式中,如果已经获得用户同意,则可以基于用户数据确定一个或多个因素,例如呼叫者设备可访问的呼叫者的日历数据(例如,指示事件)、活动数据等。
在块320中,选择用于传输到受话者设备的呼叫者预览数据。例如,呼叫者预览数据可以是呼叫者预览视频,其包括视频数据,例如视频数据和音频数据,或不包括音频数据的视频数据。在某些情况下或实施方式中,呼叫者预览数据可以是仅包括音频数据的呼叫者预览音频段。例如,呼叫者预览数据可以包括由设备以特定序列(例如,帧和/或音频声音的序列)输出的顺序数据,例如视频数据和/或音频数据。在一些实施方式中,呼叫者预览数据可以包括其他形式的数据,例如文本、静止图像、触觉数据等。在各种实施方式中,呼叫者预览数据可以从一个或多个可用数据段中选择,例如,从一个或多个可用视频和/或音频段(不包括视频数据)中选择。视频可以包括要顺序显示的多个图像(例如,帧),例如,每帧以特定帧速率或显示持续时间,或者以变化的帧速率或帧的显示持续时间。音频段可以包括提供在处理时以特定回放速度或速率播放的音频输出的数据,用于由一个或多个扬声器输出。
在一些示例中,可用数据段可以包括,例如,在当前时间,或在呼叫请求时或之后实时捕获的视频和/或音频段(或数据馈送)。例如,一个或多个视频可以由呼叫者设备的一个或多个摄像机或与呼叫者设备通信的一个或多个摄像机实时捕获。例如,如果呼叫者设备是具有一个前置摄像头和一个后置摄像头的移动电话或其他移动设备,则可用视频可以包括由前置摄像头和后置摄像头中的每一个捕获的视频。在另一示例中,可用视频可包括先前由呼叫者设备的一个或多个摄像头捕获并存储在呼叫者设备上的视频或图像。在另一示例中,可用视频可包括存储在呼叫者设备上的任何视频(或图像、动画、电影图等)。例如,可用视频可以包括多个存储图像或从先前视频呼叫中记录的视频,或者从先前呼叫中记录的部分视频(例如,动作剪辑)。在一些实施方式中,在从一个或多个先前视频呼叫期间捕获的部分视频数据形成的运动剪辑可以用作视觉用户标识符或用户化身,以表示呼叫者设备上的用户界面显示中的相关用户,例如,在呼叫者设备的地址簿或用户的联系人列表中。来自用户标识符的这种运动剪辑可以作为可在块320中选择的视频使用。
在另一示例中,如果呼叫者设备耦合到配套设备,例如包括摄像机的可穿戴设备,诸如眼镜、智能手表、可穿戴摄像机等,则可用视频可包括由配套设备捕获的视频。在又一个示例中,可用视频可以包括存量视频,例如与呼叫者设备的位置相关联的视频。在一些示例中,存量视频可以从呼叫者的存储器和/或互联网上的公共来源获得,例如,网站、网络服务、地图服务等。可以选择与呼叫者情境相关的存量视频。例如,如果呼叫者设备位于大峡谷,则存量视频可以包含大峡谷的视频。在另一示例中,可用视频可以包括应用视频,例如,从呼叫者设备上当前正在运行的一个或多个应用的输出捕获的屏幕捕获视频,或者先前已在呼叫者设备或不同设备上运行并存储在可用的存储器中的屏幕捕获视频。
一个或多个可用数据段可以是由呼叫者设备的一个或多个麦克风和/或配套设备的麦克风实时捕获的音频段。在另一示例中,可用音频段可以包括先前由呼叫者设备捕获并存储在呼叫者设备上的音频段。在另一示例中,可用音频段可包括存储在呼叫者设备上的任何音频段,例如,从一个或多个先前呼叫记录的存储音频段。可用的音频段可以包括存量音频段(例如,音乐曲目、演讲等)。
可以基于呼叫者情境来选择呼叫者预览数据。在各种实施方式中,可以为一个或多个可用数据段确定相应的选择分数,其中数据段的选择分数指示与呼叫者情境的相应相关性或给予呼叫者情境的数据段中的兴趣水平。在一些实施方式中,数据段的选择分数可以是基于呼叫者情境的一个或多个因素在预定值范围内分配的值。在一些示例中,各种选择分数可以与特定的情境因素相关联。在一些实施方式中,可以选择具有最高选择分数的一个或多个数据段。在一些实施方式中,未选择具有不满足阈值的选择分数的数据段。
例如,可以用于确定数据段的选择分数的呼叫者情境因素可以包括呼叫者的地理位置(通过用户同意获得)。特定位置(例如,在存储列表、数据库或其他关联中提供的)可以指示呼叫者在那些位置(例如,与观光或旅游相关联的位置、度假位置,具有着名景点或纪念碑的位置,与呼叫者的家乡城市至少相距特定距离的位置等)实时捕获的数据的高相关性或兴趣水平。如果呼叫者的当前位置与任何此类特定位置匹配,则当前正由呼叫者设备捕获或最近(例如,在呼叫的当前时间之前的预定时间段内)由呼叫者设备捕获的数据段可被分配高选择分数。在一些情况下,已知描述呼叫者位置的可用存量数据段可被分配高选择分数,例如,但是比实时捕获数据分段更低的选择分数。相反,如果呼叫者的位置已知(在用户同意的情况下)是呼叫者过去经常访问的常见位置(例如,高于阈值访问频率或特定时间段内的访问次数),或者在室内等位置,然后可以基于呼叫者位置为呼叫者的设备分配低选择分数。
可用于确定数据段的选择分数的另一个呼叫者情境因素包括当前时间和/或日期。例如,如果当前时间指示在呼叫者的位置处可以看到日落,那么呼叫者的设备当前捕获的数据段可以被分配更高的选择分数。相反,如果当前时间指示是夜间,则可以为实时捕获的数据段分配较低的选择分数。用户日历事件(例如,在用户同意的情况下获得的)还可以指示呼叫者是否处于事件中,并因此指示呼叫者设备的实时捕获数据段是否应被分配高选择分数或低选择分数。
可以用于确定数据段的选择分数的其他呼叫者情境因素包括呼叫者正在参与的事件(例如,在用户同意的情况下,从呼叫者的日历中得知的),或者其他人是否与呼叫者有关(例如,基于用户数据,例如日历数据,或者呼叫者的设备上的摄像机记录的一个或多个帧的分析(经用户同意)或呼叫者的设备上的麦克风记录的音频数据(经用户同意)等)。例如,由于呼叫者设备与这样的因素一起存在,所以这样的情境因素可以增加由呼叫者设备捕获的实时数据段的选择分数。在另一个示例中,还可以检查当前或最近由前置和后置摄像机记录的视频帧和/或当前记录的音频数据的适用性。例如,可以检查视频帧它们的像素是否低于平均阈值亮度水平,这可以指示它们看起来太暗而不能用作呼叫者预览数据,因此导致被分配低选择分数。还可以检查视频的其他视频特性,例如,颜色噪声,模糊等,以影响选择分数。可以检查音频段的音频特性,例如,以检查音频噪声,与语音相比背景声音太大等等,这可能导致分配低选择分数。呼叫者的存储用户偏好也可用于影响选择分数。例如,呼叫者可能已经在用户偏好中指出呼叫者设备的后置摄像头对于呼叫者预览视频是优选的。
在一些示例中,如果呼叫者位于大峡谷或其他观光地理位置,则由于位于该位置的视觉风景(从存储的各个位置的适合性的指示中得知),在呼叫时或呼叫之前由呼叫者设备的后置摄像头捕获的视频可以被自动确定为具有高选择分数,而前置摄像机捕获的视频可被确定为具有比后置摄像机更低的选择分数。在该示例中,可以例如基于较高的选择分数,选择由后置摄像头捕获的视频作为呼叫者预览视频。
在另一个示例中,如果呼叫者处于生日聚会事件(例如,在用户同意的情况下,通过用户数据已知,例如呼叫者设备上的用户日历数据),则前置摄像头可以捕获呼叫者的脸部,并且后置摄像头可以捕捉生日聚会上发生的事情,例如,另一个人吹蜡烛或切蛋糕。在该示例中,由前置摄像头捕获的视频和由后置摄像头捕获的视频可以被分配相等的选择分数,以指示相等的相关性或兴趣水平(除非存在如本文所述的一个或多个其他因素指示为这些摄像头之一分配更高的选择分数)。此外,在一些实施方式中,如果满足阈值选择分数,则可以确定相等的选择分数。如果没有,则不会选择视频。
在另一个示例中,呼叫者情境可以包括呼叫者设备的物理空间中的一个或多个空间定向。在一些示例中,呼叫者可以将呼叫者设备保持在特定方位以选择特定情境。例如,设备的呼叫者情境在空间中被垂直定向(例如,设备的前部和后部面向大致平行于地面,例如,在垂直的角度阈值范围内)可以指示设备的前后摄像头的一个或多个的选择,而设备的呼叫者情境保持在一定角度(例如,在垂直方向的阈值角度范围之外)或水平意味着选择不同的视频,例如,从当前在呼叫者设备上运行的应用获得的视频,存储的视频或音频段等。
在另一示例中,可以基于具有高选择分数的视频或音频段来选择从配套设备捕获的视频和/或音频段。例如,配套设备可以是可穿戴式摄像机,并且呼叫者可以参与可穿戴式摄像机捕获的活动,例如山地自行车、攀岩等,如呼叫者位置、移动速率、事件或日历数据、或其他数据所指示的。在另一示例中,可以基于具有高选择分数的视频来选择应用视频作为呼叫者预览视频。例如,受话者标识符可以与呼叫者之前在呼叫中与之交互的客户支持官方相关联,并且该应用与客户支持官方的业务相关联,使得可以将来自当前正在呼叫者设备上运行的应用的视频输出作为呼叫者预览视频传输给受话者,以便为应用提供更有效的客户支持。在一些示例中,客户支持官方的业务可以从先前呼叫中使用的官方地址确定。具有当前显示在呼叫者设备上的输出的其他应用可以被提供为呼叫者预览视频,例如游戏程序、视频回放程序、通信程序等。
一些实施方式可以基于多个单个分数的组合来确定数据段的总选择分数,其中每个单个分数与用于确定总选择分数的呼叫者情境因素相关联。在一些示例中,可以将多个单个分数相加以获得总选择分数。例如,特定视频可能具有与呼叫者的地理位置相关联的高单个选择分数,但是可能具有与当前时间和其他因素相关联的较低的单个选择分数,从而导致平均的总选择分数。
在各种示例中,当存在多个可用数据段时,可以选择特定数据段作为用于传输的呼叫者预览数据,其中特定数据段满足阈值选择分数,并且具有最佳(例如,最高)可用数据段的选择分数,例如,指示最高相关性或兴趣水平。一些实施方式可以确定如上所述的每个可用数据段的总选择分数,或者用于可用数据段的子集,并且可以选择具有最佳(例如,最高)总选择分数的数据段作为呼叫者预览数据段。
在一些实施方式中,可以选择多个数据段作为呼叫者预览数据来传输。例如,可以组合多个所选视频以生成呼叫者预览视频。在一些示例中,可以组合具有相等选择分数的视频和/或音频段,或者可以组合具有最佳选择分数的特定数量的视频和/或音频段。在另一个示例中,可以组合具有最佳选择分数并且具有在彼此的特定阈值分数范围内的选择分数的视频和/或音频段。一些实施方式可以组合来自不同源的视频和/或音频段,例如来自呼叫者设备的前置摄像头的一个视频和来自呼叫者设备的后置摄像头的一个视频,或者来自呼叫者设备的摄像机的一个视频和服务器、网络存储或其他网络源或呼叫者设备上存储的一个或多个其他视频。在一些示例中,可以将两个视频组合成组合视频,该组合视频可以包括在组合视频的整个帧内彼此相邻的两个视频的帧。一些实施方式可以根据需要裁剪单个视频或音频段,或者可以比一个或多个其他视频更突出地(例如,更大或未裁剪,更响亮等)显示或输出一个或多个视频和/或音频段和/或音频段。例如,具有更好选择分数的视频可以在组合视频中更突出地显示。在其他示例中,可以通过重叠视频的至少一部分来组合多个所选视频,例如,可以使一个或多个视频部分透明,使得所有组合视频可以叠加显示在特定屏幕区域中。多个选定的音频段可以在其音频输出中完全或部分地重叠输出。其他技术可用于组合多个选定的数据段。
虽然用一些示例描述了呼叫者预览数据的选择,但是可以基于呼叫者的情境选择任何单个数据段或数据段组合作为呼叫者预览数据。
在一些实施方式中,可以基于用户对呼叫者设备的输入来选择呼叫者预览数据,其有效地选择例如来自呼叫者的预览数据。例如,呼叫者可以向呼叫者设备提供输入,以在呼叫者戴着滑稽的帽子时选择前置摄像头视频作为呼叫者预览视频,或选择后置摄像头视频作为呼叫者预览视频,例如当后置摄像头捕捉到呼叫者的狗表演技巧的视频时。在各种实施方式中,可以在呼叫者设备上提供合适的用户界面,以使呼叫者能够选择呼叫者预览数据,例如,用户界面可以包括与不同的可用数据段相对应的用户界面元素(例如,来自前置摄像头,来自后置摄像头,存量视频等),允许呼叫者在前置摄像头和后置摄像头之间切换的切换元件等。
在一些实施方式中,在作为呼叫者预览数据传输到受话者设备之前,可以通过呼叫者设备显示或输出所选数据(例如,存储的数据段、部分所选数据段、来自呼叫者设备上的摄像机或麦克风的所选的实时数据等)。例如,该显示可以充当预览,以允许呼叫者体验(查看或听到)一个或多个数据段,在受话者接受呼叫之前,这些数据段已被自动选择作为呼叫者预览数据发送给受话者。可以向呼叫者提供接受和覆盖所选数据的选项,例如,在体验经由设备输出的至少一部分所选数据之后。例如,呼叫者可以选择拒绝所选择的数据(例如,利用一个或多个显示的用户界面控件),并且可以选择一个或多个其他数据段用作呼叫者预览数据。在一些示例中,呼叫者可以选择呼叫者设备的前置摄像头和/或后置摄像头来发送由所选择的摄像头所捕获的实时视频,和/或呼叫者可以浏览并选择一个或多个视频和/或音频段,以从呼叫者设备可访问的存储的视频和/或音频段列表或菜单进行传输。在提供可以包括多个数据段的组合数据段的一些实施方式中,可以为呼叫者提供保留所选择的待传输数据的选项,并且可以添加一个或多个用户选择的数据段以与所选择的数据进行组合,使得组合的数据段作为呼叫者预览数据被发送。
在一些实施方式中,例如,如果呼叫者情境不足以从可用数据段指示合适的呼叫者预览数据,或者如果没有可用数据段满足阈值选择分数,则呼叫者预览数据可以基于默认设置(例如,来自呼叫者设备的前置摄像头的视频)来选择。
在块322中,确定是否要过滤所选择的呼叫者预览数据。在一些实施方式中,如果呼叫者指示偏好过滤呼出的呼叫者预览数据,则可以过滤呼叫者预览数据。在一些实施方式中,例如,可以基于呼叫者预览数据的内容来过滤呼叫者预览数据。在一些实施方式中,例如,当来自受话者设备的确认包括对过滤数据的偏好时,可以过滤呼叫者预览数据。如果确定要过滤呼叫者预览数据,则该方法继续到块324。如果确定不要过滤呼叫者预览数据,则该方法继续到块322。
在块324中,将一个或多个过滤器应用于所选择的呼叫者预览数据。例如,视频过滤器(或视觉过滤器)可以修改呼叫者预览视频,使得视频的内容模糊。例如,视频过滤器的应用可以导致被过滤的视频的锐边或边界的数量减少,或者其中对象的形状可辨别但不是对象的特定标识。在一些实施方式中,视频过滤器可以将六边形马赛克应用于呼叫者预览视频。应用六边形过滤器(或类似类型的过滤器)可以使视频的像素被更新为值,使得在过滤的视频的每个帧中看到六边形图案,以及诸如呼叫者预览视频中的对象的形状的细节被模糊。在各种实施方式中,视频过滤器可以应用于例如模糊可识别信息,例如面部、地点、对象。然而,在这些实施方式中,视频过滤器可以提供呼叫者预览视频的内容的指示,例如,通过保留面部/对象的轮廓,通过保持像素的颜色分布等。例如,如果呼叫者预览视频包括一棵巨大的红杉树,过滤后的视频可能包含足够的细节,以指示呼叫者预览视频有一棵树,但没有足够的细节来确定它是一棵巨大的红杉树。一些实施方式可以保持前景物体背后描绘的背景的清晰度。图5B示出了模糊的呼叫者预览视频的示例。
在一些实施方式中,可以将音频过滤器应用于所选择的呼叫者预览数据。例如,作为视频数据的呼叫者预览数据可以包括对应于视频数据的音频数据。可以过滤掉这样的音频数据,使得呼叫者预览视频数据将不包括相应的音频输出。
在一些实施方式中,传输之前或者在传输过程中,其他形式的处理(例如,除了过滤之外)可以由系统(例如,通过呼叫者设备和/或其他连接系统)在呼叫者预览数据上自动执行。例如,可以基于呼叫者预览数据来自动生成文本,并将其包括在呼叫者预览数据中或替换呼叫者预览数据的一个或多个部分。类似于下面针对图6和7中的呼叫消息所描述的,处理可以包括检测呼叫者预览数据的图像数据或视频数据中的一个或多个视觉特征,检测呼叫者预览数据的音频数据中的一个或多个音频特征(例如,语音)等,并根据检测到的特征自动生成文本。例如,可以基于语音音频数据生成文本字幕,并将其添加到呼叫者预览数据中(或替换部分呼叫者预览数据)。可以基于视频数据中检测到的视觉特征生成文本描述。可以基于这样的检测到的特征生成文本消息,并将其用作或添加到呼叫者预览数据。在另外的示例中,处理可以包括呼叫者预览数据的编码、压缩等,类似于本文描述的其他部分中描述的。例如,可以基于存储的呼叫者偏好和/或存储的受话者偏好来执行这种处理。在一些实施方式中,处理可以包括将数据添加到呼叫者预览数据,例如,基于呼叫者对呼叫者设备的输入。例如,呼叫者可以在呼叫者设备的屏幕上输入文本和/或在呼叫者设备的屏幕上绘制线条或形状,同时捕获的视频流正在捕获呼叫者的视频,并且呼叫者预览数据由系统处理,以包括捕获的视频流和捕获呼叫者输入到呼叫者设备的数据。
在块326中,可以将过滤的呼叫者预览数据传输到从其接收到确认的受话者设备。呼叫者预览数据可以通过与受话者设备建立的连接来传输,例如,使用为连接选择的媒体编码技术。在一些实施方式中,过滤的预览视频数据可以从传输中省略音频数据,使得受话者设备不会输出与视频数据相关联的音频。在一些实施方式中,音频数据可以在视觉上过滤的视频数据中传输。在一些实施方式中,如果所传输的预览数据具有定义的结尾或终端(例如,存量视频或音频段,或者在先前捕获或存储的具有定义的终端点的其他视频或音频段)并且预览数据的结尾被发送,则预览数据可以循环一次或多次,例如,使得预览数据从其开始再次发送(例如,直到受话者接受呼叫请求或者呼叫在接受之前被终止)。在一些实施方式中,具有定义的结尾的呼叫者预览数据可以被发送一次或特定次数,然后预览数据不再被发送。在一些实施方式中,在所选择的呼叫者预览数据到达其结尾之后,可以发送一个或多个不同的默认数据段(例如,以循环方式或不以循环方式),和/或一个或多个连续数据段可以从可用数据段中随机选择,或者可以使用如本文所述的一个或多个分数和/或情境因素,从可用数据段中选择(例如,在传输最高得分数据段之后的下一个最高得分数据段)。
在块328中,可以接收用于禁用所应用的过滤器中的一个或多个的输入。在一些实施方式中,可以从呼叫者接收用于禁用过滤器的输入。例如,呼叫者可以从呼叫者设备上的用户界面选择禁用视频过滤器的选项,例如通过触摸触摸屏上的选项,通过用诸如鼠标等指示设备选择选项。在另一示例中,呼叫者可以通过一个或多个语音命令禁用一个或多个过滤器。
在一些实施方式中,可以从受话者设备接收禁用一个或多个过滤器的输入。在禁用过滤器的输入作为来自受话者设备的指示被接收的实施方式中,在受话者接受呼叫请求之前接收这种指示。该指示可以指示禁用过滤器,和/或在一些实施方式中,该指示可以指示其他信息。例如,该指示可以指示受话者设备已经检测到面部,并且该指示还可以指示禁用视频过滤器。在一些实施方式中,仅接收到受话者设备检测到面部的指示,并且呼叫者设备可以认为这是禁用视频过滤器的指示,例如,基于受话者的已知偏好,默认设置等。下面参考图4描述受话者设备检测到的可用于指示禁用过滤器的其他动作或状态。
在块330中,例如,基于所接收的块328的输入,禁用一个或多个过滤器。在一些示例中,可以禁用一个或多个视频过滤器,使得呼叫者预览视频数据被发送到受话者设备而没有模糊或其他修改。可以禁用音频过滤器,使得呼叫者预览视频数据与音频数据一起发送,或者使得仅音频呼叫者预览数据能够被发送。
在块334中,可以通过建立的连接从受话者设备接收呼叫请求的接受。例如,接受可以是标准信号或根据正在使用的呼叫通信协议的数据,其指示受话者已接受呼叫,并且现在可以在呼叫者设备和受话者设备之间建立呼叫通信。在一些示例中,可以响应于受话者提供应答呼叫的输入来接收接受,例如,通过语音命令等选择显示在受话者设备的屏幕上的应答呼叫的选项。基于受话者提供应答呼叫的输入,呼叫请求的接受可以由受话者设备发送到呼叫者设备。在将预览数据段的至少一部分发送到受话者设备之后,可以接收呼叫请求的接受。例如,如果预览数据段是具有定义长度的存储视频或音频段,则在接收呼叫的接受之前发送该视频或音频段的至少一部分。
在块340中,建立并进行呼叫,使得呼叫者和受话者可以通过连接参与呼叫。在各种实施方式中,在接受之前发送的呼叫者预览数据可能需要或可能不需要被改变为在呼叫期间从呼叫者发送的不同的数据馈送(例如,视频和/或音频数据的实时数据馈送)。例如,在某些情况下,例如,如果在受话者接受之前发送的呼叫者预览数据包括由呼叫者设备的摄像机捕获的呼叫者的实时视频数据,那么预览视频数据的源和内容在收到呼叫请求的接受时不需要改变(例如,除非视频呼叫被过滤,如下所述),并且在一些示例中,预览视频数据可以在建立的视频呼叫期间继续发送呼叫,类似于它在受话者接受之前传输。在某些情况下,例如,如果在受话者接受之前发送的预览数据是不显示呼叫者的实时视频(例如,由呼叫者设备的后置摄像头捕获)或者是先前捕获或记录的数据,则在接收到呼叫请求接受之后,传输的数据可以被改变为实时数据馈送,例如描画或描绘呼叫者,例如由受话者设备的前置摄像头或其他摄像机捕获,或者通过受话者设备的麦克风捕获。
在一些实施方式中,一旦接收到受话者接受呼叫请求,就可以启用来自呼叫者设备的可能先前已被禁用的音频传输,使得受话者设备可以输出所接收的音频数据。在一些实施方式中,例如,当呼叫者预览视频被过滤并且先前未接收到用于禁用过滤器的输入时,可以响应于接收到接受呼叫请求而禁用过滤器。此外,在一些实施方式中,一旦接收到受话者接受呼叫请求,就可以启用来自受话者设备的音频和/或视频传输。在某些情况或实施方式中,可以更新连接以使得能够将媒体(例如,音频/视频)从受话者设备传输到呼叫者设备。呼叫者设备可以输出受话者音频并显示从受话者设备接收的受话者视频。
如果在块322中确定呼叫者预览数据没有被过滤,则可以执行块332。在块332中,可以在没有过滤(例如,没有任何修改)的情况下传输所选择的呼叫者预览数据。
图4是示出根据一些实施方式的用于受话者设备的示例方法400的流程图。例如,方法400中的一些或全部可以在诸如图1所示的一个或多个客户端设备120,122,124或126的系统上实施。在一些实施方式中,方法400可以在如图1所示的服务器系统102上实施,和/或在服务器系统和客户端系统两者上实施。在所描述的示例中,实施系统包括一个或多个处理器或处理电路,以及一个或多个存储设备。在一些实施方式中,一个或多个客户端和/或服务器的不同组件可以执行方法400的不同块或其他部分。
在块402中,检查是否已获得用户同意(例如,用户许可)以在方法400的实施中使用用户数据。例如,用户数据可包括用户偏好、用户生物信息、用户特征(身份、姓名、年龄、性别、职业等)、用户的社交网络和联系人信息、社交和其他类型的行为和活动、用户创建或提交的意见、内容、评级、用户的当前位置、历史用户数据等。这里描述的方法的一个或多个块可以在一些实施方式中使用这样的用户数据。如果已经从可以在方法400中使用用户数据的相关用户获得用户同意,则在块404中,能够在使用用户数据的情况下,实现本文方法的块,如针对那些块所描述的那样,并且该方法继续到块410。如果尚未获得用户同意,则确定在块406中将在不使用用户数据的情况下实施块,并且该方法继续到块410。在一些实施方式中,如果尚未获得用户同意,则不执行方法400的其余部分。
在块410中,在受话者设备处接收呼叫请求,其中呼叫请求源自呼叫者设备。在块412中,向呼叫者设备发送确认。在各种实施方式中,确认是自动发送的,无需用户输入。该确认可以指示,例如,受话者设备可以通过网络到达。
在一些实施方式中,如上所述,确认还可以包括对过滤的数据(例如,过滤的视频)的偏好。对过滤的数据或未过滤的数据的偏好可以由受话者设备基于各种因素自动确定。例如,当受话者同意使用用户数据时,受话者设备可以(基于感测到位置数据)确定它(和受话者)在公共场所,例如商店、火车站等,并确定存在对过滤的数据的偏好。在另一示例中,如果受话者同意使用用户数据,则受话者设备可以确定受话者在会议中(例如,在受话者的工作地点的商务会议中,基于位置数据和/或用户日历数据或其他用户数据)并确定存在对过滤的数据的偏好。在另一个示例中,受话者设备可以确定它被放置在大致平坦的位置,例如,在桌子上,受话者设备屏幕朝上(例如,基于受话者设备的一个或多个运动传感器),并确定存在对过滤的数据的偏好,例如,由于受话者设备屏幕是可见的。在另一示例中,当受话者同意使用用户数据时,受话者设备可以确定受话者在家并且受话者设备未锁(例如,它可以被使用,或者当前正在由受话者使用),并确定存在对未过滤的预览数据的偏好。可以使用位置、受话者的日历、电话方位和其他因素的组合来确定对过滤的数据或未过滤的数据的偏好。
在块414中,与呼叫者设备建立连接。可以如参考图3的块314所描述的那样建立连接。
在块416中,确定是否在受话者设备处启用接收和/或输出呼叫者预览数据。例如,受话者可以选择一个选项,使得呼叫者预览数据被禁用,例如,在适用于所有呼叫者或特定呼叫者的呼叫设置或偏好中。在另一个示例中,可以禁用呼叫者视频预览,例如,当连接上的可用带宽不足以用于呼叫者视频预览时,如果连接是计量连接等时。如果确定呼叫者预览数据在受话者设备处被启用,则该方法继续到块418。如果确定在受话者设备处禁用呼叫者预览数据,则该方法继续到块428。
在块418中,通过建立的连接接收呼叫者预览数据。在各种实施方式中,可以使用为连接识别的媒体编码技术来接收呼叫者预览数据,例如,类似于上面参考图3所描述的。
在块420中,确定传入的呼叫者预览数据是否要由受话者设备在其输出中过滤。在一些实施方式中,可以确定传入的预览数据是否先前已被过滤,例如,由如参考图3所述的呼叫者设备过滤。在一些实施方式中,确定传入的预览数据是否已经过滤可以通过分析传入的预览数据来执行,例如,以确定输入数据是否模糊,不包括音频数据,和/或以其他方式过滤。在一些实施方式中,可以基于由呼叫者设备传输并与预览数据相关联的参数来确定传入的呼叫者预览数据是否已经过滤,指示预览数据的过滤状态。此外,可以基于所存储的受话者的偏好(例如基于存储在受话者设备上的一个或多个过滤器设置),来确定是否和/或如何对呼叫者预览数据进行过滤。例如,受话者设备可以在用户界面中显示过滤器和输出选项,并且受话者可以选择一个或多个选项(例如,通过触摸屏、语音命令等)。在一些实施方式中,选项可以由受话者设备显示,接受受话者输入,以允许受话者选择过滤器和/或输出偏好和/或设置。例如,可以在块410中接收呼叫请求之后并且在输出呼叫者预览数据之前显示选项。一些实施方式可以在任何时间提供选项,例如,在呼叫请求之前。
在一些实施方式中,受话者过滤器的偏好或设置可包括音频数据过滤器和/或输出设置。例如,一个设置可以是由呼叫者设备自动输出接收的呼叫者预览数据中的音频数据(例如,在一些实施方式中代替铃声)。另一种设置可以是在接收的呼叫者预览数据中自动静音音频输出,并显示与音频数据中的语音相对应的文本(例如,将音频语音转录成显示的文本)。在收到呼叫请求之后和呼叫请求被接受之前,另一个设置可以使受话者设备显示一个选项,允许受话者选择是否由受话者设备在呼叫者预览数据中输出音频数据。例如,呼叫者预览数据的视频数据可以由受话者设备显示,并且可以在该显示期间提供该选项。可以提供这些设置以对呼叫者预览数据中的视频数据包括的音频数据进行操作,和/或对呼叫者预览数据中不伴随视频数据的音频数据进行操作。
如果确定传入的呼叫者预览数据没被过滤并且受话者具有过滤呼叫者预览数据偏好,则可以确定呼叫者预览数据将由受话者设备过滤。如果确定传入的呼叫者预览数据将被过滤以输出,则该方法继续到块422。如果确定传入的呼叫者预览数据将不过滤以输出,该方法继续到块426。
在块422中,受话者设备输出过滤的呼叫者预览数据。例如,如果呼叫者预览数据包括视频数据,则视频数据显示在例如受话者设备的屏幕上。如果在块420中确定传入的呼叫者预览数据尚未在视觉上过滤并且受话者设备将在视觉上过滤呼叫者预览数据,则在受话者设备的屏幕上显示(或通过扬声器输出)之前,传入的预览视频数据可以由受话者设备在视觉上过滤。例如,受话者设备可以通过应用一个或多个视频过滤器来过滤传入的预览视频数据,如先前参考图3的块324描述的。
如果视频数据包括音频数据,则如果音频数据未过滤并且受话者设备将提供音频过滤,则传入的预览呼叫者音频数据可以被过滤,例如通过由预览呼叫者音频数据引起的受话者设备静音音频输出。如果受话者设备不提供音频过滤,则可以对应于视频数据的显示输出音频数据。在一些实施方式中,类似于如下所述,输出呼叫者预览音频数据而不是铃声或其他音频数据。在一些实施方式中,除非来自受话者的用户输入选择了输出音频数据的选项,否则不输出音频数据。
如果呼叫者预览数据是音频数据并且不包括视频数据,则如果音频输出不是由受话者设备过滤的话,则由受话者设备输出音频数据。在一些实施方式中,响应于接收呼叫请求,输出呼叫者预览音频数据,而不是受话者设备默认输出的铃声或其他音频数据。在一些实施方式中,呼叫者预览音频数据可以与这样的默认铃声组合。例如,可以减少默认铃声音量,例如,作为背景音频,而将呼叫者预览音频数据作为较大的前景音频输出。显示的选项和/或受话者偏好可以使呼叫者预览音频数据和/或铃声在指定条件下输出。在一些示例中,可以输出铃声作为默认,除非呼叫者发送呼叫者预览数据与在受访者数据库中确定的受话者具有社交关系,例如,在受话者设备上的受话者的联系人列表中,位于与社交网络服务中的受话者相关联的用户组中等。
在一些实施方式中,系统(例如,受话者设备和/或与受话者设备通信的另一系统,例如服务器系统或其他客户端设备)可以在呼叫者预览音频数据中检测语音。系统可以获得或生成与检测到的音频数据中存在的语音相对应的文本,例如,在静音音频输出的同时,类似于上面针对呼叫者设备所描述的。在一些实施方式中,文本可以由系统确定或生成,并且受话者设备接收所生成的文本与其他呼叫者预览数据。例如,当语音被输出时(或者如果语音未被静音则将被输出),所生成的文本可以显示在受话者设备的屏幕上,并与语音对应。例如,如果还接收到视频数据,则生成的文本可以显示在所显示的视频帧的顶部或侧面。如果仅接收到音频数据而没有接收视频数据,则生成的文本可以显示在受话者设备显示屏幕的用户界面或其他消息显示区域中。在一些实施方式中,生成的文本可以以与语音的定时不同的速率或定时显示。在一些示例中,可以在音频数据和/或受音设备的铃声作为来自受音设备的音频输出时或之后显示所生成的文本。在一些实施方式中,所生成的文本可以由受话者设备显示为一个或多个单独的文本消息,例如,显示在由受话者设备提供的文本消息界面或聊天界面中。
在一些实施方式中,如果已经获得用户同意,则受话者设备(或其他系统)还可以或可选地生成在接收的呼叫者预览数据的视频数据或图像数据中描绘的视觉特征的文本(例如,文本描述),并在显示视频或图像数据期间、之前或之后显示生成的文本。例如,如果已经获得用户同意,则在接收的呼叫者预览数据的视频数据或图像数据中检测视觉特征,并且视觉特征可以包括人(未识别的)、对象、景观特征等,类似于本文其他地方所描述的。在一些实施方式中,所有或一些生成的文本(基于音频和/或视频/图像数据)可能已经由呼叫者设备或其他系统生成,并且包括在所接收的呼叫者预览数据中。
在块424中,在一些情况或实施方式中,可以接收输入以禁用一个或多个过滤器。在各种实施方式中,这种输入可以包括例如来自受话者的命令或受受者执行的动作。例如,受话者设备可以从受话者接收命令作为触摸屏显示器上的触摸输入、语音命令等。例如,受话者执行的动作可以包括从静止状态开始,拾取受话者设备,受话者设备可以基于受话者设备的一个或多个运动传感器(例如,加速度计和/或陀螺仪)来检测拾取。在另一示例中,受话者执行的动作可以包括解锁受话者设备,例如,选择受话者设备的一个或多个控件以解锁一个或多个受话者设备功能。在另一个示例中,受话者执行的动作可以包括受话者看一眼受话者设备。例如,如果受话者用户已同意使用用户数据,则禁用过滤器的输入可包括受话者设备检测面部。例如,可以通过分析来自受话者设备的摄像机(例如受话者设备的前置摄像头)的视频来检测面部。在一些实施方式中,如果受话者设备感测到它正被拾取,则可以执行面部检测。在一些实施方式中,受话者设备可以经受话者同意以其他方式识别受话者,例如指纹扫描仪。在实施方式中,传入的呼叫者预览数据已经被过滤,响应于在块424接收的禁用过滤器的输入,受话者设备可以向呼叫者设备传输指示以禁止其使用一个或更多过滤器来过滤传入的呼叫者预览数据。在传入的呼叫者预览数据尚未过滤,并且受话者设备应用过滤器的实施方式中,可以响应于在方块424接收的输入而禁用受话者设备处的过滤器。
在块426中,输出传入的呼叫者预览数据。例如,如果呼叫者预览数据包括视频数据,则视频数据显示在例如受话者设备的屏幕上。可以在没有过滤视频的情况下显示呼叫者预览数据,例如,如果在块424中未应用或禁用视频过滤。在一些实施方式中,显示专用的用户界面以指示输入数据是在呼叫建立之前收到的呼叫者预览数据。例如,与用于已建立的呼叫的较大视频窗口相比,受话者设备可以显示较小的视频窗口,以显示呼叫者预览视频,和/或呼叫者预览数据的一个或多个其他视频和/或音频指示器可以在用户界面中显示和/或另外由受话者设备输出。
如果视频数据包括音频数据,则可以与视频数据的显示相对应地输出音频数据(例如,如果未应用音频过滤)。在一些实施方式中,输出呼叫者预览音频数据,而不是类似于下面描述的铃声或其他音频数据。在一些实施方式中,除非来自受话者的用户输入已经选择了输出音频数据的选项,否则不输出音频数据。如果呼叫者预览数据是音频数据并且不包括视频数据,则受话者设备输出音频数据(例如,如果未应用音频过滤)。在一些实施方式中,响应于接收呼叫请求,输出呼叫者预览音频数据而不是响铃设备默认输出的铃声或其他音频数据。在一些实施方式中,呼叫者预览音频数据可以与这样的默认铃声组合。例如,默认铃声音量可以例如减小为背景音频,而呼叫者预览音频数据为更大声的前景音频。在一些实施方式中,系统可以显示与检测到的音频数据中存在的语音和/或视频或图像数据中存在的视觉特征相对应的生成的文本,类似于上面针对块422所描述的。
在一些实施方式中,受话者设备可以输出包括在受话者数据中的呼叫者输入数据,例如由呼叫者提供的音频、文本或图形(例如,像素图)输入数据。这种呼叫者输入数据可以在其显示中与其他相关的呼叫者预览数据协调。例如,如果呼叫者预览数据包括呼叫者输入数据,例如在呼叫者预览数据的视频数据的特定帧期间由呼叫者输入的语音、文本或图形数据,则当显示视频数据的相应帧时,受话者设备可以输出该音频、文本或图形数据。
在块430中,在受话者设备处从受话者接收呼叫接受输入。例如,接受输入可以包括受话者提供接听呼叫的输入,例如,通过语音命令等选择接听受话者设备的屏幕上显示的呼叫的选项。
在块432中,呼叫请求的接受可以由受话者设备通过网络发送到呼叫者设备。在块434中,建立并进行呼叫,例如,如参考图3的块340所描述的,在一些实施方式中,如果提供并且在该块之前未被禁用,则受话者接受呼叫时可以禁用呼叫者预览数据的过滤。在呼叫接受之后,例如基于呼叫者和/或受话者的偏好,一些实施方式可以继续过滤呼叫者预览数据。
如果在块416中确定在受话者设备处未启用呼叫者预览数据,则可以执行块428。在块428中,受话者设备显示没有呼叫者预览数据的传入呼叫的用户界面。例如,传入呼叫用户界面可以包括用于传入呼叫的用户界面元素,例如,如图5A所示,但排除呼叫者预览数据。
图5A-5F是示出根据一些实施方式的示出本文描述的一个或多个特征的用户界面的示例表示的示意图。图5A-5F各自示出了在受话者设备上显示的示例用户界面。为简洁起见,图5A-5F中省略了一些参考数字。
在图5A中,示出了第一用户界面500。如图5A所示,在用户界面500中显示来自呼叫者“Wally M.”的传入视频呼叫请求的通知。通知包括呼叫的用户的指示502(或标识),在这种情况下是文本指示。该通知还包括用户界面元素504,其可由受话者选择以例如通过触摸屏、语音命令或其他输入设备来应答呼叫。在图5A所示的示例中,呼叫者设备尚未接收到确认,并且没有显示呼叫者预览视频。
在图5B中,用户界面500显示在视频呼叫的另一个阶段。在图5B所示的示例中,呼叫者设备已经接收到来自受话者设备的确认,因此,呼叫者设备选择并传输由受话者设备显示界面500接收的呼叫者预览视频。在图5B所示的示例中,呼叫者预览数据的所选数据是由呼叫者设备上的前置摄像头捕获的实时视频,其捕获呼叫者的面部。在另一示例中,所选数据可以是由呼叫者设备的后置摄像头捕获的实时视频,其捕获位于后置摄像头的视野中的人的面部。在又一个示例中,所选数据可以是预先存储的或预先录制的视频,其是从呼叫者设备可访问的存储器提供的。在又一个示例中,所选择的数据可以是由呼叫者设备的麦克风记录的现场音频数据,或者可以是存储在呼叫者设备可访问的存储器中的预先存储或预先记录的音频段。
在该示例中,启用一个或多个视频过滤器(例如,在呼叫者设备处和/或在受话者设备处),因此,显示过滤的呼叫者预览视频510,使得模糊的脸部如图5B中的模糊轮廓所示。此外,诸如用户界面元素504的用户界面元素和文本指示502“来自Wally M.的视频呼叫”覆盖在过滤的呼叫者预览视频的顶部。
图5C示出了用户界面500的另一示例。在该示例中,视频过滤器已被禁用,例如,响应于禁用过滤器的输入,如上面参考图3和图4所讨论的。如图5C所示,呼叫者预览视频520在没有过滤的情况下被显示,使得它清楚地示出了可以由受话者识别的面部,例如呼叫者的面部。此外,诸如用户界面元素504的用户界面元素和文本指示502“来自Wally M.的视频呼叫”覆盖在呼叫者预览视频的顶部。
图5D示出了用户界面500的另一示例。在该示例中,音频选项消息524显示在用户界面500中。音频选项消息524向受话者提供选项以选择是否输出音频数据,其中音频数据伴随并且对应于呼叫者预览数据的视频数据。例如,受话者可以选择选项526之一,以启用或继续禁用音频输出。在该示例中,在已经开始显示呼叫者预览视频520的视频数据之后显示音频选项消息524和选项526。在一些实施方式中,受话者偏好可以确定是否输出呼叫者预览数据中的音频数据和/或是否将音频数据中的语音自动转录为文本,例如,由受话者设备或其他设备,并显示在用户界面500中。
图5E示出了用户界面500的另一示例。在该示例中,用户界面元素504被示出与图5A-5D中所示的其原始位置偏移特定距离。在一些实施方式中,用户界面元素504可以响应于输入(例如,来自受话者的触摸输入)而移位。在该示例中,受话者显示的用户界面元素504的位移表示受话者正在接受视频呼叫。其他实施方式可以允许受话者以其他方式接受呼叫,例如,选择、敲击或点击用户界面元素504,输入语音命令,通过以受话者设备的运动传感器检测的预定方式移动受话者设备来输入动作命令等。此外,图5E示出了更新的呼叫者预览视频530,其示出了例如已进入呼叫者预览视频的第二人的第二面部。
在图5F中,示出了用户界面540。在该示例中,用户界面540是视频呼叫界面,其中视频呼叫在如图5E所示的受话者接受视频呼叫之后建立并且正在进行。在图5F的示例中,用户界面覆盖不再是用于视频呼叫界面的用户界面的一部分,使得呼叫者预览视频542显示在受话者设备的全屏上。另外,显示受话者视频544以显示由受话者设备的前置摄像头捕获的受话者用户的外观。
图6是示出根据一些实施方式的用于呼叫者设备的示例方法600并且包括提供呼叫消息的选项的流程图。例如,方法600中的一些或全部可以在诸如图1所示的一个或多个客户端设备120,122,124或126的系统上实施。在一些实施方式中,方法600可以是在如图1所示的服务器系统102上实施,和/或在服务器系统和客户端系统两者上实施。在所描述的示例中,实施系统包括一个或多个处理器或处理电路,以及一个或多个存储设备。在一些实施方式中,一个或多个客户端和/或服务器的不同组件可以执行方法600的不同块或其他部分。
在块602中,检查是否已获得用户同意(例如,用户许可)以在方法600的实现中使用用户数据。例如,用户数据可包括用户偏好、用户生物信息、用户特征(身份、姓名、年龄、性别、职业等)、用户的社交网络和联系人信息、社交和其他类型的行为和活动、用户创建或提交的意见、内容、评级、用户的当前位置、历史用户数据等。这里描述的方法的一个或多个块可以在一些实施方式中使用这样的用户数据。如果已经从可以在方法600中使用用户数据的相关用户获得用户同意,则在块604中,确定可以使用在用户数据的情况下,实现本文的方法的块,如针对那些块描述的,并且该方法继续到块610。如果尚未获得用户同意,则在块606中确定将在不使用用户数据的情况下实现块,并且该方法继续到块610。在一些实施方式中,如果尚未获得用户同意,则不执行方法600的其余部分。
在块610中,呼叫请求从呼叫者设备发送到一个或多个受话者设备。在本说明书中,为了说明的目的,通常描述单个受话者,尽管在一些实施方式中可以提供多个受话者。在各种实施方式中,呼叫者设备可以是能够进行呼叫的任何设备,例如,语音呼叫和/或视频呼叫,并且可以是如本文其他实施方式中所描述的设备,例如针对图3的。呼叫者用户(例如,“呼叫者”)可以选择或在受话者设备上以其他方式输入特定受话者的标识符,并且响应于该输入发送呼叫请求,例如,类似于在各种实施方式中,受话者的所选标识符可以与呼叫请求被发送到的一个或多个受话者设备相关联。在一些实施方式中,呼叫请求可以被发送到与标识符相关联的每个受话者设备。在一些实施方式中,呼叫请求可以被发送到与标识符相关联的受话者设备的子集。在一些实施方式中,呼叫请求可以被发送到单个受话者设备。该方法继续到块612。
在块612中,从受话者设备接收确认。例如,可以从一个或多个受话者设备接收确认。在各种实施方式中,确认可以指示一个或多个受话者设备可通过网络到达,例如,不建立呼叫的非接受确认。在各种实施方式中,可以从受话者设备接收确认,而无需来自受话者的任何动作或输入。例如,受话者设备可以自动将确认发送回呼叫者设备。在接收到接受之前,呼叫者设备从受话者设备接收到确认,例如,在呼叫者和受话者设备之间尚未建立允许呼叫者和受话者通信的视频呼叫。该方法继续到块614。
在块614中,在呼叫者设备和从其接收确认的受话者设备之间建立连接。例如,可以通过网络建立连接。在各种实施方式中,建立连接可以通过任何合适的协议来执行,例如会话发起协议(SIP)或其他协议。在一些实施方式中,可以自动选择媒体编码技术,例如,音频/视频编码技术可以被自动选择用于连接。例如,可以基于各种参数来选择媒体编码技术,包括但不限于连接带宽、延迟和分组丢失度量、呼叫者设备和受话者设备的处理器能力等。例如,媒体编码对于连接上较低带宽量的技术可以将视频数据和/或音频数据压缩到比连接上存在更高带宽量的程度更大的程度。在一些实施方式中,可以建立连接,使得呼叫者设备可以将媒体数据(例如,视频和/或音频数据)发送到受话者设备,但是受话者设备不能将媒体数据发送到呼叫者设备。在一些实施方式中,可以建立连接,使得呼叫者设备和受话者设备可以经由网络彼此传输媒体。在呼叫者设备接收受话者设备的接受之前建立连接,例如,在呼叫者和受话者设备之间尚未建立允许呼叫者和受话者进行通信的呼叫。
在一些实施方式中,在用户同意使用这样的数据的情况下,可以确定受话者标识符是否先前存储在与呼叫者(或呼叫者设备)相关联的呼叫相关存储中,以便确定是否传输呼叫者预览数据,例如,类似于针对图3的块316所描述的。
在一些实施方式中,可以基于多个因素中的一个或多个来确定呼叫者情境,例如,类似于针对图3的块318所描述的。该方法继续到块616。
在块616中,选择呼叫者预览数据用于传输到受话者设备,并且在一些实施方式中,所选择的呼叫者预览数据可以例如由呼叫者设备或其他连接的设备存储。例如,可以从一个或多个可用数据段中选择呼叫者预览数据段。在各种实施方式中,可用数据段可以包括视频数据段(视频),其可以包括或不包括音频数据,和/或可用数据段可以包括不包括视频数据的音频数据段。视频可包括要顺序显示的多个图像(例如,帧),例如,每帧的特定帧速率或显示持续时间,或以变化的帧速率或显示持续时间。
在一些示例中,可用数据段可以包括,例如,在当前时间,或在呼叫请求时或之后实时捕获的一个或多个数据段(或数据馈送)。例如,一个或多个视频可以由呼叫者设备的一个或多个摄像机、或者与呼叫者设备通信的一个或多个摄像机实时捕获。例如,如果呼叫者设备是具有一个前置摄像头和一个后置摄像头的移动电话或其他移动设备,则可用视频可以包括由前置摄像头和后置摄像头中的每一个捕获的视频。与受话者设备通信的其他摄像机还可以或另外捕获一个或多个实时可用视频。从摄像机捕获的实时视频帧可以存储在可用存储器上,例如呼叫者设备的存储器或其他存储设备,或呼叫者设备可访问的其他存储器。在一些实施方式中,例如,在与呼叫者设备通信的摄像机捕获视频时,在捕获这样的视频之前,或者在已经捕获了这样的视频之后,呼叫者设备可以提供指示的输出(例如,显示的通知、音频输出等),指示所捕获的视频的至少一部分存储在呼叫者设备上,和/或指示所存储的捕获的视频或其一部分可用于作为呼叫消息被传输(或将被传输)。例如,如果如下所述发生超时,和/或如果另一预定义条件适用(例如,如果呼叫者选择发送这样的呼叫消息而不管超时),则存储的捕获视频可用作呼叫消息进行传输。
从一个或多个摄像机捕获实时视频允许一个或多个呼叫者预览视频被创建,其描绘呼叫者的当前周围环境,和/或呈现呼叫者。例如,呼叫者可以将自己以及背景环境、存在的其他人和/或存在于呼叫者的实际位置中的其他特征呈现在由呼叫者设备上的前置摄像头捕获的呼叫者预览视频中。
在另一个示例中,可用数据段可以包括先前由呼叫者设备的一个或多个摄像机捕获并存储在呼叫者设备上的视频或图像。在其他示例中,可用数据段可以包括存储在呼叫者设备上的任何视频(或图像、动画、电影图等)。例如,可用视频可以包括多个存储的图像或从先前视频呼叫记录的视频,或者部分从先前呼叫记录的视频(例如,动作剪辑)。在另一示例中,如果呼叫者设备耦合到配套设备,例如包括摄像机的可穿戴设备,诸如眼镜、智能手表、可穿戴摄像机等,则可用视频可包括由配套设备捕获的视频。在又一示例中,可用数据段可包括存量视频,例如,与呼叫者设备的位置相关联的视频。在一些示例中,存量视频可以从呼叫者的存储器和/或互联网上的公共源获得,例如,网站、网络服务、地图服务等。可以选择与呼叫者情境相关的存量视频。在另一示例中,可用视频可以包括应用视频,例如,从呼叫者设备上当前正在执行的一个或多个应用的输出捕获的屏幕捕获视频,或者先前已在呼叫者设备或不同设备上运行并存储在可用的存储器的屏幕捕获视频。这些视频可以类似于上面针对图3描述的那些视频。
一个或多个可用数据段可以是由呼叫者设备的一个或多个麦克风和/或配套设备的麦克风实时捕获的音频段。在另一示例中,可用音频段可以包括先前由呼叫者设备捕获并存储在呼叫者设备上的音频段。呼叫者设备可以输出与上述视频数据类似的用于捕获的音频数据的指示。在另一示例中,可用音频段可包括存储在呼叫者设备上的任何音频段,例如,从一个或多个先前呼叫记录的存储音频段。可用的音频段可以包括存量音频段(例如,音乐曲目、演讲等)。
在一些实施方式中,可以基于呼叫者情境来选择呼叫者预览数据段,例如,类似于上面针对图3所描述的,例如,使用一个或多个选择分数和情境因素(呼叫者位置、当前时间、发生的事件、视觉视频内容和/或特征、音频内容、用户偏好、摄像机或呼叫者设备的空间定向等)。在一些实施方式中,可以基于对呼叫者设备的用户输入来选择呼叫者预览数据段,其有效地选择数据段,例如,来自呼叫者的数据段。虽然用一些示例描述了数据段的选择,但是可以基于呼叫者的情境选择任何单个数据段或数据段的组合作为呼叫者预览数据段。
在一些实施方式中,在作为呼叫者预览数据传输到受话者设备之前,选择的数据段(例如,存储的视频或音频段、部分所选视频或音频段、从呼叫者设备上的摄像机和/或麦克风选择的实时视频和/或音频等)可以由呼叫者设备输出。例如,该输出可以充当预览以允许呼叫者在受话者接受呼叫之前体验(例如,查看和/或听到)已被自动选择作为呼叫者预览数据被发送到受话者的一个或多个数据段。呼叫者可以被提供接受和覆盖所选数据段的选项,例如,在显示器上查看所选数据段的至少一部分之后。
在一些实施方式中,可以确定所选择的呼叫者预览数据是否被过滤,并且如果过滤,则可以将过滤器应用于所选择的呼叫者预览数据,类似于上面参考图3描述的。也可以类似于图3所描述的那样接收用于禁用过滤器的输入。在一些实施方式中,可以在传输之前或期间以其他方式处理所选择的呼叫者预览数据,类似于上面针对图3所描述的。例如,可以生成呼叫者预览数据中与音频和/或视觉特征相对应的文本,并将其包含在呼叫者预览数据中,呼叫者预览数据可以被编码和/或压缩,呼叫者输入(例如,文本)可以被添加到呼叫者预览数据等。该方法继续到块618。
在块618中,可以将呼叫者预览数据发送到从其接收到确认的受话者设备。预览数据可以通过与受话者设备建立的连接传输,例如,使用为连接选择的媒体编码技术。在一些实施方式中,呼叫者预览数据可以被过滤,例如,视频数据被过滤,以省略来自传输的伴随音频数据,使得受话者设备不会输出与呼叫者预览视频相关联的音频。在一些实施方式中,音频预览数据可以包含在传输的视频预览数据中。在一些实施方式中,如果所传输的预览数据是具有定义的结尾或结束的数据段(例如,在前一次捕获或存储的存量视频或音频段或其他视频或音频段)并且数据段的结尾被发送,则呼叫者预览数据可以循环一次或多次,例如,使得预览数据从其开始再次发送(例如,直到如下所述发生超时,呼叫请求被受话者接受,或呼叫在接受之前被终止)。在一些实施方式中,具有定义结尾的呼叫者预览数据可以被发送一次或者特定次数,然后预览数据不再被发送。在一些实施方式中,在所选择的呼叫者预览数据段已到达其结尾之后,可以发送一个或多个不同的默认呼叫者预览数据段,和/或一个或多个连续的呼叫者预览数据段可以从可用数据段中随机选择,或者可以使用如本文所述的一个或多个分数和/或情境因素从可用段中选择。该方法继续到块620。
在块620中,检查呼叫请求是否已发生超时。在一些实施方式中,在从呼叫请求的传输开始经过预定义的时间段之后(例如,呼叫请求时间段),可能发生超时,其中在这段时间内没有收到来自受话者设备的呼叫请求(或其他响应)的接受。例如,在预定义的时间段到期时发生超时而没有收到对呼叫的接受。
在一些实施方式中,可以在块620中检查附加和/或其他条件以确定呼叫请求是否到期或取消(例如,之后呼叫者设备不再等待来自受话者设备的呼叫请求的接受)。例如,呼叫者可以手动取消呼叫请求,例如,通过向呼叫者设备提供适当的输入来挂断呼叫。在另外的示例中,这样的条件可以包括呼叫者设备从不同的设备接收不同的呼叫请求(例如,在呼叫者的呼叫请求到期之前的特定时间量之后),在呼叫者设备处接收消息(例如,电子邮件消息、文本消息、聊天消息等),在呼叫者设备上发生的事件(例如,在呼叫者设备上的正在运行的应用中)等。
如果在块620中检查到已发生超时,则该方法继续到块626,如下所述。如果在块620中检查未发生超时,则该方法继续到块622。
在块622中,尚未发生超时,并且检查是否已经从受话者设备接收到呼叫的接受。如果尚未接收到接受,则该方法继续到块618以继续传输呼叫者预览数据,例如,在呼叫者预览音频段中传输下一数据和/或呼叫者预览视频的下一个或多个帧。例如,如果传输预览数据是包括由一个或多个摄像机捕获的帧的实时视频,则传输由摄像机捕获的接下来的一个或多个帧(如果合适,伴随有实时音频数据)。如果预览数据是实时音频(例如,没有视频数据),则传输由麦克风捕获的下一个音频数据。如果在块622中已接收到接受,则该方法继续到块624。
在块624中,已经通过建立的连接从受话者设备接收到呼叫请求的接受,并且建立并进行呼叫,使得呼叫者和受话者可以通过该连接进行呼叫。例如,接受可以是标准信号或根据正在使用的呼叫通信协议的数据,其指示受话者已接受呼叫并且现在可以在呼叫者设备和受话者设备之间建立呼叫通信。在一些示例中,响应于受话者向受话者设备提供输入以应答呼叫来接收接受,例如通过选择接听受话者设备的显示器上显示的呼叫的选项来应答呼叫,通过语音命令等。基于受话者提供输入以应答呼叫,呼叫请求的接受可以由受话者设备发送到呼叫者设备。在呼叫者预览数据的至少一部分被发送到受话者设备之后,可以接收呼叫请求的接受。例如,如果呼叫者预览数据是具有定义长度的存储视频,则在接收呼叫的接受之前传输该视频的至少一部分。
在各种实施方式中,在接受之前发送的呼叫者预览数据可能需要或可能不需要被改变为在建立的呼叫期间从呼叫者传输的不同数据,例如,不同的数据段或数据馈送。例如,在某些情况下,例如,如果在受话者接受之前发送的呼叫者预览数据是由呼叫者设备的摄像机和/或麦克风捕获的呼叫者的实时视频和/或音频数据,则呼叫者预览数据的源和内容在收到呼叫请求的接受时不需要改变(例如,除非预览数据被过滤),并且在一些示例中,实时捕获的数据可以在建立的呼叫期间继续发送,类似于它在受话者接受之前在呼叫者预览数据中传输。在一些示例情况下,例如,如果在受话者接受之前呼叫者预览数据是不描绘呼叫者的实时视频数据(例如,由呼叫者设备的后置摄像头捕获)或者是先前捕获或记录的视频或音频段,然后呼叫者预览数据可以在接收到呼叫请求的接受之后改变为描述呼叫者的实时数据馈送,例如被受话者设备的前置摄像头或其他摄像机捕获,或者麦克风捕捉呼叫者的声音。在一些实施方式中,如果在预览视频数据的传输期间禁用了音频传输,则在受到受话者接受呼叫请求后,可以启用来自呼叫者设备的音频传输,使得受话者设备可以输出收到音频数据。在一些实施方式中,例如,当呼叫者预览数据被过滤并且先前未接收到禁用过滤器的输入时,可以响应于接收到呼叫请求的接受而禁用过滤器。
响应于在块620中确定的发生超时来执行块626。在块626中,可以终止呼叫请求。例如,在一些实施方式中,呼叫者设备可以向受话者设备发送特定信号(例如,命令)以指示呼叫请求被终止。在一些实施方式中,如果呼叫请求被连续或周期性地传输到受话者设备,则块626停止呼叫请求被进一步传输。在一些实施方式中,尽管呼叫请求被终止,但是在呼叫者设备和受话者设备之间的建立的连接(例如,来自块612)可以保持,例如,不终止。在其他实施方式中,建立的连接与呼叫请求一同终止。在其他实施方式中,直到呼叫消息被发送,或者在呼叫消息被发送之后(例如,在块634中),呼叫请求才被终止。该方法继续到块628。
在块628中,可以使呼叫者设备显示消息界面。例如,消息界面可以显示在呼叫者设备的显示屏上。在一些实施方式中,消息界面可以包括接收用户输入的一个或多个控件,例如触摸屏上显示的按钮、滑块或图标,可以由呼叫者选择和/或操纵的呼叫者设备的物理按钮和其他控件等。在一些实施方式中,消息界面可以包括可以由呼叫者选择的选项(例如,用户界面元素),以使呼叫者预览数据的至少一部分被用作呼叫消息。呼叫消息(例如,语音邮件、视频邮件、语音消息、视频消息等)是这样的消息:被传输到受话者设备,以存储在受话者设备上并且可以由受话者访问,并由受话者在稍后时间选择的受话者设备(或其他设备)输出,例如,允许受话者在呼叫之外的时间访问和体验该消息。例如,呼叫消息可以是视频消息,其是视频并且可以包括音频数据。由受话者设备存储(或存储在受话者设备可访问的存储器中)的接收的视频消息可在任何时间由受话者命令以显示在受话者设备的显示器上,在受话者设备上运行的查看应用中。在一些实施方式中,呼叫消息可以是不包括视频数据的音频消息,并且可以由受话者设备的扬声器输出。在一些实施方式中,呼叫消息可以是或包括文本消息、图像、电影图或其他类型的内容数据。
消息界面还可以包括一个或多个控件,该控件使得用户输入能够选择由呼叫者设备输出呼叫者预览数据的全部或部分,例如,在从呼叫者预览数据创建呼叫消息之前。所选择的部分可以由呼叫者设备输出作为一种形式的对呼叫者的预览。例如,消息界面中的视图区域可以以选定帧速率显示呼叫者预览视频数据的所选部分,或者将视频数据的特定选定帧显示为静止图像。部分呼叫者预览音频数据可以由呼叫者设备的一个或多个扬声器选择和输出。
在一些实施方式中,消息界面可以显示呼叫者的自动建议、通知或请求,以允许呼叫者预览数据作为呼叫消息被提供给受话者设备。例如,该请求可以包括一个或多个可选选项,包括将整个呼叫者预览数据作为呼叫消息传输到受话者设备的选项,将呼叫者预览数据的一部分作为呼叫消息传输到受话者设备(例如,自动选择呼叫者预览数据的一部分或允许用户编辑或选择呼叫者预览数据的一部分来发送)的选项,或者不将呼叫者预览数据作为呼叫消息发送(例如,移除或删除呼叫者预览数据)的选项。还可以显示其他选项。例如,可以显示选项以使呼叫者预览数据的音频数据被转录成如本文所述的文本。
用户可以选择这些选项中的一个(或多个,如果适用的话)。下面参考图8A-8E描述消息界面的一些示例。在各种实施方式中,消息界面可以在呼叫请求终止之后立即显示,在超时发生之后立即显示,和/或在呼叫请求终止和/或超时之后的一段时间后显示。例如,在一些实施方式中,除了超时之外,响应于满足一个或多个预定义条件,可以显示消息界面,例如,呼叫者设备位于一组特定位置(例如,家中),在特定时间(例如,一天中的某个时间,或一周或一个月的某一天等)等的集合中之一。在一些实施方式中,可以响应于一个或多个预定义条件而显示消息界面而不用发生超时,例如,在潜在超时之前的时间。
在一些实施方式中,可以检查其他预定义条件以提供如上所述的消息界面(例如,自动建议或通知)。例如,如果已经获得用户同意,则系统(例如,呼叫者设备或与呼叫者设备通信的其他系统)可以处理呼叫者预览数据的帧以确定特定视觉内容是否存在或在呼叫者预览数据的一个或多个帧中被描绘,和/或确定呼叫者预览数据中是否缺少特定的视觉内容。在一些示例中,特定视觉内容可以是特定类型的图像特征,诸如面部、面部微笑、挥手的人、特定对象等(或者预定义条件可以是不存在这样的特征)。例如,如果已经获得用户同意,则可以使用图像分析、检测和识别技术来检测呼叫者预览数据中的这些特征。在一些实施方式中,如果已经获得用户同意,则系统可以使用音频分析、检测和识别技术(例如,语音识别技术)来检测呼叫者预览数据的音频数据中的特征。在预定义条件的附加示例中,如果已经从呼叫者和受话者获得用户同意以检查这种关系,则系统可以检查呼叫者和受话者之间是否存在特定社交关系。例如,可以提供特定的社交关系,其中呼叫者和受话者标识存储在存储指示呼叫者和受话者之间的社交关系的连接信息的数据库中。在一些示例中,如果呼叫者和受话者的标识存储在呼叫者设备和受话者设备上存储的彼此的联系人列表内,呼叫者和受话者标识存储在社交网络服务中存储的彼此创建的用户群组中,和/或呼叫者和受话者被指示先前已使用社交网络服务或设备进行通信,则可以指示社交关系。该方法继续到块630。
在块630中,检查是否在呼叫消息中使用呼叫者预览数据的内容的至少一部分来发送到受话者设备,例如,呼叫消息是否将基于呼叫者预览数据。例如,呼叫者可能已经在块628的消息界面中选择了一个选项,或者从显示的通知或请求中选择了一个选项,指示是否将呼叫者预览数据用于呼叫消息。在一些实施方式中,与呼叫者相关联的存储的用户偏好可以指示呼叫请求之后的呼叫消息是否应该基于在呼叫请求期间传输的呼叫者预览数据。在一些实施方式中,可以基于呼叫者的用户偏好来选择呼叫者预览数据以用于呼叫消息,其指示特定条件,如果存在,则自动允许呼叫者预览数据用于呼叫消息。例如,与呼叫者相关联的存储的用户偏好可以指示在呼叫者预览数据中检测到的特定类型的内容(其中,如果已经获得用户同意,则呼叫者设备可以检测内容的类型,使用图像对象检测或视频数据中的视觉内容的识别技术和/或音频数据中的音频内容的语音检测或识别技术),呼叫请求的受话者的识别、呼叫者预览数据中描绘或描述的人(例如呼叫者)的识别、呼叫者设备在发送呼叫消息时的位置(例如,在家中、在工作中等)、发送呼叫消息的时间或当前时间和/或其他可接受的情境可以自动使用呼叫者预览数据的至少一部分内容用于呼叫消息。这样的用户偏好还可以基于类似于如上所述的一个或多个条件来指示是否将呼叫消息发送到受话者设备,如偏好中所指示的。
如果在块630中确定使用呼叫者预览数据用于呼叫消息,则该方法继续到块632,其中可以使用呼叫者设备输出、编辑和/或处理呼叫者预览数据,如果适用的话。在一些实施方式中或者情况下,在块618中被发送(或部分发送)到受话者设备的呼叫者预览数据可以整体用作呼叫消息,例如,不对呼叫者预览数据进行任何编辑或改变。例如,呼叫者可能已经在块628的消息界面中选择了一个选项,以使用整个传输的呼叫者预览数据作为整个呼叫消息。
在一些实施方式或者情况下,呼叫者预览数据可以在被传输或被指定为呼叫消息之前以一种或多种方式输出(例如,显示或播放)和/或编辑。例如,可以基于呼叫者输入(例如,通过呼叫者设备的输入设备,例如触摸屏、指示设备、麦克风和语音命令等)来编辑呼叫者预览视频数据,使得视频预览数据的一个或多个帧被移除或更改,以便编辑的呼叫者预览数据形成呼叫消息。在一些示例中,可以改变呼叫者预览视频的一个或多个帧的像素的一个或多个值(例如,颜色),例如,以添加一个或多个特殊效果、视觉特征、亮度变化、对比度等。在一些实施方式中,可以将一个或多个帧添加到呼叫者预览视频以形成呼叫消息。例如,呼叫者可以选择不同的可访问视频和/或该视频的帧以添加到呼叫者预览视频,例如,在呼叫者预览视频中的呼叫者指定的位置。
在一些示例中,呼叫者提供用户输入以在消息界面中进行选择,以编辑呼叫者预览数据。例如,编辑界面可以显示在呼叫者设备上以显示传输的呼叫者预览视频的帧,并且包括接受呼叫者编辑输入的各种视频编辑控件。例如,控件可以包括播放按钮,快进和快退控件,用于控制播放速度的滑块,用于选择呼叫者预览视频的特定帧以显示、移除、在视频内移动、复制等的控件。例如,可以移除呼叫者预览视频的帧以缩短呼叫者预览视频,移除不描绘特定特征的帧,移除所有视频帧,使得仅呼叫者预览视频的音频数据保留等。此外,可以提供控件以修改呼叫者预览视频的所选帧,例如,改变呼叫者预览视频的帧的像素的颜色、亮度、对比度或其他视觉特性,将像素或图像插入呼叫者预览视频的帧中,通过绘图工具更改像素,将文本添加到呼叫者预览视频的特定帧,添加特殊效果(例如,转换为黑白或棕褐色调,添加烟花,表情符号等)等等。在一些示例中,在呼叫者的界面中编辑输入可以选择呼叫者预览视频的起始点,使得在视频的帧序列中的起始点之前的部分呼叫者预览视频被删除或以其他方式从该视频中排除。编辑输入可以选择呼叫者预览视频的结束点,使得视频帧序列中的结束点之后的视频部分被删除或以其他方式从呼叫者预览视频中排除。
可以提供类似的控制来编辑部分音频数据。例如,编辑界面可以提供控件以编辑不包括视频数据的传输的音频预览数据。在一些实施方式中,编辑界面提供控件以允许呼叫者移除伴随预览视频数据的全部或部分音频数据,将音频数据添加到预览视频数据,或者改变与视频预览数据相关联的现有音频数据。例如,可以将语音音频数据添加到呼叫者预览视频(或其他视频)以形成呼叫消息,例如,用麦克风记录呼叫者的语音并添加记录的音频数据,或者向视频数据添加其他存储的音频数据。在一些实施方式中,编辑界面可以提供输入选项以使呼叫者能够输入将与呼叫消息中的呼叫者预览数据组合的一个或多个新文本消息(例如,通过键盘输入、通过语音识别从语音转录等)。编辑界面还可以在从呼叫者预览数据的音频数据中的语音生成的呼叫消息(例如,转录)中显示文本(例如,如本文所述),并且可以使呼叫者输入能够删除、添加到和/或修改部分这些文本,和/或将部分所生成的文本分离成单独的文本消息,这些文本消息被配置为由受话者设备显示为离散文本消息。
在一些实施方式中,系统可以对呼叫者预览数据进行自动修改或编辑(例如,通过呼叫者设备和/或其他连接的系统)。在一些实施方式中,这样的编辑可以基于如上所述的用户偏好。在一些实施方式中,这样的编辑可以基于呼叫者预览数据中的视觉内容。例如,系统可以对呼叫者预览视频执行图像分析,以检测视频帧中的特定视觉特征。在一些示例中,视觉特征可以包括对象(人、汽车、房屋、桌子、球、蛋糕等)、地形特征(例如、山、湖、天空、日落等)等。在一些实施方式中,系统可以自动移除不描绘特定视觉特征的呼叫者预览视频的一个或多个帧。例如,视觉特征可以包括呼叫者,或者诸如面部、笑脸、人等的特征类型。在一些实施方式中,系统可以自动移除描绘特定视觉特征的一个或多个帧,例如,用户偏好中指示的特征。
在一些实施方式中,系统可以自动移除具有特定视觉特征的呼叫者预览视频的帧。例如,视觉质量差的帧可以是曝光不足或过度曝光、模糊、具有噪声等的帧,如基于将这些视觉特性与这些特征的特定预定阈值进行比较所确定的。在一些实施方式中,系统可以从呼叫者预览视频中自动提取或保存音频数据,并丢弃呼叫者预览视频的视频帧,使得呼叫消息形成为没有视频数据的呼叫者预览视频的音频数据(或音频数据的一部分)。例如,用户偏好或呼叫者选择可能已指示此类编辑。在另一示例中,系统可以自动保持来自呼叫者预览视频的视频帧,并丢弃呼叫者预览视频的相关音频数据,使得呼叫消息形成为没有相关的音频数据的呼叫者预览视频的视频帧(或者帧的一部分)。
在一些实施方式中,这种自动编辑可以基于呼叫者预览数据中的音频内容。例如,系统可以对呼叫者预览音频数据执行音频数据分析,以检测部分音频数据中的特定音频特征。在一些示例中,如果已经获得用户同意,则音频特征可以包括声音(例如,车辆、音乐、鸟、铃、儿童、割草机等)、嗓音或语音或其他声音。在一些实施方式中,系统可以自动移除不展现出特定音频特征的呼叫者预览音频数据的一个或多个部分(和/或与那些部分相关联的呼叫者预览数据的视频数据)。在一些实施方式中,系统可以自动移除展现出特定音频特征的音频数据(和/或相关联的视频数据)的一个或多个部分,例如用户偏好或其他存储的参考数据中指示的特征。
在另一示例中,系统(例如,呼叫者设备或与呼叫者设备通信的设备,例如,服务器系统)可以自动检测音频数据中的语音或一个或多个声音,例如,不包括视频数据的音频预览数据和/或包括在呼叫者预览视频数据中或伴随呼叫者预览视频数据的音频数据(例如,与呼叫者预览视频的特定帧同步的音频数据)。系统可以自动从预览音频数据段中移除音频数据,其中移除的音频数据不输出呼叫者的语音或声音,或者可以移除音频数据段中质量差的部分,例如,有音频噪声的噪音,具有低于特定阈值幅度的低音频幅度等。
在一些实施方式中,系统可以使用一种或多种语音识别技术(如果已经获得用户同意)来识别由检测到的声音所说出的单词,并且可以生成和向呼叫者预览视频数据插入文本(例如,文本字幕或子标题),以可在与音频数据中的语音输出(例如,语音作品)相关联的相应帧中显示,所述音频数据对应于文本,例如,转录来自语音的文本。例如,可以在要显示的视频中提供与在音频数据中输出相应单词时同步的文本。在一些示例中,可以插入添加的文本来代替移除的音频数据,或者可以添加该添加的文本以补充音频数据。在一些实施方式中,如果呼叫者预览数据是音频数据,并且没有音频数据在呼叫消息中传输(例如,由于受话者偏好等),则呼叫者预览数据被忽略并且在由系统创建的文本消息或类似电子消息中提供相应的生成文本。一些实施方式可以在呼叫者设备上输出选项,以允许呼叫者选择是否在呼叫消息中提供转录和/或一个或多个文本消息。
在一些实施方式中,如果已经获得用户同意以允许检测和识别内容特征,系统(例如,呼叫者设备或与呼叫者设备通信的其他系统)可以自动验证通过要被用作呼叫消息的呼叫者预览数据的一部分展示的(例如,由呼叫消息展示,如果已经创建)一个或多个特定内容特征(例如,视觉特征和/或音频特征)。例如,系统可以验证呼叫者预览数据的一部分中的一个或多个帧中的像素是否描绘了一个或多个特定视觉特征。例如,视觉特征可以包括如上所述的示例。类似地,系统可以验证呼叫者预览数据的一部分中的音频数据的一个或多个部分是否展现一个或多个特定音频特征,例如本文所述的音频特征。如果验证特定内容特征包括在部分呼叫者预览数据中,则该方法继续到块634以将呼叫者预览数据的一部分作为呼叫消息传输。如果未验证特定特征被包括在部分呼叫者预览数据中,则在一些实施方式中,在块634中不传输呼叫者预览数据。一些实施方式可以从呼叫者设备输出通知,该通知指示防止传输的条件。
在一些实施方式中,如果已经获得用户同意,系统(例如,呼叫者设备、受话者设备或其他连接系统)可以在呼叫者预览数据的视频数据或图像数据上使用一种或多种图像识别技术,以识别图像特征(例如,对象、景观特征等),并基于图像特征自动生成文本。例如,生成的文本可以包括基于呼叫者预览数据的视觉内容的描述。在一些示例中,生成的文本可以包括先前与呼叫者预览视频数据或图像数据的识别的视觉特征相关联的单词和短语。在一些实施方式中,生成的文本可以包括与生成的文本和检测到的图像特征相关的主题、类别等,如从可获取的信息源(例如,词典、辞典、知识库图等)确定的。例如,对于描绘日落的场景,生成的文本描述可以包括“日落”、“晚上”、“美丽”等。在一些实施方式中,机器学习技术可用于基于呼叫者预览数据中的视觉特征和/或音频特征生成文本。
在一些实施方式中,呼叫者预览数据可由系统(例如,呼叫者设备或其他连接的系统)处理,以创建或形成呼叫消息。例如,可以使用一种或多种编码或压缩技术对呼叫者预览数据进行编码,以压缩呼叫者预览数据,使得它占用较少的存储空间。在一些实施方式中,压缩量可以基于各种因素来确定,包括,例如,编码处理所使用的时间量、系统在执行编码时使用的功率、编码后呼叫消息的质量以及压缩数据的大小。在一些实施方式中,编码的呼叫消息可以基于并且不同于先前传输的呼叫者预览数据(其也可以已被编码)。例如,编码的呼叫消息可以被编码为具有与编码的呼叫者预览数据不同的大小和/或质量,即使整个呼叫者预览数据被用作整个呼叫消息。例如,可以使用与用于呼叫消息的编码技术不同的编码技术来对用于传输的呼叫者预览数据进行编码。在一些情况下,由于可能限制了呼叫者预览数据的质量(例如,传输的呼叫者预览视频数据可能已经丢失了帧,低质量压缩等。由于到受话者设备的连接用于实时双向呼叫通信,并且因此呼叫者预览数据的带宽较小)的呼叫者预览数据传输过程中的带宽限制和其他限制,呼叫消息的质量可以大于呼叫者预览数据的质量(例如,具有更多视频帧,和/或具有更大像素细节或分辨率的帧,具有更大的采样率等)。
例如,呼叫消息中的呼叫者预览数据可以与传输的呼叫者预览数据中的音频数据和视频数据具有不同的分辨率。在不同分辨率的一些示例中,对于视频数据,呼叫消息可以处于不同的像素分辨率、颜色深度、压缩比等,并且对于音频数据,呼叫消息可以处于不同的压缩比、比特率、保真度等。在一些示例中,呼叫消息可以是呼叫者预览数据的一个版本,例如,呼叫消息包括音频和视频中的至少一个的不同分辨率版本,例如,提供相同视频帧和/或音频数据作为呼叫者预览数据并且以与呼叫者预览数据不同(例如,更高)的分辨率的数据。呼叫消息还可以或替代地是呼叫者预览数据的一个或多个其他类型的版本,例如,具有从呼叫者预览数据裁剪的帧(使得帧的一些部分被移除),与呼叫者预览数据相比不同的帧数量或者数据量,与呼叫者预览数据相比具有额外(例如,内插)帧的数据,与呼叫者预览数据相比具有模糊、锐化、纹理或其他过滤或视觉修改和效果等。该方法继续到块634。
在一些实施方式中,可以在从呼叫者接收输入之后执行上述一种或多种自动处理技术。例如,呼叫者可以确认或选择要执行的特定处理。
在块634中,将信息传输到受话者设备,该信息指示呼叫消息存储在受话者设备上。在一些实施方式中,所传输的信息包括呼叫者预览数据的至少一部分,其作为呼叫消息被传输到受话者设备。在一些示例中,例如,在呼叫者预览数据包括视频数据的情况下,呼叫消息包括视频数据的多个部分,例如,呼叫者预览视频的多个帧(例如,至少一些帧,或者至少一部分帧)。例如,在一些实施方式或情况中,整个传输的呼叫者预览数据可以作为呼叫消息传输,例如,如果呼叫者或系统没有编辑呼叫者预览数据。在一些情况下,呼叫者预览数据可能已经被修改以生成呼叫消息,例如,呼叫者预览数据的一个或多个帧或其他部分被删除,在呼叫者预览数据的序列内移动,被修改,和/或添加到呼叫者预览数据的附加帧或其他部分。在一些实施方式中,视频呼叫消息可以包括与呼叫者预览视频数据相关联的音频数据,即使呼叫者预览视频数据在先前在块618中传输时不包括相关联的音频数据,例如,由于被过滤。在一些实施方式中,音频数据可能已从呼叫者预览数据中移除以创建呼叫消息。在一些实施方式中,呼叫消息可以是文本消息,其包括与在呼叫者预览音频数据中检测到的语音(例如,使用语音识别)相对应的文本,并且不包括音频数据。在一些实施方式中,呼叫消息可以包括音频数据和/或视频数据,并且还包括一个或多个文本消息,一个或多个文本消息具有与呼叫者预览音频数据中的语音相关联(例如,对应于或由其生成)的文本。在一些实施方式中,呼叫消息可以是或包括一个或多个文本消息,该文本消息包括与呼叫者预览视频数据中检测到的一个或多个视觉特征相关联(例如,从其生成)的文本(例如,经用户同意使用图像识别技术)和/或用户(例如,呼叫者)提供的文本。
在一些实施方式中,呼叫消息可以通过呼叫者设备和受话者设备之间的建立的连接进行传输。在一些实施方式中,可以在呼叫者设备和受话者设备之间建立新连接,并且呼叫消息可以通过新连接传输到受话者设备。
在一些实施方式中,受话者设备接收所传输的呼叫消息并将呼叫消息数据存储在可访问的存储器中。受话者可以在期望的时间访问所存储的呼叫消息,例如,引起呼叫消息的显示或其他输出,如针对图7更详细地描述的。
在一些实施方式中,传输到受话者设备的信息不包括呼叫者预览数据,例如,使得在块634中呼叫者预览数据不被传输到受话者设备。例如,呼叫消息可以至少部分地从先前在块618中传输到受话者设备的呼叫者预览数据形成。在一些示例中,所传输的信息包括从呼叫者设备传输到受话者设备的命令,其指示受话者设备使用之前传输并存储在受话者设备上的呼叫者预览数据的至少一部分内容,例如在块618中,作为呼叫消息。在一些示例中,如果已经获得受话者的同意(例如,在受话者用户偏好中),则在接收该传输时由受话者设备存储在块618中传输的整个呼叫者预览数据。通过将要访问的呼叫者预览数据存储在受话者设备上,例如,在受话者设备的呼叫消息界面中,存储的呼叫者预览数据可以被指定为呼叫消息。例如,这可以节省在块634中重新传输呼叫消息所需的处理资源。在一些示例中,先前在块618中传输的部分呼叫者预览数据被命令指定为呼叫消息。例如,所传输的命令可以指定先前传输的呼叫者预览数据的一个或多个特定部分被保留或存储在受话者设备上作为呼叫消息,其中没有这样指定的先前传输的呼叫者预览数据的其他部分可以从受话者设备存储中移除或删除。
在一些示例中,系统可以确定是否在块634中传输呼叫者预览数据的至少一部分作为呼叫消息,和/或是否命令/指定先前在块618中传输的至少一部分数据作为呼叫消息。例如,响应于先前传输的呼叫者预览数据不完整或具有低于特定阈值的一个或多个特性,系统可以决定在块634中传输呼叫者预览数据,并且将在块634被传输的呼叫者预览数据更完整和/或具有满足阈值的特性。例如,先前传输的呼叫者预览数据可能具有低于阈值的特性,诸如较低的像素分辨率、丢失帧(例如,被跳过的)、颜色噪声或音频噪声,或具有低于阈值的其他特性,例如,由于传输需求。在另一示例中,如果先前传输的呼叫者预览数据例如由于传输限制,在没有其一些部分(例如,帧)的情况下被传输,和/或如果在没有其相关联的音频数据或视频数据的情况下传输,和/或如果这样的音频数据或视频数据被受话者设备或呼叫者设备过滤等,则先前传输的呼叫者预览数据可能是不完整的。例如,在一些实施方式中或情况下,设备设置或用户偏好可能不允许在块618中传输的呼叫者预览数据已经在呼叫者预览阶段存储在呼叫者设备上(例如,在块620的超时之前)。然而,这样的设置或偏好可以允许在块634中传输的呼叫消息存储在受话者设备上,在这种情况下,呼叫者预览数据可以在块634中传输。在一些实施方式中,在块634中传输部分呼叫者预览数据作为附加数据被传输,而不是传输所有呼叫者预览数据,并且附加数据与先前传输的呼叫者预览数据组合,如下所述。在一些实施方式中,系统可以基于在呼叫者设备上显示的界面中接收的呼叫者偏好、受话者偏好和/或用户输入来确定是否在块634中传输呼叫者预览数据(例如,响应于呼叫者设备上显示的选项或提示,呼叫者选择对于块634传输呼叫者预览数据)。
在一些实施方式中,呼叫者设备可以发送命令以使用先前传输和存储的呼叫者预览数据的至少一部分内容用于呼叫消息,并且还可以发送附加数据,该附加数据被指示与受话者设备上存储的呼叫者预览数据的内容相结合,以创建呼叫消息。例如,附加数据可以是要插在呼叫者预览数据的开始处的数据(例如,在呼叫者预览视频序列的开始处插入的帧或在呼叫者预览音频序列的开始处插入的音频数据),附加到呼叫者预览数据的末尾(例如,在视频序列和/或音频预览数据的末尾)的数据,插入呼叫者预览数据的顺序数据中的特定指定点(例如,在视频和/或音频预览数据的中间)的数据等。例如,在一些示例中,附加数据可以包括最初在提供的呼叫者预览数据中捕获的但在块618中没有传输的部分(例如,视频帧,音频数据等),例如,由于传输需求或其他限制,或者在块618中以改变的形式(例如,具有降低的像素分辨率、过滤等)传输的部分,在另外的示例中,附加数据可以包括来自先前呼叫者预览数据或呼叫消息、存储的存量视频或音频段或呼叫者设备可访问的其他存储数据的数据。在一些示例中,附加数据可以包括在超时发生之后(或在呼叫请求之前)由呼叫者输入的数据,例如,在块628的消息界面或编辑界面中提供的输入,例如,类似于下面针对块638所描述的。在一些实施方式中,如果部分呼叫者预览数据先前被传输到受话者设备并且在超时发生之前未传输附加(例如,剩余)部分,则呼叫者设备可以向受话者设备传输呼叫者预览数据的附加部分,以与之前在受话者设备上传输和存储的呼叫者预览数据部分相结合,从而形成一个完整的呼叫消息。
如果在块630中确定呼叫者预览数据不用于形成呼叫消息,则该方法继续到块636,在块636中,检查呼叫者是否已提供指示捕获或记录新消息作为呼叫消息的输入。例如,呼叫者可以在所显示的消息界面中提供输入和/或响应于要创建的新消息的显示的请求。在一些实施方式中,存储的用户偏好可以指示呼叫者想要创建新消息。例如,存储的偏好可以指定一个或多个条件,如果满足这些条件,则自动指示要为呼叫消息创建新消息。例如,如果已经获得用户同意,则条件可以包括在呼叫者预览数据中检测到或未检测到的特定类型的内容。在一些示例中,如果系统未检测到在呼叫者预览视频数据中可视描绘的呼叫者和/或在呼叫者预览音频数据中检测到呼叫者的声音(或者未检测到呼叫者以视频数据或音频数据的至少某个百分比或阈值数量存在),则偏好可以指令要创建新的呼叫消息。条件的另一个示例可以包括呼叫者设备的地理位置(例如,不在工作地点),允许自动指示呼叫消息的记录。可以类似地检查其他条件,如上面针对块630的检查所述。
如果在块636中确定要接收、捕获或记录新的呼叫消息,则该方法继续到块638,其中由受话者设备(或其他连接的设备)接收和/或记录呼叫消息,并且呼叫消息被传输到受话者设备。例如,呼叫消息可以是视频消息,其中呼叫者设备的一个或多个摄像机捕获视频帧以形成视频消息。在一些示例中,呼叫消息可以捕获描绘呼叫者、摄像机周围的环境等的帧。在一些实施方式中,从受话者设备的多个摄像机(例如,前置和后置摄像头)捕获的视频可以组合成单个呼叫消息。在一些实施方式中,呼叫消息可以包括在当前时间之前记录的一个或多个存储的视频或存量视频,例如,存储在呼叫者设备或其他可访问存储器上并且由呼叫者从显示的菜单中或者通过输入命令选择的视频。在一些实施方式中,可以显示编辑界面以允许呼叫者在传输之前编辑新的视频消息,类似于针对块632所描述的。一些实施方式可以允许呼叫者记录新的不包括视频的音频呼叫消息,或选择存储在可访问存储中的存储的音频呼叫消息。一些实施方式可以允许呼叫者输入包括在呼叫消息中的新文本数据,例如一个或多个文本消息,类似于如上所述。
可以使用建立的连接或者通过创建的新连接将呼叫消息传输到受话者设备,类似于针对块634所描述的。传输的呼叫消息可以被存储在受话者设备或其他存储器或设备上并由受话者设备或其他存储器或设备输出,例如,响应受话者输入。
在一些实施方式中,如果在块636中确定不记录新的呼叫消息,则该方法继续到块640,其中可以从呼叫者设备的存储器中移除呼叫者预览数据。例如,呼叫者预览数据可能已经存储在块616中,并且在确定呼叫者预览数据不被作为呼叫消息发送之后,可以从存储中移除呼叫者预览数据或标记为移除。在一些实施方式中,呼叫者预览数据未被移除。例如,用户偏好、默认偏好或其他设置可能导致呼叫者预览数据保持存储较长时间。这种存储可以继续,直到一个或多个条件发生,之后,可以自动地删除呼叫者预览数据。例如,条件可以包括呼叫者提供指示删除呼叫者预览数据的输入,自呼叫者预览数据的创建已经到期的时限等。
在一些实施方式中,呼叫者预览数据可以由呼叫者存储和指定,或者被自动指定,以用作未来呼叫的呼叫消息或者作为用于未来呼叫的呼叫消息的选项被呈现。在一个示例中,在使用消息界面查看或听到呼叫预览数据之后,例如通过选择菜单选项或向呼叫者设备输入适当的命令,呼叫者可以将呼叫者预览数据指定为“喜欢的”呼叫消息。然后存储指定的呼叫者预览数据以供稍后访问,例如,存储在呼叫者设备存储器或其他可访问存储器中。无论呼叫者预览数据是否被传输为当前呼叫的呼叫消息,都可以执行该指定。在稍后的未来呼叫中,可以将指定的呼叫者预览数据的标识作为选项呈现给呼叫者,例如,在块630确定当前呼叫者预览数据不用于呼叫消息之后。如果呼叫者选择该选项,则使指定的呼叫者预览数据作为该呼叫的呼叫消息传输到受话者设备。在一些实施方式中,指定的呼叫者预览数据可以在未来呼叫中作为呼叫消息被自动传输。在一些实施方式中,先前由呼叫者指定的多个存储的呼叫者预览数据段可以例如由呼叫者设备呈现给呼叫者,并且呼叫者可以选择一个(或多个)指定的呼叫者预览数据段作为用于特定呼叫的呼叫消息被传输。
在一些实施方式中,可以将文本转录添加到呼叫者预览视频数据和/或视频呼叫消息。例如,如果已经获得用户同意,则可以利用声音识别软件来识别呼叫者或呼叫者预览视频数据中描绘的其他人所说的话,如伴随预览视频数据的音频数据中所示。系统可以将对应于所说出的单词的文本添加到呼叫者预览数据和/或呼叫消息的视频帧中。例如,可以在视频帧的底部、顶部或其他区域附近添加文本。这允许,例如,在受话者设备处接收呼叫者预览视频,并且在受话者设备处输出受话者观看的视频中所说的不具有相关音频的词。类似地,可以将与呼叫消息中所说的作品相对应的文本添加到呼叫消息的视频帧中。如果文本已被添加到呼叫者预览视频数据,则基于该预览视频数据的呼叫消息可包括例如相同的文本。这在受话者不希望输出在接受呼叫之前传输的呼叫者预览视频数据的情况下是有用的,并且还有助于鼓励呼叫者在传输实时呼叫者预览视频数据时说话,知道他们的话将被受话者观察为文本转录。
在一些实施方式中,呼叫者可以在选择或创建呼叫者预览数据之前、期间或之后指定是否基于该呼叫者预览数据提供呼叫消息。例如,在块610中传输呼叫请求之前,呼叫者设备可以显示对呼叫者的请求,以指示如果受话者不接受呼叫请求,用于当前呼叫的呼叫者预览数据是否应该被用作呼叫消息。如果呼叫者提供指示呼叫者预览数据应被用作呼叫消息的输入,则呼叫者设备可以在块620超时之后,向受话者设备发送(或命令)呼叫者预览数据作为呼叫消息,例如,自动或附加呼叫者确认。否则,系统可以在超时后请求进一步的呼叫者输入。
图7是示出根据一些实施方式的用于受话者设备接收呼叫消息的示例方法700的流程图。例如,方法700中的一些或全部可以在诸如图1所示的一个或多个客户端设备120,122,124或126的系统上实施。在一些实施方式中,方法700可以是在如图1所示的服务器系统102上实施,和/或在服务器系统和客户端系统两者上实施。在所描述的示例中,实施的系统包括一个或多个处理器或处理电路,以及一个或多个存储设备。在一些实施方式中,一个或多个客户端和/或服务器的不同组件可以执行方法700的不同块或其他部分。
在块702中,检查是否已获得用户同意(例如,用户许可)以在方法700的实施中使用用户数据。例如,用户数据可包括用户偏好、用户生物信息、用户特征(身份、姓名、年龄、性别、职业等)、用户的社交网络和联系人信息、社交和其他类型的行为和活动、用户创建或提交的意见、内容、评级、用户的当前位置、历史用户数据等。这里描述的方法的一个或多个块可以在一些实施方式中使用这样的用户数据。如果已经从在方法700中可以使用用户数据的相关用户获得用户同意,则在块704中,确定可以在使用用户数据的情况下实施本文方法的块,如针对那些块所描述的,并且该方法继续到块710。如果尚未获得用户同意,则在块706中确定将在不使用用户数据的情况下实施块,并且该方法继续到块710。在一些实施方式中,如果尚未获得用户同意,则不执行方法700的其余部分。
在块708中,受话者设备输出从呼叫者设备接收的呼叫者预览数据。例如,呼叫者预览数据可以通过建立的连接用呼叫者设备接收,其中连接的建立类似于上面参考图3和4所述的。例如,可以在类似于图4的块410-416的块之后(图7中未示出)执行块708(例如,接收呼叫请求,发送确认,建立连接,确定呼叫者预览在受话者设备等处被启用)。在一些示例中,呼叫者预览数据可以显示在受话者设备的显示器上,例如显示屏。例如,可以显示视频、图像、文本和/或图形数据(例如,线条图、图标等)。在一些示例中,呼叫者预览数据的音频数据可以由受话者设备的扬声器输出(例如,播放)。在一些示例中,可以输出音频数据来代替受话者设备的铃声或者添加到受话者设备的铃声中,类似于针对图4所描述的。在一些示例中,呼叫者预览数据的音频数据可以通过受话者设备转录成文本(或从呼叫者设备收到生成的文本)。这样的文本可以显示在受话者设备上,例如,在呼叫者预览音频数据和/或受话者设备的铃声被从受话者设备输出为音频的同时或之后。在一些实施方式中,呼叫者预览音频数据生成的文本可以由受话者设备显示为一个或多个文本消息,例如,显示在受话者设备提供的文本消息界面或聊天界面中。在一些实施方式中,可以显示接收或生成的文本(例如,一个或多个文本消息、文本字幕等),该文本包括由系统基于如上所述的呼叫者预览数据的视觉内容而自动生成的描述(例如,受话者设备、呼叫者设备和/或其他系统)。在一些示例中,可以输出呼叫者预览数据中包括的呼叫者输入数据。
在一些实施方式中,呼叫者预览数据可以被过滤,类似于如上所述。例如,视频过滤器可能先前已应用或当前应用于受话者设备上的输出。在另一个示例中,音频过滤器可以使最初包括在呼叫者预览数据中的音频数据不被传输,或者使接收的音频数据被静音并且不被受话者设备输出。音频数据输出的偏好、设置和/或选项可以如本文中的各种实施方式所述类似地使用。在一些实施方式中,受话者设备(或与受话者设备通信的设备)可以确定、插入和/或显示与音频数据中存在的检测到的语音相对应的文本,例如,在静音音频输出时,类似地如本文中的各种实施方式所述。在一些实施方式中,显示专用的用户界面和/或视觉指示符,以指示呼叫者预览数据是在呼叫建立之前正在被接收的预览数据,类似于上面参考图4所述。
在块710中,可以终止来自呼叫者设备的呼叫请求。这可能是由于多种原因造成的。例如,如参考图6所描述的,由于时间段期满而可能已经发生超时,其中受话者设备在该时间段内没有接受呼叫,或者呼叫者可能已选择取消呼叫请求等。在一些实施方式中,直到受话者设备接收到呼叫消息呼叫请求才会终止,例如,在下面的块712中。该方法继续到块712。
在块712中,受话者设备接收呼叫消息。例如,如上面参考图6所述,呼叫消息可以是基于在块708中由受话者设备先前接收的呼叫者预览数据的消息。在一些示例中,如果呼叫者预览数据包括视频数据,则呼叫消息可以包括来自呼叫者预览视频数据(和/或图像数据)的一个或多个帧。如果呼叫者预览数据包括音频数据,则呼叫消息可以包括呼叫者预览音频数据的一个或多个部分。在一些实施方式中,呼叫者预览数据可以包括文本。在一些实施方式中,呼叫消息可以是或包括新记录的消息或数据、先前记录的消息或数据、仅音频消息等。呼叫消息可以包括呼叫者输入,例如,文本数据、图形数据等。可以通过呼叫者预览数据使用的相同连接或通过与呼叫者设备建立的新连接来接收呼叫消息。在一些实施方式中,受话者设备可以对呼叫消息进行处理,例如,过滤、编码或解码、压缩或解压缩,在呼叫消息中基于的音频数据和/或视频/图像数据自动生成和添加文本等,类似于以上所述。该方法继续到块714。
在块714中,受话者设备将所接收的呼叫消息存储在可访问存储器中。例如,呼叫消息可以存储在受话者设备的本地存储器(例如,内存等)中,和/或存储在受话者设备可访问的不同设备的远程存储器中,例如通过通信网络。该方法继续到块716。
在块716中,检查是否已从受话者用户接收到输入以引起所存储的呼叫消息的输出。例如,受话者可以在显示的用户界面中输入命令,选择菜单选项或其他界面元素,或者提供其他输入以选择存储的呼叫消息以供受话者设备或由不同设备输出。在一些示例中,可以在用户界面中显示接收和存储的呼叫消息的标识符列表,以指示已经由受话者接收的呼叫消息。各种实施方式可以仅提供未读呼叫消息(例如,受话者先前查看的呼叫消息)的标识符列表,或者未读和已读呼叫消息两者的。在一些实施方式中,呼叫消息可以在其他形式的消息中引用或选择,例如,在文本消息或聊天界面中显示的并提供到呼叫消息的链接的文本消息、电子邮件收件箱中显示的电子邮件消息、显示在聊天界面的即时消息等。
如果在块716中没有接收到用于输出呼叫消息的受话者输入,则该方法继续到块718以将所接收的呼叫消息保持在存储中。该方法继续到块716以等待受话者输入。在一些实施方式中,可以提供时间限制,在受话者不访问或查看呼叫消息的预定时间段过去后,使得在预定的时间段过去之后呼叫消息被自动移除、删除、移动到另一个位置等。
如果在块716中接收到命令呼叫消息的输出的受话者输入,则该方法继续到块720,其中呼叫消息被输出。例如,如果呼叫消息是视频消息,则它可以在显示器上的用户界面中显示,例如,通过在受话者设备或其他设备上运行的查看应用或其他应用。视频消息还可以包括作为音频输出提供的音频数据,例如,从提供输出的设备(例如,受话者设备)的扬声器或其他音频输出组件输出。如果呼叫消息仅包括音频数据,则可以通过扬声器输出音频。用户界面可以包括用于控制呼叫消息的输出的回放控件、用于控制要输出的消息部分的滑动条、快进和快退控件等。在一些实施方式中,受话者设备可以确定、插入和/或显示与音频数据中存在的检测到的语音相对应的文本,例如,在静音音频输出时,类似于上面针对呼叫者设备所描述的。该方法继续到块722。
在块722中,在一些实施方式中,呼叫消息在被输出之后由系统自动从存储器中移除。例如,从存储器中删除呼叫消息或由块720中提供输出的系统标记为删除。在一些实施方式中,呼叫消息被保留并且仅在接收到指示这种删除的用户输入时才被删除。
图8A-8D是示出根据一些实施方式的示出本文描述的一个或多个特征的用户界面的示例表示的示意图。图8A-8D各自示出了在呼叫者设备的显示器上显示的示例用户界面,例如显示屏。为简洁起见,图8A-8D中省略了一些参考数字。用户界面中显示的各种元素的用户选择可以通过各种类型的用户输入中的任何一种来进行,例如,触摸屏上的触摸输入、说出由麦克风感测的语音命令、操纵物理输入设备(鼠标、操纵杆、触控板等)、通过以受话者设备的运动传感器检测的预定方式移动受话者设备来输入动作命令等。
在图8A中,示出了第一示例用户界面800。如图8A所示,在该示例中,在呼叫者设备已经将视频呼叫的呼叫请求和呼叫者预览视频传输给受话者设备(例如,如图3的块310-330或图6的块610-618所描述的)之后,在呼叫者设备的用户界面800中显示通知802,并且来自受话者设备的呼叫请求的接受尚未被呼叫者设备接收到。例如,在呼叫请求发生超时之后显示通知802,这样与呼叫请求相关联的预定义时间段已经到期。在此示例中,呼叫请求也已终止。
通知802可以包括受话者无法接通所请求的呼叫或者没有应答呼叫的指示801。通知还可以包括一个或多个显示的元素或选项,该元素或选项使呼叫者能够执行一个或多个动作。在该示例中,选项804显示在呼叫者设备上的通知802中,呼叫者可以通过用户输入来选择其中一个选项。例如,选项806提供将呼叫消息发送到受话者的选项,其中呼叫消息基于先前发送到受话者设备的呼叫者预览视频。选项808提供记录要发送到受话者设备的新呼叫消息。选项810提供了不向受话者设备发送呼叫消息的选项。在一些实施方式中,可以选择两个或更多个选项。例如,一些实施方式可以允许呼叫者选择选项806和选项808,以使得基于呼叫者预览视频的呼叫消息和新记录的消息都被传输到受话者设备。
在图8B中,在用户界面800中示出了用户确认发送的示例实施方式,例如,在呼叫者已经选择了图8A中所示的选项806以基于呼叫者预览视频向受话者发送呼叫消息之后,可以显示该用户界面800。在该示例中,在将呼叫者预览视频作为呼叫消息发送之前,在用户界面800中显示提示811,其请求呼叫者指示是否将呼叫者预览视频作为呼叫消息发送或者是否在作为呼叫消息发送它之前编辑呼叫者预览视频。例如,可以显示选项812,如果呼叫者通过用户输入选择该选项,则使呼叫者设备显示编辑界面,其中呼叫者预览视频被选择用于在编辑界面中编辑。下面描述这种界面的示例。编辑界面允许呼叫者在呼叫者预览视频作为呼叫消息发送到受话者设备之前编辑呼叫者预览视频。可以显示另一个选项814,如果呼叫者通过用户输入选择该选项,则使得整个呼叫者预览视频作为呼叫消息被发送。
在图8C中,示出了用户界面800的发送功能的示例实施方式,其可以响应于图8B中所示的呼叫者选择选项814而被显示以发送呼叫者预览视频。在该示例中,整个呼叫者预览视频作为呼叫消息被发送到受话者设备,并且这由用户界面800中显示的通知816指示。例如,呼叫者设备可访问的存储在存储器中的呼叫者预览视频通过与受话者设备建立的连接被发送。在一些实施方式中,可以响应于图8A所示的用户选择选项806直接显示图8C的用户界面,以将基于呼叫者预览视频的呼叫消息发送给受话者,例如,使得图8B的选项被省略,并且整个呼叫者预览视频被自动作为呼叫消息发送到受话者设备。
在图8D中,示出了用户界面800的记录功能的示例实施方式,其可以例如在呼叫者已经选择图8A中所示的记录要发送到受话者设备的新的呼叫消息的选项808之后显示。在该示例中,已经启动视频消息的记录,其中显示窗口820并且示出视频的当前帧,该视频是由呼叫者设备的摄像头捕获的实时视频。例如,呼叫者设备的前置摄像头可以指向呼叫者,并记录呼叫者讲话,如图所示。在另一示例中,视频可以是由呼叫者设备的后置摄像头捕获的实时视频,其捕获位于后置摄像头的视野中的场景。在又一个示例中,所记录的视频可以是预先存储的或预先录制的视频,其从呼叫者设备可访问的存储器中检索,并且在视频的帧序列中的指定位置或点处添加记录的视频帧(例如,在存储的视频的开头、最后等)。呼叫者设备的一个或多个麦克风可以将声音记录为伴随所捕获的视频的音频数据,例如,呼叫者的语音,呼叫者设备的环境中的声音等。
呼叫者可以选择“取消”控件822,以取消呼叫消息并删除已经记录在消息中的任何帧,或者可以选择“完成”控件824以停止记录并保持记录的消息。在一些实施方式中,在选择“完成”控件824之后,可以显示允许用户编辑新记录的消息的选项。一些实施方式可以允许呼叫者记录仅音频消息,和/或从摄像机捕获一个或多个图像(例如,单个快照)以包括在呼叫消息中。
在图8E中,示出了用户界面800的编辑界面850的示例实施方式。在一些示例中,编辑界面850可以响应于如图8B所示的基于呼叫者预览视频选择选项806以发送呼叫消息之后,呼叫者选择编辑呼叫者预览视频而显示。在一些示例中,编辑界面850可以响应于呼叫者选择编辑新记录的消息而显示,例如,如图8D所示。编辑界面850包括用于显示编辑的视频的当前帧或图像的显示窗口852,并且可以包括显示和/或编辑视频的帧的一个或多个控件。例如,控件854可以控制显示窗口852中的视频的回放,并且控件856可以控制帧的选择、删除和添加。在一些示例中,可以显示附加菜单和选择,允许呼叫者选择要添加的帧或特效,要改变的颜色、亮度、对比度,要在视频内移动的帧,或者对所选视频的其他改变。可以显示发送控件858以使得编辑的视频能够响应于接收到呼叫者对控件858的选择而作为呼叫消息被发送到受话者设备。
在图9A中,示出了用户界面900的示例实施方式,其可以通过响应于受话者设备从呼叫者设备接收呼叫消息显示受话者设备来显示。在该示例中,用户界面900显示通知902,其指示已经接收到呼叫消息并且识别发送呼叫消息的呼叫者。在先前传输呼叫者预览数据之后,呼叫者设备可以通过建立的连接来传输呼叫消息。或者,呼叫消息可能是由先前接收的呼叫消息形成的,例如,基于受话者设备本地可用的数据,该数据先前从呼叫者设备的呼叫者预览视频中接收。如本文对图8A-8E所述,该示例中的呼叫消息可以包括视频数据(例如,从呼叫者设备捕获的实时视频获得的视频帧)和/或其他存储的视频、音频数据、文本数据等。
在该示例中,在通知中显示播放控件904,如果受话者选择该播放控件,则使得所接收的呼叫消息被显示在例如视频窗口或其他界面区域中。在该示例中,播放控件904使得在不播放任何伴随的音频数据的情况下显示视频数据,例如,作为默认。在一些实施方式中,播放控件906可以显示在用户界面900中,当通过用户输入选择时,使得所接收的视频呼叫消息被显示,并且任何相关联的音频数据也由受话者设备输出,例如,由受话者设备的扬声器输出。可以选择关闭按钮907以从显示器移除通知902。
在图9B中,示出了用户界面900中的呼叫消息回放的示例实施方式。在该示例中,用户已经选择了图9A中所示的播放控件904,并且在用户界面900中播放了相应的视频呼叫消息908。在该示例中,呼叫消息描绘了呼叫者。来自任何相关联的音频数据的音频不基于所选择的控件904输出。在一些实施方式中,音频选项消息909可以显示在用户界面900中,以向受话者提供选择是否要输出关联的音频数据的选项。例如,受话者可以选择选项911中的一个来启用或禁用音频输出。在一些实施方式中,例如,通过受话者设备或其他设备,受话者偏好可以确定是否输出呼叫消息中的音频数据和/或音频数据中的语音是否被自动转录为文本,其中文本可以在用户界面900中与其相关音频定时对应地显示。
在图9C中,示出了呼叫消息列表和用户界面900的选择功能的示例实施方式,其可以由受话者设备或其他设备显示。在该示例中,显示的列表910示出了受话者设备已经接收的呼叫消息的标识(或者由受话者的帐户接收,其可以在多个受话者设备中的任何一个上查看)。例如,列出了呼叫消息912,其对应于图9A的通知902中所示的呼叫消息。在该示例中,还显示接收呼叫消息912的时间,并且提供了播放控件914,以使得如果受话者选择了播放控件914,则呼叫消息912被输出。在该示例中,其他呼叫消息也显示在列表910中,包括从不同呼叫者接收的语音邮件消息916,其是仅音频呼叫消息。在一些实施方式中,受话者尚未播放列表910中识别的呼叫消息,并且一旦它们被至少部分播放就从列表910中移除。在一些实施方式中,呼叫消息在被受话者播放之后从存储器中移除(例如,删除)。一些实施方式可以显示所有接收到的呼叫消息是否播放,例如,其中显示的指示可以指示受话者已经播放了列表910中的哪个呼叫消息。
在一些示例中,显示区域920可以显示在用户界面900中,其包括受话者的地址簿或联系人列表中的用户的标识。已经离开未决或未播放的呼叫消息的用户可以在显示区域920中显示指示符。例如,用户标识符922标识了提供呼叫消息912的用户并且可以与视频消息图标924一起显示,视频消息图标924指示了相关用户已经留下了受话者尚未播放的呼叫消息。类似地,用户标识符926与语音邮件图标928一起显示,以指示相关用户已提供语音邮件消息916(没有视频数据的音频消息)。
在图9D中,示出了用户界面900中的特定用户的呼叫消息列表的示例实施方式,其可以由受话者设备或其他设备显示。在该示例中,受话者已经选择了图9C的用户标识符922,并且作为响应,显示了从与用户标识符922相关联的用户接收的呼叫消息930的列表。受话者可以使用控件932来选择播放或删除任何列出的消息。在该示例中,呼叫消息930的列表包括视频消息和文本消息,并且还可以包括音频消息和其他类型的消息。
在适当的情况下,本文公开的方法中描述的块和操作可以以与所示出或描述的顺序不同的顺序执行,和/或与其他块或操作同时(部分地或完全地)执行。可以对一部分数据(例如,对于另一部分数据)执行一些块,然后稍后再次执行。并非所有描述的块和操作都需要以各种实施方式执行。在一些实施方式中,可以在方法中多次,以不同顺序和/或在不同时间执行块和操作。
在一些实施方式中,一些或所有方法可以在诸如图1所示的一个或多个客户端设备120,122,124或126的系统上实施。在一些实施方式中,这里描述的一个或多个方法可以例如图1所示的服务器系统102上实施,和/或在服务器系统和客户端系统两者上实施。在一些实施方式中,一个或多个服务器和/或客户端的不同组件可以执行不同的块、操作或方法的其他部分。
图10是可用于实现本文描述的一些实施方式的示例设备1000的框图。在一个示例中,设备1000可以用于实施实施服务器设备的计算机设备,例如图1的服务器设备104,并且执行本文描述的适当的方法实施方式或其部分。设备1000可以是任何合适的计算机系统、服务器或其他电子或硬件设备。例如,设备1000可以是大型计算机、台式计算机、工作站、便携式计算机或电子设备(便携式设备、手机、智能手机、平板电脑、电视、电视机顶盒、个人数字助理(PDA)、媒体播放器、游戏设备、可穿戴设备、遥控器、手持游戏或设备控制器等)。
本文描述的一个或多个方法可以在能够在任何类型的计算设备上运行的独立程序、在网页浏览器上运行的程序、在移动计算设备(例如、手机、智能手机、平板电脑、可穿戴设备(手表、臂章、珠宝、头饰、护目镜、眼镜等)、膝上型电脑等)上运行的移动应用(“app”)中运行。在一个示例中,可以使用客户端/服务器架构,例如,移动计算设备(作为客户端设备)将用户输入数据发送到服务器设备并且从服务器接收用于输出(例如,用于显示)的最终输出数据。在另一示例中,所有计算可以在移动计算设备上的移动app(和/或其他app)内执行。在另一示例中,计算可以在移动计算设备和一个或多个服务器设备之间分开。
在一些实施方式中,设备1000包括处理器1002,存储器1004和输入/输出(I/O)接口1006。处理器1002可以是一个或多个处理器和/或处理电路,以执行程序代码和控制器1000的基本操作。“处理器”包括处理数据,信号或其他信息的任何合适的硬件和/或软件系统、机制或组件。处理器可以包括具有通用中央处理单元(CPU),多个处理单元,用于实现功能的专用电路或其他系统的系统。处理不必限于特定的地理位置,或具有时间限制。例如,处理器可以“实时”、“离线”,以“批处理模式”等执行其功能。部分处理可以在不同的时间和在不同的位置,通过不同的(或相同的)处理系统执行。计算机可以是与存储器通信的任何处理器。
在设备1000中提供存储器1004以供处理器1002访问,并且存储器1004可以是任何合适的处理器可读存储介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、电可擦除只读存储器(EEPROM)、闪存等,适用于存储由处理器执行的指令,并且与处理器1002分开设置和/或与处理器1002集成。存储器1004可以存储由处理器1002在服务器设备1000上操作的软件,包括操作系统1008和一个或多个应用1010,诸如数据显示引擎、网络托管引擎、图像显示引擎、通知引擎、社交网络引擎等。在一些实施方式中,应用1010可以包括使得处理器1002能够执行本文描述的功能的指令,例如,图2-4和6-7中的一些或全部方法。例如,应用1010可以包括一个或多个呼叫或通信应用1012,包括能够在其他设备上发送呼叫,在设备1000的显示设备和/或其他输出设备上显示或回放呼叫者预览数据的程序,将呼叫消息发送到其他设备,并在设备1000的显示设备上回放呼叫消息。例如,通信程序可响应于用户输入提供显示的用户界面,以显示可选择的选项/控件、用户联系人,并根据所选选项传达数据。其他应用或引擎1014也可以或替代地包括在应用1010中,例如,图像编辑应用、媒体显示应用、网页托管引擎或应用等。本文公开的一种或多种方法可以在若干环境和平台中操作,例如,作为可以在任何类型的计算设备上运行的独立计算机程序,作为具有网页的web应用,作为在移动计算设备上运行的移动应用(“app”)等。
存储器1004中的任何软件可替代地存储在任何其他合适的存储位置或计算机可读介质上。此外,存储器1004(和/或其他连接的存储设备)可以存储图像、图像元数据(包括视频呼叫设置等)、联系信息、数据结构和其他信息、用户偏好和/或其他本文描述的特征中使用的指令和数据。存储器1004和任何其他类型的存储(磁盘、光盘、磁带或其他有形介质)可以被认为是“存储器”或“存储设备”。
I/O接口1006可以提供使服务器设备1000与其他系统和设备接合的功能。例如,网络通信设备、存储设备(例如,存储器和/或数据库106)以及输入/输出设备可以通过I/O接口1006进行通信。在一些实施方式中,I/O接口可以连接到接口设备。例如输入设备(键盘、指点设备、触摸屏、麦克风、摄像机、扫描仪等)和/或输出设备(显示设备、扬声器设备、打印机、电机等)。显示设备1020是可用于显示内容的输出设备的一个示例,其中内容例如,如本文所述的输出应用的用户界面中提供的一个或多个视频、图像、动画、联系信息等。显示设备1020可以经由本地连接(例如,显示总线)和/或经由网络连接而连接到设备1000,并且可以是任何合适的显示设备,下面描述其一些示例。
为了便于说明,图10为处理器1002,存储器1004,I/O接口1006和软件块1008和1010中的每一个示出了一个块。这些块可以表示一个或多个处理器或处理电路、操作系统、存储器、I/O接口、应用和/或软件模块。在其他实施方式中,服务器设备1000可以不具有所示的所有组件和/或可以具有包括其他类型的元件的其他元件来代替或补充本文所示的那些元件。虽然系统102被描述为执行如本文一些实施方式中所述的块和操作,但系统102或类似系统的任何合适的组件或组件的组合或与这种系统相关联的任何合适的处理器或处理器可执行块和操作描述。
客户端设备还可以与本文描述的一个或多个特征一起实施和/或使用,例如,图1中所示的客户端设备120-126。示例客户端设备可以包括与设备1000类似的一些组件,例如处理器1002,存储器1004和I/O接口1006。适用于客户端设备的操作系统、软件和应用可以在存储器中提供并由处理器使用,例如视频呼叫软件、客户群通信应用软件等。客户端设备的I/O接口可以连接到网络通信设备,也可以连接到输入和输出设备,例如用于捕获声音的麦克风、用于感测地理位置的GPS传感器、用于捕获图像或视频的一个或多个摄像机、用于输出音频的音频扬声器设备、与设备1000通信的一个或多个配线设备、用于输出图像或视频的显示设备和/或其他输入和输出设备。例如,显示设备1020可以连接到或包含在设备1000中,以显示如本文所述的图像,其中这样的设备可以包括任何合适的显示设备,诸如LCD、LED或等离子显示屏、CRT、电视、监视器、触摸屏、3D显示屏、投影仪或其他视觉显示设备。一些实施方式可以提供音频输出设备,例如说出文本的语音输出或合成。
本文描述的方法可以通过可以在计算机上执行的计算机程序指令或代码来实施。例如,代码可以由一个或多个数字处理器(例如,微处理器或其他处理电路)来实施,并且可以存储在包括非暂时性计算机可读介质(例如,存储介质)的计算机程序产品上,例如磁、光、电磁或半导体存储介质,包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、闪存、刚性磁盘、光盘、固态存储器驱动器等。程序指令也可以包含在电子信号中,并作为电子信号提供,例如以服务器上的软件即服务(SaaS)形式(例如,分布式系统和/或云计算系统)。或者,一种或多种方法可以用硬件(逻辑门等)或硬件和软件的组合来实施。示例硬件可以是可编程处理器(例如,现场可编程门阵列(FPGA),复杂可编程逻辑器件)、通用处理器、图形处理器、专用集成电路(ASIC)等。一个或多个方法可以作为在系统上运行的应用的一部分或组件来执行,或者作为与其他应用和操作系统一起运行的应用或软件来执行。
尽管已经针对其特定实施方式描述了说明书,但是这些特定实施方式仅仅是说明性的而非限制性的。示例中说明的概念可以应用于其他示例和实施方式。
在本文讨论的某些实施方式可以收集或使用关于用户的个人信息(例如,用户数据,关于用户的社交网络的信息,用户的位置和时间,用户的生物识别信息,用户的活动和人口统计信息)的情况下,用户具有一个或多个机会来控制是否收集个人信息,是否存储个人信息,是否使用个人信息,以及如何收集关于用户的信息,存储和使用。也就是说,这里讨论的系统和方法仅在接收到相关用户的明确授权时才收集,存储和/或使用用户个人信息。另外,某些数据可以在存储或使用之前以一种或多种方式处理,以便移除个人可识别信息。作为一个示例,可以处理用户的身份,以便不能确定个人可识别信息。作为另一示例,用户的地理位置可以被推广到更大的区域,使得不能确定用户的特定位置。
注意,本公开中描述的功能块、操作、特征、方法、设备和系统可以被集成或分成本领域技术人员了解的系统、设备和功能块的不同组合。可以使用任何合适的编程语言和编程技术来实现特定实施方式的例程。可以采用不同的编程技术,例如程序的或面向对象的。例程可以在单个处理设备或多个处理器上运行。尽管可以以特定顺序呈现步骤、操作或计算,但是可以在不同的特定实施方式中改变顺序。在一些实施方式中,可以同时执行在本说明书中作为顺序示出的多个步骤或操作。

Claims (21)

1.一种方法,其特征在于,包括:
呼叫者设备向一个或多个受话者设备发送呼叫请求;
在接收到所述至少一个受话者设备对所述呼叫请求的接受之前,建立与所述一个或多个受话者设备中的至少一个受话者设备的连接;
通过所述连接,向所述至少一个受话者设备传输呼叫者预览数据的至少一部分,其中,在接收到所述呼叫请求的所述接受之前,传输所述呼叫者预览数据的所述至少一部分;和
响应于确定所述呼叫者预览数据的所述至少一部分通过所述连接传输了特定时间段而未接收到所述呼叫请求的所述接受的情况,向所述至少一个受话者设备传输呼叫消息和信息中的至少一个,所述信息指令将呼叫消息存储在所述至少一个受话者设备上,
其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。
2.如权利要求1所述的方法,其特征在于,还包括将所述呼叫者预览数据存储在所述呼叫者设备的存储器中,其中向所述至少一个受话者设备传输所述信息包括通过所述连接向所述至少一个受话者设备传输所述呼叫消息。
3.如权利要求2所述的方法,其特征在于,包括在所述呼叫消息中的所述呼叫者预览数据的所述至少一部分是与传输的所述呼叫者预览数据的所述至少一部分中的音频数据和视频数据不同分辨率的音频数据和视频数据中的至少一个。
4.如权利要求1所述的方法,其特征在于,向所述至少一个受话者设备传输所述信息包括通过所述连接向所述至少一个受话者设备传输命令,其中,所述命令指令所述至少一个受话者设备将传输的所述呼叫者预览数据的所述至少一部分存储为所述呼叫消息。
5.如权利要求4所述的方法,其特征在于,还包括向所述至少一个受话者设备传输所述呼叫者预览数据的附加部分,其中所述命令指令所述至少一个受话者设备将所述附加部分与所述传输的所述呼叫者预览数据的所述至少一部分相结合,作为所述呼叫消息。
6.如权利要求1所述的方法,其特征在于,所述呼叫者预览数据包括以下之一:
不包括音频数据的视频数据;
不包括视频数据的音频数据;和
视频数据和音频数据两者。
7.如权利要求1所述的方法,其特征在于,所述呼叫消息包括文本消息,所述文本消息包括与包括在所述呼叫者预览数据中的音频数据相关联的文本。
8.如权利要求1所述的方法,其特征在于,还包括:
使与所述呼叫者设备通信的一个或多个摄像机捕获所述呼叫者预览数据;和
在所述呼叫者设备上提供自动建议,请求用户输入,所述用户输入指示是否将所述呼叫者预览数据作为所述呼叫消息提供,其中响应于以下中的至少一个提供所述自动建议:
确定所述呼叫者预览数据中的一个或多个部分中包括一个或多个特定内容特征;和
确定所述呼叫者设备的呼叫者用户与所述至少一个受话者设备的至少一个受话者用户之间存在特定的社交关系。
9.如权利要求2所述的方法,其特征在于,还包括:
从所述呼叫者设备的摄像机获取所述呼叫者预览数据,所述摄像机捕获所述呼叫者预览数据;和
使得所述呼叫者设备输出所述呼叫者预览数据存储在所述呼叫者设备上的指示,其中所述呼叫者预览数据的所述至少一部分可作为所述呼叫消息被提供。
10.如权利要求1所述的方法,其特征在于,还包括:响应于确定所述呼叫者预览数据已经通过所述连接传输了特定时间段而未接收到所述呼叫请求的所述接受的情况:
使得所述呼叫者设备显示多个选项,其中所述多个选项包括:
使用所述呼叫者预览数据的至少一部分作为所述呼叫消息的第一选项,其中,响应于接收到选择所述第一选项的第一输入,执行向所述至少一个受话者设备传输所述信息;和
拒绝包括所述呼叫消息中的所述呼叫者预览数据的所述至少一部分的第二选项,其中,响应于接收到选择所述第二选项的第二输入,使所述呼叫者设备确定新的呼叫消息。
11.如权利要求10所述的方法,其特征在于,使所述呼叫者设备显示所述多个选项包括使所述呼叫者设备显示用户界面,所述用户界面包括一个或多个控件,所述一个或多个控件接收来自所述用户的第三输入,并被配置为在传输所述信息之前,使所述呼叫者设备输出所述呼叫者预览数据的一个或多个部分。
12.如权利要求1所述的方法,其特征在于,还包括:
从所述呼叫者设备的呼叫者接收编辑输入;和
基于所述编辑输入,编辑所述呼叫者预览数据,以生成编辑的呼叫者预览数据,其中所述编辑的呼叫者预览数据作为所述呼叫消息被传输到所述受话者设备。
13.如权利要求12所述的方法,其特征在于,所述呼叫者预览数据包括顺序数据,并且其中,从所述呼叫者接收所述编辑输入包括接收以下中的至少一个的一个或多个选择:
所述呼叫者预览数据的起始点,使得所述起始点之前的部分顺序数据被排除在所述呼叫者预览数据之外,和
所述呼叫者预览视频的结束点,使得所述结束点之后的部分顺序数据被排除在所述呼叫者预览数据之外。
14.如权利要求1所述的方法,其特征在于,还包括自动验证一个或多个视觉特征在所述呼叫者预览数据的一个或多个帧中的像素中描绘,其中,响应于验证所述一个或多个视觉特征被描绘,使所述呼叫消息存储在所述至少一个受话者设备上。
15.如权利要求1所述的方法,其特征在于,还包括:
自动确定所述呼叫者预览数据中描绘的一个或多个内容特征;和
自动修改所述呼叫者预览数据以生成修改的呼叫者预览数据,其中所述修改的呼叫者预览数据排除了包含所述一个或多个内容特征的所述呼叫者预览数据的一个或多个帧,其中所述修改的呼叫者预览数据被包括在向所述至少一个受话者设备传输的所述信息中。
16.如权利要求1所述的方法,其特征在于,还包括:
检测与所述呼叫者预览数据相关联的音频数据中的语音;
获取与所述语音对应的一个或多个文本字幕,其中所述一个或多个文本字幕中的每个文本字幕对应于所述语音的一部分;和
使得所述一个或多个文本字幕的特定文本字幕被插入到所述呼叫者预览数据的相应帧中,所述相应帧与对应于特定文本字幕的所述语音的部分相关联。
17.一种设备,其特征在于,包括:
存储设备;和
至少一个处理器,被配置为访问所述存储设备,所述至少一个处理器被配置为执行操作,所述操作包括:
呼叫者设备向一个或多个受话者设备发送呼叫请求;
在接收到所述至少一个受话者设备对所述呼叫请求的接受之前,建立与所述一个或多个受话者设备中的至少一个受话者设备的连接;
通过所述连接,向所述至少一个受话者设备传输呼叫者预览数据的至少一部分,其中在接收到所述呼叫请求的所述接受之前,传输所述呼叫者预览数据的所述至少一部分;和
响应于确定所述呼叫者预览数据的所述至少一部分通过所述连接传输了特定时间段,而未接收到所述呼叫请求的所述接受的情况,向所述至少一个受话者设备传输呼叫消息和信息中的至少一个,所述信息指令将呼叫消息存储在所述至少一个受话者设备上,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。
18.一种方法,其特征在于,包括:
受话者设备接收来自呼叫者设备的呼叫请求;
在所述受话者设备发送所述呼叫请求的接受之前,建立与所述呼叫者设备的连接;
通过所述连接,在所述受话者设备处接收呼叫者预览数据,其中,在所述受话者设备发送所述呼叫请求的所述接受之前,接收所述呼叫者预览数据的所述至少一部分;
使所述受话者设备输出所述呼叫者预览数据;和
响应于在所述呼叫者预览数据通过所述连接被接收了特定时间段而没有发送所述呼叫请求的所述接受的情况,使呼叫消息存储在所述受话者设备的存储器中,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。
19.如权利要求18所述的方法,其特征在于,还包括:
使得在所述受话者设备处显示与所述呼叫者预览数据相关联的音频输出选项,其中所述音频输出选项响应于用户选择,以使得与所述呼叫者预览数据相关联的音频数据由所述受话者设备输出;和
响应于在所述呼叫者预览数据通过所述连接被接收了特定时间段而没有发送所述呼叫请求的所述接受的情况,从所述呼叫者设备接收所述呼叫消息。
20.如权利要求18所述的方法,其特征在于,使得所述受话者设备输出所述呼叫者预览数据包括,使所述受话者设备基于所述呼叫者预览数据输出音频,代替所述受话者设备可以访问的铃声数据引起的铃声音频输出。
21.一种设备,其特征在于,包括:
存储设备;和
至少一个处理器,被配置为访问所述存储设备,所述至少一个处理器被配置为执行操作,所述操作包括:
接收来自呼叫者设备的呼叫请求;
在所述受话者设备发送呼叫请求的接受之前,建立与所述呼叫者设备的连接;
通过所述连接,在所述受话者设备处接收呼叫者预览数据,其中在所述受话者设备发送所述呼叫请求的接受之前,接收所述呼叫者预览数据的至少一部分;
使所述受话者设备输出所述呼叫者预览数据;和
响应于在所述呼叫者预览数据通过所述连接被接收了特定时间段而没有发送所述呼叫请求的所述接受的情况,使呼叫消息存储在所述受话者设备的存储器中,其中所述呼叫消息包括所述呼叫者预览数据的至少一部分。
CN201780079898.8A 2017-03-22 2017-10-17 呼叫者预览数据和基于呼叫者预览数据的呼叫消息 Active CN110603805B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/466,806 US9832308B1 (en) 2016-05-12 2017-03-22 Caller preview data and call messages based on caller preview data
US15/466,806 2017-03-22
PCT/US2017/057047 WO2018174945A1 (en) 2017-03-22 2017-10-17 Caller preview data and call messages based on caller preview data

Publications (2)

Publication Number Publication Date
CN110603805A true CN110603805A (zh) 2019-12-20
CN110603805B CN110603805B (zh) 2021-12-03

Family

ID=60201689

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780079898.8A Active CN110603805B (zh) 2017-03-22 2017-10-17 呼叫者预览数据和基于呼叫者预览数据的呼叫消息

Country Status (4)

Country Link
EP (1) EP3523951B1 (zh)
KR (1) KR102066214B1 (zh)
CN (1) CN110603805B (zh)
WO (1) WO2018174945A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020250161A1 (en) * 2019-06-10 2020-12-17 Bayley Matthew Michael Method and system for populating images into a directory
CN110493473A (zh) * 2019-09-20 2019-11-22 上海掌门科技有限公司 来电显示的方法、设备和计算机存储介质
CN111182361B (zh) * 2020-01-13 2022-06-17 青岛海信移动通信技术股份有限公司 一种通信终端及视频预览的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2864406A1 (fr) * 2003-12-17 2005-06-24 France Telecom Sous-titrage d'un flux audio ou video dans un document multimedia
CN101035164A (zh) * 2007-03-05 2007-09-12 李波 一种实现视频铃声的系统和方法
CN103139374A (zh) * 2011-12-01 2013-06-05 捷讯研究有限公司 用于提供语音呼叫预览的通信设备、方法和系统
US8644886B1 (en) * 2004-03-15 2014-02-04 Avaya Inc. Ring-tone messaging service
US20150304490A1 (en) * 2014-04-20 2015-10-22 iHandy Inc. Method, apparatus and system for providing caller identification
CN106464752A (zh) * 2014-04-17 2017-02-22 古如罗技微系统公司 关于呼叫者的附加信息

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060203802A1 (en) 2005-03-14 2006-09-14 Hung-Lin Chou Method and system for dynamically specifying and instantly transmitting and representing/displaying call data
US8615224B2 (en) 2006-12-29 2013-12-24 Verizon Patent And Licensing Inc. Method and apparatus for providing ringtone scheduling

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2864406A1 (fr) * 2003-12-17 2005-06-24 France Telecom Sous-titrage d'un flux audio ou video dans un document multimedia
US8644886B1 (en) * 2004-03-15 2014-02-04 Avaya Inc. Ring-tone messaging service
CN101035164A (zh) * 2007-03-05 2007-09-12 李波 一种实现视频铃声的系统和方法
CN103139374A (zh) * 2011-12-01 2013-06-05 捷讯研究有限公司 用于提供语音呼叫预览的通信设备、方法和系统
CN106464752A (zh) * 2014-04-17 2017-02-22 古如罗技微系统公司 关于呼叫者的附加信息
US20150304490A1 (en) * 2014-04-20 2015-10-22 iHandy Inc. Method, apparatus and system for providing caller identification

Also Published As

Publication number Publication date
KR102066214B1 (ko) 2020-01-14
KR20190079683A (ko) 2019-07-05
EP3523951B1 (en) 2022-04-06
CN110603805B (zh) 2021-12-03
WO2018174945A1 (en) 2018-09-27
EP3523951A1 (en) 2019-08-14

Similar Documents

Publication Publication Date Title
US10567574B2 (en) Caller preview data and call messages based on caller preview data
US10122848B2 (en) Caller preview for video calls
CN109691054B (zh) 动画用户标识符
CN107710197B (zh) 在通信网络上共享图像和图像相册
US9349414B1 (en) System and method for simultaneous capture of two video streams
US11036782B2 (en) Generating and updating event-based playback experiences
US9876827B2 (en) Social network collaboration space
EP2887686A1 (en) Sharing content on devices with reduced user actions
US9955134B2 (en) System and methods for simultaneously capturing audio and image data for digital playback
US10672167B2 (en) Generating synthetic group selfies
CN110603805B (zh) 呼叫者预览数据和基于呼叫者预览数据的呼叫消息
JP2017521741A (ja) 保存された関連メディアコレクションとの現在のユーザアクティビティの紐づけ
CN117157710A (zh) 视觉内容到音频轨道的同步
US20160275108A1 (en) Producing Multi-Author Animation and Multimedia Using Metadata
WO2017193343A1 (zh) 媒体文件分享方法、媒体文件分享设备及终端
US20160080689A1 (en) Video Picker
CN114726816B (zh) 一种建立关联关系的方法、装置、电子设备和存储介质
WO2023074355A1 (ja) 情報処理装置、情報処理方法、プログラム、情報処理システム

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