CN114584838A - 多媒体数据进度控制方法、装置以及可读存储介质 - Google Patents

多媒体数据进度控制方法、装置以及可读存储介质 Download PDF

Info

Publication number
CN114584838A
CN114584838A CN202011365435.8A CN202011365435A CN114584838A CN 114584838 A CN114584838 A CN 114584838A CN 202011365435 A CN202011365435 A CN 202011365435A CN 114584838 A CN114584838 A CN 114584838A
Authority
CN
China
Prior art keywords
terminal
progress
multimedia data
playing
user
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
CN202011365435.8A
Other languages
English (en)
Other versions
CN114584838B (zh
Inventor
陈灿杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN202011365435.8A priority Critical patent/CN114584838B/zh
Publication of CN114584838A publication Critical patent/CN114584838A/zh
Application granted granted Critical
Publication of CN114584838B publication Critical patent/CN114584838B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请公开了一种多媒体数据进度控制方法、装置以及可读存储介质,该多媒体数据进度控制方法包括:第一终端在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。采用本申请,可以提高对多媒体数据的进度调整效率。

Description

多媒体数据进度控制方法、装置以及可读存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种多媒体数据进度控制方法、装置以及可读存储介质。
背景技术
线上各式各样的多媒体数据(如影视资源、音乐、直播等)极大丰富了人们的日常生活,用户在通过用户终端观看视频时,存在与其他用户互动的需求,如将视频调整到同一播放进度,以便实时讨论视频中的内容。
现有的技术可以支持通过用户终端邀请好友进入同一个虚拟播放室共同观看视频,但由于虚拟播放室中的用户只能调整自己的播放进度,因此当A用户希望其他用户也将视频调整到自己所调整的进度调整位置时,可以通过发送文字消息或语音消息来提醒其他用户,其他用户在接收到消息后,需要将自己的播放进度手动调整到对应的位置,导致该场景下的进度调整效率低下。
发明内容
本申请提供一种多媒体数据进度控制方法、装置以及可读存储介质,可以提高对多媒体数据的进度调整效率。
本申请一方面提供了一种多媒体数据进度控制方法,包括:
第一终端在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;
若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。
本申请一方面提供了一种多媒体数据进度控制方法,包括:
接收在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第一终端;
若检测到所述第一终端具备针对所述第二终端的播放进度同步权限,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的多媒体数据。
本申请一方面提供了一种多媒体数据进度控制装置,包括:
播放模块,用于在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;
指令获取模块,用于若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
第一调整模块,用于将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。
其中,所述装置还包括:
第一邀请模块,用于响应针对所述多媒体数据和所述第二终端对应的用户账号的选择操作,生成邀请请求;当所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;获取所述第二终端根据所述邀请请求所返回的邀请响应结果,对所述邀请响应结果进行显示;
则所述播放模块具体用于当所述邀请响应结果为确认响应结果时,在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据。
其中,所述装置还包括:
违规处理模块,用于获取所述第二终端对应的违规数据;所述违规数据是根据所述第二终端对应的被举报人数和所述虚拟共享播放室中的用户总数所得到的;
所述违规处理模块,还用于若所述违规数据大于第一违规阈值,则显示禁止操作提示信息;所述禁止操作提示信息用于提示取消响应所述第二终端发起的进度调整指令;
所述违规处理模块,还用于若所述违规数据大于第二违规阈值,则显示用户移除提示信息;所述用户移除提示信息用于提示所述第二终端被移出所述虚拟共享播放室。
其中,所述装置还包括:
举报模块,用于响应针对所述第二终端对应的举报控件的触发操作,在用户操作列表中显示所述第二终端对应的被举报人数以及所述第二终端发起的进度调整历史行为。
其中,所述装置还包括:
聊天模块,用于在所述虚拟共享播放室中显示聊天界面;获取语音聊天数据,将所述语音聊天数据发送至服务器,以使所述服务器对所述语音聊天数据进行回音消除;在所述聊天界面中播放回音消除后的语音聊天数据。
本申请一方面提供了一种多媒体数据进度控制装置,包括:
指令接收模块,用于接收在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第一终端;若检测到所述第一终端具备针对所述第二终端的播放进度同步权限,则根据所述进度调整指令确定所述多媒体数据的进度调整位置;
第二调整模块,用于控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的多媒体数据。
其中,所述进度调整指令包括所述第二终端在所述虚拟共享播放室中录入的语音控制数据;
所述指令接收模块包括:
匹配单元,用于基于语音识别模型对所述进度调整指令中的所述语音控制数据进行语义识别,将得到的识别结果与所述多媒体数据中的至少一个热度标签进行匹配;
位置确定单元,用于当所述识别结果与所述至少一个热度标签中的目标热度标签的匹配度大于调整阈值时,将所述目标热度标签所在的位置确定为进度调整位置。
其中,所述多媒体数据包括直播流数据;
所述装置还包括:
缓存模块,用于对所述直播流数据进行缓存,得到流缓存数据;
则所述第二调整模块具体用于若所述流缓存数据中存在所述进度调整位置所指示的数据,则从所述流缓存数据中提取出所述进度调整位置所指示的数据,将所述进度调整位置所指示的数据确定为进度调整后的多媒体数据,将所述进度调整后的多媒体数据分别下发至所述第一终端和所述第二终端,以使所述第一终端与所述第二终端同步播放所述进度调整后的多媒体数据。
其中,所述装置还包括:
第二邀请模块,用于接收所述第一终端所发送的用于邀请所述第二终端的邀请请求;对所述邀请请求进行合法性检测;当检测到所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;
创建模块,用于获取所述第二终端根据所述邀请请求所返回的邀请响应结果;当所述邀请响应结果为确认响应结果时,根据所述第一终端对应的地址信息和所述第二终端对应的地址信息创建所述虚拟共享播放室;
数据下发模块,用于将所述多媒体数据下发至所述第一终端和所述第二终端,以使所述第一终端在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据。
其中,所述邀请请求包括所述第二终端对应的用户属性信息;所述用户属性信息包括用户邀请权限以及用户等级权限;
所述第二邀请模块具体用于获取所述多媒体数据支持的播放功能以及播放权限;若所述播放功能为同步播放功能,且所述用户邀请权限支持邀请功能,且所述用户等级权限满足所述多媒体数据的播放权限,则将所述邀请请求确定为合法请求。
其中,所述装置还包括:
第一同步模块,用于获取所述第一终端和所述第二终端分别对应的网络连接质量;若所述第一终端对应的网络连接质量小于网络质量阈值,或所述第二终端对应的网络连接质量小于所述网络质量阈值,则控制所述第一终端和所述第二终端暂停播放所述多媒体数据,将暂停提示信息发送至所述第一终端和所述第二终端;
所述第一同步模块,还用于当所述第一终端对应的网络连接质量大于或等于所述网络质量阈值,且所述第二终端对应的网络连接质量大于或等于所述网络质量阈值时,控制所述第一终端和所述第二终端恢复播放所述多媒体数据。
其中,所述装置还包括:
第二同步模块,用于将所述进度调整后的多媒体数据确定为目标多媒体数据;获取所述第一终端对应的网络连接质量;若所述第一终端对应的网络连接质量小于网络质量阈值,则控制所述第一终端暂停播放所述目标多媒体数据,记录所述第一终端的暂停播放时间戳,将暂停提示信息发送至所述第一终端和所述第二终端;
所述第二同步模块,还用于当所述第一终端对应的网络连接质量大于或等于网络质量阈值时,获取所述第一终端的暂停播放时长,根据所述暂停播放时长和所述暂停播放时间戳确定参考进度调整位置;控制所述第一终端将所述目标多媒体数据的播放进度调整至所述参考进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的目标多媒体数据。
本申请一方面提供了一种计算机设备,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如本申请中的方法。
本申请一方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本申请中的方法。
本申请可以通过虚拟共享播放室与第二终端共同播放多媒体数据,若第一终端具备针对第二终端的播放进度同步权限,则当获取到第二终端所发起的进度调整指令时,可以根据进度调整指令确定多媒体数据的进度调整位置,进而可以将上述多媒体数据调整至该进度调整位置,并与第二终端同步播放进度调整后的多媒体数据。可见,在第二终端发起进度调整指令的过程中,当第一终端具备针对第二终端的播放进度同步权限时,第一终端可以根据该进度调整指令来调整多媒体数据的播放进度,实现与第二终端的自动进度同步,而不需要用户进行手动调整,从而可以提高对多媒体数据的进度调整效率,且相比于直接调整多媒体数据的播放进度,由于需要检测第一终端是否具备针对第二终端的播放进度同步权限,因此可以屏蔽第二终端发起的恶意的进度调整,且由于第二终端可以包括多个用户终端,故而可以满足多方用户对多媒体数据的进度调整需求,提高共同播放多媒体数据的多方用户之间的互动性,进而丰富多媒体数据的播放方式。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种系统架构示意图;
图2a-图2c是本申请实施例提供的一种多媒体数据进度控制方法的场景示意图;
图3是本申请实施例提供的一种多媒体数据进度控制方法的流程示意图;
图4是本申请实施例提供的一种视频进度控制过程的流程示意图;
图5是本申请实施例提供的另一种多媒体数据进度控制方法的流程示意图;
图6a-图6c是本申请实施例提供的又一种多媒体数据进度控制方法的流程示意图;
图7a-图7d是本申请实施例提供的一种视频进度控制过程的流程示意图;
图8是本申请实施例提供的一种多媒体数据进度控制装置的结构示意图;
图9是本申请实施例提供的另一种多媒体数据进度控制装置的结构示意图;
图10是本申请实施例提供的一种多计算机设备的结构示意图;
图11是本申请实施例提供的另一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,是本申请实施例提供的一种系统架构示意图。如图1所示,该系统架构可以包括服务器100和用户终端集群,服务器100可以通过网络与用户终端集群建立连接,用户终端集群可以包括:用户终端200a、用户终端200b、用户终端200c、……、用户终端200n。服务器100可以通过网络与每个用户终端进行数据传输,每个用户终端均可以安装具有播放多媒体数据功能的多媒体应用,例如可以是直播应用、短视频应用、影音播放应用、视听音乐应用、浏览器、社交应用、即时通信应用、购物应用、游戏应用等。服务器100可以包括多媒体应用对应的后台服务器、流缓存服务器和指令同步服务器等多个服务器,因此,每个用户终端均可以通过该多媒体应用对应的客户端与服务器100进行数据传输,如服务器100可以向每个用户终端下发视频流数据,在用户使用多媒体应用观看视频的过程中,服务器100还可以响应用户终端发送的播放进度同步请求,并将进度同步相关信息推送到对应的其他用户终端,以实现多个用户终端的视频播放进度同步。
以用户终端200a和用户终端200b为例,当用户需要通过用户终端200a调整视频播放进度并同步到用户终端200b时,用户终端200a向服务器100发送进度调整指令,服务器100接收到该进度调整指令后,检测用户终端200b是否具备针对用户终端200a的播放进度同步权限,若检测到用户终端200b已经具备上述播放进度同步权限,则将该进度调整指令发送至用户终端200b,用户终端200b响应该进度调整指令,调整视频播放进度。
可以理解的是,本申请提供的方法可以由计算机设备执行,计算机设备包括但不限于用户终端或服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云数据库、云服务、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。用户终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)、智能电视、智能车载等可以运行多媒体应用的智能终端。用户终端和服务器可以通过有线或无线方式进行直接或间接地连接,本申请在此不做限制。
下述以用户终端200a和用户终端200b通过服务器100控制视频播放进度同步为例进行具体说明。
请一并参见图2a-图2c,是本申请实施例提供的一种多媒体数据进度控制方法的场景示意图。如图2a所示,与用户终端200a具有绑定关系的用户是用户1,与用户终端200b具有绑定关系的用户是用户2,用户1和用户2分别通过各自持有的用户终端,使用视频播放客户端的“一起看”功能共同观看一场篮球比赛的直播,例如,用户1可以通过用户终端200a开启“一起看”功能邀请用户2,在用户2通过用户终端200b接受邀请后,服务器100可以构建一个虚拟共享播放室用于共同播放视频,其中,虚拟共享播放室还可以容纳除了用户1和用户2以外的其他用户,例如可以将用户1通过“一起看”功能邀请到的多个用户归到同一个虚拟共享播放室中。篮球比赛的直播属于直播流数据,为了支持对直播流数据的实时倒退和回看,服务器100可以对直播流数据进行缓存,生成流缓存数据。用户1需要通过用户终端200a对该直播进行倒退,如图2b中的界面500a所示,界面500a是该直播的播放界面,在该播放界面中,可以显示进度条、暂停按钮、弹幕开关、打赏入口等功能按钮,用户终端200a可以响应用户1针对进度条500e的触发操作,例如,可以是针对进度条500e上一个位置的点击操作,以使当前的播放进度从68:10(即第68分10秒)倒退至10:20,将该操作封装为进度调整指令s1,并将进度调整指令s1发送至服务器100,服务器100可以根据进度调整指令s1确定发出指令的用户终端200a对应的用户标识信息,即确定即将请求的目标用户,服务器100进一步获取与目标用户关联的其他用户的用户标识信息,如可以确定在同一个虚拟共享播放室中与用户1共同观看该直播的是用户2。进而服务器100可以检测之前缓存得到的流缓存数据中是否存在进度调整指令s1所请求的数据,且还需要检测用户终端200b是否具备针对用户终端200a的播放进度同步权限,只有当流缓存数据中存在进度调整指令s1所请求的数据,且用户终端200b也具备上述播放进度同步权限(例如在用户终端200b可以表现为开启“进度同步”功能)时,服务器100才可以将进度调整指令s1发送到用户终端200b。如图2b中的页面500b所示,用户终端200b可以根据接收到的进度调整指令s1确定进度调整位置为10:20,与用户终端200a同步调整该直播到进度调整指令s1所指示的播放进度10:20,且可以在界面500b中显示消息框500f,用于提示本次视频进度同步是由用户1所发起的。
同理,当用户2需要通过用户终端200b对该直播进行快进时,如图2c中的界面500c所示,用户终端200b响应用户2针对进度条500g的触发操作,以使当前的播放进度从10:20快进至15:45,将该操作封装为进度调整指令s2,并将进度调整指令s2发送至服务器100,当服务器100检测到流缓存数据中存在进度调整指令s2所请求的数据,且用户终端200a具备针对用户终端200b的播放进度同步权限时,服务器100可以将进度调整指令s2发送到用户终端200a。如图2c中的页面500d所示,用户终端200a可以根据接收到的进度调整指令s2,与用户终端200b同步调整该直播到进度调整指令s2所指示的播放进度15:45,且可以在界面500d中显示消息框500h,用于提示本次视频进度同步是由用户2所发起的。需要说明的是,从界面500a、界面500b、界面500c以及界面500d中显示的进度条右侧的实时播放进度可看出,在用户回放历史直播视频时,该直播只要未结束就还会一直进行实时更新,服务器100也会对该直播对应的流缓存数据进行实时更新,用户1和用户2随时可以通过用户终端同步到该直播的最新播放进度进行观看,但当服务器100检测到该直播的播放进度已经到达最新播放进度时,则无法响应任意一个用户终端对该直播的快进操作。
此外,用户终端200a或用户终端200b还可以响应各自对应的用户针对该直播的暂停、切换等操作,将相关的进度调整指令发送至服务器100,以使服务器100根据上述进度调整指令控制用户终端200a和用户终端200b同步播放进度调整后的直播流数据,这里仅以针对直播流数据的倒退和快进为例进行说明(如图2b-图2c所示)。由此可见,服务器100可以根据多方用户终端中任意一方发出的进度调整指令,调节多媒体数据的播放进度,并实时同步到具备播放进度同步权限的其他用户终端,从而可以满足多方用户对多媒体数据的进度调整需求,提高对多媒体数据的进度调整效率,且屏蔽恶意的进度调整,以提高多方用户之间的互动性。
请参见图3,是本申请实施例提供的一种多媒体数据进度控制方法的流程示意图。可以理解的是,本申请提供的方法可以由计算机设备执行,计算机设备包括但不限于用户终端或服务器。在本申请实施例中以用户终端为例进行说明。如图3所示,该方法可以包括以下步骤:
步骤S101,第一终端在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;
具体的,第一终端(如上述图2a-图2b所对应的用户终端200b)可以在虚拟共享播放室中与第二终端(如上述图2a-图2b所对应的用户终端200a)共同播放多媒体数据。其中,第一终端和第二终端均可以为任意终端(例如手机、平板电脑等),第一终端和第二终端可以为共同播放多媒体数据的多个用户终端。其中,多媒体数据可以包括但不限于视频、影像、动画、直播流数据、音乐、图像、文本。虚拟共享播放室用于共同播放多媒体数据,且可以由服务器(如上述图2a-图2c所对应的服务器100)所创建,可选的,也可以由用户终端创建,具体可以为房间、放映厅、观影团、放歌室等形式,创建成功后,第一终端和第二终端可以在用户界面上显示虚拟共享播放室的相关信息,如在该虚拟共享播放室中播放的多媒体数据对应的名称和内容,以及该虚拟共享播放室中的用户总数和对应的用户信息等。需要说明的是,第一终端和第二终端在虚拟共享播放室中共同播放多媒体数据时,各方的播放进度可以是同步的,也可以是不同步的,主要取决于第一终端或第二终端是否具备针对对方的播放进度同步权限。
需要说明的是,第一终端可以向第二终端发出邀请,以实现与第二终端共同播放多媒体数据。具体的,可以响应针对多媒体数据和第二终端对应的用户账号的选择操作,并根据上述多媒体数据和用户账号生成邀请请求。其中,可以在输入框中直接输入第二终端对应的用户账号,输入的可以是好友的用户账号,也可以是陌生用户的用户账号,或者,可以在第一终端的显示界面显示好友列表,通过响应针对该好友列表的勾选操作来选择第二终端对应的用户账号。进一步,可以将该邀请请求发送至服务器进行合法性检测,当该邀请请求为合法请求时,可以将该邀请请求发送至第二终端,第二终端可以在终端界面显示该邀请请求,例如可以显示邀请人信息以及即将共同播放的多媒体数据的相关内容,从而可以根据该邀请请求选择是否接受该邀请,进一步,第一终端可以获取第二终端返回的邀请响应结果,并在终端界面上进行显示(例如可以显示已接受用户、未接受用户)。当上述邀请响应结果为确认响应结果时,即表示第二终端接受了邀请,则第一终端可以根据第一终端对应的地址信息和第二终端对应的地址信息创建一个虚拟共享播放室,接受邀请的第二终端可以进入该虚拟共享播放室,服务器可以将上述多媒体数据发送给第二终端,第二终端进而生成播放界面,与第一终端开始共同播放多媒体数据。此外,用户还可以在该虚拟共享播放室中进行讨论、聊天、发弹幕等互动。如上述图2a-图2c所对应的实施例中,用户终端200a可以开启“一起看”功能邀请用户2共同观看视频,在用户2通过用户终端200b接受邀请后,用户终端200a可以构建一个虚拟共享播放室,用户终端200a和用户终端200b可以在该虚拟共享播放室中共同播放视频。可选的,也可以由服务器创建虚拟共享播放室后,将虚拟共享播放室的界面发送给第一终端和第二终端。其中,服务器进行合法性检测的具体过程可参见下述图6a-图6c所对应实施例中的步骤S401。
可选的,第一终端还可以获取并显示各个用户终端的网络状态(例如可以显示网络畅通用户和网络不畅用户),在第二终端返回确认响应结果后,若第一终端对应的网络状态和第二终端对应的网络状态均为畅通状态,则可以开始播放多媒体数据。可选的,若其中存在至少一个用户终端对应的网络状态不是畅通状态,则可以等待至上述至少一个用户终端的网络状态恢复为畅通状态后,所有用户终端再开始播放多媒体数据。其中,对网络状态的检测工作可以由服务器执行,具体过程可以参见下述图6a-图6c所对应实施例中的步骤S405。
可选的,用户可以选择一个尚未在第一终端播放的多媒体数据作为即将共同播放的多媒体数据,第一终端可以显示用于引导用户进行多媒体数据选择的控件,例如弹出用于多媒体数据选择的消息提示框,以供用户选择其希望进行同步播放的多媒体数据。例如,用户终端200a选择电影a用于共同观看,则服务器可以向已进入该虚拟共享播放室中的各个用户终端发送电影a的视频内容,所有用户终端将从头开始播放电影a。可选的,用户可以选择当前正在播放的多媒体数据作为即将共同播放的多媒体数据,当第二终端进入虚拟共享播放室时,服务器可以将第一终端在创建该虚拟共享播放室时正在播放的多媒体数据(如电影b)确定为默认的即将共同播放的多媒体数据,第一终端可以记录正在播放的多媒体数据当前的播放进度,并发送给服务器,进而服务器可以向已进入该虚拟共享播放室中的各个用户终端发送该多媒体数据的内容以及该多媒体数据当前的播放进度。例如,用户终端200a发出邀请时,电影b播放至10分,则用户终端200b接受邀请之后,将从电影b的10分开始播放。
此外,若多媒体数据为本地多媒体数据,则可以通过用户终端将本地多媒体数据上传至服务器,经服务器保存,并审核通过后,可邀请其他用户共同播放。
可以理解,第二终端的数量可以是一个,也可以是多个。当第二终端的数量为多个时,可选的,可以等待所有的第二终端都接受邀请时再开始播放多媒体数据。可选的,当存在部分第二终端没有接受邀请时,第一终端可以重新选择希望邀请的用户账号,或者,第一终端可以响应针对确认开播控件的触发操作,向已经接受邀请的其他第二终端发送播放指令,开始共同播放多媒体数据,若在播放过程中,此前未接受邀请的用户终端接受了邀请,也可以允许该用户终端加入到虚拟共享播放室中来共同播放多媒体数据。此外,若第二终端中途接收到其他用户终端发来的邀请,也可以随时退出该虚拟共享播放室,接受其他用户终端发来的邀请后加入到另一个虚拟共享播放室中。
可以理解,还可以是第二终端作为发出邀请的终端,向第一终端发出邀请,以实现与第一终端共同播放多媒体数据,此处仅以第一终端作为邀请方为例进行说明,本申请实施例对邀请方对应的具体用户终端和受邀方对应的具体用户终端不做限定。同理,下述步骤S102-步骤S103中也主要以第一终端为例进行说明,实际操作过程中第一终端和第二终端所执行的动作均可以互换,相应的,两者对应的数量也可以变换,本申请实施例在此不做限定。
步骤S102,若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
具体的,第二终端可以发起进度调整指令来实现多媒体数据的播放进度同步,若第一终端具备针对第二终端的播放进度同步权限,则在接收到第二终端所发起的进度调整指令时,第一终端可以根据进度调整指令确定多媒体数据的进度调整位置。其中,进度调整指令可以包括但不限于快进、快退、跳转、暂停、播放、切换内容、全屏、清晰度调节、音效调节等指令,进度调整指令可以是手势指令,具体可以是针对播放界面的触发操作,例如针对播放界面的点击操作、滑动操作、长按操作或针对播放界面中的进度条的点击操作、拖动操作等,进而可以将该触发操作封装为手势指令。可选的,进度调整指令也可以是语音指令,可以获取第二终端录入的语音控制数据,例如第二终端对应的用户2发出的“快进”、“快退”、“暂停”、“播放”、“切换到下一个”等语音,或者是针对多媒体数据的具体内容所发出的语音,例如,电影中已播放的某个热门片段,用户2在虚拟共享播放室中开麦与其他用户进行讨论时,多次谈及该片段的内容,或表示出希望跳转回该片段进行重复观看,则第二终端可以获取用户2讨论时发送的语音作为语音控制数据,并将该语音控制数据作为进度调整指令发送至服务器进行语音匹配处理,服务器处理可以根据该语音控制数据确定进度调整位置,进而可以向第一终端和第二终端发送该进度调整位置。
如上述图2a-图2c所示,若用户1和用户2之间为好友关系,且用户1通过用户终端200a开启了“进度同步”功能,例如可以为“只接受好友的进度同步”功能或“接受所有人的进度同步”功能,则当用户2通过用户终端200b发起快进指令时,用户终端200a在接收到该快进指令后也会对直播视频进行快进。
可选的,当第一终端不具备针对第二终端的播放进度同步权限时,则不会接收到第二终端所发起的进度调整指令,例如,虽然用户1通过用户终端200a开启了“只接受好友的进度同步”功能,但若用户1和用户2之间不是好友关系,则用户终端200a不会响应用户终端200b发起的进度调整指令,或者,若用户终端200a关闭了“进度同步”功能,同样不会响应用户终端200b发起的进度调整指令,但用户1仍可以通过用户终端200a与用户2进行聊天等互动。
需要说明的是,多媒体数据可以包括本地多媒体数据、线上多媒体数据以及直播流数据,在对直播流数据进行实时播放的过程中,为了支持对直播流数据的实时倒退和回放,可以通过服务器对直播流数据进行缓存得到流缓存数据,故而在用户终端发起进度调整指令时,服务器需要检测当前的流缓存数据是否支持该进度调整指令,如图2a-图2c所示,若检测到当前的直播已经到达最新播放位置,则用户终端200a或用户终端200b均无法对该直播进行快进操作,具体的检测过程可以参见下述图6a-图6c所对应实施例中的步骤S408。其中,直播流数据可以包括线上会议、线上教育直播、在线演唱会、新闻直播、赛事直播、影视剧直播等各种场景的实时播放流数据。
可以理解,各个用户终端也可以提前缓存多媒体数据的部分内容,使得各方播放更加流畅同步。
此外,为了进一步提高互动性,本申请的方法还可以在播放多媒体数据的过程中为用户提供多种互动功能,例如聊天(如语音聊天或文字聊天)、开麦、发弹幕等。对于聊天功能,第一终端和第二终端均可以生成聊天界面,并在各自对应的虚拟共享播放室界面中显示聊天界面,从而可以在聊天界面中进行消息收发和显示。当用户使用聊天功能进行互动时,对应的用户终端可以获取聊天数据,其中,聊天数据可以是语音聊天数据或文字聊天数据(可以包括文本、图像、表情等),可选的,用户开麦进行聊天的时候也可以获取语音聊天数据。进一步,由于在麦克风与扬声器互相作用所影响的双工通信系统中极易产生声学回声,会对有线通信或无线通信带来负面影响,因此,为了提高对话质量,可以将对话过程中产生的语音聊天数据发送至服务器进行回音消除,服务器将回音消除后的语音聊天数据发送至各个用户终端,进而各个用户终端可以在聊天界面中播放回音消除后的语音聊天数据。例如,可采用自适应回声抵消的方法进行回音消除,具体的,服务器可以通过自适应滤波算法来调整滤波器的迭代更新系数,估计出一个近似的回声路径来逼近真实回声路径,从而可以得到估计的回声信号,并在麦克风采集到的纯净语音与回声的混合信号中除去估计的回声信号来实现回声的消除。因此,用户在开麦时可以不需要佩戴耳机。可选的,回音消除也可以由用户终端执行。此外,用户可以在弹幕输入框中输入希望发送的弹幕,如文字或表情等,对应的用户终端可以响应发送按钮的触发操作,将该弹幕发送至各个用户终端的播放界面进行显示。
步骤S103,将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。
具体的,在确定进度调整位置后,第一终端可以将上述多媒体数据调整至该进度调整位置,并与第二终端同步播放进度调整后的多媒体数据,还可以在各个用户终端的播放界面中显示消息框,用于提示此次进度同步是由哪个用户所发起的。例如上述图2b所对应实施例中,用户终端200b可以根据用户终端200a所发起的进度倒退指令s1确定进度调整位置为10:20,从而与用户终端200a同步将直播视频由当前播放进度68:10调整到10:20,且可以在界面500b中显示消息框500f,用于提示本次视频进度同步是由用户1所发起的。
可选的,考虑到在进行进度同步时,若某一方的网络状态不佳,则会影响同步,因此可以由发起同步的用户选择同步方式,并定时检测各方网络状态以及根据所选择的同步方式进行适当校正。若选择第一同步方式,即严格强制同步方式,则当至少一个用户终端的网络状态不佳时,所有用户终端都会暂停播放多媒体数据进行等待,并通过消息提示框显示网络不佳的用户名单,直到所有用户终端的网络状态均为畅通状态后,再开始继续同步播放进度调整后的多媒体数据。若选择第二同步方式,则网络状态不佳的用户终端X暂停播放多媒体数据,并记录此时的暂停播放时间戳t0,其他用户终端可以继续播放,当用户终端X的网络状态为畅通状态时,获取用户终端X的暂停播放时长t1,则可以确定其参考进度调整位置为t0+t1,进而可以将多媒体数据的播放进度调整至该参考进度调整位置,与其他用户终端的播放进度对齐。例如上述图2b所对应实施例中,如果用户终端200a发起进度倒退指令s1时,选择了第二同步方式,若用户终端200b接收到进度倒退指令s1后,其网络状态不佳,则会将当前起播时间10:20作为暂停播放时间戳,5分钟后用户终端200b的网络状态恢复为畅通状态,则用户终端200b将从15:20开始播放直播视频,此方式会让用户终端200b丧失部分片断。可选的,可以将第一同步方式或第二同步方式设置为默认的同步方式。其中,对网络状态的检测工作可以由服务器执行,具体过程可以参见下述图6a-图6c所对应实施例中的步骤S405以及步骤S409。
此外,针对虚拟共享播放室中多次进行恶意调整以致影响用户体验的违规用户,虚拟共享播放室中的其他用户可以对该违规用户进行举报。例如,第一终端的播放界面中可以显示用户操作列表,该用户操作列表可以包括所有终端发起的进度调整历史行为以及对应的被举报人数,当第一终端需要举报第二终端时,可以在用户操作列表中显示第二终端对应的举报控件,进而可以响应第一终端针对该举报控件的触发操作,将第二终端对应的被举报人数进行累加,并对其在用户操作列表中所显示的数值进行更新。其中,每个用户均只能举报同一个用户一次。进一步,根据第二终端对应的被举报人数和虚拟共享播放室中的用户总数可以计算得到第二终端对应的违规数据,例如可以是被举报人数与用户总数的比值,第一终端可以获取第二终端对应的违规数据,若该违规数据大于第一违规阈值,则显示禁止操作提示信息,禁止操作提示信息用于提示取消响应第二终端发起的进度调整指令,若该违规数据大于第二违规阈值,则显示用户移除提示信息,其中,用户移除提示信息用于提示第二终端被移出虚拟共享播放室。例如,虚拟共享播放室中的用户总数为10,可将第一违规阈值设置为1/5,将第二违规阈值设置为1/2,若检测到第二终端对应的被举报人数为3,则其对应的违规数据为3/10,大于第一违规阈值1/5,进而第二终端不能再对多媒体数据进行调整,第一终端也不会接收到第二终端发起的进度调整指令,且各用户终端均会显示禁止操作提示信息,例如,当用户2多次违规时,禁止操作提示信息可以是“用户2的违规调整已被禁止”。若检测到第二终端对应的被举报人数为6,则其对应的违规数据为3/5,大于第二违规阈值1/2,进而可以将第二终端移除出上述虚拟共享播放室,且各用户终端均会显示移除提示信息,例如,当用户2多次违规时,移除提示信息可以是“用户2已被移出该房间”。其中,第一违规阈值和第二违规阈值可以根据实际情况来设置,如第一违规阈值可以小于第二违规阈值。可选的,也可以不限制每个用户对同一个用户的举报次数,则当某个用户对应的被举报人数大于预设的阈值时,可以对其进行禁止操作处理或移除处理。
请一并参见图4,是本申请实施例提供的一种视频进度控制过程的流程示意图。此时多媒体数据为视频,用户可以通过视频类软件来同步观看视频。如图4所示,该过程可以包括以下步骤:
步骤S201,选择用于共同观看的视频;
具体的,用户终端可以响应用户针对一个未播放的视频或当前正在播放的视频的选择操作,确定用于共同播放的视频。
步骤S202,选择共同观看的用户;
具体的,用户终端可以响应针对视频类软件提供的“一起看”功能控件的点击操作,显示输入框以供用户输入想要一起看的其他用户的账号,或者,弹出好友列表以供用户进行勾选。进一步,用户终端可以根据选择的用户账号和步骤S201所选择的视频,生成邀请请求,并将该邀请请求发送至服务器进行处理。
步骤S203,检测被邀请的用户是否开启共同观看;
具体的,服务器可以根据邀请请求,检测被邀请的所有用户是否已开启“接受所有人邀请”功能或是否已开启“接受好友邀请”功能,若检测到至少一个用户终端中的上述两项功能均未开启,则表示该至少一个用户终端对应的用户未开启共同观看,进而可以将提示消息发送给发起邀请的用户终端,提示有用户不接受“一起看”邀请,并引导发起邀请的用户重新选择其他用户一起观看视频。若检测到被邀请的所有用户均开启了两项功能中的其中一项,则表示被邀请的所有用户均开启了共同观看,从而可以进入步骤S204。
步骤S204,检测被邀请的用户对应的网络状态以及邀请响应结果;
具体的,服务器可以将邀请请求发送至被邀请的用户终端,进而可以检测被邀请的所有用户终端对应的网络状态以及邀请响应结果,若检测到至少一个用户终端对应的网络状态不是畅通状态,或者,检测到至少一个用户终端对应的邀请响应结果是未确认响应结果(即尚未接受“一起看”邀请),则可以在发起邀请的用户终端上显示未接受的用户名单和网络不畅的用户名单,并继续等待用户接受以及等待网络恢复畅通;反之,若网络状态均为畅通状态,且邀请响应结果均为确认响应结果(即接受了“一起看”的邀请),则可以进入步骤S205。
步骤S205,所有用户终端开始同步播放选中的视频;
步骤S206,视频播放进度同步;
具体的,当某个用户点击暂停或点击进度条某个位置进行跳转(即对应的用户终端发起进度调整指令)时,可以同步到所有用户终端的视频播放进度,且可以弹出提示框(如安卓系统中的toast,是一种简易的消息提示框)提示是哪个用户发起了视频同步。
步骤S207,服务器可以对获取到的语音聊天数据进行回音消除;
具体的,用户在观看视频的过程中,可以使用聊天框进行聊天,或开麦进行直接交流,还可以发送弹幕,终端设备可以将用户在聊天框中发送的语音聊天数据或是开麦过程中产生的语音聊天数据发送至服务器进行回音消除,具体过程可以参见上述图3所对应实施例中的步骤S102,这里不再进行赘述。
步骤S208,连通测试各用户终端的网络状态;
具体的,服务器可以定时连通测试各用户终端的网络状态,当检测到某个用户终端网络不畅时,服务器可以自动暂停其他用户终端的播放视频,等待所有用户终端网络畅通后,可以自动继续播放视频。
本申请可以通过虚拟共享播放室与第二终端共同播放多媒体数据,若第一终端具备针对第二终端的播放进度同步权限,则当获取到第二终端所发起的进度调整指令时,可以根据进度调整指令确定多媒体数据的进度调整位置,进而可以将上述多媒体数据调整至该进度调整位置,并与第二终端同步播放进度调整后的多媒体数据。可见,在第二终端发起进度调整指令的过程中,当第一终端具备针对第二终端的播放进度同步权限时,第一终端可以根据该进度调整指令来调整多媒体数据的播放进度,实现与第二终端的自动进度同步,而不需要用户进行手动调整,从而可以提高对多媒体数据的进度调整效率,且相比于直接调整多媒体数据的播放进度,由于需要检测第一终端是否具备针对第二终端的播放进度同步权限,因此可以屏蔽第二终端发起的恶意的进度调整,且由于第二终端可以包括多个用户终端,故而可以满足多方用户对多媒体数据的进度调整需求,且支持跨终端进度同步,并支持聊天、开麦、发弹幕等功能,提高共同播放多媒体数据的多方用户之间的互动性,进而丰富多媒体数据的播放方式,并通过回音消除提升语音互动质量。此外,本申请还支持线上演唱会等实时类多媒体数据场景的同步播放,带来全新的视听体验,还可以选择不同的同步方式来应对网络质量不佳时可能出现进度不同步的问题,并在播放过程中定时检测和校正,以保证多方用户终端的播放进度同步性。
请参见图5,是本申请实施例提供的另一种多媒体数据进度控制方法的流程示意图。可以理解的是,本申请提供的方法可以由计算机设备执行,计算机设备包括但不限于用户终端或服务器。在本申请实施例中以服务器为例进行说明。如图5所示,该方法可以包括以下步骤:
步骤S301,接收在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第一终端;
具体的,如上述图3所对应实施例中步骤S101所述,当第一终端向第二终端发出共同播放多媒体数据的邀请,且第二终端接受该邀请后,服务器可以根据第一终端对应的地址信息和第二终端对应的地址信息创建一个虚拟共享播放室,并将第一终端对应的用户账号和第二终端对应的用户账号添加到该虚拟共享播放室中,同时将该虚拟共享播放室的用户界面发送到第一终端和第二终端进行显示。其中,第一终端向第二终端发起邀请的具体过程可以参加上述图3所对应实施例中的步骤S101。当服务器确认该虚拟共享播放室中的所有终端的网络状态均为畅通状态后,可以对各用户终端进行多媒体数据的下发,进而第一终端和第二终端可以开始共同播放多媒体数据。在播放过程中,当第二终端发起同步请求时,服务器可以接收第二终端所发起的进度调整指令,并通过下述步骤S302检测当前是否支持该进度调整指令。其中,进度调整指令可以包括手势指令和语音指令。
步骤S302,若检测到所述第一终端具备针对所述第二终端的播放进度同步权限,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
具体的,在接收到第二终端所发起的进度调整指令后,服务器可以检测第一终端是否具备针对第二终端的播放进度同步权限,例如,若第一终端对应的用户和第二终端对应的用户为好友关系,则服务器可以检测第一终端是否开启“只接受好友的进度同步”功能,若第一终端已开启该功能,则表示第一终端接受第二终端所发起的进度调整指令,也即第一终端具备针对第二终端的播放进度同步权限,进一步,服务器可以根据该进度调整指令确定上述多媒体数据的进度调整位置,并将该进度调整位置发送给第一终端。反之,若第一终端对应的用户和第二终端对应的用户不是好友关系,则即使第一终端开启了“只接受好友的进度同步”功能,也不具备针对第二终端的播放进度同步权限,故而服务器不会将进度调整位置发送给第一终端。可选的,当进度调整指令包括第二终端在虚拟共享播放室中录入的语音控制数据(也可称为语音指令)时,服务器可以根据该语音控制数据确定上述多媒体数据的进度调整位置,具体过程可参见下述图6a-图6c所对应实施例中的步骤S407。
步骤S303,控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的多媒体数据。
具体的,服务器可以控制第一终端和第二终端根据上述步骤S302所确定的进度调整位置对多媒体数据的播放进度进行调整,进而开始同步播放进度调整后的多媒体数据。例如,用户1和用户2同步观看一个直播视频,用户1因为中途离开,通过用户终端200a暂停了已观看到18:00(即18分)的直播视频,并将暂停指令发送至服务器,则服务器会将该暂停指令发送至用户终端200b,使得用户终端200b也将直播视频暂停在18:00的位置。用户1回到座位上点击用户终端200a上显示的播放控件,用户终端200a检测到播放控件被触发时,可以向服务器发送播放指令,服务器接收到该播放指令后,可以确定直播视频的进度调整位置为18:00,故而服务器可以控制用户终端200a和用户终端200b从18:00的位置开始继续同步播放直播视频。此外,针对直播流数据,服务器还需要检测流缓存数据中是否存在进度调整指令所请求的数据,具体过程可参见下述图6a-图6c所对应实施例中的步骤S408。
上述可知,在第二终端发起进度调整指令的过程中,只有当第一终端具备针对第二终端的播放进度同步权限时,第一终端才会根据该进度调整指令来调整多媒体数据的播放进度,实现与第二终端的进度同步,且不需要用户进行手动调整,从而可以提高对多媒体数据的进度调整效率。相比于直接调整多媒体数据的播放进度,由于需要检测第一终端是否具备针对第二终端的播放进度同步权限,因此可以屏蔽第二终端发起的恶意的进度调整,且由于第二终端可以包括多个用户终端,故而可以满足多方用户对多媒体数据的进度调整需求,提高共同播放多媒体数据的多方用户之间的互动性,进而丰富多媒体数据的播放方式。
请参见图6a-图6c,是本申请实施例提供的又一种多媒体数据进度控制方法的流程示意图。该方法可以包括以下步骤:
步骤S401,接收第一终端所发送的用于邀请第二终端的邀请请求;对所述邀请请求进行合法性检测;当检测到所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;
具体的,第一终端将根据所选择的多媒体数据和第二终端对应的用户账号生成邀请请求,具体过程可以参见上述图3所对应实施例中的步骤S101,这里不再赘述。第一终端可以将该邀请请求发送给服务器,服务器接收该邀请请求后,可以获取上述多媒体数据所支持的播放功能和播放权限,以及获取第二终端对应的用户属性信息,其中,用户属性信息可以包括用户邀请权限以及用户等级权限,进而可以对播放功能、播放权限、用户邀请权限以及用户等级权限进行检测。当检测到该多媒体数据支持同步播放功能,且用户邀请权限支持邀请功能,且用户等级权限满足上述多媒体数据的播放权限时,服务器可以将该邀请请求确定为合法请求,并将该邀请请求推送给第二终端。例如,如上述图4所示,若选中的视频支持同步播放功能,则可以在该视频的播放界面显示“一起看”功能控件;若第二终端开启“接受所有人邀请”功能或是否已开启“接受好友邀请”功能,则表示第二终端对应的用户邀请权限支持邀请功能,服务器可以进而检测第一终端和第二终端之间是否为好友关系;若该视频的播放权限为只限VIP(Very Important Person,贵宾)用户观看,则第二终端对应的用户等级权限需要满足VIP权限,可选的,若是需要付费观看的视频,则用户需要通过第二终端进行缴费才能满足该视频的播放权限,上述条件都满足时,服务器可以将第一终端发送的邀请请求确定为合法请求。
可选的,当检测到邀请请求不是合法请求时,服务器可以将非法提示信息发送至第一终端和第二终端,例如可以提示用户重新选择多媒体数据或用户账号,或提示用户购买VIP会员或付费。
本申请实施例中仅以第一终端作为邀请方、第二终端作为受邀方为例进行说明,也可以是第二终端作为邀请方、第一终端作为受邀方,本申请不作具体限制。
步骤S402,获取所述第二终端根据所述邀请请求所返回的邀请响应结果;当所述邀请响应结果为确认响应结果时,根据所述第一终端对应的地址信息和所述第二终端对应的地址信息创建虚拟共享播放室;
具体的,第二终端接收到邀请请求后,可以将该邀请请求显示在终端界面上,并为用户提供接受邀请按钮,根据针对接受邀请按钮的触发操作生成邀请响应结果,进而服务器可以获取第二终端返回的邀请响应结果,并将该邀请响应结果反馈给第一终端。当服务器检测到该邀请响应结果为确认响应结果时,服务器可以根据用户账号获取第一终端对应的地址信息和第二终端对应的地址信息,并根据上述地址信息创建虚拟共享播放室,并将该虚拟共享播放室的显示界面发送给第一终端和第二终端,其中,该虚拟共享播放室的显示界面可以包括多媒体数据的播放界面以及用于显示聊天信息的聊天界面。
可选的,服务器还可以获取第二终端对应的网络连接质量,并将上述第二终端对应的网络连接质量发送给第一终端进行显示,第一终端可以根据第二终端所反馈的邀请响应结果和网络连接质量确认是否开始播放,若第一终端响应针对确认开播控件的触发操作,则即使部分第二终端没有接受邀请或第二终端对应的网络连接质量没有满足播放条件(即该网络连接质量小于网络质量阈值),服务器也可以创建虚拟共享播放室,若此前未接受邀请的终端接受了邀请,也可以允许该终端加入到虚拟共享播放室中。
步骤S403,将所述第一终端所选择的多媒体数据下发至所述第一终端和所述第二终端,以使所述第一终端在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据;
具体的,第一终端可以记录所选择的多媒体数据的当前播放进度,作为播放进度信息并发送给服务器,服务器可以获取该播放进度信息,当服务器确认所有终端就绪后,即第二终端返回了确认响应结果,且第一终端对应的网络连接质量和第二终端对应的网络连接质量均满足了播放条件(即上述网络连接质量均大于或等于网络质量阈值),服务器可以将上述多媒体数据和播放进度信息发送给第一终端和第二终端,第一终端和第二终端可以根据该播放进度信息在虚拟共享播放室中共同播放上述多媒体数据。
步骤S404,所述多媒体数据包括直播流数据;对所述直播流数据进行缓存,得到流缓存数据;
具体的,多媒体数据包括直播流数据,为了后续可以支持对直播流数据的倒退和回看等操作,服务器可以预先对直播流数据进行缓存,得到流缓存数据,且在直播流数据播放的过程中实时更新流缓存数据。
步骤S405,获取所述第一终端和所述第二终端分别对应的网络连接质量;若所述第一终端对应的网络连接质量小于网络质量阈值,或所述第二终端对应的网络连接质量小于所述网络质量阈值,则采用第一同步方式对所述多媒体数据的播放进度进行校正;
具体的,在同步播放多媒体数据的过程中,服务器可以定时连通测试各个终端的网络状态(如有线网络或无线网络),例如,可以获取第一终端和第二终端分别对应的网络连接质量,并对上述网络连接质量进行检测,其中,网络连接质量可以通过对响应时间、网络抖动、丢包率、带宽、信号强度等网络信息进行统计所得到。当第一终端对应的网络连接质量小于网络质量阈值,或第二终端对应的网络连接质量小于网络质量阈值时,服务器可以向第一终端和第二终端发送暂停指令,控制各用户终端暂停播放多媒体数据,并在第一终端和第二终端显示暂停提示信息,用于提示当前是哪个用户的网络状态不佳(或网络不畅),并请其他用户等待。进一步,当服务器再次检测到第一终端对应的网络连接质量大于或等于网络质量阈值,且第二终端对应的网络连接质量大于或等于网络质量阈值,即所有用户终端的网络状态均为畅通状态时,服务器可以向第一终端和第二终端同步下发播放指令,控制第一终端和第二终端从此前暂停的位置开始恢复播放多媒体数据。上述对多媒体数据的播放进度进行校正的方式可称为第一同步方式,也可称为严格强制同步方式。其中,网络质量阈值可以根据实际需要来设置,也可采用默认的经验值,本申请在此不作具体限制。
步骤S406,接收所述第二终端所发起的进度调整指令;所述进度调整指令包括所述第二终端在所述虚拟共享播放室中录入的语音控制数据;
具体的,第二终端发起的进度调整指令可以是手势指令或语音指令,具体可参见上述图3所对应实施例中的步骤S102,服务器在接收到进度调整指令后,可以识别该进度调整指令是手势指令还是语音指令,若是手势指令,则服务器可以根据第二终端录入的触发操作得到多媒体数据的进度调整位置,若是语音指令,则服务器可以对进度调整指令中的语音控制数据进行如步骤S407中的语音匹配处理。此外,由于用户可以在虚拟共享播放室中发送语音聊天信息或开麦交流,因此服务器还可以对语音聊天数据和语音控制数据进行识别。
需要说明的是,若存在多个第二终端同时发起进度调整指令,则服务器可以从中随机选择一个进度调整指令作为实际调整指令,其余的指令则可归为误操作。本申请实施例仅以第二终端发起进度调整指令为例进行说明,此外,第一终端也可以发起进度调整指令,本申请实施例不作具体限制。
需要说明的是,上述服务器和用户终端之间的通信可以采用传输控制协议(TCP,Transmission Control Protocol),也可以采用应用层协议,如超文本传输协议(http,架构在TCP协议上),或者可以采用基于TCP自定义的通信协议。
步骤S407,若检测到所述第一终端具备针对所述第二终端的播放进度同步权限,则根据所述语音控制数据确定所述多媒体数据的进度调整位置;
具体的,服务器可以对第一终端的播放进度同步权限进行检测(具体可参见上述图5所对应实施例中的步骤S302),当检测到第一终端具备针对第二终端的播放进度同步权限,且服务器接收到的进度调整指令是语音指令时,服务器可以基于语音识别模型,对进度调整指令中的语音控制数据进行语义识别,例如用户在讨论电影a中已播放过的热门片段,从获取到的语音控制数据中可以提取出与该片段内容相关的某些词汇作为语义识别的结果,进而可以将得到的识别结果与多媒体数据中的至少一个热度标签进行匹配,当识别结果与至少一个热度标签中的目标热度标签的匹配度大于调整阈值时,将目标热度标签所在的位置确定为进度调整位置。其中,语音识别模型可以通过对相关类型的多媒体数据进行训练得到,例如可以对多部悬疑类型的电影进行训练得到基础的语音识别模型,进而可以采用现有的对悬疑类型的电影的讨论信息来重复训练该语音识别模型,以提升识别的准确率。热度标签可以根据多媒体数据对应的弹幕信息、评论信息、播放次数、转发次数等数据来生成,而调整阈值可以根据热度标签不断更新以提升识别的准确率。需要说明的是,可以在多媒体应用中设置语音调整功能按钮,若用户不希望通过语音对播放进度进行调整,则可以随时触发语音调整功能按钮来关闭这个功能。此外,服务器还可以识别出“快进”、“快退”、“暂停”、“播放”、“切换到下一个”等语音控制数据,此时对语音控制数据的处理与对手势指令的处理类似,但如“快进”、“快退”等没有指出明确的进度调整位置的语音控制数据,服务器可以根据预先设置的默认调整值来确定进度调整位置,例如,可以将“快进”、“快退”等语音指令的默认调整值都设置为30秒,则当服务器接收到“快进”的语音指令时,可以将多媒体数据的当前播放进度前进30秒。
可选的,若检测到第一终端不具备针对第二终端的播放进度同步权限,服务器可以向第一终端发送提示信息,提示用户不能对第二终端正在播放的多媒体数据进行进度调整。
步骤S408,控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的多媒体数据;
具体的,当多媒体数据为普通类型数据,即非直播流数据时,服务器可以直接控制第一终端和第二终端将多媒体数据的播放进度调整至进度调整位置,但当多媒体数据为直播流数据时,服务器需要检测当前的直播流数据是否支持上述进度调整指令,具体的,若当前已缓存的流缓存数据中,存在上述进度调整位置所指示的数据,则服务器可以从流缓存数据中提取出该进度调整位置所指示的数据,并将进度调整位置所指示的数据确定为进度调整后的多媒体数据,进而可以将进度调整后的多媒体数据分别下发至第一终端和第二终端,以使第一终端与第二终端同步播放进度调整后的多媒体数据。若流缓存数据中不存在上述进度调整位置所指示的数据,则服务器可以将提示信息发送至第二终端,提示用户无法进行当前的进度调整操作。
步骤S409,将所述进度调整后的多媒体数据确定为目标多媒体数据;获取所述第一终端对应的网络连接质量;若所述第一终端对应的网络连接质量小于网络质量阈值,则采用第二同步方式对所述目标多媒体数据的播放进度进行校正;
具体的,在进行进度调整后,服务器可以将上述进度调整后的多媒体数据确定为目标多媒体数据,并定时检测各个终端对应的网络连接质量,此步骤中仅以第一终端为例进行说明。当检测到第一终端对应的网络连接质量小于网络质量阈值时,服务器可以向第一终端发送暂停指令,控制第一终端暂停播放目标多媒体数据,此时,第二终端仍可以继续播放多媒体数据。进一步,服务器可以记录第一终端的暂停播放时间戳t0,并将暂停提示信息发送至第一终端和第二终端,用于提示用户第一终端当前的网络状态不佳。当服务器再次检测到第一终端对应的网络连接质量大于或等于网络质量阈值时(即网络畅通时),可以获取第一终端的暂停播放时长t1,进而可以根据暂停播放时长t1和暂停播放时间戳t0确定参考进度调整位置T=t0+t1,从而可以控制第一终端将目标多媒体数据的播放进度调整至参考进度调整位置T,使得第一终端的播放进度和第二终端的播放进度对齐。上述对多媒体数据的播放进度进行校正的方式可称为第二同步方式,与步骤S405中的第一同步方式相比,两种同步方式各有优劣,可以由用户在发起进度同步时根据需要自行选择,也可以将第一同步方式或第二同步方式作为默认的同步方式。
步骤S410,获取所述第一终端和所述第二终端分别发送的语音聊天数据,对所述语音聊天数据进行回音消除;
具体的,用户可以在虚拟共享播放室中进行互动,第一终端和第二终端可以获取各自的用户所录入的语音聊天数据,并将语音聊天数据发送给服务器进行回音消除,特别是开麦进行交流的场景下,通过回音消除可以极大提升通信质量,进而可以将回音消除后的语音聊天数据发送给各个用户终端。回音消除的具体过程可参见上述图3所对应实施例中的步骤S102,在此不再进行赘述
步骤S411,获取所述第一终端和所述第二终端分别对应的违规数据;根据所述违规数据对所述第一终端和所述第二终端进行相应的处理。
具体的,服务器可以获取第一终端和第二终端分别对应的违规数据,当其中一个用户终端1对应的违规数据大于第一违规阈值时,可以取消响应用户终端1后续发起的所有进度调整指令,当其中一个用户终端2对应的违规数据大于第二违规阈值时,可以将用户终端2移出虚拟共享播放室。其中,违规数据是根据各个用户终端对应的被举报人数和虚拟共享播放室中的用户总数所得到的,具体可参见上述图3所对应实施例中的步骤S103。
请一并参见图7a-图7d,是本申请实施例提供的一种视频进度控制过程的流程示意图。此时多媒体数据为视频,n个用户可以通过视频类软件上的“一起看”功能来同步观看视频。如图7a所示,是用户发起“一起看”的流程示意图。用户终端1的用户在选择视频和希望一起看的用户账号后,可以生成邀请请求,用户终端1将该邀请请求发送至“一起看”后台服务器,随后,“一起看”后台服务器可以联合媒资服务器、用户信息服务器核查该邀请请求是否合法,核查内容包括但不限于如媒资服务器可以检查选中的视频是否支持“一起看”功能,用户信息服务器可以核验受邀用户是否通过各自持有的用户终端开启了“一起看”功能,还可以有只限VIP可看之类的检查步骤。在核查该邀请请求为合法请求,即确定选中的视频支持“一起看”功能,且受邀用户各自持有的用户终端均开启了“一起看”功能(即具备针对用户终端1的播放进度同步权限)后,“一起看”后台服务器可以对受邀用户对应的用户终端2、用户终端3、……、用户终端n推送邀请通知,其中,邀请通知可以根据邀请请求生成。此外,用户可以通过用户终端主动上传本地视频,经“一起看”后台服务器保存,并审核通过后,可以发起“一起看”。
如图7b所示,是受邀用户接受邀请的流程示意图。当受邀用户对应的用户终端网络畅通,且接受用户终端1发起的邀请时,会响应“一起看”后台服务器,并在用户终端1和其他所有用户终端的界面上显示已接受用户、未接受用户或网络不畅用户的名单。如图7c所示,是各个用户终端开始同步播放的流程示意图。“一起看”后台服务器在确认所有用户终端就绪后(即上述邀请请求为合法请求,且受邀用户的用户终端返回的邀请响应结果为确认响应结果),可以通知流媒体服务器对各个用户终端进行播放流的下发,所有用户终端开始同步播放视频。同时,为了支持后续对在线演唱会等直播流数据的实时倒退和回放,也可以在流缓存服务器侧对播放流进行缓存。如图7d所示,是用户发送同步指令(即进度调整指令)的流程示意图。此处主要由一个播放指令同步服务器来控制各个用户终端的视频进度状态,播放指令同步服务器与各个用户终端之间可以采用TCP协议进行传输。进度同步需要由一个用户终端发起同步指令(如快进、快退、暂停等),经由播放指令同步服务器根据该同步指令向其他用户终端发送进度同步相关信息,以实现所有用户终端进度同步。此外,播放指令同步服务器可以联合流缓存服务器和流媒体服务器检查当前播放流是否支持该同步指令,例如,若在线演唱会等直播流数据已经到达最新播放位置时,则播放指令同步服务器无法响应快进操作。可选的,若当前播放流不是直播流数据,也可以不需要检查当前播放流是否支持该同步指令,而直接进行同步即可,这样可以节省运行内存,提升同步效率。此外,播放指令同步服务器会定时连通测试各个用户终端的网络状态,具体过程可参见上述图6a-图6c所对应实施例中的步骤S405和步骤S409,在此不再进行赘述。
需要说明的是,图1所对应实施例中的服务器100可以包括图7a-图7d所对应实施例中的“一起看”后台服务器、媒资服务器、用户信息服务器、流媒体服务器、流缓存服务器、播放指令同步服务器,这些服务器可以单独部署,也可以集成在同一个服务器中进行部署。
本申请可以通过接收并检测在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,若检测到第一终端具备针对第二终端的播放进度同步权限,则可以根据进度调整指令确定多媒体数据的进度调整位置,进而可以控制第一终端和第二终端将上述多媒体数据的播放进度调整至该进度调整位置。可见,在第二终端发起进度调整指令的过程中,只有当第一终端具备针对第二终端的播放进度同步权限时,第一终端才会根据该进度调整指令来调整多媒体数据的播放进度,实现与第二终端的进度同步,从而可以提高对多媒体数据的进度调整效率。相比于直接调整多媒体数据的播放进度,由于需要检测第一终端是否具备针对第二终端的播放进度同步权限,因此可以屏蔽第二终端发起的恶意的进度调整,且由于第二终端可以包括多个用户终端,故而可以满足多方用户对多媒体数据的进度调整需求,且支持异地同步播放同一多媒体数据以及跨终端进度同步,扩展多媒体数据播放的应用场景,并支持聊天、开麦、发弹幕等功能,提高共同播放多媒体数据的多方用户之间的互动性,进而丰富多媒体数据的播放方式,且提升多媒体应用的竞争力,并通过回音消除提升语音互动质量。此外,本申请还支持线上演唱会等实时类多媒体数据场景的同步播放,带来全新的视听体验,还可以选择不同的同步方式来应对网络质量不佳时可能出现进度不同步的问题,并在播放过程中定时检测和校正,以保证多方用户终端的播放进度同步性。
请参见图8,是本申请实施例提供的一种多媒体数据进度控制装置的结构示意图。如图8所示,该多媒体数据进度控制装置1可以包括播放模块11、指令获取模块12、第一调整模块13;
播放模块11,用于在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;
所述播放模块11,具体用于当所述邀请响应结果为确认响应结果时,在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据;
指令获取模块12,用于若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
第一调整模块13,用于将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。
其中,播放模块11的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,指令获取模块12的具体功能实现方式可以参见上述图3所对应实施例中的步骤S102,第一调整模块13的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,这里不再进行赘述。
请一并参见图8,该多媒体数据进度控制装置1还可以包括第一邀请模块14、违规处理模块15、举报模块16、聊天模块17;
第一邀请模块14,用于响应针对所述多媒体数据和所述第二终端对应的用户账号的选择操作,生成邀请请求;当所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;获取所述第二终端根据所述邀请请求所返回的邀请响应结果,对所述邀请响应结果进行显示;
违规处理模块15,用于获取所述第二终端对应的违规数据;所述违规数据是根据所述第二终端对应的被举报人数和所述虚拟共享播放室中的用户总数所得到的;
所述违规处理模块15,还用于若所述违规数据大于第一违规阈值,则显示禁止操作提示信息;所述禁止操作提示信息用于提示取消响应所述第二终端发起的进度调整指令;
所述违规处理模块15,还用于若所述违规数据大于第二违规阈值,则显示用户移除提示信息;所述用户移除提示信息用于提示所述第二终端被移出所述虚拟共享播放室;
举报模块16,用于响应针对所述第二终端对应的举报控件的触发操作,在用户操作列表中显示所述第二终端对应的被举报人数以及所述第二终端发起的进度调整历史行为;
聊天模块17,用于在所述虚拟共享播放室中显示聊天界面;获取语音聊天数据,将所述语音聊天数据发送至服务器,以使所述服务器对所述语音聊天数据进行回音消除;在所述聊天界面中播放回音消除后的语音聊天数据。
其中,第一邀请模块14的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,违规处理模块15的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,举报模块16的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,聊天模块17的具体功能实现方式可以参见上述图3所对应实施例中的步骤S102,这里不再进行赘述。
本申请可以通过虚拟共享播放室与第二终端共同播放多媒体数据,若第一终端具备针对第二终端的播放进度同步权限,则当获取到第二终端所发起的进度调整指令时,可以根据进度调整指令确定多媒体数据的进度调整位置,进而可以将上述多媒体数据调整至该进度调整位置,并与第二终端同步播放进度调整后的多媒体数据。可见,在第二终端发起进度调整指令的过程中,只有当第一终端具备针对第二终端的播放进度同步权限时,第一终端才会根据该进度调整指令来调整多媒体数据的播放进度,实现与第二终端的进度同步,从而可以提高对多媒体数据的进度调整效率,相比于直接调整多媒体数据的播放进度,由于需要检测第一终端是否具备针对第二终端的播放进度同步权限,因此可以屏蔽第二终端发起的恶意的进度调整,且由于第二终端可以包括多个用户终端,故而可以满足多方用户对多媒体数据的进度调整需求,且支持跨终端进度同步,并支持聊天、开麦、发弹幕等功能,提高共同播放多媒体数据的多方用户之间的互动性,进而丰富多媒体数据的播放方式。此外,本申请还支持线上演唱会等实时类多媒体数据场景的同步播放,带来全新的视听体验,还可以选择不同的同步方式来应对网络质量不佳时可能出现进度不同步的问题,并在播放过程中定时检测和校正,以保证多方用户终端的播放进度同步性。
请参见图9,是本申请实施例提供的另一种多媒体数据进度控制装置的结构示意图。如图9所示,该多媒体数据进度控制装置2可以包括指令接收模块21、第二调整模块22。
指令接收模块21,用于接收在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第一终端;若检测到所述第一终端具备针对所述第二终端的播放进度同步权限,则根据所述进度调整指令确定所述多媒体数据的进度调整位置;
第二调整模块22,用于控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的多媒体数据;
所述第二调整模块22,具体用于若所述流缓存数据中存在所述进度调整位置所指示的数据,则从所述流缓存数据中提取出所述进度调整位置所指示的数据,将所述进度调整位置所指示的数据确定为进度调整后的多媒体数据,将所述进度调整后的多媒体数据分别下发至所述第一终端和所述第二终端,以使所述第一终端与所述第二终端同步播放所述进度调整后的多媒体数据。
其中,指令接收模块21的具体功能实现方式可以参见上述图5所对应实施例中的步骤S301-步骤S302,或者可以参见上述图6a-图6c所对应实施例中的步骤S406-步骤S407,第二调整模块22的具体功能实现方式可以参见上述图5所对应实施例中的步骤S303,或者可以参见上述图6a-图6c所对应实施例中的步骤S408,这里不再进行赘述。
请一并参见图9,该多媒体数据进度控制装置2还可以包括缓存模块23、第二邀请模块24、创建模块25、数据下发模块26、第一同步模块27、第二同步模块28;
缓存模块23,用于对所述直播流数据进行缓存,得到流缓存数据;
第二邀请模块24,用于接收所述第一终端所发送的用于邀请所述第二终端的邀请请求;对所述邀请请求进行合法性检测;当检测到所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;
所述第二邀请模块24,具体用于获取所述多媒体数据支持的播放功能以及播放权限;若所述播放功能为同步播放功能,且所述用户邀请权限支持邀请功能,且所述用户等级权限满足所述多媒体数据的播放权限,则将所述邀请请求确定为合法请求;
创建模块25,用于获取所述第二终端根据所述邀请请求所返回的邀请响应结果;当所述邀请响应结果为确认响应结果时,根据所述第一终端对应的地址信息和所述第二终端对应的地址信息创建所述虚拟共享播放室;
数据下发模块26,用于将所述多媒体数据下发至所述第一终端和所述第二终端,以使所述第一终端在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据;
第一同步模块27,用于获取所述第一终端和所述第二终端分别对应的网络连接质量;若所述第一终端对应的网络连接质量小于网络质量阈值,或所述第二终端对应的网络连接质量小于所述网络质量阈值,则控制所述第一终端和所述第二终端暂停播放所述多媒体数据,将暂停提示信息发送至所述第一终端和所述第二终端;
所述第一同步模块27,还用于当所述第一终端对应的网络连接质量大于或等于所述网络质量阈值,且所述第二终端对应的网络连接质量大于或等于所述网络质量阈值时,控制所述第一终端和所述第二终端恢复播放所述多媒体数据;
第二同步模块28,用于将所述进度调整后的多媒体数据确定为目标多媒体数据;获取所述第一终端对应的网络连接质量;若所述第一终端对应的网络连接质量小于网络质量阈值,则控制所述第一终端暂停播放所述目标多媒体数据,记录所述第一终端的暂停播放时间戳,将暂停提示信息发送至所述第一终端和所述第二终端;
所述第二同步模块28,还用于当所述第一终端对应的网络连接质量大于或等于网络质量阈值时,获取所述第一终端的暂停播放时长,根据所述暂停播放时长和所述暂停播放时间戳确定参考进度调整位置;控制所述第一终端将所述目标多媒体数据的播放进度调整至所述参考进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的目标多媒体数据。
其中,缓存模块23的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S404,第二邀请模块24的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S401,创建模块25的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S402,数据下发模块26的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S403,第一同步模块27的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S405,第二同步模块28的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S409,这里不再进行赘述。
请一并参见图9,指令接收模块21可以包括匹配单元211、位置确定单元212;
匹配单元211,用于基于语音识别模型对所述进度调整指令中的所述语音控制数据进行语义识别,将得到的识别结果与所述多媒体数据中的至少一个热度标签进行匹配;
位置确定单元212,用于当所述识别结果与所述至少一个热度标签中的目标热度标签的匹配度大于调整阈值时,将所述目标热度标签所在的位置确定为进度调整位置。
其中,匹配单元211和位置确定单元212的具体功能实现方式可以参见上述图6a-图6c所对应实施例中的步骤S407,这里不再进行赘述。
本申请可以通过接收并检测在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,若检测到第一终端具备针对第二终端的播放进度同步权限,则可以根据进度调整指令确定多媒体数据的进度调整位置,进而可以控制第一终端和第二终端将上述多媒体数据的播放进度调整至该进度调整位置。可见,在第二终端发起进度调整指令的过程中,只有当第一终端具备针对第二终端的播放进度同步权限时,第一终端才会根据该进度调整指令来调整多媒体数据的播放进度,实现与第二终端的进度同步,从而可以提高对多媒体数据的进度调整效率,相比于直接调整多媒体数据的播放进度,由于需要检测第一终端是否具备针对第二终端的播放进度同步权限,因此可以屏蔽第二终端发起的恶意的进度调整,且由于第二终端可以包括多个用户终端,故而可以满足多方用户对多媒体数据的进度调整需求,且支持异地同步播放同一多媒体数据以及跨终端进度同步,扩展了多媒体数据播放的应用场景,并支持聊天、开麦、发弹幕等功能,提高共同播放多媒体数据的多方用户之间的互动性,进而丰富多媒体数据的播放方式,且提升多媒体应用的竞争力,并通过回音消除提升语音互动质量。此外,本申请还支持线上演唱会等实时类多媒体数据场景的同步播放,带来全新的视听体验,还可以选择不同的同步方式来应对网络质量不佳时可能出现进度不同步的问题,并在播放过程中定时检测和校正,以保证多方用户终端的播放进度同步性。
请参见图10,图10是本申请实施例提供的一种计算机设备的结构示意图。如图10所示,该计算机设备1000可以是用户终端,其包括处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图10所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图10所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现上述图3所对应实施例中对所述多媒体数据进度控制方法的描述,这里不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3所对应实施例中对所述多媒体数据进度控制方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且所述计算机可读存储介质中存储有计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图3所对应实施例中对所述多媒体数据进度控制方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请实施例的描述。
请参见图11,图11是本申请实施例提供的另一种计算机设备的结构示意图。如图11所示,该计算机设备2000可以是服务器,其包括:处理器2001,网络接口2003和存储器2004,此外,上述计算机设备2000还可以包括至少一个通信总线2002。其中,通信总线2002用于实现这些组件之间的连接通信。其中,网络接口2003可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器2004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器2004可选的还可以是至少一个位于远离前述处理器2001的存储装置。如图11所示,作为一种计算机可读存储介质的存储器2004中可以包括操作系统以及网络通信模块。
在如图11所示的计算机设备2000中,网络接口2003可提供网络通讯功能,以实现上述图5、图6a-图6c任一个所对应实施例中对所述多媒体数据进度控制方法的描述,这里不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
应当理解,本申请实施例中所描述的计算机设备2000可执行前文图5、图6a-图6c任一个所对应实施例中对所述多媒体数据进度控制方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且所述计算机可读存储介质中存储有计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图5、图6a-图6c任一个所对应实施例中对所述多媒体数据进度控制方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请实施例的描述。
本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例中上述图3、图5、图6a-图6c任一个所对应实施例提供的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储存储器(Read-Only Memory,ROM)或随机存储存储器(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (15)

1.一种多媒体数据进度控制方法,其特征在于,包括:
第一终端在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;
若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
响应针对所述多媒体数据和所述第二终端对应的用户账号的选择操作,生成邀请请求;
当所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;
获取所述第二终端根据所述邀请请求所返回的邀请响应结果,对所述邀请响应结果进行显示;
则所述第一终端在虚拟共享播放室中播放多媒体数据,包括:
当所述邀请响应结果为确认响应结果时,在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据。
3.根据权利要求1所述的方法,其特征在于,还包括:
获取所述第二终端对应的违规数据;所述违规数据是根据所述第二终端对应的被举报人数和所述虚拟共享播放室中的用户总数所得到的;
若所述违规数据大于第一违规阈值,则显示禁止操作提示信息;所述禁止操作提示信息用于提示取消响应所述第二终端发起的进度调整指令;
若所述违规数据大于第二违规阈值,则显示用户移除提示信息;所述用户移除提示信息用于提示所述第二终端被移出所述虚拟共享播放室。
4.根据权利要求3所述的方法,其特征在于,还包括:
响应针对所述第二终端对应的举报控件的触发操作,在用户操作列表中显示所述第二终端对应的被举报人数以及所述第二终端发起的进度调整历史行为。
5.根据权利要求1所述的方法,其特征在于,还包括:
在所述虚拟共享播放室中显示聊天界面;
获取语音聊天数据,将所述语音聊天数据发送至服务器,以使所述服务器对所述语音聊天数据进行回音消除;
在所述聊天界面中播放回音消除后的语音聊天数据。
6.一种多媒体数据进度控制方法,其特征在于,包括:
接收在虚拟共享播放室中播放多媒体数据的第二终端所发起的进度调整指令,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第一终端;
若检测到所述第一终端具备针对所述第二终端的播放进度同步权限,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的多媒体数据。
7.根据权利要求6所述的方法,其特征在于,所述进度调整指令包括所述第二终端在所述虚拟共享播放室中录入的语音控制数据;
所述根据所述进度调整指令确定所述多媒体数据的进度调整位置,包括:
基于语音识别模型对所述进度调整指令中的所述语音控制数据进行语义识别,将得到的识别结果与所述多媒体数据中的至少一个热度标签进行匹配;
当所述识别结果与所述至少一个热度标签中的目标热度标签的匹配度大于调整阈值时,将所述目标热度标签所在的位置确定为进度调整位置。
8.根据权利要求6所述的方法,其特征在于,所述多媒体数据包括直播流数据;所述方法还包括:
对所述直播流数据进行缓存,得到流缓存数据;
则所述控制所述第一终端将所述多媒体数据的播放进度调整至所述进度调整位置,包括:
若所述流缓存数据中存在所述进度调整位置所指示的数据,则从所述流缓存数据中提取出所述进度调整位置所指示的数据,将所述进度调整位置所指示的数据确定为进度调整后的多媒体数据,将所述进度调整后的多媒体数据分别下发至所述第一终端和所述第二终端,以使所述第一终端与所述第二终端同步播放所述进度调整后的多媒体数据。
9.根据权利要求6所述的方法,其特征在于,还包括:
接收所述第一终端所发送的用于邀请所述第二终端的邀请请求;
对所述邀请请求进行合法性检测;
当检测到所述邀请请求为合法请求时,将所述邀请请求发送至所述第二终端;
获取所述第二终端根据所述邀请请求所返回的邀请响应结果;
当所述邀请响应结果为确认响应结果时,根据所述第一终端对应的地址信息和所述第二终端对应的地址信息创建所述虚拟共享播放室;
将所述多媒体数据下发至所述第一终端和所述第二终端,以使所述第一终端在所述虚拟共享播放室中与所述第二终端共同播放所述多媒体数据。
10.根据权利要求9所述的方法,其特征在于,所述邀请请求包括所述第二终端对应的用户属性信息;所述用户属性信息包括用户邀请权限以及用户等级权限;
所述对所述邀请请求进行合法性检测,包括:
获取所述多媒体数据支持的播放功能以及播放权限;
若所述播放功能为同步播放功能,且所述用户邀请权限支持邀请功能,且所述用户等级权限满足所述多媒体数据的播放权限,则将所述邀请请求确定为合法请求。
11.根据权利要求6所述的方法,其特征在于,还包括:
获取所述第一终端和所述第二终端分别对应的网络连接质量;
若所述第一终端对应的网络连接质量小于网络质量阈值,或所述第二终端对应的网络连接质量小于所述网络质量阈值,则控制所述第一终端和所述第二终端暂停播放所述多媒体数据,将暂停提示信息发送至所述第一终端和所述第二终端;
当所述第一终端对应的网络连接质量大于或等于所述网络质量阈值,且所述第二终端对应的网络连接质量大于或等于所述网络质量阈值时,控制所述第一终端和所述第二终端恢复播放所述多媒体数据。
12.根据权利要求6所述的方法,其特征在于,还包括:
将所述进度调整后的多媒体数据确定为目标多媒体数据;
获取所述第一终端对应的网络连接质量;
若所述第一终端对应的网络连接质量小于网络质量阈值,则控制所述第一终端暂停播放所述目标多媒体数据,记录所述第一终端的暂停播放时间戳,将暂停提示信息发送至所述第一终端和所述第二终端;
当所述第一终端对应的网络连接质量大于或等于网络质量阈值时,获取所述第一终端的暂停播放时长,根据所述暂停播放时长和所述暂停播放时间戳确定参考进度调整位置;
控制所述第一终端将所述目标多媒体数据的播放进度调整至所述参考进度调整位置,以使所述第一终端与所述第二终端同步播放进度调整后的目标多媒体数据。
13.一种多媒体数据进度控制装置,其特征在于,包括:
播放模块,用于在虚拟共享播放室中播放多媒体数据,所述虚拟共享播放室还包括用于共同播放所述多媒体数据的第二终端;
指令获取模块,用于若所述第一终端具备针对所述第二终端的播放进度同步权限,则在获取到所述第二终端所发起的进度调整指令时,根据所述进度调整指令确定所述多媒体数据的进度调整位置;
第一调整模块,用于将所述多媒体数据的播放进度调整至所述进度调整位置,与所述第二终端同步播放进度调整后的多媒体数据。
14.一种计算机设备,其特征在于,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如权利要求1-12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-12任一项所述的方法。
CN202011365435.8A 2020-11-28 2020-11-28 多媒体数据进度控制方法、装置以及可读存储介质 Active CN114584838B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011365435.8A CN114584838B (zh) 2020-11-28 2020-11-28 多媒体数据进度控制方法、装置以及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011365435.8A CN114584838B (zh) 2020-11-28 2020-11-28 多媒体数据进度控制方法、装置以及可读存储介质

Publications (2)

Publication Number Publication Date
CN114584838A true CN114584838A (zh) 2022-06-03
CN114584838B CN114584838B (zh) 2024-05-17

Family

ID=81768450

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011365435.8A Active CN114584838B (zh) 2020-11-28 2020-11-28 多媒体数据进度控制方法、装置以及可读存储介质

Country Status (1)

Country Link
CN (1) CN114584838B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060002681A1 (en) * 2004-07-01 2006-01-05 Skipjam Corp. Method and system for synchronization of digital media playback
CN103065658A (zh) * 2012-12-18 2013-04-24 华为技术有限公司 多终端同步播放控制方法及装置
CN104125476A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 一种播放视频的方法及装置
CN108111867A (zh) * 2016-11-24 2018-06-01 广州华多网络科技有限公司 一种直播间发言监控方法及系统
CN111741351A (zh) * 2020-08-03 2020-10-02 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060002681A1 (en) * 2004-07-01 2006-01-05 Skipjam Corp. Method and system for synchronization of digital media playback
CN103065658A (zh) * 2012-12-18 2013-04-24 华为技术有限公司 多终端同步播放控制方法及装置
CN104125476A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 一种播放视频的方法及装置
CN108111867A (zh) * 2016-11-24 2018-06-01 广州华多网络科技有限公司 一种直播间发言监控方法及系统
CN111741351A (zh) * 2020-08-03 2020-10-02 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置及存储介质

Also Published As

Publication number Publication date
CN114584838B (zh) 2024-05-17

Similar Documents

Publication Publication Date Title
US9538250B2 (en) Methods and systems for creating and managing multi participant sessions
US8832760B2 (en) System and method for organizing group content presentations and group communications during the same
WO2015078199A1 (zh) 直播互动方法、装置、客户端、服务器及系统
US20120017149A1 (en) Video whisper sessions during online collaborative computing sessions
CN111886060B (zh) 协调多玩家游戏会话的方法、系统和介质
US20230396829A1 (en) Methods, systems, and media for synchronized media content playback on multiple devices
US9876741B1 (en) Methods, systems, and media for facilitating user interactions while watching media content
US8655144B2 (en) Communication apparatus
CN112954426B (zh) 视频播放方法、电子设备及存储介质
US12010161B1 (en) Browser-based video production
CN114584838B (zh) 多媒体数据进度控制方法、装置以及可读存储介质
KR100939904B1 (ko) 동영상 공동 관람 서비스 제공 방법 및 시스템
JP2018530944A (ja) 異種ネットワーキング環境におけるメディアレンダリングの同期化
JP7469771B1 (ja) サーバおよび方法
CN115665496B (zh) 一种在线视频语音互动方法、系统和存储介质
WO2015089224A1 (en) Enabling interaction between social network users during synchronous display of video channel
WO2024046584A1 (en) Method of joint viewing remote multimedia content
CN116939285A (zh) 视频配音方法及相关产品
EE et al. Published

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40070014

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant