CN116261003A - Display equipment and streaming media playing control method based on browser - Google Patents

Display equipment and streaming media playing control method based on browser Download PDF

Info

Publication number
CN116261003A
CN116261003A CN202111497181.XA CN202111497181A CN116261003A CN 116261003 A CN116261003 A CN 116261003A CN 202111497181 A CN202111497181 A CN 202111497181A CN 116261003 A CN116261003 A CN 116261003A
Authority
CN
China
Prior art keywords
script player
browser
player
script
streaming media
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.)
Pending
Application number
CN202111497181.XA
Other languages
Chinese (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.)
Hisense Electronic Technology Shenzhen Co ltd
Original Assignee
Hisense Electronic Technology Shenzhen 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 Hisense Electronic Technology Shenzhen Co ltd filed Critical Hisense Electronic Technology Shenzhen Co ltd
Priority to CN202111497181.XA priority Critical patent/CN116261003A/en
Publication of CN116261003A publication Critical patent/CN116261003A/en
Pending legal-status Critical Current

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/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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The application relates to the technical field of display equipment, in particular to display equipment and a browser-based streaming media playing control method, which can solve the problems that memory overflow possibly occurs when the streaming media is played by a browser due to low hardware configuration of the display equipment, the whole OTA upgrading cost is high, and a part of users cannot be timely upgraded to cause new application and a new website cannot be normally displayed to a certain extent. The display device includes: a display; a controller configured to: when a browser loads a first page containing a first video object, a first streaming media cache list address corresponding to the first video object is obtained, wherein a controller adds a first script player as a plug-in to the first page when the browser is started; starting a first script player to acquire a first play address corresponding to a first video object based on the first streaming media cache list address; and controlling the first script player to play the first video object in a supported format mode according to the first play address.

Description

Display equipment and streaming media playing control method based on browser
Technical Field
The present disclosure relates to the field of display devices, and in particular, to a display device and a method for controlling streaming media playback based on a browser.
Background
Streaming media playing refers to a multimedia transmission technology of multimedia data through compression, segmented transmission through a network, and instant transmission, and includes sound stream, video stream, text stream, image stream, animation stream, etc. The streaming media playing technology can be widely used for Internet information services such as news release, online live broadcast, network advertisement, electronic commerce, video on demand, distance education, telemedicine, network radio stations, real-time video conferences and the like.
In some implementation control of playing streaming media by a browser of a display device, since the native playing function of the browser cannot directly play the streaming media protocol file, FFMpeg (open source computer program for recording and converting digital audio and video, and converting the digital audio and video into streams) and GStreamer (open source multimedia framework application for constructing streaming media applications) media frames are generally used to expand the browser, so as to implement parsing and playing operations of the streaming media protocol file.
However, in the case of lower configuration of the television hardware, display abnormality may occur due to overflow of the television memory due to high complexity of the media frame and high memory consumption; or in order to be compatible with new applications and content playing of new video websites, television manufacturers need to update the media frame codes of the terminal browser in a whole OTA upgrading mode, and the coverage rate of OTA upgrading users is uncontrolled, so that the television of the users which are not upgraded can not normally display the new applications or websites.
Disclosure of Invention
In order to solve the problems that the hardware configuration of the display equipment is low, so that memory overflow possibly occurs when a browser plays streaming media, the whole OTA upgrading cost is high, and a part of users cannot timely upgrade, so that new applications and new websites cannot be normally displayed, the application provides the display equipment and a streaming media playing control method based on the browser.
Embodiments of the present application are implemented as follows:
a first aspect of embodiments of the present application provides a display device, including: the display is used for displaying a user interface comprising a browser page, and the browser page can play the streaming media video object; a controller configured to: when a browser loads a first page containing a first video object, a first streaming media cache list address corresponding to the first video object is obtained, wherein a first script player is added to the first page as a plug-in by a controller when the browser is started, and when a high-version script player exists in a server, the controller obtains the high-version script player in a silent mode and replaces the first script player, and the first script player is used for playing streaming media video; starting a first script player to acquire a first play address corresponding to a first video object based on the first streaming media cache list address; and controlling a first script player to play the first video object in a supported format mode according to the first play address.
A second aspect of an embodiment of the present application provides a method for controlling playback of a streaming media based on a browser, where the method includes: when a browser loads a first page containing a first video object, acquiring a first streaming media cache list address corresponding to the first video object, wherein a first script player is added to the first page as a plug-in when the browser is started, and when a server has a high-version script player, the high-version script player is acquired in a silent mode and replaced by the high-version script player, and the first script player is used for playing streaming media video; starting a first script player to acquire a first play address corresponding to a first video object based on the first streaming media cache list address; and controlling a first script player to play the first video object in a supported format mode according to the first play address.
The beneficial effects of this application: the script player is added to the browser in the plug-in mode, so that compatible playing of the streaming media file is realized; further, the compatibility of new video websites and application contents is realized by comparing the version numbers of the script players; further, by acquiring the streaming media cache list address, the play address corresponding to the streaming media video in the page can be acquired, the calling of the existing complex streaming media frame is avoided, the memory overhead of streaming media play is effectively reduced, the large-scale OTA upgrading of equipment is avoided, the personalized silent upgrading of the browser is realized, and the streaming media play is realized by integrating MSE/EME functions through the script player depending on the browser.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief description will be given below of the drawings that are needed in the embodiments or the prior art descriptions, it being obvious that the drawings in the following description are some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort to a person skilled in the art.
FIG. 1 illustrates a usage scenario of a display device according to some embodiments;
fig. 2 shows a hardware configuration block diagram of the control apparatus 100 according to some embodiments;
fig. 3 illustrates a hardware configuration block diagram of a display device 200 according to some embodiments;
FIG. 4 illustrates a software configuration diagram in a display device 200 according to some embodiments;
FIG. 5 illustrates an icon control interface display diagram for an application in a display device 200 according to some embodiments;
fig. 6A is a schematic diagram of a technical solution of playing streaming media by a quiesced upgrade browser of a display device according to an embodiment of the present application;
fig. 6B is a schematic flow chart of plug-in implementation of a streaming media player in a browser of a display device according to an embodiment of the present application;
FIG. 6C is a schematic flow chart of a streaming media player in a browser of a display device according to an embodiment of the present application to acquire and play media files;
FIG. 6D illustrates a flowchart intent of a silent upgrade of a streaming media player in a browser of a display device in accordance with an embodiment of the present application.
Detailed Description
For purposes of clarity and implementation of the present application, the following description will make clear and complete descriptions of exemplary implementations of the present application with reference to the accompanying drawings in which exemplary implementations of the present application are illustrated, it being apparent that the exemplary implementations described are only some, but not all, of the examples of the present application.
It should be noted that the brief description of the terms in the present application is only for convenience in understanding the embodiments described below, and is not intended to limit the embodiments of the present application. Unless otherwise indicated, these terms should be construed in their ordinary and customary meaning.
The terms "first," second, "" third and the like in the description and in the claims and in the above drawings are used for distinguishing between similar or similar objects or entities and not necessarily for describing a particular sequential or chronological order, unless otherwise indicated. It is to be understood that the terms so used are interchangeable under appropriate circumstances.
The terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a product or apparatus that comprises a list of elements is not necessarily limited to all elements explicitly listed, but may include other elements not expressly listed or inherent to such product or apparatus.
The term "module" refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware or/and software code that is capable of performing the function associated with that element.
Fig. 1 is a schematic diagram of an operation scenario between a display device and a control apparatus according to an embodiment. As shown in fig. 1, a user may operate the display device 200 through the smart device 300 or the control apparatus 100.
In some embodiments, the control apparatus 100 may be a remote controller, and the communication between the remote controller and the display device includes infrared protocol communication or bluetooth protocol communication, and other short-range communication modes, and the display device 200 is controlled by a wireless or wired mode. The user may control the display device 200 by inputting user instructions through keys on a remote control, voice input, control panel input, etc.
In some embodiments, a smart device 300 (e.g., mobile terminal, tablet, computer, notebook, etc.) may also be used to control the display device 200. For example, the display device 200 is controlled using an application running on a smart device.
In some embodiments, the display device 200 may also perform control in a manner other than the control apparatus 100 and the smart device 300, for example, the voice command control of the user may be directly received through a module configured inside the display device 200 device for acquiring voice commands, or the voice command control of the user may be received through a voice control device configured outside the display device 200 device.
In some embodiments, the display device 200 is also in data communication with a server 400. The display device 200 may be permitted to make communication connections via a Local Area Network (LAN), a Wireless Local Area Network (WLAN), and other networks. The server 400 may provide various contents and interactions to the display device 200. The server 400 may be a cluster, or may be multiple clusters, and may include one or more types of servers.
Fig. 2 exemplarily shows a block diagram of a configuration of the control apparatus 100 in accordance with an exemplary embodiment. As shown in fig. 2, the control device 100 includes a controller 110, a communication interface 130, a user input/output interface 140, a memory, and a power supply. The control apparatus 100 may receive an input operation instruction of a user and convert the operation instruction into an instruction recognizable and responsive to the display device 200, and function as an interaction between the user and the display device 200.
Fig. 3 shows a hardware configuration block diagram of the display device 200 in accordance with an exemplary embodiment.
In some embodiments, display apparatus 200 includes at least one of a modem 210, a communicator 220, a detector 230, an external device interface 240, a controller 250, a display 260, an audio output interface 270, memory, a power supply, a user interface.
In some embodiments the controller includes a processor, a video processor, an audio processor, a graphics processor, RAM, ROM, a first interface for input/output to an nth interface.
In some embodiments, the display 260 includes a display screen component for presenting a picture, and a driving component for driving an image display, for receiving image signals from the controller output, for displaying video content, image content, and a menu manipulation interface, and for manipulating a UI interface by a user.
In some embodiments, the display 260 may be a liquid crystal display, an OLED display, a projection device, and a projection screen.
In some embodiments, communicator 220 is a component for communicating with external devices or servers according to various communication protocol types. For example: the communicator may include at least one of a Wifi module, a bluetooth module, a wired ethernet module, or other network communication protocol chip or a near field communication protocol chip, and an infrared receiver. The display device 200 may establish transmission and reception of control signals and data signals with the external control device 100 or the server 400 through the communicator 220.
In some embodiments, the user interface may be configured to receive control signals from the control device 100 (e.g., an infrared remote control, etc.).
In some embodiments, the detector 230 is used to collect signals of the external environment or interaction with the outside. For example, detector 230 includes a light receiver, a sensor for capturing the intensity of ambient light; alternatively, the detector 230 includes an image collector such as a camera, which may be used to collect external environmental scenes, user attributes, or user interaction gestures, or alternatively, the detector 230 includes a sound collector such as a microphone, or the like, which is used to receive external sounds.
In some embodiments, the external device interface 240 may include, but is not limited to, the following: high Definition Multimedia Interface (HDMI), analog or data high definition component input interface (component), composite video input interface (CVBS), USB input interface (USB), RGB port, or the like. The input/output interface may be a composite input/output interface formed by a plurality of interfaces.
In some embodiments, the modem 210 receives broadcast television signals via wired or wireless reception and demodulates audio-video signals, such as EPG data signals, from a plurality of wireless or wired broadcast television signals.
In some embodiments, the controller 250 and the modem 210 may be located in separate devices, i.e., the modem 210 may also be located in an external device to the main device in which the controller 250 is located, such as an external set-top box or the like.
In some embodiments, the controller 250 controls the operation of the display device and responds to user operations through various software control programs stored on the memory. The controller 250 controls the overall operation of the display apparatus 200. For example: in response to receiving a user command to select a UI object to be displayed on the display 260, the controller 250 may perform an operation related to the object selected by the user command.
In some embodiments, the object may be any one of selectable objects, such as a hyperlink, an icon, or other operable control. The operations related to the selected object are: displaying an operation of connecting to a hyperlink page, a document, an image, or the like, or executing an operation of a program corresponding to the icon.
In some embodiments the controller includes at least one of a central processing unit (Central Processing Unit, CPU), video processor, audio processor, graphics processor (Graphics Processing Unit, GPU), RAM Random Access Memory, RAM), ROM (Read-Only Memory, ROM), first to nth interfaces for input/output, a communication Bus (Bus), and the like.
A CPU processor. For executing operating system and application program instructions stored in the memory, and executing various application programs, data and contents according to various interactive instructions received from the outside, so as to finally display and play various audio and video contents. The CPU processor may include a plurality of processors. Such as one main processor and one or more sub-processors.
In some embodiments, a graphics processor is used to generate various graphical objects, such as: icons, operation menus, user input instruction display graphics, and the like. The graphic processor comprises an arithmetic unit, which is used for receiving various interactive instructions input by a user to operate and displaying various objects according to display attributes; the device also comprises a renderer for rendering various objects obtained based on the arithmetic unit, wherein the rendered objects are used for being displayed on a display.
In some embodiments, the video processor is configured to receive an external video signal, perform video processing such as decompression, decoding, scaling, noise reduction, frame rate conversion, resolution conversion, image composition, etc., according to a standard codec protocol of an input signal, and may obtain a signal that is displayed or played on the directly displayable device 200.
In some embodiments, the video processor includes a demultiplexing module, a video decoding module, an image synthesis module, a frame rate conversion module, a display formatting module, and the like. The demultiplexing module is used for demultiplexing the input audio and video data stream. And the video decoding module is used for processing the demultiplexed video signal, including decoding, scaling and the like. And an image synthesis module, such as an image synthesizer, for performing superposition mixing processing on the graphic generator and the video image after the scaling processing according to the GUI signal input by the user or generated by the graphic generator, so as to generate an image signal for display. And the frame rate conversion module is used for converting the frame rate of the input video. And the display formatting module is used for converting the received frame rate into a video output signal and changing the video output signal to be in accordance with a display format, such as outputting RGB data signals.
In some embodiments, the audio processor is configured to receive an external audio signal, decompress and decode the audio signal according to a standard codec protocol of an input signal, and perform noise reduction, digital-to-analog conversion, and amplification processing to obtain a sound signal that can be played in a speaker.
In some embodiments, a user may input a user command through a Graphical User Interface (GUI) displayed on the display 260, and the user input interface receives the user input command through the Graphical User Interface (GUI). Alternatively, the user may input the user command by inputting a specific sound or gesture, and the user input interface recognizes the sound or gesture through the sensor to receive the user input command.
In some embodiments, a "user interface" is a media interface for interaction and exchange of information between an application or operating system and a user that enables conversion between an internal form of information and a form acceptable to the user. A commonly used presentation form of the user interface is a graphical user interface (Graphic User Interface, GUI), which refers to a user interface related to computer operations that is displayed in a graphical manner. It may be an interface element such as an icon, a window, a control, etc. displayed in a display screen of the electronic device, where the control may include a visual interface element such as an icon, a button, a menu, a tab, a text box, a dialog box, a status bar, a navigation bar, a Widget, etc.
In some embodiments, a system of display devices may include a Kernel (Kernel), a command parser (shell), a file system, and an application program. The kernel, shell, and file system together form the basic operating system architecture that allows users to manage files, run programs, and use the system. After power-up, the kernel is started, the kernel space is activated, hardware is abstracted, hardware parameters are initialized, virtual memory, a scheduler, signal and inter-process communication (IPC) are operated and maintained. After the kernel is started, shell and user application programs are loaded again. The application program is compiled into machine code after being started to form a process.
Referring to FIG. 4, in some embodiments, the system is divided into four layers, from top to bottom, an application layer (simply "application layer"), an application framework layer (Application Framework) layer (simply "framework layer"), a An Zhuoyun row (Android run) and a system library layer (simply "system runtime layer"), and a kernel layer, respectively.
In some embodiments, at least one application program is running in the application program layer, and these application programs may be a Window (Window) program of an operating system, a system setting program, a clock program, or the like; or may be an application developed by a third party developer. In particular implementations, the application packages in the application layer are not limited to the above examples.
The framework layer provides an application programming interface (application programming interface, API) and programming framework for the application. The application framework layer includes a number of predefined functions. The application framework layer corresponds to a processing center that decides to let the applications in the application layer act. Through the API interface, the application program can access the resources in the system and acquire the services of the system in the execution.
As shown in fig. 4, the application framework layer in the embodiment of the present application includes a manager (manager), a Content Provider (Content Provider), and the like, where the manager includes at least one of the following modules: an Activity Manager (Activity Manager) is used to interact with all activities that are running in the system; a Location Manager (Location Manager) is used to provide system services or applications with access to system Location services; a Package Manager (Package Manager) for retrieving various information about an application Package currently installed on the device; a notification manager (Notification Manager) for controlling the display and clearing of notification messages; a Window Manager (Window Manager) is used to manage bracketing icons, windows, toolbars, wallpaper, and desktop components on the user interface.
In some embodiments, the activity manager is used to manage the lifecycle of the individual applications as well as the usual navigation rollback functions, such as controlling the exit, opening, fallback, etc. of the applications. The window manager is used for managing all window programs, such as obtaining the size of the display screen, judging whether a status bar exists or not, locking the screen, intercepting the screen, controlling the change of the display window (for example, reducing the display window to display, dithering display, distorting display, etc.), etc.
In some embodiments, the system runtime layer provides support for the upper layer, the framework layer, and when the framework layer is in use, the android operating system runs the C/C++ libraries contained in the system runtime layer to implement the functions to be implemented by the framework layer.
In some embodiments, the kernel layer is a layer between hardware and software. As shown in fig. 4, the kernel layer contains at least one of the following drivers: audio drive, display drive, bluetooth drive, camera drive, WIFI drive, USB drive, HDMI drive, sensor drive (e.g., fingerprint sensor, temperature sensor, pressure sensor, etc.), and power supply drive, etc.
In some embodiments, the display device may directly enter the preset vod program interface after being started, where the vod program interface may include at least a navigation bar 510 and a content display area located below the navigation bar 510, as shown in fig. 5, where the content displayed in the content display area may change with the change of the selected control in the navigation bar. The program in the application program layer can be integrated in the video-on-demand program and displayed through one control of the navigation bar, and can be further displayed after the application control in the navigation bar is selected.
In some embodiments, the display device may directly enter the display interface of the signal source selected last time after being started, or the signal source selection interface, where the signal source may be a preset video on demand program, or may be at least one of an HDMI interface, a live tv interface, etc., and after the user selects a different signal source, the display may display the content obtained from the different signal source.
The embodiment of the application can be applied to various display devices, and a browser-based streaming media playing control scheme and a method implemented by the intelligent television are explained below.
Fig. 6A is a schematic diagram of a technical solution of playing streaming media by a quiesced upgrade browser of a display device according to an embodiment of the present application.
In some embodiments, the display device provided by the application includes a display, and the user interface of the display device can display a browser page supported by the device, and the display device can play, for example, a streaming media protocol file from a video website through the browser page, so that an effect of fast online video playing is achieved.
In video web pages or applications viewed through a browser, a large portion of the video is streaming resources, including DASH (Dynamic Adaptive Streaming over HTTP HTTP-based dynamic adaptive streaming), HLS (HTTP LiveStreaming: HTTP-based adaptive rate streaming protocol), MSS (Microsoft SmoothStreaming: microsoft smooth streaming), three main streaming protocols.
A series of use scenes, such as 3D Video, interactive 3D, dynamic code rate adaptation, peer-2-Peer (Peer-to-Peer computing) and multi-picture television, are defined in DASH streaming media protocol standards, and meanwhile, how to combine with content protection technology is defined, so that MPEG media can be distributed in an adaptive, progressive, download or streaming manner through HTTP more effectively; support live broadcast business; more effectively utilizing the traditional network basic components such as CDN (Content Delivery Network: content delivery network), proxy server or firewall, etc. based on HTTP; and supporting the combination with a content protection system to complete the protection of the content.
The HLS media framework protocol is based on HTTP progressive download, and the small slice data processing mode applied by the protocol generates a large number of files, and a large amount of system resources are needed for storing or processing the files. For example, to achieve a time shift of several days, the index amount will be a huge number, which will significantly affect the request speed of the television.
Because the native playing function of the browser often cannot play the media files, plug-in expansion is usually required for the browser, for example, common media frame protocols such as FFMpeg (open source computer program for recording, converting digital audio and video, and converting it into a stream), GStreamer (open source multimedia framework application for constructing a streaming media application) and the like are required to assist the television browser in playing video websites or streaming media files loaded by the application.
The goal of the FFMpeg, GStreamer media framework protocol is to simplify the development of audio, video applications, and process multimedia data in MP3, ogg, MPEG1, MPEG2, AVI, quicktime, etc. GStreamer is an open source multimedia framework library that can build a range of media processing modules, ranging from simple ogg play functions to complex audio mixing, and video non-linear editing processes.
In some embodiments, since the media framework protocols such as FFMpeg, GStreamer are written based on the C language, the memory consumption is often large due to the high complexity of the media frameworks in the parsing of the streaming media protocols and demux (multiplexing and mixing) operation of the audio and video.
For example, in some low-profile televisions, applications run primarily on a browser basis, and current streaming solutions are also implemented on a GStreamer media framework, but newly-online applications may upgrade the version of the streaming protocol, resulting in incompatibility of the current streaming solution for the television; if compatibility is to be achieved, large-scale OTA upgrades are often required, which are costly and inefficient.
In some embodiments, the smart television provided by the application supports silent upgrade of the browser, and the controller injects the script player into the browser in a plug-in mode, so that the browser can play streaming media files; for convenience of description, the script Player is replaced by a JavaScript Player, a JS Player or a JS Player in the following description or the accompanying drawings, and the replacing relationship is not described in detail.
When a browser page of the intelligent television needs to play a streaming media file, a controller intercepts a Source of the streaming media in the existing play flow and transmits the Source as a parameter to a JavaScript player, so that the existing streaming media file play flow is converted into an MSE (Media Source Extension: media Source expansion) or EME (Encrypted Media Extensions: encrypted media expansion) media file play flow supported by the browser, and normal play of the streaming media resource file is realized;
in some embodiments, when the browser is started each time, the controller starts a thread, and obtains the version number of the JS Player (script Player) from the Server end to determine whether the script Server local to the smart tv needs to be updated; if the update is needed, the controller starts the update flow to realize silent update of the browser, and the playing experience of the user is not affected in the update process.
In some embodiments, the general technical scheme of inserting a script player into a browser to realize streaming media playing by using the smart tv provided by the present application is shown in fig. 6A, and may be summarized as three modules, which are a streaming media player plug-in module, a streaming media player upgrading module, and a media resource obtaining and playing module respectively.
For example, after the browser is started, the streaming media player plug-in module can realize that the script player is injected into the browser in a plug-in form; when the local script player version of the intelligent television is insufficient to play the streaming media content of the new video website, the controller can upgrade the local script player to the latest version provided by the server side through the streaming media player upgrade module; when the browser plays the streaming media file of the video website, the controller can normally play the streaming media file contained in the webpage under the condition of low memory resource occupation through the media resource acquisition and play module.
In some embodiments, when the browser of the smart television is started, the controller may add a first script player as a plug-in to a first page to be loaded, where the first script player is configured to play a first video object included in the first page, and the video object may be implemented as streaming video.
For example, after the browser is started, the controller detects whether a script player exists locally on the display device, and the controller reads the local JS player during the initialization process of the Render process after the browser is started to determine whether a JS player file exists locally.
The JavaScript related to the application is a script programming language applied to a Web page, and can be inserted into an HTML page and interpreted and executed by a browser; the interaction logic of the Web application can be realized through JavaScript, and the JavaScript can encapsulate a JavaScript extension interface through a browser so as to realize communication with a kernel layer; the webpage player is used as a webpage plug-in, and after the produced webpage is operated, the webpage player can call the player of the system to play preset audio and video files. For example, firstly, downloading a play plug-in, decompressing and entering a catalog, wherein music. Htm is a play bar page to be loaded on a homepage, iist. Htm is a pop-up page for a browser to view a play list, js folders store a plurality of play control files, and img is a picture file of some play interfaces.
If the intelligent power television locally has a JS player file, for example, the controller creates an initialization extension type object corresponding to the first script player, and the initialization extension type object can be compatible with a first page of a browser for playing and displaying; specifically, the controller converts the read JS Player file into a character string, and creates a memory space to store the character string in the JS Player; then initializing and creating a browser Extension type object by using the JS Player character string;
The controller creates a corresponding intelligent pointer according to the acquired initialization extension type object, and the intelligent pointer can be used as a parameter to register to a browser script engine so as to support and realize that a first script player is used as a plug-in of a browser to realize streaming media playing; after creating the browser Extension type object, the controller creates an intelligent pointer to point to the initialized Extension type object, and registers the corresponding intelligent pointer as a parameter in the JS (script) engine of the browser, and the flow of plug-in of the script player is schematically shown in fig. 6B.
It should be noted that, if the first page includes a plurality of video objects, for example, further includes a second video object, the controller will initialize a corresponding plurality of JS players at the same time, such as initializing the second script Player in the browser.
In some embodiments, when loading a first page containing a first video object, the browser of the smart television will acquire a first streaming media cache list address corresponding to the first video object.
For example, the smart television browser loads a first page containing a video, wherein the first page contains a first video object, and the first video object is a streaming media object;
Firstly, the controller acquires first cache list address (manifest) information of a first video object contained in a first page;
then the controller judges whether the obtained first buffer list address information is stream media buffer list address (manifest) information;
if the first cache list address corresponding to the first video object is the first streaming media cache list address, the controller starts a first script player which is installed as a plug-in to the browser based on the acquired first streaming media cache list address, and acquires a first play address corresponding to the first video object in the first page.
In some embodiments, after obtaining the first streaming media buffer list address corresponding to the first video object, the controller invokes and initializes the first script player to obtain, in a traversal manner, a first play address included in the first video object in the first page, where the first play address is from a first video object tag or a sub-tag included in the first video object tag.
For example, after obtaining the first streaming media buffer list address corresponding to the first video object, the controller will call the JS interface, and start the JS Player initialization flow; then the controller traverses all the video tags in the first page and judges whether Source sub-tags exist in the video tags;
When a Source sub-tag exists in the video tag, the controller acquires SRC attribute values in the Source sub-tag, wherein the SRC attribute values can reflect URL playing addresses for stipulating audio and video sources in an HTML page, and possible values of the SRC attribute values comprise absolute URL addresses and relative URL addresses; wherein, the absolute URL address can point to another website, and the relative URL address can point to a certain file of the website; the controller stores the-SRC attribute value of the obtained video as a key value pair into a video object and an SRC dictionary;
when the Source sub-label does not exist in the video label, the controller still acquires the SRC attribute value in the video label, and takes the-SRC attribute value of the video object as a key value to be stored in the video object and the SRC dictionary; finally, the controller traverses the video object and the SRC dictionary, and may obtain a first play address included in the first video object in the first page, as shown in fig. 6C.
In some embodiments, the controller finally controls the first script player to play the first video object in the first page in a manner of a supported format of the browser according to the acquired first play address.
For example, the controller controls the first script player to play the first video object in an MSE (media source extension) mode or an EME (encrypted media extension) mode according to the first play address;
During playing, the controller uses the video object and the SRC attribute value to initialize the JS Player; if a plurality of video objects exist in the page, the controller can initialize a plurality of JS players at the same time according to the number of the video objects, the existing complex streaming media frame is not needed, the streaming media playing can be realized only by relying on the MSE/EME function integrated by the browser, and more memory expenditure can be saved.
In some embodiments, the controller obtains the high version script player and replaces the first script player in a silent manner when the high version script player is present on the server.
For example, the controller determines that the script player will obtain a high version script player from the server when the server exists with a version number higher than the display device local version number. The controller caches the version file of the script player from the server side to the local RAM (cache) of the intelligent television, and then the controller continuously analyzes the version file which can be provided by the server side and acquires the version number of the version file; then the controller compares the local version file version number of the script player with the parsed version number of the server end, or judges that the version number of the server end is higher, and the controller downloads the J SPlayer file with the higher version and the pronunciation version file from the server end by executing signaling interaction.
In some embodiments, if the controller determines that the downloading of the script player and the version file from the server end is successful, the controller performs security verification on the acquired high-version script player, and after the verification is successful, the controller replaces the acquired high-version script player with the local browser to install the first script player, so that silent upgrading and updating of the first script player are completed, and the original covered low-version first script player is backed up. The silent upgrading means that the upgrading program interface is not displayed under the condition of not disturbing the user, and the upgrading program automatically completes upgrading according to the set value of the timing upgrading.
For example, the controller calculates the MD5 (Message-DigestAlgorithm 5) value of the downloaded JS Player file, and version file, MD5 is a widely used cryptographic hash function that generates a 128-bit (16-byte) hash value for ensuring complete consistency of information transfer between ends.
The MD5 value is equivalent to the ID of the file, its value being unique. If the newly downloaded script player file is modified during transmission, such as an embedded virus, trojan horse, etc., its MD5 value will change. Thus, some conventional download URLs provide the file MD and typically provide the MD5 value. If the user finds after download that their MD5 value is inconsistent with the website announcement, it may be that the file has been modified or that the download is in error.
The controller caches the MD5 description file from the Server end into a local RAM, and obtains MD5 values of JS Player files and version files in the description file;
if it is determined that the actual MD5 value of the downloaded JS Player file and version file completely matches the MD5 value in the description file, the controller copies the old version JS Player file and the corresponding version file to the backup directory, and uses the new JS Player file and version file to cover the old version JS Player file and version file; otherwise, the controller deletes the downloaded JS Player file and version file, and the flow is shown in fig. 6D.
It can be understood that, through the above technical scheme, the streaming media playing function of the smart television browser depends on the JS player, and when a new application or a new video website appears in use and the local device cannot be compatible, the controller can realize the upgrade of the playing function of the browser by remotely updating the JS (script) file, without facing the whole OTA upgrade of a large number of users, so that the compatibility of the new application can be realized, and the silent update upgrade can be realized under the condition that the users are not aware.
The application also provides a browser-based streaming media playing control method, which comprises the following steps: when a browser loads a first page containing a first video object, acquiring a first streaming media cache list address corresponding to the first video object, wherein a first script player is added to the first page as a plug-in when the browser is started, and when a server has a high-version script player, the high-version script player is acquired in a silent mode and replaced by the high-version script player, and the first script player is used for playing streaming media video; starting a first script player to acquire a first play address corresponding to a first video object based on the first streaming media cache list address; and controlling a first script player to play the first video object in a supported format mode according to the first play address. The method is described in detail in the implementation of the streaming media playing control scheme by the script player based on the browser of the display device, and will not be described in detail herein.
In some embodiments, when the browser is started, adding the first script player as a plug-in to the first page specifically includes: when a script player exists, creating an initialization extension type object corresponding to a first script player, wherein the initialization extension type object is compatible with a first page of a browser; and creating a corresponding intelligent pointer according to the initialized extension type object, wherein the intelligent pointer is registered to a browser script engine to support the first script player to be used as a plug-in. The method is described in detail in the implementation of the streaming media playing control scheme by the script player based on the browser of the display device, and will not be described in detail herein.
In some embodiments, when the server has a high-version script player, obtaining the high-version script player in a silent manner and replacing the first script player, specifically comprising: when the version number of a server is higher than the local version number, the script player acquires a high-version script player from the server; and after the security verification of the high-version script player is successful, replacing the high-version script player with the high-version script player, and backing up the first script player. The method is described in detail in the implementation of the streaming media playing control scheme by the script player based on the browser of the display device, and will not be described in detail herein.
In some embodiments, starting the first script player to obtain a first play address corresponding to the first video object specifically includes: after the first streaming media cache list address is acquired, a first script player is called and initialized; and acquiring a first playing address contained in the first video object in the first page in a traversing manner, wherein the first playing address is from a first video object tag or a sub-tag contained in the first video object tag. The method is described in detail in the implementation of the streaming media playing control scheme by the script player based on the browser of the display device, and will not be described in detail herein.
In some embodiments, controlling the first script player to play the first video object in a supported format specifically includes: and controlling the first script player to play the first video object in a media source expansion or encrypted media expansion mode according to the first play address. The method is described in detail in the implementation of the streaming media playing control scheme by the script player based on the browser of the display device, and will not be described in detail herein.
The method has the beneficial effects that compatible play of the streaming media file is realized by adding the script player to the browser in the form of a plug-in; further, the compatibility of new video websites and application contents is realized by comparing the version numbers of the script players; further, by acquiring the streaming media cache list address, the play address corresponding to the streaming media video in the page can be acquired, the calling of the existing complex streaming media frame is avoided, the memory overhead of streaming media play is effectively reduced, the large-scale OTA upgrading of equipment is avoided, the personalized silent upgrading of the browser is realized, and the streaming media play is realized by integrating MSE/EME functions through the script player depending on the browser.
Furthermore, those skilled in the art will appreciate that the various aspects of the invention are illustrated and described in the context of a number of patentable categories or circumstances, including any novel and useful procedures, machines, products, or materials, or any novel and useful modifications thereof. Accordingly, aspects of the present application may be performed entirely by hardware, entirely by software (including firmware, resident software, micro-code, etc.) or by a combination of hardware and software. The above hardware or software may be referred to as "data blocks", "controllers", "engines", "units", "components" or "systems". Furthermore, aspects of the present application may take the form of a computer product, comprising computer-readable program code, embodied in one or more computer-readable media.
The computer storage medium may contain a propagated data signal with the computer program code embodied therein, for example, on a baseband or as part of a carrier wave. The propagated signal may take on a variety of forms, including electro-magnetic, optical, etc., or any suitable combination thereof. A computer storage medium may be any computer readable medium that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code located on a computer storage medium may be propagated through any suitable medium, including radio, cable, fiber optic cable, RF, or the like, or a combination of any of the foregoing.
The computer program code necessary for operation of portions of the present application may be written in any one or more programming languages, including an object oriented programming language such as Java, scala, smalltalk, eiffel, JADE, emerald, C ++, c#, vb.net, python, etc., a conventional programming language such as C language, visual Basic, fortran 2003, perl, COBOL 2002, PHP, ABAP, a dynamic programming language such as Python, ruby and Groovy, or other programming languages, etc. The program code may execute entirely on the user's computer or as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any form of network, such as a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet), or in a cloud computing environment, or as a service, for example, software as a service (SaaS).
Furthermore, the order in which the elements and sequences are presented, the use of numerical letters, or other designations are used in the application and are not intended to limit the order in which the processes and methods of the application are performed unless explicitly recited in the claims. While certain presently useful inventive embodiments have been discussed in the foregoing disclosure, by way of various examples, it is to be understood that such details are merely illustrative and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover all modifications and equivalent arrangements included within the spirit and scope of the embodiments of the present application. For example, while the system components described above may be implemented by hardware devices, they may also be implemented solely by software solutions, such as installing the described system on an existing server or mobile device.
Likewise, it should be noted that in order to simplify the presentation disclosed herein and thereby aid in understanding one or more inventive embodiments, various features are sometimes grouped together in a single embodiment, figure, or description thereof. This method of disclosure, however, is not intended to imply that more features than are presented in the claims are required for the subject application. Indeed, less than all of the features of a single embodiment disclosed above.
Each patent, patent application publication, and other material, such as articles, books, specifications, publications, documents, etc., cited in this application is hereby incorporated by reference in its entirety. Except for application history documents that are inconsistent or conflicting with the present application, documents that are currently or later attached to this application for which the broadest scope of the claims to the present application is limited. It is noted that the descriptions, definitions, and/or terms used in the subject matter of this application are subject to such descriptions, definitions, and/or terms if they are inconsistent or conflicting with such descriptions, definitions, and/or terms.

Claims (10)

1. A display device, characterized by comprising:
the display is used for displaying a user interface comprising a browser page, and the browser page can play the streaming media video object;
a controller configured to:
when a browser loads a first page containing a first video object, a first streaming media cache list address corresponding to the first video object is obtained, wherein a first script player is added to the first page as a plug-in by a controller when the browser is started, and when a high-version script player exists in a server, the controller obtains the high-version script player in a silent mode and replaces the first script player, and the first script player is used for playing streaming media video;
starting a first script player to acquire a first play address corresponding to a first video object based on the first streaming media cache list address;
and controlling a first script player to play the first video object in a supported format mode according to the first play address.
2. The display device of claim 1, wherein the controller adds a first script player as a plug-in to the first page when the browser is started, specifically comprising the controller:
When a script player exists in the display equipment, creating an initialization extension type object corresponding to a first script player, wherein the initialization extension type object is compatible with a first page of a browser;
and creating a corresponding intelligent pointer according to the initialized extension type object, wherein the intelligent pointer is registered to a browser script engine to support the first script player to be used as a plug-in.
3. The display device of claim 1, wherein the controller obtains the high version script player to replace the first script player in a silent manner when the high version script player is present on the server, comprising in particular the controller:
when the version number of a server is higher than the local version number of display equipment, the script player acquires a high-version script player from the server;
and after the security verification of the high-version script player is successful, replacing the high-version script player with the high-version script player, and backing up the first script player.
4. The display device of claim 1, wherein the controller starts the first script player to obtain a first play address corresponding to the first video object, and specifically comprises the controller:
After the first streaming media cache list address is acquired, a first script player is called and initialized;
and acquiring a first playing address contained in the first video object in the first page in a traversing manner, wherein the first playing address is from a first video object tag or a sub-tag contained in the first video object tag.
5. The display device of claim 1, wherein the controller controls the first script player to play the first video object in a supported format, specifically comprising the controller:
and controlling the first script player to play the first video object in a media source expansion or encrypted media expansion mode according to the first play address.
6. The method for controlling the play of the streaming media based on the browser is characterized by comprising the following steps:
when a browser loads a first page containing a first video object, acquiring a first streaming media cache list address corresponding to the first video object, wherein a first script player is added to the first page as a plug-in when the browser is started, and when a server has a high-version script player, the high-version script player is acquired in a silent mode and replaced by the high-version script player, and the first script player is used for playing streaming media video;
Starting a first script player to acquire a first play address corresponding to a first video object based on the first streaming media cache list address;
and controlling a first script player to play the first video object in a supported format mode according to the first play address.
7. The method for controlling playback of a streaming media based on a browser as set forth in claim 6, wherein when the browser is started, adding a first script player as a plug-in to the first page, specifically includes:
when a script player exists, creating an initialization extension type object corresponding to a first script player, wherein the initialization extension type object is compatible with a first page of a browser;
and creating a corresponding intelligent pointer according to the initialized extension type object, wherein the intelligent pointer is registered to a browser script engine to support the first script player to be used as a plug-in.
8. The method for controlling playback of a streaming media based on a browser of claim 6, wherein obtaining the high-version script player and replacing the first script player in a silent manner when the high-version script player exists in the server, comprises:
when the version number of a server is higher than the local version number, the script player acquires a high-version script player from the server;
And after the security verification of the high-version script player is successful, replacing the high-version script player with the high-version script player, and backing up the first script player.
9. The method for controlling playback of a streaming media based on a browser as set forth in claim 6, wherein starting a first script player to obtain a first playback address corresponding to a first video object includes:
after the first streaming media cache list address is acquired, a first script player is called and initialized;
and acquiring a first playing address contained in the first video object in the first page in a traversing manner, wherein the first playing address is from a first video object tag or a sub-tag contained in the first video object tag.
10. The method for controlling playback of a browser-based streaming media of claim 6, wherein controlling a first script player to play back the first video object in a supported format comprises:
and controlling the first script player to play the first video object in a media source expansion or encrypted media expansion mode according to the first play address.
CN202111497181.XA 2021-12-09 2021-12-09 Display equipment and streaming media playing control method based on browser Pending CN116261003A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111497181.XA CN116261003A (en) 2021-12-09 2021-12-09 Display equipment and streaming media playing control method based on browser

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111497181.XA CN116261003A (en) 2021-12-09 2021-12-09 Display equipment and streaming media playing control method based on browser

Publications (1)

Publication Number Publication Date
CN116261003A true CN116261003A (en) 2023-06-13

Family

ID=86679735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111497181.XA Pending CN116261003A (en) 2021-12-09 2021-12-09 Display equipment and streaming media playing control method based on browser

Country Status (1)

Country Link
CN (1) CN116261003A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117499736A (en) * 2023-12-29 2024-02-02 杭州阿启视科技有限公司 Method for playing front-end camera video by web browser plug-in based on windows operating system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117499736A (en) * 2023-12-29 2024-02-02 杭州阿启视科技有限公司 Method for playing front-end camera video by web browser plug-in based on windows operating system
CN117499736B (en) * 2023-12-29 2024-04-19 杭州阿启视科技有限公司 Method for playing front-end camera video by web browser plug-in based on windows operating system

Similar Documents

Publication Publication Date Title
US20230362430A1 (en) Techniques for managing generation and rendering of user interfaces on client devices
WO2010107622A2 (en) Hosted application platform with extensible media format
CN112905210B (en) Server and gray level publishing method
CN111324411B (en) User interface upgrading method in display equipment and display equipment
US11200294B2 (en) Page updating method and display device
CN112445545A (en) Starting method of webpage application and display equipment
CN114073098A (en) Streaming media synchronization method and display device
CN109857972B (en) Page updating method and display equipment
CN116261003A (en) Display equipment and streaming media playing control method based on browser
CN112487322B (en) Third party application Loading page loading method and display device
US10055508B1 (en) Platform-agnostic thick-client system for combined delivery of disparate streaming content and dynamic content by combining dynamic data with output from a continuous queue transmitter
CN113316014B (en) Display device, server and third-party data display control method
CN112667285B (en) Application upgrading method, display device and server
CN112911359B (en) Resource display method, display equipment and remote controller
CN116340680A (en) Display equipment and control method for managing life cycle of plug-in object
CN113971049A (en) Background service management method and display device
CN112527330B (en) Management method and display device
US12045631B2 (en) Page loading method and display apparatus
CN112887798B (en) Display device and multimedia resource playing method applied to android system
CN112291600B (en) Caching method and display device
CN112231088B (en) Browser process optimization method and display device
CN112199612B (en) Bookmark adding and combining method and display equipment
CN111586481B (en) Terminal and application processing method
WO2020187099A1 (en) Page update method and display device
CN116795444A (en) Display equipment, interactive application running device and method

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