CN112930687B - Media stream processing method and device, storage medium and program product - Google Patents
Media stream processing method and device, storage medium and program product Download PDFInfo
- Publication number
- CN112930687B CN112930687B CN201880098342.8A CN201880098342A CN112930687B CN 112930687 B CN112930687 B CN 112930687B CN 201880098342 A CN201880098342 A CN 201880098342A CN 112930687 B CN112930687 B CN 112930687B
- Authority
- CN
- China
- Prior art keywords
- media stream
- time stamp
- display time
- structured information
- web front
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
技术领域technical field
本申请涉及媒体流领域,例如涉及一种媒体流处理方法及装置、存储介质及程序产品。The present application relates to the field of media streams, for example, to a media stream processing method and device, a storage medium, and a program product.
背景技术Background technique
随着因特网应用的普及,在网络上传输的资料不仅仅局限于文字或者图形,声音和影视等媒体流的传播给人们带来新的享受。With the popularity of Internet applications, the data transmitted on the network is not limited to text or graphics, and the transmission of media streams such as sound and video brings new enjoyment to people.
目前,在浏览器上播放媒体流一般都依赖于浏览器控件或者插件的方式。具体的,通过在浏览器中安装插件,并通过插件直接拉取媒体流,并对拉取到的媒体流解码得到帧图片,然后,在利用帧同步绘制结构化信息,实现结构化信息与视频帧进行同步播放。Currently, playing media streams on a browser generally relies on browser controls or plug-ins. Specifically, by installing a plug-in in the browser, and directly pulling the media stream through the plug-in, and decoding the pulled media stream to obtain a frame picture, and then drawing structured information using frame synchronization, the structured information and video are realized. Frames are played synchronously.
但是,现有的媒体流处理方法要求在浏览器中安装插件,并且,部分浏览器还对插件的版本存在限制,而若不使用传统插件,则需要其他方式实现结构化信息与视频帧的同步绘制。However, existing media stream processing methods require plug-ins to be installed in the browser, and some browsers also have restrictions on the version of the plug-in, and if traditional plug-ins are not used, other methods are required to synchronize structured information and video frames draw.
发明内容Contents of the invention
本公开实施例提供了一种媒体流处理方法及装置、存储介质及程序产品,用以提供一种无需安装插件即可实现结构化信息与视频帧同步绘制的技术方案,消除无插件则无法实现同步绘制的技术壁垒,具备较高的灵活性。Embodiments of the present disclosure provide a media stream processing method and device, a storage medium, and a program product, so as to provide a technical solution for synchronous rendering of structured information and video frames without installing plug-ins, eliminating the need for plug-ins that cannot be realized The technical barrier of synchronous drawing has high flexibility.
本公开实施例提供了一种媒体流处理方法,包括:An embodiment of the present disclosure provides a media stream processing method, including:
Web前端拉取媒体流,并获取所述媒体流中携带的结构化信息;The web front end pulls the media stream, and obtains the structured information carried in the media stream;
所述Web前端根据所述媒体流的帧结构,生成所述结构化信息的显示时间戳PTS,所述显示时间戳与所述媒体流的播放时刻对齐;The Web front end generates a display timestamp PTS of the structured information according to the frame structure of the media stream, and the display timestamp is aligned with the playing time of the media stream;
所述Web前端对所述媒体流进行格式封装,并将封装后的媒体流利用H5播放器进行播放;The Web front end encapsulates the format of the media stream, and uses the H5 player to play the encapsulated media stream;
所述Web前端按照所述显示时间戳,在当前播放画面上同步绘制所述结构化信息。The web front end synchronously draws the structured information on the current playing screen according to the display time stamp.
本公开实施例还提供了一种媒体流处理装置,包括:An embodiment of the present disclosure also provides a media stream processing device, including:
获取模块,用于拉取媒体流,并获取所述媒体流中携带的结构化信息;An acquisition module, configured to pull media streams and acquire structured information carried in the media streams;
生成模块,用于根据所述媒体流的帧结构,生成所述结构化信息的显示时间戳PTS,所述显示时间戳与所述媒体流的播放时刻对齐;A generating module, configured to generate a display time stamp PTS of the structured information according to the frame structure of the media stream, and the display time stamp is aligned with the playing time of the media stream;
播放模块,用于对所述媒体流进行格式封装,并将封装后的媒体流利用H5播放器播放;A playback module, configured to encapsulate the media stream in a format, and play the encapsulated media stream with an H5 player;
绘制模块,用于按照所述显示时间戳,在当前播放画面上同步绘制所述结构化信息。The drawing module is configured to synchronously draw the structured information on the current playing screen according to the display time stamp.
本公开实施例还提供了一种计算机,包含上述的媒体流处理装置。An embodiment of the present disclosure also provides a computer, including the above media stream processing apparatus.
本公开实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述的媒体流处理方法。An embodiment of the present disclosure also provides a computer-readable storage medium, storing computer-executable instructions, where the computer-executable instructions are configured to execute the above-mentioned media stream processing method.
本公开实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述的媒体流处理方法。An embodiment of the present disclosure also provides a computer program product, the computer program product includes a computer program stored on a computer-readable storage medium, the computer program includes program instructions, and when the program instructions are executed by a computer, the The computer executes the above media stream processing method.
本公开实施例还提供了一种电子设备,包括:An embodiment of the present disclosure also provides an electronic device, including:
至少一个处理器;以及at least one processor; and
与所述至少一个处理器通信连接的存储器;其中,a memory communicatively coupled to the at least one processor; wherein,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器执行上述的媒体流处理方法。The memory stores instructions that can be executed by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is caused to execute the above media stream processing method.
本公开实施例所提供的技术方案,通过Web前端拉取媒体流并得到媒体流的结构化信息,然后,利用媒体流的帧结构,生成结构化信息的显示时间戳,从而,利用H5播放器播放媒体流时,根据显示时间戳同步绘制前述结构化信息,如此,无需在浏览器中安装任何插件,也无需解码帧图片,就可以实现前述结构化信息与媒体流的同步绘制,消除无插件则无法实现同步绘制的技术壁垒,具备较高的灵活性,并且,这种实现方式对CPU的占用很小,不存在消耗CPU的问题,能够做到多路视频播放,避免卡顿问题。In the technical solution provided by the embodiments of the present disclosure, the media stream is pulled through the Web front end and the structured information of the media stream is obtained, and then, the frame structure of the media stream is used to generate the display time stamp of the structured information, thereby, using the H5 player When playing the media stream, the aforementioned structured information is drawn synchronously according to the display timestamp. In this way, without installing any plug-ins in the browser, and without decoding frame pictures, the aforementioned structured information and media streams can be drawn synchronously, eliminating the need for no plug-ins However, the technical barrier of synchronous rendering cannot be realized, and it has high flexibility. Moreover, this implementation method occupies a small amount of CPU, and there is no problem of CPU consumption. It can achieve multi-channel video playback and avoid the problem of freezing.
附图说明Description of drawings
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:One or more embodiments are exemplified by the corresponding drawings, and these exemplifications and drawings do not constitute a limitation to the embodiments, and elements with the same reference numerals in the drawings are shown as similar elements, The drawings are not limited to scale and in which:
图1为本公开实施例提供的一种媒体流处理方法的流程示意图;FIG. 1 is a schematic flowchart of a media stream processing method provided by an embodiment of the present disclosure;
图2为本公开实施例提供的一种媒体流处理方法的交互流程示意图;FIG. 2 is a schematic diagram of an interaction flow of a media stream processing method provided by an embodiment of the present disclosure;
图3为本公开实施例提供的另一种媒体流处理方法的流程示意图;FIG. 3 is a schematic flowchart of another media stream processing method provided by an embodiment of the present disclosure;
图4为本公开实施例提供的另一种媒体流处理方法的流程示意图;FIG. 4 is a schematic flowchart of another media stream processing method provided by an embodiment of the present disclosure;
图5为本公开实施例提供的一种媒体流处理装置的结构示意图;FIG. 5 is a schematic structural diagram of a media stream processing device provided by an embodiment of the present disclosure;
图6为本公开实施例提供的一种计算机的结构示意图;FIG. 6 is a schematic structural diagram of a computer provided by an embodiment of the present disclosure;
图7为本公开实施例提供的电子设备的结构示意图。FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure.
具体实施方式Detailed ways
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。In order to understand the characteristics and technical content of the embodiments of the present disclosure in more detail, the implementation of the embodiments of the present disclosure will be described in detail below in conjunction with the accompanying drawings. The attached drawings are only for reference and description, and are not intended to limit the embodiments of the present disclosure. In the following technical description, for purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the disclosed embodiments. However, one or more embodiments may be practiced without these details. In other instances, well-known structures and devices may be shown simplified in order to simplify the drawings.
首先,为了便于理解,对本公开实施例所涉及到的各名词进行具体说明。First of all, in order to facilitate understanding, each noun involved in the embodiments of the present disclosure will be described in detail.
Web(互联网网页)前端:其可具体表现为Web前端处理器。Web (Internet web page) front-end: it may be embodied as a Web front-end processor.
H5:即HTML5,是由万维网联盟(World Wide Web Consortium,W3C)完成标准制定的,其目标是取代早前制定的HTML4.01和XHTML 1.0标准,以期能在互联网应用迅速发展的时候,使网上标准达到匹配当代的网上需求。广义论及HTML5时,实际指的是包括超文本标记语言(Hyper Text Markup Language)HTML、层叠样式表(Cascading Style Sheets,CSS)和JavaScript(一种直译式脚本语言)在内的一套技术组合。H5: HTML5 is developed by the World Wide Web Consortium (W3C), and its goal is to replace the HTML4. Standards are achieved to match contemporary online demands. When talking about HTML5 in a broad sense, it actually refers to a set of technology combinations including Hyper Text Markup Language (Hyper Text Markup Language) HTML, Cascading Style Sheets (CSS) and JavaScript (a literal scripting language). .
MSE(Media Source Extensions):即媒体源扩展,是Chrome、Safari、Edge等主流浏览器支持的一个新的浏览器接口(Web API)。MSE符合W3C标准,允许JavaScript动态构建<video>和<audio>的媒体流。它定义了对象,允许JavaScript传输媒体流片段到一个HTMLMedia Element(媒体单元)。MSE (Media Source Extensions): Media source extensions are a new browser interface (Web API) supported by mainstream browsers such as Chrome, Safari, and Edge. MSE complies with W3C standards and allows JavaScript to dynamically construct <video> and <audio> media streams. It defines objects that allow JavaScript to transmit media stream fragments to an HTMLMedia Element (media unit).
PTS(Presentation Time Stamp):即显示时间戳,这个显示时间戳可以作为播放器播放信息或媒体流的依据,例如,播放器可根据显示时间戳确定何时显示该显示时间戳对应的这一帧数据。PTS (Presentation Time Stamp): It is the display time stamp. This display time stamp can be used as the basis for the player to play information or media stream. For example, the player can determine when to display the frame corresponding to the display time stamp according to the display time stamp. data.
RTSP(Real Time Streaming Protocol):即实时流传输协议,是传输控制协议(Transmission Control Protocol,TCP)/因特网互联协议(Internet Protocol,IP)协议体系中的一个应用层协议,由哥伦比亚大学、网景公司和Real Networks公司提交的IETFRFC标准。RTSP (Real Time Streaming Protocol): Real-time streaming protocol, which is an application layer protocol in the Transmission Control Protocol (Transmission Control Protocol, TCP) / Internet Protocol (Internet Protocol, IP) protocol system, developed by Columbia University and Netscape The IETFRFC standard submitted by the company and Real Networks.
RTMP(Real Time Messaging Protocol):即实时消息传输协议,该协议基于TCP,是一个协议族,包括实时消息传输协议(Real Time Messaging Protocol,RTMP)基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR(Adobe Integrated Runtime)平台和支持RTMP协议的媒体流/交互服务器之间进行音视频和数据通信。支持该协议的软件包括Adobe Media Server/UltrantMedia Server/red5等。RTMP (Real Time Messaging Protocol): Real-time message transmission protocol, which is based on TCP, is a protocol family, including real-time message transmission protocol (Real Time Messaging Protocol, RTMP) basic protocol and RTMPT/RTMPS/RTMPE and other variants. RTMP is a network protocol designed for real-time data communication. It is mainly used for audio, video and data communication between the Flash/AIR (Adobe Integrated Runtime) platform and media streaming/interactive servers that support the RTMP protocol. Software that supports this protocol includes Adobe Media Server/UltrantMedia Server/red5, etc.
FLV(FLASH VIDEO):FLV媒体流格式是随着Flash MX技术的推出发展而来的视频格式。由于它形成的文件较小、加载速度较快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入Flash后,使导出的SWF(shock wave flash,一种专用于设计软件Flash的专用格式)文件体积庞大,不能在网络上很好的使用等问题。FLV (FLASH VIDEO): The FLV media stream format is a video format developed with the introduction of Flash MX technology. Because the files it forms are smaller and the loading speed is faster, it is possible to watch video files on the Internet. Its appearance effectively solves the problem of exporting SWF (shock wave flash, a special design software Flash) after the video file is imported into Flash. special format) file size is huge, and it cannot be used well on the network.
http-flv:基于http协议传输的flv媒体流。http-flv: flv media stream transmitted based on http protocol.
websocket-flv:基于websocket协议传输的flv媒体流。websocket-flv: flv media stream transmitted based on websocket protocol.
NPAPI(Netscape Plugin Application Programming Interface):即网景插件应用程序编程接口,是Netscape Navigator、Mozilla Suite、Mozilla SeaMonkey和MozillaFirefox等Gecko引擎浏览器与Apple Safari和Google Chrome等webkit引擎浏览器所使用的插件接口。NPAPI (Netscape Plugin Application Programming Interface): Netscape Plugin Application Programming Interface, which is a plug-in interface used by Gecko engine browsers such as Netscape Navigator, Mozilla Suite, Mozilla SeaMonkey, and Mozilla Firefox, and webkit engine browsers such as Apple Safari and Google Chrome .
PPAPI(Pepper Plugin API):用于NPAPI存在安全隐患。PPAPI (Pepper Plugin API): There are security risks for NPAPI.
本公开实施例后续涉及前述名词,均表示前述含义,不再赘述。The embodiments of the present disclosure refer to the aforementioned nouns later, and all of them represent the aforementioned meanings, and details are not repeated here.
针对现有技术存在的前述问题,本公开实施例给出如下解决思路:由Web前端拉取媒体流并获取结构化信息,之后,通过为结构化信息添加显示时间戳的方式,在H5播放器播放媒体流时同步绘制结构化信息,以实现同步播放。In view of the foregoing problems existing in the prior art, the embodiments of the present disclosure provide the following solutions: the web front end pulls the media stream and obtains the structured information, and then, by adding a display time stamp to the structured information, the H5 player Synchronously draw structured information when playing media streams to achieve synchronous playback.
本公开实施例提供了一种媒体流处理方法。请参考图1,该方法包括:An embodiment of the present disclosure provides a method for processing a media stream. Referring to Figure 1, the method includes:
S102,Web前端拉取媒体流,并获取媒体流中携带的结构化信息。S102. The web front end pulls the media stream, and acquires structured information carried in the media stream.
S104,Web前端根据媒体流的帧结构,生成结构化信息的显示时间戳PTS,显示时间戳与媒体流的播放时刻对齐。S104. The web front end generates a display time stamp PTS of the structured information according to the frame structure of the media stream, and aligns the display time stamp with the playing time of the media stream.
S106,Web前端对媒体流进行格式封装,并将封装后的媒体流利用H5播放器进行播放;S106, the web front end encapsulates the format of the media stream, and uses the H5 player to play the encapsulated media stream;
S108,Web前端按照显示时间戳,在当前播放画面上同步绘制结构化信息。S108. The web front end synchronously draws the structured information on the current playing screen according to the display time stamp.
本公开实施例中,前述S102、S104所涉及到的媒体流为http-flv流或者websocket-flv流,其中,http与websocket为协议名,flv为媒体流的格式。而S106步骤所述的格式封装,其实质是对媒体流的格式进行转换,以使得封装后的媒体流能够满足H5播放器的播放需求。在一个可能的设计中,封装后的媒体流可以为FMP4格式。In the embodiment of the present disclosure, the media streams involved in the foregoing S102 and S104 are http-flv streams or websocket-flv streams, where http and websocket are protocol names, and flv is a media stream format. The essence of the format encapsulation described in step S106 is to convert the format of the media stream so that the encapsulated media stream can meet the playback requirements of the H5 player. In a possible design, the encapsulated media stream may be in FMP4 format.
在Web前端拉取数据流之前,也就是,执行S102步骤之前,流媒体服务器还需要对前述媒体流进行推流,以及,算法服务器还需要计算出媒体流的结构化信息。Before the web front end pulls the data stream, that is, before step S102 is executed, the streaming media server needs to push the aforementioned media stream, and the algorithm server also needs to calculate the structural information of the media stream.
具体的,请参考图2所示交互示意图,该方法在执行S102之前,还包括如下步骤:Specifically, please refer to the interactive schematic diagram shown in FIG. 2. Before performing S102, the method further includes the following steps:
S1011,流媒体服务器拉取实时流传输协议RTSP流。S1011. The streaming media server pulls the real-time streaming protocol RTSP stream.
S1012,流媒体服务器解码RTSP流,得到视频帧单元。S1012. The streaming media server decodes the RTSP stream to obtain video frame units.
S1013,流媒体服务器将视频帧单元发送给算法服务器。S1013. The streaming media server sends the video frame unit to the algorithm server.
S1014,算法服务器处理视频帧单元,得到该RTSP流的结构化信息。S1014, the algorithm server processes the video frame unit to obtain the structured information of the RTSP stream.
S1015,算法服务器将结构化信息发送给流媒体服务器。S1015. The algorithm server sends the structured information to the streaming media server.
S1016,流媒体服务器对RTSP流与结构化信息进行封装,得到媒体流。S1016. The streaming media server encapsulates the RTSP stream and structured information to obtain a media stream.
S1017,流媒体服务器对媒体流进行推流。S1017. The streaming media server pushes the media stream.
本公开实施例,对于流媒体服务器、算法服务器、Web前端是否集成在一起无特殊限定,三者可以各自独立,也可以至少两个的方式集成在一个装置或设备中。In the embodiments of the present disclosure, there is no special limitation on whether the streaming media server, the algorithm server, and the Web front end are integrated together. The three can be independent, or at least two can be integrated into one device or device.
此外,现有技术中还涉及一种不依赖于插件而实现媒体流播放的H5方案,其具体是通过websocket方式传输MPEG1编码格式的低编码率流,采用中央处理器(CentralProcessing Unit,CPU)软解出帧图片,利用canvas同步绘制。但是,这种实现方式是通过CPU软解出帧图片,导致对CPU的占用较高,从而,导致播放的路数受限,且不支持主流的h264编码方案,需要流媒体服务端转换编码为MPEG1。In addition, the prior art also involves an H5 solution that does not rely on plug-ins to play media streams. Specifically, it transmits low-rate streams in MPEG1 encoding format through websockets, and uses a central processing unit (Central Processing Unit, CPU) software Solve the frame picture and use canvas to draw synchronously. However, this implementation method uses the CPU to softly decode the frame picture, resulting in a high CPU usage, resulting in a limited number of channels for playback, and does not support the mainstream h264 encoding scheme, requiring the streaming media server to convert the encoding to MPEG1.
相比之下,如图2所示,本公开实施例所提供的技术方案是由流媒体服务器解码RTSP流得到视频帧单元,无需由Web前端进行解码,不存在对CPU的占用,也就不存在CPU被消耗性能的问题,因此,做到多路视频播放,且有效解决卡顿问题。In contrast, as shown in Figure 2, the technical solution provided by the embodiment of the present disclosure is to decode the RTSP stream by the streaming media server to obtain the video frame unit, without decoding by the Web front end, and there is no occupation of the CPU, so there is no There is a problem of CPU being consumed by performance. Therefore, multi-channel video playback is achieved and the freeze problem is effectively solved.
如图2所示的交互流程中,S1016中将RTSP流与结构化信息进行封装,其封装的结果为形成本公开实施例前述的http-flv流或者websocket-flv流。In the interaction process shown in FIG. 2 , in S1016 , the RTSP stream and the structured information are encapsulated, and the result of the encapsulation is to form the aforementioned http-flv stream or websocket-flv stream in the embodiment of the present disclosure.
基于流媒体服务器的推流,Web前端可以在其推流的地址上拉取到媒体流。Based on the push stream from the streaming media server, the web front-end can pull the media stream from the address where the stream is pushed.
具体的,本公开实施例给出S102的如下所述的实现方式:Specifically, the embodiment of the present disclosure provides the following implementation manner of S102:
Web前端通过XHR2/Fetch或者websocket拉取媒体流。The web front end pulls the media stream through XHR2/Fetch or websocket.
其中,XHR2/Fetch或者websocket均用做网络请求,用于向流媒体服务器请求二进制数据,以得到媒体流。Among them, XHR2/Fetch or websocket are used as network requests to request binary data from streaming media servers to obtain media streams.
此外,基于S1016所封装成的媒体流的协议-格式不同,结构化信息在媒体流中封装的位置可能不同。在一种可能的设计中,若RTSP流与结构化信息封装为符合H.264规范的媒体流,如http-flv流,则可以结构化信息封装进http-flv流的补充增强信息(Supplemental enhancement information,SEI)单元中。其中,H.264是国际标准化组织和国际电信联盟共同提出的一种数字视频压缩格式。In addition, based on the protocol-format of the media stream encapsulated in S1016 is different, the positions where the structured information is encapsulated in the media stream may be different. In a possible design, if the RTSP stream and the structured information are encapsulated into a media stream conforming to the H.264 specification, such as the http-flv stream, the structured information can be encapsulated into the supplemental enhancement information (Supplemental enhancement) of the http-flv stream. information, SEI) unit. Among them, H.264 is a digital video compression format jointly proposed by the International Organization for Standardization and the International Telecommunication Union.
与之相对的,基于不同协议-格式的媒体流中结构化信息的封装位置不同,Web服务器在执行结构化信息的获取步骤时,可以Web前端按照媒体流的协议和格式,获取媒体流中携带的结构化信息。In contrast, the encapsulation positions of structured information in media streams based on different protocols and formats are different. When the web server executes the acquisition step of structured information, the web front end can obtain the information carried in the media stream according to the protocol and format of the media stream. structured information.
也就是,首先确定媒体流的协议-格式,从而,根据预设的协议-格式与封装位置的对应关系,确定结购化信息的封装位置,进而,在该封装位置获取结构化信息。例如前述可能的设计中,由于Web前端拉取的为http-flv流,则可以确定该http-flv流中的SEI单元用于封装结构化信息,因此,可以在该SEI单元获取到结构化信息。That is, first determine the protocol-format of the media stream, and then determine the encapsulation position of the structured information according to the preset correspondence between the protocol-format and the encapsulation position, and then obtain the structured information at the encapsulation position. For example, in the aforementioned possible design, since the web front end pulls the http-flv stream, it can be determined that the SEI unit in the http-flv stream is used to encapsulate structured information, and therefore, the structured information can be obtained in the SEI unit .
现有的媒体流处理方式借助插件实现,如论是NPAPI插件、PPAPI插件,还是ADOBEFLASH插件,都需要在拉取媒体流后再解码帧图片,并利用帧同步绘制结构化信息,这不仅需要浏览器安装插件,由于解码帧图片,还进一步导致了运算量的增加和处理效率的降低。Existing media stream processing methods are implemented with the help of plug-ins, such as NPAPI plug-ins, PPAPI plug-ins, or ADOBEFLASH plug-ins, all need to decode frame pictures after pulling media streams, and use frames to draw structured information synchronously, which not only requires browsing If the plug-in is installed in the browser, the decoding of frame pictures further leads to an increase in the amount of computation and a reduction in processing efficiency.
基于此,本公开实施例中,由于不需要在浏览器中安装插件,而是在前述获取到的媒体流中,为结构化信息生成显示时间戳,从而,无需将媒体流解码成帧图片,就可以在H5播放器播放媒体流时,同步绘制结构化信息。Based on this, in the embodiment of the present disclosure, since there is no need to install a plug-in in the browser, but to generate a display time stamp for the structured information in the aforementioned acquired media stream, there is no need to decode the media stream into a frame picture, Then, when the H5 player plays the media stream, the structured information can be drawn synchronously.
其具体实现过程可以参考图3所示流程,此时,S104步骤可以为:Its specific implementation process can refer to the process shown in Figure 3. At this time, the step S104 can be:
S1042,Web前端根据媒体流的帧结构,解析出结构化数据的SEI单元与媒体流的视频帧单元。S1042. According to the frame structure of the media stream, the web front end parses out the SEI unit of the structured data and the video frame unit of the media stream.
S1044,Web前端根据视频帧单元的播放时刻,为SEI单元生成显示时间戳,使得SEI单元与视频帧单元对齐。S1044. The web front end generates a display time stamp for the SEI unit according to the playing time of the video frame unit, so that the SEI unit is aligned with the video frame unit.
本公开实施例中,最终呈现的结果是媒体流与结构化信息同步播放,因此,要求SEI单元的显示时间戳与视频帧单元的播放时刻对齐。In the embodiment of the present disclosure, the final presentation result is that the media stream and the structured information are played synchronously. Therefore, it is required that the display time stamp of the SEI unit is aligned with the playback time of the video frame unit.
举例说明,若视频帧单元的播放按照每帧40ms的时间间隔践行播放,因此,在生成SEI单元的显示时间戳时,可以按照每个SEI单元间隔40ms的方式,为每个SEI单元生成与该SEI单元对应的视频帧单元的播放时刻一致的显示时间戳。For example, if the video frame unit is played at a time interval of 40ms per frame, when generating the display timestamp of the SEI unit, it can be generated for each SEI unit at an interval of 40ms. The video frame unit corresponding to the SEI unit has the same display time stamp at the playing time.
基于前述设定,本公开实施例采用H5播放器进行媒体流的播放,同时,根据前述生成的显示时间戳,在当前播放画面的上方绘制结构化信息,实现同步播放。Based on the aforementioned settings, the embodiment of the present disclosure uses the H5 player to play the media stream, and at the same time, draws structured information above the current playing screen according to the display timestamp generated above to realize synchronous playback.
根据显示时间戳,同步绘制结构化信息时,可以根据需要,在画布上绘制三维图像或二维图像,其中,画布是一种浏览器DOM(document object model文档对象模型)对象,其呈现的画面覆盖显示在所述当前播放画面上。也就是,相对于H5播放器中播放的画面,画布呈现的画面更靠近观看者。According to the display timestamp, when synchronously drawing structured information, you can draw a three-dimensional image or a two-dimensional image on the canvas as needed. The canvas is a browser DOM (document object model) object, and the picture it presents The overlay is displayed on the current playing screen. That is to say, compared with the picture played in the H5 player, the picture presented by the canvas is closer to the viewer.
在一种可能的设计中,二维图像可以通过canvas实现。Canvas是一种2D(二维)绘图协议,这种绘图协议是逐像素进行渲染的,并通过JavaScript实现2D图像绘制。因此,在前述流程中,若通过canvas实现结构化信息的同步绘制,可以在H5播放器中添加canvas元素,从而,canvas可以通过JavaScript在画布上绘制2D图像。In one possible design, two-dimensional images can be implemented with a canvas. Canvas is a 2D (two-dimensional) drawing protocol, which is rendered pixel by pixel, and 2D image drawing is realized through JavaScript. Therefore, in the preceding process, if the synchronous rendering of structured information is realized through canvas, a canvas element can be added to the H5 player, so that canvas can draw 2D images on the canvas through JavaScript.
或者,在另一种设计中,可以通过Web GL(Web Graphics Library,Web图形库)协议实现三维图像的绘制。而Web GL是一种3D(三维)绘图协议,这种绘图协议免去了开发网页专用渲染插件的麻烦,可被用于创建具有复杂3D结构的网站页面,甚至可以用来设计3D网页游戏等等。Or, in another design, the rendering of three-dimensional images can be realized through the Web GL (Web Graphics Library, Web Graphics Library) protocol. And Web GL is a 3D (three-dimensional) drawing protocol. This drawing protocol eliminates the trouble of developing a special rendering plug-in for web pages. It can be used to create website pages with complex 3D structures, and can even be used to design 3D web games, etc. wait.
在具体实现同步绘制时,Web前端可以预设频率调取媒体流的当前时间,然后,基于显示时间戳在画布上进行结构化信息的同步绘制,并覆盖对齐当前播放画面。其中,预设频率可以根据需要设定,例如,可以设定为以1秒60帧的频率调取时间。When implementing synchronous drawing, the web front end can call the current time of the media stream at a preset frequency, and then perform synchronous drawing of structured information on the canvas based on the display timestamp, and overlay and align the current playing screen. Wherein, the preset frequency can be set as required, for example, it can be set to call time at a frequency of 60 frames per second.
但是,在同步绘制过程中,考虑到可能会存在的媒体流与结构化信息播放不同步的问题,本公开实施例还给出如图4所述的一种可能的设计,以实现对绘制结构化信息的纠偏处理,保证与媒体流同步绘制。However, in the process of synchronous drawing, considering the possible problem that the playback of the media stream and the structured information may not be synchronized, the embodiment of the present disclosure also provides a possible design as shown in FIG. Deviation correction processing of simplified information ensures synchronous drawing with media stream.
如图4所示,该方法还包括:As shown in Figure 4, the method also includes:
S110,Web前端按照第一频率对结构化信息的绘制进行纠偏处理,第一频率大于第二频率,第二频率的为媒体流的帧播放频率。S110, the web front end performs deviation correction processing on the drawing of the structured information according to the first frequency, the first frequency is greater than the second frequency, and the second frequency is the frame playback frequency of the media stream.
在如图4所示的设计中,第二频率为媒体流的帧播放频率,其时间间隔为媒体流的帧间隔,这与媒体流的帧结构设计相关。而第一频率大于第二频率,第一频率的时间间隔小于第一频率的时间间隔,也就是,小于媒体流的帧间隔。也就是,以一个较高的频率对结构化信息的绘制进行纠偏,以使得播放的媒体流与结构化信息能够同步呈现。In the design shown in FIG. 4 , the second frequency is the frame playback frequency of the media stream, and its time interval is the frame interval of the media stream, which is related to the frame structure design of the media stream. While the first frequency is greater than the second frequency, the time interval of the first frequency is smaller than the time interval of the first frequency, that is, smaller than the frame interval of the media stream. That is, deviation correction is performed on the rendering of the structured information at a higher frequency, so that the played media stream and the structured information can be presented synchronously.
此外,考虑到对齐绘制存在计算耗时,在具体实现时,可以利用一个略大于具体运算时长的时间间隔做纠偏处理。其中,纠偏处理可以通过MATH.ceil函数实现。In addition, considering the time-consuming calculation of alignment drawing, in the actual implementation, a time interval slightly longer than the specific calculation time can be used for deviation correction processing. Among them, the correction processing can be realized through the MATH.ceil function.
MATH.ceil函数为lua函数(1ua函数是JavaScript中的一个函数)中的一个函数,其构成为:MATH.ceil(x)返回大于等于参数x的最小整数,即对浮点数向上取整。在本公开实施例所涉及的实现场景中,其可以表达为:MATH.ceil(video.currentTime/40)*40与PTS对齐,其中,video.currentTime表示媒体流的当前播放时刻。The MATH.ceil function is a function in the lua function (the 1ua function is a function in JavaScript), which consists of: MATH.ceil(x) returns the smallest integer greater than or equal to the parameter x, that is, the floating-point number is rounded up. In the implementation scenario involved in the embodiments of the present disclosure, it can be expressed as: MATH.ceil(video.currentTime/40)*40 is aligned with the PTS, where video.currentTime represents the current playing moment of the media stream.
举例说明,在一个可能的实现场景中,若媒体流的帧播放间隔为40ms,可以将每帧10ms作为第一频率进行纠偏处理。For example, in a possible implementation scenario, if the frame playback interval of the media stream is 40 ms, 10 ms per frame may be used as the first frequency for deviation correction processing.
通过前述说明可知,本公开实施例所提供的技术方案无需再浏览器中安装插件,这能够适用于未来浏览器的发展需求,并且,通过显示时间戳实现同步绘制而无需由Web前端对媒体流解码帧图片,这能够有效降低运算量,有利于缩短处理时长,预留更多的时间做纠偏处理,以保障结构化信息与媒体流的同步播放和对齐。It can be seen from the foregoing description that the technical solutions provided by the embodiments of the present disclosure do not need to install plug-ins in the browser, which can be applied to the development needs of future browsers, and realize synchronous drawing by displaying timestamps without the need for media streams to be modified by the Web front end. Decode frame pictures, which can effectively reduce the amount of computation, help shorten the processing time, and reserve more time for deviation correction processing to ensure the synchronous playback and alignment of structured information and media streams.
本公开实施例还提供了一种媒体流处理装置。请参考图5,该媒体流处理装置500,包括:The embodiment of the present disclosure also provides a media stream processing device. Please refer to FIG. 5, the media stream processing device 500 includes:
获取模块51,用于拉取媒体流,并获取媒体流中携带的结构化信息;An
生成模块52,用于根据媒体流的帧结构,生成结构化信息的显示时间戳PTS,显示时间戳与媒体流的播放时刻对齐;The
播放模块53,用于对所述媒体流进行格式封装,并将封装后的媒体流利用H5播放器播放;Playing
绘制模块54,用于按照显示时间戳,在当前播放画面上同步绘制结构化信息。The
一种可能的设计中,生成模块52,具体用于:In a possible design, the
根据媒体流的帧结构,解析出结构化数据的SEI单元与媒体流的视频帧单元;According to the frame structure of the media stream, parse out the SEI unit of the structured data and the video frame unit of the media stream;
根据视频帧单元的播放时刻,为SEI单元生成显示时间戳,使得SEI单元与视频帧单元对齐。According to the playback moment of the video frame unit, a display timestamp is generated for the SEI unit, so that the SEI unit is aligned with the video frame unit.
另一种可能的设计中,该媒体流处理装置还包括:In another possible design, the media stream processing device further includes:
纠偏模块(图5未示出),用于按照第一频率对结构化信息的绘制进行纠偏处理,第一频率大于第二频率,第二频率为媒体流的帧播放频率。The deviation correction module (not shown in FIG. 5 ) is configured to perform deviation correction processing on the rendering of the structured information according to a first frequency, the first frequency is greater than the second frequency, and the second frequency is the frame playback frequency of the media stream.
另一种可能的设计中,绘制模块54,具体用于:In another possible design, the
按照显示时间戳,在画布上绘制三维图像或二维图像,其中,画布覆盖显示在当前播放画面上。Draw a three-dimensional image or a two-dimensional image on the canvas according to the display time stamp, wherein the canvas overlay is displayed on the current playing screen.
另一种可能的设计中,获取模块51,具体用于:In another possible design, the
拉取媒体流;pull media stream;
按照媒体流的协议和格式,获取媒体流中携带的结构化信息。Obtain the structured information carried in the media stream according to the protocol and format of the media stream.
另一种可能的设计中,媒体流为:http-flv媒体流或者websocket-flv媒体流。In another possible design, the media stream is: http-flv media stream or websocket-flv media stream.
另一种可能的设计中,获取模块51,具体用于:In another possible design, the
通过XHR2/Fetch或者websocket拉取媒体流。Pull media stream through XHR2/Fetch or websocket.
如图5所示的媒体流处理装置500设置在Web前端。The media stream processing apparatus 500 shown in FIG. 5 is set at the front end of the Web.
此外,本公开实施例还提供了一种计算机,请参考图6,该计算机600包含上述的媒体流处理装置500。In addition, an embodiment of the present disclosure also provides a computer, please refer to FIG. 6 , the computer 600 includes the above-mentioned media stream processing apparatus 500 .
本公开实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述媒体流处理方法。An embodiment of the present disclosure also provides a computer-readable storage medium, storing computer-executable instructions, where the computer-executable instructions are configured to execute the above media stream processing method.
本公开实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述媒体流处理方法。An embodiment of the present disclosure also provides a computer program product, the computer program product includes a computer program stored on a computer-readable storage medium, the computer program includes program instructions, and when the program instructions are executed by a computer, the The computer executes the above media stream processing method.
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。The above-mentioned computer-readable storage medium may be a transitory computer-readable storage medium, or a non-transitory computer-readable storage medium.
本公开实施例还提供了一种电子设备,其结构如图7所示,该电子设备包括:An embodiment of the present disclosure also provides an electronic device, the structure of which is shown in FIG. 7 , the electronic device includes:
至少一个处理器(processor)73,图7中以一个处理器73为例;和存储器(memory)71,还可以包括通信接口(Communication Interface)72和总线。其中,处理器73、通信接口72、存储器71可以通过总线完成相互间的通信。通信接口72可以用于信息传输。处理器73可以调用存储器71中的逻辑指令,以执行上述实施例的媒体流处理方法。At least one processor (processor) 73, take a
此外,上述的存储器71中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。In addition, the logic instructions in the above-mentioned
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器73通过运行存储在存储器71中的软件程序、指令以及模块,从而执行功能应用以及媒体流,即实现上述方法实施例中的媒体流处理方法。As a computer-readable storage medium, the
存储器71可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器。The
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。The technical solutions of the embodiments of the present disclosure can be embodied in the form of software products, which are stored in a storage medium and include one or more instructions to make a computer device (which can be a personal computer, a server, or a network equipment, etc.) to perform all or part of the steps of the method described in the embodiments of the present disclosure. The aforementioned storage medium can be a non-transitory storage medium, including: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disc, etc. A medium that can store program code, or a transitory storage medium.
当用于本申请中时,虽然术语“第一”、“第二”等可能会在本申请中使用以描述各元件,但这些元件不应受到这些术语的限制。这些术语仅用于将一个元件与另一个元件区别开。比如,在不改变描述的含义的情况下,第一元件可以叫做第二元件,并且同样第,第二元件可以叫做第一元件,只要所有出现的“第一元件”一致重命名并且所有出现的“第二元件”一致重命名即可。第一元件和第二元件都是元件,但可以不是相同的元件。When used in the present application, although the terms 'first', 'second', etc. may be used in the present application to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, without changing the meaning of the description, a first element could be called a second element, and likewise, a second element could be called a first element, as long as all occurrences of "first element" are renamed consistently and all occurrences of "Second component" can be renamed consistently. The first element and the second element are both elements, but may not be the same element.
本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。The terms used in the present application are used to describe the embodiments only and are not used to limit the claims. As used in the examples and description of the claims, the singular forms "a", "an" and "the" are intended to include the plural forms as well unless the context clearly indicates otherwise . Similarly, the term "and/or" as used in this application is meant to include any and all possible combinations of one or more of the associated listed ones. Additionally, when used in this application, the term "comprise" and its variants "comprises" and/or comprising (comprising) etc. refer to stated features, integers, steps, operations, elements, and/or The presence of a component does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groupings of these.
所描述的实施例中的各方面、实施方式、实现或特征能够单独使用或以任意组合的方式使用。所描述的实施例中的各方面可由软件、硬件或软硬件的结合实现。所描述的实施例也可以由存储有计算机可读代码的计算机可读介质体现,该计算机可读代码包括可由至少一个计算装置执行的指令。所述计算机可读介质可与任何能够存储数据的数据存储装置相关联,该数据可由计算机系统读取。用于举例的计算机可读介质可以包括只读存储器、随机存取存储器、CD-ROM、HDD、DVD、磁带以及光数据存储装置等。所述计算机可读介质还可以分布于通过网络联接的计算机系统中,这样计算机可读代码就可以分布式存储并执行。The aspects, implementations, implementations or features of the described embodiments can be used alone or in any combination. Aspects of the described embodiments can be implemented by software, hardware or a combination of hardware and software. The described embodiments may also be embodied by a computer-readable medium storing computer-readable code comprising instructions executable by at least one computing device. The computer readable medium can be associated with any data storage device that can store data that can be read by a computer system. By way of example, computer readable media may include read only memory, random access memory, CD-ROM, HDD, DVD, magnetic tape, optical data storage devices, and the like. The computer readable medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
上述技术描述可参照附图,这些附图形成了本申请的一部分,并且通过描述在附图中示出了依照所描述的实施例的实施方式。虽然这些实施例描述的足够详细以使本领域技术人员能够实现这些实施例,但这些实施例是非限制性的;这样就可以使用其它的实施例,并且在不脱离所描述的实施例的范围的情况下还可以做出变化。比如,流程图中所描述的操作顺序是非限制性的,因此在流程图中阐释并且根据流程图描述的两个或两个以上操作的顺序可以根据若干实施例进行改变。作为另一个例子,在若干实施例中,在流程图中阐释并且根据流程图描述的一个或一个以上操作是可选的,或是可删除的。另外,某些步骤或功能可以添加到所公开的实施例中,或两个以上的步骤顺序被置换。所有这些变化被认为包含在所公开的实施例以及权利要求中。The above technical description may refer to the accompanying drawings, which form a part hereof, and in which are shown by way of description implementations in accordance with the described embodiments. While these embodiments are described in sufficient detail to enable those skilled in the art to practice the embodiments, these embodiments are not limiting; as such, other embodiments can be used and without departing from the scope of the described embodiments Circumstances can also be changed. For example, the order of operations described in the flow diagrams is non-limiting, and thus the order of two or more operations illustrated in and described with respect to the flow diagrams may be changed according to several embodiments. As another example, in several embodiments, one or more operations illustrated in and described with respect to the flowcharts are optional, or may be deleted. Additionally, certain steps or functionality may be added to the disclosed embodiments, or the order of two or more steps permuted. All such variations are considered to be encompassed by the disclosed embodiments as well as the claims.
另外,上述技术描述中使用术语以提供所描述的实施例的透彻理解。然而,并不需要过于详细的细节以实现所描述的实施例。因此,实施例的上述描述是为了阐释和描述而呈现的。上述描述中所呈现的实施例以及根据这些实施例所公开的例子是单独提供的,以添加上下文并有助于理解所描述的实施例。上述说明书不用于做到无遗漏或将所描述的实施例限制到本公开的精确形式。根据上述教导,若干修改、选择适用以及变化是可行的。在某些情况下,没有详细描述为人所熟知的处理步骤以避免不必要地影响所描述的实施例。Additionally, terminology was used in the above technical description to provide a thorough understanding of the described embodiments. However, undue detail is not required to implement the described embodiments. Thus, the foregoing description of the embodiments has been presented for purposes of illustration and description. The embodiments presented in the foregoing description, and examples disclosed according to these embodiments, are provided individually to add context and to facilitate understanding of the described embodiments. The above description is not intended to be exhaustive or to limit the described embodiments to the precise form of the disclosure. Several modifications, alternatives, and variations are possible in light of the above teachings. In some instances, well known process steps have not been described in detail in order not to unnecessarily obscure the described embodiments.
Claims (15)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2018/115660 WO2020097857A1 (en) | 2018-11-15 | 2018-11-15 | Media stream processing method and apparatus, storage medium, and program product |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN112930687A CN112930687A (en) | 2021-06-08 |
| CN112930687B true CN112930687B (en) | 2023-04-28 |
Family
ID=70730368
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201880098342.8A Active CN112930687B (en) | 2018-11-15 | 2018-11-15 | Media stream processing method and device, storage medium and program product |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN112930687B (en) |
| WO (1) | WO2020097857A1 (en) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113573088B (en) * | 2021-07-23 | 2023-11-10 | 上海芯翌智能科技有限公司 | Method and equipment for synchronously drawing identification object for live video stream |
| CN113360707A (en) * | 2021-07-27 | 2021-09-07 | 北京睿芯高通量科技有限公司 | Video structured information storage method and system |
| CN113938470B (en) * | 2021-10-18 | 2023-09-12 | 成都小步创想慧联科技有限公司 | Method and device for playing RTSP data source by browser and streaming media server |
| CN114461423B (en) * | 2022-02-08 | 2025-06-03 | 腾讯科技(深圳)有限公司 | A multimedia stream processing method, device, storage medium and program product |
| CN114697303B (en) * | 2022-03-16 | 2023-11-03 | 北京金山云网络技术有限公司 | Multimedia data processing method and device, electronic equipment and storage medium |
| CN114745361B (en) * | 2022-03-25 | 2024-05-14 | 朗新数据科技有限公司 | Audio and video playing method and system for HTML5 browser |
| CN115914748A (en) * | 2022-10-18 | 2023-04-04 | 阿里云计算有限公司 | Visual display method and device for visual recognition result and electronic equipment |
| CN116567278A (en) * | 2023-03-29 | 2023-08-08 | 中国五冶集团有限公司 | A H5 live broadcast method with reduced latency that requires verification of authority |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106375793A (en) * | 2016-08-29 | 2017-02-01 | 东方网力科技股份有限公司 | Superposition method and superposition system of video structured information, and user terminal |
| CN107194006A (en) * | 2017-06-19 | 2017-09-22 | 深圳警翼智能科技股份有限公司 | A kind of video features structural management method |
| CN107277004A (en) * | 2017-06-13 | 2017-10-20 | 重庆扬讯软件技术股份有限公司 | A kind of browser is without plug-in unit net cast method |
| CN107832402A (en) * | 2017-11-01 | 2018-03-23 | 武汉烽火众智数字技术有限责任公司 | Dynamic exhibition system and its method during a kind of video structural fructufy |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100005485A1 (en) * | 2005-12-19 | 2010-01-07 | Agency For Science, Technology And Research | Annotation of video footage and personalised video generation |
| US9712867B2 (en) * | 2013-09-16 | 2017-07-18 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Application specific policy implementation and stream attribute modification in audio video (AV) media |
| CN107682715B (en) * | 2016-08-01 | 2019-12-24 | 腾讯科技(深圳)有限公司 | Video synchronization method and device |
| CN106303430B (en) * | 2016-08-21 | 2019-05-14 | 贵州大学 | The method for playing real time monitoring without plug-in unit in browser |
-
2018
- 2018-11-15 WO PCT/CN2018/115660 patent/WO2020097857A1/en not_active Ceased
- 2018-11-15 CN CN201880098342.8A patent/CN112930687B/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106375793A (en) * | 2016-08-29 | 2017-02-01 | 东方网力科技股份有限公司 | Superposition method and superposition system of video structured information, and user terminal |
| CN107277004A (en) * | 2017-06-13 | 2017-10-20 | 重庆扬讯软件技术股份有限公司 | A kind of browser is without plug-in unit net cast method |
| CN107194006A (en) * | 2017-06-19 | 2017-09-22 | 深圳警翼智能科技股份有限公司 | A kind of video features structural management method |
| CN107832402A (en) * | 2017-11-01 | 2018-03-23 | 武汉烽火众智数字技术有限责任公司 | Dynamic exhibition system and its method during a kind of video structural fructufy |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2020097857A1 (en) | 2020-05-22 |
| CN112930687A (en) | 2021-06-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112930687B (en) | Media stream processing method and device, storage medium and program product | |
| US20220263885A1 (en) | Adaptive media streaming method and apparatus according to decoding performance | |
| US10567809B2 (en) | Selective media playing method and apparatus according to live streaming and recorded streaming | |
| US10979785B2 (en) | Media playback apparatus and method for synchronously reproducing video and audio on a web browser | |
| AU2012297524B2 (en) | Script-based video rendering | |
| WO2019205872A1 (en) | Video stream processing method and apparatus, computer device and storage medium | |
| CN111355976B (en) | Video live broadcast method and system based on HEVC standard | |
| US10667001B2 (en) | Method and system for display of mixed media content on devices without standard video | |
| US20120076210A1 (en) | Systems and Methods Utilizing Efficient Video Compression Techniques for Browsing of Static Image Data | |
| CN107197386A (en) | A kind of cross-platform video playback implementation method without client | |
| EP4256791A1 (en) | Systems and methods of alternative networked application services | |
| CN113938470A (en) | Method and device for playing RTSP data source by browser and streaming media server | |
| CN115460183A (en) | Browser-based streaming media data playback method, device and related equipment | |
| KR20150092928A (en) | Method for displaying video considered latency, apparatus and cloud streaming service system therefor | |
| WO2012107570A1 (en) | A method for optimizing a video stream | |
| CN102098572B (en) | FLASH-based custom streaming media embedding and playing system and its implementation method | |
| CN115086282B (en) | Video playback method, device and storage medium | |
| CN115665117A (en) | Webpage-side video stream playing method | |
| EP4195673B1 (en) | Synchronization of media streams | |
| US20230239328A1 (en) | Computer implemented method for processing streaming requests and responses | |
| CN120711231A (en) | Real-time video stream processing method, device, electronic device and storage medium | |
| WO2022125401A1 (en) | Systems and methods of alternative networked application services |
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 |