US20180184155A1 - Method, device, and computing apparatus for acquiring broadcasting content - Google Patents
Method, device, and computing apparatus for acquiring broadcasting content Download PDFInfo
- Publication number
- US20180184155A1 US20180184155A1 US15/846,816 US201715846816A US2018184155A1 US 20180184155 A1 US20180184155 A1 US 20180184155A1 US 201715846816 A US201715846816 A US 201715846816A US 2018184155 A1 US2018184155 A1 US 2018184155A1
- Authority
- US
- United States
- Prior art keywords
- broadcasting
- content
- multimedia
- acquiring
- broadcasting content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
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
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- 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
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- 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
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- 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
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
-
- 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
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47214—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market
-
- 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/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
Definitions
- the present disclosure relates to the field of internet technology and, more particularly, relates to a method, a device, and a computing apparatus for acquiring broadcasting content.
- One aspect of the present disclosure provides a method for acquiring broadcasting content performed by computer programs stored in a memory and executable by a processor.
- the method comprises: recognizing, by the processor, a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and based on the type and the output mode, acquiring, by the processor, broadcasting content of the multimedia resource played by the multimedia player.
- the device comprises a memory and a processor.
- the memory is configured to store computer programs for implementing a method for acquiring broadcasting content.
- the processor is coupled to the memory and, when executing the computer programs, is configured for: recognizing a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and based on the type and the output mode, acquiring broadcasting content of the multimedia resource played by the multimedia player.
- the computing apparatus comprises a display device, a memory, and a processor.
- the display device is configured to display information.
- the memory is configured to store information.
- the processor is connected to the display device and the memory, and is configured to: recognize a type of a multimedia player on a target webpage and an output mode for broadcasting a multimedia resource; based on the recognized type and the output mode, acquire broadcasting content of the multimedia resource played by the multimedia player; and store the acquired broadcasting content in a multimedia storage region of the memory in a preset format.
- FIG. 1 illustrates a schematic block diagram of a structure of an exemplary computing apparatus according to one embodiment of the present disclosure
- FIG. 2 illustrates a schematic flow chart of an exemplary method for acquiring broadcasting content according to one embodiment of the present disclosure
- FIG. 3 illustrates a schematic flow chart for recording a video watched online based on a browser
- FIG. 4 illustrates a schematic flow chart of a structure of an exemplary device for acquiring broadcasting content according to one embodiment of the present disclosure
- FIG. 5 illustrates a schematic view of effects of a specific implementation of the present disclosure.
- the present disclosure provides an effective technical solution for content acquiring.
- the content-acquiring solution of the present disclosure applies processing approaches corresponding to the broadcasting mechanisms to acquire the broadcasted multimedia content.
- Method, device, and computing apparatus are provided hereinafter to acquire broadcasting content, thereby effectively acquiring multi-media content broadcasted on the webpage.
- a method for acquiring broadcasting content including: a recognition step for recognizing a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and a broadcasting-content acquiring step for acquiring broadcasting content of the multimedia resource played by the multimedia player.
- the present disclosure may utilize a corresponding approach to acquire the multimedia content that is broadcasted.
- the method may further include a storing step for storing the acquired broadcasting content in a multimedia storage region in a preset format.
- the multimedia resource may include video resource
- the broadcasting-content acquiring step may include: acquiring a whole or a part of video frames of the video resource broadcasted by the multimedia player one by one or at a frame decreasing rate.
- a small portion may vary between a certain number of consecutive image frames.
- the frame rate may be reduced under the situation where watching is not affected. As such, the processing amount of the broadcasting-content acquiring step and the processing amount of the subsequent storing step may be reduced.
- the storing step may include: converting the acquired video frames into the preset format and filling the acquired video frames into designated regions of a canvas buffering region based on location information.
- the multimedia resource may include audio resource
- the broadcasting-content acquiring step may include: directly acquiring the audio content that is outputted to an audio card for broadcasting.
- the recognition step recognizes the type of the multimedia player to be a webpage element, such as the HTML5 player.
- the broadcasting content may be acquired based on one of the followings: in the broadcasting-content acquiring step, based on the recognized software-decoding output mode, directly acquiring the broadcasting content decoded by the software; or in the broadcasting-content acquiring step, based on the recognized hardware-decoding output mode, directly acquiring the broadcasting content that hasn't been decoded by the hardware followed by software self-decoding, or acquiring the broadcasting content decoded by the hardware by reading data of the hardware.
- the type of the multimedia player is recognized to be a webpage plugin, such as the Flash player.
- the broadcasting content is acquired by intercepting an output interface.
- the following approaches may be applied to acquire the broadcasting content by intercepting the output interface: in the broadcasting-content acquiring step, based on the recognized 2D software-decoding output mode, directly intercepting the output interface to acquire the broadcasting content; in the broadcasting-content acquiring step, based on the recognized 3D software-decoding output mode, intercepting the output content of a plurality of output interfaces and acquires the broadcasting content based on correlation between the plurality of output contents; in the broadcasting-content acquiring step, based on the recognized hardware-decoding output mode, calling an output interface to read the data of the hardware to acquire the broadcasting content.
- the multimedia player in the broadcasting-content acquiring step, when the target webpage is a non-current webpage, the multimedia player is timedly triggered to keep that the multimedia player broadcasting the multimedia content.
- the multimedia player may be timedly triggered to enable the multimedia player to continue broadcasting the multimedia content while being minimized on the target webpage.
- a clipping region is created for the multimedia player to keep the multimedia player broadcasting the multimedia content when the target webpage is the current webpage but a whole or a part of content of the multimedia player is located within the non-display region.
- the clipping region may be created for the multimedia player, thereby allowing the continued broadcasting of the multimedia content when the multimedia player is entirely or partially blocked.
- a device for acquiring broadcasting content including: a recognition unit, configured for recognizing a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and a broadcasting-content acquiring unit for acquiring broadcasting content of the multimedia resource played by the multimedia player based on the type and output mode recognized by the recognition unit.
- the device further includes a storing unit configured for storing the acquired broadcasting content in a multimedia storage region in a preset format.
- the multimedia resource may include video resource
- the broadcasting-content acquiring step may include: acquiring a whole or a part of video frames of the video resource broadcasted by the multimedia player one by one or at a frame decreasing rate.
- the type of the multimedia player recognized by the recognition unit is a webpage element, such as the HTML5 player.
- the broadcasting-content acquiring unit based on the recognized software-decoding output mode, directly acquiring the broadcasting content decoded by the software; or based on the recognized hardware-decoding output mode, directly acquiring the broadcasting content that hasn't been decoded by the hardware followed by software, or acquiring the broadcasting content decoded by the hardware by reading data of the hardware.
- the type of the multimedia player recognized by the recognition unit is a webpage plugin, such as the Flash player.
- the broadcasting-content acquiring unit acquires the broadcasting content by intercepting an output interface.
- one of the following operations is performed by the broadcasting-content acquiring unit: based on the recognized 2D software-decoding output mode, directly intercepting the output interface to acquire the broadcasting content; based on the recognized 3D software-decoding output mode, intercepting the output content of a plurality of output interfaces and acquiring the broadcasting content based on correlation between a plurality of output contents; based on the recognized hardware-decoding output mode, calling an output interface to read the data of the hardware to acquire the broadcasting content.
- the broadcasting-content acquiring unit further includes a timed triggering module, configured for timedly triggering the multimedia player to keep that the multimedia player broadcasting the multimedia content when the target webpage is a non-current webpage.
- the broadcasting-content acquiring unit further includes a clipping region creation module, configured to create a clipping region for the multimedia player to keep that the multimedia player broadcasting the multimedia content when the target webpage is the current webpage but the whole or a part of content of the multimedia player is located within the non-display region.
- a clipping region creation module configured to create a clipping region for the multimedia player to keep that the multimedia player broadcasting the multimedia content when the target webpage is the current webpage but the whole or a part of content of the multimedia player is located within the non-display region.
- a computing apparatus including: a display device for displaying information; a memory for storing information; and a processor connected to the display device and the memory.
- the processor is configured to recognize a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; based on the recognized type and output mode, acquire broadcasting content of the multimedia resource played by the multimedia player; and store the acquired broadcasting content in a multimedia storage region in a preset format.
- the disclosed method, device, and computing apparatus for acquiring broadcasting content may apply corresponding processing approaches to acquire the broadcasted multimedia content by analyzing the broadcasting mechanism of the multimedia resource on the webpage, such as the type of the multimedia player and the output mode when the multimedia resource is broadcasted. Accordingly, the saving or recording of the multimedia content watched by the users online may be realized
- FIG. 1 illustrates a structural block diagram of an exemplary computing apparatus 100 according to one embodiment of the present disclosure.
- Components of the computing apparatus 100 may include, but be not limited to, a display device 110 , a memory 120 , a network interface 125 , and a processor 130 .
- the processor 130 may be connected to the network interface 125 , the display device 110 , and the memory 120 , respectively.
- the aforementioned and other components not illustrated in FIG. 1 of the computing apparatus 100 may be connected to each other, for example, via a bus.
- the structural block diagram of the computing apparatus illustrated in FIG. 1 are for illustrative purposes, and shall not be construed as limiting of the scope of the present disclosure. Those skilled in the relevant art may add or replace other components based on need.
- the computing apparatus 100 may be any type of static or mobile computing apparatus, including portable computer or mobile computing apparatus (e.g., tablet, personal digital assistant, laptop computer, notebook computer, netbook, etc.), portable phone (e.g., smart phone), wearable computing apparatus (e.g., smart watch, smart glass, etc.) or other types of mobile apparatuses, or desktop computer or static computing unit of the PC.
- portable computer or mobile computing apparatus e.g., tablet, personal digital assistant, laptop computer, notebook computer, netbook, etc.
- portable phone e.g., smart phone
- wearable computing apparatus e.g., smart watch, smart glass, etc.
- desktop computer or static computing unit of the PC e.g., desktop computer or static computing unit of the PC.
- the computing apparatus 100 may also be a mobile or static server.
- the network interface 125 may enable the computing apparatus 100 to communicate with the server via one or more networks. Examples of such networks include local area network (LAN), wide area network (WAN), personal area network (PAN), or a combination of communication networks such as internet.
- the network interface may include one or more network interfaces (e.g., network interface card, NIC) in any type including wireless or wired, such as the IEEE802.11 wireless local area network (WLAN), worldwide interoperability for microwave access (Wi-MAX) interface, Ethernet interface, universal serial bus (USB) interface, cellular network interface, blue-tooth interface, and near field communication (NFC) interface, etc.
- WLAN wireless local area network
- Wi-MAX worldwide interoperability for microwave access
- Ethernet interface such as Ethernet interface, universal serial bus (USB) interface, cellular network interface, blue-tooth interface, and near field communication (NFC) interface, etc.
- USB universal serial bus
- the data used by the computing apparatus 100 to interact with the server (not shown) through the network interface 125 may be stored in the memory 120 .
- the memory 120 may include one or more storage devices in any type that store content in a file format or other formats, including magnetic hard drive, solid-state hard drive, semiconductor memory device, flash drive, or any other computer readable and writable storage medium that is able to store program instructions or digital information. It should be noted that, a part of the interaction information between the computing apparatus 100 and the server may be persistently stored in a designated storage region of the memory 120 , and other interaction information may be temporarily stored in the memory of the computing apparatus 100 .
- the display device 110 may display the video images obtained by interaction of the computing apparatus with the server through the network interface, and the display device 110 may include various types of imaging devices, such as a cathode-ray tube (CRT), liquid crystal display (LCD), light-emitting diode (LED) (including the organic light-emitting diode, OLED), the projection system, and a combination with other supporting electronic devices (e.g., digital-to-analog converter (DAC), analog-to-digital converter (ADC), signal processor, etc.)
- CTR cathode-ray tube
- LCD liquid crystal display
- LED light-emitting diode
- OLED organic light-emitting diode
- the projection system and a combination with other supporting electronic devices (e.g., digital-to-analog converter (DAC), analog-to-digital converter (ADC), signal processor, etc.)
- DAC digital-to-analog converter
- ADC analog-to-digital converter
- the computing apparatus 100 may acquire webpage content through the network interface 125 , and the acquired webpage content may be displayed by the display device 110 .
- the display device 110 may display the multimedia content broadcasted by the multimedia player on the target webpage.
- the processor 130 may recognize a type of a multimedia player and an output mode for broadcasting multimedia resource on the target webpage, and based on the recognized type and output mode, acquire broadcasting content of the multimedia resource played by the multimedia player. Further, the processor 130 may further store the acquired broadcasting content in a multimedia storage region of the memory 120 in a preset format.
- FIG. 2 is a flow chart showing a broadcasting-content acquiring method 200 according to one embodiment of the present disclosure.
- the disclosed broadcasting-content acquiring method 200 may mainly include a recognition step (Step S 210 ) and a broadcasting-content acquiring step (Step S 220 ).
- Step S 210 a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource are recognized.
- Step S 220 based on the recognized type and output mode, broadcasting content of the multimedia resource played by the multimedia player is acquired.
- Two types of multimedia broadcasting mechanism are most currently used by video websites in China: one is to play the multimedia resource through a webpage plugin, such as the Flash plugin, and the other is to play the multimedia resource through a webpage element, such as the HTML5 player.
- the webpage plugin is a plugin imbedded in a browser or other applications capable of visiting webpages for providing a multimedia playing function, which is closed with respect to the browser or other applications.
- the webpage element realizes the multimedia playing function through the webpage codes, and the data during the process of using the webpage element to play the multimedia resource is visible with respect to the browser or other applications. Because the broadcasting mechanisms of the webpage plugin and the webpage element are different, when the multimedia player is respectively the webpage plugin and the webpage element, different processing approaches may be adopted to acquire the broadcasting content of the multimedia resource to be played.
- the multimedia player is the webpage plugin and the webpage element, respectively. It should be understood that, for other types of multimedia players, the multimedia content may be acquired by applying corresponding processing approaches based on the broadcasting mechanism.
- the Multimedia Player being a Webpage Plugin
- the broadcasting content may be acquired from an output interface.
- the output mode for broadcasting multimedia resource may be a 2D software-decoding output mode, a 3D software-decoding output mode, and a hardware-decoding output mode.
- the 2D software-decoding output mode outputs the data in the RGBA format, and such data may be copied directly. That is, when the output mode is recognized to be the 2D software-decoding output mode, the broadcasting content may be acquired directly from the output interface.
- the 3D software-decoding output mode may directly output the data in the YUV format for certain display cards that have a relatively poor compatibility. Accordingly, when the output mode for broadcasting the multimedia resource is recognized to be the 3D software-decoding output mode, the output content may be acquired from a plurality of 3D output interfaces, and the broadcasting content may be acquired based on correlation between a plurality of output contents.
- mapping may be established when a certain output is started and a certain output comes to an end to obtain the correlation between a plurality of outputs, and the content to be eventually broadcasted may be acquired by properly organizing the contents of the aforementioned plurality of outputs.
- the hardware-decoding output mode mainly relies on the graphics processing unit (GPU) for decoding, and the decoded data may be uploaded directly to the display card.
- the Flash plugin cannot acquire the decoded data.
- the interface may be called to read the data of the hardware to acquire the broadcasting content.
- the glReadPixels interface may be called to read the data from the display card. Often, such operation consumes a relatively lot of time, and additional threads may be applied for processing.
- the data that is read may further include data such as bullet screen and advertising patch inserted in the video data, etc.
- the user may select corresponding options in the original video to select whether the data such as the bullet screen needs to be included.
- the broadcasting-content acquiring step may adopt the corresponding acquisition approach to acquire the broadcasting content.
- the present disclosure provides relatively simple approach for acquiring the broadcasting content with respect to the situation where the multimedia player is the Flash plugin.
- the output modes may be divided into a software-decoding output mode and a hardware-decoding output mode.
- the broadcasting content decoded by the software may be acquired directly.
- the hardware-decoding output mode mainly uses the GPU for decoding, and the decoded data may be updated to the display card directly.
- the output mode is the hardware-decoding output mode
- the broadcasting content haven't been decoded by the hardware may be acquired directly for self-decoding by the software.
- the broadcasting content decoded by the hardware may be acquired by reading the data of the hardware display card.
- the webpage plugin being the Flash plugin and the webpage element being the HTML5 player as examples, the specific implementations of the broadcasting-content acquiring step are illustrated in details.
- the webpage plugin and the webpage element may be players other than the aforementioned Flash and HTML5, such as newly-developed multimedia player within the webpage as the technology advances.
- Such multimedia players may also acquire the broadcasting content of the multimedia resource based on the specific broadcasting mechanism through use of corresponding processing approaches.
- the multimedia resource primarily includes the video resource and the audio resource.
- the video resource the aforementioned approaches are often applied.
- the audio resource because the audio content is often outputted to an audio card, the audio content outputted to the video card for broadcasting may be acquired directly.
- the disclosed broadcasting-content acquiring method 200 may include a storing step S 230 .
- the acquired broadcasting content may be stored in a multimedia storage region in a preset format.
- entire or partial video frames of the video resource played by the video multimedia player may be acquired one by one, or the entire or partial video frames of the vide resource played by the multimedia player may be acquired at a gradually-frame decreasing rate.
- a small portion may vary between a certain number of consecutive image frames.
- the frame rate may be reduced under the condition where watching is not affected.
- the entire or partial video frames of the video resources are acquired at a gradually-frame decreasing rate, video frames showing no variation or relatively small variation may be discarded in some cases.
- the initial coordinates and specific width and length of the video frames may be designated for facilitating further storage based on the location of the video frames.
- the multimedia storage region may be a canvas buffering region for storing a series of video frames, and the canvas buffering region may be prepared in advance.
- the canvas dimension of the canvas buffering region may be configured based on the dimension of the acquired video frames, and may be specifically the same as the dimension of video frames of the acquired broadcasting content.
- the dimension of the canvas of the canvas buffering region may be set to be the initial dimension of the video frames when the broadcasting content is started to be acquired.
- the acquired video frames may be converted into a preset format and be filled in a designated region of the canvas buffering region based on the location information.
- the acquired video frames may be converted to the data in the RGBA format, and may be filled in the corresponding location of the canvas buffering region based on the location information of the video frames.
- the RGBA data in the memory may be converted to its own format based on its service, for example, the RGBA data may be saved as a bitmap (BMP) file, or encoded into the H264 format, etc.
- BMP bitmap
- the approach of stitching may be applied for filling. For example, after a video frame is filled in the canvas buffering region, for a portion of a video frame that follows the filled video frame, the portion may be filled in the corresponding local region of the canvas buffering region based on the location information thereof while the other regions may use the image filled last time. Thus, the working amount of filling may be reduced, and the efficiency may be improved.
- the initial locations and specific widths and lengths to be depicted may be designated. Thus, during re-depiction, only the regions corresponding to the designated location information need to be depicted.
- the target webpage is a non-current webpage (e.g., the target webpage is minimized or the target webpage is not the current display window) or the target webpage is the current webpage but the entire or partial multimedia player on the target webpage falls within a non-display region (e.g., a part of or the entire multimedia player on the target webpage is blocked), the user cannot see the images of the video. Under such situation, the multimedia player may terminate the output of the image data to avoid unnecessary performance loss. To acquire the broadcasting content under such scenarios, certain measures need to be applied to enable the multimedia player to continue broadcasting the multimedia content.
- the Flash plugin may be triggered at designated moment(s) to enable the Flash plugin to continue broadcasting the multimedia content.
- a clipping region (or a visual clipping region) may be created for the multimedia player to keep the multimedia player broadcasting the multimedia content.
- the multimedia player being the Flash plugin
- the target webpage is the non-current-display webpage or the target webpage is the current display webpage but all or a part of the multimedia player on the target webpage is in the non-display region
- exemplary illustration of the approaches applied to maintain the broadcasting of the multimedia content played by the multimedia player are provided.
- the present disclosure may use various other solutions to implement the continuous broadcasting of the Flash plugin under the aforementioned situation, and for situations where the multimedia player is the HTML5 player or other types of players, the aforementioned or other solutions may also be applied to maintain the broadcasting of the multimedia content.
- the disclosed multimedia content acquiring method may be applied to applications that are able to visit webpages, such as browser, and other applications that have the webpage-visiting function like APP of Wechat and Toutiao, etc.
- applications that are able to visit webpages, such as browser, and other applications that have the webpage-visiting function like APP of Wechat and Toutiao, etc.
- the disclosed multimedia content acquiring method may be applied to acquire the multimedia content that is broadcasted, thereby realizing the recording of the broadcasted multimedia content.
- Specific applications of the present disclosure will be illustrated using the Flash plugin as an example.
- FIG. 3 illustrates an exemplary flow chart of applying the present disclosure to a browser for recording a video watched online.
- a user opens a Flash video website (most current video websites in China are about Flash videos) to watch a video.
- the Flash requests the currently supported properties from the browser, and determines whether the mode of 2D output, 3D output or the hardware decoding is adopted based on the internally implemented logics.
- the browser detects the output mode of the Flash image data, and prepares the corresponding canvas buffering region based on the initial dimension of the Flash, where the displaying format of the canvas buffering region in the memory is the RGBA format.
- Step S 303 for the browser and the Flash to avoid unnecessary losses of the performance, when the browser is minimized or the Flash page is in a non-display tab or the rolling bar is dragged to roll the Flash plugin to a non-display region, the user cannot see the Flash image, and the Flash may terminate the output of the image data to avoid unnecessary performance loss. Under such scenarios, if images need to be intercepted, the images need to be cracked one by one to enable the Flash to output the image data. When the browser is minimized or the Flash webpage is in the non-display Tab, the browser terminates the callback with respect to the programming interface of the Flash, and without receiving the callback, the Flash performs no further output of the images.
- acquisition solutions of the present disclosure may design a timed task to trigger the callback already terminated by the browser, such that the Flash may continue to output the data.
- the browser may notify a new clipping region to the Flash, and when the Flash determines that the clipping region is invisible, the data may not be further outputted. Under such situation, a visible clipping region may be forged for Flash, thus allowing the Flash to continue outputting the images.
- Step S 304 based on the detected output mode of the Flash image data, different data processing solutions may be adopted.
- the processing of the 2D output mode is the simplest, and the output format itself is the RGBA format, which can be copied directly from the memory.
- the processing of the 3D output mode is relatively complicated, in which a plurality of output interfaces need to be intercepted, and mapping needs to be established when a certain output is started and a certain output comes to an end. Further, other than the RGBA format, for certain display cards with a relatively poor compatibility, the 3D output mode may directly output the YUV format.
- the Flash transmits the video data to the GPU process for decoding, and the decoded video data is transmitted to the display card directly. That is, the plugin process cannot acquire the video data, and under such situation, the glReadPixels interface needs to be called directly to read the display card data directly. Such operation is a little bit time-consuming, and additional thread needs to be opened for processing.
- Step S 305 data intercepted using various intercepting approaches needs to be converted uniformly into the RGBA format, and the data is filled in the designated region of the canvas buffering region based on given location information.
- the images outputted by the Flash each time are not entire images, and a certain region of images may be acquired. Thus, directional copying and filling are needed herein.
- Step S 306 a full set of video images are filled, and based on service demands, the RGBA data in the memory needs to be converted to its own format, for example, the RGBA data is saved as a BMP file or encoded into a H264 format, etc.
- FIG. 4 illustrates a functional block diagram of an exemplary broadcasting-content acquiring device 400 according to an embodiment of the present disclosure.
- Functional modules of the broadcasting-content acquiring device 400 may be implemented by hardware, software, or a combination of hardware and software according to the principles of the present disclosure.
- the functional modules may be implemented by the processor 130 of the computing apparatus 100 in FIG. 1 .
- FIG. 4 may be combined or divided into sub-modules, thereby implementing the principles of the present disclosure.
- descriptions of this paper may support any possible combination or division or further definition of functional modules described in the present disclosure.
- the broadcasting-content acquiring device 400 may include a recognition unit 410 and a broadcasting-content acquiring unit 420 .
- the recognition unit 410 is configured to recognize the type of the multimedia player on the target webpage and the output mode for broadcasting the multimedia resource.
- the broadcasting-content acquiring unit 420 may acquire the broadcasting content of the multimedia resources played by the multimedia player based on the type and the output mode recognized by the recognition unit.
- the broadcasting-content acquiring unit 420 may use processing approaches corresponding to the broadcasting mechanism to acquire the multimedia content.
- the Multimedia Player being the Webpage Plugin
- the broadcasting-content acquiring unit 420 may acquire the broadcasting content by intercepting the output interface.
- the broadcasting-content acquiring unit 420 may directly intercept the output interface to acquire the broadcasting content.
- the broadcasting-content acquiring unit 420 may intercept the output contents of a plurality of output interfaces and acquire the broadcasting content based on the correlation between the output contents.
- the broadcasting-content acquiring unit 420 may call the interface to read the data of the hardware to acquire the broadcasting content.
- the recognition unit 410 recognizes that the type of the multimedia player is the HTML5 player, based on the output mode recognized by the recognition unit 410 , the broadcasting-content acquiring unit 420 may perform corresponding operations.
- the broadcasting-content acquiring unit 420 may directly acquire the broadcasting content decoded by the software.
- the broadcasting-content acquiring unit 420 may directly acquire the broadcasting content that hasn't been decoded by the hardware followed by software self-decoding, or the broadcasting content decoded by the hardware may be acquired by reading the data of the hardware.
- the broadcasting-content acquiring unit 420 may acquire the broadcasting content of the multimedia resource by using the corresponding processing approaches based on specific broadcasting mechanism.
- the multimedia resource mainly includes the video resource and the audio resource. For the video resource, the aforementioned approaches may be applied, and for the audio resource, because the audio content is directly outputted to the sound card, the audio content outputted to the sound card for broadcasting may be acquired directly.
- the broadcasting-content acquiring device 400 may optionally include a storage unit 430 .
- the storage unit 430 may be configured to store the broadcasting content acquired by the broadcasting-content acquiring unit in the multimedia storage region in the preset format.
- the broadcasting-content acquiring unit 420 may acquire the entire or partial video frames of the video resource played by the video multimedia player one by one, or acquire the entire or partial video frames of the vide resources played by the multimedia player at a frame decreasing rate. This is because, for the video resource, the variation between consecutive frames of images is often a very small portion. Thus, only the small portion showing the variation occurred in the consecutive video frames may need to be acquired. Thus, for certain video resource with a high frame rate, the broadcasting-content acquiring unit 420 may be acquire the video resource with a reduced frame rate under the condition where watching is not affected. When the entire or partial video frames of the video resources are acquired at a reduced frame rate, video frames showing no variation or relatively small variation may be discarded. Further, when the (entire or partial) video frames are acquired, the initial coordinates and specific width and length of the video frames may be designated for facilitating the subsequent storage.
- the multimedia storage region may be a canvas buffering region for storing a series of video frames, and the canvas buffering region may be prepared in advance.
- the canvas dimension of the canvas buffering region may be configured based on the dimension of the acquired video frames, and may be specifically the same as the dimension of video frames of the acquired broadcasting content.
- the canvas dimension of the canvas buffering region may be set to be the initial dimension of the video frames when the broadcasting content is started to be acquired.
- the storage unit 430 may convert the acquired video frames into the preset format and fill the video frames in the designated region of the canvas buffering region based on the location information.
- the acquired vide frames may be converted to data having the RGBA format and may be filled in the corresponding location of the canvas buffering region based on the location information of the video frames.
- the RGBA data in the memory may be converted to its own format based on the service demand, for example, the RGBA data may be saved as a BMP file, or encoded into the H264 format, etc.
- the storage unit 430 fills the acquired video frames in the canvas buffering region, the approach of stitching may be applied for filling. For example, after a video frame is filled in the canvas buffering region, for a portion of a video frame that follows the filled video frame, the portion may be filled in the corresponding local region of the canvas buffering region based on the location information thereof, and the other regions may use the image filled last time. Thus, the working amount of the filling may be reduced, and the efficiency may be improved.
- the initial locations and specific widths and lengths that need to be depicted may be designated. Thus, during re-depiction, only the regions corresponding to the designated location information need to be depicted.
- the broadcasting-content acquiring unit 420 may include a timed triggering module 4210 and a clipping region creation module 4220 .
- the broadcasting-content acquiring unit 420 may be configured to trigger the multimedia player at designated time to enable the multimedia player to continue broadcasting the multimedia content when the target webpage is the non-current webpage.
- the clipping region creation module 4220 may create a clipping region for the multimedia player to enable the multimedia player to keep broadcasting the multimedia content.
- FIG. 5 illustrates a diagram showing effects of applying the present disclosure to a browser application.
- the recording function e.g., clicking on a recording button of the operation panel
- the left portion of the image in FIG. 5 is the video watched online using the browser, and the right portion of the image in FIG.
- FIG. 5 is the effect diagram showing the logo or sign of the browser (upper right corner) and the intercepted video data being outputted to a window using the present disclosure.
- the video content broadcasted online may be acquired based on the present disclosure, and the saving or recording of the video content broadcasted online may be realized.
- the disclosed broadcasting-content acquiring methods may use different approaches to acquire the broadcasting content. For example, directed towards the 2D output mode, the 3D output mode, and the hardware output decoding approach for the Flash plugin, and the software-decoding output mode and the hardware-decoding output mode for the HTML5 player, different data processing approaches may be executed to acquire the broadcasting content. Further, to ensure that the broadcasting content is acquired continuously, directed towards the interaction features between the Flash plugin and the browser, a well-defined system may be established to acquire data from the Flash plugin, for example, a timed task callback interface may be established and a clipping region may be forged, etc.
- the broadcasting-content acquiring method of the present disclosure may be utilized to realize the functions such as online video recording and image capturing and storing, etc.
- the method according to the present disclosure may be implemented as a computer program, and the computer program may include computer program codes and instructions of the aforementioned steps defined in the aforementioned method of the present disclosure.
- the method according to the present disclosure may be implemented as a computer program product, and the computer program product may include a computer-readable medium.
- the computer readable medium stores the computer programs for executing the aforementioned functions defined in the aforementioned method of the present disclosure.
- various embodiments may provide a non-transitory computer-readable storage medium containing computer-executable program instructions (or computer programs) for, when executed by a processor, performing the disclosed method for acquiring broadcasting content.
- each block in the flow chart or block diagram may represent a part of a module, program section or code, and the part of the module, program section or code may include one or more executable instructions for implementing the defined logic functions.
- the functions denoted in the block diagram may happen in orders different from that labeled in the accompanying drawings. For example, two consecutive block diagrams may be executed basically in parallel, or executed in reversed order, depending on involved functions.
- each block in the block diagram or flow chart, or combinations of blocks in the block diagram and/or flow chart may be implemented using the hardware-based system executing defined functions or operations, or may be implemented through combinations of specific hardware and computer instructions.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
- This application claims priority of Chinese Patent Application No. 201611199443.3, filed on Dec. 22, 2016, the entire contents of which are hereby incorporated by reference.
- The present disclosure relates to the field of internet technology and, more particularly, relates to a method, a device, and a computing apparatus for acquiring broadcasting content.
- As the technology develops, watching videos by visiting the internet has become an integral part of people's lives. Currently, for most video websites, the Flash plugin or the HTML5 player are used to play the videos. For purposes of sharing or collecting, the users may expect to save or record the videos while watching online. However, so far there are no effective solutions to acquire the video content broadcasted on the webpage to realize the storing or recording of the video content broadcasted on the webpage.
- One aspect of the present disclosure provides a method for acquiring broadcasting content performed by computer programs stored in a memory and executable by a processor. The method comprises: recognizing, by the processor, a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and based on the type and the output mode, acquiring, by the processor, broadcasting content of the multimedia resource played by the multimedia player.
- Another aspect of the present disclosure provides a device for acquiring broadcasting content. The device comprises a memory and a processor. The memory is configured to store computer programs for implementing a method for acquiring broadcasting content. The processor is coupled to the memory and, when executing the computer programs, is configured for: recognizing a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and based on the type and the output mode, acquiring broadcasting content of the multimedia resource played by the multimedia player.
- Another aspect of the present disclosure provides a computing apparatus. The computing apparatus comprises a display device, a memory, and a processor. The display device is configured to display information. The memory is configured to store information. The processor is connected to the display device and the memory, and is configured to: recognize a type of a multimedia player on a target webpage and an output mode for broadcasting a multimedia resource; based on the recognized type and the output mode, acquire broadcasting content of the multimedia resource played by the multimedia player; and store the acquired broadcasting content in a multimedia storage region of the memory in a preset format.
- Other aspects of the present disclosure can be understood by those skilled in the art in light of the description, the claims, and the drawings of the present disclosure.
- Exemplary embodiments of the present disclosure are described in more details with reference to the accompanying drawings. The foregoing, and other objectives, features and advantages of the present disclosure will become more apparent. Further, in exemplary embodiments of the present disclosure, like reference numerals often represent like components.
-
FIG. 1 illustrates a schematic block diagram of a structure of an exemplary computing apparatus according to one embodiment of the present disclosure; -
FIG. 2 illustrates a schematic flow chart of an exemplary method for acquiring broadcasting content according to one embodiment of the present disclosure; -
FIG. 3 illustrates a schematic flow chart for recording a video watched online based on a browser; -
FIG. 4 illustrates a schematic flow chart of a structure of an exemplary device for acquiring broadcasting content according to one embodiment of the present disclosure; and -
FIG. 5 illustrates a schematic view of effects of a specific implementation of the present disclosure. - Various embodiments of the present disclosure will be described in more details hereinafter with reference to the accompanying drawings. Though the accompanying drawings illustrate various embodiments of the present disclosure, it should be understood that, the present disclosure may be embodied in various forms and shall not be limited by implementations described herein. On the contrary, such embodiments are provided to enable the present disclosure to be clearer and more complete, and the scope of the present disclosure may be fully delivered to those skilled in the art.
- To acquire the multimedia content broadcasted on the webpage when the user browses the webpage to realize the recording of the multimedia content, the present disclosure provides an effective technical solution for content acquiring. By analyzing the broadcasting mechanisms of the multimedia resource on the webpage, such as the type of the multimedia player and the output mode for broadcasting the multimedia resource, the content-acquiring solution of the present disclosure applies processing approaches corresponding to the broadcasting mechanisms to acquire the broadcasted multimedia content.
- Method, device, and computing apparatus are provided hereinafter to acquire broadcasting content, thereby effectively acquiring multi-media content broadcasted on the webpage.
- According to one aspect of the present disclosure, a method for acquiring broadcasting content is provided, including: a recognition step for recognizing a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and a broadcasting-content acquiring step for acquiring broadcasting content of the multimedia resource played by the multimedia player.
- As such, by analyzing the broadcasting mechanism (the type of the multimedia player, and the output mode when the multimedia resource is played, etc.) of the multimedia resource on the webpage, the present disclosure may utilize a corresponding approach to acquire the multimedia content that is broadcasted.
- In one embodiment of the present disclosure, the method may further include a storing step for storing the acquired broadcasting content in a multimedia storage region in a preset format.
- In one embodiment of the present disclosure, the multimedia resource may include video resource, and the broadcasting-content acquiring step may include: acquiring a whole or a part of video frames of the video resource broadcasted by the multimedia player one by one or at a frame decreasing rate.
- For the video resource, usually, a small portion may vary between a certain number of consecutive image frames. Thus, only the small portion of the consecutive image frames where variation occurs may need to be acquired. Further, for certain video sources with a high frame rate, the frame rate may be reduced under the situation where watching is not affected. As such, the processing amount of the broadcasting-content acquiring step and the processing amount of the subsequent storing step may be reduced.
- In one embodiment of the present disclosure, the storing step may include: converting the acquired video frames into the preset format and filling the acquired video frames into designated regions of a canvas buffering region based on location information.
- In one embodiment of the present disclosure, the multimedia resource may include audio resource, and the broadcasting-content acquiring step may include: directly acquiring the audio content that is outputted to an audio card for broadcasting.
- In one embodiment of the present disclosure, the recognition step recognizes the type of the multimedia player to be a webpage element, such as the HTML5 player. Further, based on the output mode recognized by the recognition step, the broadcasting content may be acquired based on one of the followings: in the broadcasting-content acquiring step, based on the recognized software-decoding output mode, directly acquiring the broadcasting content decoded by the software; or in the broadcasting-content acquiring step, based on the recognized hardware-decoding output mode, directly acquiring the broadcasting content that hasn't been decoded by the hardware followed by software self-decoding, or acquiring the broadcasting content decoded by the hardware by reading data of the hardware.
- In one embodiment of the present disclosure, in the recognition step, the type of the multimedia player is recognized to be a webpage plugin, such as the Flash player. Thus, in the broadcasting-content acquiring step, the broadcasting content is acquired by intercepting an output interface.
- In one embodiment of the present disclosure, based on the output mode recognized in the recognition step, the following approaches may be applied to acquire the broadcasting content by intercepting the output interface: in the broadcasting-content acquiring step, based on the recognized 2D software-decoding output mode, directly intercepting the output interface to acquire the broadcasting content; in the broadcasting-content acquiring step, based on the recognized 3D software-decoding output mode, intercepting the output content of a plurality of output interfaces and acquires the broadcasting content based on correlation between the plurality of output contents; in the broadcasting-content acquiring step, based on the recognized hardware-decoding output mode, calling an output interface to read the data of the hardware to acquire the broadcasting content.
- In one embodiment of the present disclosure, in the broadcasting-content acquiring step, when the target webpage is a non-current webpage, the multimedia player is timedly triggered to keep that the multimedia player broadcasting the multimedia content.
- Accordingly, when the target webpage is minimized, the multimedia player may be timedly triggered to enable the multimedia player to continue broadcasting the multimedia content while being minimized on the target webpage.
- In one embodiment of the present disclosure, in the broadcasting-content acquiring step, a clipping region is created for the multimedia player to keep the multimedia player broadcasting the multimedia content when the target webpage is the current webpage but a whole or a part of content of the multimedia player is located within the non-display region.
- Accordingly, when the multimedia player is entirely or partially blocked on the target webpage, the clipping region may be created for the multimedia player, thereby allowing the continued broadcasting of the multimedia content when the multimedia player is entirely or partially blocked.
- According to another aspect of the present disclosure, a device for acquiring broadcasting content is provided, including: a recognition unit, configured for recognizing a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; and a broadcasting-content acquiring unit for acquiring broadcasting content of the multimedia resource played by the multimedia player based on the type and output mode recognized by the recognition unit.
- In one embodiment of the present disclosure, the device further includes a storing unit configured for storing the acquired broadcasting content in a multimedia storage region in a preset format.
- In one embodiment of the present disclosure, the multimedia resource may include video resource, and the broadcasting-content acquiring step may include: acquiring a whole or a part of video frames of the video resource broadcasted by the multimedia player one by one or at a frame decreasing rate.
- In one embodiment of the present disclosure, the type of the multimedia player recognized by the recognition unit is a webpage element, such as the HTML5 player. Further, based on the output mode recognized by the recognition unit, one of the following operations is performed by the broadcasting-content acquiring unit: based on the recognized software-decoding output mode, directly acquiring the broadcasting content decoded by the software; or based on the recognized hardware-decoding output mode, directly acquiring the broadcasting content that hasn't been decoded by the hardware followed by software, or acquiring the broadcasting content decoded by the hardware by reading data of the hardware.
- In one embodiment of the present disclosure, the type of the multimedia player recognized by the recognition unit is a webpage plugin, such as the Flash player. Thus, the broadcasting-content acquiring unit acquires the broadcasting content by intercepting an output interface.
- In one embodiment of the present disclosure, based on the output mode recognized by the recognition unit, one of the following operations is performed by the broadcasting-content acquiring unit: based on the recognized 2D software-decoding output mode, directly intercepting the output interface to acquire the broadcasting content; based on the recognized 3D software-decoding output mode, intercepting the output content of a plurality of output interfaces and acquiring the broadcasting content based on correlation between a plurality of output contents; based on the recognized hardware-decoding output mode, calling an output interface to read the data of the hardware to acquire the broadcasting content.
- In one embodiment of the present disclosure, the broadcasting-content acquiring unit further includes a timed triggering module, configured for timedly triggering the multimedia player to keep that the multimedia player broadcasting the multimedia content when the target webpage is a non-current webpage.
- In one embodiment of the present disclosure, the broadcasting-content acquiring unit further includes a clipping region creation module, configured to create a clipping region for the multimedia player to keep that the multimedia player broadcasting the multimedia content when the target webpage is the current webpage but the whole or a part of content of the multimedia player is located within the non-display region.
- According to another embodiment of the present disclosure, a computing apparatus is provided, including: a display device for displaying information; a memory for storing information; and a processor connected to the display device and the memory. The processor is configured to recognize a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource; based on the recognized type and output mode, acquire broadcasting content of the multimedia resource played by the multimedia player; and store the acquired broadcasting content in a multimedia storage region in a preset format.
- As such, the disclosed method, device, and computing apparatus for acquiring broadcasting content may apply corresponding processing approaches to acquire the broadcasted multimedia content by analyzing the broadcasting mechanism of the multimedia resource on the webpage, such as the type of the multimedia player and the output mode when the multimedia resource is broadcasted. Accordingly, the saving or recording of the multimedia content watched by the users online may be realized
- Embodiments of the present disclosure will be described in more details hereinafter with reference to
FIG. 1 toFIG. 3 .FIG. 1 illustrates a structural block diagram of an exemplary computing apparatus 100 according to one embodiment of the present disclosure. Components of the computing apparatus 100 may include, but be not limited to, adisplay device 110, amemory 120, anetwork interface 125, and aprocessor 130. Theprocessor 130 may be connected to thenetwork interface 125, thedisplay device 110, and thememory 120, respectively. In one embodiment of the present disclosure, the aforementioned and other components not illustrated inFIG. 1 of the computing apparatus 100 may be connected to each other, for example, via a bus. It should be understood that, the structural block diagram of the computing apparatus illustrated inFIG. 1 are for illustrative purposes, and shall not be construed as limiting of the scope of the present disclosure. Those skilled in the relevant art may add or replace other components based on need. - The computing apparatus 100 may be any type of static or mobile computing apparatus, including portable computer or mobile computing apparatus (e.g., tablet, personal digital assistant, laptop computer, notebook computer, netbook, etc.), portable phone (e.g., smart phone), wearable computing apparatus (e.g., smart watch, smart glass, etc.) or other types of mobile apparatuses, or desktop computer or static computing unit of the PC. The computing apparatus 100 may also be a mobile or static server.
- The
network interface 125 may enable the computing apparatus 100 to communicate with the server via one or more networks. Examples of such networks include local area network (LAN), wide area network (WAN), personal area network (PAN), or a combination of communication networks such as internet. The network interface may include one or more network interfaces (e.g., network interface card, NIC) in any type including wireless or wired, such as the IEEE802.11 wireless local area network (WLAN), worldwide interoperability for microwave access (Wi-MAX) interface, Ethernet interface, universal serial bus (USB) interface, cellular network interface, blue-tooth interface, and near field communication (NFC) interface, etc. - The data used by the computing apparatus 100 to interact with the server (not shown) through the
network interface 125 may be stored in thememory 120. Thememory 120 may include one or more storage devices in any type that store content in a file format or other formats, including magnetic hard drive, solid-state hard drive, semiconductor memory device, flash drive, or any other computer readable and writable storage medium that is able to store program instructions or digital information. It should be noted that, a part of the interaction information between the computing apparatus 100 and the server may be persistently stored in a designated storage region of thememory 120, and other interaction information may be temporarily stored in the memory of the computing apparatus 100. - The
display device 110 may display the video images obtained by interaction of the computing apparatus with the server through the network interface, and thedisplay device 110 may include various types of imaging devices, such as a cathode-ray tube (CRT), liquid crystal display (LCD), light-emitting diode (LED) (including the organic light-emitting diode, OLED), the projection system, and a combination with other supporting electronic devices (e.g., digital-to-analog converter (DAC), analog-to-digital converter (ADC), signal processor, etc.) - Specifically, the computing apparatus 100 may acquire webpage content through the
network interface 125, and the acquired webpage content may be displayed by thedisplay device 110. When the browsed target webpage includes multimedia resource, thedisplay device 110 may display the multimedia content broadcasted by the multimedia player on the target webpage. Theprocessor 130 may recognize a type of a multimedia player and an output mode for broadcasting multimedia resource on the target webpage, and based on the recognized type and output mode, acquire broadcasting content of the multimedia resource played by the multimedia player. Further, theprocessor 130 may further store the acquired broadcasting content in a multimedia storage region of thememory 120 in a preset format. - The operations executable by the
processor 130 may refer toFIG. 2 , whereFIG. 2 is a flow chart showing a broadcasting-content acquiring method 200 according to one embodiment of the present disclosure. - As shown in
FIG. 2 , the disclosed broadcasting-content acquiring method 200 may mainly include a recognition step (Step S210) and a broadcasting-content acquiring step (Step S220). - At Step S210, a type of a multimedia player on a target webpage and an output mode for broadcasting multimedia resource are recognized.
- At Step S220, based on the recognized type and output mode, broadcasting content of the multimedia resource played by the multimedia player is acquired.
- Two types of multimedia broadcasting mechanism are most currently used by video websites in China: one is to play the multimedia resource through a webpage plugin, such as the Flash plugin, and the other is to play the multimedia resource through a webpage element, such as the HTML5 player.
- The webpage plugin is a plugin imbedded in a browser or other applications capable of visiting webpages for providing a multimedia playing function, which is closed with respect to the browser or other applications. The webpage element realizes the multimedia playing function through the webpage codes, and the data during the process of using the webpage element to play the multimedia resource is visible with respect to the browser or other applications. Because the broadcasting mechanisms of the webpage plugin and the webpage element are different, when the multimedia player is respectively the webpage plugin and the webpage element, different processing approaches may be adopted to acquire the broadcasting content of the multimedia resource to be played.
- Feasible implementations of the broadcasting-content acquiring step are illustrated hereinafter when the multimedia player is the webpage plugin and the webpage element, respectively. It should be understood that, for other types of multimedia players, the multimedia content may be acquired by applying corresponding processing approaches based on the broadcasting mechanism.
- 1. The Multimedia Player being a Webpage Plugin
- Given the Flash plugin as an example, when the type of the multimedia player is detected to be the Flash plugin, the broadcasting content may be acquired from an output interface.
- More specifically, when the multimedia player is the Flash plugin, the output mode for broadcasting multimedia resource may be a 2D software-decoding output mode, a 3D software-decoding output mode, and a hardware-decoding output mode.
- The 2D software-decoding output mode outputs the data in the RGBA format, and such data may be copied directly. That is, when the output mode is recognized to be the 2D software-decoding output mode, the broadcasting content may be acquired directly from the output interface.
- Because the Flash plugin outputs data in different formats based on the properties supported by different display cards, other than outputting the data in the RGBA format, the 3D software-decoding output mode may directly output the data in the YUV format for certain display cards that have a relatively poor compatibility. Accordingly, when the output mode for broadcasting the multimedia resource is recognized to be the 3D software-decoding output mode, the output content may be acquired from a plurality of 3D output interfaces, and the broadcasting content may be acquired based on correlation between a plurality of output contents. For example, mapping may be established when a certain output is started and a certain output comes to an end to obtain the correlation between a plurality of outputs, and the content to be eventually broadcasted may be acquired by properly organizing the contents of the aforementioned plurality of outputs.
- The hardware-decoding output mode mainly relies on the graphics processing unit (GPU) for decoding, and the decoded data may be uploaded directly to the display card. During the entire decoding process, the Flash plugin cannot acquire the decoded data. Accordingly, when the output mode for broadcasting the multimedia resource is recognized to be the hardware-decoding output mode, the interface may be called to read the data of the hardware to acquire the broadcasting content. For example, the glReadPixels interface may be called to read the data from the display card. Often, such operation consumes a relatively lot of time, and additional threads may be applied for processing. Because the glReadPixels interface is called to read data directly from the display card, other than the video data itself, the data that is read may further include data such as bullet screen and advertising patch inserted in the video data, etc. The user may select corresponding options in the original video to select whether the data such as the bullet screen needs to be included.
- 2. The Multimedia Player being the Page Element
- Given the HTML5 player as an example, when the type of the multimedia player is recognized to be the HTML5 player, based on the output mode recognized by the recognition step (Step S210), the broadcasting-content acquiring step (Step S220) may adopt the corresponding acquisition approach to acquire the broadcasting content.
- During the process that the HTML5 player broadcasts the multimedia resource, the multimedia data and the decoded data are visible to the browser. Thus, the present disclosure provides relatively simple approach for acquiring the broadcasting content with respect to the situation where the multimedia player is the Flash plugin.
- Specifically, for the HTML5 player, the output modes may be divided into a software-decoding output mode and a hardware-decoding output mode.
- When the output mode is the software-decoding output mode, the broadcasting content decoded by the software may be acquired directly.
- The hardware-decoding output mode mainly uses the GPU for decoding, and the decoded data may be updated to the display card directly. Thus, when the output mode is the hardware-decoding output mode, the broadcasting content haven't been decoded by the hardware may be acquired directly for self-decoding by the software. Or, the broadcasting content decoded by the hardware may be acquired by reading the data of the hardware display card.
- As such, given the webpage plugin being the Flash plugin and the webpage element being the HTML5 player as examples, the specific implementations of the broadcasting-content acquiring step are illustrated in details. It should be understood that, the webpage plugin and the webpage element may be players other than the aforementioned Flash and HTML5, such as newly-developed multimedia player within the webpage as the technology advances. Such multimedia players may also acquire the broadcasting content of the multimedia resource based on the specific broadcasting mechanism through use of corresponding processing approaches.
- The multimedia resource primarily includes the video resource and the audio resource. For the video resource, the aforementioned approaches are often applied. For the audio resource, because the audio content is often outputted to an audio card, the audio content outputted to the video card for broadcasting may be acquired directly.
- As shown in
FIG. 2 , the disclosed broadcasting-content acquiring method 200 may include a storing step S230. At Step S230, the acquired broadcasting content may be stored in a multimedia storage region in a preset format. - For the video resource in the multimedia resource, entire or partial video frames of the video resource played by the video multimedia player may be acquired one by one, or the entire or partial video frames of the vide resource played by the multimedia player may be acquired at a gradually-frame decreasing rate. This is because for the video resource, usually, a small portion may vary between a certain number of consecutive image frames. Thus, only the small portion of the consecutive image frames where variation occurs may need to be acquired. Further, for certain video sources with a high frame rate, the frame rate may be reduced under the condition where watching is not affected. When the entire or partial video frames of the video resources are acquired at a gradually-frame decreasing rate, video frames showing no variation or relatively small variation may be discarded in some cases. Further, when the (entire or partial) video frames are acquired, the initial coordinates and specific width and length of the video frames may be designated for facilitating further storage based on the location of the video frames.
- The multimedia storage region may be a canvas buffering region for storing a series of video frames, and the canvas buffering region may be prepared in advance. The canvas dimension of the canvas buffering region may be configured based on the dimension of the acquired video frames, and may be specifically the same as the dimension of video frames of the acquired broadcasting content. For example, the dimension of the canvas of the canvas buffering region may be set to be the initial dimension of the video frames when the broadcasting content is started to be acquired.
- As an optional embodiment of the present disclosure, the acquired video frames may be converted into a preset format and be filled in a designated region of the canvas buffering region based on the location information. For example, the acquired video frames may be converted to the data in the RGBA format, and may be filled in the corresponding location of the canvas buffering region based on the location information of the video frames. After the filling of the video frames is completed, the RGBA data in the memory may be converted to its own format based on its service, for example, the RGBA data may be saved as a bitmap (BMP) file, or encoded into the H264 format, etc.
- As illustrated in the aforementioned descriptions, for the video resource, usually, only a very small portion varies between several consecutive frames of images, and what is acquired may be a portion of complete frames. Thus, when the acquired video frames are to be filled in the canvas buffering region, the approach of stitching may be applied for filling. For example, after a video frame is filled in the canvas buffering region, for a portion of a video frame that follows the filled video frame, the portion may be filled in the corresponding local region of the canvas buffering region based on the location information thereof while the other regions may use the image filled last time. Thus, the working amount of filling may be reduced, and the efficiency may be improved. In specific implementation, for the acquired video frames, the initial locations and specific widths and lengths to be depicted may be designated. Thus, during re-depiction, only the regions corresponding to the designated location information need to be depicted.
- As another optional embodiment of the present disclosure, when the target webpage is a non-current webpage (e.g., the target webpage is minimized or the target webpage is not the current display window) or the target webpage is the current webpage but the entire or partial multimedia player on the target webpage falls within a non-display region (e.g., a part of or the entire multimedia player on the target webpage is blocked), the user cannot see the images of the video. Under such situation, the multimedia player may terminate the output of the image data to avoid unnecessary performance loss. To acquire the broadcasting content under such scenarios, certain measures need to be applied to enable the multimedia player to continue broadcasting the multimedia content.
- Given the multimedia player being the Flash plugin as an example, when the target webpage is the non-current-display webpage, the Flash plugin may be triggered at designated moment(s) to enable the Flash plugin to continue broadcasting the multimedia content. When the target webpage is in the current webpage and all or a part of the content of the multimedia player is in the non-display region, a clipping region (or a visual clipping region) may be created for the multimedia player to keep the multimedia player broadcasting the multimedia content.
- As such, given the multimedia player being the Flash plugin as an example, when the target webpage is the non-current-display webpage or the target webpage is the current display webpage but all or a part of the multimedia player on the target webpage is in the non-display region, exemplary illustration of the approaches applied to maintain the broadcasting of the multimedia content played by the multimedia player are provided. It should be understood that, the present disclosure may use various other solutions to implement the continuous broadcasting of the Flash plugin under the aforementioned situation, and for situations where the multimedia player is the HTML5 player or other types of players, the aforementioned or other solutions may also be applied to maintain the broadcasting of the multimedia content.
- As such, the multimedia content acquiring method of the present disclosure is illustrated in detail with reference to
FIG. 2 . The disclosed multimedia content acquiring method may be applied to applications that are able to visit webpages, such as browser, and other applications that have the webpage-visiting function like APP of Wechat and Toutiao, etc. For example, when the user uses the browser to open the video resource on the webpage, the disclosed multimedia content acquiring method may be applied to acquire the multimedia content that is broadcasted, thereby realizing the recording of the broadcasted multimedia content. Specific applications of the present disclosure will be illustrated using the Flash plugin as an example. -
FIG. 3 illustrates an exemplary flow chart of applying the present disclosure to a browser for recording a video watched online. Referring toFIG. 3 , at Step S301, a user opens a Flash video website (most current video websites in China are about Flash videos) to watch a video. The Flash requests the currently supported properties from the browser, and determines whether the mode of 2D output, 3D output or the hardware decoding is adopted based on the internally implemented logics. At Step S302, the browser detects the output mode of the Flash image data, and prepares the corresponding canvas buffering region based on the initial dimension of the Flash, where the displaying format of the canvas buffering region in the memory is the RGBA format. - At Step S303, for the browser and the Flash to avoid unnecessary losses of the performance, when the browser is minimized or the Flash page is in a non-display tab or the rolling bar is dragged to roll the Flash plugin to a non-display region, the user cannot see the Flash image, and the Flash may terminate the output of the image data to avoid unnecessary performance loss. Under such scenarios, if images need to be intercepted, the images need to be cracked one by one to enable the Flash to output the image data. When the browser is minimized or the Flash webpage is in the non-display Tab, the browser terminates the callback with respect to the programming interface of the Flash, and without receiving the callback, the Flash performs no further output of the images. Directed towards such type of situations, acquisition solutions of the present disclosure may design a timed task to trigger the callback already terminated by the browser, such that the Flash may continue to output the data. When the rolling bar is dragged to roll the Flash plugin to the non-display region, the browser may notify a new clipping region to the Flash, and when the Flash determines that the clipping region is invisible, the data may not be further outputted. Under such situation, a visible clipping region may be forged for Flash, thus allowing the Flash to continue outputting the images.
- At Step S304, based on the detected output mode of the Flash image data, different data processing solutions may be adopted.
- The processing of the 2D output mode is the simplest, and the output format itself is the RGBA format, which can be copied directly from the memory.
- The processing of the 3D output mode is relatively complicated, in which a plurality of output interfaces need to be intercepted, and mapping needs to be established when a certain output is started and a certain output comes to an end. Further, other than the RGBA format, for certain display cards with a relatively poor compatibility, the 3D output mode may directly output the YUV format.
- The last type is the hardware-decoding output mode, and this approach can be the hardest to handle. The Flash transmits the video data to the GPU process for decoding, and the decoded video data is transmitted to the display card directly. That is, the plugin process cannot acquire the video data, and under such situation, the glReadPixels interface needs to be called directly to read the display card data directly. Such operation is a little bit time-consuming, and additional thread needs to be opened for processing.
- At Step S305, data intercepted using various intercepting approaches needs to be converted uniformly into the RGBA format, and the data is filled in the designated region of the canvas buffering region based on given location information. To maximize the performance, the images outputted by the Flash each time are not entire images, and a certain region of images may be acquired. Thus, directional copying and filling are needed herein.
- At Step S306, a full set of video images are filled, and based on service demands, the RGBA data in the memory needs to be converted to its own format, for example, the RGBA data is saved as a BMP file or encoded into a H264 format, etc.
-
FIG. 4 illustrates a functional block diagram of an exemplary broadcasting-content acquiring device 400 according to an embodiment of the present disclosure. Functional modules of the broadcasting-content acquiring device 400 may be implemented by hardware, software, or a combination of hardware and software according to the principles of the present disclosure. For example, the functional modules may be implemented by theprocessor 130 of the computing apparatus 100 inFIG. 1 . Those skilled in the art shall understand that, functional modules described inFIG. 4 may be combined or divided into sub-modules, thereby implementing the principles of the present disclosure. Thus, descriptions of this paper may support any possible combination or division or further definition of functional modules described in the present disclosure. - Referring to
FIG. 4 , the broadcasting-content acquiring device 400 may include arecognition unit 410 and a broadcasting-content acquiring unit 420. - The
recognition unit 410 is configured to recognize the type of the multimedia player on the target webpage and the output mode for broadcasting the multimedia resource. - The broadcasting-
content acquiring unit 420 may acquire the broadcasting content of the multimedia resources played by the multimedia player based on the type and the output mode recognized by the recognition unit. - Based on the broadcasting type of the multimedia player and the output mode for broadcasting the multimedia resources recognized by the
recognition unit 410, different modes may be applied to acquire the broadcasting content of the multimedia resource played by the multimedia player. When the multimedia player is the webpage plugin and the webpage element, respectively, the operations executable by the broadcasting-content acquiring unit 420 are illustrated hereinafter in details. It should be understood that, for the multimedia player applying other broadcasting mechanisms, the broadcasting-content acquiring unit 420 may use processing approaches corresponding to the broadcasting mechanism to acquire the multimedia content. - 1. The Multimedia Player being the Webpage Plugin
- Given the Flash plugin as an example, when the
recognition unit 410 recognizes that the type of the multimedia player is the Flash plugin, the broadcasting-content acquiring unit 420 may acquire the broadcasting content by intercepting the output interface. - Specifically, when the recognized output mode is the 2D software-decoding output mode, the broadcasting-
content acquiring unit 420 may directly intercept the output interface to acquire the broadcasting content. - When the recognized output mode is the 3D software-decoding output mode, the broadcasting-
content acquiring unit 420 may intercept the output contents of a plurality of output interfaces and acquire the broadcasting content based on the correlation between the output contents. - When the recognized output mode is the hardware-decoding output mode, the broadcasting-
content acquiring unit 420 may call the interface to read the data of the hardware to acquire the broadcasting content. - 2. The Multimedia Player being the Webpage Element
- Given the HTML5 player as an example, when the
recognition unit 410 recognizes that the type of the multimedia player is the HTML5 player, based on the output mode recognized by therecognition unit 410, the broadcasting-content acquiring unit 420 may perform corresponding operations. - Specifically, when the recognized output mode is the software-decoding output mode, the broadcasting-
content acquiring unit 420 may directly acquire the broadcasting content decoded by the software. When the recognized output mode is the hardware-decoding output mode, the broadcasting-content acquiring unit 420 may directly acquire the broadcasting content that hasn't been decoded by the hardware followed by software self-decoding, or the broadcasting content decoded by the hardware may be acquired by reading the data of the hardware. - As such, using the webpage plugin being the Flash plugin and the webpage element being the HTML5 player as examples, the specific processes for the broadcasting-
content acquiring unit 420 to acquire the broadcasting content of the multimedia resource are illustrated in detail. It should be understood that, when the webpage plugin is other plugins or the webpage element is other players, the broadcasting-content acquiring unit 420 may acquire the broadcasting content of the multimedia resource by using the corresponding processing approaches based on specific broadcasting mechanism. The multimedia resource mainly includes the video resource and the audio resource. For the video resource, the aforementioned approaches may be applied, and for the audio resource, because the audio content is directly outputted to the sound card, the audio content outputted to the sound card for broadcasting may be acquired directly. - As shown in
FIG. 4 , the broadcasting-content acquiring device 400 may optionally include astorage unit 430. Thestorage unit 430 may be configured to store the broadcasting content acquired by the broadcasting-content acquiring unit in the multimedia storage region in the preset format. - When the multimedia resource includes the video resource, the broadcasting-
content acquiring unit 420 may acquire the entire or partial video frames of the video resource played by the video multimedia player one by one, or acquire the entire or partial video frames of the vide resources played by the multimedia player at a frame decreasing rate. This is because, for the video resource, the variation between consecutive frames of images is often a very small portion. Thus, only the small portion showing the variation occurred in the consecutive video frames may need to be acquired. Thus, for certain video resource with a high frame rate, the broadcasting-content acquiring unit 420 may be acquire the video resource with a reduced frame rate under the condition where watching is not affected. When the entire or partial video frames of the video resources are acquired at a reduced frame rate, video frames showing no variation or relatively small variation may be discarded. Further, when the (entire or partial) video frames are acquired, the initial coordinates and specific width and length of the video frames may be designated for facilitating the subsequent storage. - The multimedia storage region may be a canvas buffering region for storing a series of video frames, and the canvas buffering region may be prepared in advance. The canvas dimension of the canvas buffering region may be configured based on the dimension of the acquired video frames, and may be specifically the same as the dimension of video frames of the acquired broadcasting content. For example, the canvas dimension of the canvas buffering region may be set to be the initial dimension of the video frames when the broadcasting content is started to be acquired.
- As an optional embodiment of the present disclosure, the
storage unit 430 may convert the acquired video frames into the preset format and fill the video frames in the designated region of the canvas buffering region based on the location information. For example, the acquired vide frames may be converted to data having the RGBA format and may be filled in the corresponding location of the canvas buffering region based on the location information of the video frames. After the filling of the video frames is completed, the RGBA data in the memory may be converted to its own format based on the service demand, for example, the RGBA data may be saved as a BMP file, or encoded into the H264 format, etc. - As illustrated in the aforementioned descriptions, for the video resource, usually, the variation between consecutive frames of images is often a very small portion, and what is acquired may be a portion of the complete frames. Thus, when the
storage unit 430 fills the acquired video frames in the canvas buffering region, the approach of stitching may be applied for filling. For example, after a video frame is filled in the canvas buffering region, for a portion of a video frame that follows the filled video frame, the portion may be filled in the corresponding local region of the canvas buffering region based on the location information thereof, and the other regions may use the image filled last time. Thus, the working amount of the filling may be reduced, and the efficiency may be improved. In specific implementation, for the acquired video frames, the initial locations and specific widths and lengths that need to be depicted may be designated. Thus, during re-depiction, only the regions corresponding to the designated location information need to be depicted. - As shown in
FIG. 4 , the broadcasting-content acquiring unit 420 may include a timed triggeringmodule 4210 and a clippingregion creation module 4220. The broadcasting-content acquiring unit 420 may be configured to trigger the multimedia player at designated time to enable the multimedia player to continue broadcasting the multimedia content when the target webpage is the non-current webpage. When the target webpage is in the current webpage and all or a part of the content of the multimedia player is on the non-display region, the clippingregion creation module 4220 may create a clipping region for the multimedia player to enable the multimedia player to keep broadcasting the multimedia content. - The foregoing illustrates a method, a device, and a computing apparatus for acquiring broadcasting content in details with reference to the accompanying drawings. One specific implementation of the present disclosure is illustrated in details hereinafter with reference to one specific application example.
- The disclosed broadcasting-content acquiring method may be applied to the browser or other applications that have the webpage-visiting function, such as Wechat and Toutiao, etc.
FIG. 5 illustrates a diagram showing effects of applying the present disclosure to a browser application. As shown inFIG. 5 , after the browser application adds the broadcasting-content acquiring function of the present disclosure, when the user uses the browser to log in a video website to watch the videos online, the recording function (e.g., clicking on a recording button of the operation panel) of the browser may be used to store the videos played online. The left portion of the image inFIG. 5 is the video watched online using the browser, and the right portion of the image inFIG. 5 is the effect diagram showing the logo or sign of the browser (upper right corner) and the intercepted video data being outputted to a window using the present disclosure. As such, the video content broadcasted online may be acquired based on the present disclosure, and the saving or recording of the video content broadcasted online may be realized. - As such, directed towards different webpage broadcasting mechanisms, the disclosed broadcasting-content acquiring methods may use different approaches to acquire the broadcasting content. For example, directed towards the 2D output mode, the 3D output mode, and the hardware output decoding approach for the Flash plugin, and the software-decoding output mode and the hardware-decoding output mode for the HTML5 player, different data processing approaches may be executed to acquire the broadcasting content. Further, to ensure that the broadcasting content is acquired continuously, directed towards the interaction features between the Flash plugin and the browser, a well-defined system may be established to acquire data from the Flash plugin, for example, a timed task callback interface may be established and a clipping region may be forged, etc. Further, when the data is intercepted, the entire or part of the video frames may be acquired at a frame decreasing rate. When the video frames are depicted to the canvas buffering region, the approach of stitching and depicting may be applied to reduce the CPU consumption to the lowest. Accordingly, the broadcasting-content acquiring method of the present disclosure may be utilized to realize the functions such as online video recording and image capturing and storing, etc.
- Further, the method according to the present disclosure may be implemented as a computer program, and the computer program may include computer program codes and instructions of the aforementioned steps defined in the aforementioned method of the present disclosure. Or, the method according to the present disclosure may be implemented as a computer program product, and the computer program product may include a computer-readable medium. The computer readable medium stores the computer programs for executing the aforementioned functions defined in the aforementioned method of the present disclosure. Those skilled in the relevant art may further understand that various exemplary logic blocks, modules, circuits, and algorithm steps may be implemented into electronic hardware, computer software or a combination thereof with reference to the disclosure herein.
- For example, various embodiments may provide a non-transitory computer-readable storage medium containing computer-executable program instructions (or computer programs) for, when executed by a processor, performing the disclosed method for acquiring broadcasting content.
- The flow charts and the block diagrams of the accompanying drawings illustrate system architecture, function, and operation possibly implemented by systems and methods according to various embodiments of the present disclosure. With this regard, each block in the flow chart or block diagram may represent a part of a module, program section or code, and the part of the module, program section or code may include one or more executable instructions for implementing the defined logic functions. It should be noted that, in certain implementations used as alternatives, the functions denoted in the block diagram may happen in orders different from that labeled in the accompanying drawings. For example, two consecutive block diagrams may be executed basically in parallel, or executed in reversed order, depending on involved functions. It should be further noted that, each block in the block diagram or flow chart, or combinations of blocks in the block diagram and/or flow chart, may be implemented using the hardware-based system executing defined functions or operations, or may be implemented through combinations of specific hardware and computer instructions.
- Foregoing illustrates various embodiments of the present disclosure. The aforementioned illustrations are for illustrative purposes, are not exhaustive, and shall not be limited to the embodiments disclosed herein. Without departing from the scope and spirit of various embodiments, various modifications and alterations are obvious to those ordinarily skilled in the relevant art. The technical terms selected by this paper are intended to illustrate the principles, actual applications or improvements on the technologies in the market of each embodiment, or enable other ordinarily skilled in the relevant art to understand each embodiment disclosed herein.
Claims (20)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611199443.3A CN108235144B (en) | 2016-12-22 | 2016-12-22 | Playing content obtaining method and device and computing equipment |
CN201611199443.3 | 2016-12-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20180184155A1 true US20180184155A1 (en) | 2018-06-28 |
US11070867B2 US11070867B2 (en) | 2021-07-20 |
Family
ID=62625612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/846,816 Active US11070867B2 (en) | 2016-12-22 | 2017-12-19 | Method, device, and computing apparatus for acquiring broadcasting content |
Country Status (3)
Country | Link |
---|---|
US (1) | US11070867B2 (en) |
CN (1) | CN108235144B (en) |
RU (1) | RU2690888C2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110110103A (en) * | 2019-04-18 | 2019-08-09 | 深圳壹账通智能科技有限公司 | Acquisition methods, device, computer equipment and the storage medium of media resource |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070183741A1 (en) * | 2005-04-20 | 2007-08-09 | Videoegg, Inc. | Browser based video editing |
US7263711B1 (en) * | 2000-09-18 | 2007-08-28 | Intel Corporation | Terminating enhanced television broadcasts |
US20070204320A1 (en) * | 2006-02-27 | 2007-08-30 | Fang Wu | Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network |
US20090083670A1 (en) * | 2007-09-26 | 2009-03-26 | Aq Media, Inc. | Audio-visual navigation and communication |
US20110202424A1 (en) * | 2007-11-30 | 2011-08-18 | Motioncloud Inc | Rich content creation, distribution, and broadcasting system |
US20110219386A1 (en) * | 2010-03-05 | 2011-09-08 | Samsung Electronics Co., Ltd. | Method and apparatus for generating bookmark information |
US20120210356A1 (en) * | 2011-02-14 | 2012-08-16 | Comcast Cable Communications, Llc | Image Sampling from Multicast Streams |
US20120210336A1 (en) * | 2011-02-15 | 2012-08-16 | Anatoly Greenblatt | Methods for filtering device access by sessions |
US20130097309A1 (en) * | 2010-05-04 | 2013-04-18 | Azuki Systems, Inc. | Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction |
US20140115649A1 (en) * | 2012-10-19 | 2014-04-24 | Electronics And Telecommunications Research Institute | Apparatus and method for providing realistic broadcasting |
US20150215661A1 (en) * | 2012-08-24 | 2015-07-30 | Zte Corporation | System And Method For Distributing Live Broadcast Content |
US20160165309A1 (en) * | 2013-07-29 | 2016-06-09 | Koninklijke Kpn N.V. | Providing tile video streams to a client |
US9386352B1 (en) * | 2014-02-11 | 2016-07-05 | Time Warner Cable Enterprises Llc | Methods and apparatus for determining a normalized time for use in resuming content playback |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE60044179D1 (en) * | 1999-12-28 | 2010-05-27 | Sony Corp | System and method for the commercial traffic of images |
US20020056123A1 (en) * | 2000-03-09 | 2002-05-09 | Gad Liwerant | Sharing a streaming video |
US7930644B2 (en) * | 2006-09-13 | 2011-04-19 | Savant Systems, Llc | Programming environment and metadata management for programmable multimedia controller |
US20080126294A1 (en) * | 2006-10-30 | 2008-05-29 | Qualcomm Incorporated | Methods and apparatus for communicating media files amongst wireless communication devices |
KR101380777B1 (en) * | 2008-08-22 | 2014-04-02 | 정태우 | Method for indexing object in video |
MY151243A (en) * | 2008-09-30 | 2014-04-30 | Panasonic Corp | Recording medium, playback device, system lsi, playback method, glasses, and display device for 3d images |
US8902995B2 (en) * | 2009-07-02 | 2014-12-02 | Qualcomm Incorporated | Transmitter quieting and reduced rate encoding |
KR20110025123A (en) * | 2009-09-02 | 2011-03-09 | 삼성전자주식회사 | Method and apparatus for multiple-speed reproduction of video image |
US20110202967A1 (en) * | 2010-02-12 | 2011-08-18 | Voice The Game, Llc | Apparatus and Method to Broadcast Layered Audio and Video Over Live Streaming Activities |
CN102074257A (en) * | 2011-01-17 | 2011-05-25 | 博视联(苏州)信息科技有限公司 | Software and hardware-decoding general multi-media playing equipment and playing method thereof |
US8861932B2 (en) * | 2012-05-18 | 2014-10-14 | At&T Mobility Ii Llc | Video service buffer management |
US9215500B2 (en) * | 2012-12-17 | 2015-12-15 | Lattice Semiconductor Corporation | Full-frame buffer to improve video performance in low-latency video communication systems |
CN104079981A (en) * | 2013-03-25 | 2014-10-01 | 联想(北京)有限公司 | Data processing method and data processing device |
US9953400B2 (en) * | 2013-07-23 | 2018-04-24 | Microsoft Technology Licensing, Llc | Adaptive path smoothing for video stabilization |
CN103428582B (en) * | 2013-09-02 | 2016-09-28 | 贝壳网际(北京)安全技术有限公司 | Video playing method and device and client |
US9807452B2 (en) * | 2013-10-07 | 2017-10-31 | Samsung Electronics Co., Ltd. | Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network |
CN106464601B (en) * | 2014-03-28 | 2020-05-19 | 维格尔传播公司 | Channel bundling |
CN104023249B (en) * | 2014-06-12 | 2015-10-21 | 腾讯科技(深圳)有限公司 | Television channel recognition methods and device |
US10148783B2 (en) * | 2014-12-18 | 2018-12-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and content management module for managing content in a content distribution network |
KR20160115264A (en) * | 2015-03-26 | 2016-10-06 | 삼성전자주식회사 | Displaying apparatus, server and operation method of the same |
CN105959821A (en) * | 2016-05-30 | 2016-09-21 | 乐视控股(北京)有限公司 | Video play method and device |
US20180035074A1 (en) * | 2016-07-28 | 2018-02-01 | Melvin L. Barnes, Jr. | System, Method and Computer Program Product for Processing Image Data |
US10567775B2 (en) * | 2016-10-01 | 2020-02-18 | Intel Corporation | Method and system of hardware accelerated video coding with per-frame parameter control |
-
2016
- 2016-12-22 CN CN201611199443.3A patent/CN108235144B/en active Active
-
2017
- 2017-12-19 US US15/846,816 patent/US11070867B2/en active Active
- 2017-12-21 RU RU2017145004A patent/RU2690888C2/en active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7263711B1 (en) * | 2000-09-18 | 2007-08-28 | Intel Corporation | Terminating enhanced television broadcasts |
US20070183741A1 (en) * | 2005-04-20 | 2007-08-09 | Videoegg, Inc. | Browser based video editing |
US20070204320A1 (en) * | 2006-02-27 | 2007-08-30 | Fang Wu | Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network |
US20090083670A1 (en) * | 2007-09-26 | 2009-03-26 | Aq Media, Inc. | Audio-visual navigation and communication |
US20110202424A1 (en) * | 2007-11-30 | 2011-08-18 | Motioncloud Inc | Rich content creation, distribution, and broadcasting system |
US20110219386A1 (en) * | 2010-03-05 | 2011-09-08 | Samsung Electronics Co., Ltd. | Method and apparatus for generating bookmark information |
US20130097309A1 (en) * | 2010-05-04 | 2013-04-18 | Azuki Systems, Inc. | Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction |
US20120210356A1 (en) * | 2011-02-14 | 2012-08-16 | Comcast Cable Communications, Llc | Image Sampling from Multicast Streams |
US20120210336A1 (en) * | 2011-02-15 | 2012-08-16 | Anatoly Greenblatt | Methods for filtering device access by sessions |
US20150215661A1 (en) * | 2012-08-24 | 2015-07-30 | Zte Corporation | System And Method For Distributing Live Broadcast Content |
US20140115649A1 (en) * | 2012-10-19 | 2014-04-24 | Electronics And Telecommunications Research Institute | Apparatus and method for providing realistic broadcasting |
US20160165309A1 (en) * | 2013-07-29 | 2016-06-09 | Koninklijke Kpn N.V. | Providing tile video streams to a client |
US9386352B1 (en) * | 2014-02-11 | 2016-07-05 | Time Warner Cable Enterprises Llc | Methods and apparatus for determining a normalized time for use in resuming content playback |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110110103A (en) * | 2019-04-18 | 2019-08-09 | 深圳壹账通智能科技有限公司 | Acquisition methods, device, computer equipment and the storage medium of media resource |
Also Published As
Publication number | Publication date |
---|---|
CN108235144A (en) | 2018-06-29 |
RU2017145004A3 (en) | 2019-01-23 |
RU2690888C2 (en) | 2019-06-06 |
CN108235144B (en) | 2021-02-19 |
RU2017145004A (en) | 2018-07-25 |
US11070867B2 (en) | 2021-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9712589B2 (en) | System and method for playing a video on mobile web environments | |
CN107209693B (en) | Buffer optimization | |
US11968344B2 (en) | Semi-transparent embedded watermarks | |
US8648858B1 (en) | Hybrid text and image based encoding | |
US8891939B2 (en) | Systems and methods for video-aware screen capture and compression | |
US9426476B2 (en) | Video stream | |
CN110268718B (en) | Content aware power savings for video streaming and playback on mobile devices | |
US10290110B2 (en) | Video overlay modification for enhanced readability | |
US11070867B2 (en) | Method, device, and computing apparatus for acquiring broadcasting content | |
CN116450149B (en) | Hardware decoding method, device and storage medium | |
KR102232899B1 (en) | System for cloud streaming service, method of cloud streaming service based on type of image and apparatus for the same | |
KR102409033B1 (en) | System for cloud streaming service, method of image cloud streaming service using alpha level of color bit and apparatus for the same | |
US20130120424A1 (en) | Method and apparatus for improved rendering of images | |
WO2020038071A1 (en) | Video enhancement control method, device, electronic apparatus, and storage medium | |
US20110285821A1 (en) | Information processing apparatus and video content playback method | |
US9800801B2 (en) | Techniques for processing subtitles | |
KR102407477B1 (en) | System for cloud streaming service, method of image cloud streaming service using alpha value of image type and apparatus for the same | |
CN116700943A (en) | Video playing system and method and electronic equipment | |
WO2016154816A1 (en) | Data processing method and device | |
US10225536B2 (en) | Dynamic fidelity updates for encoded displays | |
KR102313530B1 (en) | System for cloud streaming service, method of image cloud streaming service using split screen and apparatus for the same | |
US20180007386A1 (en) | Dynamic fidelity updates for encoded displays | |
WO2022111697A1 (en) | Picture loading method, and electronic device, chip and readable storage medium | |
KR102442698B1 (en) | System for cloud streaming service, method of image cloud streaming service based on detection of change area using operating system massage and apparatus for the same | |
KR20160132607A (en) | System for cloud streaming service, method of image cloud streaming service using data substitution and apparatus for the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: GUANGZHOU UCWEB COMPUTER TECHNOLOGY CO., LTD, CHINA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FANG, KEMING;XU, PAN;SIGNING DATES FROM 20171211 TO 20171212;REEL/FRAME:044588/0932 Owner name: GUANGZHOU UCWEB COMPUTER TECHNOLOGY CO., LTD, CHIN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FANG, KEMING;XU, PAN;SIGNING DATES FROM 20171211 TO 20171212;REEL/FRAME:044588/0932 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
AS | Assignment |
Owner name: ALIBABA GROUP HOLDING LIMITED, CAYMAN ISLANDS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GUANGZHOU UCWEB COMPUTER TECHNOLOGY CO., LTD;REEL/FRAME:052771/0562 Effective date: 20200428 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |