WO2019137437A1 - 视频播放方法及装置、终端设备及计算机可读存储介质 - Google Patents

视频播放方法及装置、终端设备及计算机可读存储介质 Download PDF

Info

Publication number
WO2019137437A1
WO2019137437A1 PCT/CN2019/071170 CN2019071170W WO2019137437A1 WO 2019137437 A1 WO2019137437 A1 WO 2019137437A1 CN 2019071170 W CN2019071170 W CN 2019071170W WO 2019137437 A1 WO2019137437 A1 WO 2019137437A1
Authority
WO
WIPO (PCT)
Prior art keywords
operating system
video
display area
audio
player
Prior art date
Application number
PCT/CN2019/071170
Other languages
English (en)
French (fr)
Inventor
张辉
罗志云
曾义
刘科洋
胡冲
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to EP19738554.5A priority Critical patent/EP3739874A1/en
Publication of WO2019137437A1 publication Critical patent/WO2019137437A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1059End-user terminal functionalities specially adapted for real-time communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4438Window management, e.g. event handling following interaction with the user interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration
    • H04N21/4858End-user interface for client configuration for modifying screen layout parameters, e.g. fonts, size of the windows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8193Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Definitions

  • the present disclosure relates to, but is not limited to, the field of smart terminal technologies, and in particular, to a video playing method and apparatus, a terminal device, and a computer readable storage medium.
  • Audio and video hardware acceleration is the core technology of chip manufacturers. Under normal circumstances, the audio and video hardware accelerated code is not open source, but is provided to the user in the form of a binary file.
  • Binary files include, but are not limited to, dynamic libraries, static libraries, and firmware. However, these binaries are compiled based on a specific operating system and system version, and do not work properly on other operating systems or other system versions. If the operating system of the terminal device does not support audio and video hardware acceleration, the terminal device will consume CPU resources extremely much when playing high-definition video, and even the playback screen may be stuck, which may affect the playback effect.
  • the main purpose of the present disclosure is to provide a video playing method and apparatus, a terminal device, and a computer readable storage medium.
  • an embodiment of the present disclosure provides a video playing method, which is applicable to a terminal device, where the terminal device runs a first operating system with an audio and video hardware acceleration function and a second operating device that does not have an audio and video hardware acceleration function.
  • An operating system the video playing method includes: when the player of the second operating system receives a start playing instruction of a video file, based on the second operating system, the starting play instruction and the player Displaying the area information to the first operating system; if the first operating system receives the start play instruction, performing audio and video on the video file indicated by the start play instruction based on the first operating system Hardware decoding; and outputting the decoded image data based on the display area indicated by the display area information by the first operating system, and outputting the decoded audio data through a speaker.
  • An embodiment of the present disclosure further provides a video playing device, which is applicable to a terminal device, where the terminal device runs a first operating system with an audio and video hardware acceleration function and a second operating system that does not have an audio and video hardware acceleration function.
  • the video playback device includes: a transmission module configured to, when the player of the second operating system receives a start play instruction of a video file, start the play command and the play based on the second operating system The display area information of the device is transmitted to the first operating system; the decoding module is configured to start playing according to the first operating system if the first operating system receives the start play instruction The video file indicated by the instruction is subjected to audio and video hardware decoding; and the playing module is configured to output the decoded image data according to the display area indicated by the display area information by the first operating system, and output the decoded audio through the speaker. data.
  • An embodiment of the present disclosure further provides a terminal device, including: a memory, where a first operating system, a second operating system, and a video playing program are stored, wherein the first operating system has an audio and video hardware acceleration function.
  • the second operating system does not have an audio and video hardware acceleration function; and a processor that runs the first operating system and the second operating system and is configured to execute the video playback program to implement the following steps:
  • the player of the second operating system receives the start play instruction of the video file, transmitting the start play instruction and the display area information of the player to the first operating system based on the second operating system;
  • the first operating system receives the start play instruction, perform audio and video hardware decoding on the video file indicated by the start play instruction based on the first operating system; and based on the first operating system
  • the display area indicated by the display area information outputs the decoded image data, and is simultaneously input through a speaker. Audio data obtained by decoding.
  • An embodiment of the present disclosure further provides a computer readable storage medium, applicable to a terminal device, where the terminal device runs a first operating system with an audio and video hardware acceleration function and a second operating system that does not have an audio and video hardware acceleration function.
  • the computer readable storage medium stores a video playing program, and when the video playing program is executed by the processor, the following steps are implemented: in a case where the player of the second operating system receives the start playing instruction of the video file, Transmitting the start play instruction and display area information of the player to the first operating system based on the second operating system; in case the first operating system receives the start play instruction, based on The first operating system performs audio and video hardware decoding on the video file indicated by the start play instruction; and outputs the decoded image data based on the display area indicated by the display area information by the first operating system, and passes through the speaker Output decoded audio data.
  • FIG. 1 is a schematic diagram of a hardware structure of a terminal device according to the present disclosure
  • FIG. 2 is a schematic flowchart diagram of a video playing method according to an embodiment of the present disclosure
  • FIG. 3 is a schematic diagram of an audio and video hardware acceleration function sharing mechanism of a video playing method according to an embodiment of the present disclosure
  • FIG. 4 is a schematic diagram of a video playback device according to an embodiment of the present disclosure.
  • the main solution of the embodiment of the present disclosure is: receiving, based on a first operating system having an audio and video hardware acceleration function and a second operating system having no audio and video hardware acceleration function, in a player of the second operating system.
  • the start command of the video file is started, the start operation command and the display area information of the player are transmitted to the first operating system based on the second operating system, so that when the first operating system receives the start play instruction, based on the first operating system Performing audio and video hardware decoding on the video file indicated by the start of the playback instruction, and outputting the decoded image data based on the display area indicated by the display area information by the first operating system, and outputting the decoded audio data through the speaker, so that the audio and video are not provided.
  • the hardware acceleration function operating system can use the operating system with audio and video hardware acceleration function to accelerate the audio and video hardware of the video file and complete the playback to improve the playback of the operating system without the audio and video hardware acceleration function. Purpose of the effect
  • FIG. 1 is a schematic diagram of a hardware structure of a terminal device according to an embodiment of the present disclosure.
  • the terminal device may include a processor 1001, a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005.
  • Communication bus 1002 is configured to enable connection communication between these components.
  • the user interface 1003 may include a display, a speaker, an input unit such as a keyboard, and the like.
  • the user interface 1003 may also include a standard wired interface, a wireless interface, and the like.
  • the network interface 1004 may include a standard wired interface, a wireless interface (such as a Wi-Fi interface).
  • the memory 1005 may be a high speed RAM memory or a non-volatile memory such as a disk memory.
  • the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
  • the structure of the terminal device shown in FIG. 1 does not constitute a limitation on the terminal device, and may include more or less components than those illustrated, or combine some components, or different component arrangements. .
  • the memory 1005 as a computer storage medium may include a first operating system with an audio and video hardware acceleration function and no audio and video hardware acceleration function.
  • the second operating system, the network communication module, the user interface module, and the video player may include a first operating system with an audio and video hardware acceleration function and no audio and video hardware acceleration function.
  • the network interface 1004 is mainly configured to connect to a background server to perform data communication with the background server;
  • the user interface 1003 is mainly configured to connect to the client (user end) to perform data communication with the client;
  • the processor 1001 runs the first operating system and the second operating system, and can be configured to call the video player stored in the memory 1005 and perform the following operations:
  • the start operation command and the display area information of the player are transmitted to the first operating system based on the second operating system;
  • the first operating system After the first operating system receives the start of the play instruction, performing audio and video hardware decoding on the video file indicated by the first play command according to the first operating system;
  • the decoded image data is output based on the display area indicated by the display area information by the first operating system, and the decoded audio data is output through the speaker.
  • processor 1001 may be configured to call a video player stored in the memory 1005 and perform the following operations:
  • the decoded image data is output based on the display area indicated by the changed display area information by the first operating system.
  • processor 1001 may be configured to call a video player stored in the memory 1005 and perform the following operations:
  • the playback status information is displayed on the player based on the second operating system.
  • processor 1001 may be configured to call a video player stored in the memory 1005 and perform the following operations:
  • the other play control command received based on the second operating system is transmitted to the first operating system for response.
  • the first operating system includes a first multimedia system
  • the second operating system includes a second multimedia system
  • the processor 1001 can be configured to call a video playing program stored in the memory 1005 and perform the following operations:
  • the first operating system further includes an audio hardware acceleration system and a video hardware acceleration system
  • the processor 1001 may be configured to call a video player stored in the memory 1005 and perform the following operations:
  • the video portion of the video file is input to the video hardware acceleration system based on the first multimedia system, and the image data returned by the video hardware acceleration system is obtained.
  • an embodiment of the present disclosure further provides a video playing method, which can be applied to the terminal device shown in FIG. 1.
  • a video playing method according to an embodiment of the present disclosure includes:
  • Step S10 in the case that the player of the second operating system receives the start play instruction of the video file, the start operation command and the display area information of the player are transmitted to the first operating system based on the second operating system;
  • Step S20 in the case that the first operating system receives the start play instruction, perform audio and video hardware decoding on the video file indicated by the start play instruction based on the first operating system;
  • Step S30 outputting the decoded image data based on the display area indicated by the display area information by the first operating system, and outputting the decoded audio data through the speaker.
  • the processor 1001 can simultaneously run a first operating system and a second operating system.
  • the first operating system is a provider of audio and video hardware acceleration functions, and is configured to carry an output system, an audio system, a graphics system, an audio hardware acceleration system, a video hardware acceleration system, a first multimedia system, and a multimedia system proxy server.
  • the output system is connected to the audio system and the graphics system for playing audio and display graphics, and includes output devices such as speakers and displays.
  • the audio system is coupled to the first multimedia system and configured to process the audio data submitted by the first multimedia system and then transmit the processed audio data to the output system.
  • the graphics system is coupled to the first multimedia system and configured to process image data submitted by the first multimedia system and then transmit the processed image data to an output system.
  • the audio hardware acceleration system is coupled to the first multimedia system and configured to accelerate audio data decoding and to communicate the decoded audio data to the first multimedia system.
  • the video hardware acceleration system is coupled to the first multimedia system and configured to accelerate image data decoding and to communicate the decoded image data to the first multimedia system.
  • the first multimedia system is coupled to the multimedia system proxy server and configured to process the request submitted by the multimedia system proxy server.
  • the multimedia system proxy server is coupled to the multimedia system proxy client and configured to process requests submitted by the multimedia system proxy client.
  • the second operating system is a user of the audio and video hardware acceleration function configured to carry the multimedia system proxy client, the second multimedia system, and the player.
  • the multimedia system proxy client is coupled to the second multimedia system and configured to process the request submitted by the second multimedia system.
  • the second multimedia system is coupled to the player and configured to process the request submitted by the multimedia player.
  • the player is configured to provide a playback control interface for user operation, which may include playing, pausing, and stopping controls.
  • the method further includes the step of establishing a transmission channel:
  • the terminal device starts the first multimedia system after starting the audio system, the audio hardware acceleration system, the graphics system, and the video hardware acceleration system based on the first operating system.
  • the terminal device can create a multimedia system proxy server based on the first multimedia system, and listen to the connection request of the multimedia system proxy client through the multimedia system proxy server.
  • the terminal device starts the second multimedia system based on the second operating system
  • the multimedia system proxy client is created based on the second multimedia system.
  • the terminal device monitors whether the multimedia system proxy server is ready based on the multimedia system proxy client. In the case that the multimedia system proxy server is ready, the terminal device establishes a communication connection between the multimedia system proxy server and the multimedia system proxy client at this time.
  • the transmission channel between the first operating system and the second operating system has been established, and the first operating system can share its own audio and video hardware acceleration function to the second operating system through the transmission channel to the second operating system.
  • the terminal device runs the second operating system in the foreground, and starts the player based on the second operating system according to the user operation. Thereafter, the terminal device can receive a playback control command from the user based on the activated player. On the other hand, the user can input the corresponding playback control command according to his actual needs.
  • the present disclosure does not specifically limit how to input a playback control instruction.
  • the user can directly input corresponding play control commands through controls such as “play”, “pause”, and “stop” provided by the player's play control interface, and operation menus.
  • the video file to be played can be directly dragged into the display area of the player, and the start playing instruction of the video file to be played can be triggered by double-clicking the video file to be played.
  • the terminal device When the terminal device receives the start play instruction of the video file, the terminal device transmits the start play command and the display area information of the player to the first operating system based on the second operating system.
  • the display area information includes at least parameters such as left, top, right, and bottom, and the parameters are used to specifically limit the position of the display area of the player on the screen of the terminal device.
  • the start play command received by the player and the display area display of the player are transmitted to the second multimedia system, and then based on the second multimedia system. Transmitting the start play instruction and the display area information to the first multimedia system through the transmission channel between the multimedia system proxy client and the multimedia system proxy server, thereby realizing the start of the play instruction and the display area display by the second operating system to the first The transmission of an operating system.
  • the step of performing the audio and video hardware decoding on the video file indicated by the first play command according to the first operating system includes:
  • the video portion of the video file is input to the video hardware acceleration system based on the first multimedia system, and the image data returned by the video hardware acceleration system is obtained.
  • the terminal device when the first multimedia system receives the start play instruction, the terminal device inputs the audio portion of the video file indicated by the start play instruction to the audio hardware acceleration system based on the audio hardware by the first multimedia system.
  • the acceleration system calls the audio hardware of the terminal device (such as a sound card) for hard audio decoding, and returns the decoded audio data to the first multimedia system.
  • the terminal device inputs the video part of the video file indicated by the start playing instruction to the video hardware acceleration system based on the first multimedia system, and the video hardware acceleration system calls the video hardware of the terminal device (such as a graphics card) to perform hard decoding of the video, and
  • the decoded video data is returned to the first multimedia system.
  • the audio and video hardware decoding of the video file to be played is completed.
  • the terminal device After the decoding of the audio and video hardware of the video file is completed, the terminal device outputs the decoded image data according to the display area indicated by the display area information by the first operating system, and outputs the decoded audio data through the speaker, which specifically includes:
  • the decoded audio data is output by the audio system through the speaker of the output system, and simultaneously transmitting the image data after the interface to the first multimedia system to
  • the decoded image data is output by the graphics system through the display of the output system.
  • the display area corresponding to the display area information is output on the display, that is, the display area of the player is output.
  • the terminal device still plays the video file through the player of the second operating system. That is to say, the audio and video hardware decoding and playback of the video file is realized by an operating system that does not have the audio and video hardware acceleration function.
  • the video playing method is based on simultaneously operating a first operating system having an audio and video hardware acceleration function and a second operating system terminal device not having an audio and video hardware acceleration function, and receiving at a player of the second operating system.
  • the start command of the video file is started, the start operation command and the display area information of the player are transmitted to the first operating system based on the second operating system, so that when the first operating system receives the start play instruction, based on the first operating system Performing audio and video hardware decoding on the video file indicated by the start of the playback instruction, and outputting the decoded image data based on the display area indicated by the display area information by the first operating system, and outputting the decoded audio data through the speaker, so that the audio and video are not provided.
  • the hardware acceleration function operating system can use the operating system with audio and video hardware acceleration function to accelerate the audio and video hardware of the video file and complete the playback to improve the playback of the operating system without the audio and video hardware acceleration function. Effect of the purpose of.
  • the video playing method further includes:
  • the decoded image data is output based on the display area indicated by the changed display area information by the first operating system.
  • the user usually adjusts the display area of the player according to his actual needs. For example, the user switches the player's window play and full-screen play, and freely drags the display position of the player while the window is playing, and scales the size of the player. Correspondingly, these actions can cause changes in the display area of the player. In order to cope with such a change, in the present embodiment, an update operation to the player display area is added.
  • the terminal device detects, according to the second operating system, whether the display area of the player changes, including but not limited to the position change of the display area, the size scaling, and the like.
  • the second multimedia system detects whether the display area of the player changes.
  • the terminal device When detecting that the display area of the player changes, the terminal device transmits the changed display area information to the first operating system based on the second operating system. Specifically, the changed display area information is transmitted to the first multimedia system of the first operating system based on the transmission channel between the multimedia system proxy client and the multimedia system proxy server based on the second multimedia system.
  • the terminal device may transmit the changed display area information to the graphics system based on the first multimedia system, and the changed display area information by the graphics system
  • the indicated display area outputs the decoded image data.
  • the output image data is always adapted to the display area of the player.
  • the video playing method further includes:
  • the playback status information is displayed on the player based on the second operating system.
  • the terminal device since the actual player of the video file is the first multimedia system of the first operating system, the terminal device first acquires the playing state information of the video file based on the first multimedia system, wherein the playing state information Including but not limited to playback progress, volume, stop, buffer, pause, play, and finish.
  • the terminal device After acquiring the play status information of the video file, the terminal device transmits the acquired play status information to the second multimedia through the transmission channel between the multimedia system proxy client and the multimedia system proxy server based on the first multimedia system. Body system.
  • the terminal device After the second multimedia system receives the play status information of the video file, the terminal device displays the play status information of the video file on the player based on the second multimedia system for the user to view.
  • the video playing method further includes:
  • the other play control command received based on the second operating system is transmitted to the first operating system for response.
  • the embodiment of the present disclosure adds a response operation to other playback control commands than the start of the playback command.
  • the terminal device transmits the received other playback control command to the second multimedia system in response to the player receiving another playback control command than the start of the playback command.
  • the other multimedia control system may be used to transmit the other playback control command through the transmission channel between the multimedia system proxy client and the multimedia system proxy server.
  • the transmission to the first multimedia system is responsive by the first multimedia system. For example, when the other playback control command received is a stop playback command, the first multimedia system will stop decoding the video file to stop playback.
  • an embodiment of the present disclosure further provides a video playback apparatus applicable to the terminal device shown in FIG. 1.
  • the video playback apparatus includes:
  • the transmission module 10 is configured to, when the player of the second operating system receives the start play instruction of the video file, transmit the start play instruction and the display area information of the player to the first operating system based on the second operating system;
  • the decoding module 20 is configured to perform audio and video hardware decoding on the video file indicated by the first operating system to start the play instruction, when the first operating system receives the start play instruction;
  • the playing module 30 is configured to output the decoded image data based on the display area indicated by the display area information by the first operating system, and output the decoded audio data through the speaker.
  • the transmission module 10 is further configured to: after the second operating system detects that the display area of the player changes, the changed display area information is transmitted based on the second operating system. Up to the first operating system; and the playing module 30 is further configured to output the decoded image data based on the display area indicated by the changed display area information by the first operating system.
  • the transmission module 10 is further configured to return the play status information of the video file to the second operating system based on the first operating system; and the play module 30 is further configured to be based on the second operating system The player displays playback status information.
  • the transmission module 10 is further configured to receive other playback control commands based on the second operating system based on the player receiving other playback control instructions than the start of the playback command. Transfer to the first operating system for response.
  • the first operating system includes a first multimedia system
  • the second operating system includes a second multimedia system
  • the video playback device further includes a connection module (not shown in FIG. 4). Is configured to create a multimedia system proxy server based on the first multimedia system, create a multimedia system proxy client based on the second multimedia system; and establish a communication connection between the multimedia system proxy server and the multimedia system proxy client to The communication connection performs data transmission between the first operating system and the second operating system.
  • the first operating system further includes an audio hardware acceleration system and a video hardware acceleration system
  • the decoding module 20 is further configured to input the audio portion of the video file into the audio hardware acceleration based on the first multimedia system.
  • the system obtains the audio data returned by the audio hardware acceleration system after decoding; and inputs the video portion of the video file into the video hardware acceleration system based on the first multimedia system, and obtains the image data returned by the video hardware acceleration system after decoding.
  • an embodiment of the present disclosure further provides a computer readable storage medium, which is applied to a terminal device that runs a first operating system having an audio and video hardware acceleration function and a second operating system that does not have an audio and video hardware acceleration function.
  • the computer readable storage medium stores a video playing program, and when the video playing program is executed by the processor 1001, the following operations are implemented:
  • the start operation command and the display area information of the player are transmitted to the first operating system based on the second operating system;
  • the first operating system After the first operating system receives the start of the play instruction, performing audio and video hardware decoding on the video file indicated by the first play command according to the first operating system;
  • the decoded image data is outputted based on the display area indicated by the display area information by the first operating system, and the decoded audio data is output through the speaker.
  • the decoded image data is output based on the display area indicated by the changed display area information by the first operating system.
  • the playback status information is displayed on the player based on the second operating system.
  • the other play control command received based on the second operating system is transmitted to the first operating system for response.
  • the first operating system includes a first multimedia system
  • the second operating system includes a second multimedia system.
  • the first operating system further includes an audio hardware acceleration system and a video hardware acceleration system.
  • an audio hardware acceleration system and a video hardware acceleration system.
  • the video portion of the video file is input to the video hardware acceleration system based on the first multimedia system, and the image data returned by the video hardware acceleration system is obtained.
  • portions of the technical solution of the present disclosure that contribute substantially or to the prior art may be embodied in the form of a software product stored in a storage medium (such as a ROM/RAM as described above).
  • the disk, the optical disk, and the like include a plurality of instructions for causing a terminal device (such as a mobile phone, a computer, a tablet computer, etc.) to execute the method described in the corresponding embodiment of the present disclosure.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

一种视频播放方法及装置,终端设备及计算机存储介质。视频播放方法可应用于终端设备,所述终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统的终端设备。所述方法包括在第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统;在第一操作系统接收到开始播放指令的情况下,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码;以及基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。

Description

视频播放方法及装置、终端设备及计算机可读存储介质 技术领域
本公开涉及但不限于智能终端技术领域,尤其涉及一种视频播放方法及装置、终端设备及计算机可读存储介质。
背景技术
音视频硬件加速是芯片厂商的核心技术。在通常情况下,音视频硬件加速的代码不开源,而是转以二进制文件的方式提供给使用者。二进制文件包括但不限于动态库、静态库以及固件等。但是,这些二进制文件是基于特定的操作系统、系统版本编译的,在其它操作系统或者是其它系统版本上均无法正常工作。如果终端设备的操作系统不支持音视频硬件加速,那么终端设备在播放高清视频时将会极度消耗CPU资源,甚至播放画面出现卡顿,影响播放效果。
发明内容
本公开的主要目的在于提供一种视频播放方法及装置、终端设备及计算机可读存储介质。
为实现上述目的,本公开的一个实施例提供一种视频播放方法,可应用于终端设备,该终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统,该视频播放方法包括:在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,同时通过扬声器输出解码得到的音频数据。
本公开的一个实施例还提供一种视频播放装置,可应用于终端设 备,该终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统,该视频播放装置包括:传输模块,被配置为在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;解码模块,被配置为在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及播放模块,被配置为基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,同时通过扬声器输出解码得到的音频数据。
本公开的一个实施例还提供一种终端设备,该终端设备包括:存储器,存储有第一操作系统、第二操作系统以及视频播放程序,其中,所述第一操作系统具备音视频硬件加速功能,所述第二操作系统不具备音视频硬件加速功能;以及处理器,运行所述第一操作系统和所述第二操作系统且配置为执行所述视频播放程序以实现以下步骤:在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,同时通过扬声器输出解码得到的音频数据。
本公开的一个实施例还提供一种计算机可读存储介质,可应用于终端设备,该终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统,该计算机可读存储介质上存储有视频播放程序,所述视频播放程序被处理器执行时实现以下步骤:在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播 放器的显示区域信息传输至所述第一操作系统;在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
附图说明
图1为根据本公开的终端设备的一种硬件结构的示意图;
图2为本公开的一个实施例的视频播放方法的流程示意图;
图3为本公开的一个实施例的视频播放方法的音视频硬件加速功能共享机制的示意图;
图4为本公开的一个实施例的视频播放装置的示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本公开,并不用于限定本公开。
本公开实施例的主要解决方案是:基于同时运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统的终端设备,在第二操作系统的播放器接收到视频文件的开始播放指令时,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统,从而在第一操作系统接收到开始播放指令时,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码,并基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,同时通过扬声器输出解码得到的音频数据,使得不具备音视频硬件加速功能的操作系统在播放视频文件时,能够利用具备音视频硬件加速功能的操作系统实现对视频文件的音视频硬件加速,完成播放,达到提高不具备音视频硬件加速功能的操作系统的播放效果的目的。
如图1所示,图1是本公开实施例的终端设备的硬件结构的示意图。
如图1所示,该终端设备可以包括:处理器1001,通信总线1002,用户接口1003,网络接口1004,存储器1005。通信总线1002被配置为实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、扬声器、输入单元比如键盘(Keyboard)等。可选的是,用户接口1003还可以包括标准的有线接口、无线接口等。可选的是,网络接口1004可以包括标准的有线接口、无线接口(如Wi-Fi接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。可选的是,存储器1005还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端设备的结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,在本公开终端设备的一实施例中,作为一种计算机存储介质的存储器1005中可以包括具备音视频硬件加速功能的第一操作操作系统、不具备音视频硬件加速功能的第二操作系统、网络通信模块、用户接口模块以及视频播放程序。
在图1所示的终端设备中,网络接口1004主要被配置为连接后台服务器,与后台服务器进行数据通信;用户接口1003主要被配置为连接客户端(用户端),与客户端进行数据通信;而处理器1001运行第一操作系统和第二操作系统,且可以被配置为调用存储器1005中存储的视频播放程序,并执行以下操作:
在第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统;
在第一操作系统接收到开始播放指令的情况下,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码;以及
基于第一操作系统在显示区域信息指示的显示区域输出解码得到 的图像数据,并且通过扬声器输出解码得到的音频数据。
进一步地,处理器1001可以被配置为调用存储器1005中存储的视频播放程序,并执行以下操作:
在基于第二操作系统侦测到播放器的显示区域发生变化的情况下,基于第二操作系统将变化后的显示区域信息传输至第一操作系统;以及
基于第一操作系统在变化后的显示区域信息所指示的显示区域输出解码得到的图像数据。
进一步地,处理器1001可以被配置为调用存储器1005中存储的视频播放程序,并执行以下操作:
基于第一操作系统将视频文件的播放状态信息返回至第二操作系统;以及
基于第二操作系统在播放器显示播放状态信息。
进一步地,处理器1001可以被配置为调用存储器1005中存储的视频播放程序,并执行以下操作:
在基于播放器接收到开始播放指令之外的其它播放控制指令的情况下,基于第二操作系统将接收到的其它播放控制指令传输至第一操作系统进行响应。
进一步地,第一操作系统包括第一多媒体系统,第二操作系统包括第二多媒体系统,处理器1001可以被配置为调用存储器1005中存储的视频播放程序,并执行以下操作:
基于第一多媒体系统创建多媒体系统代理服务端,基于第二多媒体系统创建多媒体系统代理客户端;以及
建立多媒体系统代理服务端与多媒体系统代理客户端的通讯连接,以基于该通讯连接进行第一操作系统和第二操作系统间的数据传输。
进一步地,第一操作系统还包括音频硬件加速系统和视频硬件加速系统,处理器1001可以被配置为调用存储器1005中存储的视频播放程序,并执行以下操作:
基于第一多媒体系统将视频文件的音频部分输入音频硬件加速系统,得到音频硬件加速系统解码后返回的音频数据;以及
基于第一多媒体系统将视频文件的视频部分输入视频硬件加速系统,得到视频硬件加速系统解码后返回的图像数据。
进一步地,本公开的一个实施例还提供一种视频播放方法,可应用于图1所示的终端设备。参照图2,根据本公开实施例的视频播放方法包括:
步骤S10,在第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统;
步骤S20,在第一操作系统接收到开始播放指令的情况下,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码;以及
步骤S30,基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
为便于理解本公开的方案,以下首先对本公开方案实现所基于的音视频硬件加速功能共享机制的进行说明。
请参照图3,处理器1001可以同时运行有第一操作系统和第二操作系统。
第一操作系统是音视频硬件加速功能的提供者,被配置为承载输出系统、音频系统、图形系统、音频硬件加速系统、视频硬件加速系统、第一多媒体系统以及多媒体系统代理服务端。其中,输出系统与音频系统、图形系统连接,用于播放音频和显示图形,并且包括扬声器、显示器等输出设备。
音频系统与第一多媒体系统连接,被配置为处理第一多媒体系统提交的音频数据,然后将处理后的音频数据传输给输出系统。
图形系统与第一多媒体系统连接,被配置为处理第一多媒体系统提交的图像数据,然后将处理后的图像数据传输给输出系统。
音频硬件加速系统与第一多媒体系统连接,被配置为加速音频数据解码,并将解码后的音频数据传递给第一多媒体系统。
视频硬件加速系统与第一多媒体系统连接,被配置为加速图像数 据解码,并将解码后的图像数据传递给第一多媒体系统。
第一多媒体系统与多媒体系统代理服务端连接,被配置为处理多媒体系统代理服务端提交的请求。
多媒体系统代理服务端与多媒体系统代理客户端连接,被配置为处理多媒体系统代理客户端提交的请求。
第二操作系统是音视频硬件加速功能的使用者,被配置为承载多媒体系统代理客户端、第二多媒体系统以及播放器。
多媒体系统代理客户端与第二多媒体系统连接,被配置为处理第二多媒体系统提交的请求。
第二多媒体系统与播放器连接,被配置为处理多媒体播放器提交的请求。
播放器被配置为提供供用户操作的播放控制界面,该播放控制界面可以包括播放、暂停、停止控件。
基于以上对于音视频硬件加速功能共享机制的框架结构的描述,以下对本公开方案的实现进行具体说明。
在本公开实施例中,为实现第二操作系统与第一操作系统间的数据传输,步骤S10之前,所述方法还包括传输通道的建立步骤:
基于第一多媒体系统创建多媒体系统代理服务端,基于第二多媒体系统创建多媒体系统代理客户端;以及
建立多媒体系统代理服务端与多媒体系统代理客户端的通讯连接,以基于该通讯连接进行第一操作系统和第二操作系统间的数据传输。
在具体实施时,终端设备在基于第一操作系统启动音频系统、音频硬件加速系统、图形系统以及视频硬件加速系统之后,启动第一多媒体系统。在启动第一多媒体系统之后,终端设备即可基于第一多媒体系统创建多媒体系统代理服务端,并通过多媒体系统代理服务端监听多媒体系统代理客户端的连接请求。
另一方面,终端设备在基于第二操作系统启动第二多媒体系统之后,基于第二多媒体系统创建多媒体系统代理客户端。之后,终端设备基于多媒体系统代理客户端监测多媒体系统代理服务端是否准备就绪。在多媒体系统代理服务端准备就绪的情况下,终端设备此时建立 多媒体系统代理服务端与多媒体系统代理客户端的通讯连接。
至此,第一操作系统与第二操作系统之间传输通道已经建立,第一操作系统可以通过该传输通道向第二操作系统共享自身的音视频硬件加速功能给第二操作系统。
在本实施例中,终端设备前台运行第二操作系统,并根据用户操作基于第二操作系统启动播放器。之后,终端设备即可基于启动的播放器接收来自用户的播放控制指令。另一方面,用户可根据自身实际需要输入相应的播放控制指令。需要说明的是,本公开对于如何输入播放控制指令不做具体限制。例如,用户可通过播放器的播放控制界面提供的“播放”、“暂停”以及“停止”等控件以及操作菜单等直接输入相应的播放控制指令。又例如,当用户需要播放某视频文件时,可以通过将待播放视频文件直接拖入播放器显示区域的方式,还可以通过双击待播放视频文件的方式触发指示待播放视频文件的开始播放指令。
终端设备在播放器接收到视频文件的开始播放指令时,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统。其中,显示区域信息至少包括left、top、right、bottom等参数,这些参数用于具体限定播放器的显示区域在终端设备屏幕的位置。
在传输开始播放指令以及显示区域信息时,请参照图3,首先将播放器接收到的开始播放指令以及播放器的显示区域显示传输至第二多媒体系统,再基于第二多媒体系统将开始播放指令以及显示区域信息通过多媒体系统代理客户端以及多媒体系统代理服务端之间的传输通道传输至第一多媒体系统,从而实现开始播放指令和显示区域显示由第二操作系统至第一操作系统的传输。
在本实施例中,在第一操作系统接收到开始播放指令的情况下,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码的步骤,具体包括:
基于第一多媒体系统将视频文件的音频部分输入音频硬件加速系统,得到音频硬件加速系统解码后返回的音频数据;以及
基于第一多媒体系统将视频文件的视频部分输入视频硬件加速系 统,得到视频硬件加速系统解码后返回的图像数据。
在本实施例中,在第一多媒体系统接收到开始播放指令时,终端设备基于第一多媒体系统将开始播放指令所指示的视频文件的音频部分输入音频硬件加速系统,由音频硬件加速系统调用终端设备的音频硬件(如声卡)进行音频硬解码,并返回解码后的音频数据至第一多媒体系统。同时,终端设备基于第一多媒体系统将开始播放指令所指示的视频文件的视频部分输入视频硬件加速系统,由视频硬件加速系统调用终端设备的视频硬件(如显卡)进行视频硬解码,并返回解码后的视频数据至第一多媒体系统。至此,就完成了对待播放的视频文件的音视频硬件解码。
在完成对视频文件的音视频硬件解码之后,终端设备基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据的步骤,具体包括:
基于第一多媒体系统将解码后音频数据传输至音频系统,由音频系统将解码后音频数据通过输出系统的扬声器进行输出,同时,基于第一多媒体系统将界面后的图像数据传输至图形系统,由图形系统将解码后的图像数据通过输出系统的显示器进行输出。具体地说,在显示器上对应显示区域信息的显示区域进行输出,也即是播放器的显示区域进行输出。对于用户而言,终端设备仍是通过第二操作系统的播放器进行视频文件的播放。也就是说,通过不具备音视频硬件加速功能的操作系统实现了对视频文件的音视频硬件解码播放。
本公开实施例提出的视频播放方法,基于同时运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统的终端设备,在第二操作系统的播放器接收到视频文件的开始播放指令时,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统,从而在第一操作系统接收到开始播放指令时,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码,并基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,同时通过扬声器输出解码得到的音频数据,使得不具备音视频硬件加速功能的操作系统在播放视频文件时,能够利用 具备音视频硬件加速功能的操作系统实现对视频文件的音视频硬件加速,完成播放,达到提高不具备音视频硬件加速功能的操作系统的播放效果的目的。
进一步地,根据本公开的一个实施例,在步骤S30之后,所述视频播放方法还包括:
在基于第二操作系统侦测到播放器的显示区域发生变化的情况下,基于第二操作系统将变化后的显示区域信息传输至第一操作系统;以及
基于第一操作系统在变化后的显示区域信息所指示的显示区域输出解码得到的图像数据。
需要说明的是,在实际使用中,用户通常会根据自身实际需要对播放器的显示区域进行调整。例如,用户切换播放器的窗口播放和全屏播放,以及在窗口播放时随意拖动播放器的显示位置,缩放播放器的大小等。相应的是,这些操作会导致播放器显示区域的变化。为应对这种变化,在本实施例中,增加了对播放器显示区域的更新操作。
在本实施例中,终端设备基于第二操作系统实时侦测播放器的显示区域是否发生变化,包括但不限于显示区域的位置变化以及大小缩放等。其中,具体通过第二多媒体系统对播放器的显示区域是否发生变化进行侦测。
在侦测到播放器的显示区域发生变化时,终端设备基于第二操作系统将变化后的显示区域信息传至第一操作系统。具体地说,基于第二多媒体系统基于多媒体系统代理客户端与多媒体系统代理服务端之间的传输通道将变化后的显示区域信息传输至第一操作系统的第一多媒体系统。
在第一多媒体系统接收到变化后的显示区域信息之后,终端设备即可基于第一多媒体系统将变化后的显示区域信息传输至图形系统,由图形系统在变化后的显示区域信息所指示的显示区域输出解码得到的图像数据。由此,无论播放器的显示区域如何变化,输出的图像数据总是适于播放器的显示区域的。
进一步地,根据本公开的一个实施例,在步骤S30之后,所述视频播放方法还包括:
基于第一操作系统将视频文件的播放状态信息返回至第二操作系统;以及
基于第二操作系统在播放器显示播放状态信息。
需要说明的是,为便于用户了解视频文件的播放状态,在本实施例中增加了播放状态信息的显示操作。
在本实施例中,由于视频文件的实际播放者为第一操作系统的第一多媒体系统,终端设备首先基于第一多媒体系统获取到视频文件的播放状态信息,其中,播放状态信息包括但不限于播放进度、音量大小、停止、缓冲、暂停、播放以及完成等。
在获取到视频文件的播放状态信息之后,终端设备基于第一多媒体系统将获取到的播放状态信息通过多媒体系统代理客户端和多媒体系统代理服务端之间的传输通道传输至第二多媒体系统。
在第二多媒体系统接收到视频文件的播放状态信息之后,终端设备即基于第二多媒体系统在播放器显示视频文件的播放状态信息,以供用户查看。
进一步地,根据本公开的一个实施例,在步骤S30之后,所述视频播放方法还包括:
在基于播放器接收到开始播放指令之外的其它播放控制指令的情况下,基于第二操作系统将接收到的其它播放控制指令传输至第一操作系统进行响应。
容易理解的是,在实际使用中,用户在操作播放器开始播放视频文件之后,可根据自身实际需要对播放器进行播放控制,包括但不限于暂停、停止、调整播放进度、调整音量大小等。相应的,本公开实施例为满足用户的播放控制需求,在本实施例中增加了对开始播放指令之外的其它播放控制指令的响应操作。
在本实施例中,终端设备在基于播放器接收到开始播放指令之外 的其它播放控制指令的情况下,将接收的其它播放控制指令传输至第二多媒体系统。在第二多媒体系统接收到该其它播放控制指令的情况下,即可基于第二多媒体系统通过多媒体系统代理客户端与多媒体系统代理服务端之间的传输通道将该其它播放控制指令传输至第一多媒体系统,由第一多媒体系统进行响应。例如,在接收到的其它播放控制指令为停止播放指令时,第一多媒体系统将停止对视频文件的解码输出,以停止播放。
进一步地,本公开的一个实施例还提供一种视频播放装置,可应用于图1所示的终端设备。参照图4,根据本实施例的视频播放装置包括:
传输模块10,被配置为在第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统;
解码模块20,被配置为在第一操作系统接收到开始播放指令的情况下,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码;
播放模块30,被配置为基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
可选地,在一个实施例中,传输模块10还被配置为在基于第二操作系统侦测到播放器的显示区域发生变化的情况下,基于第二操作系统将变化后的显示区域信息传输至第一操作系统;并且播放模块30还被配置为基于第一操作系统在变化后的显示区域信息所指示的显示区域输出解码得到的图像数据。
可选地,在一个实施例中,传输模块10还被配置为基于第一操作系统将视频文件的播放状态信息返回至第二操作系统;并且播放模块30还被配置为基于第二操作系统在播放器显示播放状态信息。
可选地,在一个实施例中,传输模块10还被配置为在基于播放器接收到开始播放指令之外的其它播放控制指令的情况下,基于第二操 作系统将接收到的其它播放控制指令传输至第一操作系统进行响应。
可选地,在一个实施例中,第一操作系统包括第一多媒体系统,第二操作系统包括第二多媒体系统,并且视频播放装置还包括连接模块(图4未示出),被配置为基于第一多媒体系统创建多媒体系统代理服务端,基于第二多媒体系统创建多媒体系统代理客户端;并且建立多媒体系统代理服务端与多媒体系统代理客户端的通讯连接,以基于该通讯连接进行第一操作系统和第二操作系统间的数据传输。
可选地,在一个实施例中,第一操作系统还包括音频硬件加速系统和视频硬件加速系统,解码模块20还被配置为基于第一多媒体系统将视频文件的音频部分输入音频硬件加速系统,得到音频硬件加速系统解码后返回的音频数据;并且基于第一多媒体系统将视频文件的视频部分输入视频硬件加速系统,得到视频硬件加速系统解码后返回的图像数据。
进一步地,本公开的一个实施例还提供一种计算机可读存储介质,应用于运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统的终端设备。在一个实施例中,该计算机可读存储介质上存储有视频播放程序,该视频播放程序被处理器1001执行时实现如下操作:
在第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于第二操作系统将开始播放指令以及播放器的显示区域信息传输至第一操作系统;
在第一操作系统接收到开始播放指令的情况下,基于第一操作系统对开始播放指令指示的视频文件进行音视频硬件解码;以及
基于第一操作系统在显示区域信息指示的显示区域输出解码得到的图像数据,通过扬声器输出解码得到的音频数据。
进一步地,前述视频播放程序被处理器1001执行时实现如下操作:
在基于第二操作系统侦测到播放器的显示区域发生变化的情况下,基于第二操作系统将变化后的显示区域信息传输至第一操作系统;以及
基于第一操作系统在变化后的显示区域信息所指示的显示区域输出解码得到的图像数据。
进一步地,前述视频播放程序被处理器1001执行时,还实现如下操作:
基于第一操作系统将视频文件的播放状态信息返回至第二操作系统;以及
基于第二操作系统在播放器显示播放状态信息。
进一步地,前述视频播放程序被处理器1001执行时,还实现如下操作:
在基于播放器接收到开始播放指令之外的其它播放控制指令的情况下,基于第二操作系统将接收到的其它播放控制指令传输至第一操作系统进行响应。
进一步地,第一操作系统包括第一多媒体系统,第二操作系统包括第二多媒体系统,前述视频播放程序被处理器1001执行时,还实现如下操作:
基于第一多媒体系统创建多媒体系统代理服务端,基于第二多媒体系统创建多媒体系统代理客户端;以及
建立多媒体系统代理服务端与多媒体系统代理客户端的通讯连接,以基于该通讯连接进行第一操作系统和第二操作系统间的数据传输。
进一步地,第一操作系统还包括音频硬件加速系统和视频硬件加速系统,前述视频播放程序被处理器1001执行时,还实现如下操作:
基于第一多媒体系统将视频文件的音频部分输入音频硬件加速系统,得到音频硬件加速系统解码后返回的音频数据;以及
基于第一多媒体系统将视频文件的视频部分输入视频硬件加速系统,得到视频硬件加速系统解码后返回的图像数据。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的 要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(如手机、电脑、平板电脑等)执行本公开对应实施例所述的方法。
上面结合附图对本公开的实施例进行了描述,但是本公开并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本公开的启示下,在不脱离本公开宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本公开的保护之内。

Claims (10)

  1. 一种视频播放方法,可应用于终端设备,所述终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统,所述方法包括以下步骤:
    在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;
    在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及
    基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
  2. 根据权利要求1所述的视频播放方法,其中,所述基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据的步骤之后,所述方法还包括:
    在基于所述第二操作系统侦测到所述播放器的显示区域发生变化的情况下,基于所述第二操作系统将变化后的显示区域信息传输至所述第一操作系统;以及
    基于所述第一操作系统在变化后的显示区域信息所指示的显示区域输出解码得到的图像数据。
  3. 根据权利要求1所述的视频播放方法,其中,所述基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据的步骤之后,所述方法还包括:
    基于所述第一操作系统将所述视频文件的播放状态信息返回至所述第二操作系统;以及
    基于所述第二操作系统在所述播放器显示所述播放状态信息。
  4. 根据权利要求1所述的视频播放方法,其中,所述基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据的步骤之后,所述方法还包括:
    在基于所述播放器接收到开始播放指令之外的其它播放控制指令的情况下,基于所述第二操作系统将接收到的其它播放控制指令传输至所述第一操作系统进行响应。
  5. 根据权利要求1-4任一项所述的视频播放方法,其中,所述第一操作系统包括第一多媒体系统,所述第二操作系统包括第二多媒体系统,并且所述在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统的步骤之前,所述方法还包括:
    基于所述第一多媒体系统创建多媒体系统代理服务端,基于所述第二多媒体系统创建多媒体系统代理客户端;以及
    建立所述多媒体系统代理服务端与所述多媒体系统代理客户端的通讯连接,以基于该通讯连接进行第一操作系统和第二操作系统间的数据传输。
  6. 根据权利要求5所述的视频播放方法,其中,所述第一操作系统还包括音频硬件加速系统和视频硬件加速系统,并且所述基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码的步骤包括:
    基于所述第一多媒体系统将所述视频文件的音频部分输入所述音频硬件加速系统,得到所述音频硬件加速系统解码后返回的音频数据;以及
    基于所述第一多媒体系统将所述视频文件的视频部分输入所述视 频硬件加速系统,得到所述视频硬件加速系统解码后返回的图像数据。
  7. 一种视频播放装置,可应用于终端设备,所述终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统,该视频播放装置包括:
    传输模块,被配置为在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;
    解码模块,被配置为在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;
    播放模块,被配置为基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
  8. 根据权利要求7所述的视频播放装置,其中,
    所述第一操作系统包括第一多媒体系统,所述第二操作系统包括第二多媒体系统,
    所述传输模块还被配置为基于所述第一多媒体系统创建多媒体系统代理服务端,基于所述第二多媒体系统创建多媒体系统代理客户端;并且
    所述传输模块还被配置为建立所述多媒体系统代理服务端与所述多媒体系统代理客户端的通讯连接,以基于该通讯连接进行第一操作系统和第二操作系统间的数据传输。
  9. 一种终端设备,包括:
    存储器,存储有第一操作系统、第二操作系统以及视频播放程序,其中,所述第一操作系统具备音视频硬件加速功能,所述第二操作系统不具备音视频硬件加速功能;以及
    处理器,运行所述第一操作系统和所述第二操作系统且配置为执 行所述视频播放程序以实现以下步骤:
    在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;
    在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及
    基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
  10. 一种计算机可读存储介质,可应用于终端设备,所述终端设备运行具备音视频硬件加速功能的第一操作系统和不具备音视频硬件加速功能的第二操作系统,所述计算机可读存储介质上存储有视频播放程序,所述视频播放程序被处理器执行时实现以下步骤:
    在所述第二操作系统的播放器接收到视频文件的开始播放指令的情况下,基于所述第二操作系统将所述开始播放指令以及所述播放器的显示区域信息传输至所述第一操作系统;
    在所述第一操作系统接收到所述开始播放指令的情况下,基于所述第一操作系统对所述开始播放指令指示的视频文件进行音视频硬件解码;以及
    基于所述第一操作系统在所述显示区域信息指示的显示区域输出解码得到的图像数据,并且通过扬声器输出解码得到的音频数据。
PCT/CN2019/071170 2018-01-10 2019-01-10 视频播放方法及装置、终端设备及计算机可读存储介质 WO2019137437A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP19738554.5A EP3739874A1 (en) 2018-01-10 2019-01-10 Video playback method and device, terminal device and computer readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810022808.8 2018-01-10
CN201810022808.8A CN110022497A (zh) 2018-01-10 2018-01-10 视频播放方法及装置、终端设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
WO2019137437A1 true WO2019137437A1 (zh) 2019-07-18

Family

ID=67187978

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/071170 WO2019137437A1 (zh) 2018-01-10 2019-01-10 视频播放方法及装置、终端设备及计算机可读存储介质

Country Status (3)

Country Link
EP (1) EP3739874A1 (zh)
CN (1) CN110022497A (zh)
WO (1) WO2019137437A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873460A (zh) * 2010-05-31 2010-10-27 江苏中科梦兰电子科技有限公司 一种基于显示分层的系统级多媒体功能扩展方法
CN103237217A (zh) * 2013-04-23 2013-08-07 深圳市京华科讯科技有限公司 基于虚拟化的视频编解码方法
CN103283250A (zh) * 2012-12-13 2013-09-04 华为技术有限公司 一种视频重定向的方法、装置、系统及计算机可读介质
CN106034241A (zh) * 2015-03-19 2016-10-19 华为技术有限公司 一种多媒体重定向的方法、设备和系统
US20170353397A1 (en) * 2016-06-06 2017-12-07 Advanced Micro Devices, Inc. Offloading Execution of an Application by a Network Connected Device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102981894B (zh) * 2011-09-05 2016-07-06 联想(北京)有限公司 显示方法和电子设备
WO2018119955A1 (zh) * 2016-12-29 2018-07-05 深圳前海达闼云端智能科技有限公司 跨系统多媒体数据编解码方法、装置、电子设备和计算机程序产品

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873460A (zh) * 2010-05-31 2010-10-27 江苏中科梦兰电子科技有限公司 一种基于显示分层的系统级多媒体功能扩展方法
CN103283250A (zh) * 2012-12-13 2013-09-04 华为技术有限公司 一种视频重定向的方法、装置、系统及计算机可读介质
CN103237217A (zh) * 2013-04-23 2013-08-07 深圳市京华科讯科技有限公司 基于虚拟化的视频编解码方法
CN106034241A (zh) * 2015-03-19 2016-10-19 华为技术有限公司 一种多媒体重定向的方法、设备和系统
US20170353397A1 (en) * 2016-06-06 2017-12-07 Advanced Micro Devices, Inc. Offloading Execution of an Application by a Network Connected Device

Also Published As

Publication number Publication date
CN110022497A (zh) 2019-07-16
EP3739874A1 (en) 2020-11-18

Similar Documents

Publication Publication Date Title
US10956008B2 (en) Automatic home screen determination based on display device
US8649826B2 (en) Mobile device and control method thereof
US11157959B2 (en) Multimedia information processing method, apparatus and system, and computer storage medium
US10271105B2 (en) Method for playing video, client, and computer storage medium
WO2022199426A1 (zh) 视频的展示方法、装置、电子设备和存储介质
US10187448B2 (en) Remote application control interface
US20170366832A1 (en) Video reproduction apparatus, control method thereof, and computer-readable storage medium storing program
US20170163702A1 (en) Android platform-based multimedia processing method and electronic device
US11962853B2 (en) Computing device upgrading system over a wireless network
WO2017193926A1 (zh) 数据传输方法及装置
US20240089538A1 (en) Port-connected television upgrader device
CN104615432B (zh) 闪屏信息处理方法及客户端
WO2017140226A1 (zh) 视频处理方法及其设备
US11838589B2 (en) Port-connected television upgrader device
WO2022160612A1 (zh) 与车辆的车载系统交互方法、存储介质和移动终端
US9781198B2 (en) Information processing method and electronic device
WO2019137437A1 (zh) 视频播放方法及装置、终端设备及计算机可读存储介质
KR20120124196A (ko) 멀티 소프트웨어 플랫폼 기반의 휴대용 단말기에서 홈스크린 복귀 방법 및 장치
KR102547320B1 (ko) 전자 장치 및 전자 장치의 제어 방법
US11582514B2 (en) Source apparatus and control method therefor
CN108694207B (zh) 一种文件图标的显示方法及系统
WO2020102956A1 (zh) 界面显示方法、装置、计算机可存储介质和电子设备
CN113287092A (zh) 在应用打开操作期间添加数字内容的系统和方法
EP3370474A1 (en) User terminal device and control method therefor
JP5896221B2 (ja) 情報処理方法、情報処理装置、および情報処理システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19738554

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019738554

Country of ref document: EP

Effective date: 20200810