WO2021180224A1 - Display device - Google Patents
Display device Download PDFInfo
- Publication number
- WO2021180224A1 WO2021180224A1 PCT/CN2021/080553 CN2021080553W WO2021180224A1 WO 2021180224 A1 WO2021180224 A1 WO 2021180224A1 CN 2021080553 W CN2021080553 W CN 2021080553W WO 2021180224 A1 WO2021180224 A1 WO 2021180224A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- display
- video
- layer
- rotation
- controller
- Prior art date
Links
- 230000004044 response Effects 0.000 claims description 41
- 230000003068 static effect Effects 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000009466 transformation Effects 0.000 abstract description 5
- 238000000844 transformation Methods 0.000 abstract description 3
- 238000013519 translation Methods 0.000 abstract description 3
- 239000010410 layer Substances 0.000 description 435
- 238000000034 method Methods 0.000 description 147
- 230000008569 process Effects 0.000 description 88
- 238000012545 processing Methods 0.000 description 58
- 238000010586 diagram Methods 0.000 description 23
- 238000004891 communication Methods 0.000 description 22
- 230000033001 locomotion Effects 0.000 description 21
- 230000006870 function Effects 0.000 description 18
- 230000008859 change Effects 0.000 description 16
- 230000000694 effects Effects 0.000 description 14
- 230000003993 interaction Effects 0.000 description 13
- 230000036544 posture Effects 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000002452 interceptive effect Effects 0.000 description 8
- 230000001133 acceleration Effects 0.000 description 7
- 230000005484 gravity Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000003825 pressing Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000006378 damage Effects 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 239000002344 surface layer Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16M—FRAMES, CASINGS OR BEDS OF ENGINES, MACHINES OR APPARATUS, NOT SPECIFIC TO ENGINES, MACHINES OR APPARATUS PROVIDED FOR ELSEWHERE; STANDS; SUPPORTS
- F16M11/00—Stands or trestles as supports for apparatus or articles placed thereon ; Stands for scientific apparatus such as gravitational force meters
- F16M11/02—Heads
- F16M11/18—Heads with mechanism for moving the apparatus relatively to the stand
-
- 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
-
- 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 or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- 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
Definitions
- This application relates to the field of television technology, and in particular to a display device.
- Smart TV has an independent operating system and supports function expansion.
- Various applications can be installed in the smart TV according to user needs, for example, traditional video applications, social applications such as short videos, and reading applications such as comics and books. These applications can use the screen of the smart TV to display application images, and provide rich media resources for the smart TV.
- smart TVs can also exchange data and share resources with different terminals.
- a smart TV can be connected to a mobile phone through wireless communication methods such as local area network, Bluetooth, etc., so as to play resources in the mobile phone or directly cast a screen to display the screen on the mobile phone.
- This application shows a display device, including:
- a rotating component connected to the display, for driving the display to rotate based on the control of the controller
- the controller is configured with a drawing control, the drawing control includes: an image layer drawing control and an image layer drawing control, and is configured to perform the following steps:
- monitoring the state of the display In response to receiving a video play instruction, monitoring the state of the display, the state including: a rotating state and a static state;
- the video frame of the to-be-played video is drawn through the video layer drawing control.
- FIG. 1A is an application scenario diagram of a display device of this application
- FIG. 1B is a rear view of a display device of this application.
- FIG. 2 is a block diagram of the hardware configuration of the control device of the application
- FIG. 3 is a block diagram of the hardware configuration of the display device of this application.
- FIG. 4 is a block diagram of the architecture configuration of the operating system in the storage device of the display device of the present application.
- FIG. 5A is a schematic diagram of media assets in the horizontal screen display direction of the application.
- Figure 5B is a schematic diagram of media assets in the vertical screen display direction of the application.
- Fig. 6 is a flow chart of the operation of the controller during video playback according to a feasible embodiment
- Fig. 7A is a flowchart of a controller in a video playback process provided according to a feasible embodiment
- FIG. 7B is a flowchart of a controller in a video playback process provided according to a feasible embodiment
- FIG. 8 is a flow chart of the operation of the display device during the video playback process according to a feasible embodiment
- FIG. 9 is a change diagram of a picture displayed on a display according to a feasible embodiment.
- FIG. 10 is a flow chart of the operation of the display device during the video playback process according to a feasible embodiment
- FIG. 11 is a change diagram of a picture displayed on a display according to a feasible embodiment
- FIG. 12 is a change diagram of a picture displayed on a display according to a feasible embodiment
- FIG. 13 is a curve showing the relationship between the first rotation angle of the display and the rotation time in the process of the rotation component driving the display to rotate from the vertical screen state to the horizontal screen state;
- FIG. 14 is a flowchart of the operation of the display device during the video playback process according to a feasible embodiment
- FIG. 15 is a change diagram of a picture displayed on a display according to a feasible embodiment
- FIG. 16A is a schematic diagram of the horizontal screen state of the display device of this application.
- Figure 16B is a schematic diagram of the vertical screen state of the display device of the application.
- FIG. 17 is a schematic flowchart of a method for starting a video playback in a portrait state of the application
- FIG. 18 is a schematic diagram of the display method when the application starts to play the video
- FIG. 19 is a schematic diagram of the flow of controlling the video layer to display video data in this application.
- FIG. 20 is a schematic diagram of the application process for controlling the display of a black screen on the graphics layer
- FIG. 21 is a schematic flowchart of a method for closing a video playback in a portrait state of the application.
- Rotating TV is a new type of smart TV, which mainly includes a display and rotating components.
- the display is connected to the bracket or wall through a rotating component, and the placement angle of the display can be adjusted by the rotating component to achieve the purpose of rotation.
- Different monitor placement angles can adapt to animation pages with different aspect ratios.
- the monitor is placed horizontally to display video pages such as movies and TV shows with an aspect ratio of 16:9.
- the video page’s aspect ratio is 9:16 for short videos, comics, etc.
- the horizontally placed display needs to zoom the page and display black areas on both sides of the display. Therefore, the display can be placed vertically by rotating the component to fit a 9:16 ratio video page.
- Rotating TV supports many applications.
- the start-up signal source of the TV can be set to a live broadcast signal, so that the TV directly enters the live broadcast state after being turned on.
- the user can set the power-on signal source to any application through the setting program. Since different applications support different display postures, the posture of the TV when it is turned on must be compatible with the application as the power-on signal source, so that the page corresponding to the power-on signal source application can be displayed normally.
- the user when the user is watching TV, he will adjust the posture of the rotating TV’s display as needed, and keep it in the adjusted posture when shutting down. For example, when a user watches a short video or cartoon on a TV, he switches the screen to a vertical placement state, and shuts down the device in the vertical placement state. Then when the user turns on the next time, the screen posture is in the vertical placement state. If the startup signal source is set to an application that only supports the horizontal placement state, the screen posture does not match the startup signal source application and cannot be displayed correctly. Therefore, this application provides a display device and a display method of an application interface.
- an embodiment of the present application provides a display device, a detail page display method, and computer storage Medium, display device such as rotating TV. It should be noted that the method provided in this embodiment is not only applicable to rotating TVs, but also applicable to other display devices, such as computers and tablet computers.
- module used in the various embodiments of this application can refer to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware or/and software code that can execute related components Function.
- remote control used in the various embodiments of this application refers to a component of an electronic device (such as the display device disclosed in this application), which can generally control the electronic device wirelessly within a short distance.
- the component can generally use infrared and/or radio frequency (RF) signals and/or Bluetooth to connect with electronic devices, and can also include functional modules such as WiFi, wireless USB, Bluetooth, and motion sensors.
- RF radio frequency
- a handheld touch remote control uses a user interface in a touch screen to replace most of the physical built-in hard keys in general remote control devices.
- gesture used in the embodiments of the present application refers to a user's behavior through a change of hand shape or hand movement to express expected ideas, actions, goals, and/or results.
- the term "hardware system” used in the various embodiments of this application may refer to an integrated circuit (IC), printed circuit board (Printed circuit board, PCB) and other mechanical, optical, electrical, and magnetic devices with computing , Control, storage, input and output functions of the physical components.
- the hardware system is also usually referred to as a motherboard or a main chip or a controller.
- FIG. 1A is an application scenario diagram of a display device provided by some embodiments of this application.
- the control device 100 and the display device 200 can communicate in a wired or wireless manner.
- control device 100 is configured to control the display device 200, which can receive operation instructions input by the user, and convert the operation instructions into instructions that the display device 200 can recognize and respond to, and act as an intermediary for the interaction between the user and the display device 200 effect.
- the user operates the channel addition and subtraction keys on the control device 100, and the display device 200 responds to the channel addition and subtraction operations.
- the control device 100 may be a remote controller 100A, including infrared protocol communication or Bluetooth protocol communication, and other short-distance communication methods, etc., to control the display device 200 in a wireless or other wired manner.
- the user can control the display device 200 by inputting user instructions through keys on the remote control, voice input, control panel input, etc.
- the user can control the display device 200 by inputting corresponding control commands through the volume plus and minus keys, channel control keys, up/down/left/right movement keys, voice input keys, menu keys, and power on/off keys on the remote control. Function.
- the control device 100 may also be a smart device, such as a mobile terminal 100B, a tablet computer, a computer, a notebook computer, and the like.
- a smart device such as a mobile terminal 100B, a tablet computer, a computer, a notebook computer, and the like.
- an application program running on a smart device is used to control the display device 200.
- the application can be configured to provide users with various controls through an intuitive user interface (UI) on the screen associated with the smart device.
- UI intuitive user interface
- the mobile terminal 100B may install a software application with the display device 200, realize connection communication through a network communication protocol, and realize the purpose of one-to-one control operation and data communication.
- the mobile terminal 100B can establish a control instruction protocol with the display device 200, and the functions of the physical keys arranged on the remote control 100A can be realized by operating various function keys or virtual controls of the user interface provided on the mobile terminal 100B.
- the audio and video content displayed on the mobile terminal 100B can also be transmitted to the display device 200 to realize the synchronous display function.
- the display device 200 may provide a broadcast receiving function and a network TV function of a computer support function.
- the display device can be implemented as digital TV, Internet TV, Internet Protocol TV (IPTV), and so on.
- the display device 200 may be a liquid crystal display, an organic light emitting display, or a projection device.
- the specific display device type, size and resolution are not limited.
- the display device 200 also performs data communication with the server 300 through a variety of communication methods.
- the display device 200 may be allowed to communicate through a local area network (LAN), a wireless local area network (WLAN), and other networks.
- the server 300 may provide various contents and interactions to the display device 200.
- the display device 200 can send and receive information, such as receiving electronic program guide (EPG) data, receiving software program updates, or accessing a remotely stored digital media library.
- EPG electronic program guide
- the server 300 can be one group or multiple groups, and can be one type or multiple types of servers.
- the server 300 provides other network service content such as video-on-demand and advertising services.
- the display device 200 includes a rotating assembly 276, a controller 250, a display 275, a terminal interface protruding from a gap on the back plate, and a rotating assembly 276 connected to the back plate. 276 can make the display 275 rotate.
- the rotating component 276 can rotate the display screen to the vertical display direction, that is, the state where the vertical side length of the screen is greater than the horizontal side length, or the screen can be rotated to the horizontal display direction, that is, the screen A state where the lateral side length is greater than the vertical side length.
- control device 100 includes a controller 110, a memory 120, a communicator 130, a user input interface 140, a user output interface 150, and a power supply 160.
- the controller 110 includes a random access memory (RAM) 111, a read only memory (ROM) 112, a processor 113, a power-on interface, and a communication bus.
- RAM random access memory
- ROM read only memory
- the controller 110 is used to control the operation and operation of the device 100, as well as the communication and cooperation between internal components, and external and internal data processing functions.
- the controller 110 may control to generate a signal corresponding to the detected interaction, and This signal is sent to the display device 200.
- the memory 120 is used to store various operating programs, data, and applications of the driving and controlling device 100 under the control of the controller 110.
- the memory 120 can store various control signal instructions input by the user.
- the communicator 130 realizes the communication of control signals and data signals with the display device 200 under the control of the controller 110.
- the control device 100 sends a control signal (such as a touch signal or a control signal) to the display device 200 via the communicator 130, and the control device 100 can receive the signal sent by the display device 200 via the communicator 130.
- the communicator 130 may include an infrared signal interface 131 and a radio frequency signal interface 132.
- the user input instruction needs to be converted into an infrared control signal according to the infrared control protocol, and sent to the display device 200 via the infrared sending module.
- a radio frequency signal interface a user input instruction needs to be converted into a digital signal, which is then modulated according to the radio frequency control signal modulation protocol, and then sent to the display device 200 by the radio frequency sending terminal.
- the user input interface 140 may include at least one of a microphone 141, a touch panel 142, a sensor 143, a button 144, etc., so that the user can input user instructions for controlling the display device 200 to the control device through voice, touch, gesture, pressing, etc. 100.
- the user output interface 150 outputs a user instruction received by the user input interface 140 to the display device 200, or outputs an image or voice signal received by the display device 200.
- the user output interface 150 may include an LED interface 151, a vibration interface 152 that generates vibration, a sound output interface 153 that outputs a sound, a display 154 that outputs an image, and the like.
- the remote controller 100A can receive output signals such as audio, video, or data from the user output interface 150, and display the output signals as images on the display 154, as audio on the sound output interface 153, or as output on the vibration interface 152. Vibration form.
- the power supply 160 is used to provide operating power support for each element of the control device 100 under the control of the controller 110.
- the form can be battery and related control circuit.
- the display device 200 may include a tuner and demodulator 210, a communicator 220, a detector 230, an external device interface 240, a controller 250, a memory 260, a user interface 265, a video processor 270, a display 275, Rotating component 276, audio processor 280, audio output interface 285, power supply 290.
- the rotating assembly 276 may include components such as a drive motor and a rotating shaft.
- the driving motor can be connected to the controller 250 and output the rotation angle under the control of the controller 250; one end of the rotating shaft is connected to the power output shaft of the driving motor, and the other end is connected to the display 275, so that the display 275 can be fixedly installed on the rotating assembly 276.
- the wall or bracket On the wall or bracket.
- the rotating assembly 276 may also include other components, such as transmission components, detection components, and so on.
- the transmission component can adjust the rotation speed and torque output by the rotating assembly 276 through a specific transmission ratio, and can be a gear transmission mode
- the detection component can be composed of sensors arranged on the rotating shaft, such as an angle sensor, an attitude sensor, and the like. These sensors can detect parameters such as the angle of rotation of the rotating component 276 and send the detected parameters to the controller 250 so that the controller 250 can determine or adjust the state of the display device 200 according to the detected parameters.
- the rotating assembly 276 may include, but is not limited to, one or more of the aforementioned components.
- the tuner and demodulator 210 which receives broadcast television signals through wired or wireless means, can perform modulation and demodulation processing such as amplification, mixing and resonance, and is used to demodulate the television selected by the user from multiple wireless or cable broadcast television signals
- modulation and demodulation processing such as amplification, mixing and resonance
- the audio and video signals carried in the frequency of the channel, as well as additional information (such as EPG data).
- the tuner and demodulator 210 can be selected by the user and controlled by the controller 250 to respond to the frequency of the television channel selected by the user and the television signal carried by the frequency.
- the tuner and demodulator 210 can receive signals in many ways according to different broadcasting formats of TV signals, such as terrestrial broadcasting, cable broadcasting, satellite broadcasting or Internet broadcasting; and according to different modulation types, it can be digital modulation or analog Modulation method; and according to different types of received TV signals, analog signals and digital signals can be demodulated.
- different broadcasting formats of TV signals such as terrestrial broadcasting, cable broadcasting, satellite broadcasting or Internet broadcasting
- modulation types it can be digital modulation or analog Modulation method
- received TV signals, analog signals and digital signals can be demodulated.
- the tuner demodulator 210 may also be in an external device, such as an external set-top box.
- the set-top box outputs a TV signal after modulation and demodulation, and is input to the display device 200 through the external device interface 240.
- the communicator 220 is a component used to communicate with external devices or external servers according to various types of communication protocols.
- the display device 200 may transmit content data to an external device connected via the communicator 220, or browse and download content data from an external device connected via the communicator 220.
- the communicator 220 may include a network communication protocol module such as a WIFI module 221, a Bluetooth module 222, and a wired Ethernet module 223 or a near field communication protocol module, so that the communicator 220 can receive the control signal of the control device 100 according to the control of the controller 250, and Realize the control signal as WIFI signal, Bluetooth signal, radio frequency signal, etc.
- the detector 230 is a component of the display device 200 for collecting signals from the external environment or interacting with the outside.
- the detector 230 may include a sound collector 231, such as a microphone, which may be used to receive a user's voice, such as a voice signal of a control instruction for the user to control the display device 200; or, it may collect environmental sounds used to identify the type of environmental scene to realize display
- the device 200 can adapt to environmental noise.
- the detector 230 may also include an image collector 232, such as a camera, a camera, etc., which may be used to collect external environment scenes to adaptively change the display parameters of the display device 200; and to collect The attributes of the user or interactive gestures with the user to achieve the function of interaction between the display device and the user.
- an image collector 232 such as a camera, a camera, etc., which may be used to collect external environment scenes to adaptively change the display parameters of the display device 200; and to collect The attributes of the user or interactive gestures with the user to achieve the function of interaction between the display device and the user.
- the detector 230 may further include a light receiver, which is used to collect the ambient light intensity to adapt to changes in display parameters of the display device 200 and so on.
- the detector 230 may also include a temperature sensor.
- the display device 200 may adaptively adjust the display color temperature of the image. Exemplarily, when the temperature is relatively high, the display device 200 can be adjusted to display a colder image color temperature; when the temperature is relatively low, the display device 200 can be adjusted to display a warmer color temperature of the image.
- the external device interface 240 is a component that provides the controller 250 to control data transmission between the display device 200 and external devices.
- the external device interface 240 can be connected to external devices such as set-top boxes, game devices, notebook computers, etc. in a wired/wireless manner, and can receive external devices such as video signals (such as moving images), audio signals (such as music), and additional information (such as EPG). ) And other data.
- the external device interface 240 may include: a high-definition multimedia interface (HDMI) terminal 241, a composite video blanking synchronization (CVBS) terminal 242, an analog or digital component terminal 243, a universal serial bus (USB) terminal 244, and a component (Component) Any one or more of terminals (not provided in the figure), red, green and blue (RGB) terminals (not provided in the figure), etc.
- HDMI high-definition multimedia interface
- CVBS composite video blanking synchronization
- USB universal serial bus
- Component Any one or more of terminals (not provided in the figure), red, green and blue (RGB) terminals (not provided in the figure), etc.
- the controller 250 controls the work of the display device 200 and responds to user operations by running various software control programs (such as an operating system and various application programs) stored on the memory 260.
- various software control programs such as an operating system and various application programs
- the controller 250 includes a random access memory (RAM) 251, a read only memory (ROM) 252, a graphics processor 253, a processor 254, a power-on interface 255, and a communication bus 256.
- RAM random access memory
- ROM read only memory
- the RAM 251, the ROM 252, the graphics processor 253, and the processor 254 power-on interface 255 are connected through the communication bus 256.
- ROM252 used to store various system startup instructions. For example, when the power-on signal is received, the power of the display device 200 starts to start, and the processor 254 runs the system startup instruction in the ROM 252, and copies the operating system stored in the memory 260 to the RAM 251 to start the operating system. After the operating system is started, the processor 254 copies various application programs in the memory 260 to the RAM 251, and then starts to run and start various application programs.
- the graphics processor 253 is used to generate various graphics objects, such as icons, operation menus, and user input instructions to display graphics.
- the graphics processor 253 may include an arithmetic unit, which is used to perform operations by receiving various interactive instructions input by the user, and then display various objects according to the display attributes; and a renderer, which is used to generate various objects obtained based on the arithmetic unit, and perform The rendered result is displayed on the display 275.
- the processor 254 is configured to execute operating system and application program instructions stored in the memory 260. And according to the received user input instructions, to execute various applications, data and content processing, so as to finally display and play various audio and video content.
- the processor 254 may include multiple processors.
- the multiple processors may include a main processor and multiple or one sub-processors.
- the main processor is configured to perform some initialization operations of the display device 200 in the display device preloading mode, and/or, the operation of the animation page in the normal mode.
- the power-on interface 255 may include the first interface to the nth interface. These interfaces may be network interfaces connected to external devices via a network.
- the controller 250 may control the overall operation of the display device 200. For example, in response to receiving a user input command for selecting a GUI object displayed on the display 275, the controller 250 may perform an operation related to the object selected by the user input command.
- the object can be any one of the selectable objects, such as a hyperlink or an icon.
- the operation related to the selected object for example, the operation of displaying the page, document, image, etc. connected to the hyperlink, or the operation of executing the program corresponding to the object.
- the user input command for selecting the GUI object may be a command input through various input devices (for example, a mouse, a keyboard, a touch pad, etc.) connected to the display device 200 or a voice command corresponding to a voice spoken by the user.
- the memory 260 is used to store various types of data, software programs or application programs for driving and controlling the operation of the display device 200.
- the memory 260 may include volatile and/or non-volatile memory.
- the term “memory” includes the memory 260, the RAM 251 and ROM 252 of the controller 250, or the memory card in the display device 200.
- the memory 260 is specifically used to store the operating program that drives the controller 250 in the display device 200; to store various application programs built in the display device 200 and downloaded from external devices by the user; and to store the configuration provided by the display 275 Data such as various GUIs, various objects related to the GUI, and visual effect images of the selector used to select GUI objects.
- the memory 260 is specifically used to store drivers and related data of the tuner and demodulator 210, the communicator 220, the detector 230, the external device interface 240, the video processor 270, the display 275, the audio processor 280, etc.
- external data such as audio and video data
- user data such as key information, voice information, touch information, etc.
- the memory 260 specifically stores software and/or programs for representing an operating system (OS).
- OS operating system
- These software and/or programs may include, for example, a kernel, middleware, application programming interface (API), and/or application.
- the kernel can control or manage system resources and functions implemented by other programs (such as middleware, API or application programs); at the same time, the kernel can provide interfaces to allow middleware, API or application programs to access the controller, To achieve control or management of system resources.
- FIG. 4 exemplarily provides a block diagram of the architecture configuration of the operating system in the memory of the display device 200.
- the operating system architecture consists of the application layer, the middleware layer, and the kernel layer from top to bottom.
- Application layer system built-in applications and non-system-level applications belong to the application layer. Responsible for direct interaction with users.
- the application layer can include multiple applications, such as settings applications, e-post applications, media center applications, and so on. These applications can be implemented as web applications, which are executed based on the WebKit engine, and specifically can be developed and executed based on HTML5, Cascading Style Sheets (CSS) and JavaScript.
- CSS Cascading Style Sheets
- HTML HyperText Markup Language
- HyperText Markup Language Hyper Text Markup Language
- Web pages are described through markup tags. HTML tags are used to describe text, graphics, animations, sounds, and tables. , Links, etc., the browser will read the HTML document, explain the content of the tags in the document, and display it in the form of a web page.
- CSS the full name of Cascading Style Sheets (Cascading Style Sheets), is a computer language used to express the style of HTML files, and can be used to define style structures, such as fonts, colors, and positions. CSS styles can be directly stored in HTML web pages or in separate style files to achieve control over styles in web pages.
- JavaScript is a language used in web page programming, which can be inserted into HTML pages and interpreted and executed by the browser.
- the interaction logic of the web application is implemented through JavaScript.
- JavaScript can encapsulate the JavaScript extension interface through the browser to realize the communication with the kernel layer,
- the middleware layer can provide some standardized interfaces to support the operation of various environments and systems.
- the middleware layer can be implemented as the Multimedia and Hypermedia Information Coding Expert Group (MHEG) of the middleware related to data broadcasting, and can also be implemented as the DLNA middleware of the middleware related to external device communication, and can also be implemented as providing Display the middleware of the browser environment in which each application in the device runs.
- MHEG Multimedia and Hypermedia Information Coding Expert Group
- the kernel layer provides core system services, such as file management, memory management, process management, network management, system security authority management and other services.
- the kernel layer can be implemented as a kernel based on various operating systems, for example, a kernel based on the Linux operating system.
- the kernel layer also provides communication between system software and hardware, and provides device driver services for various hardware, such as: providing display drivers for displays, camera drivers for cameras, button drivers for remote controls, and WIFI modules Provide WiFi driver, audio driver for audio output interface, power management driver for power management (PM) module, etc.
- device driver services for various hardware, such as: providing display drivers for displays, camera drivers for cameras, button drivers for remote controls, and WIFI modules Provide WiFi driver, audio driver for audio output interface, power management driver for power management (PM) module, etc.
- the user interface 265 receives various user interactions. Specifically, it is used to send the input signal of the user to the controller 250, or to transmit the output signal from the controller 250 to the user.
- the remote control 100A may send input signals input by the user, such as a power switch signal, a channel selection signal, and a volume adjustment signal, to the user interface 265, and then the user interface 265 transfers to the controller 250; or the remote control 100A may Receive output signals such as audio, video, or data output from the user interface 265 after the controller 250 processes, and display the received output signal or output the received output signal as audio or vibration.
- the user may input a user command on a graphical user interface (GUI) displayed on the display 275, and the user interface 265 receives the user input command through the GUI.
- GUI graphical user interface
- the user interface 265 may receive user input commands for controlling the position of the selector in the GUI to select different objects or items.
- “user interface” is a medium interface for interaction and information exchange between application programs or operating systems and users, and it realizes the conversion between the internal form of information and the form acceptable to users.
- the commonly used form of the user interface is a graphical user interface (GUI), which refers to a user interface related to computer operations that is displayed in a graphical manner. It can be an icon, window, control and other interface elements displayed on the display screen of an electronic device.
- the control can include icons, controls, menus, tabs, text boxes, dialog boxes, status bars, channel bars, Widgets, etc. Visual interface elements.
- the user may input a user command by inputting a specific sound or gesture, and the user interface 265 recognizes the sound or gesture through the sensor to receive the user input command.
- the video processor 270 is used to receive external video signals, and perform video data processing such as decompression, decoding, scaling, noise reduction, frame rate conversion, resolution conversion, and image synthesis according to the standard codec protocol of the input signal.
- video data processing such as decompression, decoding, scaling, noise reduction, frame rate conversion, resolution conversion, and image synthesis according to the standard codec protocol of the input signal.
- the video signal displayed or played directly on the display 275.
- the video processor 270 includes a demultiplexing module, a video decoding module, an image synthesis module, a frame rate conversion module, a display formatting module, and the like.
- the demultiplexing module is used to demultiplex the input audio and video data stream, such as the input MPEG-2 stream (based on the compression standard of digital storage media moving images and voice), then the demultiplexing module will demultiplex it Multiplexed into video signals and audio signals, etc.
- the video decoding module is used to process the demultiplexed video signal, including decoding and scaling.
- An image synthesis module such as an image synthesizer, is used to superimpose and mix the GUI signal generated by the graphics generator with the zoomed video image according to user input or itself to generate an image signal for display.
- the frame rate conversion module is used to convert the frame rate of the input video, such as converting the frame rate of the input 60Hz video to a frame rate of 120Hz or 240Hz, and the usual format is realized by such as frame interpolation.
- the display formatting module is used to change the signal output by the frame rate conversion module to a signal conforming to the display format such as a display, for example, format the signal output by the frame rate conversion module to output RGB data signals.
- the display 275 is used to receive the image signal input from the video processor 270 to display video content, images, and a menu control interface.
- the displayed video content can be from the video content in the broadcast signal received by the tuner and demodulator 210, or from the video content input by the communicator 220 or the external device interface 240.
- the display 275 simultaneously displays a user manipulation interface UI generated in the display device 200 and used to control the display device 200.
- the display 275 may include a display screen component for presenting a page and a driving component for driving image display.
- the display 275 may also include a projection device and a projection screen.
- the controller 250 can send a control signal to make the rotating component 276 rotate the display 275.
- the audio processor 280 is used to receive external audio signals, and perform decompression and decoding according to the standard codec protocol of the input signal, as well as audio data processing such as noise reduction, digital-to-analog conversion, and amplification processing, and the result can be stored in the microphone 286 The audio signal to be played.
- the audio processor 280 may support various audio formats. Such as MPEG-2, MPEG-4, Advanced Audio Coding (AAC), High Efficiency AAC (HE-AAC) and other formats.
- AAC Advanced Audio Coding
- HE-AAC High Efficiency AAC
- the audio output interface 285 is used to receive the audio signal output by the audio processor 280 under the control of the controller 250.
- the audio output interface 285 may include a microphone 286, or output to an external audio output terminal 287 of a generator of an external device, such as a headset Output terminal.
- the video processor 270 may include one or more chips.
- the audio processor 280 may also include one or more chips.
- the video processor 270 and the audio processor 280 may be separate chips, or may be integrated with the controller 250 in one or more chips.
- the power supply 290 is used to provide power supply support for the display device 200 with power input from an external power supply under the control of the controller 250.
- the power supply 290 may be a built-in power supply circuit installed inside the display device 200, or may be a power supply installed outside the display device 200.
- the display direction may include a horizontal screen display direction and a vertical screen display direction.
- the horizontal display direction refers to the display direction in which the horizontal length (width) of the display 275 is greater than the vertical length (height) when viewed from the front of the display 275;
- the vertical display direction refers to the display direction from the display 275 When viewed from the front, the length (width) in the horizontal direction of the display 275 is smaller than the length (height) in the vertical direction in the display direction.
- the vertical direction in the present application refers to substantially vertical, and the horizontal direction also refers to substantially horizontal.
- the horizontal display direction is mainly used to display horizontal media assets such as TV series and movies, as shown in Figure 5A.
- the operation mode when the display 275 is in the horizontal display orientation may be referred to as the horizontal media viewing mode, and the operation mode when the display 275 is in the vertical display orientation may be referred to as the vertical media viewing mode.
- the controller 250 in the display device 200 is further connected to the server 300 in communication, and is used to call the interface of the server 300 to obtain corresponding data.
- the display 275 in the display device 200 can be driven to rotate by the rotating component 276 and used to display a user interface. In practical applications, the user can control the play mode, play content, etc. of the display device 200 through the control device 100, where the play mode includes a horizontal screen media viewing mode and a vertical screen media viewing mode.
- the vertical screen display direction is mainly used to display vertical media assets such as short videos and comics, as shown in FIG. 5B.
- the display 275 can display a user interface corresponding to the portrait display direction, and has an interface layout and interaction mode corresponding to the portrait display direction.
- the vertical screen media asset viewing mode users can watch short videos, comics and other vertical screen media assets.
- the controller 250 in the display device 200 is further connected to the server 300 in communication, it is possible to obtain the media data corresponding to the vertical screen by calling the interface of the server 300 when the display direction is displayed in the vertical screen.
- the vertical screen display direction is more suitable for playing media assets with a vertical screen ratio of 9:16, for example, short videos shot through terminals such as mobile phones. Since terminal devices such as mobile phones mostly use vertical screen ratios such as 9:16 and 9:18, when the terminal is connected to the display device 200 and the terminal page is displayed through the display device 200, the vertical screen display orientation can avoid transitional zooming of the page , Make full use of the application page of the display 275, and have a better user experience.
- horizontal display direction and vertical display direction are only two different display directions of the display 275, and do not limit the displayed content.
- short videos, cartoons, etc. can still be displayed in the horizontal display direction.
- Vertical media assets; horizontal media assets such as TV series and movies can still be displayed in the vertical screen display direction, but the inconsistent display windows need to be compressed and adjusted in the display direction.
- the display direction of the display 275 is adjusted according to the user's viewing needs. For example, you can control the rotation key on the device 100, or select the rotation option on the UI interface, or input the "rotation" related voice through the voice system to issue a rotation instruction, and the controller 250 will control the rotation component 276 to rotate according to the rotation instruction.
- the controller 250 will control the rotation component 276 to rotate according to the rotation instruction.
- the display device In the process of video playback, the display device needs to perform image quality processing and/or motion compensation on the frame of the video to be played. This requires the display device to draw the video frame to the image quality processing module/or through its Surfaceview (video layer control) Motion compensation module. Therefore, during the video playback process, the display device draws the video frame through the Surfaceview (video layer control). However, when the display is rotating, because the Surfaceview cannot control the rotation of the video frame at any angle, the display direction of the video frame does not match the display direction of the display during the display rotation. The user experience is poor.
- an embodiment of the present application provides a display device, the display device at least includes: a display, a rotating component, and a controller.
- the functions and connection modes of the display, rotating component, and controller can be referred to the above-mentioned embodiments. Go into details.
- Fig. 6 is a flow chart of the operation of the controller during video playback according to a feasible embodiment; the controller is further configured to execute steps S11 and S12.
- S11 monitors the state of the display in response to receiving the video playback instruction, the state includes: rotating state and static state;
- the user can send the video play instruction to the display device.
- the video play instruction may be a video play instruction sent by the user in the form of voice; the sending process of the video play instruction may be: the user outputs the wake-up word in advance, and then outputs the video play instruction, based on the wake-up word between the user and
- the controller 250 establishes a connection, so that the controller 250 can respond to the video playback instruction output by the user. For example, the user inputs the wake-up word "Xiaoju classmate" and the video playback instruction "play XXX video".
- the video play instruction may be a video play instruction sent by the user through the remote control; the sending process of the video play instruction may be: the user touches the relevant controls of the remote control so that the controller 250 can send the corresponding The video playback instruction of the controller 250 can make a corresponding response to the video playback instruction.
- the user can trigger the remote control to send a video playback instruction to the controller 250 by clicking the confirm button of the remote control.
- This embodiment only exemplarily provides two startup modes of the display device. In the actual application process, the sending process of the video playback instruction may be, but not limited to, the above two modes.
- the controller can be provided with corresponding monitoring components, so that the controller can monitor the status of the display.
- an angle monitor may be provided in the controller 250. Accordingly, the controller 250 may monitor the real-time rotation angle of the display 275. When the real-time rotation angle is greater than zero, the display is in a rotating state.
- a gravity acceleration sensor may be provided in the controller 250. By monitoring the information of the gravity sensor in the three directions of the spatial coordinate system (x, y, z), the posture corresponding to the display 275 at any time can be obtained. , According to the posture, you can determine whether the display is in a rotating state or a static state.
- an angular acceleration sensor may be provided in the controller 250, and by monitoring the angle increase value monitored by the angle sensor, it is determined whether the display is in a stationary state or a rotating state.
- the controller may also be provided with other monitors for monitoring the status of the display 275.
- FIG. 7A is a flowchart of the controller during video playback according to a feasible embodiment; it can be seen from the figure that the controller is configured as Steps:
- S21 receives audio and video data
- the controller is used to receive audio and video data
- the audio and video data may include: network audio and video data drawn using the network, pre-downloaded audio and video data and wired audio and video data transmitted through a USB interface.
- Cable audio and video data includes satellite TV signals, V-segment, U-segment TV signals, and other TV signals transmitted by cable stations via microwave (or optical cable).
- This embodiment only exemplarily shows several types of audio and video signals. In the actual application process, the audio and video signals may be, but are not limited to, the above-mentioned types of signals. .
- the controller is provided with a codec, which can decode audio and video data, where the audio and video data can be decoded using a decoding method commonly used in this field. To be too restrictive.
- the subsequent controller needs to transmit audio data to the speaker, so that the speaker can play the audio data.
- the video data needs to be transmitted to the display so that the display can play the video data.
- the embodiment of the present application The central controller synchronizes audio data and video data, so that the time when the audio data reaches the speaker is equal to the time when the video data reaches the display.
- the realization of synchronizing the audio data and the video data may be to add a delay parameter to the audio data, so that the time for the audio data to reach the speaker is equal to the time for the video data to reach the display.
- the implementation manner of synchronizing audio data and video data is, but not limited to the foregoing implementation manner, and the applicant does not make too many limitations here.
- the controller draws the video frame through the Surfaceview, wherein the drawing method of the video frame can be a drawing method commonly used in the art, and the applicant does not make too many limitations here.
- S25 performs motion compensation or image quality processing on video frames
- the process of image quality processing can be the adjustment of some parameters of the video frame, these parameters can be but not limited to contrast, brightness, color, hue, sharpness, hue, color temperature, noise reduction, mpeg noise reduction, point noise reduction , White enhancement, color enhancement, red gain, green gain, blue gain, R-compensation, G-compensation, B-deviation, white balance and other parameters related to image quality processing.
- the image quality processing can also be adding some special effects to the video frame.
- the special effects can be, but not limited to, snow scenes, 3D images, etc. This embodiment only exemplarily introduces two image quality processing methods. In the actual application process, the image quality processing process may be, but is not limited to the above two implementation methods.
- S26 controls the display to display the processed video frame.
- the controller draws the video frame of the video to be played through the Surfaceview, so that when the display is in a static state, the image quality processing or motion compensation can be performed on the video frame to improve the user experience.
- FIG. 7B is a flow chart of the controller in the video playback process according to a feasible embodiment; it can be seen from the figure that the controller is configured as Steps:
- S21 receives audio and video data
- the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
- the synchronization of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
- S24 draws a video frame according to the video data and the rotation angle of the display
- the controller draws the video frame of the video to be played through the Textureview.
- Textureview can support translation, scaling, arbitrary angle rotation, screenshots and other transformations of video frames. Therefore, by drawing video frames through Textureview, the display direction of the drawn video frames can be adapted to the display direction of the display.
- the display device provided in this embodiment to watch a video
- the picture also referred to as a video frame in this application
- the user is always adapted to the display direction of the display, and the user experience is better.
- S26 controls the monitor to display video frames.
- the controller draws the video frame of the to-be-played video through the Textureview.
- Textureview can support translation, scaling, arbitrary angle rotation, screenshots and other transformations of video frames. Therefore, by drawing video frames through Textureview, the display direction of the drawn video frames can be adapted to the display direction of the display.
- the controller always uses Textureview to draw video frames during video playback, the video that the user watches is a video that has not undergone image quality processing.
- the controller draws the video frame of the to-be-played video through the Surfaceview, so that when the display is in a static state, the video frame can be processed for image quality or motion compensation. , To further enhance the user experience.
- Figure 8 is a flow chart of the operation of the display device during video playback according to a feasible embodiment; it can be seen from the figure that during the video playback process, the controller is configured to perform the steps:
- S31 receives audio and video data
- the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
- the first display direction is the display direction of the video to be played
- the second display direction is the display direction of the video to be played.
- the current display direction of the display device is the display direction of the display device ;
- the controller 250 may determine the first display direction by reading the resolution of the video.
- the resolution of the video includes the width and height of the video. If the width is greater than the height, the display direction of the video is the horizontal display direction; if the width is less than the height, the display direction of the video is the vertical display direction.
- the attribute value of the video is also stored in the local memory of the controller 250.
- the controller 250 can determine the display direction of the video by calling the resolution in the attribute value.
- the resolution records the number of pixels contained in the video in the two dimensions of "horizontal" and "vertical". For example, a 1920*1080 video is composed of 1920 pixels in the horizontal direction and 1080 pixels in the vertical direction (2,073,600 pixels in total). Based on the resolution, it can be known whether the video is displayed on the horizontal screen or displayed on the vertical screen.
- the controller 250 determines that the video is a horizontal display video, and the corresponding first display direction is a horizontal display direction. In another feasible embodiment, the controller 250 retrieves the loaded video with a resolution of 768*1024, and the controller 250 determines that the video is a vertical screen display video, and correspondingly, the first display direction is a horizontal display direction .
- the controller 250 may obtain the configuration information of the video being played through the application; then, based on the configuration information, determine whether the first display direction is the horizontal display direction or the vertical display direction.
- the controller 250 is further configured to: read the direction indicator; if the display direction indicator is the first direction indicator, the display direction supported by the video is the horizontal display direction; if the display direction indicator is the second direction indicator, then the video The supported display orientation is the portrait orientation.
- the first identification value and the second identification value can be set according to requirements, and the applicant does not make too many restrictions here.
- the identification value can be added to the configuration information: com.android, H/V/HV, H indicates that the video only supports horizontal display orientation, V indicates that the video only supports vertical display, and HV indicates that the video supports both horizontal display and vertical display. direction.
- the controller 250 retrieves the direction identifier of the video: com.android, H, and the controller 250 determines that the display direction supported by the video is the horizontal display direction. In another feasible embodiment, the controller 250 reads the direction identifier of the video: com.android, V, and the controller 250 determines that the first display direction is the vertical display direction.
- the current display direction (second display direction) of the display 275 can be monitored by a sensor built into the display device 200.
- the display 275 of the display device 200 is provided with a gyroscope, a gravity acceleration sensor, etc., and the posture data of the display 275 relative to the direction of gravity can be determined by measuring the angular acceleration or the direction of gravity.
- the monitored posture data is then compared with the posture data in the horizontal display direction and the vertical display direction, respectively, to determine the display direction where the display 275 is currently located.
- a grating angle sensor, a magnetic field angle sensor, or a sliding resistance angle sensor, etc. can be arranged on the rotating component 276, and the angle rotated by the rotating component 276 can be measured and compared with the angle in the horizontal display direction and the vertical display direction. , To determine the current display direction of the display 275.
- the embodiments of the present application are merely illustrative of several implementation ways of reading the first/second display direction.
- the implementation ways of reading the first/second display direction are not limited to the above-mentioned ones.
- the rotation component In response to the first display direction being different from the second display direction, the rotation component is controlled to drive the display to rotate, so that the display direction of the display after rotation is adapted to the second display direction, and the first rotation angle is read, and the first rotation angle is the display The rotation angle;
- the controller 250 in response to the video playback instruction input by the user, the controller 250 reads the first display direction and the second display direction; if the first display direction is not consistent with the second display direction, the controller 250 controls the rotating component 276 drives the display 275 to rotate, so that the display direction of the display 275 after the rotation is adapted to the first display direction; for example, the controller 250 detects that the current rotation angle of the display 275 is 90 degrees through the angle sensor, then it can determine that the display direction of the display 275 is The display direction of the vertical screen, and when the first display direction is read as the horizontal display direction, the display 275 can be rotated so that the display direction of the rotated display 275 is the vertical display direction.
- the controller 250 detects that the current rotation angle of the display 275 is 90 degrees through the angle sensor, it can determine that the display direction of the display 275 is the horizontal display direction, and when the first display direction is read as the vertical display direction, it can check The display 275 is rotated so that the display direction of the rotated display 275 is the horizontal display direction.
- the controller may be equipped with an angle sensor, and the angle sensor records the first rotation angle in real time.
- the first selected rotation angle is a relative value, which is an angle increased or decreased from the starting point relative to the initial state of the display.
- the controller 250 detects that the current rotation angle of the display 275 is 90 through an angle sensor. Degrees, when the display is rotated to 91 degrees, the first choice of rotation angle is 1 degree. When the display is rotated to 89 degrees, the first choice of rotation angle is also 1 degree.
- the display device is restricted by the rotating component and its component structure during the application process, after rotating a certain angle in a certain direction, it can no longer continue to rotate in that direction. Therefore, if the rotating assembly rotates in one direction each time, the rotating assembly will be damaged after multiple rotations.
- the rotation direction of the display controlled by the controller in this application is opposite to the most recent rotation direction of the display. For example, if the most recent rotation of the display is clockwise, the next time the controller controls the display to rotate counterclockwise. For another example, if the latest rotation direction of the display is counterclockwise, the next time the controller controls the display to rotate clockwise.
- S3412 draws the video frame of the video to be displayed based on the first rotation angle, so that the second rotation angle is equal to the first rotation angle, and the second rotation angle is the rotation angle of the video frame.
- the drawing process can be as follows: when the controller 250 controls the rotating component 276 to drive the display 275 to rotate clockwise, the controller 250 reads the first rotation angle. When the controller needs to draw the first video frame, the controller uses Textureview to read The first rotation angle taken is 0.25 degrees, and Textureview rotates the first video frame by 0.25 degrees counterclockwise. According to the above process, the video frame of the video to be displayed is drawn based on the first rotation angle until the display stops rotating.
- the display is switched between the landscape mode and the portrait mode.
- the preset angle can be set to but not limited to 90 degrees.
- the image quality processing or motion compensation can refer to the above-mentioned embodiments, which will not be repeated here.
- the controller draws the video frame through the Surfaceview, where the drawing method of the video frame may be a drawing method commonly used in the art, and the applicant does not make too many limitations here.
- image quality processing and/or motion compensation are performed on the video frame, where the process of image quality processing and/or motion compensation can adopt image quality processing and/or motion compensation methods commonly used in the field according to requirements, and the applicant has not done this here. Many restrictions.
- the S35 controller display displays the processed video frame.
- FIG. 9 is a change diagram of the picture displayed on the display according to a feasible embodiment
- Embodiment 1 if the display is in a rotating state, the video frame of the to-be-played video is drawn through the image layer drawing control; if the display is in a static state, the video frame of the to-be-played video is drawn through the video layer drawing control.
- the controller switches from the Textureview output video frame to the Surfaceview output video frame.
- the controller does not output any video frame to the display, correspondingly, a flashing black screen will appear on the display.
- Figure 9 for details. It can be seen from Figure 9 that when the display is rotated 90 degrees, the display will flash black screen (corresponding to the screen 12 in Figure 9).
- FIG. 10 is a flowchart of the operation of the display device during video playback according to a feasible embodiment; it can be seen from the figure that during the video playback process, the controller It is also configured to perform the following steps:
- the display stops rotating.
- the controller intercepts the occluded image, and the occluded image is the image displayed on the display when the display stops rotating.
- the controller controls the display to display the occlusion image.
- the occlusion image is located in the upper layer of the video frame. Therefore, when the occlusion image and the video frame exist at the same time, only the occlusion image can be seen from the user's perspective.
- S3415 counts the display time of the occluded image
- the controller takes the time of displaying the occluded image as the starting point of time, and counts the display time of the occluded image in real time.
- the preset still frame time can be configured according to requirements.
- the preset still frame time can be the interval between the first time and the second time.
- the first time corresponds to the last video frame output by Textureview.
- FIG. 11 is a change of the picture displayed on the display according to a feasible embodiment
- Figure 12 is a flow chart of the operation of the display device during video playback according to a feasible embodiment; it can be seen from the figure that during the video playback process, the controller is also configured to perform steps:
- S41 receives audio and video data
- the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
- the controller 250 in response to the video playback instruction input by the user, the controller 250 reads the angle increase value of the display device; if the angle increase value is greater than 0 in response to the angle increase value, the controller 250 controls the rotation component 276 to drive the display 275 to rotate, So that the display direction of the display 275 after rotation is adapted to the first display direction; for example, when the controller 250 detects that the angle increase value of the display 275 is greater than 0 through the acceleration sensor, the first rotation angle is calculated according to the angle increase value.
- the first rotation angle can be calculated in the following manner.
- the controller receives the angle increase value of 0.1 degree every 10 ms, and the corresponding first rotation angle calculated every 10 ms is: 0.1 degree, 0.2 degree, 0.3 degree...up to 90 degrees. .
- S4412 draws the video frame of the video to be displayed based on the first rotation angle, so that the display direction of the video frame is adapted to the display direction of the display.
- the implementation manner of drawing the video frame of the video to be displayed based on the first rotation angle can refer to the foregoing implementation, and will not be repeated here.
- the image quality processing or motion compensation can refer to the above-mentioned embodiments, which will not be repeated here.
- S4414 responds to that the first rotation angle is equal to the preset rotation angle, then intercepts the blocked image, the blocked image is the image displayed on the display when the display stops rotating; S4415 responds to the first rotation angle equals to the preset rotation angle, and counts the display time of the blocked image ;
- the S45 controller display displays the processed video frame.
- the change diagram of the screen displayed on the display can continue to refer to FIG. 11, which is a change diagram of the screen displayed on the display according to a feasible embodiment; it can be seen from FIG.
- the displayed video frame can be rotated with the display during the rotation of the display. The user experience is better.
- the controller will switch the video frame output by Textureview. Until Surfaceview outputs the video frame, during this process, the controller controls the display to show the occluded picture. Therefore, the problem of flashing black screen will not occur in this process.
- FIG. 13 shows the relationship curve between the first rotation angle and the rotation time of the display 275 in the process that the rotation component 276 drives the display 275 to rotate from the vertical screen state to the horizontal screen state.
- the rotation component 276 hits the limit switch, and the rotation angle of the corresponding display 275 fluctuates greatly.
- the video frame drawn based on the first rotation angle will be greatly inclined. Refer to screen 11 in Figure 9 or Figure 11.
- FIG. 14 is a video playback process provided according to a feasible embodiment.
- the operation flow chart of the display device it can be seen from the figure that during the video playback process, the controller is also configured to execute the steps:
- S51 receives audio and video data
- S52 decodes audio and video data
- the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
- S5311 records the rotation time in response to the display starting to rotate, and the rotation time is used to record the length of time the display rotates;
- S5312 generates a predicted angle according to the rotation time and the pre-stored rotation speed
- the rotation speed is generated in advance, and the rotation speed can be directly called when the predicted angle needs to be generated.
- the generation process of the rotation speed can be: the controller is configured to perform steps (1)-(4)
- Step (1) The controller separately records the time T ⁇ ,N required for the display to rotate the first preset angle 275N times;
- the first preset angle can be set according to requirements. In a feasible embodiment, the first preset angle is set to 90 degrees.
- the controller 250 controls the rotation of the display, and at the same time records the time T 90,1 required for the display 275 to rotate 90 degrees;
- Second rotation the controller 250 controls the rotation of the display, and at the same time records the time T 90,2 required for the display 275 to rotate 90 degrees;
- the controller 250 controls the rotation of the display, and at the same time records the time T 90,3 required for the display 275 to rotate 90 degrees;
- the controller 250 controls the rotation of the display, and at the same time records the time T 90,4 required for the display 275 to rotate 90 degrees;
- Nth rotation The controller 250 controls the rotation of the display, and at the same time records the time T 90,N required for the display 275 to rotate 90 degrees.
- Step (2) The controller counts the probability of occurrence at each time
- the controller 250 counts the occurrence probability of T ⁇ ,1 , T ⁇ ,2 ... T ⁇ ,N.
- Step (3) The controller screens out the time when the probability is greater than the preset probability as the target time
- the preset probability can be set according to requirements, wherein the higher the value of the preset probability, the more accurate the corresponding calculation result.
- Step (4) Calculate the rotation speed according to the first preset angle and the target time
- the rotation speed can be calculated according to the following formula:
- V is the rotation speed
- ⁇ is the first preset angle
- T ⁇ , N is the target time.
- ⁇ 30 degrees, calculated according to the above method:
- ⁇ 90 degrees, calculated according to the above method:
- the implementation manner of drawing the video frame based on the drawing angle can refer to the foregoing implementation manner of drawing the video frame based on the first rotation angle, which will not be repeated here.
- S5314 intercepts the blocked image in response to the display stop rotating
- S5315 draws the video frame of the video to be played through the video layer drawing control, and performs image quality processing or motion compensation on the video frame.
- the S54 controller display displays the processed video frame.
- the predicted rotation angle is calculated based on the rotation time and the rotation speed.
- the predicted angle is not affected by the actual rotation angle of the display, even if the display touches the limit during the rotation.
- the controller can also obtain an appropriate predicted angle based on the current rotation time and rotation speed.
- the prediction angle increases uniformly with the increase of time, so that the video screen configured based on the prediction angle rotates at a uniform speed with the increase of time. In this process, the video screen changes smoothly, and the user experience is better.
- the change of the picture displayed on the display can be seen in FIG. 15.
- FIG. 15 the change of the picture displayed on the display can be seen in FIG. 15.
- the displayed video frame can be rotated along with the display during the rotation of the display.
- the controller switches from the Textureview output video frame to the Surfaceview output video frame.
- the controller controls the display to show the occluded picture, so there will be no flashing black screen during this process.
- an instruction can be issued by the controller 250 to control the driving motor of the rotating assembly 276 to rotate a preset angle according to the direction indicated by the instruction, so as to drive the display 275 to rotate to different rotation states.
- the rotation state may include a horizontal screen state and a vertical screen state, where the horizontal screen state means that the long side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the short side is perpendicular to the ground (or horizontal plane), as shown in FIG. 16A As shown; the vertical screen state means that the short side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the long side is perpendicular to the ground (or horizontal plane) as shown in FIG. 16B.
- the horizontal screen state is more suitable for playing media assets with a horizontal screen ratio of 16:9, 4:3, etc., such as regular video resources such as movies and TV shows.
- the vertical screen state is more suitable for playing media assets with a vertical screen ratio of 9:16, 3:4, etc., for example, short videos, comics, etc. shot through terminals such as mobile phones.
- the horizontal screen state is mainly used to display horizontal media assets such as TV series and movies
- the vertical screen state is mainly used to display vertical media assets such as short videos and comics
- the above-mentioned horizontal screen state and vertical screen state are only two types. Different display states do not limit the displayed content. For example, vertical media assets such as short videos and comics can still be displayed in the horizontal screen state; horizontal media assets such as TV series and movies can still be displayed in the vertical screen state, but the inconsistent display window needs to be zoomed in this state. Adjustment.
- Different rotation states correspond to different rotation angles of the rotating assembly 276.
- the rotation angle of the rotating component 276 is defined as 0 degrees when the display 275 is in the horizontal screen state
- the rotation angle of the rotating component 276 when the display 275 is in the vertical screen state is 90 degrees (or -90 degrees).
- the rotating component 276 can also drive the display 275 to rotate at any angle, for example, a 180-degree inverted screen state.
- the display 275 needs to be automatically rotated to adapt to different forms of video resources. For example, when the display 275 is in the horizontal screen state, the user chooses to play vertical screen media assets such as short videos.
- the operating system of the display device 200 can detect that the aspect ratio of the video resource is less than 1, and the current screen aspect ratio of the display 275 is greater than 1, that is, it is determined that the current rotation state does not match the video resource, thereby automatically sending control to the rotation component 276 Instruct it to drive the display 275 to rotate 90 degrees clockwise (or counterclockwise) to adjust the display 275 to the vertical screen state.
- the display device 200 may also perform image quality processing on the video image through an image quality adjustment algorithm.
- the image quality processing may include processing the image on each frame of the video picture, such as color correction, color adjustment, etc., and may also include processing the multi-frame data of the video picture, such as frame interpolation algorithm, motion compensation, etc.
- image quality processing the image display quality can be further improved, so as to have a better viewing experience under the same equipment configuration and without increasing the size of the video source resource.
- multiple display levels are configured in the system framework of the display device 200, such as a video layer (Video layer), a graphics layer (surface layer), and so on.
- the video layer refers to the display level used to present the play screen on the display device 200 after the user plays the media assets, and may also be referred to as the image quality layer of the display device 200.
- the playback screen corresponding to the media assets can be displayed in the image quality layer.
- the graphics layer is used to provide a display level of interactive operations for users, and may also be referred to as a UI (User Interface) layer of the display device 200.
- the video layer can perform image quality processing on the displayed image
- the graphics layer can perform post-adjustment of the displayed image, such as rotation, zoom, and so on.
- the graphics layer as the UI layer can also add various interactive controls to the display screen, such as controlling the homepage, so as to manually adjust the screen.
- the rotating assembly 276 cannot quickly rotate the display 275 to a preset angle. Therefore, the user needs to wait for a certain period of time to be normal during the rotation of the display 275. Watch video resources. For example, it takes 10-30 seconds for the display 275 to rotate from the horizontal screen state to the vertical screen state. During this time, as the display 275 rotates, the image originally presented on the display 275 will be tilted until the display 275 is completely rotated to After the vertical screen state (or after rotating to a preset angle), the display screen can be adjusted to rotate and fill the screen. It can be seen that during this period, the user needs to watch the tilted picture for a long time, which seriously affects the user experience.
- the display screen it is possible to rotate the display screen while rotating the display 275, so that the display screen is always in a positive state, so that the user can view the display screen normally during the process of rotating the display 275.
- the screen in the video layer can be intercepted, and the intercepted screen can be rotated and zoomed, and then sent to the graphics layer for display.
- the processed display screen can be Keep it in a state where it is always shown to the user.
- the image in the video layer can be intercepted and rotated 30 degrees counterclockwise so that the screen is displayed on the graphics layer at an angle of 30 degrees counterclockwise to offset the rotation angle of the display 275. .
- the viewing angle of the user is in the forward display state.
- the above method can also be used to complete the display in the vertical screen state.
- the playback interface only supports the horizontal screen state.
- the image can be captured through the video layer, and then the image can be scaled, cropped, and filled to form a vertical screen. Display the scaled screen, so that the processed screen is displayed on the graphics layer.
- the video data played by the display device 200 includes video data for presenting a display screen and audio data for presenting sound. Since only the video data in the video layer can be intercepted and displayed on the graphics layer, the audio data still needs to be output from the original channel, that is, the video data still needs to be played in the video layer to output the audio data.
- starting video playback will be affected by factors such as hardware performance, application decoding efficiency, etc., and there will be picture delays, making the video data sent to the graphics layer for the first time. Cannot be obtained in time, and the video layer is already displaying the screen content. In this case, when starting to play a video in portrait mode, the screen in the video layer will flash first, and then the graphics layer screen will be displayed.
- some embodiments of the present application provide a video playback method in a portrait mode.
- the method may be applied to the display device 200, where the display device 200 may include a display 275, a rotating component 276, and a controller 250.
- the method can be configured in the controller 250 in the form of a control program to control the display screen control when starting to play the video. As shown in Figure 17, the method includes the following steps:
- S171 Acquire a start playing instruction input by the user.
- the display device 200 may obtain the video data through the server 300 or a local resource and a third-party resource platform, and decode it through a player in the display device 200 to present the specific screen content corresponding to the video data on the display 275.
- the user can input an instruction for starting to play the video through different interactive actions.
- the user can interactively enter the application list interface or the media asset selection interface through the buttons on the control device 100 (such as the remote control), and use the "up, down, left, and right" keys to adjust in the application list interface or the media asset selection interface.
- Focus cursor position After the focus cursor is positioned on the application icon such as " ⁇ Video” or any media resource icon, press the "OK/OK" key to input the start playing instruction to start playing the video data.
- the user can also input a control instruction for starting to play video data in other ways.
- the user can directly click and touch on the position of the icon corresponding to the video data in the application list interface or the media asset selection interface to play the corresponding video data.
- the user can control the display device 200 to start playing video data by inputting voice instructions such as "play "XX", "I want to watch "XX"".
- the display device 200 may acquire video data from the corresponding video source. For example, the display device 200 can retrieve the local video data stored in the memory 260 after receiving the start playback instruction; the display device 200 can also form a data acquisition instruction after receiving the start playback instruction, and send the data acquisition instruction To the server 300 or the third-party resource platform, the server 300 or the third-party resource platform may feed back the video data to the display device 200 according to the data acquisition instruction.
- the video data can be decoded by the player to form a specific video picture, so that the specific video picture is played through the video layer.
- video data and audio data can generally be obtained after decoding, where the video data can form a specific picture through the video layer for display on the display 275.
- the audio data can output corresponding sound through an audio output device built-in or externally connected to the display device 200 to play the audio data.
- the display process of video data and audio data must be synchronized.
- the playback of video data through the video layer refers to the process of displaying the video on the video layer after decoding the video, and does not include the process of presenting the final picture on the display 275.
- the final picture presented on the display 275 is formed by superimposing multiple display levels, and the video layer is only one of the multiple display levels.
- S173 Intercept an image frame from the video layer, and send the intercepted image frame to the graphics layer.
- the screen of the video layer needs to be intercepted, and after processing such as rotation and zooming, it is displayed on the graphics layer. Since the graphics layer is displayed on the upper layer of the video layer, the screens in the graphics layer will block the screens of the video layer, so that the displayed content viewed by the user is the content in the graphics layer after transformation.
- the vertical screen state is a state that is rotated 90° clockwise relative to the horizontal screen state.
- each frame of image in the video layer needs to be captured, and the captured image is rotated counterclockwise. 90°, zoom in and out at the same time, to adapt to the display window form of the vertical screen state.
- the video layer should continue to display the video images during the video playback process.
- the process of processing the intercepted image picture may also include adding a filling area to the image picture.
- the filled area may be to add a pure color picture to the edge area outside the effective content in the image picture, so as to block the picture content in the video layer through the pure color picture.
- the graphics layer After sending the intercepted image screen to the graphics layer, the graphics layer can display the processed intercepted screen. Since the image in the video layer needs to be rotated, zoomed, filled, etc. after being intercepted, the process of intercepting, processing, and sending to the graphics layer will take a certain amount of time before it can be displayed in the graphics layer. For a period of time after starting to play, no specific pictures have been displayed in the graphics layer, but the corresponding pictures have been displayed in the video layer, so that the display 275 displays the pictures in the video layer during this period of time, and a splash screen problem occurs.
- the graphics layer by controlling the graphics layer to display a black screen at the beginning of the video playback stage, the video layer has already displayed the played video content, and the graphics layer is slow to obtain the video frame so that there is no video content, resulting in flashing video The problem with the video picture in the layer.
- the step of playing video data through the video layer further includes:
- S203 Decode the video data by the player to play a picture corresponding to the video data on the video layer.
- the controller 250 can parse the start play instruction, obtain the specified application package name information therein, and use the specified application package name.
- Information starts running applications that can play video data.
- the application program refers to a system application or a third-party application that can be installed in the display device 200, and can be expressed in different forms according to the operating system platform of the display device 200, for example, an APK based on the Android system.
- the player and video layer can be created through the application.
- the APK creates a player and the APK creates a video window, that is, a video layer (surfaceview), so that the video data to be played is decoded by the player, so as to play a picture corresponding to the video data on the video layer.
- the user selects the "Juhaokan” application in the application program interface, and after pressing the "OK/OK” button on the remote control, starts and runs the Juhaokan application APK, and then selects any media asset icon in the application interface. Start video data playback.
- the APK creates a player and a video layer according to the video playback program, so that the selected media asset data is decoded by the player, and the decoded picture is displayed on the video layer.
- the rotation state includes a horizontal screen state and a vertical screen state.
- the video layer can be displayed according to the original orientation of the video data, while in the vertical screen state, the picture formed in the video layer can be rotated 90° clockwise to adapt to the vertical screen. state.
- the screen rotation operation in the vertical screen state is set during the processing after the video layer screen is captured, so in order to prevent the final presented screen from rotating by 90°.
- the step of creating the player and the video layer through the application program further includes:
- the created video layer can be represented by setting mark information. For example, after the video window is created, the APK sets the flag information flags1 and passes it to the video layer (surfaceview).
- the APK then detects the rotation state of the display 275.
- the surfaceview controls the corresponding picture in the video layer according to the flag information flags1 set by the application, and no longer follows the display
- the rotation angle of 275 (vertical screen 90 degrees) is rotated to avoid the abnormal display problem of multiple rotations of 90 degrees in the display direction of the video content.
- the detection of the rotation state can be completed by devices such as a gravity acceleration sensor built in the display device 200 and an angle sensor provided on the rotation component 276.
- a gravity acceleration sensor built in the display device 200
- an angle sensor provided on the rotation component 276.
- it can be preset that the rotation angle of the display 275 in the landscape state is 0, and the angle sensor detects that the rotation angle of the rotation component 276 is 90°, and it can be determined that the current display 275 is in the portrait state.
- the image screen is also taken from the video layer and adjusted to be displayed on the graphics layer.
- the rotation component 276 is generally rotated. After a certain angle, the rotation of the image frame is automatically completed. Therefore, during the entire rotation of the display 275, the manner in which the video layer frame rotates following the rotation angle of the display 275 should be stopped. That is, in some embodiments, when it is detected that the rotation angle of the rotation component 276 changes, the control of the non-rotation angle of the picture of the video layer according to the first mark information may be executed.
- the step of controlling the graphics layer to display a black screen further includes:
- a graphics layer can be created, and the second flag information can be set for the graphics layer, that is, the APK sets the flag information flags2, and transmits it to the surface (graphic layer).
- the received image frame can be detected through the graphic layer, that is, whether an image frame that is intercepted from the video layer and processed by the image is received. If the graphics layer receives the image frame, it can directly display the received frame; if the graphics layer does not receive the image frame, it can display a black screen before displaying the image frame to cover the frame in the video layer.
- the apk sends an instruction a to the interception service to start the interception service to create a surface (graphics layer) through the interception service.
- the interception service also intercepts the decoded video data in real time and sends it to the graphics layer for display.
- sufaceflinger detects that no video data has been sent to the corresponding graphics layer, it will control the graphics layer to display a black screen according to the flag information flags2 set by the previously received application. This avoids the problem of flashing the video image of the video layer when the video layer has already displayed the played video content, and the graphics layer has no video content due to the slow acquisition of video frames.
- the player has a life cycle state, so it can also detect the state of the player during the life cycle, and set the first mark information for the video layer according to the state of the player. And create a graphics layer.
- the APK detects that the life cycle of the player is before the prepared state, the APK sets the flag information flags2 and passes it to the surface (graphics layer); and when the APK detects that the life cycle of the player is in the prepared state, the APK passes to The interception service sends instruction a to create a surface (graphics layer).
- the image in the video layer needs to be intercepted, and the intercepted image needs to be adjusted for display on the graphics layer, in some embodiments, the image can be intercepted as follows, that is, from the The steps of capturing an image frame at the video layer further include:
- S311 Create an interception service
- S312 Perform image quality processing on the video data to obtain an image frame
- S313 Invoke the interception service to intercept the image screen.
- the interception service is used to intercept the video frame data.
- the interception service can also be created when the system is started and initialized, and when the display screen needs to be rotated, the service is called to intercept the video layer data in real time and send it to the graphics layer for display. .
- the video data can also be processed for image quality through the video layer to obtain an image.
- the image screen may have a higher frame rate and/or different image screen effects from the original image to be displayed.
- the interception frequency of the interception service can be set to be greater than 25 frames/second. In order to obtain a better display effect, the interception frequency can be appropriately increased. For example, the interception frequency of the interception service can be set equal to the screen refresh rate of the display 275 at 60 Hz.
- the created interception service can be invoked, and the image image after image quality processing can be obtained in the video layer.
- the interception service can intercept frame by frame to obtain the same number of frames as the original image.
- the interception service can also intercept the frame at intervals to reduce the number of interception and image processing under the premise of meeting the video fluency, and alleviate the problem of the display device 200. Processing load.
- the step of sending the captured image screen to the graphics layer further includes:
- S322 Rotate and/or zoom the captured image frame according to the display rotation information to obtain an intermediate image
- the intermediate image refers to the image frame presented to the user during the rotation of the display 275.
- the intermediate image can be displayed in the graphics layer. Therefore, in order to form the intermediate image, the controller 250 can obtain the display rotation information through the rotation component 276 in real time, that is, obtain the rotation angle state of the display 275 at any time. Then, according to the display rotation information, perform adjustment processing such as rotation and/or zooming of the intercepted image to adjust the image to a form that can adapt to the current 275 corner state of the display, and finally send the adjusted intermediate image to the graphics layer for display , To maintain the positive display.
- some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250.
- the display 275 is configured to present a user interface
- the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state
- the controller 250 is configured to execute The following program steps:
- S173 Intercept an image frame from the video layer, and send the intercepted image frame to a graphics layer, where the graphics layer is displayed on an upper layer of the video layer;
- the display device 200 and the video playback method in the vertical screen state can play video data through the video layer after obtaining the user input start playback instruction, and capture the image screen from the video layer, and Send the intercepted image screen to the graphics layer.
- control the graphics layer to display a black screen first.
- After the graphics layer receives the image screen continue to display the image screen on the graphics layer.
- the method can control the graphics layer to display a black screen picture before playing the video, and alleviate the splash screen problem caused by the different starting speeds of the video layer and the graphics layer.
- the foregoing embodiment provides that when starting to play a video, the black screen state is displayed by controlling the graphics layer to alleviate the problem of screen flickering during startup caused by different startup speeds.
- the closing speeds of the graphics layer and the video layer are also different, which will cause the display device 200 to first close the graphics layer and then close the video layer. Therefore, after closing the graphics layer , The problem of the flickering screen may reappear in the display 275.
- a method for playing a video in a portrait mode is also provided, which is applied to the display control of the display device 200 when the video is turned off to play. As shown in Figure 21, the method includes the following steps:
- S213 Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected.
- the controller 250 can first execute the program to close the video layer after receiving the closing playback instruction, and continue to capture images from the video layer during the execution of the program , And sent to the graphics layer for display, to maintain the graphics layer has a picture. Until the callback information that the video layer is closed is detected, stop capturing the image frame and sending the captured image frame to the graphics layer.
- the method further includes:
- S503 Stop acquiring decoded video data after detecting the callback of completion of the player release.
- the controller 250 may further detect the callback information of the completion of the video layer closing, so as to release the player after detecting the callback of the completion of the video layer closing, and then detect the completion of the player release. Callback information, so that after detecting the completion of the callback of the player release, stop obtaining the decoded video data.
- the apk will first receive the message of the return button of the remote control to input a command to turn off the playback. And according to the command to close the playback, apk destroys the current video playback window surfaceview; apk releases the player after receiving the callback of completion of surfaceview destruction; apk sends command d to the service after receiving the callback of completion of the player release, and use To control the interception service to stop intercepting the decoded video data. Therefore, after the player is released, stop obtaining the decoded video data to ensure that the video layer will not flash when the video exits.
- some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250.
- the display 275 is configured to present a user interface
- the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state
- the controller 250 is configured to execute The following program steps:
- S213 Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected, and the graphics layer is displayed on the upper layer of the video layer.
- the display device 200 and the video playback method in the vertical screen state can first execute the closing of the video layer after obtaining the user's input to close the playback instruction, and continue from the video layer during the execution of the closing of the video layer
- the video layer intercepts the image frame, and stops sending the intercepted image frame to the graphics layer after detecting the callback of the completion of the closing of the video layer.
- the method can delay the closing of the graphics layer when the user performs the action of closing the video playback, so that the graphics layer and the video layer are closed synchronously, so as to alleviate the problem of flickering screen when the video is closed.
- an instruction can be issued by the controller 250 to control the driving motor of the rotating assembly 276 to rotate a preset angle according to the direction indicated by the instruction, so as to drive the display 275 to rotate to different rotation states.
- the rotation state may include a horizontal screen state and a vertical screen state, where the horizontal screen state means that the long side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the short side is perpendicular to the ground (or horizontal plane), as shown in FIG. 16A As shown; the vertical screen state means that the short side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the long side is perpendicular to the ground (or horizontal plane) as shown in FIG. 16B.
- the horizontal screen state is more suitable for playing media assets with a horizontal screen ratio of 16:9, 4:3, etc., such as regular video resources such as movies and TV shows.
- the vertical screen state is more suitable for playing media assets with a vertical screen ratio of 9:16, 3:4, etc., for example, short videos, comics, etc. shot through terminals such as mobile phones.
- the horizontal screen state is mainly used to display horizontal media assets such as TV series and movies
- the vertical screen state is mainly used to display vertical media assets such as short videos and comics
- the above-mentioned horizontal screen state and vertical screen state are only two types. Different display states do not limit the displayed content. For example, vertical media assets such as short videos and comics can still be displayed in the horizontal screen state; horizontal media assets such as TV series and movies can still be displayed in the vertical screen state, but the inconsistent display window needs to be zoomed in this state. Adjustment.
- Different rotation states correspond to different rotation angles of the rotating assembly 276.
- the rotation angle of the rotating component 276 is defined as 0 degrees when the display 275 is in the horizontal screen state
- the rotation angle of the rotating component 276 when the display 275 is in the vertical screen state is 90 degrees (or -90 degrees).
- the rotating component 276 can also drive the display 275 to rotate at any angle, for example, a 180-degree inverted screen state.
- the display 275 needs to be automatically rotated to adapt to different forms of video resources. For example, when the display 275 is in the horizontal screen state, the user chooses to play vertical screen media assets such as short videos.
- the operating system of the display device 200 can detect that the aspect ratio of the video resource is less than 1, and the current screen aspect ratio of the display 275 is greater than 1, that is, it is determined that the current rotation state does not match the video resource, thereby automatically sending control to the rotation component 276 Instruct it to drive the display 275 to rotate 90 degrees clockwise (or counterclockwise) to adjust the display 275 to the vertical screen state.
- the display device 200 When the display device 200 displays a video image, it can also perform image quality processing on the video image through an image quality adjustment algorithm.
- the image quality processing may include processing the image on each frame of the video picture, such as color correction, color adjustment, etc., and may also include processing the multi-frame data of the video picture, such as frame interpolation algorithm, motion compensation, etc.
- image quality processing the image display quality can be further improved, so as to have a better viewing experience under the same equipment configuration and without increasing the size of the video source resource.
- multiple display levels are configured in the system framework of the display device 200, such as a video layer (Video layer), a graphics layer (surface layer), and so on.
- the video layer refers to the display level used to present the play screen on the display device 200 after the user plays the media assets, and may also be referred to as the image quality layer of the display device 200.
- the playback screen corresponding to the media assets can be displayed in the image quality layer.
- the graphics layer is used to provide a display level of interactive operations for users, and may also be referred to as a UI (User Interface) layer of the display device 200.
- the video layer can perform image quality processing on the displayed image
- the graphics layer can perform post-adjustment of the displayed image, such as rotation, zoom, and so on.
- the graphics layer as the UI layer can also add various interactive controls to the display screen, such as controlling the homepage, so as to manually adjust the screen.
- the rotating assembly 276 cannot quickly rotate the display 275 to a preset angle. Therefore, the user needs to wait for a certain period of time to be normal during the rotation of the display 275. Watch video resources. For example, it takes 10-30 seconds for the display 275 to rotate from the horizontal screen state to the vertical screen state. During this time, as the display 275 rotates, the image originally presented on the display 275 will be tilted until the display 275 is completely rotated to After the vertical screen state (or after rotating to a preset angle), the display screen can be adjusted to rotate and fill the screen. It can be seen that during this period, the user needs to watch the tilted picture for a long time, which seriously affects the user experience.
- the display screen it is possible to rotate the display screen while rotating the display 275, so that the display screen is always in a positive state, so that the user can view the display screen normally during the process of rotating the display 275.
- the screen in the video layer can be intercepted, and the intercepted screen can be rotated and zoomed, and then sent to the graphics layer for display.
- the processed display screen can be Keep it in a state where it is always shown to the user.
- the image in the video layer can be intercepted and rotated 30 degrees counterclockwise so that the screen is displayed on the graphics layer at an angle of 30 degrees counterclockwise to offset the rotation angle of the display 275. .
- the viewing angle of the user is in the forward display state.
- the above method can also be used to complete the display in the vertical screen state.
- the playback interface only supports the horizontal screen state.
- the image can be captured through the video layer, and then the image can be scaled, cropped, and filled to form a vertical screen. Display the scaled screen, so that the processed screen is displayed on the graphics layer.
- the video data played by the display device 200 includes video data for presenting a display screen and audio data for presenting sound. Since only the video data in the video layer can be intercepted and displayed on the graphics layer, the audio data still needs to be output from the original channel, that is, the video data still needs to be played in the video layer to output the audio data.
- starting video playback will be affected by factors such as hardware performance, application decoding efficiency, etc., and there will be picture delays, making the video data sent to the graphics layer for the first time. Cannot be obtained in time, and the video layer is already displaying the screen content. In this case, when starting to play a video in portrait mode, the screen in the video layer will flash first, and then the graphics layer screen will be displayed.
- some embodiments of the present application provide a video playback method in a portrait mode.
- the method may be applied to the display device 200, where the display device 200 may include a display 275, a rotating component 276, and a controller 250.
- the method can be configured in the controller 250 in the form of a control program to control the display screen control when starting to play the video. As shown in Figure 17, the method includes the following steps:
- S171 Acquire a start playing instruction input by the user.
- the display device 200 may obtain the video data through the server 300 or a local resource and a third-party resource platform, and decode it through a player in the display device 200 to present the specific screen content corresponding to the video data on the display 275.
- the user can input an instruction for starting to play a video through different interactive actions.
- the user can interactively enter the application list interface or the media asset selection interface through the buttons on the control device 100 (such as the remote control), and use the "up, down, left, and right" keys to adjust in the application list interface or the media asset selection interface.
- Focus cursor position After the focus cursor is positioned on the application icon such as " ⁇ Video” or any media resource icon, press the "OK/OK" key to input the start playing instruction to start playing the video data.
- the user can also input a control instruction for starting to play video data in other ways.
- the user can directly click the touch on the position of the icon corresponding to the video data in the application list interface or the media asset selection interface to play the corresponding video data.
- the user can control the display device 200 to start playing video data by inputting voice instructions such as "play "XX", "I want to watch "XX"".
- the display device 200 may acquire video data from the corresponding video source. For example, the display device 200 can retrieve the local video data stored in the memory 260 after receiving the start playback instruction; the display device 200 can also form a data acquisition instruction after receiving the start playback instruction, and send the data acquisition instruction To the server 300 or the third-party resource platform, the server 300 or the third-party resource platform may feed back the video data to the display device 200 according to the data acquisition instruction.
- the video data can be decoded by the player to form a specific video picture, so that the specific video picture is played through the video layer.
- video data and audio data can generally be obtained after decoding, where the video data can form a specific picture through the video layer for display on the display 275.
- the audio data can output corresponding sound through an audio output device built-in or externally connected to the display device 200 to play the audio data.
- the display process of video data and audio data must be synchronized.
- the playback of video data through the video layer refers to the process of displaying the video on the video layer after decoding the video, and does not include the process of presenting the final picture on the display 275.
- the final picture presented on the display 275 is formed by superimposing multiple display levels, and the video layer is only one of the multiple display levels.
- S173 Intercept an image frame from the video layer, and send the intercepted image frame to the graphics layer.
- the screen of the video layer needs to be intercepted, and after processing such as rotation and zooming, it is displayed on the graphics layer. Since the graphics layer is displayed on the upper layer of the video layer, the screens in the graphics layer will block the screens of the video layer, so that the displayed content viewed by the user is the content in the graphics layer after transformation.
- the vertical screen state is a state that is rotated 90° clockwise relative to the horizontal screen state.
- each frame of image in the video layer needs to be captured, and the captured image is rotated counterclockwise. 90°, zoom in and out at the same time, to adapt to the display window form of the vertical screen state.
- the video layer should continue to display the video images during the video playback process.
- the process of processing the intercepted image picture may also include adding a filling area to the image picture.
- the filled area may be to add a pure color picture to the edge area outside the effective content in the image picture, so as to block the picture content in the video layer through the pure color picture.
- the graphics layer After sending the intercepted image screen to the graphics layer, the graphics layer can display the processed intercepted screen. Since the image in the video layer needs to be rotated, zoomed, filled, etc. after being intercepted, the process of intercepting, processing, and sending to the graphics layer will take a certain amount of time before it can be displayed in the graphics layer. For a period of time after starting to play, no specific pictures have been displayed in the graphics layer, but the corresponding pictures have been displayed in the video layer, so that the display 275 displays the pictures in the video layer during this period of time, and a splash screen problem occurs.
- the graphics layer by controlling the graphics layer to display a black screen at the beginning of the video playback stage, the video layer has already displayed the played video content, and the graphics layer is slow to obtain the video frame so that there is no video content, resulting in flashing video The problem with the video picture in the layer.
- the step of playing video data through the video layer further includes:
- S203 Decode the video data by the player to play a picture corresponding to the video data on the video layer.
- the controller 250 can parse the start play instruction, obtain the specified application package name information therein, and use the specified application package name.
- Information starts running applications that can play video data.
- the application program refers to a system application or a third-party application that can be installed in the display device 200, and may be expressed in different forms according to the operating system platform of the display device 200, for example, an APK based on the Android system.
- the player and video layer can be created through the application.
- the APK creates a player and the APK creates a video window, that is, a video layer (surfaceview), so that the video data to be played is decoded by the player, so as to play a picture corresponding to the video data on the video layer.
- the user selects the "Juhaokan” application in the application program interface, and after pressing the "OK/OK” button on the remote control, starts and runs the Juhaokan application APK, and then selects any media asset icon in the application interface. Start video data playback.
- the APK creates a player and a video layer according to the video playback program, so that the selected media asset data is decoded by the player, and the decoded picture is displayed on the video layer.
- the rotation state includes a horizontal screen state and a vertical screen state.
- the video layer can be displayed according to the original orientation of the video data, while in the vertical screen state, the picture formed in the video layer can be rotated 90° clockwise to adapt to the vertical screen. state.
- the screen rotation operation in the vertical screen state is set during the processing after the video layer screen is captured, so in order to prevent the final presented screen from rotating by 90°.
- the step of creating the player and the video layer through the application program further includes:
- the created video layer can be represented by setting mark information. For example, after the video window is created, the APK sets the flag information flags1 and passes it to the video layer (surfaceview).
- the APK then detects the rotation state of the display 275.
- the surfaceview controls the corresponding picture in the video layer according to the flag information flags1 set by the application, and no longer follows the display
- the rotation angle of 275 (vertical screen 90 degrees) is rotated to avoid the abnormal display problem of multiple rotations of 90 degrees in the display direction of the video content.
- the detection of the rotation state can be completed by devices such as a gravity acceleration sensor built in the display device 200 and an angle sensor provided on the rotation component 276.
- a gravity acceleration sensor built in the display device 200
- an angle sensor provided on the rotation component 276.
- it can be preset that the rotation angle of the display 275 in the landscape state is 0, and the angle sensor detects that the rotation angle of the rotation component 276 is 90°, and it can be determined that the current display 275 is in the portrait state.
- the image screen is also taken from the video layer and adjusted to be displayed on the graphics layer.
- the rotation component 276 is generally rotated. After a certain angle, the rotation of the image frame is automatically completed. Therefore, during the entire rotation of the display 275, the way in which the video layer frame rotates following the rotation angle of the display 275 should be stopped. That is, in some embodiments, when it is detected that the rotation angle of the rotation component 276 changes, the control of the non-rotation angle of the picture of the video layer according to the first mark information may be executed.
- the step of controlling the graphics layer to display a black screen further includes:
- a graphics layer can be created, and the second flag information can be set for the graphics layer, that is, the APK sets the flag information flags2, and transmits it to the surface (graphic layer).
- the received image frame can be detected through the graphic layer, that is, whether an image frame that is intercepted from the video layer and processed by the image is received. If the graphics layer receives the image frame, it can directly display the received frame; if the graphics layer does not receive the image frame, it can display a black screen before displaying the image frame to cover the frame in the video layer.
- the apk sends an instruction a to the interception service to start the interception service to create a surface (graphics layer) through the interception service.
- the interception service also intercepts the decoded video data in real time and sends it to the graphics layer for display.
- sufaceflinger When sufaceflinger detects that no video data has been sent to the corresponding graphics layer, it will control the graphics layer to display a black screen according to the flag information flags2 set by the previously received application. This avoids the problem of flashing the video image of the video layer when the video layer has already displayed the played video content, and the graphics layer has no video content due to the slow acquisition of video frames.
- the player has a life cycle state, so it can also detect the state of the player during the life cycle, and set the first mark information for the video layer according to the state of the player. And create a graphics layer.
- the APK detects that the life cycle of the player is before the prepared state, the APK sets the flag information flags2 and passes it to the surface (graphics layer); and when the APK detects that the life cycle of the player is in the prepared state, the APK passes to The interception service sends instruction a to create a surface (graphics layer).
- the image in the video layer needs to be intercepted, and the intercepted image needs to be adjusted for display on the graphics layer, in some embodiments, the image can be intercepted as follows, that is, from the The steps of capturing an image frame at the video layer further include:
- S311 Create an interception service
- S312 Perform image quality processing on the video data to obtain an image frame
- S313 Invoke the interception service to intercept the image screen.
- the interception service is used to intercept the video frame data.
- the interception service can also be created when the system is started and initialized, and when the display screen needs to be rotated, the service is called to intercept the video layer data in real time and send it to the graphics layer for display. .
- the video data can also be processed for image quality through the video layer to obtain an image.
- the image screen may have a higher frame rate and/or different image screen effects from the original image to be displayed.
- the interception frequency of the interception service can be set to be greater than 25 frames/sec. In order to obtain a better display effect, the interception frequency can be appropriately increased. For example, the interception frequency of the interception service can be set equal to the screen refresh rate of the display 275 at 60 Hz.
- the created interception service can be invoked, and the image image after image quality processing can be obtained in the video layer.
- the interception service can intercept frame by frame to obtain the same number of frames as the original image.
- the interception service can also intercept the frame at intervals to reduce the number of interception and image processing under the premise of meeting the video fluency, and alleviate the problem of the display device 200. Processing load.
- the step of sending the captured image screen to the graphics layer further includes:
- S322 Rotate and/or zoom the captured image frame according to the display rotation information to obtain an intermediate image
- the intermediate image refers to the image frame presented to the user during the rotation of the display 275.
- the intermediate image can be displayed in the graphics layer. Therefore, in order to form the intermediate image, the controller 250 can obtain the display rotation information through the rotation component 276 in real time, that is, obtain the rotation angle state of the display 275 at any time. Then, according to the display rotation information, perform adjustment processing such as rotation and/or zooming of the intercepted image to adjust the image to a form that can adapt to the current 275 corner state of the display, and finally send the adjusted intermediate image to the graphics layer for display , To maintain the positive display.
- some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250.
- the display 275 is configured to present a user interface
- the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state
- the controller 250 is configured to execute The following program steps:
- S173 Intercept an image frame from the video layer, and send the intercepted image frame to a graphics layer, where the graphics layer is displayed on an upper layer of the video layer;
- the display device 200 and the video playback method in the vertical screen state can play video data through the video layer after obtaining the user input start playback instruction, and capture the image screen from the video layer, and Send the intercepted image screen to the graphics layer.
- control the graphics layer to display a black screen first.
- After the graphics layer receives the image screen continue to display the image screen on the graphics layer.
- the method can control the graphics layer to display a black screen picture before playing the video, and alleviate the splash screen problem caused by the different starting speeds of the video layer and the graphics layer.
- the foregoing embodiment provides that when starting to play a video, the black screen state is displayed by controlling the graphics layer to alleviate the problem of screen flickering during startup caused by different startup speeds.
- the closing speeds of the graphics layer and the video layer are also different, which will cause the display device 200 to first close the graphics layer and then close the video layer. Therefore, after closing the graphics layer , The problem of the flickering screen may reappear in the display 275.
- a method for playing a video in a portrait mode is also provided, which is applied to the display control of the display device 200 when the video is turned off to play. As shown in Figure 21, the method includes the following steps:
- S213 Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected.
- the user when closing the video playback process, the user can input the closing playback instruction by controlling the device 100, touch operation, or voice input. Since the closing speed of the video layer is slower than that of the graphics layer, the controller 250 can first execute the program to close the video layer after receiving the closing playback instruction, and continue to capture images from the video layer during the execution of the program , And sent to the graphics layer for display, to maintain the graphics layer has a picture. Until the callback information that the video layer is closed is detected, stop capturing the image frame and sending the captured image frame to the graphics layer.
- the method further includes:
- S503 Stop acquiring decoded video data after detecting the callback of completion of the player release.
- the controller 250 may further detect the callback information of the completion of the video layer closing, so as to release the player after detecting the callback of the completion of the video layer closing, and then detect the completion of the player release. Callback information, so that after detecting the completion of the callback of the player release, stop obtaining the decoded video data.
- the apk will first receive the message of the return button of the remote control to input a command to turn off the playback. And according to the command to close the playback, apk destroys the current video playback window surfaceview; apk releases the player after receiving the callback of completion of surfaceview destruction; apk sends command d to the service after receiving the callback of completion of the player release, and use To control the interception service to stop intercepting the decoded video data. Therefore, after the player is released, stop obtaining the decoded video data to ensure that the video layer will not flash when the video exits.
- some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250.
- the display 275 is configured to present a user interface
- the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state
- the controller 250 is configured to execute The following program steps:
- S213 Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected, and the graphics layer is displayed on the upper layer of the video layer.
- the display device 200 and the video playback method in the vertical screen state can first execute the closing of the video layer after obtaining the user's input to close the playback instruction, and continue from the video layer during the execution of the closing of the video layer
- the video layer intercepts the image frame, and stops sending the intercepted image frame to the graphics layer after detecting the callback of the completion of the closing of the video layer.
- the method can delay the closing of the graphics layer when the user performs the action of closing the video playback, so that the graphics layer and the video layer are closed synchronously, so as to alleviate the problem of flickering screen when the video is closed.
- the present invention also provides a computer storage medium, wherein the computer storage medium may store a program, and the program may include part or all of the embodiments of the camera shooting angle adjustment method provided by the present invention when the program is executed. step.
- the storage medium can be a magnetic disk, an optical disc, a read-only memory (English: read-only memory, abbreviated as: ROM) or a random access memory (English: random access memory, abbreviated as: RAM), etc.
- the technology in the embodiments of the present invention can be implemented by means of software plus a necessary general hardware platform.
- the technical solutions in the embodiments of the present invention can be embodied in the form of software products, which can be stored in a storage medium, such as ROM/RAM. , Magnetic disks, optical disks, etc., including a number of instructions to enable a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the various embodiments of the present invention or the methods of certain parts of the embodiments.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Mechanical Engineering (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Provided in the embodiments of the present application is a display device, which comprises a display and a controller. If the display is in a rotating state, the controller uses Textureview to draw a video frame of a video to be played back. Textureview can support the translation, scaling, rotation at any angle, screenshotting and other transformations of video frames. Therefore, by drawing a video frame by using Textureview, the presentation direction of the drawn video frame can be adapted to the presentation direction of the display.
Description
本申请要求在2020年3月13日提交中国专利局、申请号为202010176794.2申请名称为“一种显示设备及显示画面旋转适配方法”的中国专利的优先权;本申请要求在2020年4月28日提交中国专利局、申请号为202010350580.2申请名称为“一种视频画面旋转方法及显示设备”的中国专利的优先权;本申请要求在2020年9月27日提交中国专利局、申请号为202011036180.0申请名称为“一种显示设备及竖屏状态下视频播放方法”的中国专利的优先权;申请要求在2020年7月17日提交中国专利局、申请号为202010693749.4申请名称为“一种显示设备”的优先权;其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent filed with the Chinese Patent Office on March 13, 2020 with the application number 202010176794.2 and the application titled "A display device and display screen rotation adaptation method"; this application claims in April 2020 The priority of the Chinese patent filed with the Chinese Patent Office on the 28th with the application number 202010350580.2 and the application titled "A method and display device for rotating video images"; this application requires that it be filed with the Chinese Patent Office on September 27, 2020. The application number is 202011036180.0 is the priority of the Chinese patent application titled "A display device and video playback method in portrait mode"; the application is required to be submitted to the Chinese Patent Office on July 17, 2020, and the application number is 202010693749.4. The application title is "A display The priority of “equipment”; its entire contents are incorporated in this application by reference.
本申请涉及电视技术领域,尤其涉及一种显示设备。This application relates to the field of television technology, and in particular to a display device.
智能电视拥有独立的操作系统,并支持功能扩展。可以根据用户需要在智能电视中安装各种应用程序,例如,传统视频应用、短视频等社交应用以及漫画、看书等阅读应用。这些应用可利用智能电视的屏幕展示应用画面,为智能电视提供丰富的媒体资源。同时,智能电视还可以与不同的终端进行数据交互和资源共享。例如,智能电视可以通过局域网、蓝牙等无线通信方式与手机连接,从而播放手机中的资源或者直接进行投屏显示手机上的画面。Smart TV has an independent operating system and supports function expansion. Various applications can be installed in the smart TV according to user needs, for example, traditional video applications, social applications such as short videos, and reading applications such as comics and books. These applications can use the screen of the smart TV to display application images, and provide rich media resources for the smart TV. At the same time, smart TVs can also exchange data and share resources with different terminals. For example, a smart TV can be connected to a mobile phone through wireless communication methods such as local area network, Bluetooth, etc., so as to play resources in the mobile phone or directly cast a screen to display the screen on the mobile phone.
发明内容Summary of the invention
本申请示出一种显示设备,包括:This application shows a display device, including:
显示器;monitor;
旋转组件,连接所述显示器,用于基于所述控制器的控制带动所述显示器旋转;A rotating component, connected to the display, for driving the display to rotate based on the control of the controller;
控制器,配置有绘制控件,所述绘制控件包括:图像层绘制控件和图像层绘制控件,被配置为执行以下步骤:The controller is configured with a drawing control, the drawing control includes: an image layer drawing control and an image layer drawing control, and is configured to perform the following steps:
响应于接收到视频播放指令,监测所述显示器的状态,所述状态包括:旋转状态和静止状态;In response to receiving a video play instruction, monitoring the state of the display, the state including: a rotating state and a static state;
如果所述显示器处于旋转状态,通过图像层绘制控件绘制待播放视频的视频帧;If the display is in a rotating state, draw the video frame of the to-be-played video through the image layer drawing control;
如果所述显示器处于静止状态,通过视频层绘制控件绘制所述待播放视频的视频帧。If the display is in a static state, the video frame of the to-be-played video is drawn through the video layer drawing control.
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to explain the technical solution of the present application more clearly, the following will briefly introduce the drawings needed in the embodiments. Obviously, for those of ordinary skill in the art, without creative work, Other drawings can be obtained from these drawings.
图1A为本申请一种显示设备的应用场景图;FIG. 1A is an application scenario diagram of a display device of this application;
图1B为本申请一种显示设备的后视图;FIG. 1B is a rear view of a display device of this application;
图2为本申请控制装置的硬件配置框图;Figure 2 is a block diagram of the hardware configuration of the control device of the application;
图3为本申请显示设备的硬件配置框图;Figure 3 is a block diagram of the hardware configuration of the display device of this application;
图4为本申请显示设备存储器中操作系统的架构配置框图;FIG. 4 is a block diagram of the architecture configuration of the operating system in the storage device of the display device of the present application;
图5A为本申请横屏展示方向媒资的示意图;FIG. 5A is a schematic diagram of media assets in the horizontal screen display direction of the application;
图5B为本申请竖屏展示方向媒资的示意图;Figure 5B is a schematic diagram of media assets in the vertical screen display direction of the application;
图6为根据一可行性实施例提供的在视频播放过程中控制器的作业流程图;Fig. 6 is a flow chart of the operation of the controller during video playback according to a feasible embodiment;
图7A为根据一可行性实施例提供的视频播放过程中控制器的流程图;Fig. 7A is a flowchart of a controller in a video playback process provided according to a feasible embodiment;
图7B为根据一可行性实施例提供的视频播放过程中控制器的流程图;FIG. 7B is a flowchart of a controller in a video playback process provided according to a feasible embodiment;
图8为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;FIG. 8 is a flow chart of the operation of the display device during the video playback process according to a feasible embodiment;
图9为根据一可行性实施例提供的显示器所展示画面的变化图;FIG. 9 is a change diagram of a picture displayed on a display according to a feasible embodiment;
图10为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;FIG. 10 is a flow chart of the operation of the display device during the video playback process according to a feasible embodiment;
图11为根据一可行性实施例提供的显示器所展示画面的变化图;FIG. 11 is a change diagram of a picture displayed on a display according to a feasible embodiment;
图12为根据一可行性实施例提供的显示器所展示画面的变化图;FIG. 12 is a change diagram of a picture displayed on a display according to a feasible embodiment;
图13为旋转组件带动显示器由竖屏状态旋转为横屏状态的过程中,显示器的第一旋转角度-旋转时间的关系曲线;FIG. 13 is a curve showing the relationship between the first rotation angle of the display and the rotation time in the process of the rotation component driving the display to rotate from the vertical screen state to the horizontal screen state;
图14为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;FIG. 14 is a flowchart of the operation of the display device during the video playback process according to a feasible embodiment;
图15为根据一可行性实施例提供的显示器所展示画面的变化图;FIG. 15 is a change diagram of a picture displayed on a display according to a feasible embodiment;
图16A为本申请显示设备横屏状态示意图;FIG. 16A is a schematic diagram of the horizontal screen state of the display device of this application;
图16B为本申请显示设备竖屏状态示意图;Figure 16B is a schematic diagram of the vertical screen state of the display device of the application;
图17为本申请竖屏状态下开始视频播放方法的流程示意图;FIG. 17 is a schematic flowchart of a method for starting a video playback in a portrait state of the application;
图18为本申请开始视频播放时的显示方法示意图;FIG. 18 is a schematic diagram of the display method when the application starts to play the video;
图19为本申请控制视频层显示视频数据的流程示意图;FIG. 19 is a schematic diagram of the flow of controlling the video layer to display video data in this application;
图20为本申请控制图形层显示黑屏的流程示意图;FIG. 20 is a schematic diagram of the application process for controlling the display of a black screen on the graphics layer;
图21为本申请竖屏状态下关闭视频播放方法的流程示意图。FIG. 21 is a schematic flowchart of a method for closing a video playback in a portrait state of the application.
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。In order to enable those skilled in the art to better understand the technical solutions in the application, the following will clearly and completely describe the technical solutions in the embodiments of the application in conjunction with the drawings in the embodiments of the application. Obviously, the described The embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative work should fall within the protection scope of this application.
旋转电视是一种新型智能电视,主要包括显示器和旋转组件。其中,显示器通过旋转组件连接在支架或墙壁上,可通过旋转组件调节显示器放置角度,达到旋转的目的。不同的显示器放置角度可以适应不同宽高比的动画页面,例如,多数情况下显示器横向放置,以显示宽高比为16:9的电影、电视剧等视频页面。当视频页面的宽高比为9:16的短视频、漫画等页面时,横向放置的显示器需要对页面进行缩放,且在显示器的两侧显示黑色区域。因此,可以通过旋转组件将显示器竖向放置,以适应9:16比例的视频页面。Rotating TV is a new type of smart TV, which mainly includes a display and rotating components. Among them, the display is connected to the bracket or wall through a rotating component, and the placement angle of the display can be adjusted by the rotating component to achieve the purpose of rotation. Different monitor placement angles can adapt to animation pages with different aspect ratios. For example, in most cases, the monitor is placed horizontally to display video pages such as movies and TV shows with an aspect ratio of 16:9. When the video page’s aspect ratio is 9:16 for short videos, comics, etc., the horizontally placed display needs to zoom the page and display black areas on both sides of the display. Therefore, the display can be placed vertically by rotating the component to fit a 9:16 ratio video page.
旋转电视所支持的应用众多,为了方便用户观看,可以通过设置启动方式,指定电视的开机信号源。例如,为了获得传统电视的观影体验,可以设置电视的开机信号源为直播信号,使电视开机后直接进入直播状态。用户可以通过设置程序将开机信号源设置为任一应用程序。由于不同的应用所支持的显示器姿态不同,因此电视在开机时的姿态要与作为开机信号源的应用相适应,才能正常显示开机信号源应用对应的页面。Rotating TV supports many applications. In order to make it easier for users to watch, you can specify the start-up signal source of the TV by setting the startup mode. For example, in order to obtain the movie-watching experience of a traditional TV, the start-up signal source of the TV can be set to a live broadcast signal, so that the TV directly enters the live broadcast state after being turned on. The user can set the power-on signal source to any application through the setting program. Since different applications support different display postures, the posture of the TV when it is turned on must be compatible with the application as the power-on signal source, so that the page corresponding to the power-on signal source application can be displayed normally.
但用户在观看电视时,会根据需要对旋转电视的显示器姿态进行调整,并在关机时仍然保持在调整后的姿态。例如,用户在通过电视观看短视频或漫画时,会通过切换屏幕至竖向放置的状态,并在竖向放置的状态下关机。则在用户下一次开机时,屏幕的姿态为竖向放置状态,如果设定开机信号源为仅支持横向放置状态的应用,则出现屏幕姿态与开机信号源应用不匹配,无法正确显示。因此,本申请提供一种显示设备及应用界面的显示方法。However, when the user is watching TV, he will adjust the posture of the rotating TV’s display as needed, and keep it in the adjusted posture when shutting down. For example, when a user watches a short video or cartoon on a TV, he switches the screen to a vertical placement state, and shuts down the device in the vertical placement state. Then when the user turns on the next time, the screen posture is in the vertical placement state. If the startup signal source is set to an application that only supports the horizontal placement state, the screen posture does not match the startup signal source application and cannot be displayed correctly. Therefore, this application provides a display device and a display method of an application interface.
为方便用户在显示器不同的横竖屏展示方向展示目标媒资详情页,便于提升显示设备在不同观看状态时的用户观看体验,本申请实施例提供了一种显示设备、详情页展示方法及计算机存储介质,显示设备如旋转电视。需要说明的是,本实施例提供的方法不仅适用于旋转电视,还适用于其它显示设备,如计算机、平板电脑等。In order to facilitate the user to display the target media asset details page in different horizontal and vertical screen display directions of the display, and to facilitate the user's viewing experience when the display device is in different viewing states, an embodiment of the present application provides a display device, a detail page display method, and computer storage Medium, display device such as rotating TV. It should be noted that the method provided in this embodiment is not only applicable to rotating TVs, but also applicable to other display devices, such as computers and tablet computers.
本申请各实施例中使用的术语“模块”,可以是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。The term "module" used in the various embodiments of this application can refer to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware or/and software code that can execute related components Function.
本申请各实施例中使用的术语“遥控器”,是指电子设备(如本申请中公开的显示设备)的一个组件,该组件通常可在较短的距离范围内无线控制电子设备。该组件一般可以使用红外线和/或射频(RF)信号和/或蓝牙与电子设备连接,也可以包括WiFi、无线USB、蓝牙、动作传感器等功能模块。例如:手持式触摸遥控器,是以触摸屏中用户界面取代一般遥控装置中的大部分物理内置硬键。The term "remote control" used in the various embodiments of this application refers to a component of an electronic device (such as the display device disclosed in this application), which can generally control the electronic device wirelessly within a short distance. The component can generally use infrared and/or radio frequency (RF) signals and/or Bluetooth to connect with electronic devices, and can also include functional modules such as WiFi, wireless USB, Bluetooth, and motion sensors. For example, a handheld touch remote control uses a user interface in a touch screen to replace most of the physical built-in hard keys in general remote control devices.
本申请各实施例中使用的术语“手势”,是指用户通过一种手型的变化或手部运动等动作,用于表达预期想法、动作、目的/或结果的用户行为。The term "gesture" used in the embodiments of the present application refers to a user's behavior through a change of hand shape or hand movement to express expected ideas, actions, goals, and/or results.
本申请各实施例中使用的术语“硬件系统”,可以是指由集成电路(Integrated Circuit,IC)、印刷电路板(Printed circuit board,PCB)等机械、光、电、磁器件构成的具有计算、控制、存储、输入和输出功能的实体部件。在本申请各个实施例中,硬件系统通常也会被称为主板(motherboard)或主芯片或控制器。The term "hardware system" used in the various embodiments of this application may refer to an integrated circuit (IC), printed circuit board (Printed circuit board, PCB) and other mechanical, optical, electrical, and magnetic devices with computing , Control, storage, input and output functions of the physical components. In the various embodiments of the present application, the hardware system is also usually referred to as a motherboard or a main chip or a controller.
参见图1A,为本申请一些实施例提供的一种显示设备的应用场景图。如图1A所示,控制装置100和显示设备200之间可以有线或无线方式进行通信。Refer to FIG. 1A, which is an application scenario diagram of a display device provided by some embodiments of this application. As shown in FIG. 1A, the control device 100 and the display device 200 can communicate in a wired or wireless manner.
其中,控制装置100被配置为控制显示设备200,其可接收用户输入的操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起着用户与显示设备200之间交互的中介作用。如:用户通过操作控制装置100上频道加减键,显示设备200响应频道加减的操作。Among them, the control device 100 is configured to control the display device 200, which can receive operation instructions input by the user, and convert the operation instructions into instructions that the display device 200 can recognize and respond to, and act as an intermediary for the interaction between the user and the display device 200 effect. For example, the user operates the channel addition and subtraction keys on the control device 100, and the display device 200 responds to the channel addition and subtraction operations.
控制装置100可以是遥控器100A,包括红外协议通信或蓝牙协议通信,及其他短距离通信方式等,通过无线或其他有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。如:用户可以通过遥控器上音量加减键、频道控制键、上/下/左/右的移动按键、语音输入按键、菜单键、开关机按键等输入相应控制指令,来实现控制显示设备200的功能。The control device 100 may be a remote controller 100A, including infrared protocol communication or Bluetooth protocol communication, and other short-distance communication methods, etc., to control the display device 200 in a wireless or other wired manner. The user can control the display device 200 by inputting user instructions through keys on the remote control, voice input, control panel input, etc. For example, the user can control the display device 200 by inputting corresponding control commands through the volume plus and minus keys, channel control keys, up/down/left/right movement keys, voice input keys, menu keys, and power on/off keys on the remote control. Function.
控制装置100也可以是智能设备,如移动终端100B、平板电脑、计算机、笔记本电脑等。例如,使用在智能设备上运行的应用程序控制显示设备200。该应用程序通过配置可以在与智能设备关联的屏幕上,通过直观的用户界面(UI)为用户提供各种控制。The control device 100 may also be a smart device, such as a mobile terminal 100B, a tablet computer, a computer, a notebook computer, and the like. For example, an application program running on a smart device is used to control the display device 200. The application can be configured to provide users with various controls through an intuitive user interface (UI) on the screen associated with the smart device.
示例性的,移动终端100B可与显示设备200安装软件应用,通过网络通信协议实现连接通信,实现一对一控制操作的和数据通信的目的。如:可以使移动终端100B与显示设备200建立控制指令协议,通过操作移动终端100B上提供的用户界面的各种功能键或虚拟控件,来实现如遥控器100A布置的实体按键的功能。也可以将移动终端100B上显示的音视频内容传输到显示设备200上,实现同步显示功能。Exemplarily, the mobile terminal 100B may install a software application with the display device 200, realize connection communication through a network communication protocol, and realize the purpose of one-to-one control operation and data communication. For example, the mobile terminal 100B can establish a control instruction protocol with the display device 200, and the functions of the physical keys arranged on the remote control 100A can be realized by operating various function keys or virtual controls of the user interface provided on the mobile terminal 100B. The audio and video content displayed on the mobile terminal 100B can also be transmitted to the display device 200 to realize the synchronous display function.
显示设备200可提供广播接收功能和计算机支持功能的网络电视功能。显示设备可以实施为,数字电视、网络电视、互联网协议电视(IPTV)等。The display device 200 may provide a broadcast receiving function and a network TV function of a computer support function. The display device can be implemented as digital TV, Internet TV, Internet Protocol TV (IPTV), and so on.
显示设备200,可以是液晶显示器、有机发光显示器、投影设备。具体显示设备类型、尺寸大小和分辨率等不作限定。The display device 200 may be a liquid crystal display, an organic light emitting display, or a projection device. The specific display device type, size and resolution are not limited.
显示设备200还与服务器300通过多种通信方式进行数据通信。这里可允许显示设备200通过局域网(LAN)、无线局域网(WLAN)和其他网络进行通信连接。服务器300可以向显示设备200提供各种内容和互动。示例的,显示设备200可以发送和接收信息,例如:接收电子节目指南(EPG)数据、接收软件程序更新、或访问远程储存的数字媒体库。服务器300可以一组,也可以多组,可以一类或多类服务器。通过服务器300提供视频点播和广告服务等其他网络服务内容。The display device 200 also performs data communication with the server 300 through a variety of communication methods. Here, the display device 200 may be allowed to communicate through a local area network (LAN), a wireless local area network (WLAN), and other networks. The server 300 may provide various contents and interactions to the display device 200. For example, the display device 200 can send and receive information, such as receiving electronic program guide (EPG) data, receiving software program updates, or accessing a remotely stored digital media library. The server 300 can be one group or multiple groups, and can be one type or multiple types of servers. The server 300 provides other network service content such as video-on-demand and advertising services.
在一些实施例中,如图1B所示,显示设备200包括旋转组件276,控制器250,显示器275,从背板上空隙处伸出的端子接口以及和背板连接的旋转组件276,旋转组件276可以使显示器275进行旋转。从显示设备正面观看的角度,旋转组件276可以将显示屏旋转到竖屏展示方向,即屏幕竖向的边长大于横向的边长的状态,也可以将屏幕旋转至横屏展示方向,即屏幕横向的边长大于竖向的边长的状态。In some embodiments, as shown in FIG. 1B, the display device 200 includes a rotating assembly 276, a controller 250, a display 275, a terminal interface protruding from a gap on the back plate, and a rotating assembly 276 connected to the back plate. 276 can make the display 275 rotate. Viewed from the front of the display device, the rotating component 276 can rotate the display screen to the vertical display direction, that is, the state where the vertical side length of the screen is greater than the horizontal side length, or the screen can be rotated to the horizontal display direction, that is, the screen A state where the lateral side length is greater than the vertical side length.
图2中示例性提供了控制装置100的配置框图。如图2所示,控制装置100包括控制器110、存储器120、通信器130、用户输入接口140、用户输出接口150、供电电源160。The configuration block diagram of the control device 100 is exemplarily provided in FIG. 2. As shown in FIG. 2, the control device 100 includes a controller 110, a memory 120, a communicator 130, a user input interface 140, a user output interface 150, and a power supply 160.
控制器110包括随机存取存储器(RAM)111、只读存储器(ROM)112、处理器113、上电接口以及通信总线。控制器110用于控制装置100的运行和操作,以及内部各部件之间的通信协作、外部和内部的数据处理功能。The controller 110 includes a random access memory (RAM) 111, a read only memory (ROM) 112, a processor 113, a power-on interface, and a communication bus. The controller 110 is used to control the operation and operation of the device 100, as well as the communication and cooperation between internal components, and external and internal data processing functions.
示例性的,当检测到用户按压在遥控器100A上布置的按键的交互或触摸在遥控器100A上布置的触摸面板的交互时,控制器110可控制产生与检测到的交互相应的信号,并将该信号发送到显示设备200。Exemplarily, when an interaction of a user pressing a button arranged on the remote control 100A or an interaction of touching a touch panel arranged on the remote control 100A is detected, the controller 110 may control to generate a signal corresponding to the detected interaction, and This signal is sent to the display device 200.
存储器120,用于在控制器110的控制下存储驱动和控制装置100的各种运行程序、数据和应用。存储器120,可以存储用户输入的各类控制信号指令。The memory 120 is used to store various operating programs, data, and applications of the driving and controlling device 100 under the control of the controller 110. The memory 120 can store various control signal instructions input by the user.
通信器130在控制器110的控制下,实现与显示设备200之间控制信号和数据信号的通信。如:控制装置100经由通信器130将控制信号(例如触摸信号或控件信号)发送至显示设备200上,控制装置100可经由通信器130接收由显示设备200发送的信号。通信器130可以包括红外信号接口131和射频信号接口132。例如:红外信号接口时,需要将用户输入指令按照红外控制协议转化为红外控制信号,经红外发送模块进行发送至显示设备200。再如:射频信号接口时,需将用户输入指令转化为数字信号,然后按照射频控制信号调制协议进行调制后,由射频发送端子发送至显示设备200。The communicator 130 realizes the communication of control signals and data signals with the display device 200 under the control of the controller 110. For example, the control device 100 sends a control signal (such as a touch signal or a control signal) to the display device 200 via the communicator 130, and the control device 100 can receive the signal sent by the display device 200 via the communicator 130. The communicator 130 may include an infrared signal interface 131 and a radio frequency signal interface 132. For example, in the case of an infrared signal interface, the user input instruction needs to be converted into an infrared control signal according to the infrared control protocol, and sent to the display device 200 via the infrared sending module. For another example, in the case of a radio frequency signal interface, a user input instruction needs to be converted into a digital signal, which is then modulated according to the radio frequency control signal modulation protocol, and then sent to the display device 200 by the radio frequency sending terminal.
用户输入接口140,可包括麦克风141、触摸板142、传感器143、按键144等中至少一者,从而用户可以通过语音、触摸、手势、按压等将关于控制显示设备200的用户指令输入到控制装置100。The user input interface 140 may include at least one of a microphone 141, a touch panel 142, a sensor 143, a button 144, etc., so that the user can input user instructions for controlling the display device 200 to the control device through voice, touch, gesture, pressing, etc. 100.
用户输出接口150,通过将用户输入接口140接收的用户指令输出至显示设备200,或者,输出由显示设备200接收的图像或语音信号。这里,用户输出接口150可以包括LED接口151、产生振动的振动接口152、输出声音的声音输出接口153和输出图像的显示器154等。例如,遥控器100A可从用户输出接口150接收音频、视频或数据等输出信号,并且将输出信号在显示器154上显示为图像形式、在声音输出接口153输出为音频形式或在振动接口152输出为振动形式。The user output interface 150 outputs a user instruction received by the user input interface 140 to the display device 200, or outputs an image or voice signal received by the display device 200. Here, the user output interface 150 may include an LED interface 151, a vibration interface 152 that generates vibration, a sound output interface 153 that outputs a sound, a display 154 that outputs an image, and the like. For example, the remote controller 100A can receive output signals such as audio, video, or data from the user output interface 150, and display the output signals as images on the display 154, as audio on the sound output interface 153, or as output on the vibration interface 152. Vibration form.
供电电源160,用于在控制器110的控制下为控制装置100各元件提供运行电力支持。形式可以为电池及相关控制电路。The power supply 160 is used to provide operating power support for each element of the control device 100 under the control of the controller 110. The form can be battery and related control circuit.
图3中示例性提供了显示设备200的硬件配置框图。如图3所示,显示设备200 中可以包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、存储器260、用户接口265、视频处理器270、显示器275、旋转组件276、音频处理器280、音频输出接口285、供电电源290。A block diagram of the hardware configuration of the display device 200 is exemplarily provided in FIG. 3. As shown in FIG. 3, the display device 200 may include a tuner and demodulator 210, a communicator 220, a detector 230, an external device interface 240, a controller 250, a memory 260, a user interface 265, a video processor 270, a display 275, Rotating component 276, audio processor 280, audio output interface 285, power supply 290.
其中,旋转组件276可以包括驱动电机、旋转轴等部件。其中,驱动电机可以连接控制器250,受控制器250的控制输出旋转角度;旋转轴的一端连接驱动电机的动力输出轴,另一端连接显示器275,以使显示器275可以通过旋转组件276固定安装在墙壁或支架上。Among them, the rotating assembly 276 may include components such as a drive motor and a rotating shaft. Among them, the driving motor can be connected to the controller 250 and output the rotation angle under the control of the controller 250; one end of the rotating shaft is connected to the power output shaft of the driving motor, and the other end is connected to the display 275, so that the display 275 can be fixedly installed on the rotating assembly 276. On the wall or bracket.
旋转组件276还可以包括其他部件,如传动部件、检测部件等。其中,传动部件可以通过特定传动比,调整旋转组件276输出的转速和力矩,可以为齿轮传动方式;检测部件可以由设置在旋转轴上的传感器组成,例如角度传感器、姿态传感器等。这些传感器可以对旋转组件276旋转的角度等参数进行检测,并将检测的参数发送给控制器250,以使控制器250能够根据检测的参数判断或调整显示设备200的状态。实际应用中,旋转组件276可以包括但不限于上述部件中的一种或多种。The rotating assembly 276 may also include other components, such as transmission components, detection components, and so on. Among them, the transmission component can adjust the rotation speed and torque output by the rotating assembly 276 through a specific transmission ratio, and can be a gear transmission mode; the detection component can be composed of sensors arranged on the rotating shaft, such as an angle sensor, an attitude sensor, and the like. These sensors can detect parameters such as the angle of rotation of the rotating component 276 and send the detected parameters to the controller 250 so that the controller 250 can determine or adjust the state of the display device 200 according to the detected parameters. In practical applications, the rotating assembly 276 may include, but is not limited to, one or more of the aforementioned components.
调谐解调器210,通过有线或无线方式接收广播电视信号,可以进行放大、混频和谐振等调制解调处理,用于从多个无线或有线广播电视信号中解调出用户所选择的电视频道的频率中所携带的音视频信号,以及附加信息(例如EPG数据)。The tuner and demodulator 210, which receives broadcast television signals through wired or wireless means, can perform modulation and demodulation processing such as amplification, mixing and resonance, and is used to demodulate the television selected by the user from multiple wireless or cable broadcast television signals The audio and video signals carried in the frequency of the channel, as well as additional information (such as EPG data).
调谐解调器210,可根据用户选择,以及由控制器250控制,响应用户选择的电视频道的频率以及该频率所携带的电视信号。The tuner and demodulator 210 can be selected by the user and controlled by the controller 250 to respond to the frequency of the television channel selected by the user and the television signal carried by the frequency.
调谐解调器210,根据电视信号的广播制式不同,可以接收信号的途径有很多种,诸如:地面广播、有线广播、卫星广播或互联网广播等;以及根据调制类型不同,可以数字调制方式或模拟调制方式;以及根据接收电视信号的种类不同,可以解调模拟信号和数字信号。The tuner and demodulator 210 can receive signals in many ways according to different broadcasting formats of TV signals, such as terrestrial broadcasting, cable broadcasting, satellite broadcasting or Internet broadcasting; and according to different modulation types, it can be digital modulation or analog Modulation method; and according to different types of received TV signals, analog signals and digital signals can be demodulated.
在其他一些示例性实施例中,调谐解调器210也可在外部设备中,如外部机顶盒等。这样,机顶盒通过调制解调后输出电视信号,经过外部装置接口240输入至显示设备200中。In some other exemplary embodiments, the tuner demodulator 210 may also be in an external device, such as an external set-top box. In this way, the set-top box outputs a TV signal after modulation and demodulation, and is input to the display device 200 through the external device interface 240.
通信器220,是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如显示设备200可将内容数据发送至经由通信器220连接的外部设备,或者,从经由通信器220连接的外部设备浏览和下载内容数据。通信器220可以包括WIFI模块221、蓝牙模块222、有线以太网模块223等网络通信协议模块或近场通信协议模块,从而通信器220可根据控制器250的控制接收控制装置100的控制信号,并将控制信号实现为WIFI信号、蓝牙信号、射频信号等。The communicator 220 is a component used to communicate with external devices or external servers according to various types of communication protocols. For example, the display device 200 may transmit content data to an external device connected via the communicator 220, or browse and download content data from an external device connected via the communicator 220. The communicator 220 may include a network communication protocol module such as a WIFI module 221, a Bluetooth module 222, and a wired Ethernet module 223 or a near field communication protocol module, so that the communicator 220 can receive the control signal of the control device 100 according to the control of the controller 250, and Realize the control signal as WIFI signal, Bluetooth signal, radio frequency signal, etc.
检测器230,是显示设备200用于采集外部环境或与外部交互的信号的组件。检测器230可以包括声音采集器231,如麦克风,可以用于接收用户的声音,如用户控制显示设备200的控制指令的语音信号;或者,可以采集用于识别环境场景类型的环境声音,实现显示设备200可以自适应环境噪声。The detector 230 is a component of the display device 200 for collecting signals from the external environment or interacting with the outside. The detector 230 may include a sound collector 231, such as a microphone, which may be used to receive a user's voice, such as a voice signal of a control instruction for the user to control the display device 200; or, it may collect environmental sounds used to identify the type of environmental scene to realize display The device 200 can adapt to environmental noise.
在其他一些示例性实施例中,检测器230,还可以包括图像采集器232,如相机、摄像头等,可以用于采集外部环境场景,以自适应变化显示设备200的显示参数;以及用于采集用户的属性或与用户交互手势,以实现显示设备与用户之间互动的功能。In some other exemplary embodiments, the detector 230 may also include an image collector 232, such as a camera, a camera, etc., which may be used to collect external environment scenes to adaptively change the display parameters of the display device 200; and to collect The attributes of the user or interactive gestures with the user to achieve the function of interaction between the display device and the user.
在其他一些示例性实施例中,检测器230,还可以包括光接收器,用于采集环境光线强度,以自适应显示设备200的显示参数变化等。In some other exemplary embodiments, the detector 230 may further include a light receiver, which is used to collect the ambient light intensity to adapt to changes in display parameters of the display device 200 and so on.
在其他一些示例性实施例中,检测器230,还可以包括温度传感器,如通过感测环境温度,显示设备200可自适应调整图像的显示色温。示例性的,当温度偏高的环 境时,可调整显示设备200显示图像色温偏冷色调;当温度偏低的环境时,可以调整显示设备200显示图像色温偏暖色调。In some other exemplary embodiments, the detector 230 may also include a temperature sensor. For example, by sensing the ambient temperature, the display device 200 may adaptively adjust the display color temperature of the image. Exemplarily, when the temperature is relatively high, the display device 200 can be adjusted to display a colder image color temperature; when the temperature is relatively low, the display device 200 can be adjusted to display a warmer color temperature of the image.
外部装置接口240,是提供控制器250控制显示设备200与外部设备间数据传输的组件。外部装置接口240可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等外部设备连接,可接收外部设备的诸如视频信号(例如运动图像)、音频信号(例如音乐)、附加信息(例如EPG)等数据。The external device interface 240 is a component that provides the controller 250 to control data transmission between the display device 200 and external devices. The external device interface 240 can be connected to external devices such as set-top boxes, game devices, notebook computers, etc. in a wired/wireless manner, and can receive external devices such as video signals (such as moving images), audio signals (such as music), and additional information (such as EPG). ) And other data.
其中,外部装置接口240可以包括:高清多媒体接口(HDMI)端子241、复合视频消隐同步(CVBS)端子242、模拟或数字分量端子243、通用串行总线(USB)端子244、组件(Component)端子(图中未提供)、红绿蓝(RGB)端子(图中未提供)等任一个或多个。Among them, the external device interface 240 may include: a high-definition multimedia interface (HDMI) terminal 241, a composite video blanking synchronization (CVBS) terminal 242, an analog or digital component terminal 243, a universal serial bus (USB) terminal 244, and a component (Component) Any one or more of terminals (not provided in the figure), red, green and blue (RGB) terminals (not provided in the figure), etc.
控制器250,通过运行存储在存储器260上的各种软件控制程序(如操作系统和各种应用程序),来控制显示设备200的工作和响应用户的操作。The controller 250 controls the work of the display device 200 and responds to user operations by running various software control programs (such as an operating system and various application programs) stored on the memory 260.
如图3所示,控制器250包括随机存取存储器(RAM)251、只读存储器(ROM)252、图形处理器253、处理器254、上电接口255、以及通信总线256。其中,RAM251、ROM252以及图形处理器253、处理器254上电接口255通过通信总线256相连接。As shown in FIG. 3, the controller 250 includes a random access memory (RAM) 251, a read only memory (ROM) 252, a graphics processor 253, a processor 254, a power-on interface 255, and a communication bus 256. Among them, the RAM 251, the ROM 252, the graphics processor 253, and the processor 254 power-on interface 255 are connected through the communication bus 256.
ROM252,用于存储各种系统启动指令。如在接收到开机信号时,显示设备200电源开始启动,处理器254运行ROM252中的系统启动指令,将存储在存储器260的操作系统拷贝至RAM251中,以开始运行启动操作系统。当操作系统启动完成后,处理器254再将存储器260中各种应用程序拷贝至RAM251中,然后,开始运行启动各种应用程序。ROM252, used to store various system startup instructions. For example, when the power-on signal is received, the power of the display device 200 starts to start, and the processor 254 runs the system startup instruction in the ROM 252, and copies the operating system stored in the memory 260 to the RAM 251 to start the operating system. After the operating system is started, the processor 254 copies various application programs in the memory 260 to the RAM 251, and then starts to run and start various application programs.
图形处理器253,用于产生各种图形对象,如图标、操作菜单、以及用户输入指令显示图形等。图形处理器253可以包括运算器,用于通过接收用户输入各种交互指令进行运算,进而根据显示属性显示各种对象;以及包括渲染器,用于产生基于运算器得到的各种对象,将进行渲染的结果显示在显示器275上。The graphics processor 253 is used to generate various graphics objects, such as icons, operation menus, and user input instructions to display graphics. The graphics processor 253 may include an arithmetic unit, which is used to perform operations by receiving various interactive instructions input by the user, and then display various objects according to the display attributes; and a renderer, which is used to generate various objects obtained based on the arithmetic unit, and perform The rendered result is displayed on the display 275.
处理器254,用于执行存储在存储器260中的操作系统和应用程序指令。以及根据接收的用户输入指令,来执行各种应用程序、数据和内容的处理,以便最终显示和播放各种音视频内容。The processor 254 is configured to execute operating system and application program instructions stored in the memory 260. And according to the received user input instructions, to execute various applications, data and content processing, so as to finally display and play various audio and video content.
在一些示例性实施例中,处理器254,可以包括多个处理器。多个处理器可包括一个主处理器以及多个或一个子处理器。主处理器,用于在显示设备预加载模式中执行显示设备200的一些初始化操作,和/或,在正常模式下动画页面的操作。多个或一个子处理器,用于执行在显示设备待机模式等状态下的一种操作。In some exemplary embodiments, the processor 254 may include multiple processors. The multiple processors may include a main processor and multiple or one sub-processors. The main processor is configured to perform some initialization operations of the display device 200 in the display device preloading mode, and/or, the operation of the animation page in the normal mode. Multiple or one sub-processor, used to perform an operation in the standby mode of the display device.
上电接口255,可包括第一接口到第n接口。这些接口可以是经由网络被连接到外部设备的网络接口。The power-on interface 255 may include the first interface to the nth interface. These interfaces may be network interfaces connected to external devices via a network.
控制器250可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器275上显示的GUI对象的用户输入命令,控制器250便可以执行与由用户输入命令选择的对象有关的操作。The controller 250 may control the overall operation of the display device 200. For example, in response to receiving a user input command for selecting a GUI object displayed on the display 275, the controller 250 may perform an operation related to the object selected by the user input command.
其中,该对象可以是可选对象中的任何一个,例如超链接或图标。该与所选择的对象有关的操作,例如显示连接到超链接页面、文档、图像等操作,或者执行与对象相对应的程序的操作。该用于选择GUI对象的用户输入命令,可以是通过连接到显示设备200的各种输入装置(例如,鼠标、键盘、触摸板等)输入命令或者与由用户说出语音相对应的语音命令。Among them, the object can be any one of the selectable objects, such as a hyperlink or an icon. The operation related to the selected object, for example, the operation of displaying the page, document, image, etc. connected to the hyperlink, or the operation of executing the program corresponding to the object. The user input command for selecting the GUI object may be a command input through various input devices (for example, a mouse, a keyboard, a touch pad, etc.) connected to the display device 200 or a voice command corresponding to a voice spoken by the user.
存储器260,用于存储驱动和控制显示设备200运行的各种类型的数据、软件程 序或应用程序。存储器260可以包括易失性和/或非易失性存储器。而术语“存储器”包括存储器260、控制器250的RAM251和ROM252、或显示设备200中的存储卡。The memory 260 is used to store various types of data, software programs or application programs for driving and controlling the operation of the display device 200. The memory 260 may include volatile and/or non-volatile memory. The term “memory” includes the memory 260, the RAM 251 and ROM 252 of the controller 250, or the memory card in the display device 200.
在一些实施例中,存储器260具体用于存储驱动显示设备200中控制器250的运行程序;存储显示设备200内置的和用户从外部设备下载的各种应用程序;存储用于配置由显示器275提供的各种GUI、与GUI相关的各种对象及用于选择GUI对象的选择器的视觉效果图像等数据。In some embodiments, the memory 260 is specifically used to store the operating program that drives the controller 250 in the display device 200; to store various application programs built in the display device 200 and downloaded from external devices by the user; and to store the configuration provided by the display 275 Data such as various GUIs, various objects related to the GUI, and visual effect images of the selector used to select GUI objects.
在一些实施例中,存储器260具体用于存储调谐解调器210、通信器220、检测器230、外部装置接口240、视频处理器270、显示器275、音频处理器280等的驱动程序和相关数据,例如从外部装置接口接收的外部数据(例如音视频数据)或用户接口接收的用户数据(例如按键信息、语音信息、触摸信息等)。In some embodiments, the memory 260 is specifically used to store drivers and related data of the tuner and demodulator 210, the communicator 220, the detector 230, the external device interface 240, the video processor 270, the display 275, the audio processor 280, etc. For example, external data (such as audio and video data) received from an external device interface or user data (such as key information, voice information, touch information, etc.) received from a user interface.
在一些实施例中,存储器260具体存储用于表示操作系统(OS)的软件和/或程序,这些软件和/或程序可包括,例如:内核、中间件、应用编程接口(API)和/或应用程序。示例性的,内核可控制或管理系统资源,以及其它程序所实施的功能(如中间件、API或应用程序);同时,内核可以提供接口,以允许中间件、API或应用程序访问控制器,以实现控制或管理系统资源。In some embodiments, the memory 260 specifically stores software and/or programs for representing an operating system (OS). These software and/or programs may include, for example, a kernel, middleware, application programming interface (API), and/or application. Exemplarily, the kernel can control or manage system resources and functions implemented by other programs (such as middleware, API or application programs); at the same time, the kernel can provide interfaces to allow middleware, API or application programs to access the controller, To achieve control or management of system resources.
图4中示例性提供了显示设备200存储器中操作系统的架构配置框图。该操作系统架构从上到下依次是应用层、中间件层和内核层。FIG. 4 exemplarily provides a block diagram of the architecture configuration of the operating system in the memory of the display device 200. The operating system architecture consists of the application layer, the middleware layer, and the kernel layer from top to bottom.
应用层,系统内置的应用程序以及非系统级的应用程序都是属于应用层。负责与用户进行直接交互。应用层可包括多个应用程序,如设置应用程序、电子帖应用程序、媒体中心应用程序等。这些应用程序可被实现为Web应用,其基于WebKit引擎来执行,具体可基于HTML5、层叠样式表(CSS)和JavaScript来开发并执行。Application layer, system built-in applications and non-system-level applications belong to the application layer. Responsible for direct interaction with users. The application layer can include multiple applications, such as settings applications, e-post applications, media center applications, and so on. These applications can be implemented as web applications, which are executed based on the WebKit engine, and specifically can be developed and executed based on HTML5, Cascading Style Sheets (CSS) and JavaScript.
这里,HTML,全称为超文本标记语言(Hyper Text Markup Language),是一种用于创建网页的标准标记语言,通过标记标签来描述网页,HTML标签用以说明文字、图形、动画、声音、表格、链接等,浏览器会读取HTML文档,解释文档内标签的内容,并以网页的形式显提供来。Here, HTML, the full name of HyperText Markup Language (Hyper Text Markup Language), is a standard markup language used to create web pages. Web pages are described through markup tags. HTML tags are used to describe text, graphics, animations, sounds, and tables. , Links, etc., the browser will read the HTML document, explain the content of the tags in the document, and display it in the form of a web page.
CSS,全称为层叠样式表(Cascading Style Sheets),是一种用来表现HTML文件样式的计算机语言,可以用来定义样式结构,如字体、颜色、位置等的语言。CSS样式可以直接存储与HTML网页或者单独的样式文件中,实现对网页中样式的控制。CSS, the full name of Cascading Style Sheets (Cascading Style Sheets), is a computer language used to express the style of HTML files, and can be used to define style structures, such as fonts, colors, and positions. CSS styles can be directly stored in HTML web pages or in separate style files to achieve control over styles in web pages.
JavaScript,是一种应用于Web网页编程的语言,可以插入HTML页面并由浏览器解释执行。其中Web应用的交互逻辑都是通过JavaScript实现。JavaScript可以通过浏览器,封装JavaScript扩展接口,实现与内核层的通信,JavaScript is a language used in web page programming, which can be inserted into HTML pages and interpreted and executed by the browser. The interaction logic of the web application is implemented through JavaScript. JavaScript can encapsulate the JavaScript extension interface through the browser to realize the communication with the kernel layer,
中间件层,可以提供一些标准化的接口,以支持各种环境和系统的操作。例如,中间件层可以实现为与数据广播相关的中间件的多媒体和超媒体信息编码专家组(MHEG),还可以实现为与外部设备通信相关的中间件的DLNA中间件,还可以实现为提供显示设备内各应用程序所运行的浏览器环境的中间件等。The middleware layer can provide some standardized interfaces to support the operation of various environments and systems. For example, the middleware layer can be implemented as the Multimedia and Hypermedia Information Coding Expert Group (MHEG) of the middleware related to data broadcasting, and can also be implemented as the DLNA middleware of the middleware related to external device communication, and can also be implemented as providing Display the middleware of the browser environment in which each application in the device runs.
内核层,提供核心系统服务,例如:文件管理、内存管理、进程管理、网络管理、系统安全权限管理等服务。内核层可以被实现为基于各种操作系统的内核,例如,基于Linux操作系统的内核。The kernel layer provides core system services, such as file management, memory management, process management, network management, system security authority management and other services. The kernel layer can be implemented as a kernel based on various operating systems, for example, a kernel based on the Linux operating system.
内核层也同时提供系统软件和硬件之间的通信,为各种硬件提供设备驱动服务,例如:为显示器提供显示驱动程序、为摄像头提供摄像头驱动程序、为遥控器提供按键驱动程序、为WIFI模块提供WiFi驱动程序、为音频输出接口提供音频驱动程序、为电源管理(PM)模块提供电源管理驱动等。The kernel layer also provides communication between system software and hardware, and provides device driver services for various hardware, such as: providing display drivers for displays, camera drivers for cameras, button drivers for remote controls, and WIFI modules Provide WiFi driver, audio driver for audio output interface, power management driver for power management (PM) module, etc.
图3中,用户接口265,接收各种用户交互。具体的,用于将用户的输入信号发送给控制器250,或者,将从控制器250的输出信号传送给用户。示例性的,遥控器100A可将用户输入的诸如电源开关信号、频道选择信号、音量调节信号等输入信号发送至用户接口265,再由用户接口265转送至控制器250;或者,遥控器100A可接收 经控制器250处理从用户接口265输出的音频、视频或数据等输出信号,并且显示接收的输出信号或将接收的输出信号输出为音频或振动形式。In Fig. 3, the user interface 265 receives various user interactions. Specifically, it is used to send the input signal of the user to the controller 250, or to transmit the output signal from the controller 250 to the user. Exemplarily, the remote control 100A may send input signals input by the user, such as a power switch signal, a channel selection signal, and a volume adjustment signal, to the user interface 265, and then the user interface 265 transfers to the controller 250; or the remote control 100A may Receive output signals such as audio, video, or data output from the user interface 265 after the controller 250 processes, and display the received output signal or output the received output signal as audio or vibration.
在一些实施例中,用户可在显示器275上显示的图形用户界面(GUI)输入用户命令,则用户接口265通过GUI接收用户输入命令。确切的说,用户接口265可接收用于控制选择器在GUI中的位置以选择不同的对象或项目的用户输入命令。其中,“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphic user interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、控件、菜单、选项卡、文本框、对话框、状态栏、频道栏、Widget等可视的界面元素。In some embodiments, the user may input a user command on a graphical user interface (GUI) displayed on the display 275, and the user interface 265 receives the user input command through the GUI. Specifically, the user interface 265 may receive user input commands for controlling the position of the selector in the GUI to select different objects or items. Among them, "user interface" is a medium interface for interaction and information exchange between application programs or operating systems and users, and it realizes the conversion between the internal form of information and the form acceptable to users. The commonly used form of the user interface is a graphical user interface (GUI), which refers to a user interface related to computer operations that is displayed in a graphical manner. It can be an icon, window, control and other interface elements displayed on the display screen of an electronic device. The control can include icons, controls, menus, tabs, text boxes, dialog boxes, status bars, channel bars, Widgets, etc. Visual interface elements.
或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户接口265通过传感器识别出声音或手势,来接收用户输入命令。Alternatively, the user may input a user command by inputting a specific sound or gesture, and the user interface 265 recognizes the sound or gesture through the sensor to receive the user input command.
视频处理器270,用于接收外部的视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等视频数据处理,可得到直接在显示器275上显示或播放的视频信号。The video processor 270 is used to receive external video signals, and perform video data processing such as decompression, decoding, scaling, noise reduction, frame rate conversion, resolution conversion, and image synthesis according to the standard codec protocol of the input signal. The video signal displayed or played directly on the display 275.
示例的,视频处理器270,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。For example, the video processor 270 includes a demultiplexing module, a video decoding module, an image synthesis module, a frame rate conversion module, a display formatting module, and the like.
其中,解复用模块,用于对输入音视频数据流进行解复用处理,如输入MPEG-2流(基于数字存储媒体运动图像和语音的压缩标准),则解复用模块将其进行解复用成视频信号和音频信号等。Among them, the demultiplexing module is used to demultiplex the input audio and video data stream, such as the input MPEG-2 stream (based on the compression standard of digital storage media moving images and voice), then the demultiplexing module will demultiplex it Multiplexed into video signals and audio signals, etc.
视频解码模块,用于对解复用后的视频信号进行处理,包括解码和缩放处理等。The video decoding module is used to process the demultiplexed video signal, including decoding and scaling.
图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的GUI信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。An image synthesis module, such as an image synthesizer, is used to superimpose and mix the GUI signal generated by the graphics generator with the zoomed video image according to user input or itself to generate an image signal for display.
帧率转换模块,用于对输入视频的帧率进行转换,如将输入的60Hz视频的帧率转换为120Hz或240Hz的帧率,通常的格式采用如插帧方式实现。The frame rate conversion module is used to convert the frame rate of the input video, such as converting the frame rate of the input 60Hz video to a frame rate of 120Hz or 240Hz, and the usual format is realized by such as frame interpolation.
显示格式化模块,用于将帧率转换模块输出的信号,改变为符合诸如显示器显示格式的信号,如将帧率转换模块输出的信号进行格式转换以输出RGB数据信号。The display formatting module is used to change the signal output by the frame rate conversion module to a signal conforming to the display format such as a display, for example, format the signal output by the frame rate conversion module to output RGB data signals.
显示器275,用于接收源自视频处理器270输入的图像信号,进行显示视频内容、图像以及菜单操控界面。显示视频内容,可以来自调谐解调器210接收的广播信号中的视频内容,也可以来自通信器220或外部装置接口240输入的视频内容。显示器275,同时显示显示设备200中产生且用于控制显示设备200的用户操控界面UI。The display 275 is used to receive the image signal input from the video processor 270 to display video content, images, and a menu control interface. The displayed video content can be from the video content in the broadcast signal received by the tuner and demodulator 210, or from the video content input by the communicator 220 or the external device interface 240. The display 275 simultaneously displays a user manipulation interface UI generated in the display device 200 and used to control the display device 200.
以及,显示器275可以包括用于呈现页面的显示屏组件以及驱动图像显示的驱动组件。或者,倘若显示器275为一种投影显示器,还可以包括一种投影装置和投影屏幕。And, the display 275 may include a display screen component for presenting a page and a driving component for driving image display. Alternatively, if the display 275 is a projection display, it may also include a projection device and a projection screen.
旋转组件276,控制器250可以发出控制信号使旋转组件276旋转显示器275。Rotating the component 276, the controller 250 can send a control signal to make the rotating component 276 rotate the display 275.
音频处理器280,用于接收外部的音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等音频数据处理,得到可以在麦克风286中播放的音频信号。The audio processor 280 is used to receive external audio signals, and perform decompression and decoding according to the standard codec protocol of the input signal, as well as audio data processing such as noise reduction, digital-to-analog conversion, and amplification processing, and the result can be stored in the microphone 286 The audio signal to be played.
示例性的,音频处理器280可以支持各种音频格式。例如MPEG-2、MPEG-4、高级音频编码(AAC)、高效AAC(HE-AAC)等格式。Exemplarily, the audio processor 280 may support various audio formats. Such as MPEG-2, MPEG-4, Advanced Audio Coding (AAC), High Efficiency AAC (HE-AAC) and other formats.
音频输出接口285,用于在控制器250的控制下接收音频处理器280输出的音频信号,音频输出接口285可包括麦克风286,或输出至外接设备的发生装置的外接音响输出端子287,如耳机输出端子。The audio output interface 285 is used to receive the audio signal output by the audio processor 280 under the control of the controller 250. The audio output interface 285 may include a microphone 286, or output to an external audio output terminal 287 of a generator of an external device, such as a headset Output terminal.
在其他一些示例性实施例中,视频处理器270可以包括一个或多个芯片组成。音频处理器280,也可以包括一个或多个芯片组成。In some other exemplary embodiments, the video processor 270 may include one or more chips. The audio processor 280 may also include one or more chips.
以及,在其他一些示例性实施例中,视频处理器270和音频处理器280,可以为单独的芯片,也可以与控制器250一起集成在一个或多个芯片中。And, in some other exemplary embodiments, the video processor 270 and the audio processor 280 may be separate chips, or may be integrated with the controller 250 in one or more chips.
供电电源290,用于在控制器250的控制下,将外部电源输入的电力为显示设备200提供电源供电支持。供电电源290可以是安装在显示设备200内部的内置电源电路,也可以是安装在显示设备200外部的电源。The power supply 290 is used to provide power supply support for the display device 200 with power input from an external power supply under the control of the controller 250. The power supply 290 may be a built-in power supply circuit installed inside the display device 200, or may be a power supply installed outside the display device 200.
由于本申请提供的显示设备200,包括显示器275和旋转组件276,旋转组件276可以带动显示器275进行旋转,以使显示器275为不同的展示方向。因此,在一种实现方式中,展示方向可以包括横屏展示方向和竖屏展示方向。其中,横屏展示方向是指,从显示器275正面观看时,显示器275水平方向上的长度(宽)大于竖直方向上的长度(高)的展示方向;竖屏展示方向是指,从显示器275正面观看时,显示器275水平方向上的长度(宽)小于竖直方向上的长度(高)的展示方向。Since the display device 200 provided in the present application includes a display 275 and a rotating component 276, the rotating component 276 can drive the display 275 to rotate, so that the display 275 can be displayed in different directions. Therefore, in an implementation manner, the display direction may include a horizontal screen display direction and a vertical screen display direction. Among them, the horizontal display direction refers to the display direction in which the horizontal length (width) of the display 275 is greater than the vertical length (height) when viewed from the front of the display 275; the vertical display direction refers to the display direction from the display 275 When viewed from the front, the length (width) in the horizontal direction of the display 275 is smaller than the length (height) in the vertical direction in the display direction.
显然,受显示设备200安装/放置位置的影响,竖直方向在本申请中是指大致竖直,水平方向也是指大致水平即可。横屏展示方向主要用于显示电视剧、电影等横向媒资如图5A所示。显示器275为横屏展示方向时的操作模式可以称为横屏媒资观看模式,显示器275为竖屏展示方向时的操作模式可以称为竖屏媒资观看模式。显示设备200中的控制器250进一步与服务器300通信连接,用于调用服务器300的接口,获取相应数据。该显示设备200中的显示器275能够被旋转组件276驱动旋转,并用于显示用户界面。在实际应用中,用户可通过控制装置100来控制显示设备200的播放模式、播放内容等,其中,播放模式包括横屏媒资观看模式和竖屏媒资观看模式。Obviously, affected by the installation/placement position of the display device 200, the vertical direction in the present application refers to substantially vertical, and the horizontal direction also refers to substantially horizontal. The horizontal display direction is mainly used to display horizontal media assets such as TV series and movies, as shown in Figure 5A. The operation mode when the display 275 is in the horizontal display orientation may be referred to as the horizontal media viewing mode, and the operation mode when the display 275 is in the vertical display orientation may be referred to as the vertical media viewing mode. The controller 250 in the display device 200 is further connected to the server 300 in communication, and is used to call the interface of the server 300 to obtain corresponding data. The display 275 in the display device 200 can be driven to rotate by the rotating component 276 and used to display a user interface. In practical applications, the user can control the play mode, play content, etc. of the display device 200 through the control device 100, where the play mode includes a horizontal screen media viewing mode and a vertical screen media viewing mode.
竖屏展示方向主要用于显示短视频、漫画等竖向媒资,如图5B所示。在竖屏展示方向下,显示器275可以显示竖屏展示方向对应的用户界面,并拥有竖屏展示方向相对应的界面布局和交互方式。在竖屏媒资观看模式下,用户可以观看短视频、漫画等竖屏媒资。同理,由于显示设备200中的控制器250进一步与服务器300通信连接,因此可以在竖屏展示方向时,通过调用服务器300的接口,获取竖屏相应的媒资数据。The vertical screen display direction is mainly used to display vertical media assets such as short videos and comics, as shown in FIG. 5B. In the portrait display direction, the display 275 can display a user interface corresponding to the portrait display direction, and has an interface layout and interaction mode corresponding to the portrait display direction. In the vertical screen media asset viewing mode, users can watch short videos, comics and other vertical screen media assets. In the same way, since the controller 250 in the display device 200 is further connected to the server 300 in communication, it is possible to obtain the media data corresponding to the vertical screen by calling the interface of the server 300 when the display direction is displayed in the vertical screen.
竖屏展示方向更适合播放页面比例为9:16等竖屏形式的媒资,例如,通过手机等终端拍摄的短视频等。由于手机等终端设备多采用9:16,9:18等竖向屏幕比例,因此在终端接入显示设备200,并通过显示设备200显示终端页面时,竖屏展示方向能够避免对页面进行过渡缩放,充分利用显示器275的应用页面,拥有更好的用户体验。The vertical screen display direction is more suitable for playing media assets with a vertical screen ratio of 9:16, for example, short videos shot through terminals such as mobile phones. Since terminal devices such as mobile phones mostly use vertical screen ratios such as 9:16 and 9:18, when the terminal is connected to the display device 200 and the terminal page is displayed through the display device 200, the vertical screen display orientation can avoid transitional zooming of the page , Make full use of the application page of the display 275, and have a better user experience.
需要说明的是,上述横屏展示方向和竖屏展示方向只是两种不相同的显示器275展示方向,并不对显示的内容构成限制,例如,在横屏展示方向下依然可以显示短视频、漫画等竖向媒资;在竖屏展示方向下也依然可以显示电视剧、电影等横向媒资,只是在该展示方向需要对不相符的显示窗口进行压缩、调整。It should be noted that the above-mentioned horizontal display direction and vertical display direction are only two different display directions of the display 275, and do not limit the displayed content. For example, short videos, cartoons, etc. can still be displayed in the horizontal display direction. Vertical media assets; horizontal media assets such as TV series and movies can still be displayed in the vertical screen display direction, but the inconsistent display windows need to be compressed and adjusted in the display direction.
用户在使用显示设备200时,会根据用户的观影需要,调整显示器275的展示方向。例如可以通过控制装置100上的旋转键、或者在UI界面上选中旋转选项、或者通过语音系统输入“旋转”相关语音发出旋转指令后,控制器250则会根据旋转指令控制旋转组件276进行转动,以驱动显示器275进行旋转。例如,用户想通过显示设备200观看短视频时,可以通过上述方式中的一种输入旋转指令,使横屏展示方向下的显示器275逆时针旋转90度至竖屏展示方向,从而适应短视频等竖向应用的画面比例。When the user uses the display device 200, the display direction of the display 275 is adjusted according to the user's viewing needs. For example, you can control the rotation key on the device 100, or select the rotation option on the UI interface, or input the "rotation" related voice through the voice system to issue a rotation instruction, and the controller 250 will control the rotation component 276 to rotate according to the rotation instruction. To drive the display 275 to rotate. For example, when a user wants to watch a short video through the display device 200, he can input a rotation instruction in one of the above-mentioned ways to rotate the display 275 in the horizontal display orientation 90 degrees counterclockwise to the vertical display orientation, so as to adapt to the short video, etc. The aspect ratio of the vertical application.
显示设备在视频播放的过程中,需要对待播放视频的帧画面进行画质处理和/或运动补偿,这就需要显示设备通过其Surfaceview(视频层控件)将视频帧绘制至画质处理模块/或运动补偿模块。因此,在视频播放的过程中,显示设备通过Surfaceview(视频层控件)绘制视频帧。但是,当显示器旋转的过程中,由于Surfaceview不能控制视频帧任意角度旋转,进而导致显示器旋转的过程中,视频帧的展示方向与显示器的展示方向不适配。用户体验感较差。In the process of video playback, the display device needs to perform image quality processing and/or motion compensation on the frame of the video to be played. This requires the display device to draw the video frame to the image quality processing module/or through its Surfaceview (video layer control) Motion compensation module. Therefore, during the video playback process, the display device draws the video frame through the Surfaceview (video layer control). However, when the display is rotating, because the Surfaceview cannot control the rotation of the video frame at any angle, the display direction of the video frame does not match the display direction of the display during the display rotation. The user experience is poor.
为了解决上述技术问题,本申请实施例提供一种显示设备,显示设备至少包括: 显示器、旋转组件和控制器,显示器、旋转组件及控制器功能及连接方式可以参阅上述实施例,在此便不赘述。In order to solve the above technical problems, an embodiment of the present application provides a display device, the display device at least includes: a display, a rotating component, and a controller. The functions and connection modes of the display, rotating component, and controller can be referred to the above-mentioned embodiments. Go into details.
图6为根据一可行性实施例提供的在视频播放过程中控制器的作业流程图;控制器被进一步配置为执行步骤S11和S12。Fig. 6 is a flow chart of the operation of the controller during video playback according to a feasible embodiment; the controller is further configured to execute steps S11 and S12.
S11响应于接收到视频播放指令,监测显示器的状态,状态包括:旋转状态和静止状态;S11 monitors the state of the display in response to receiving the video playback instruction, the state includes: rotating state and static state;
用户想要播放视频时,用户可以通过发送视频播放指令至显示设备。在一些可行性实施例中,视频播放指令可以是用户以语音的形式发送的视频播放指令;视频播放指令的发送过程可以是:用户预先输出唤醒词,然后输出视频播放指令,基于唤醒词用户与控制器250建立器连接,以使得控制器250可以对用户输出的视频播放指令做出相应的响应。例如,用户输入唤醒词“小聚同学”和视频播放指令“播放XXX视频”。在一些可行性实施例中,视频播放指令可以是用户通过遥控器发送的视频播放指令;视频播放指令的发送过程可以是:用户通过触控遥控器的相关控件,以使得控制器250可以发送相应的视频播放指令,进而使得控制器250可以对视频播放指令做出相应的响应。例如,用户可以通过点击遥控器的确认键,触发遥控器发送视频播放指令至控制器250。本实施例仅示例性的提供两种显示设备的启动方式,在实际应用的过程视频播放指令的发送过程,可以是但不限于上述两种方式。When the user wants to play the video, the user can send the video play instruction to the display device. In some feasible embodiments, the video play instruction may be a video play instruction sent by the user in the form of voice; the sending process of the video play instruction may be: the user outputs the wake-up word in advance, and then outputs the video play instruction, based on the wake-up word between the user and The controller 250 establishes a connection, so that the controller 250 can respond to the video playback instruction output by the user. For example, the user inputs the wake-up word "Xiaoju classmate" and the video playback instruction "play XXX video". In some feasible embodiments, the video play instruction may be a video play instruction sent by the user through the remote control; the sending process of the video play instruction may be: the user touches the relevant controls of the remote control so that the controller 250 can send the corresponding The video playback instruction of the controller 250 can make a corresponding response to the video playback instruction. For example, the user can trigger the remote control to send a video playback instruction to the controller 250 by clicking the confirm button of the remote control. This embodiment only exemplarily provides two startup modes of the display device. In the actual application process, the sending process of the video playback instruction may be, but not limited to, the above two modes.
本申请中,控制器可以设置有相应的监测组件,以使得控制器可以监测显示器的状态。在一些可行性实施例中,控制器250内可以设置有角度监测器,相应的,控制器250可以监测到的显示器275的实时旋转角度,当实时旋转角度大于零时,显示器处于旋转状态。在另一可行性实施例中,控制器250内可以设置有重力加速度传感器,通过监测重力传感器在空间坐标系(x,y,z)3个方向上的信息,获取显示器275任意时刻对应的姿态,根据姿态可以确定显示器处于旋转状态还是静止状态。在另一可行性实施例中,控制器250内可以设置有角度加速度传感器,通过监测角度传感器监测到的角度增加值,确定显示器处于静止状态还是旋转状态。本申请中控制器也可以设置其他的监测器,用于监测显示器275的状态。In this application, the controller can be provided with corresponding monitoring components, so that the controller can monitor the status of the display. In some feasible embodiments, an angle monitor may be provided in the controller 250. Accordingly, the controller 250 may monitor the real-time rotation angle of the display 275. When the real-time rotation angle is greater than zero, the display is in a rotating state. In another feasible embodiment, a gravity acceleration sensor may be provided in the controller 250. By monitoring the information of the gravity sensor in the three directions of the spatial coordinate system (x, y, z), the posture corresponding to the display 275 at any time can be obtained. , According to the posture, you can determine whether the display is in a rotating state or a static state. In another feasible embodiment, an angular acceleration sensor may be provided in the controller 250, and by monitoring the angle increase value monitored by the angle sensor, it is determined whether the display is in a stationary state or a rotating state. In this application, the controller may also be provided with other monitors for monitoring the status of the display 275.
S12如果显示器处于静止状态,通过视频层绘制控件绘制待播放视频的视频帧。如果显示器处于旋转状态,通过图像层绘制控件绘制待播放视频的视频帧;S12 If the display is in a static state, draw the video frame of the to-be-played video through the video layer drawing control. If the display is in a rotating state, draw the video frame of the video to be played through the image layer drawing control;
当显示器处于静止状态时,控制器的作业流程可以参阅图7A,图7A为根据一可行性实施例提供的视频播放过程中控制器的流程图;从图中可以看出,控制器被配置为执行步骤:When the display is in a static state, the operation flow of the controller can be seen in FIG. 7A. FIG. 7A is a flowchart of the controller during video playback according to a feasible embodiment; it can be seen from the figure that the controller is configured as Steps:
S21接收音视频数据;S21 receives audio and video data;
本申请中,控制器用于接收音视频数据,其中音视频数据可以包括:用过网络绘制的网络音视频数据,通过USB接口传输的预先下载的音视频数据和有线音视频数据。有线音视频数据包括卫星电视信号,V段、U段电视信号,以及其他有线台通过微波(或光缆)传送过来的电视信号。本实施例仅是示例性的示出几种音视频信号,在实际应用的过程中音视频信号可以是但不限于上述几种信号。。In this application, the controller is used to receive audio and video data, where the audio and video data may include: network audio and video data drawn using the network, pre-downloaded audio and video data and wired audio and video data transmitted through a USB interface. Cable audio and video data includes satellite TV signals, V-segment, U-segment TV signals, and other TV signals transmitted by cable stations via microwave (or optical cable). This embodiment only exemplarily shows several types of audio and video signals. In the actual application process, the audio and video signals may be, but are not limited to, the above-mentioned types of signals. .
S22解码音视频数据;S22 decode audio and video data;
本申请中,控制器设置有编解码器(codec),编解码器(codec)可以对音视频数据进行解码,其中,音视频数据的解码方式可以采用本领域惯用的解码方式在此申请人不做过多的限定。In this application, the controller is provided with a codec, which can decode audio and video data, where the audio and video data can be decoded using a decoding method commonly used in this field. To be too restrictive.
S23同步音视频数据;S23 synchronize audio and video data;
解码后同时得到两路数据,一路是音频数据,另一路是视频数据。After decoding, two channels of data are obtained at the same time, one is audio data, and the other is video data.
由于后续控制器需要将音频数据传输至扬声器,以使得扬声器播放音频数据。需要将视频数据传输至显示器,以使得显示器播放视频数据。通常,为了提升用户的体验感,需要对视频数据进行一列的画质处理或运动补偿,这就导致音频数据需要较长 的时间到达显示器,为了达到“音画同步”的效果,本申请实施例中控制器同步音频数据和视频数据,以得音频数据到达扬声器的时间等于视频数据到达显示器的时间。Since the subsequent controller needs to transmit audio data to the speaker, so that the speaker can play the audio data. The video data needs to be transmitted to the display so that the display can play the video data. Generally, in order to improve the user’s sense of experience, it is necessary to perform a row of image quality processing or motion compensation on the video data, which results in a longer time for the audio data to reach the display. In order to achieve the effect of "audio-visual synchronization", the embodiment of the present application The central controller synchronizes audio data and video data, so that the time when the audio data reaches the speaker is equal to the time when the video data reaches the display.
其中,同步音频数据和视频数据的实现方式可以是对音频数据增加一个延时参数,以得音频数据到达扬声器的时间等于视频数据到达显示器的时间。在实际应用的过程中同步音频数据和视频数据的实现方式可是,但不限于上述实现方式,在此申请人不做过多的限定。Wherein, the realization of synchronizing the audio data and the video data may be to add a delay parameter to the audio data, so that the time for the audio data to reach the speaker is equal to the time for the video data to reach the display. In the process of actual application, the implementation manner of synchronizing audio data and video data is, but not limited to the foregoing implementation manner, and the applicant does not make too many limitations here.
S24根据视频数据绘制视频帧;S24 draws a video frame according to the video data;
本实施例中控制器通过Surfaceview绘制视频帧,其中,视频帧的绘制方式可以采用本领域惯用的绘制方式,在此申请人不做过多的限定。In this embodiment, the controller draws the video frame through the Surfaceview, wherein the drawing method of the video frame can be a drawing method commonly used in the art, and the applicant does not make too many limitations here.
S25对视频帧进行运动补偿或画质处理;S25 performs motion compensation or image quality processing on video frames;
其中画质处理的过程可以是对视频帧的一些参数的调整,这些参数可以是但不限于数对比度、亮度、颜色、色调、锐度、色调、色温、降噪、mpeg降噪、点降噪、白色增强、彩色增强、红增益、绿增益、蓝增益、R-补偿、G-补偿、B-偏差、白平衡等一系列与画质处理相关的参数。画质处理也可以是对视频帧增加一些特效,特效可以是但不限于雪景、3D画面等。本实施例仅是示例性的介绍两种画质处理的方式,在实际应用的过程中,画质处理的过程可以是,但不限于上述两种实现方式。The process of image quality processing can be the adjustment of some parameters of the video frame, these parameters can be but not limited to contrast, brightness, color, hue, sharpness, hue, color temperature, noise reduction, mpeg noise reduction, point noise reduction , White enhancement, color enhancement, red gain, green gain, blue gain, R-compensation, G-compensation, B-deviation, white balance and other parameters related to image quality processing. The image quality processing can also be adding some special effects to the video frame. The special effects can be, but not limited to, snow scenes, 3D images, etc. This embodiment only exemplarily introduces two image quality processing methods. In the actual application process, the image quality processing process may be, but is not limited to the above two implementation methods.
S26控制显示器显示处理后的视频帧。S26 controls the display to display the processed video frame.
本申请中,控制器通过Surfaceview绘制待播放视频的视频帧,以使得当显示器处于静止状态时,可以对视频帧进行画质处理或者运动补偿,提升用户的体验感。In this application, the controller draws the video frame of the video to be played through the Surfaceview, so that when the display is in a static state, the image quality processing or motion compensation can be performed on the video frame to improve the user experience.
当显示器处于旋转状态时,控制器的作业流程可以参阅图7B,图7B为根据一可行性实施例提供的视频播放过程中控制器的流程图;从图中可以看出,控制器被配置为执行步骤:When the display is in a rotating state, the operation flow of the controller can be seen in FIG. 7B. FIG. 7B is a flow chart of the controller in the video playback process according to a feasible embodiment; it can be seen from the figure that the controller is configured as Steps:
S21接收音视频数据;S21 receives audio and video data;
S22解码音视频数据;S22 decode audio and video data;
其中,音视频数据的解码方式可以参阅上述实施例,在此不再赘述。Among them, the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
S23同步音视频数据;S23 synchronize audio and video data;
其中,音视频数据的同步可以参阅上述实施例,在此不再赘述。Among them, the synchronization of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
S24根据视频数据及显示器的旋转角度绘制视频帧;S24 draws a video frame according to the video data and the rotation angle of the display;
本实施例中控制器通过Textureview绘制待播放视频的视频帧。Textureview可以支持视频帧的平移、缩放、任意角度旋转、截图等变换。因此通过Textureview绘制视频帧,可以实现绘制出来的视频帧的展示方向与显示器的展示方向适配。用户采用本实施例提供的显示设备观看视频时,即使在显示器处于旋转状态时,用户观看到的画面(本申请中也可称之为视频帧)始终与显示器的展示方向适配,用户体验感较好。In this embodiment, the controller draws the video frame of the video to be played through the Textureview. Textureview can support translation, scaling, arbitrary angle rotation, screenshots and other transformations of video frames. Therefore, by drawing video frames through Textureview, the display direction of the drawn video frames can be adapted to the display direction of the display. When a user uses the display device provided in this embodiment to watch a video, even when the display is in a rotating state, the picture (also referred to as a video frame in this application) viewed by the user is always adapted to the display direction of the display, and the user experience is better.
S26控制显示器显示视频帧。S26 controls the monitor to display video frames.
本申请实施例示出的方案中,如果显示器处于旋转状态,控制器通过Textureview绘制待播放视频的视频帧。Textureview可以支持视频帧的平移、缩放、任意角度旋转、截图等变换。因此通过Textureview绘制视频帧,可以实现绘制出来的视频帧的展示方向与显示器的展示方向适配。用户采用本实施例提供的显示设备观看视频时,即使在显示器处于旋转状态时,用户观看到的画面始终与显示器的展示方向适配,用户体验感较好。如果在视频播放的过程中,控制器始终利用Textureview绘制视频帧,那么用户观看到的视频是未经过画质处理的视频。在实际应用的过程中为了给用户提供更好的视觉效果通常需要对视频帧进行画质处理或者运动补偿。但是由于硬件的限制,如果视频帧在图形层输出的时候,无法进行画质处理。基于此,本实施例提供的显示设备,当显示器处于静止状态时,控制器通过Surfaceview绘制待播放视频的视频帧,以使得当显示器处于静止状态时,可以对视频帧进行画质处理或者运动补偿,进一步提升用户的体验感。In the solution shown in the embodiment of the present application, if the display is in a rotating state, the controller draws the video frame of the to-be-played video through the Textureview. Textureview can support translation, scaling, arbitrary angle rotation, screenshots and other transformations of video frames. Therefore, by drawing video frames through Textureview, the display direction of the drawn video frames can be adapted to the display direction of the display. When a user uses the display device provided in this embodiment to watch a video, even when the display is in a rotating state, the picture viewed by the user is always adapted to the display direction of the display, and the user experience is better. If the controller always uses Textureview to draw video frames during video playback, the video that the user watches is a video that has not undergone image quality processing. In the actual application process, in order to provide users with better visual effects, it is usually necessary to perform image quality processing or motion compensation on video frames. However, due to hardware limitations, if the video frame is output in the graphics layer, the image quality cannot be processed. Based on this, in the display device provided by this embodiment, when the display is in a static state, the controller draws the video frame of the to-be-played video through the Surfaceview, so that when the display is in a static state, the video frame can be processed for image quality or motion compensation. , To further enhance the user experience.
下面结合具体的实例对在视频播放过程中显示设备的作业流程作业作以详细的说明。The following is a detailed description of the operation flow of the display device during the video playback process in conjunction with specific examples.
实施例1:Example 1:
图8为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;从图中可以看出在视频播放的过程中,控制器被配置为执行步骤:Figure 8 is a flow chart of the operation of the display device during video playback according to a feasible embodiment; it can be seen from the figure that during the video playback process, the controller is configured to perform the steps:
S31接收音视频数据;S31 receives audio and video data;
S32解码音视频数据;S32 decodes audio and video data;
其中,音视频数据的解码方式可以参阅上述实施例,在此不再赘述。Among them, the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
S33响应于接收到视频播放指令,读取第一展示方向和第二展示方向,第一展示方向为待播放视频的展示方向,第二展示方向为待播放视频的展示方向显示设备的当前展示方向;S33 In response to receiving the video play instruction, read the first display direction and the second display direction. The first display direction is the display direction of the video to be played, and the second display direction is the display direction of the video to be played. The current display direction of the display device ;
读取第一/第二展示方向的实现方式有多种。There are many ways to read the first/second display direction.
例如,控制器250可以通过读取视频的分辨率,确定第一展示方向。其中视频的分辨率包括视频的宽和高。如果宽大于高,视频的展示方向为横屏展示方向;如果宽小于高,则视频的展示方向为竖屏展示方向。For example, the controller 250 may determine the first display direction by reading the resolution of the video. The resolution of the video includes the width and height of the video. If the width is greater than the height, the display direction of the video is the horizontal display direction; if the width is less than the height, the display direction of the video is the vertical display direction.
具体的,在完成视频加载的动作后,视频的属性值也随之储存在控制器250的本地存储器,此时,控制器250可以通过调取属性值中的分辨率,来确定视频的展示方向。分辨率记载着视频在“横”和“竖”这两个维度上包含的像素个数。比如,1920*1080的视频是由横向1920个像素、纵向1080个像素(合计2,073,600个像素)构成的。基于分辨率便可获知视频为横屏展示视频还是竖屏展示视频。Specifically, after the action of loading the video is completed, the attribute value of the video is also stored in the local memory of the controller 250. At this time, the controller 250 can determine the display direction of the video by calling the resolution in the attribute value. . The resolution records the number of pixels contained in the video in the two dimensions of "horizontal" and "vertical". For example, a 1920*1080 video is composed of 1920 pixels in the horizontal direction and 1080 pixels in the vertical direction (2,073,600 pixels in total). Based on the resolution, it can be known whether the video is displayed on the horizontal screen or displayed on the vertical screen.
在一些可行性实施例中,控制器250加载的视频的分辨率为320*240,则控制器250确定该视频为横屏展示视频,相应的第一展示方向为横屏展示方向。在另一可行性实施例中,控制器250调取加载的视频的分辨率为768*1024,则控制器250确定该视频为竖屏展示视频,相应的,第一展示方向为横屏展示方向。In some feasible embodiments, if the resolution of the video loaded by the controller 250 is 320*240, the controller 250 determines that the video is a horizontal display video, and the corresponding first display direction is a horizontal display direction. In another feasible embodiment, the controller 250 retrieves the loaded video with a resolution of 768*1024, and the controller 250 determines that the video is a vertical screen display video, and correspondingly, the first display direction is a horizontal display direction .
再例如,以在视频的配置信息中加入一个方向标识,控制器250可以通过应用获取正在播放视频的配置信息;然后基于配置信息确定当第一展示方向是横屏展示方向还是竖屏展示方向。For another example, by adding a direction indicator to the configuration information of the video, the controller 250 may obtain the configuration information of the video being played through the application; then, based on the configuration information, determine whether the first display direction is the horizontal display direction or the vertical display direction.
具体的,控制器250被进一步配置为:读取方向标识;如果展示方向标识为第一方向标识,则视频支持的展示方向为横屏展示方向;如果展示方向标识为第二方向标识,则视频支持的展示方向为竖屏展示方向。在实际应用的过程中可以根据需求设置第一标识值,第二标识值,在此申请人并不做过多的限定。可以在配置信息中加入标识值:com.android,H/V/HV,H表示视频仅支持横屏展示方向,V表示视频仅支持竖屏,HV表示视频同时支持横屏展示方向和竖屏展示方向。Specifically, the controller 250 is further configured to: read the direction indicator; if the display direction indicator is the first direction indicator, the display direction supported by the video is the horizontal display direction; if the display direction indicator is the second direction indicator, then the video The supported display orientation is the portrait orientation. In the actual application process, the first identification value and the second identification value can be set according to requirements, and the applicant does not make too many restrictions here. The identification value can be added to the configuration information: com.android, H/V/HV, H indicates that the video only supports horizontal display orientation, V indicates that the video only supports vertical display, and HV indicates that the video supports both horizontal display and vertical display. direction.
在一些可行性实施例中,控制器250调取视频的方向标识:com.android,H,则控制器250确定视频支持的展示方向为横屏展示方向。在另一可行性实施例中,控制器250读取视频的方向标识:com.android,V,则控制器250确定第一展示方向为竖屏展示方向。In some feasible embodiments, the controller 250 retrieves the direction identifier of the video: com.android, H, and the controller 250 determines that the display direction supported by the video is the horizontal display direction. In another feasible embodiment, the controller 250 reads the direction identifier of the video: com.android, V, and the controller 250 determines that the first display direction is the vertical display direction.
显示器275的当前展示方向(第二展示方向)可以通过显示设备200内置的传感器进行监测。例如,显示设备200的显示器275上设置有陀螺仪、重力加速度传感器等,可以通过测量角加速度或重力方向确定显示器275相对于重力方向的姿态数据。再将监测的姿态数据分别与横屏展示方向和竖屏展示方向下的姿态数据进行比较,确定显示器275当前所处的展示方向。The current display direction (second display direction) of the display 275 can be monitored by a sensor built into the display device 200. For example, the display 275 of the display device 200 is provided with a gyroscope, a gravity acceleration sensor, etc., and the posture data of the display 275 relative to the direction of gravity can be determined by measuring the angular acceleration or the direction of gravity. The monitored posture data is then compared with the posture data in the horizontal display direction and the vertical display direction, respectively, to determine the display direction where the display 275 is currently located.
又例如,可以在旋转组件276上设置光栅角度传感器、磁场角度传感器或滑动电阻角度传感器等,通过测量旋转组件276所旋转的角度,分别与横屏展示方向和竖屏展示方向下的角度进行比较,确定显示器275当前所处的展示方向。For another example, a grating angle sensor, a magnetic field angle sensor, or a sliding resistance angle sensor, etc. can be arranged on the rotating component 276, and the angle rotated by the rotating component 276 can be measured and compared with the angle in the horizontal display direction and the vertical display direction. , To determine the current display direction of the display 275.
本申请实施例仅是实例性的示出几种读取第一/第二展示方向的实现方式,在实际应用的过程中,读取第一/第二展示方向的实现方式并不限于上述几种方式。The embodiments of the present application are merely illustrative of several implementation ways of reading the first/second display direction. In the actual application process, the implementation ways of reading the first/second display direction are not limited to the above-mentioned ones. Kind of way.
S3411响应于第一展示方向与第二展示方向不同,控制旋转组件带动显示器旋转,以 使得旋转后显示器的展示方向与第二展示方向适配,读取第一旋转角度,第一旋转角度为显示器的旋转角度;S3411 In response to the first display direction being different from the second display direction, the rotation component is controlled to drive the display to rotate, so that the display direction of the display after rotation is adapted to the second display direction, and the first rotation angle is read, and the first rotation angle is the display The rotation angle;
在一些可行性实施例中,响应于用户输入的视频播放指令,控制器250读取第一展示方向及第二展示方向;如果第一展示方向与第二展示方向不一致,控制器250控制旋转组件276带动显示器275旋转,以使得旋转后显示器275的展示方向与第一展示方向适配;例如,控制器250通过角度传感器监测到显示器275当前转角为90度,则可以确定显示器275的展示方向为竖屏展示方向,而当读取第一展示方向为横屏展示方向时,可以对显示器275进行旋转,以使得旋转后的显示器275的展示方向为竖屏展示方向。再例如,控制器250通过角度传感器监测到显示器275当前转角为90度,则可以确定显示器275的展示方向为横屏展示方向,而当读取第一展示方向为竖屏展示方向时,可以对显示器275进行旋转,以使得旋转后的显示器275的展示方向为横屏展示方向。In some feasible embodiments, in response to the video playback instruction input by the user, the controller 250 reads the first display direction and the second display direction; if the first display direction is not consistent with the second display direction, the controller 250 controls the rotating component 276 drives the display 275 to rotate, so that the display direction of the display 275 after the rotation is adapted to the first display direction; for example, the controller 250 detects that the current rotation angle of the display 275 is 90 degrees through the angle sensor, then it can determine that the display direction of the display 275 is The display direction of the vertical screen, and when the first display direction is read as the horizontal display direction, the display 275 can be rotated so that the display direction of the rotated display 275 is the vertical display direction. For another example, if the controller 250 detects that the current rotation angle of the display 275 is 90 degrees through the angle sensor, it can determine that the display direction of the display 275 is the horizontal display direction, and when the first display direction is read as the vertical display direction, it can check The display 275 is rotated so that the display direction of the rotated display 275 is the horizontal display direction.
本实施例中,控制器可以配置有角度传感器,角度传感器实时的记录第一旋转角度。其中,第一选旋转角度是一个相对值,相对于显示器的初始状态为起始点增加的角或减少的角度,例如,在播放视频器,控制器250通过角度传感器监测到显示器275当前转角为90度,当显示器旋转为91度时,第一选旋转角度为1度。当显示器旋转为89度时,第一选旋转角度也为1度。In this embodiment, the controller may be equipped with an angle sensor, and the angle sensor records the first rotation angle in real time. Among them, the first selected rotation angle is a relative value, which is an angle increased or decreased from the starting point relative to the initial state of the display. For example, in a video player, the controller 250 detects that the current rotation angle of the display 275 is 90 through an angle sensor. Degrees, when the display is rotated to 91 degrees, the first choice of rotation angle is 1 degree. When the display is rotated to 89 degrees, the first choice of rotation angle is also 1 degree.
由于显示设备在应用的过程中,受旋转组件及其组件结构的限制,向某个方向旋转一定角度后,就不能再向该方向继续旋转了。因此如旋转组件每次都向一个方向上旋转,多次旋转后会造成旋转组件的损害。Because the display device is restricted by the rotating component and its component structure during the application process, after rotating a certain angle in a certain direction, it can no longer continue to rotate in that direction. Therefore, if the rotating assembly rotates in one direction each time, the rotating assembly will be damaged after multiple rotations.
基于此,本申请中控制器每次控制显示的旋转方向均显示器最近的一次旋转方向相反。例如,显示器最近的一次旋转方向为顺时针旋转,则下一次控制器控制显示器逆时针旋转。再例如,显示器最近的一次旋转方向为逆时针旋转,则下一次控制器控制显示器顺时针旋转。通过上述控制方式可以避免显示器因过度旋转而造成的损坏。Based on this, the rotation direction of the display controlled by the controller in this application is opposite to the most recent rotation direction of the display. For example, if the most recent rotation of the display is clockwise, the next time the controller controls the display to rotate counterclockwise. For another example, if the latest rotation direction of the display is counterclockwise, the next time the controller controls the display to rotate clockwise. Through the above-mentioned control method, damage to the display caused by excessive rotation can be avoided.
S3412基于第一旋转角度绘制待展示视频的视频帧,以使第二旋转角度等于第一旋转角度,第二旋转角度为视频帧的旋转角度。S3412 draws the video frame of the video to be displayed based on the first rotation angle, so that the second rotation angle is equal to the first rotation angle, and the second rotation angle is the rotation angle of the video frame.
绘制的过程可以为:控制器250控制旋转组件276带动显示器275顺时针开始旋转时,控制器250读取的第一旋转角度,当控制器需要绘制第一帧视频帧时,控制器利用Textureview读取的第一旋转角度为0.25度,Textureview将第一帧视频帧逆时针旋转0.25度。依照上述过程基于第一旋转角度绘制待展示视频的视频帧,直至显示器停止旋转。The drawing process can be as follows: when the controller 250 controls the rotating component 276 to drive the display 275 to rotate clockwise, the controller 250 reads the first rotation angle. When the controller needs to draw the first video frame, the controller uses Textureview to read The first rotation angle taken is 0.25 degrees, and Textureview rotates the first video frame by 0.25 degrees counterclockwise. According to the above process, the video frame of the video to be displayed is drawn based on the first rotation angle until the display stops rotating.
S3413响应于第一旋转角度等于预置旋转角度,通过视频层绘制控件绘制待播放视频的视频帧,对视频帧进行画质处理或运动补偿。In S3413, in response to the first rotation angle being equal to the preset rotation angle, draw the video frame of the to-be-played video through the video layer drawing control, and perform image quality processing or motion compensation on the video frame.
本申请中,显示器在横屏模式和竖屏模式之间转换,在一可行性实施例中,预置角度可以设置为但不限于90度。In this application, the display is switched between the landscape mode and the portrait mode. In a feasible embodiment, the preset angle can be set to but not limited to 90 degrees.
其中,画质处理或运动补偿可以参阅上述实施例,在此不再赘述。Among them, the image quality processing or motion compensation can refer to the above-mentioned embodiments, which will not be repeated here.
S342响应于第一展示方向与第二展示方向相同,绘制视频帧,对视频帧进行运动补偿或画质处理,得到处理后的视频帧。In S342, in response to the first display direction being the same as the second display direction, the video frame is drawn, and motion compensation or image quality processing is performed on the video frame to obtain a processed video frame.
响应于第一展示方向与第二展示方向相同控制器通过Surfaceview绘制视频帧,其中,视频帧的绘制方式可以采用本领域惯用的绘制方式,在此申请人不做过多的限定。In response to the first display direction and the second display direction being the same, the controller draws the video frame through the Surfaceview, where the drawing method of the video frame may be a drawing method commonly used in the art, and the applicant does not make too many limitations here.
然后对视频帧进行画质处理和/或运动补偿,其中画质处理和/或运动补偿的过程可以根据需求采用本领域惯用的画质处理和/或运动补偿方式,在此申请人不做过多的限定。Then image quality processing and/or motion compensation are performed on the video frame, where the process of image quality processing and/or motion compensation can adopt image quality processing and/or motion compensation methods commonly used in the field according to requirements, and the applicant has not done this here. Many restrictions.
S35控制器显示器显示处理后的视频帧。The S35 controller display displays the processed video frame.
在显示器旋转的过程中,显示器所展示画面的变化图可以参阅图9,图9为根据一可行性实施例提供的显示器所展示画面的变化图;从图9中可以看出在显示器旋转的过程中,在显示器旋转的过程中,展示出来的视频帧可以随着显示器一同旋转。用户观看到的画面,始终与显示器的展示方向适配,用户体验感较好。During the rotation of the display, the change diagram of the picture displayed on the display can be seen in FIG. 9, which is a change diagram of the picture displayed on the display according to a feasible embodiment; it can be seen from FIG. 9 that the process of the display is rotated In the process of rotating the display, the displayed video frame can be rotated with the display. The picture that the user sees is always adapted to the display direction of the display, and the user experience is better.
实施例2:Example 2:
实施例1示出的方案中,如果显示器处于旋转状态,通过图像层绘制控件绘制待播放视频的视频帧;如果显示器处于静止状态,通过视频层绘制控件绘制待播放视频的视频帧。当显示器由旋转状态转换为静止状态时,控制器由Textureview输出视频帧切换至由Surfaceview输出视频帧。在由Textureview输出视频帧切换至由Surfaceview输出视频帧的过程中由于存在一个时间间隔,在这个时间间隔内控制器无任何视频帧输出给显示器,相应的,在显示器上会出现闪黑屏现象。具体的可以继续参阅图9。从图9中可以看出,当显示器旋转90度的时候,显示器会出现闪黑屏现象(对应图9中的画面12)。In the solution shown in Embodiment 1, if the display is in a rotating state, the video frame of the to-be-played video is drawn through the image layer drawing control; if the display is in a static state, the video frame of the to-be-played video is drawn through the video layer drawing control. When the display changes from the rotating state to the static state, the controller switches from the Textureview output video frame to the Surfaceview output video frame. During the process of switching from Textureview output video frame to Surfaceview output video frame, because there is a time interval, during this time interval, the controller does not output any video frame to the display, correspondingly, a flashing black screen will appear on the display. Please refer to Figure 9 for details. It can be seen from Figure 9 that when the display is rotated 90 degrees, the display will flash black screen (corresponding to the screen 12 in Figure 9).
基于上述问题,申请人对显示设备做了进一步的改进。改进后的显示设备的作业流程可以参考图10,图10为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;从图中可以看出在视频播放的过程中,控制器还被配置为执行以下步骤:Based on the above problems, the applicant has made further improvements to the display device. For the operation flow of the improved display device, refer to FIG. 10, which is a flowchart of the operation of the display device during video playback according to a feasible embodiment; it can be seen from the figure that during the video playback process, the controller It is also configured to perform the following steps:
S3414响应于第一旋转角度等于预置旋转角度,则截取遮挡图像,遮挡图像为显示器停止旋转时显示器所展示的图像;In S3414, in response to the first rotation angle being equal to the preset rotation angle, intercept the occluded image, and the occluded image is the image displayed on the display when the display stops rotating;
本申请中,第一旋转角度等于预置旋转角度时,显示器终止旋转,此时控制器则截取遮挡图像,遮挡图像为显示器停止旋转时显示器所展示的图像。In this application, when the first rotation angle is equal to the preset rotation angle, the display stops rotating. At this time, the controller intercepts the occluded image, and the occluded image is the image displayed on the display when the display stops rotating.
控制器控制显示器显示遮挡图像,本申请中遮挡图像位于视频帧的上层,因此,当同时存在遮挡图像和视频帧时,从用户的角度看,只能看到遮挡图像。The controller controls the display to display the occlusion image. In this application, the occlusion image is located in the upper layer of the video frame. Therefore, when the occlusion image and the video frame exist at the same time, only the occlusion image can be seen from the user's perspective.
S3415统计遮挡图像的显示时间;S3415 counts the display time of the occluded image;
控制器以显示遮挡图像的时间为时间起点,实时的统计遮挡图像的显示时间。The controller takes the time of displaying the occluded image as the starting point of time, and counts the display time of the occluded image in real time.
S3416响应于显示时间等于预置静帧时间,则撤销遮挡图像。In S3416, in response to the display time being equal to the preset still frame time, cancel the occluded image.
其中,预置静帧时间可以根据需求配置,在一可行性实施例中预置静帧时间可以是第一时间与第二时间的间隔时间,第一时间为Textureview输出的最后一帧视频帧对应的时间,第二时间Surfaceview输出的第一帧视频帧对应的时间。当显示时间等于预置静帧时间,撤销遮挡图像,以保证用户可以正常观看视频。The preset still frame time can be configured according to requirements. In a feasible embodiment, the preset still frame time can be the interval between the first time and the second time. The first time corresponds to the last video frame output by Textureview. The time corresponding to the first video frame output by Surfaceview at the second time. When the display time is equal to the preset still frame time, the occluded image is cancelled to ensure that the user can watch the video normally.
本实施例在显示器旋转的过程中,显示器所展示画面的变化图可以参阅图11,图11为根据一可行性实施例提供的显示器所展示画面的变化图;从图11中可以看出在显示器旋转的过程中,在显示器旋转的过程中,展示出来的视频帧可以随着显示器一同旋转。当显示器由旋转状态转换为静止状态时,控制器由Textureview输出视频帧切换至由Surfaceview输出视频帧,在此过程中,控制器控制显示器展示遮挡画面(对应图11中遮挡画面14),因此,在此过程中不会出现闪黑屏的问题。In this embodiment, during the rotation of the display, the change of the picture displayed on the display can be seen in FIG. 11. FIG. 11 is a change of the picture displayed on the display according to a feasible embodiment; During the rotation process, the displayed video frame can be rotated along with the display during the rotation of the display. When the display transitions from a rotating state to a static state, the controller switches from Textureview output video frame to Surfaceview output video frame. During this process, the controller controls the display to display the occlusion screen (corresponding to the occlusion screen 14 in Figure 11). Therefore, There will be no flashing black screen during this process.
实施例3:Example 3:
图12为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;从图中可以看出在视频播放的过程中,控制器还被配置为执行步骤:Figure 12 is a flow chart of the operation of the display device during video playback according to a feasible embodiment; it can be seen from the figure that during the video playback process, the controller is also configured to perform steps:
S41接收音视频数据;S41 receives audio and video data;
S42解码音视频数据;S42 decode audio and video data;
其中,音视频数据的解码方式可以参阅上述实施例,在此不再赘述。Among them, the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
S43读取显示设备的角度增加值;S43 reads the angle increase value of the display device;
S4411响应于角度增加值大于0,控制旋转组件带动显示器旋转,根据角度增加值计算第一旋转角度,第一旋转角度为显示器的旋转角度;In S4411, in response to the angle increase value being greater than 0, the rotation component is controlled to drive the display to rotate, and the first rotation angle is calculated according to the angle increase value, where the first rotation angle is the rotation angle of the display;
在一些可行性实施例中,响应于用户输入的视频播放指令,控制器250读取显示设备的角度增加值;如果响应于角度增加值大于0,控制器250控制旋转组件276带动显示器275旋转,以使得旋转后显示器275的展示方向与第一展示方向适配;例如,控制器250通过加速传感器监测到显示器275的角度增加值大于0时,根据角度增加值计算第一旋转角度。In some feasible embodiments, in response to the video playback instruction input by the user, the controller 250 reads the angle increase value of the display device; if the angle increase value is greater than 0 in response to the angle increase value, the controller 250 controls the rotation component 276 to drive the display 275 to rotate, So that the display direction of the display 275 after rotation is adapted to the first display direction; for example, when the controller 250 detects that the angle increase value of the display 275 is greater than 0 through the acceleration sensor, the first rotation angle is calculated according to the angle increase value.
其中,第一旋转角度可以通过以下方式计算得出。在一可行性实施例中,控制器每间10ms均接收到角度增加值0.1度,相应的每间10ms计算出的第一旋转角度分别为:0.1度,0.2度,0.3度……直至90度。Among them, the first rotation angle can be calculated in the following manner. In a feasible embodiment, the controller receives the angle increase value of 0.1 degree every 10 ms, and the corresponding first rotation angle calculated every 10 ms is: 0.1 degree, 0.2 degree, 0.3 degree...up to 90 degrees. .
S4412基于第一旋转角度绘制待展示视频的视频帧,以使得视频帧的展示方向与显示器的展示方向适配。S4412 draws the video frame of the video to be displayed based on the first rotation angle, so that the display direction of the video frame is adapted to the display direction of the display.
其中,基于第一旋转角度绘制待展示视频的视频帧的实现方式可以参阅上述实施,在此便不赘述。Wherein, the implementation manner of drawing the video frame of the video to be displayed based on the first rotation angle can refer to the foregoing implementation, and will not be repeated here.
S4413响应于第一旋转角度等于预置旋转角度,通过视频层绘制控件绘制待播放视频的视频帧,对视频帧进行画质处理或运动补偿。In S4413, in response to the first rotation angle being equal to the preset rotation angle, draw the video frame of the video to be played through the video layer drawing control, and perform image quality processing or motion compensation on the video frame.
其中,画质处理或运动补偿可以参阅上述实施例,在此不再赘述。Among them, the image quality processing or motion compensation can refer to the above-mentioned embodiments, which will not be repeated here.
S4414响应于第一旋转角度等于预置旋转角度,则截取遮挡图像,遮挡图像为显示器停止旋转时显示器所展示的图像;S4415响应于第一旋转角度等于预置旋转角度,统计遮挡图像的显示时间;S4414 responds to that the first rotation angle is equal to the preset rotation angle, then intercepts the blocked image, the blocked image is the image displayed on the display when the display stops rotating; S4415 responds to the first rotation angle equals to the preset rotation angle, and counts the display time of the blocked image ;
S4416响应于显示时间等于预置静帧时间,则撤销遮挡图像。In S4416, in response to the display time being equal to the preset still frame time, cancel the occluded image.
S45控制器显示器显示处理后的视频帧。The S45 controller display displays the processed video frame.
本实施例在显示器旋转的过程中,显示器所展示画面的变化图可以继续参阅图11,图11为根据一可行性实施例提供的显示器所展示画面的变化图;从图11中可以看出在显示器旋转的过程中,在显示器旋转的过程中,展示出来的视频帧可以随着显示器一同旋转,用户体验感较好,当显示器由旋转状态转换为静止状态时,控制器由Textureview输出视频帧切换至由Surfaceview输出视频帧,在此过程中,控制器控制显示器展示遮挡画面,因此,在此过程中不会出现闪黑屏的问题。In this embodiment, during the rotation of the display, the change diagram of the screen displayed on the display can continue to refer to FIG. 11, which is a change diagram of the screen displayed on the display according to a feasible embodiment; it can be seen from FIG. During the rotation of the display, the displayed video frame can be rotated with the display during the rotation of the display. The user experience is better. When the display is changed from the rotating state to the static state, the controller will switch the video frame output by Textureview. Until Surfaceview outputs the video frame, during this process, the controller controls the display to show the occluded picture. Therefore, the problem of flashing black screen will not occur in this process.
实施例4:Example 4:
实施例1-3示出的方案中,目前采用链式电机(在本申请中也可称之为旋转组件)带动显示器275旋转。旋转组件276设置有限位开关,当旋转组件276带动显示器275旋转90度时,会与限位开关撞击,导致显示器275的旋转角度发生较大的变化,具体的可以参阅图13。图13为旋转组件276带动显示器275由竖屏状态旋转为横屏状态的过程中,显示器275的第一旋转角度-旋转时间的关系曲线。在时间为Ti时,旋转组件276撞击限位开关,相应的显示器275的旋转角度发生了较大的波动,相应的,基于第一旋转角度绘制的视频帧会发生较大的倾斜,具体的可以参阅图9或图11的画面11。In the solutions shown in Examples 1-3, a chain motor (also referred to as a rotating assembly in this application) is currently used to drive the display 275 to rotate. The rotation component 276 is provided with a limit switch. When the rotation component 276 drives the display 275 to rotate by 90 degrees, it will collide with the limit switch, causing the rotation angle of the display 275 to change greatly. For details, please refer to FIG. 13. FIG. 13 shows the relationship curve between the first rotation angle and the rotation time of the display 275 in the process that the rotation component 276 drives the display 275 to rotate from the vertical screen state to the horizontal screen state. When the time is Ti, the rotation component 276 hits the limit switch, and the rotation angle of the corresponding display 275 fluctuates greatly. Correspondingly, the video frame drawn based on the first rotation angle will be greatly inclined. Refer to screen 11 in Figure 9 or Figure 11.
基于上述问题,本身申请在对上述实施例提供的显示设备做了进一步的改进,改进后的显示设备的作业流程图可以参阅图14,图14为根据一可行性实施例提供的视频播放过程中显示设备的作业流程图;从图中可以看出在视频播放的过程中,控制器还被配置为执行步骤:Based on the above problems, I have applied for further improvements to the display device provided in the above embodiment. For the operation flow chart of the improved display device, please refer to FIG. 14. FIG. 14 is a video playback process provided according to a feasible embodiment. The operation flow chart of the display device; it can be seen from the figure that during the video playback process, the controller is also configured to execute the steps:
S51接收音视频数据;S51 receives audio and video data;
S52解码音视频数据;S52 decodes audio and video data;
其中,音视频数据的解码方式可以参阅上述实施例,在此不再赘述。Among them, the decoding method of audio and video data can refer to the above-mentioned embodiment, which will not be repeated here.
S5311响应于显示器开始旋转,记录旋转时间,旋转时间用于记录显示器旋转的时长;S5311 records the rotation time in response to the display starting to rotate, and the rotation time is used to record the length of time the display rotates;
显示器开始旋转的判定方式,可以参阅上述实施例,在此便不赘述。For the determination method of the display starting to rotate, please refer to the above-mentioned embodiment, which will not be repeated here.
S5312根据旋转时间及预先存储的旋转速度,生成预测角度;S5312 generates a predicted angle according to the rotation time and the pre-stored rotation speed;
本申请中旋转速度预先生成,当需要生成预测角度时可以直接调取旋转速度。其中旋转速度的生成过程可以是:控制器被配置为执行步骤(1)-(4)In this application, the rotation speed is generated in advance, and the rotation speed can be directly called when the predicted angle needs to be generated. The generation process of the rotation speed can be: the controller is configured to perform steps (1)-(4)
步骤(1)控制器分别记录显示器275N次旋转第一预置角度所需的时间T
θ,N;
Step (1) The controller separately records the time T θ,N required for the display to rotate the first preset angle 275N times;
在实际应用的过程中可以根据需求设定第一预置角度,在一可行性实施例中第一预置角度设定为90度。In the actual application process, the first preset angle can be set according to requirements. In a feasible embodiment, the first preset angle is set to 90 degrees.
第一次旋转:控制器250控制显示器旋转,同时记录显示器275旋转90度所需的时间T
90,1;
First rotation: the controller 250 controls the rotation of the display, and at the same time records the time T 90,1 required for the display 275 to rotate 90 degrees;
第二次旋转:控制器250控制显示器旋转,同时记录显示器275旋转90度所需的 时间T
90,2;
Second rotation: the controller 250 controls the rotation of the display, and at the same time records the time T 90,2 required for the display 275 to rotate 90 degrees;
第三次旋转:控制器250控制显示器旋转,同时记录显示器275旋转90度所需的时间T
90,3;
Third rotation: the controller 250 controls the rotation of the display, and at the same time records the time T 90,3 required for the display 275 to rotate 90 degrees;
第四次旋转:控制器250控制显示器旋转,同时记录显示器275旋转90度所需的时间T
90,4;
Fourth rotation: the controller 250 controls the rotation of the display, and at the same time records the time T 90,4 required for the display 275 to rotate 90 degrees;
……...
第N次旋转:控制器250控制显示器旋转,同时记录显示器275旋转90度所需的时间T
90,N。
Nth rotation: The controller 250 controls the rotation of the display, and at the same time records the time T 90,N required for the display 275 to rotate 90 degrees.
步骤(2)控制器统计每个时间出现的概率;Step (2) The controller counts the probability of occurrence at each time;
控制器250统计T
θ,1,T
θ,2……T
θ,N出现的概率。
The controller 250 counts the occurrence probability of T θ,1 , T θ,2 ... T θ,N.
步骤(3)控制器筛选出概率大于预置概率的时间作为目标时间;Step (3) The controller screens out the time when the probability is greater than the preset probability as the target time;
其中,预置概率可以根据需求设定,其中预置概率的取值越高,相应的计算结果越准确。Among them, the preset probability can be set according to requirements, wherein the higher the value of the preset probability, the more accurate the corresponding calculation result.
步骤(4)根据第一预置角度及目标时间计算旋转速度;Step (4) Calculate the rotation speed according to the first preset angle and the target time;
可以根据如下公式计算旋转速度:The rotation speed can be calculated according to the following formula:
其中,V为旋转速度,θ为第一预置角度,T
θ,N为目标时间。
Among them, V is the rotation speed, θ is the first preset angle, and T θ, N is the target time.
在一可行性实施例中,θ=30度,根据上述方法计算出:In a feasible embodiment, θ=30 degrees, calculated according to the above method:
在一可行性实施例中,θ=90度,根据上述方法计算出:In a feasible embodiment, θ=90 degrees, calculated according to the above method:
本申请中,预测角度=旋转时间*旋转速度。In this application, the predicted angle=rotation time*rotation speed.
S5313基于预测角度绘制视频帧,以使第二旋转角度等于预测角度,第二旋转角度为视频帧的旋转角度。S5313 Draw the video frame based on the predicted angle, so that the second rotation angle is equal to the predicted angle, and the second rotation angle is the rotation angle of the video frame.
基于绘制角度绘制视频帧的实现方式可以参照上述基于第一旋转角度绘制视频帧的实现方式,在此便不赘述。The implementation manner of drawing the video frame based on the drawing angle can refer to the foregoing implementation manner of drawing the video frame based on the first rotation angle, which will not be repeated here.
S5314响应于显示器停止旋转,截取遮挡画面;S5314 intercepts the blocked image in response to the display stop rotating;
S5315响应于显示器停止旋转,通过视频层绘制控件绘制待播放视频的视频帧,对视频帧进行画质处理或运动补偿。In response to the display stop rotating, S5315 draws the video frame of the video to be played through the video layer drawing control, and performs image quality processing or motion compensation on the video frame.
S5316统计遮挡图像的显示时间;S5316 Counts the display time of the occluded image;
S5317响应于显示时间等于预置静帧时间,则撤销遮挡图像;In S5317, in response to the display time being equal to the preset still frame time, cancel the occluded image;
S54控制器显示器显示处理后的视频帧。The S54 controller display displays the processed video frame.
本申请实施例示出的显示设备显示器旋转的过程中,预测旋转角度是基于旋转时间及旋转速度计算得到,预测角度不受显示器实际的旋转角度影响,即使在旋转过程中显示器因触碰到限位开关而发生较大的抖动的情况下,控制器也可以基于当时的旋转时间及旋转速度得到合适的预测角度。本申请中预测角度随时间的增加而均匀增加,进而使得基于预测角度配置的视频画面随时间的增加而匀速旋转,在此过程中视频画面平缓变化,用户体验感较好。本实施例在显示器旋转的过程中,显示器所展示画面的变化图可以参阅图15,图15为根据一可行性实施例提供的显示器所展示画面的变化图;从图15中可以看出在显示器旋转的过程中,在显示器旋转的过程中,展示出来的视频帧可以随着显示器一同旋转。当显示器由旋转状态转换为静止状态时,控制器由Textureview输出视频帧切换至由Surfaceview输出视频帧,在此过程中,控制器控制显示器展示遮挡画面,因此,在此过程中不会出现闪黑屏的问题。During the rotation of the display device display shown in the embodiment of the application, the predicted rotation angle is calculated based on the rotation time and the rotation speed. The predicted angle is not affected by the actual rotation angle of the display, even if the display touches the limit during the rotation. In the case of a large jitter caused by the switch, the controller can also obtain an appropriate predicted angle based on the current rotation time and rotation speed. In this application, the prediction angle increases uniformly with the increase of time, so that the video screen configured based on the prediction angle rotates at a uniform speed with the increase of time. In this process, the video screen changes smoothly, and the user experience is better. In this embodiment, during the rotation of the display, the change of the picture displayed on the display can be seen in FIG. 15. FIG. 15 is a change of the picture displayed on the display according to a feasible embodiment; During the rotation process, the displayed video frame can be rotated along with the display during the rotation of the display. When the display changes from the rotating state to the static state, the controller switches from the Textureview output video frame to the Surfaceview output video frame. During this process, the controller controls the display to show the occluded picture, so there will be no flashing black screen during this process. The problem.
对于显示设备200,可以通过控制器250发出指令,控制旋转组件276的驱动电机按照指令指示的方向旋转预设角度,从而带动显示器275旋转至不同的旋转状态。通常,为了适应不同的观看需要,可以预设多种旋转角度使显示器275处于不同的旋转状态。例如,旋转状态可以包括横屏状态和竖屏状态,其中,所述横屏状态是指显示器275的屏幕长边平行于地面(或水平面),短边垂直于地面(或水平面),如图16A所示;所述竖屏状态是指显示器275的屏幕短边平行于地面(或水平面),长边垂直于地面(或水平面)如图16B所示。For the display device 200, an instruction can be issued by the controller 250 to control the driving motor of the rotating assembly 276 to rotate a preset angle according to the direction indicated by the instruction, so as to drive the display 275 to rotate to different rotation states. Generally, in order to adapt to different viewing needs, multiple rotation angles can be preset to make the display 275 in different rotation states. For example, the rotation state may include a horizontal screen state and a vertical screen state, where the horizontal screen state means that the long side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the short side is perpendicular to the ground (or horizontal plane), as shown in FIG. 16A As shown; the vertical screen state means that the short side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the long side is perpendicular to the ground (or horizontal plane) as shown in FIG. 16B.
显然,横屏状态比较适合播放画面比例为16:9,4:3等横屏形式的媒资,如电影、电视剧等常规视频资源。竖屏状态更适合播放画面比例为9:16,3:4等竖屏形式的媒资,例如,通过手机等终端拍摄的短视频、漫画等。Obviously, the horizontal screen state is more suitable for playing media assets with a horizontal screen ratio of 16:9, 4:3, etc., such as regular video resources such as movies and TV shows. The vertical screen state is more suitable for playing media assets with a vertical screen ratio of 9:16, 3:4, etc., for example, short videos, comics, etc. shot through terminals such as mobile phones.
需要说明的是,虽然横屏状态主要用于显示电视剧、电影等横向媒资,竖屏状态主要用于显示短视频、漫画等竖向媒资,但是上述横屏状态和竖屏状态只是两种不相同的显示器状态,并不对显示的内容构成限制。例如,在横屏状态下依然可以显示短视频、漫画等竖向媒资;在竖屏状态下也依然可以显示电视剧、电影等横向媒资,只是在该状态需要对不相符的显示窗口进行缩放调整。It should be noted that although the horizontal screen state is mainly used to display horizontal media assets such as TV series and movies, and the vertical screen state is mainly used to display vertical media assets such as short videos and comics, the above-mentioned horizontal screen state and vertical screen state are only two types. Different display states do not limit the displayed content. For example, vertical media assets such as short videos and comics can still be displayed in the horizontal screen state; horizontal media assets such as TV series and movies can still be displayed in the vertical screen state, but the inconsistent display window needs to be zoomed in this state. Adjustment.
不同的旋转状态对应于旋转组件276处在不同的旋转角度。实际应用中,如果定义显示器275横屏状态时旋转组件276的旋转角度为0度,则显示器275竖屏状态时旋转组件276的旋转角度为90度(或-90度)。除上述横屏状态和竖屏状态外,旋转组件276还可以带动显示器275旋转任意角度,例如,180度倒置屏状态等。Different rotation states correspond to different rotation angles of the rotating assembly 276. In practical applications, if the rotation angle of the rotating component 276 is defined as 0 degrees when the display 275 is in the horizontal screen state, the rotation angle of the rotating component 276 when the display 275 is in the vertical screen state is 90 degrees (or -90 degrees). In addition to the above-mentioned horizontal screen state and vertical screen state, the rotating component 276 can also drive the display 275 to rotate at any angle, for example, a 180-degree inverted screen state.
在显示设备200播放某些视频时,需要自动对显示器275进行旋转,以适应不同形式的视频资源。例如,在显示器275处于横屏状态时,用户选择播放短视频等竖屏媒资。显示设备200的操作系统可以检测出视频资源的画面宽高比小于1,而当前显示器275的屏幕宽高比大于1,即确定当前旋转状态与视频资源不匹配,从而自动向旋转组件276发送控制指令,使其带动显示器275顺时针(或逆时针)旋转90度,调整显示器275至竖屏状态。When the display device 200 plays certain videos, the display 275 needs to be automatically rotated to adapt to different forms of video resources. For example, when the display 275 is in the horizontal screen state, the user chooses to play vertical screen media assets such as short videos. The operating system of the display device 200 can detect that the aspect ratio of the video resource is less than 1, and the current screen aspect ratio of the display 275 is greater than 1, that is, it is determined that the current rotation state does not match the video resource, thereby automatically sending control to the rotation component 276 Instruct it to drive the display 275 to rotate 90 degrees clockwise (or counterclockwise) to adjust the display 275 to the vertical screen state.
显示设备200在显示视频画面时,还可以通过画质调整算法,对视频画面进行画质处理。画质处理可以包括对视频画面每一帧上图像的处理,如颜色校正、色彩调优等,还可以包括对视频画面的多帧数据进行处理,如插帧算法、运动补偿等。通过画质处理,可以进一步提高画面显示质量,从而在同等设备配置且不增加视频源资源大小的情况下,拥有更好的观影体验。When the display device 200 displays a video image, it may also perform image quality processing on the video image through an image quality adjustment algorithm. The image quality processing may include processing the image on each frame of the video picture, such as color correction, color adjustment, etc., and may also include processing the multi-frame data of the video picture, such as frame interpolation algorithm, motion compensation, etc. Through image quality processing, the image display quality can be further improved, so as to have a better viewing experience under the same equipment configuration and without increasing the size of the video source resource.
通常,为了在显示器275上进行视频画面显示,在显示设备200的系统框架中,配置 有多个显示层级,例如视频层(Video层)、图形层(surface层)等。其中,所述视频层是指用户在播放媒资后,显示设备200上用于呈现播放画面的显示层级,也可以称为显示设备200的画质层。在画质层可以显示媒资对应的播放画面。所述图形层用于为用户提供交互操作的显示层级,也可以称为显示设备200的UI(User Interface)层。其中,视频层可以对显示画面进行画质处理,图形层可以对显示的画面进行后期调整,如旋转、缩放等。并且所述图形层作为UI层还可以为显示画面添加各种交互控件,例如控制主页等,以便对画面进行手动调整。Generally, in order to display a video screen on the display 275, multiple display levels are configured in the system framework of the display device 200, such as a video layer (Video layer), a graphics layer (surface layer), and so on. Wherein, the video layer refers to the display level used to present the play screen on the display device 200 after the user plays the media assets, and may also be referred to as the image quality layer of the display device 200. The playback screen corresponding to the media assets can be displayed in the image quality layer. The graphics layer is used to provide a display level of interactive operations for users, and may also be referred to as a UI (User Interface) layer of the display device 200. Among them, the video layer can perform image quality processing on the displayed image, and the graphics layer can perform post-adjustment of the displayed image, such as rotation, zoom, and so on. In addition, the graphics layer as the UI layer can also add various interactive controls to the display screen, such as controlling the homepage, so as to manually adjust the screen.
对于可旋转的显示设备200,由于其显示器275的体积和重量较大,旋转组件276不能迅速将显示器275旋转到预设角度,因此在显示器275旋转的过程中,用户需要等待一定的时间才能正常观看视频资源。例如,显示器275从横屏状态旋转到竖屏状态需要消耗10-30s,在这段时间内,随着显示器275的旋转,显示器275上原本呈现的画面将会出现倾斜,直至显示器275完全旋转至竖屏状态后(或旋转至预设角度后),才能够调整显示画面旋转以及铺满屏幕。可见,在此期间,用户需要长时间观看倾斜的画面,严重影响用户体验。For the rotatable display device 200, due to the large size and weight of the display 275, the rotating assembly 276 cannot quickly rotate the display 275 to a preset angle. Therefore, the user needs to wait for a certain period of time to be normal during the rotation of the display 275. Watch video resources. For example, it takes 10-30 seconds for the display 275 to rotate from the horizontal screen state to the vertical screen state. During this time, as the display 275 rotates, the image originally presented on the display 275 will be tilted until the display 275 is completely rotated to After the vertical screen state (or after rotating to a preset angle), the display screen can be adjusted to rotate and fill the screen. It can be seen that during this period, the user needs to watch the tilted picture for a long time, which seriously affects the user experience.
鉴于此,在一些实施例中,可以实现在旋转显示器275的同时,对显示画面进行旋转,以使显示画面始终处于正向的状态,使用户在旋转显示器275的过程中也能够正常观看显示画面。为了实现上述效果,可以在视频层播放视频数据后,通过截取视频层中的画面,并对截取的画面进行旋转、缩放等处理,再发送到图形层进行显示,经过处理后的显示画面,可以保持在始终正向展示给用户的状态。In view of this, in some embodiments, it is possible to rotate the display screen while rotating the display 275, so that the display screen is always in a positive state, so that the user can view the display screen normally during the process of rotating the display 275. . In order to achieve the above effects, after playing the video data in the video layer, the screen in the video layer can be intercepted, and the intercepted screen can be rotated and zoomed, and then sent to the graphics layer for display. The processed display screen can be Keep it in a state where it is always shown to the user.
例如,在显示器275顺时针旋转30度的状态下,可以通过截取视频层中的图像,并逆时针旋转30度,以使画面在图形层逆时针倾斜30度显示,抵消显示器275转过的角度。此时在用户观看的角度,则为正向显示状态。For example, when the display 275 is rotated 30 degrees clockwise, the image in the video layer can be intercepted and rotated 30 degrees counterclockwise so that the screen is displayed on the graphics layer at an angle of 30 degrees counterclockwise to offset the rotation angle of the display 275. . At this time, the viewing angle of the user is in the forward display state.
同理,对于一些不支持竖屏状态的媒资画面,也可以采用上述方式完成竖屏状态下的显示。例如,对于部分应用程序,其播放界面只支持横屏状态,则在显示器275处于竖屏状态时,可以通过视频层截取图像,再将图像进行缩放、裁切、填充等处理,形成符合竖屏显示比例的画面,从而在图形层显示处理后的画面。In the same way, for some media assets that do not support the vertical screen state, the above method can also be used to complete the display in the vertical screen state. For example, for some applications, the playback interface only supports the horizontal screen state. When the display 275 is in the vertical screen state, the image can be captured through the video layer, and then the image can be scaled, cropped, and filled to form a vertical screen. Display the scaled screen, so that the processed screen is displayed on the graphics layer.
通常,显示设备200播放的视频数据包括用于呈现显示画面的video数据和用于呈现声音的audio数据。由于只能截取视频层中的video数据到图形层显示,而audio数据仍然需要由原通路输出,即在视频层仍然需要播放视频数据以输出audio数据。Generally, the video data played by the display device 200 includes video data for presenting a display screen and audio data for presenting sound. Since only the video data in the video layer can be intercepted and displayed on the graphics layer, the audio data still needs to be output from the original channel, that is, the video data still needs to be played in the video layer to output the audio data.
基于此,在显示设备200处于竖屏状态下或者在旋转过程中,启动视频播放会受到硬件性能、应用解码效率等因素影响,出现画面时延,使得第一次送到图形层显示的视频数据不能被及时获取到,而视频层已经在显示画面内容。这种情况下可能导致竖屏状态下开始播放视频时,会先闪出视频层中的画面,再显示图形层画面的问题。Based on this, when the display device 200 is in the vertical screen state or during the rotation process, starting video playback will be affected by factors such as hardware performance, application decoding efficiency, etc., and there will be picture delays, making the video data sent to the graphics layer for the first time. Cannot be obtained in time, and the video layer is already displaying the screen content. In this case, when starting to play a video in portrait mode, the screen in the video layer will flash first, and then the graphics layer screen will be displayed.
同理,在退出视频播放时,由于图形层画面比视频层退出的快,会在退出图形层后,视频层仍然输出视频数据对应的画面,导致竖屏状态下退出视频播放也存在闪视频层画面的问题。即对于可旋转的显示设备200,在开始播放视频和退出播放视频时都会出现闪屏问题,严重影响用户体验。Similarly, when exiting video playback, since the graphics layer exits faster than the video layer, the video layer will still output the corresponding image of the video data after exiting the graphics layer, resulting in a flash video layer when exiting the video playback in the vertical screen state. The problem with the picture. That is, for the rotatable display device 200, a flashing screen problem occurs when starting to play a video and when exiting from playing a video, which seriously affects the user experience.
为了改善用户体验,本申请的部分实施例中提供一种竖屏状态下视频播放方法,所述方法可应用于显示设备200,其中显示设备200可以包括显示器275、旋转组件276以及控制器250。所述方法可以控制程序的形式配置在控制器250中,用于控制开始播放视频时的显示画面控制。如图17所示,所述方法包括以下步骤:In order to improve the user experience, some embodiments of the present application provide a video playback method in a portrait mode. The method may be applied to the display device 200, where the display device 200 may include a display 275, a rotating component 276, and a controller 250. The method can be configured in the controller 250 in the form of a control program to control the display screen control when starting to play the video. As shown in Figure 17, the method includes the following steps:
S171:获取用户输入的开始播放指令。S171: Acquire a start playing instruction input by the user.
显示设备200可以通过服务器300或本地资源以及第三方资源平台获取视频数据,并通过显示设备200中的播放器进行解码,以在显示器275上呈现视频数据对应的具体画面内容。The display device 200 may obtain the video data through the server 300 or a local resource and a third-party resource platform, and decode it through a player in the display device 200 to present the specific screen content corresponding to the video data on the display 275.
根据显示设备200与用户的交互方式不同,用户可以通过不同的交互动作以输入用于 开始播放视频的指令。例如,用户可以通过控制装置100(如遥控器)上的按键交互进入应用列表界面或媒资选择界面,并在应用列表界面或媒资选择界面中通过“上、下、左、右”键调整焦点光标位置。在焦点光标位于“××视频”等应用图标或任一媒资图标上以后,按下“确定/OK”键输入开始播放指令,以开始播放视频数据。According to different interaction modes between the display device 200 and the user, the user can input an instruction for starting to play the video through different interactive actions. For example, the user can interactively enter the application list interface or the media asset selection interface through the buttons on the control device 100 (such as the remote control), and use the "up, down, left, and right" keys to adjust in the application list interface or the media asset selection interface. Focus cursor position. After the focus cursor is positioned on the application icon such as "××Video" or any media resource icon, press the "OK/OK" key to input the start playing instruction to start playing the video data.
用户还可以按照其他方式输入用于开始播放视频数据的控制指令。例如,对于支持触控操作的显示设备200,用户可以直接在应用列表界面或媒资选择界面中的视频数据对应图标位置上点击触控,以播放对应的视频数据。对于内置智能语音系统的显示设备200,用户可以通过输入诸如“播放《××》”、“我想看《××》”等语音指令,控制显示设备200启开始播放视频数据。The user can also input a control instruction for starting to play video data in other ways. For example, for the display device 200 that supports touch operation, the user can directly click and touch on the position of the icon corresponding to the video data in the application list interface or the media asset selection interface to play the corresponding video data. For the display device 200 with a built-in intelligent voice system, the user can control the display device 200 to start playing video data by inputting voice instructions such as "play "XX", "I want to watch "XX"".
S172:响应于所述开始播放指令,通过视频层播放视频数据。S172: In response to the start playing instruction, play the video data through the video layer.
在获取用户输入开始播放指令后,显示设备200可以从对应的视频源获取视频数据。例如显示设备200可以在接收到开始播放指令后,通过调用存储器260,提取其中存储的本地视频数据;显示设备200还可以在接收到开始播放指令后,形成数据获取指令,并将数据获取指令发送到服务器300或第三方资源平台,服务器300或第三方资源平台可以根据数据获取指令,向显示设备200反馈视频数据。After acquiring the user input to start playing instructions, the display device 200 may acquire video data from the corresponding video source. For example, the display device 200 can retrieve the local video data stored in the memory 260 after receiving the start playback instruction; the display device 200 can also form a data acquisition instruction after receiving the start playback instruction, and send the data acquisition instruction To the server 300 or the third-party resource platform, the server 300 or the third-party resource platform may feed back the video data to the display device 200 according to the data acquisition instruction.
显示设备200在得到视频数据后,可以通过播放器对视频数据进行解码,以形成具体的视频画面,从而通过视频层播放具体的视频画面。显然,对于视频数据,其在解码后一般可以获得video数据和audio数据,其中,video数据可以通过视频层形成具体的画面,以便在显示器275中进行展示。audio数据则可以通过显示设备200内置或外接的音频输出装置输出对应的声音,以播放音频数据。而为了实现音画同步,video数据和audio数据的展示过程要保持同步。After the display device 200 obtains the video data, the video data can be decoded by the player to form a specific video picture, so that the specific video picture is played through the video layer. Obviously, for video data, video data and audio data can generally be obtained after decoding, where the video data can form a specific picture through the video layer for display on the display 275. The audio data can output corresponding sound through an audio output device built-in or externally connected to the display device 200 to play the audio data. In order to achieve audio-visual synchronization, the display process of video data and audio data must be synchronized.
需要说明的是,在本实施例中,所述通过视频层播放视频数据是指将视频解码后,在视频层展示的过程,并不包括在显示器275上呈现最终画面的过程。在显示器275上呈现的最终画面是由多个显示层级叠加而成,而视频层仅仅是多个显示层级中的一层。It should be noted that in this embodiment, the playback of video data through the video layer refers to the process of displaying the video on the video layer after decoding the video, and does not include the process of presenting the final picture on the display 275. The final picture presented on the display 275 is formed by superimposing multiple display levels, and the video layer is only one of the multiple display levels.
S173:从所述视频层截取图像画面,以及向图形层发送截取的图像画面。S173: Intercept an image frame from the video layer, and send the intercepted image frame to the graphics layer.
当显示器275处于竖屏状态或者正在旋转过程中,为了呈现便于用户观看的正向展示的画面,需要将视频层的画面进行截取,并经过旋转缩放等处理后,在图形层进行展示。由于所述图形层在所述视频层的上层显示,因此图形层中的画面将对视频层的画面进行遮挡,从而使用户观看到的显示内容为经过变换后图形层中的内容。When the display 275 is in the vertical screen state or in the process of rotating, in order to present a positive display screen that is convenient for the user to watch, the screen of the video layer needs to be intercepted, and after processing such as rotation and zooming, it is displayed on the graphics layer. Since the graphics layer is displayed on the upper layer of the video layer, the screens in the graphics layer will block the screens of the video layer, so that the displayed content viewed by the user is the content in the graphics layer after transformation.
例如,竖屏状态是相对于横屏状态顺时针转动90°的状态,在显示器275处于竖屏状态时,需要将视频层中的每一帧图像进行截取,并对截取后的图像逆时针转动90°,同时进行缩放,以适应竖屏状态的显示窗口形式。For example, the vertical screen state is a state that is rotated 90° clockwise relative to the horizontal screen state. When the display 275 is in the vertical screen state, each frame of image in the video layer needs to be captured, and the captured image is rotated counterclockwise. 90°, zoom in and out at the same time, to adapt to the display window form of the vertical screen state.
显然,为了能够使显示设备200正常输出audio数据,并且能够在视频层中截取图像画面,视频层在视频播放过程中,应持续展示视频画面。此外,为了使图形层遮挡视频层中的画面,对截取的图像画面进行处理的过程还可以包括对图像画面上添加填充区域。例如,填充区域可以是在图像画面中有效内容以外的边缘区域添加纯色画面,以通过纯色画面遮挡视频层中的画面内容。Obviously, in order to enable the display device 200 to normally output audio data and to capture image frames in the video layer, the video layer should continue to display the video images during the video playback process. In addition, in order to make the graphics layer obscure the picture in the video layer, the process of processing the intercepted image picture may also include adding a filling area to the image picture. For example, the filled area may be to add a pure color picture to the edge area outside the effective content in the image picture, so as to block the picture content in the video layer through the pure color picture.
S174:控制所述图形层显示黑屏,至所述图形层接收到所述图像画面后,继续在所述图形层显示所述图像画面。S174: Control the graphics layer to display a black screen, until the graphics layer receives the image frame, continue to display the image frame on the graphics layer.
在向图形层发送截取的图像画面后,图形层可以展示经过处理后的截取画面。由于视频层中的图像画面在经过截取后,还需要进行旋转、缩放、填充等处理,因此截取、处理以及发送到图形层的过程会消耗一定的时间才能够在图形层中显示,即造成在开始播放的一段时间内,图形层中尚未显示具体画面,而视频层中已经展示了相应的画面,使显示器275在这段时间内显示出视频层中的画面,出现闪屏问题。After sending the intercepted image screen to the graphics layer, the graphics layer can display the processed intercepted screen. Since the image in the video layer needs to be rotated, zoomed, filled, etc. after being intercepted, the process of intercepting, processing, and sending to the graphics layer will take a certain amount of time before it can be displayed in the graphics layer. For a period of time after starting to play, no specific pictures have been displayed in the graphics layer, but the corresponding pictures have been displayed in the video layer, so that the display 275 displays the pictures in the video layer during this period of time, and a splash screen problem occurs.
为此,如图18所示,在控制将视频层中截取的画面发送给图形层以后,可以控制图形层显示黑屏画面,从而在图形层能够对视频层中的画面内容进行遮挡,直到图形层中接 收到截取的画面后,再继续在图形层中显示截取的视频数据对应的画面。To this end, as shown in Figure 18, after controlling to send the screenshots in the video layer to the graphics layer, you can control the graphics layer to display a black screen, so that the graphics layer can block the screen content in the video layer until the graphics layer After receiving the intercepted picture in, continue to display the picture corresponding to the intercepted video data in the graphics layer.
可见,在本实施例中,通过在开始播放视频阶段控制图形层显示黑屏,来避免视频层已显示播放的视频内容,而图形层由于获取视频帧慢使得还没有视频内容时,导致的闪视频层中视频画面的问题。It can be seen that, in this embodiment, by controlling the graphics layer to display a black screen at the beginning of the video playback stage, the video layer has already displayed the played video content, and the graphics layer is slow to obtain the video frame so that there is no video content, resulting in flashing video The problem with the video picture in the layer.
为了能够在视频层播放视频数据,在一些实施例中,通过视频层播放视频数据的步骤还包括:In order to be able to play video data in the video layer, in some embodiments, the step of playing video data through the video layer further includes:
S201:启动所述开始播放指令中指定的应用程序;S201: Start the application program specified in the start playing instruction;
S202:通过所述应用程序创建播放器和所述视频层;S202: Create a player and the video layer through the application program;
S203:通过所述播放器解码视频数据,以在视频层播放视频数据对应的画面。S203: Decode the video data by the player to play a picture corresponding to the video data on the video layer.
由于显示设备200可以通过应用程序播放视频数据,因此在用户输入开始播放指令后,控制器250可以对开始播放指令进行解析,获取其中指定的应用程序包名信息,并根据指定的应用程序包名信息启动运行能够播放视频数据的应用程序。其中,所述应用程序是指能够安装在显示设备200中的系统应用或第三方应用,可以根据显示设备200的操作系统平台表现为不同的形式,例如,基于安卓系统的APK。Since the display device 200 can play the video data through the application program, after the user inputs the start play instruction, the controller 250 can parse the start play instruction, obtain the specified application package name information therein, and use the specified application package name. Information starts running applications that can play video data. Wherein, the application program refers to a system application or a third-party application that can be installed in the display device 200, and can be expressed in different forms according to the operating system platform of the display device 200, for example, an APK based on the Android system.
在启动应用程序后,可以通过应用程序创建播放器和视频层。例如,APK创建播放器以及APK创建视频窗口,即视频层(surfaceview),从而通过播放器解码待播放的视频数据,以便在视频层播放视频数据对应的画面。After launching the application, the player and video layer can be created through the application. For example, the APK creates a player and the APK creates a video window, that is, a video layer (surfaceview), so that the video data to be played is decoded by the player, so as to play a picture corresponding to the video data on the video layer.
例如,用户在应用程序界面中选择“聚好看”应用,并在按下遥控器上的“确认/OK”键以后,启动运行聚好看应用APK,再通过选择应用界面中任一媒资图标,开始视频数据播放。APK按照视频播放程序,分别创建播放器和视频层,从而通过播放器对选中媒资数据进行解码,从而在视频层展示解码后形成的画面。For example, the user selects the "Juhaokan" application in the application program interface, and after pressing the "OK/OK" button on the remote control, starts and runs the Juhaokan application APK, and then selects any media asset icon in the application interface. Start video data playback. The APK creates a player and a video layer according to the video playback program, so that the selected media asset data is decoded by the player, and the decoded picture is displayed on the video layer.
对于可旋转的显示设备200,由于其内置的播放方式,会在检测到显示器275处于的状态发生改变时,自动调整视频层中画面的朝向,以适应显示器275的旋转状态。其中所述旋转状态包括横屏状态和竖屏状态。例如,在显示设备200处于横屏状态时,视频层可以按照视频数据的原始方向进行展示,而在竖屏状态时,视频层中播放形成的画面可以被顺时针旋转90°,以适应竖屏状态。For the rotatable display device 200, due to its built-in playback mode, when the state of the display 275 is detected to be changed, the orientation of the picture in the video layer is automatically adjusted to adapt to the rotation state of the display 275. The rotation state includes a horizontal screen state and a vertical screen state. For example, when the display device 200 is in the horizontal screen state, the video layer can be displayed according to the original orientation of the video data, while in the vertical screen state, the picture formed in the video layer can be rotated 90° clockwise to adapt to the vertical screen. state.
但由于在本申请实施例中,设定竖屏状态下的画面旋转操作是在对视频层画面进行截取后的处理过程中完成,因此为了防止最终呈现的画面多旋转90°。如图19所示,在本申请的部分实施例中,通过所述应用程序创建播放器和所述视频层的步骤还包括:However, in the embodiment of the present application, the screen rotation operation in the vertical screen state is set during the processing after the video layer screen is captured, so in order to prevent the final presented screen from rotating by 90°. As shown in FIG. 19, in some embodiments of the present application, the step of creating the player and the video layer through the application program further includes:
S181:为所述视频层设置第一标记信息;S181: Set first mark information for the video layer;
S182:通过所述旋转组件检测所述显示器的旋转状态;S182: Detect the rotation state of the display through the rotation component;
S183:如果所述显示器处于竖屏状态,根据所述第一标记信息控制所述视频层的画面不旋转角度。S183: If the display is in the vertical screen state, control the non-rotation angle of the picture of the video layer according to the first mark information.
为了表示当前视频播放过程需要适应旋转状态,可以在创建播放器和视频层后,通过设置标记信息的方式对创建的视频层进行表示。例如,视频窗口创建完成之后,APK设置标记信息flags1,并把它传递给视频层(surfaceview)。In order to indicate that the current video playback process needs to adapt to the rotation state, after the player and the video layer are created, the created video layer can be represented by setting mark information. For example, after the video window is created, the APK sets the flag information flags1 and passes it to the video layer (surfaceview).
APK再通过对显示器275所处的旋转状态进行检测,当判断此时显示器275处于竖屏状态时,surfaceview根据应用设置下来的标记信息flags1,控制其对应的视频层中的画面,不再跟随显示器275的旋转角度(竖屏90度)进行旋转,以此避免视频内容的显示方向存在多转90度的异常显示问题。The APK then detects the rotation state of the display 275. When it is judged that the display 275 is in the vertical screen state at this time, the surfaceview controls the corresponding picture in the video layer according to the flag information flags1 set by the application, and no longer follows the display The rotation angle of 275 (vertical screen 90 degrees) is rotated to avoid the abnormal display problem of multiple rotations of 90 degrees in the display direction of the video content.
其中,对旋转状态的检测可以通过显示设备200内置的重力加速度传感器、以及设置在旋转组件276上的角度传感器等设备完成。例如,可以预设显示器275处于横屏状态时的旋转角度为0,而通过角度传感器检测到旋转组件276的转角为90°,即可确定当前显示器275处于竖屏状态。Wherein, the detection of the rotation state can be completed by devices such as a gravity acceleration sensor built in the display device 200 and an angle sensor provided on the rotation component 276. For example, it can be preset that the rotation angle of the display 275 in the landscape state is 0, and the angle sensor detects that the rotation angle of the rotation component 276 is 90°, and it can be determined that the current display 275 is in the portrait state.
需要说明的是,由于在显示器275旋转过程中,也采用从视频层截取图像画面并进行调整处理以在图形层进行显示的方式,而视频层画面旋转控制过程中,一般是在旋转组件 276转动一定角度后,自动完成图像画面的旋转,因此在显示器275的整个旋转过程中,都应停止控制视频层画面跟随显示器275的旋转角度进行旋转的方式。即在部分实施例中,可以在检测到旋转组件276发生转角变化时,即执行根据所述第一标记信息控制所述视频层的画面不旋转角度。It should be noted that during the rotation process of the display 275, the image screen is also taken from the video layer and adjusted to be displayed on the graphics layer. In the process of video layer screen rotation control, the rotation component 276 is generally rotated. After a certain angle, the rotation of the image frame is automatically completed. Therefore, during the entire rotation of the display 275, the manner in which the video layer frame rotates following the rotation angle of the display 275 should be stopped. That is, in some embodiments, when it is detected that the rotation angle of the rotation component 276 changes, the control of the non-rotation angle of the picture of the video layer according to the first mark information may be executed.
如图20所示,在本申请的部分实施例中,控制所述图形层显示黑屏的步骤还包括:As shown in FIG. 20, in some embodiments of the present application, the step of controlling the graphics layer to display a black screen further includes:
S191:创建图形层以及为所述图形层设置第二标记信息;S191: Create a graphics layer and set second mark information for the graphics layer;
S192:检测所述图形层是否接收到所述图像画面;S192: Detect whether the image frame is received by the graphics layer;
S193:如果所述图形层未接收到所述图像画面,根据所述第二标记信息控制所述图形层显示黑屏。S193: If the graphics layer does not receive the image frame, control the graphics layer to display a black screen according to the second mark information.
通过所启动运行的应用程序,可以创建图形层,并为图形层设置第二标记信息,即APK设置标记信息flags2,并把它传递给surface(图形层)。创建图形层后,可以通过图形层检测所接收到的图像画面,即是否接收到从视频层截取并完成图像处理的图像画面。如果图形层接收到图像画面,则可以直接将接收到的画面进行显示;如果图形层未接收到图像画面,则可以在显示图像画面前,显示黑屏,以遮挡视频层中的画面。Through the application that is started to run, a graphics layer can be created, and the second flag information can be set for the graphics layer, that is, the APK sets the flag information flags2, and transmits it to the surface (graphic layer). After the graphic layer is created, the received image frame can be detected through the graphic layer, that is, whether an image frame that is intercepted from the video layer and processed by the image is received. If the graphics layer receives the image frame, it can directly display the received frame; if the graphics layer does not receive the image frame, it can display a black screen before displaying the image frame to cover the frame in the video layer.
例如,apk通过给截取服务发送指令a,开启截取服务,以通过截取服务创建surface(图形层)。截取服务还实时截取解码后的视频数据并发送到图形层去显示。当sufaceflinger检测到对应的图形层还没有视频数据被送过来时,就会根据之前收到的应用设置的标记信息flags2,控制该图形层显示黑屏。由此避免视频层已显示播放的视频内容,而图形层由于获取视频帧较慢使得还没有视频内容时,而导致的闪视频层视频画面的问题。For example, the apk sends an instruction a to the interception service to start the interception service to create a surface (graphics layer) through the interception service. The interception service also intercepts the decoded video data in real time and sends it to the graphics layer for display. When sufaceflinger detects that no video data has been sent to the corresponding graphics layer, it will control the graphics layer to display a black screen according to the flag information flags2 set by the previously received application. This avoids the problem of flashing the video image of the video layer when the video layer has already displayed the played video content, and the graphics layer has no video content due to the slow acquisition of video frames.
需要说明的是,在上述显示过程中,播放器具有生命周期状态,因此还可以通过检测播放器的生命周期内所处的状态,并根据播放器所处的状态为视频层设置第一标记信息以及创建图形层。例如,APK检测到播放器的生命周期处于prepared状态之前时,APK设置标记信息flags2,并把它传递给surface(图形层);而APK检测到播放器的生命周期处于prepared状态时,APK通过给截取服务发送指令a,以创建surface(图形层)。It should be noted that in the above display process, the player has a life cycle state, so it can also detect the state of the player during the life cycle, and set the first mark information for the video layer according to the state of the player. And create a graphics layer. For example, when the APK detects that the life cycle of the player is before the prepared state, the APK sets the flag information flags2 and passes it to the surface (graphics layer); and when the APK detects that the life cycle of the player is in the prepared state, the APK passes to The interception service sends instruction a to create a surface (graphics layer).
由于在上述实施例中,需要对视频层中图像画面进行截取,并对截取的图像进行调整处理,以便在图形层进行显示,因此在一些实施例中,可以按照如下方式截取图像,即从所述视频层截取图像画面的步骤还包括:Since in the above-mentioned embodiment, the image in the video layer needs to be intercepted, and the intercepted image needs to be adjusted for display on the graphics layer, in some embodiments, the image can be intercepted as follows, that is, from the The steps of capturing an image frame at the video layer further include:
S311:创建截取服务;S311: Create an interception service;
S312:对所述视频数据进行画质处理,以获取图像画面;S312: Perform image quality processing on the video data to obtain an image frame;
S313:调用所述截取服务截取所述图像画面。S313: Invoke the interception service to intercept the image screen.
其中,所述截取服务用于截取视频帧数据,截取服务也可以在系统开机初始化运行时创建,并且在需要对显示画面进行旋转时,调用服务实时的截取视频层数据,并输送到图形层显示。在进行截取前,还可以通过视频层对视频数据进行画质处理,获得图像画面。Wherein, the interception service is used to intercept the video frame data. The interception service can also be created when the system is started and initialized, and when the display screen needs to be rotated, the service is called to intercept the video layer data in real time and send it to the graphics layer for display. . Before the interception, the video data can also be processed for image quality through the video layer to obtain an image.
为了获得更好的显示效果或者适应显示设备200的硬件配置,图像画面可以与原待显示图像拥有更高的帧率和/或不同的图像画面效果。显然,为了能够在图形层形成视频画面,所述截取服务的截取频率可以设置为大于25帧/秒。而为了获得更好的显示效果,可以适当增大截取频率,例如,设置截取服务的截取频率等于所述显示器275的屏幕刷新率60Hz。In order to obtain a better display effect or adapt to the hardware configuration of the display device 200, the image screen may have a higher frame rate and/or different image screen effects from the original image to be displayed. Obviously, in order to be able to form a video picture on the graphics layer, the interception frequency of the interception service can be set to be greater than 25 frames/second. In order to obtain a better display effect, the interception frequency can be appropriately increased. For example, the interception frequency of the interception service can be set equal to the screen refresh rate of the display 275 at 60 Hz.
例如,在视频层完成(或部分完成)对待显示视频画面的画质处理后,可以调用创建的截取服务,并在视频层获取经画质处理后的图像画面。针对图像画面,截取服务可以逐帧截取以获得与原画面相同的帧数,截取服务还可以间隔帧截取,以在满足视频流畅性的前提下,减少截取和图像处理次数,缓解显示设备200的处理负荷。For example, after the video layer completes (or partially completes) the image quality processing of the to-be-displayed video image, the created interception service can be invoked, and the image image after image quality processing can be obtained in the video layer. For the image screen, the interception service can intercept frame by frame to obtain the same number of frames as the original image. The interception service can also intercept the frame at intervals to reduce the number of interception and image processing under the premise of meeting the video fluency, and alleviate the problem of the display device 200. Processing load.
为了适应在旋转过程中维持正向显示画面的效果,在一些实施例中,向图形层发送截取的图像画面的步骤还包括:In order to adapt to the effect of maintaining the forward display screen during the rotation process, in some embodiments, the step of sending the captured image screen to the graphics layer further includes:
S321:通过所述旋转组件获取显示器旋转信息;S321: Obtain display rotation information through the rotation component;
S322:根据所述显示器旋转信息旋转和/或缩放截取的图像画面,以获得中间图像;S322: Rotate and/or zoom the captured image frame according to the display rotation information to obtain an intermediate image;
S323:向图形层发送所述中间图像。S323: Send the intermediate image to the graphics layer.
本实施例中,中间图像是指在显示器275旋转过程中所呈现给用户的图像画面。中间图像可在图形层中完成显示,因此为了形成中间图像,控制器250可以通过旋转组件276实时获取显示器旋转信息,即获取显示器275在任一时刻上的转角状态。再根据显示器旋转信息对截取的图像画面进行旋转和/或缩放等调整处理,以将图像画面能够调整到适应当前显示器275转角状态的形式,最后将调整处理后的中间图像发送给图形层进行显示,使其维持正向显示。In this embodiment, the intermediate image refers to the image frame presented to the user during the rotation of the display 275. The intermediate image can be displayed in the graphics layer. Therefore, in order to form the intermediate image, the controller 250 can obtain the display rotation information through the rotation component 276 in real time, that is, obtain the rotation angle state of the display 275 at any time. Then, according to the display rotation information, perform adjustment processing such as rotation and/or zooming of the intercepted image to adjust the image to a form that can adapt to the current 275 corner state of the display, and finally send the adjusted intermediate image to the graphics layer for display , To maintain the positive display.
基于上述竖屏状态下视频播放方法,本申请的部分实施例中还提供一种显示设备200,包括:显示器275、旋转组件276以及控制器250。其中,显示器275被配置为呈现用户界面;旋转组件276被配置为带动所述显示器275旋转,以使所述显示器275处于横屏状态或竖屏状态中的一种;控制器250被配置为执行以下程序步骤:Based on the above video playback method in the vertical screen state, some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250. Wherein, the display 275 is configured to present a user interface; the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state; the controller 250 is configured to execute The following program steps:
S171:获取用户输入的开始播放指令;S171: Acquire a start playing instruction input by the user;
S172:响应于所述开始播放指令,通过视频层播放视频数据;S172: In response to the start playing instruction, play the video data through the video layer;
S173:从所述视频层截取图像画面,以及向图形层发送截取的图像画面,所述图形层在所述视频层的上层显示;S173: Intercept an image frame from the video layer, and send the intercepted image frame to a graphics layer, where the graphics layer is displayed on an upper layer of the video layer;
S174:控制所述图形层显示黑屏,至所述图形层接收到所述图像画面后,继续在所述图形层显示所述图像画面。S174: Control the graphics layer to display a black screen, until the graphics layer receives the image frame, continue to display the image frame on the graphics layer.
由以上技术方案可知,上述实施例中提供的显示设备200及竖屏状态下视频播放方法可以在获取用户输入的开始播放指令后,通过视频层播放视频数据,并从视频层截取图像画面,以及向图形层发送截取的图像画面,在开始视频播放时,控制图形层先显示黑屏,至图形层接收到图像画面后,继续在图形层显示图像画面。所述方法可以在播放视频前通过控制图形层显示黑屏画面,缓解因视频层和图形层起播速度不同而造成的闪屏问题。It can be seen from the above technical solutions that the display device 200 and the video playback method in the vertical screen state provided in the above embodiments can play video data through the video layer after obtaining the user input start playback instruction, and capture the image screen from the video layer, and Send the intercepted image screen to the graphics layer. When starting the video playback, control the graphics layer to display a black screen first. After the graphics layer receives the image screen, continue to display the image screen on the graphics layer. The method can control the graphics layer to display a black screen picture before playing the video, and alleviate the splash screen problem caused by the different starting speeds of the video layer and the graphics layer.
上述实施例中提供了在开始播放视频时,通过控制图形层显示黑屏状态,以缓解因启动速度不同而造成的启动时闪屏的问题。与上述实施例中相对应的情况下,在停止播放视频时,由于图形层和视频层的关闭速度也不同,会造成显示设备200先关闭图形层,而后关闭视频层,因此在关闭图形层后,显示器275中可能再次出现闪屏的问题。The foregoing embodiment provides that when starting to play a video, the black screen state is displayed by controlling the graphics layer to alleviate the problem of screen flickering during startup caused by different startup speeds. Corresponding to the above-mentioned embodiment, when the video is stopped, the closing speeds of the graphics layer and the video layer are also different, which will cause the display device 200 to first close the graphics layer and then close the video layer. Therefore, after closing the graphics layer , The problem of the flickering screen may reappear in the display 275.
基于此,本申请的部分实施例中,还提供一种竖屏状态下视频播放方法,应用于显示设备200在关闭播放视频时的显示控制。如图21所示,所述方法包括以下步骤:Based on this, in some embodiments of the present application, a method for playing a video in a portrait mode is also provided, which is applied to the display control of the display device 200 when the video is turned off to play. As shown in Figure 21, the method includes the following steps:
S211:获取用户输入的关闭播放指令;S211: Acquire a closing playback instruction input by the user;
S212:响应于所述关闭播放指令,关闭视频层;S212: In response to the closing play instruction, close the video layer;
S213:从所述视频层截取图像画面,至检测到所述视频层关闭完成的回调后,停止向图形层发送截取的图像画面。S213: Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected.
同理,在关闭视频播放过程时,可以由用户通过控制装置100、触控操作或语音输入等方式输入关闭播放指令。由于视频层的关闭速度相对于图形层较慢,因此控制器250在接收到关闭播放指令后,可以先执行关闭视频层的程序,并在执行程序的过程中,持续从视频层中截取图像画面,并发送给图形层进行显示,以维持图形层有画面。直至检测到视频层关闭完成的回调信息后,停止截取图像画面和向图形层发送截取的图像画面。In the same way, when closing the video playback process, the user can input the closing playback instruction through the control device 100, touch operation, or voice input. Since the closing speed of the video layer is slower than that of the graphics layer, the controller 250 can first execute the program to close the video layer after receiving the closing playback instruction, and continue to capture images from the video layer during the execution of the program , And sent to the graphics layer for display, to maintain the graphics layer has a picture. Until the callback information that the video layer is closed is detected, stop capturing the image frame and sending the captured image frame to the graphics layer.
在停止向图形层发送截取的图像画面后,再关闭图形层,以关闭视频播放。因此,在关闭播放功能的过程中,图形层始终有画面能够遮挡视频层的画面,从而通过图形层画面的遮挡,缓解在关闭过程中因显示视频层画面,而出现的闪屏问题。After stopping sending the intercepted image to the graphics layer, close the graphics layer to close the video playback. Therefore, in the process of closing the playback function, there is always a picture in the graphics layer that can block the picture of the video layer, so that through the occlusion of the picture of the graphics layer, the problem of splash screen caused by displaying the video layer picture during the closing process is alleviated.
进一步地,为了关闭播放过程,所述方法还包括:Further, in order to close the playback process, the method further includes:
S501:检测所述视频层关闭完成的回调;S501: Detect the callback of completion of closing of the video layer;
S502:在检测到所述视频层关闭完成的回调后,释放播放器;S502: Release the player after detecting the completion of the callback for closing the video layer;
S503:在检测到所述播放器释放完成的回调后,停止获取解码后的视频数据。S503: Stop acquiring decoded video data after detecting the callback of completion of the player release.
在停止向图形层发送截取的图像画面后,控制器250可以进一步通过检测视频层关闭完成的回调信息,实现在检测到视频层关闭完成的回调后,释放播放器,再通过检测播放器释放完成的回调信息,从而在检测到播放器释放完成的回调后,停止获取解码后的视频 数据。After stopping sending the captured image frame to the graphics layer, the controller 250 may further detect the callback information of the completion of the video layer closing, so as to release the player after detecting the callback of the completion of the video layer closing, and then detect the completion of the player release. Callback information, so that after detecting the completion of the callback of the player release, stop obtaining the decoded video data.
即在整个关闭视频播放功能的过程中,如果显示器275处于竖屏状态下,apk会先收到遥控器返回键的消息,以输入关闭播放指令。并根据关闭播放指令,apk销毁当前视频播放窗口surfaceview;apk在收到surfaceview销毁完成的回调后,释放播放器;、apk在收到播放器释放完成的回调之后,给服务下发指令d,用于控制截取服务停止截取解码后的视频数据。从而在播放器释放完毕后,再去停止获取解码后的视频数据,以此来保证,视频退出播放不会闪视频层的画面。That is, during the entire process of turning off the video playback function, if the display 275 is in the vertical screen state, the apk will first receive the message of the return button of the remote control to input a command to turn off the playback. And according to the command to close the playback, apk destroys the current video playback window surfaceview; apk releases the player after receiving the callback of completion of surfaceview destruction; apk sends command d to the service after receiving the callback of completion of the player release, and use To control the interception service to stop intercepting the decoded video data. Therefore, after the player is released, stop obtaining the decoded video data to ensure that the video layer will not flash when the video exits.
基于上述竖屏状态下视频播放方法,本申请的部分实施例中还提供一种显示设备200,包括:显示器275、旋转组件276以及控制器250。其中,显示器275被配置为呈现用户界面;旋转组件276被配置为带动所述显示器275旋转,以使所述显示器275处于横屏状态或竖屏状态中的一种;控制器250被配置为执行以下程序步骤:Based on the above video playback method in the vertical screen state, some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250. Wherein, the display 275 is configured to present a user interface; the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state; the controller 250 is configured to execute The following program steps:
S211:获取用户输入的关闭播放指令;S211: Acquire a closing playback instruction input by the user;
S212:响应于所述关闭播放指令,关闭视频层;S212: In response to the closing play instruction, close the video layer;
S213:从所述视频层截取图像画面,至检测到所述视频层关闭完成的回调后,停止向图形层发送截取的图像画面,所述图形层在所述视频层的上层显示。S213: Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected, and the graphics layer is displayed on the upper layer of the video layer.
由以上技术方案可知,上述实施例提供的显示设备200及竖屏状态下视频播放方法,可以在获取用户输入的关闭播放指令后,先执行关闭视频层,并在执行关闭视频层期间,持续从所述视频层截取图像画面,直至检测到所述视频层关闭完成的回调后,停止向图形层发送截取的图像画面。所述方法可以在用户执行关闭视频播放动作时,通过延迟关闭图形层,使图形层和视频层保持同步关闭,缓解视频关闭时容易出现闪屏的问题。It can be seen from the above technical solutions that the display device 200 and the video playback method in the vertical screen state provided by the above embodiments can first execute the closing of the video layer after obtaining the user's input to close the playback instruction, and continue from the video layer during the execution of the closing of the video layer The video layer intercepts the image frame, and stops sending the intercepted image frame to the graphics layer after detecting the callback of the completion of the closing of the video layer. The method can delay the closing of the graphics layer when the user performs the action of closing the video playback, so that the graphics layer and the video layer are closed synchronously, so as to alleviate the problem of flickering screen when the video is closed.
对于显示设备200,可以通过控制器250发出指令,控制旋转组件276的驱动电机按照指令指示的方向旋转预设角度,从而带动显示器275旋转至不同的旋转状态。通常,为了适应不同的观看需要,可以预设多种旋转角度使显示器275处于不同的旋转状态。例如,旋转状态可以包括横屏状态和竖屏状态,其中,所述横屏状态是指显示器275的屏幕长边平行于地面(或水平面),短边垂直于地面(或水平面),如图16A所示;所述竖屏状态是指显示器275的屏幕短边平行于地面(或水平面),长边垂直于地面(或水平面)如图16B所示。For the display device 200, an instruction can be issued by the controller 250 to control the driving motor of the rotating assembly 276 to rotate a preset angle according to the direction indicated by the instruction, so as to drive the display 275 to rotate to different rotation states. Generally, in order to adapt to different viewing needs, multiple rotation angles can be preset to make the display 275 in different rotation states. For example, the rotation state may include a horizontal screen state and a vertical screen state, where the horizontal screen state means that the long side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the short side is perpendicular to the ground (or horizontal plane), as shown in FIG. 16A As shown; the vertical screen state means that the short side of the screen of the display 275 is parallel to the ground (or horizontal plane), and the long side is perpendicular to the ground (or horizontal plane) as shown in FIG. 16B.
显然,横屏状态比较适合播放画面比例为16:9,4:3等横屏形式的媒资,如电影、电视剧等常规视频资源。竖屏状态更适合播放画面比例为9:16,3:4等竖屏形式的媒资,例如,通过手机等终端拍摄的短视频、漫画等。Obviously, the horizontal screen state is more suitable for playing media assets with a horizontal screen ratio of 16:9, 4:3, etc., such as regular video resources such as movies and TV shows. The vertical screen state is more suitable for playing media assets with a vertical screen ratio of 9:16, 3:4, etc., for example, short videos, comics, etc. shot through terminals such as mobile phones.
需要说明的是,虽然横屏状态主要用于显示电视剧、电影等横向媒资,竖屏状态主要用于显示短视频、漫画等竖向媒资,但是上述横屏状态和竖屏状态只是两种不相同的显示器状态,并不对显示的内容构成限制。例如,在横屏状态下依然可以显示短视频、漫画等竖向媒资;在竖屏状态下也依然可以显示电视剧、电影等横向媒资,只是在该状态需要对不相符的显示窗口进行缩放调整。It should be noted that although the horizontal screen state is mainly used to display horizontal media assets such as TV series and movies, and the vertical screen state is mainly used to display vertical media assets such as short videos and comics, the above-mentioned horizontal screen state and vertical screen state are only two types. Different display states do not limit the displayed content. For example, vertical media assets such as short videos and comics can still be displayed in the horizontal screen state; horizontal media assets such as TV series and movies can still be displayed in the vertical screen state, but the inconsistent display window needs to be zoomed in this state. Adjustment.
不同的旋转状态对应于旋转组件276处在不同的旋转角度。实际应用中,如果定义显示器275横屏状态时旋转组件276的旋转角度为0度,则显示器275竖屏状态时旋转组件276的旋转角度为90度(或-90度)。除上述横屏状态和竖屏状态外,旋转组件276还可以带动显示器275旋转任意角度,例如,180度倒置屏状态等。Different rotation states correspond to different rotation angles of the rotating assembly 276. In practical applications, if the rotation angle of the rotating component 276 is defined as 0 degrees when the display 275 is in the horizontal screen state, the rotation angle of the rotating component 276 when the display 275 is in the vertical screen state is 90 degrees (or -90 degrees). In addition to the above-mentioned horizontal screen state and vertical screen state, the rotating component 276 can also drive the display 275 to rotate at any angle, for example, a 180-degree inverted screen state.
在显示设备200播放某些视频时,需要自动对显示器275进行旋转,以适应不同形式的视频资源。例如,在显示器275处于横屏状态时,用户选择播放短视频等竖屏媒资。显示设备200的操作系统可以检测出视频资源的画面宽高比小于1,而当前显示器275的屏幕宽高比大于1,即确定当前旋转状态与视频资源不匹配,从而自动向旋转组件276发送控制指令,使其带动显示器275顺时针(或逆时针)旋转90度,调整显示器275至竖屏状态。When the display device 200 plays certain videos, the display 275 needs to be automatically rotated to adapt to different forms of video resources. For example, when the display 275 is in the horizontal screen state, the user chooses to play vertical screen media assets such as short videos. The operating system of the display device 200 can detect that the aspect ratio of the video resource is less than 1, and the current screen aspect ratio of the display 275 is greater than 1, that is, it is determined that the current rotation state does not match the video resource, thereby automatically sending control to the rotation component 276 Instruct it to drive the display 275 to rotate 90 degrees clockwise (or counterclockwise) to adjust the display 275 to the vertical screen state.
显示设备200在显示视频画面时,还可以通过画质调整算法,对视频画面进行画 质处理。画质处理可以包括对视频画面每一帧上图像的处理,如颜色校正、色彩调优等,还可以包括对视频画面的多帧数据进行处理,如插帧算法、运动补偿等。通过画质处理,可以进一步提高画面显示质量,从而在同等设备配置且不增加视频源资源大小的情况下,拥有更好的观影体验。When the display device 200 displays a video image, it can also perform image quality processing on the video image through an image quality adjustment algorithm. The image quality processing may include processing the image on each frame of the video picture, such as color correction, color adjustment, etc., and may also include processing the multi-frame data of the video picture, such as frame interpolation algorithm, motion compensation, etc. Through image quality processing, the image display quality can be further improved, so as to have a better viewing experience under the same equipment configuration and without increasing the size of the video source resource.
通常,为了在显示器275上进行视频画面显示,在显示设备200的系统框架中,配置有多个显示层级,例如视频层(Video层)、图形层(surface层)等。其中,所述视频层是指用户在播放媒资后,显示设备200上用于呈现播放画面的显示层级,也可以称为显示设备200的画质层。在画质层可以显示媒资对应的播放画面。所述图形层用于为用户提供交互操作的显示层级,也可以称为显示设备200的UI(User Interface)层。其中,视频层可以对显示画面进行画质处理,图形层可以对显示的画面进行后期调整,如旋转、缩放等。并且所述图形层作为UI层还可以为显示画面添加各种交互控件,例如控制主页等,以便对画面进行手动调整。Generally, in order to display a video screen on the display 275, multiple display levels are configured in the system framework of the display device 200, such as a video layer (Video layer), a graphics layer (surface layer), and so on. Wherein, the video layer refers to the display level used to present the play screen on the display device 200 after the user plays the media assets, and may also be referred to as the image quality layer of the display device 200. The playback screen corresponding to the media assets can be displayed in the image quality layer. The graphics layer is used to provide a display level of interactive operations for users, and may also be referred to as a UI (User Interface) layer of the display device 200. Among them, the video layer can perform image quality processing on the displayed image, and the graphics layer can perform post-adjustment of the displayed image, such as rotation, zoom, and so on. In addition, the graphics layer as the UI layer can also add various interactive controls to the display screen, such as controlling the homepage, so as to manually adjust the screen.
对于可旋转的显示设备200,由于其显示器275的体积和重量较大,旋转组件276不能迅速将显示器275旋转到预设角度,因此在显示器275旋转的过程中,用户需要等待一定的时间才能正常观看视频资源。例如,显示器275从横屏状态旋转到竖屏状态需要消耗10-30s,在这段时间内,随着显示器275的旋转,显示器275上原本呈现的画面将会出现倾斜,直至显示器275完全旋转至竖屏状态后(或旋转至预设角度后),才能够调整显示画面旋转以及铺满屏幕。可见,在此期间,用户需要长时间观看倾斜的画面,严重影响用户体验。For the rotatable display device 200, due to the large size and weight of the display 275, the rotating assembly 276 cannot quickly rotate the display 275 to a preset angle. Therefore, the user needs to wait for a certain period of time to be normal during the rotation of the display 275. Watch video resources. For example, it takes 10-30 seconds for the display 275 to rotate from the horizontal screen state to the vertical screen state. During this time, as the display 275 rotates, the image originally presented on the display 275 will be tilted until the display 275 is completely rotated to After the vertical screen state (or after rotating to a preset angle), the display screen can be adjusted to rotate and fill the screen. It can be seen that during this period, the user needs to watch the tilted picture for a long time, which seriously affects the user experience.
鉴于此,在一些实施例中,可以实现在旋转显示器275的同时,对显示画面进行旋转,以使显示画面始终处于正向的状态,使用户在旋转显示器275的过程中也能够正常观看显示画面。为了实现上述效果,可以在视频层播放视频数据后,通过截取视频层中的画面,并对截取的画面进行旋转、缩放等处理,再发送到图形层进行显示,经过处理后的显示画面,可以保持在始终正向展示给用户的状态。In view of this, in some embodiments, it is possible to rotate the display screen while rotating the display 275, so that the display screen is always in a positive state, so that the user can view the display screen normally during the process of rotating the display 275. . In order to achieve the above effects, after playing the video data in the video layer, the screen in the video layer can be intercepted, and the intercepted screen can be rotated and zoomed, and then sent to the graphics layer for display. The processed display screen can be Keep it in a state where it is always shown to the user.
例如,在显示器275顺时针旋转30度的状态下,可以通过截取视频层中的图像,并逆时针旋转30度,以使画面在图形层逆时针倾斜30度显示,抵消显示器275转过的角度。此时在用户观看的角度,则为正向显示状态。For example, when the display 275 is rotated 30 degrees clockwise, the image in the video layer can be intercepted and rotated 30 degrees counterclockwise so that the screen is displayed on the graphics layer at an angle of 30 degrees counterclockwise to offset the rotation angle of the display 275. . At this time, the viewing angle of the user is in the forward display state.
同理,对于一些不支持竖屏状态的媒资画面,也可以采用上述方式完成竖屏状态下的显示。例如,对于部分应用程序,其播放界面只支持横屏状态,则在显示器275处于竖屏状态时,可以通过视频层截取图像,再将图像进行缩放、裁切、填充等处理,形成符合竖屏显示比例的画面,从而在图形层显示处理后的画面。In the same way, for some media assets that do not support the vertical screen state, the above method can also be used to complete the display in the vertical screen state. For example, for some applications, the playback interface only supports the horizontal screen state. When the display 275 is in the vertical screen state, the image can be captured through the video layer, and then the image can be scaled, cropped, and filled to form a vertical screen. Display the scaled screen, so that the processed screen is displayed on the graphics layer.
通常,显示设备200播放的视频数据包括用于呈现显示画面的video数据和用于呈现声音的audio数据。由于只能截取视频层中的video数据到图形层显示,而audio数据仍然需要由原通路输出,即在视频层仍然需要播放视频数据以输出audio数据。Generally, the video data played by the display device 200 includes video data for presenting a display screen and audio data for presenting sound. Since only the video data in the video layer can be intercepted and displayed on the graphics layer, the audio data still needs to be output from the original channel, that is, the video data still needs to be played in the video layer to output the audio data.
基于此,在显示设备200处于竖屏状态下或者在旋转过程中,启动视频播放会受到硬件性能、应用解码效率等因素影响,出现画面时延,使得第一次送到图形层显示的视频数据不能被及时获取到,而视频层已经在显示画面内容。这种情况下可能导致竖屏状态下开始播放视频时,会先闪出视频层中的画面,再显示图形层画面的问题。Based on this, when the display device 200 is in the vertical screen state or during the rotation process, starting video playback will be affected by factors such as hardware performance, application decoding efficiency, etc., and there will be picture delays, making the video data sent to the graphics layer for the first time. Cannot be obtained in time, and the video layer is already displaying the screen content. In this case, when starting to play a video in portrait mode, the screen in the video layer will flash first, and then the graphics layer screen will be displayed.
同理,在退出视频播放时,由于图形层画面比视频层退出的快,会在退出图形层后,视频层仍然输出视频数据对应的画面,导致竖屏状态下退出视频播放也存在闪视频层画面的问题。即对于可旋转的显示设备200,在开始播放视频和退出播放视频时都会出现闪屏问题,严重影响用户体验。Similarly, when exiting video playback, since the graphics layer exits faster than the video layer, the video layer will still output the corresponding image of the video data after exiting the graphics layer, resulting in a flash video layer when exiting the video playback in the vertical screen state. The problem with the picture. That is, for the rotatable display device 200, a flashing screen problem occurs when starting to play a video and when exiting from playing a video, which seriously affects the user experience.
为了改善用户体验,本申请的部分实施例中提供一种竖屏状态下视频播放方法,所述方法可应用于显示设备200,其中显示设备200可以包括显示器275、旋转组件276以及控制器250。所述方法可以控制程序的形式配置在控制器250中,用于控制开始播放视频时的显示画面控制。如图17所示,所述方法包括以下步骤:In order to improve the user experience, some embodiments of the present application provide a video playback method in a portrait mode. The method may be applied to the display device 200, where the display device 200 may include a display 275, a rotating component 276, and a controller 250. The method can be configured in the controller 250 in the form of a control program to control the display screen control when starting to play the video. As shown in Figure 17, the method includes the following steps:
S171:获取用户输入的开始播放指令。S171: Acquire a start playing instruction input by the user.
显示设备200可以通过服务器300或本地资源以及第三方资源平台获取视频数据,并通过显示设备200中的播放器进行解码,以在显示器275上呈现视频数据对应的具体画面内容。The display device 200 may obtain the video data through the server 300 or a local resource and a third-party resource platform, and decode it through a player in the display device 200 to present the specific screen content corresponding to the video data on the display 275.
根据显示设备200与用户的交互方式不同,用户可以通过不同的交互动作以输入用于开始播放视频的指令。例如,用户可以通过控制装置100(如遥控器)上的按键交互进入应用列表界面或媒资选择界面,并在应用列表界面或媒资选择界面中通过“上、下、左、右”键调整焦点光标位置。在焦点光标位于“××视频”等应用图标或任一媒资图标上以后,按下“确定/OK”键输入开始播放指令,以开始播放视频数据。According to different interaction modes between the display device 200 and the user, the user can input an instruction for starting to play a video through different interactive actions. For example, the user can interactively enter the application list interface or the media asset selection interface through the buttons on the control device 100 (such as the remote control), and use the "up, down, left, and right" keys to adjust in the application list interface or the media asset selection interface. Focus cursor position. After the focus cursor is positioned on the application icon such as "××Video" or any media resource icon, press the "OK/OK" key to input the start playing instruction to start playing the video data.
用户还可以按照其他方式输入用于开始播放视频数据的控制指令。例如,对于支持触控操作的显示设备200,用户可以直接在应用列表界面或媒资选择界面中的视频数据对应图标位置上点击触控,以播放对应的视频数据。对于内置智能语音系统的显示设备200,用户可以通过输入诸如“播放《××》”、“我想看《××》”等语音指令,控制显示设备200启开始播放视频数据。The user can also input a control instruction for starting to play video data in other ways. For example, for the display device 200 that supports touch operation, the user can directly click the touch on the position of the icon corresponding to the video data in the application list interface or the media asset selection interface to play the corresponding video data. For the display device 200 with a built-in intelligent voice system, the user can control the display device 200 to start playing video data by inputting voice instructions such as "play "XX", "I want to watch "XX"".
S172:响应于所述开始播放指令,通过视频层播放视频数据。S172: In response to the start playing instruction, play the video data through the video layer.
在获取用户输入开始播放指令后,显示设备200可以从对应的视频源获取视频数据。例如显示设备200可以在接收到开始播放指令后,通过调用存储器260,提取其中存储的本地视频数据;显示设备200还可以在接收到开始播放指令后,形成数据获取指令,并将数据获取指令发送到服务器300或第三方资源平台,服务器300或第三方资源平台可以根据数据获取指令,向显示设备200反馈视频数据。After acquiring the user input to start playing instructions, the display device 200 may acquire video data from the corresponding video source. For example, the display device 200 can retrieve the local video data stored in the memory 260 after receiving the start playback instruction; the display device 200 can also form a data acquisition instruction after receiving the start playback instruction, and send the data acquisition instruction To the server 300 or the third-party resource platform, the server 300 or the third-party resource platform may feed back the video data to the display device 200 according to the data acquisition instruction.
显示设备200在得到视频数据后,可以通过播放器对视频数据进行解码,以形成具体的视频画面,从而通过视频层播放具体的视频画面。显然,对于视频数据,其在解码后一般可以获得video数据和audio数据,其中,video数据可以通过视频层形成具体的画面,以便在显示器275中进行展示。audio数据则可以通过显示设备200内置或外接的音频输出装置输出对应的声音,以播放音频数据。而为了实现音画同步,video数据和audio数据的展示过程要保持同步。After the display device 200 obtains the video data, the video data can be decoded by the player to form a specific video picture, so that the specific video picture is played through the video layer. Obviously, for video data, video data and audio data can generally be obtained after decoding, where the video data can form a specific picture through the video layer for display on the display 275. The audio data can output corresponding sound through an audio output device built-in or externally connected to the display device 200 to play the audio data. In order to achieve audio-visual synchronization, the display process of video data and audio data must be synchronized.
需要说明的是,在本实施例中,所述通过视频层播放视频数据是指将视频解码后,在视频层展示的过程,并不包括在显示器275上呈现最终画面的过程。在显示器275上呈现的最终画面是由多个显示层级叠加而成,而视频层仅仅是多个显示层级中的一层。It should be noted that in this embodiment, the playback of video data through the video layer refers to the process of displaying the video on the video layer after decoding the video, and does not include the process of presenting the final picture on the display 275. The final picture presented on the display 275 is formed by superimposing multiple display levels, and the video layer is only one of the multiple display levels.
S173:从所述视频层截取图像画面,以及向图形层发送截取的图像画面。S173: Intercept an image frame from the video layer, and send the intercepted image frame to the graphics layer.
当显示器275处于竖屏状态或者正在旋转过程中,为了呈现便于用户观看的正向展示的画面,需要将视频层的画面进行截取,并经过旋转缩放等处理后,在图形层进行展示。由于所述图形层在所述视频层的上层显示,因此图形层中的画面将对视频层的画面进行遮挡,从而使用户观看到的显示内容为经过变换后图形层中的内容。When the display 275 is in the vertical screen state or in the process of rotating, in order to present a positive display screen that is convenient for the user to watch, the screen of the video layer needs to be intercepted, and after processing such as rotation and zooming, it is displayed on the graphics layer. Since the graphics layer is displayed on the upper layer of the video layer, the screens in the graphics layer will block the screens of the video layer, so that the displayed content viewed by the user is the content in the graphics layer after transformation.
例如,竖屏状态是相对于横屏状态顺时针转动90°的状态,在显示器275处于竖屏状态时,需要将视频层中的每一帧图像进行截取,并对截取后的图像逆时针转动90°,同时进行缩放,以适应竖屏状态的显示窗口形式。For example, the vertical screen state is a state that is rotated 90° clockwise relative to the horizontal screen state. When the display 275 is in the vertical screen state, each frame of image in the video layer needs to be captured, and the captured image is rotated counterclockwise. 90°, zoom in and out at the same time, to adapt to the display window form of the vertical screen state.
显然,为了能够使显示设备200正常输出audio数据,并且能够在视频层中截取图像画面,视频层在视频播放过程中,应持续展示视频画面。此外,为了使图形层遮挡视频层中的画面,对截取的图像画面进行处理的过程还可以包括对图像画面上添加填充区域。例如,填充区域可以是在图像画面中有效内容以外的边缘区域添加纯色画面,以通过纯色画面遮挡视频层中的画面内容。Obviously, in order to enable the display device 200 to normally output audio data and to capture image frames in the video layer, the video layer should continue to display the video images during the video playback process. In addition, in order to make the graphics layer obscure the picture in the video layer, the process of processing the intercepted image picture may also include adding a filling area to the image picture. For example, the filled area may be to add a pure color picture to the edge area outside the effective content in the image picture, so as to block the picture content in the video layer through the pure color picture.
S174:控制所述图形层显示黑屏,至所述图形层接收到所述图像画面后,继续在所述图形层显示所述图像画面。S174: Control the graphics layer to display a black screen, until the graphics layer receives the image frame, continue to display the image frame on the graphics layer.
在向图形层发送截取的图像画面后,图形层可以展示经过处理后的截取画面。由 于视频层中的图像画面在经过截取后,还需要进行旋转、缩放、填充等处理,因此截取、处理以及发送到图形层的过程会消耗一定的时间才能够在图形层中显示,即造成在开始播放的一段时间内,图形层中尚未显示具体画面,而视频层中已经展示了相应的画面,使显示器275在这段时间内显示出视频层中的画面,出现闪屏问题。After sending the intercepted image screen to the graphics layer, the graphics layer can display the processed intercepted screen. Since the image in the video layer needs to be rotated, zoomed, filled, etc. after being intercepted, the process of intercepting, processing, and sending to the graphics layer will take a certain amount of time before it can be displayed in the graphics layer. For a period of time after starting to play, no specific pictures have been displayed in the graphics layer, but the corresponding pictures have been displayed in the video layer, so that the display 275 displays the pictures in the video layer during this period of time, and a splash screen problem occurs.
为此,如图18所示,在控制将视频层中截取的画面发送给图形层以后,可以控制图形层显示黑屏画面,从而在图形层能够对视频层中的画面内容进行遮挡,直到图形层中接收到截取的画面后,再继续在图形层中显示截取的视频数据对应的画面。To this end, as shown in Figure 18, after controlling to send the screenshots in the video layer to the graphics layer, you can control the graphics layer to display a black screen, so that the graphics layer can block the screen content in the video layer until the graphics layer After receiving the intercepted picture in, continue to display the picture corresponding to the intercepted video data in the graphics layer.
可见,在本实施例中,通过在开始播放视频阶段控制图形层显示黑屏,来避免视频层已显示播放的视频内容,而图形层由于获取视频帧慢使得还没有视频内容时,导致的闪视频层中视频画面的问题。It can be seen that, in this embodiment, by controlling the graphics layer to display a black screen at the beginning of the video playback stage, the video layer has already displayed the played video content, and the graphics layer is slow to obtain the video frame so that there is no video content, resulting in flashing video The problem with the video picture in the layer.
为了能够在视频层播放视频数据,在一些实施例中,通过视频层播放视频数据的步骤还包括:In order to be able to play video data in the video layer, in some embodiments, the step of playing video data through the video layer further includes:
S201:启动所述开始播放指令中指定的应用程序;S201: Start the application program specified in the start playing instruction;
S202:通过所述应用程序创建播放器和所述视频层;S202: Create a player and the video layer through the application program;
S203:通过所述播放器解码视频数据,以在视频层播放视频数据对应的画面。S203: Decode the video data by the player to play a picture corresponding to the video data on the video layer.
由于显示设备200可以通过应用程序播放视频数据,因此在用户输入开始播放指令后,控制器250可以对开始播放指令进行解析,获取其中指定的应用程序包名信息,并根据指定的应用程序包名信息启动运行能够播放视频数据的应用程序。其中,所述应用程序是指能够安装在显示设备200中的系统应用或第三方应用,可以根据显示设备200的操作系统平台表现为不同的形式,例如,基于安卓系统的APK。Since the display device 200 can play the video data through the application program, after the user inputs the start play instruction, the controller 250 can parse the start play instruction, obtain the specified application package name information therein, and use the specified application package name. Information starts running applications that can play video data. Wherein, the application program refers to a system application or a third-party application that can be installed in the display device 200, and may be expressed in different forms according to the operating system platform of the display device 200, for example, an APK based on the Android system.
在启动应用程序后,可以通过应用程序创建播放器和视频层。例如,APK创建播放器以及APK创建视频窗口,即视频层(surfaceview),从而通过播放器解码待播放的视频数据,以便在视频层播放视频数据对应的画面。After launching the application, the player and video layer can be created through the application. For example, the APK creates a player and the APK creates a video window, that is, a video layer (surfaceview), so that the video data to be played is decoded by the player, so as to play a picture corresponding to the video data on the video layer.
例如,用户在应用程序界面中选择“聚好看”应用,并在按下遥控器上的“确认/OK”键以后,启动运行聚好看应用APK,再通过选择应用界面中任一媒资图标,开始视频数据播放。APK按照视频播放程序,分别创建播放器和视频层,从而通过播放器对选中媒资数据进行解码,从而在视频层展示解码后形成的画面。For example, the user selects the "Juhaokan" application in the application program interface, and after pressing the "OK/OK" button on the remote control, starts and runs the Juhaokan application APK, and then selects any media asset icon in the application interface. Start video data playback. The APK creates a player and a video layer according to the video playback program, so that the selected media asset data is decoded by the player, and the decoded picture is displayed on the video layer.
对于可旋转的显示设备200,由于其内置的播放方式,会在检测到显示器275处于的状态发生改变时,自动调整视频层中画面的朝向,以适应显示器275的旋转状态。其中所述旋转状态包括横屏状态和竖屏状态。例如,在显示设备200处于横屏状态时,视频层可以按照视频数据的原始方向进行展示,而在竖屏状态时,视频层中播放形成的画面可以被顺时针旋转90°,以适应竖屏状态。For the rotatable display device 200, due to its built-in playback mode, when the state of the display 275 is detected to be changed, the orientation of the picture in the video layer is automatically adjusted to adapt to the rotation state of the display 275. The rotation state includes a horizontal screen state and a vertical screen state. For example, when the display device 200 is in the horizontal screen state, the video layer can be displayed according to the original orientation of the video data, while in the vertical screen state, the picture formed in the video layer can be rotated 90° clockwise to adapt to the vertical screen. state.
但由于在本申请实施例中,设定竖屏状态下的画面旋转操作是在对视频层画面进行截取后的处理过程中完成,因此为了防止最终呈现的画面多旋转90°。如图19所示,在本申请的部分实施例中,通过所述应用程序创建播放器和所述视频层的步骤还包括:However, in the embodiment of the present application, the screen rotation operation in the vertical screen state is set during the processing after the video layer screen is captured, so in order to prevent the final presented screen from rotating by 90°. As shown in FIG. 19, in some embodiments of the present application, the step of creating the player and the video layer through the application program further includes:
S181:为所述视频层设置第一标记信息;S181: Set first mark information for the video layer;
S182:通过所述旋转组件检测所述显示器的旋转状态;S182: Detect the rotation state of the display through the rotation component;
S183:如果所述显示器处于竖屏状态,根据所述第一标记信息控制所述视频层的画面不旋转角度。S183: If the display is in the vertical screen state, control the non-rotation angle of the picture of the video layer according to the first mark information.
为了表示当前视频播放过程需要适应旋转状态,可以在创建播放器和视频层后,通过设置标记信息的方式对创建的视频层进行表示。例如,视频窗口创建完成之后,APK设置标记信息flags1,并把它传递给视频层(surfaceview)。In order to indicate that the current video playback process needs to adapt to the rotation state, after the player and the video layer are created, the created video layer can be represented by setting mark information. For example, after the video window is created, the APK sets the flag information flags1 and passes it to the video layer (surfaceview).
APK再通过对显示器275所处的旋转状态进行检测,当判断此时显示器275处于竖屏状态时,surfaceview根据应用设置下来的标记信息flags1,控制其对应的视频层中的画面,不再跟随显示器275的旋转角度(竖屏90度)进行旋转,以此避免视频内 容的显示方向存在多转90度的异常显示问题。The APK then detects the rotation state of the display 275. When it is judged that the display 275 is in the vertical screen state at this time, the surfaceview controls the corresponding picture in the video layer according to the flag information flags1 set by the application, and no longer follows the display The rotation angle of 275 (vertical screen 90 degrees) is rotated to avoid the abnormal display problem of multiple rotations of 90 degrees in the display direction of the video content.
其中,对旋转状态的检测可以通过显示设备200内置的重力加速度传感器、以及设置在旋转组件276上的角度传感器等设备完成。例如,可以预设显示器275处于横屏状态时的旋转角度为0,而通过角度传感器检测到旋转组件276的转角为90°,即可确定当前显示器275处于竖屏状态。Wherein, the detection of the rotation state can be completed by devices such as a gravity acceleration sensor built in the display device 200 and an angle sensor provided on the rotation component 276. For example, it can be preset that the rotation angle of the display 275 in the landscape state is 0, and the angle sensor detects that the rotation angle of the rotation component 276 is 90°, and it can be determined that the current display 275 is in the portrait state.
需要说明的是,由于在显示器275旋转过程中,也采用从视频层截取图像画面并进行调整处理以在图形层进行显示的方式,而视频层画面旋转控制过程中,一般是在旋转组件276转动一定角度后,自动完成图像画面的旋转,因此在显示器275的整个旋转过程中,都应停止控制视频层画面跟随显示器275的旋转角度进行旋转的方式。即在部分实施例中,可以在检测到旋转组件276发生转角变化时,即执行根据所述第一标记信息控制所述视频层的画面不旋转角度。It should be noted that during the rotation process of the display 275, the image screen is also taken from the video layer and adjusted to be displayed on the graphics layer. In the process of video layer screen rotation control, the rotation component 276 is generally rotated. After a certain angle, the rotation of the image frame is automatically completed. Therefore, during the entire rotation of the display 275, the way in which the video layer frame rotates following the rotation angle of the display 275 should be stopped. That is, in some embodiments, when it is detected that the rotation angle of the rotation component 276 changes, the control of the non-rotation angle of the picture of the video layer according to the first mark information may be executed.
如图20所示,在本申请的部分实施例中,控制所述图形层显示黑屏的步骤还包括:As shown in FIG. 20, in some embodiments of the present application, the step of controlling the graphics layer to display a black screen further includes:
S191:创建图形层以及为所述图形层设置第二标记信息;S191: Create a graphics layer and set second mark information for the graphics layer;
S192:检测所述图形层是否接收到所述图像画面;S192: Detect whether the image frame is received by the graphics layer;
S193:如果所述图形层未接收到所述图像画面,根据所述第二标记信息控制所述图形层显示黑屏。S193: If the graphics layer does not receive the image frame, control the graphics layer to display a black screen according to the second mark information.
通过所启动运行的应用程序,可以创建图形层,并为图形层设置第二标记信息,即APK设置标记信息flags2,并把它传递给surface(图形层)。创建图形层后,可以通过图形层检测所接收到的图像画面,即是否接收到从视频层截取并完成图像处理的图像画面。如果图形层接收到图像画面,则可以直接将接收到的画面进行显示;如果图形层未接收到图像画面,则可以在显示图像画面前,显示黑屏,以遮挡视频层中的画面。Through the application that is started to run, a graphics layer can be created, and the second flag information can be set for the graphics layer, that is, the APK sets the flag information flags2, and transmits it to the surface (graphic layer). After the graphic layer is created, the received image frame can be detected through the graphic layer, that is, whether an image frame that is intercepted from the video layer and processed by the image is received. If the graphics layer receives the image frame, it can directly display the received frame; if the graphics layer does not receive the image frame, it can display a black screen before displaying the image frame to cover the frame in the video layer.
例如,apk通过给截取服务发送指令a,开启截取服务,以通过截取服务创建surface(图形层)。截取服务还实时截取解码后的视频数据并发送到图形层去显示。当For example, the apk sends an instruction a to the interception service to start the interception service to create a surface (graphics layer) through the interception service. The interception service also intercepts the decoded video data in real time and sends it to the graphics layer for display. when
sufaceflinger检测到对应的图形层还没有视频数据被送过来时,就会根据之前收到的应用设置的标记信息flags2,控制该图形层显示黑屏。由此避免视频层已显示播放的视频内容,而图形层由于获取视频帧较慢使得还没有视频内容时,而导致的闪视频层视频画面的问题。When sufaceflinger detects that no video data has been sent to the corresponding graphics layer, it will control the graphics layer to display a black screen according to the flag information flags2 set by the previously received application. This avoids the problem of flashing the video image of the video layer when the video layer has already displayed the played video content, and the graphics layer has no video content due to the slow acquisition of video frames.
需要说明的是,在上述显示过程中,播放器具有生命周期状态,因此还可以通过检测播放器的生命周期内所处的状态,并根据播放器所处的状态为视频层设置第一标记信息以及创建图形层。例如,APK检测到播放器的生命周期处于prepared状态之前时,APK设置标记信息flags2,并把它传递给surface(图形层);而APK检测到播放器的生命周期处于prepared状态时,APK通过给截取服务发送指令a,以创建surface(图形层)。It should be noted that in the above display process, the player has a life cycle state, so it can also detect the state of the player during the life cycle, and set the first mark information for the video layer according to the state of the player. And create a graphics layer. For example, when the APK detects that the life cycle of the player is before the prepared state, the APK sets the flag information flags2 and passes it to the surface (graphics layer); and when the APK detects that the life cycle of the player is in the prepared state, the APK passes to The interception service sends instruction a to create a surface (graphics layer).
由于在上述实施例中,需要对视频层中图像画面进行截取,并对截取的图像进行调整处理,以便在图形层进行显示,因此在一些实施例中,可以按照如下方式截取图像,即从所述视频层截取图像画面的步骤还包括:Since in the above-mentioned embodiment, the image in the video layer needs to be intercepted, and the intercepted image needs to be adjusted for display on the graphics layer, in some embodiments, the image can be intercepted as follows, that is, from the The steps of capturing an image frame at the video layer further include:
S311:创建截取服务;S311: Create an interception service;
S312:对所述视频数据进行画质处理,以获取图像画面;S312: Perform image quality processing on the video data to obtain an image frame;
S313:调用所述截取服务截取所述图像画面。S313: Invoke the interception service to intercept the image screen.
其中,所述截取服务用于截取视频帧数据,截取服务也可以在系统开机初始化运行时创建,并且在需要对显示画面进行旋转时,调用服务实时的截取视频层数据,并输送到图形层显示。在进行截取前,还可以通过视频层对视频数据进行画质处理,获得图像画面。Wherein, the interception service is used to intercept the video frame data. The interception service can also be created when the system is started and initialized, and when the display screen needs to be rotated, the service is called to intercept the video layer data in real time and send it to the graphics layer for display. . Before the interception, the video data can also be processed for image quality through the video layer to obtain an image.
为了获得更好的显示效果或者适应显示设备200的硬件配置,图像画面可以与原待显示图像拥有更高的帧率和/或不同的图像画面效果。显然,为了能够在图形层形成 视频画面,所述截取服务的截取频率可以设置为大于25帧/秒。而为了获得更好的显示效果,可以适当增大截取频率,例如,设置截取服务的截取频率等于所述显示器275的屏幕刷新率60Hz。In order to obtain a better display effect or adapt to the hardware configuration of the display device 200, the image screen may have a higher frame rate and/or different image screen effects from the original image to be displayed. Obviously, in order to be able to form a video picture on the graphics layer, the interception frequency of the interception service can be set to be greater than 25 frames/sec. In order to obtain a better display effect, the interception frequency can be appropriately increased. For example, the interception frequency of the interception service can be set equal to the screen refresh rate of the display 275 at 60 Hz.
例如,在视频层完成(或部分完成)对待显示视频画面的画质处理后,可以调用创建的截取服务,并在视频层获取经画质处理后的图像画面。针对图像画面,截取服务可以逐帧截取以获得与原画面相同的帧数,截取服务还可以间隔帧截取,以在满足视频流畅性的前提下,减少截取和图像处理次数,缓解显示设备200的处理负荷。For example, after the video layer completes (or partially completes) the image quality processing of the to-be-displayed video image, the created interception service can be invoked, and the image image after image quality processing can be obtained in the video layer. For the image screen, the interception service can intercept frame by frame to obtain the same number of frames as the original image. The interception service can also intercept the frame at intervals to reduce the number of interception and image processing under the premise of meeting the video fluency, and alleviate the problem of the display device 200. Processing load.
为了适应在旋转过程中维持正向显示画面的效果,在一些实施例中,向图形层发送截取的图像画面的步骤还包括:In order to adapt to the effect of maintaining the forward display screen during the rotation process, in some embodiments, the step of sending the captured image screen to the graphics layer further includes:
S321:通过所述旋转组件获取显示器旋转信息;S321: Obtain display rotation information through the rotation component;
S322:根据所述显示器旋转信息旋转和/或缩放截取的图像画面,以获得中间图像;S322: Rotate and/or zoom the captured image frame according to the display rotation information to obtain an intermediate image;
S323:向图形层发送所述中间图像。S323: Send the intermediate image to the graphics layer.
本实施例中,中间图像是指在显示器275旋转过程中所呈现给用户的图像画面。中间图像可在图形层中完成显示,因此为了形成中间图像,控制器250可以通过旋转组件276实时获取显示器旋转信息,即获取显示器275在任一时刻上的转角状态。再根据显示器旋转信息对截取的图像画面进行旋转和/或缩放等调整处理,以将图像画面能够调整到适应当前显示器275转角状态的形式,最后将调整处理后的中间图像发送给图形层进行显示,使其维持正向显示。In this embodiment, the intermediate image refers to the image frame presented to the user during the rotation of the display 275. The intermediate image can be displayed in the graphics layer. Therefore, in order to form the intermediate image, the controller 250 can obtain the display rotation information through the rotation component 276 in real time, that is, obtain the rotation angle state of the display 275 at any time. Then, according to the display rotation information, perform adjustment processing such as rotation and/or zooming of the intercepted image to adjust the image to a form that can adapt to the current 275 corner state of the display, and finally send the adjusted intermediate image to the graphics layer for display , To maintain the positive display.
基于上述竖屏状态下视频播放方法,本申请的部分实施例中还提供一种显示设备200,包括:显示器275、旋转组件276以及控制器250。其中,显示器275被配置为呈现用户界面;旋转组件276被配置为带动所述显示器275旋转,以使所述显示器275处于横屏状态或竖屏状态中的一种;控制器250被配置为执行以下程序步骤:Based on the above video playback method in the vertical screen state, some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250. Wherein, the display 275 is configured to present a user interface; the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state; the controller 250 is configured to execute The following program steps:
S171:获取用户输入的开始播放指令;S171: Acquire a start playing instruction input by the user;
S172:响应于所述开始播放指令,通过视频层播放视频数据;S172: In response to the start playing instruction, play the video data through the video layer;
S173:从所述视频层截取图像画面,以及向图形层发送截取的图像画面,所述图形层在所述视频层的上层显示;S173: Intercept an image frame from the video layer, and send the intercepted image frame to a graphics layer, where the graphics layer is displayed on an upper layer of the video layer;
S174:控制所述图形层显示黑屏,至所述图形层接收到所述图像画面后,继续在所述图形层显示所述图像画面。S174: Control the graphics layer to display a black screen, until the graphics layer receives the image frame, continue to display the image frame on the graphics layer.
由以上技术方案可知,上述实施例中提供的显示设备200及竖屏状态下视频播放方法可以在获取用户输入的开始播放指令后,通过视频层播放视频数据,并从视频层截取图像画面,以及向图形层发送截取的图像画面,在开始视频播放时,控制图形层先显示黑屏,至图形层接收到图像画面后,继续在图形层显示图像画面。所述方法可以在播放视频前通过控制图形层显示黑屏画面,缓解因视频层和图形层起播速度不同而造成的闪屏问题。It can be seen from the above technical solutions that the display device 200 and the video playback method in the vertical screen state provided in the above embodiments can play video data through the video layer after obtaining the user input start playback instruction, and capture the image screen from the video layer, and Send the intercepted image screen to the graphics layer. When starting the video playback, control the graphics layer to display a black screen first. After the graphics layer receives the image screen, continue to display the image screen on the graphics layer. The method can control the graphics layer to display a black screen picture before playing the video, and alleviate the splash screen problem caused by the different starting speeds of the video layer and the graphics layer.
上述实施例中提供了在开始播放视频时,通过控制图形层显示黑屏状态,以缓解因启动速度不同而造成的启动时闪屏的问题。与上述实施例中相对应的情况下,在停止播放视频时,由于图形层和视频层的关闭速度也不同,会造成显示设备200先关闭图形层,而后关闭视频层,因此在关闭图形层后,显示器275中可能再次出现闪屏的问题。The foregoing embodiment provides that when starting to play a video, the black screen state is displayed by controlling the graphics layer to alleviate the problem of screen flickering during startup caused by different startup speeds. Corresponding to the above-mentioned embodiment, when the video is stopped, the closing speeds of the graphics layer and the video layer are also different, which will cause the display device 200 to first close the graphics layer and then close the video layer. Therefore, after closing the graphics layer , The problem of the flickering screen may reappear in the display 275.
基于此,本申请的部分实施例中,还提供一种竖屏状态下视频播放方法,应用于显示设备200在关闭播放视频时的显示控制。如图21所示,所述方法包括以下步骤:Based on this, in some embodiments of the present application, a method for playing a video in a portrait mode is also provided, which is applied to the display control of the display device 200 when the video is turned off to play. As shown in Figure 21, the method includes the following steps:
S211:获取用户输入的关闭播放指令;S211: Acquire a closing playback instruction input by the user;
S212:响应于所述关闭播放指令,关闭视频层;S212: In response to the closing play instruction, close the video layer;
S213:从所述视频层截取图像画面,至检测到所述视频层关闭完成的回调后,停止向图形层发送截取的图像画面。S213: Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected.
同理,在关闭视频播放过程时,可以由用户通过控制装置100、触控操作或语音 输入等方式输入关闭播放指令。由于视频层的关闭速度相对于图形层较慢,因此控制器250在接收到关闭播放指令后,可以先执行关闭视频层的程序,并在执行程序的过程中,持续从视频层中截取图像画面,并发送给图形层进行显示,以维持图形层有画面。直至检测到视频层关闭完成的回调信息后,停止截取图像画面和向图形层发送截取的图像画面。In the same way, when closing the video playback process, the user can input the closing playback instruction by controlling the device 100, touch operation, or voice input. Since the closing speed of the video layer is slower than that of the graphics layer, the controller 250 can first execute the program to close the video layer after receiving the closing playback instruction, and continue to capture images from the video layer during the execution of the program , And sent to the graphics layer for display, to maintain the graphics layer has a picture. Until the callback information that the video layer is closed is detected, stop capturing the image frame and sending the captured image frame to the graphics layer.
在停止向图形层发送截取的图像画面后,再关闭图形层,以关闭视频播放。因此,在关闭播放功能的过程中,图形层始终有画面能够遮挡视频层的画面,从而通过图形层画面的遮挡,缓解在关闭过程中因显示视频层画面,而出现的闪屏问题。After stopping sending the intercepted image to the graphics layer, close the graphics layer to close the video playback. Therefore, in the process of closing the playback function, there is always a picture in the graphics layer that can block the picture of the video layer, so that through the occlusion of the picture of the graphics layer, the problem of splash screen caused by displaying the video layer picture during the closing process is alleviated.
进一步地,为了关闭播放过程,所述方法还包括:Further, in order to close the playback process, the method further includes:
S501:检测所述视频层关闭完成的回调;S501: Detect the callback of completion of closing of the video layer;
S502:在检测到所述视频层关闭完成的回调后,释放播放器;S502: Release the player after detecting the completion of the callback for closing the video layer;
S503:在检测到所述播放器释放完成的回调后,停止获取解码后的视频数据。S503: Stop acquiring decoded video data after detecting the callback of completion of the player release.
在停止向图形层发送截取的图像画面后,控制器250可以进一步通过检测视频层关闭完成的回调信息,实现在检测到视频层关闭完成的回调后,释放播放器,再通过检测播放器释放完成的回调信息,从而在检测到播放器释放完成的回调后,停止获取解码后的视频数据。After stopping sending the captured image frame to the graphics layer, the controller 250 may further detect the callback information of the completion of the video layer closing, so as to release the player after detecting the callback of the completion of the video layer closing, and then detect the completion of the player release. Callback information, so that after detecting the completion of the callback of the player release, stop obtaining the decoded video data.
即在整个关闭视频播放功能的过程中,如果显示器275处于竖屏状态下,apk会先收到遥控器返回键的消息,以输入关闭播放指令。并根据关闭播放指令,apk销毁当前视频播放窗口surfaceview;apk在收到surfaceview销毁完成的回调后,释放播放器;、apk在收到播放器释放完成的回调之后,给服务下发指令d,用于控制截取服务停止截取解码后的视频数据。从而在播放器释放完毕后,再去停止获取解码后的视频数据,以此来保证,视频退出播放不会闪视频层的画面。That is, during the entire process of turning off the video playback function, if the display 275 is in the vertical screen state, the apk will first receive the message of the return button of the remote control to input a command to turn off the playback. And according to the command to close the playback, apk destroys the current video playback window surfaceview; apk releases the player after receiving the callback of completion of surfaceview destruction; apk sends command d to the service after receiving the callback of completion of the player release, and use To control the interception service to stop intercepting the decoded video data. Therefore, after the player is released, stop obtaining the decoded video data to ensure that the video layer will not flash when the video exits.
基于上述竖屏状态下视频播放方法,本申请的部分实施例中还提供一种显示设备200,包括:显示器275、旋转组件276以及控制器250。其中,显示器275被配置为呈现用户界面;旋转组件276被配置为带动所述显示器275旋转,以使所述显示器275处于横屏状态或竖屏状态中的一种;控制器250被配置为执行以下程序步骤:Based on the above video playback method in the vertical screen state, some embodiments of the present application also provide a display device 200, which includes a display 275, a rotating component 276, and a controller 250. Wherein, the display 275 is configured to present a user interface; the rotation component 276 is configured to drive the display 275 to rotate so that the display 275 is in one of a landscape state or a portrait state; the controller 250 is configured to execute The following program steps:
S211:获取用户输入的关闭播放指令;S211: Acquire a closing playback instruction input by the user;
S212:响应于所述关闭播放指令,关闭视频层;S212: In response to the closing play instruction, close the video layer;
S213:从所述视频层截取图像画面,至检测到所述视频层关闭完成的回调后,停止向图形层发送截取的图像画面,所述图形层在所述视频层的上层显示。S213: Intercept the image frame from the video layer, and stop sending the intercepted image frame to the graphics layer after the callback of the completion of closing of the video layer is detected, and the graphics layer is displayed on the upper layer of the video layer.
由以上技术方案可知,上述实施例提供的显示设备200及竖屏状态下视频播放方法,可以在获取用户输入的关闭播放指令后,先执行关闭视频层,并在执行关闭视频层期间,持续从所述视频层截取图像画面,直至检测到所述视频层关闭完成的回调后,停止向图形层发送截取的图像画面。所述方法可以在用户执行关闭视频播放动作时,通过延迟关闭图形层,使图形层和视频层保持同步关闭,缓解视频关闭时容易出现闪屏的问题。It can be seen from the above technical solutions that the display device 200 and the video playback method in the vertical screen state provided by the above embodiments can first execute the closing of the video layer after obtaining the user's input to close the playback instruction, and continue from the video layer during the execution of the closing of the video layer The video layer intercepts the image frame, and stops sending the intercepted image frame to the graphics layer after detecting the callback of the completion of the closing of the video layer. The method can delay the closing of the graphics layer when the user performs the action of closing the video playback, so that the graphics layer and the video layer are closed synchronously, so as to alleviate the problem of flickering screen when the video is closed.
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的摄像头拍摄角度的调整方法的各实施例中的部分或全部步骤。的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。In specific implementation, the present invention also provides a computer storage medium, wherein the computer storage medium may store a program, and the program may include part or all of the embodiments of the camera shooting angle adjustment method provided by the present invention when the program is executed. step. The storage medium can be a magnetic disk, an optical disc, a read-only memory (English: read-only memory, abbreviated as: ROM) or a random access memory (English: random access memory, abbreviated as: RAM), etc.
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分的方法。Those skilled in the art can clearly understand that the technology in the embodiments of the present invention can be implemented by means of software plus a necessary general hardware platform. Based on this understanding, the technical solutions in the embodiments of the present invention can be embodied in the form of software products, which can be stored in a storage medium, such as ROM/RAM. , Magnetic disks, optical disks, etc., including a number of instructions to enable a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the various embodiments of the present invention or the methods of certain parts of the embodiments.
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, but not to limit it; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: The technical solutions described in the foregoing embodiments can still be modified, or some or all of the technical features can be equivalently replaced; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the technical solutions of the embodiments of the present application. Scope.
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用实施方式以及适于具体使用考虑的各种不同的变形的实施方式。For the convenience of explanation, the above description has been made in conjunction with specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the implementation to the specific form disclosed above. According to the above teaching, various modifications and variations can be obtained. The selection and description of the foregoing embodiments are for better explaining the principles and practical applications, so that those skilled in the art can better use the embodiments and various modified embodiments suitable for specific use considerations.
Claims (10)
- 一种显示设备,其特征在于,包括:A display device, characterized in that it comprises:显示器;monitor;旋转组件,连接所述显示器,用于基于所述控制器的控制带动所述显示器旋转;A rotating component, connected to the display, for driving the display to rotate based on the control of the controller;控制器,配置有绘制控件,所述绘制控件包括:图像层绘制控件和图像层绘制控件,被配置为执行以下步骤:The controller is configured with a drawing control, the drawing control includes: an image layer drawing control and an image layer drawing control, and is configured to perform the following steps:响应于接收到视频播放指令,监测所述显示器的状态,所述状态包括:旋转状态和静止状态;In response to receiving a video play instruction, monitoring the state of the display, the state including: a rotating state and a static state;如果所述显示器处于旋转状态,通过图像层绘制控件绘制待播放视频的视频帧;If the display is in a rotating state, draw the video frame of the to-be-played video through the image layer drawing control;如果所述显示器处于静止状态,通过视频层绘制控件绘制所述待播放视频的视频帧。If the display is in a static state, the video frame of the to-be-played video is drawn through the video layer drawing control.
- 根据权利要求1所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device of claim 1, wherein the controller is further configured to perform the following steps:响应于接收到视频播放指令,读取第一展示方向和第二展示方向,所述第一展示方向为所述显示器的当前展示方向,所述第二展示方向为所述待播放视频的展示方向;In response to receiving a video play instruction, read a first display direction and a second display direction, where the first display direction is the current display direction of the display, and the second display direction is the display direction of the video to be played ;响应于所述第一展示方向与所述第二展示方向不同,控制所述旋转组件带动所述显示器旋转,以使得旋转后显示器的展示方向与所述第二展示方向适配。In response to the first display direction being different from the second display direction, the rotation component is controlled to drive the display to rotate, so that the display direction of the display after the rotation is adapted to the second display direction.
- 根据权利要求1或2所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device according to claim 1 or 2, wherein the controller is further configured to perform the following steps:响应于所述显示器开始旋转,记录旋转时间,所述旋转时间用于记录所述显示器旋转的时长;In response to the display starting to rotate, recording a rotation time, where the rotation time is used to record the duration of the rotation of the display;根据所述旋转时间及预先存储的旋转速度,生成预测角度;Generate a predicted angle according to the rotation time and the pre-stored rotation speed;基于所述预测角度绘制所述视频帧,以使得所述视频帧的展示方向与显示器的展示方向适配。The video frame is drawn based on the prediction angle, so that the display direction of the video frame is adapted to the display direction of the display.
- 根据权利要求1所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device of claim 1, wherein the controller is further configured to perform the following steps:响应于所述第一展示方向与所述第二展示方向不同,读取第一旋转角度,所述第一旋转角度为所述显示器的旋转角度;In response to the first display direction being different from the second display direction, reading a first rotation angle, where the first rotation angle is the rotation angle of the display;基于所述第一旋转角度绘制所述待展示视频的视频帧,以使第二旋转角度等于所述第一旋转角度,所述第二旋转角度为所述视频帧的旋转角度。The video frame of the video to be displayed is drawn based on the first rotation angle, so that the second rotation angle is equal to the first rotation angle, and the second rotation angle is the rotation angle of the video frame.
- 根据权利要求1所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device of claim 1, wherein the controller is further configured to perform the following steps:响应于接收到视频播放指令,读取所述显示器的角度增加值;In response to receiving the video play instruction, reading the angle increase value of the display;响应于所述角度增加值大于零,基于所述角度增加值计算第一旋转角度,所述第一旋转角度为所述显示器的旋转角度;In response to the angle increase value being greater than zero, calculating a first rotation angle based on the angle increase value, where the first rotation angle is the rotation angle of the display;基于所述第一旋转角度,绘制所述待展示视频的视频帧,以使第二旋转角度等于第一旋转角度,所述第二旋转角度为所述视频帧的旋转角度。Based on the first rotation angle, the video frame of the video to be displayed is drawn so that the second rotation angle is equal to the first rotation angle, and the second rotation angle is the rotation angle of the video frame.
- 根据权利要求4或5所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device according to claim 4 or 5, wherein the controller is further configured to perform the following steps:响应于所述第一旋转角度等于预置旋转角度,通过视频层绘制控件绘制所述待播放视频的视频帧。In response to the first rotation angle being equal to the preset rotation angle, the video frame of the to-be-played video is drawn through the video layer drawing control.
- 根据权利要求4或5所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device according to claim 4 or 5, wherein the controller is further configured to perform the following steps:响应于所述显示器开始旋转,开始统计所述显示器的旋转时间;In response to the display starting to rotate, start counting the rotation time of the display;响应于所述旋转时间等于预置旋转时间,通过视频层绘制控件绘制所述待播放视频的视频帧。In response to the rotation time being equal to the preset rotation time, the video frame of the to-be-played video is drawn through the video layer drawing control.
- 根据权利要求5所述的显示设备,其特征在于,所述控制器还被配置为执行以下步骤:The display device of claim 5, wherein the controller is further configured to perform the following steps:响应于所述角度增加值等于零,通过视频层绘制控件绘制所述待播放视频的视频帧。In response to the angle increase value being equal to zero, the video frame of the to-be-played video is drawn through the video layer drawing control.
- 根据权利要求1所述的显示设备,其特征在于,所述控制器被进一步配置为:The display device according to claim 1, wherein the controller is further configured to:显示器停止旋转,则截取遮挡图像,所述遮挡图像为显示器停止旋转时显示器所展示的图像;When the display stops rotating, the occluded image is captured, and the occluded image is the image displayed on the display when the display stops rotating;控制显示器显示所述遮挡图像,所述遮挡图像设置于所述视频帧的上层。The display is controlled to display the occlusion image, and the occlusion image is arranged on the upper layer of the video frame.
- 根据权利要求9所述的显示设备,其特征在于,所述控制器被进一步配置为:The display device according to claim 9, wherein the controller is further configured to:统计所述遮挡图像的显示时间;Counting the display time of the occluded image;响应于所述显示时间等于预置静帧时间,则撤销所述遮挡图像。In response to the display time being equal to the preset still frame time, the occluded image is cancelled.
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010176794.2 | 2020-03-13 | ||
CN202010176794.2A CN113395558B (en) | 2020-03-13 | 2020-03-13 | Display equipment and display picture rotation adaptation method |
CN202010350580.2 | 2020-04-28 | ||
CN202010350580.2A CN113573118B (en) | 2020-04-28 | 2020-04-28 | Video picture rotating method and display equipment |
CN202010693749.4A CN111866590B (en) | 2020-07-17 | 2020-07-17 | Display device |
CN202010693749.4 | 2020-07-17 | ||
CN202011036180.0 | 2020-09-27 | ||
CN202011036180.0A CN112165644B (en) | 2020-09-27 | 2020-09-27 | Display device and video playing method in vertical screen state |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021180224A1 true WO2021180224A1 (en) | 2021-09-16 |
Family
ID=77671206
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/080553 WO2021180224A1 (en) | 2020-03-13 | 2021-03-12 | Display device |
PCT/CN2021/080552 WO2021180223A1 (en) | 2020-03-13 | 2021-03-12 | Display method and display device |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/080552 WO2021180223A1 (en) | 2020-03-13 | 2021-03-12 | Display method and display device |
Country Status (1)
Country | Link |
---|---|
WO (2) | WO2021180224A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114245177B (en) * | 2021-12-17 | 2024-01-23 | 智道网联科技(北京)有限公司 | Smooth display method and device of high-precision map, electronic equipment and storage medium |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101465999A (en) * | 2007-12-21 | 2009-06-24 | 康佳集团股份有限公司 | Liquid crystal television capable of exchanging longitudinal and horizontal picture as well as exchanging method thereof |
KR20110122556A (en) * | 2010-05-04 | 2011-11-10 | 엘지전자 주식회사 | Apparatus for displaying image and method for operating the same |
US20140118256A1 (en) * | 2012-10-29 | 2014-05-01 | Lenovo (Singapore) Pte, Ltd | Display directional sensing |
CN104461437A (en) * | 2014-12-29 | 2015-03-25 | 中科创达软件股份有限公司 | Data display method and device |
CN104615418A (en) * | 2014-07-25 | 2015-05-13 | 腾讯科技(北京)有限公司 | Slideable play window implementation method and device |
CN105306997A (en) * | 2014-05-30 | 2016-02-03 | 广州市动景计算机科技有限公司 | Mobile terminal play mode switching method and device |
CN110737336A (en) * | 2019-10-12 | 2020-01-31 | Oppo广东移动通信有限公司 | video display direction adjusting method, device and computer readable storage medium |
CN111866590A (en) * | 2020-07-17 | 2020-10-30 | 海信视像科技股份有限公司 | Display device |
CN112165644A (en) * | 2020-09-27 | 2021-01-01 | 海信视像科技股份有限公司 | Display device and video playing method in vertical screen state |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101164819B1 (en) * | 2004-11-15 | 2012-07-18 | 삼성전자주식회사 | Display Apparatus And Control Method Thereof And Display System |
JP6257329B2 (en) * | 2012-01-13 | 2018-01-10 | サターン ライセンシング エルエルシーSaturn Licensing LLC | Information processing apparatus, information processing method, and computer program |
CN104581405B (en) * | 2013-10-21 | 2018-09-04 | 中国移动通信集团公司 | A kind of display content processing method and equipment |
CN104065999A (en) * | 2014-06-11 | 2014-09-24 | 四川政企网络信息服务有限公司 | Image processing assembly and method capable of achieving image rotation |
KR102156294B1 (en) * | 2016-08-30 | 2020-09-15 | 삼성전자주식회사 | Image display apparatus and operating method for the same |
CN106658175A (en) * | 2016-11-15 | 2017-05-10 | Tcl集团股份有限公司 | Video display method and system for television terminal |
US10890288B2 (en) * | 2018-04-13 | 2021-01-12 | Microsoft Technology Licensing, Llc | Systems and methods of providing a multipositional display |
-
2021
- 2021-03-12 WO PCT/CN2021/080553 patent/WO2021180224A1/en active Application Filing
- 2021-03-12 WO PCT/CN2021/080552 patent/WO2021180223A1/en active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101465999A (en) * | 2007-12-21 | 2009-06-24 | 康佳集团股份有限公司 | Liquid crystal television capable of exchanging longitudinal and horizontal picture as well as exchanging method thereof |
KR20110122556A (en) * | 2010-05-04 | 2011-11-10 | 엘지전자 주식회사 | Apparatus for displaying image and method for operating the same |
US20140118256A1 (en) * | 2012-10-29 | 2014-05-01 | Lenovo (Singapore) Pte, Ltd | Display directional sensing |
CN105306997A (en) * | 2014-05-30 | 2016-02-03 | 广州市动景计算机科技有限公司 | Mobile terminal play mode switching method and device |
CN104615418A (en) * | 2014-07-25 | 2015-05-13 | 腾讯科技(北京)有限公司 | Slideable play window implementation method and device |
CN104461437A (en) * | 2014-12-29 | 2015-03-25 | 中科创达软件股份有限公司 | Data display method and device |
CN110737336A (en) * | 2019-10-12 | 2020-01-31 | Oppo广东移动通信有限公司 | video display direction adjusting method, device and computer readable storage medium |
CN111866590A (en) * | 2020-07-17 | 2020-10-30 | 海信视像科技股份有限公司 | Display device |
CN112165644A (en) * | 2020-09-27 | 2021-01-01 | 海信视像科技股份有限公司 | Display device and video playing method in vertical screen state |
Also Published As
Publication number | Publication date |
---|---|
WO2021180223A1 (en) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113395558B (en) | Display equipment and display picture rotation adaptation method | |
CN111787388B (en) | Display device | |
CN112165644B (en) | Display device and video playing method in vertical screen state | |
CN114827707B (en) | Display equipment and startup animation display method | |
CN111970550B (en) | Display device | |
CN111866590B (en) | Display device | |
WO2021212470A1 (en) | Display device and projected-screen image display method | |
CN111866593B (en) | Display device and startup interface display method | |
CN112565861A (en) | Display device | |
CN113556591A (en) | Display equipment and projection screen image rotation display method | |
CN113395554B (en) | Display device | |
WO2021180224A1 (en) | Display device | |
CN113573118B (en) | Video picture rotating method and display equipment | |
CN115396704B (en) | Display equipment and power-on signal source display adaptation method | |
CN113630639B (en) | Display device | |
CN114501087B (en) | Display equipment | |
CN113542824A (en) | Display device and display method of application interface | |
CN113542823B (en) | Display equipment and application page display method | |
US11501411B2 (en) | Animation configuration method and display device | |
WO2021208016A1 (en) | Display device and display method for application interface | |
WO2021195919A1 (en) | Display device, and power-on signal source display adaption method | |
CN111787374A (en) | Display device |
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: 21768407 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21768407 Country of ref document: EP Kind code of ref document: A1 |