Detailed Description
To make the purpose and embodiments of the present application clearer, the following will clearly and completely describe the exemplary embodiments of the present application with reference to the attached drawings in the exemplary embodiments of the present application, and it is obvious that the described exemplary embodiments are only a part of the embodiments of the present application, and not all of the embodiments.
It should be noted that the brief descriptions of the terms in the present application are only for the convenience of understanding the embodiments described below, and are not intended to limit the embodiments of the present application. These terms should be understood in their ordinary and customary meaning unless otherwise indicated.
The terms "first," "second," "third," and the like in the description and claims of this application and in the above-described drawings are used for distinguishing between similar or analogous objects or entities and not necessarily for describing a particular sequential or chronological order, unless otherwise indicated. It is to be understood that the terms so used are interchangeable under appropriate circumstances.
The terms "comprises" and "comprising," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a product or apparatus that comprises a list of elements is not necessarily limited to all elements expressly listed, but may include other elements not expressly listed or inherent to such product or apparatus.
The term "module" refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and/or software code that is capable of performing the functionality associated with that element.
Fig. 1 is a schematic diagram of an operation scenario between a display device and a control apparatus according to an embodiment. As shown in fig. 1, a user may operate the display apparatus 200 through the smart device 300 or the control device 100.
In some embodiments, the control apparatus 100 may be a remote controller, and the communication between the remote controller and the display device includes an infrared protocol communication or a bluetooth protocol communication, and other short-distance communication methods, and controls the display device 200 in a wireless or wired manner. The user may input a user instruction through a key on a remote controller, voice input, control panel input, etc., to control the display apparatus 200.
In some embodiments, the smart device 300 (e.g., mobile terminal, tablet, computer, laptop, etc.) may also be used to control the display device 200. For example, the display device 200 is controlled using an application program running on the smart device.
In some embodiments, the display device 200 may also be controlled in a manner other than the control apparatus 100 and the smart device 300, for example, the voice command control of the user may be directly received by a module configured inside the display device 200 to obtain a voice command, or may be received by a voice control device provided outside the display device 200.
In some embodiments, the display device 200 is also in data communication with a server 400. The display device 200 may be allowed to be communicatively connected through a Local Area Network (LAN), a Wireless Local Area Network (WLAN), and other networks. The server 400 may provide various contents and interactions to the display apparatus 200. The server 400 may be a cluster or a plurality of clusters, and may include one or more types of servers.
Fig. 2 exemplarily shows a block diagram of a configuration of the control apparatus 100 according to an exemplary embodiment. As shown in fig. 2, the control device 100 includes a controller 110, a communication interface 130, a user input/output interface 140, a memory, and a power supply. The control apparatus 100 may receive an input operation instruction from a user and convert the operation instruction into an instruction recognizable and responsive by the display device 200, serving as an interaction intermediary between the user and the display device 200.
Fig. 3 shows a hardware configuration block diagram of the display apparatus 200 according to an exemplary embodiment.
In some embodiments, the display apparatus 200 includes at least one of a tuner demodulator 210, a communicator 220, a detector 230, an external device interface 240, a controller 250, a display 260, an audio output interface 270, a memory, a power supply, a user interface.
In some embodiments the controller comprises a processor, a video processor, an audio processor, a graphics processor, a RAM, a ROM, a first interface to an nth interface for input/output.
In some embodiments, the display 260 includes a display screen component for presenting a picture, and a driving component for driving an image display, a component for receiving an image signal from the controller output, performing display of video content, image content, and a menu manipulation interface, and a user manipulation UI interface.
In some embodiments, the display 260 may be a liquid crystal display, an OLED display, and a projection display, and may also be a projection device and a projection screen.
In some embodiments, communicator 220 is a component for communicating with external devices or servers according to various communication protocol types. For example: the communicator may include at least one of a Wifi module, a bluetooth module, a wired ethernet module, and other network communication protocol chips or near field communication protocol chips, and an infrared receiver. The display apparatus 200 may establish transmission and reception of control signals and data signals with the external control apparatus 100 or the server 400 through the communicator 220.
In some embodiments, the user interface may be configured to receive control signals for controlling the apparatus 100 (e.g., an infrared remote control, etc.).
In some embodiments, the detector 230 is used to collect signals of the external environment or interaction with the outside. For example, detector 230 includes a light receiver, a sensor for collecting ambient light intensity; alternatively, the detector 230 includes an image collector, such as a camera, which may be used to collect external environment scenes, attributes of the user, or user interaction gestures, or the detector 230 includes a sound collector, such as a microphone, which is used to receive external sounds.
In some embodiments, the external device interface 240 may include, but is not limited to, the following: high Definition Multimedia Interface (HDMI), analog or data high definition component input interface (component), composite video input interface (CVBS), USB input interface (USB), RGB port, and the like. The interface may be a composite input/output interface formed by the plurality of interfaces.
In some embodiments, the tuner demodulator 210 receives broadcast television signals via wired or wireless reception, and demodulates audio/video signals, such as EPG data signals, from a plurality of wireless or wired broadcast television signals.
In some embodiments, the controller 250 and the modem 210 may be located in different separate devices, that is, the modem 210 may also be located in an external device of the main device where the controller 250 is located, such as an external set-top box.
In some embodiments, the controller 250 controls the operation of the display device and responds to user operations through various software control programs stored in memory. The controller 250 controls the overall operation of the display apparatus 200. For example: in response to receiving a user command for selecting a UI object to be displayed on the display 260, the controller 250 may perform an operation related to the object selected by the user command.
In some embodiments, the object may be any one of selectable objects, such as a hyperlink, an icon, or other actionable control. The operations related to the selected object are: displaying an operation connected to a hyperlink page, document, image, or the like, or performing an operation of a program corresponding to the icon.
In some embodiments the controller comprises at least one of a Central Processing Unit (CPU), a video processor, an audio processor, a Graphics Processing Unit (GPU), a RAM Random Access Memory (RAM), a ROM (Read-Only Memory), a first to nth interface for input/output, a communication Bus (Bus), and the like.
In some embodiments, a user may enter user commands on a Graphical User Interface (GUI) displayed on display 260, and the user input interface receives the user input commands through the Graphical User Interface (GUI). Alternatively, the user may input the user command by inputting a specific sound or gesture, and the user input interface receives the user input command by recognizing the sound or gesture through the sensor.
In some embodiments, a "user interface" is a media interface for interaction and information exchange between an application or operating system and a user that enables conversion between an internal form of information and a form that is acceptable to the user. A commonly used presentation form of the User Interface is a Graphical User Interface (GUI), which refers to a User Interface related to computer operations and displayed in a graphical manner. It may be an interface element such as an icon, a window, a control, etc. displayed in the display screen of the electronic device, where the control may include a visual interface element such as an icon, a button, a menu, a tab, a text box, a dialog box, a status bar, a navigation bar, a Widget, etc.
In some embodiments, a system of a display device may include a Kernel (Kernel), a command parser (shell), a file system, and an application program. The kernel, shell, and file system together make up the basic operating system structure that allows users to manage files, run programs, and use the system. After power-on, the kernel is started, kernel space is activated, hardware is abstracted, hardware parameters are initialized, and virtual memory, a scheduler, signals and interprocess communication (IPC) are operated and maintained. And after the kernel is started, loading the Shell and the user application program. The application program is compiled into machine code after being started, and a process is formed.
The system of the display device may include a Kernel (Kernel), a command parser (shell), a file system, and an application program. The kernel, shell, and file system together make up the basic operating system structure that allows users to manage files, run programs, and use the system. After power-on, the kernel is started, kernel space is activated, hardware is abstracted, hardware parameters are initialized, and virtual memory, a scheduler, signals and interprocess communication (IPC) are operated and maintained. And after the kernel is started, loading the Shell and the user application program. The application program is compiled into machine code after being started, and a process is formed.
Referring to fig. 4, in some embodiments, the system is divided into four layers, which are an Application (Applications) layer (abbreviated as "Application layer"), an Application Framework (Application Framework) layer (abbreviated as "Framework layer"), an Android runtime (Android runtime) and system library layer (abbreviated as "system runtime library layer"), and a kernel layer from top to bottom.
In some embodiments, at least one application program runs in the application program layer, and the application programs may be windows (windows) programs carried by an operating system, system setting programs, clock programs or the like; or an application developed by a third party developer. In particular implementations, the application packages in the application layer are not limited to the above examples.
The framework layer provides an Application Programming Interface (API) and a programming framework for the application. The application framework layer includes a number of predefined functions. The application framework layer acts as a processing center that decides to let the applications in the application layer act. The application program can access the resources in the system and obtain the services of the system in execution through the API interface.
As shown in fig. 4, in the embodiment of the present application, the application framework layer includes a manager (Managers), a Content Provider (Content Provider), and the like, where the manager includes at least one of the following modules: an Activity Manager (Activity Manager) is used for interacting with all activities running in the system; the Location Manager (Location Manager) is used for providing the system service or application with the access of the system Location service; a Package Manager (Package Manager) for retrieving various information related to an application Package currently installed on the device; a Notification Manager (Notification Manager) for controlling display and clearing of Notification messages; a Window Manager (Window Manager) is used to manage the icons, windows, toolbars, wallpapers, and desktop components on a user interface.
In some embodiments, the activity manager is used to manage the lifecycle of the various applications as well as general navigational fallback functions, such as controlling exit, opening, fallback, etc. of the applications. The window manager is used for managing all window programs, such as obtaining the size of a display screen, judging whether a status bar exists, locking the screen, intercepting the screen, controlling the change of the display window (for example, reducing the display window, displaying a shake, displaying a distortion deformation, and the like), and the like.
In some embodiments, the system runtime layer provides support for the upper layer, i.e., the framework layer, and when the framework layer is used, the android operating system runs the C/C + + library included in the system runtime layer to implement the functions to be implemented by the framework layer.
In some embodiments, the kernel layer is a layer between hardware and software. As shown in fig. 4, the core layer includes at least one of the following drivers: audio drive, display driver, bluetooth drive, camera drive, WIFI drive, USB drive, HDMI drive, sensor drive (like fingerprint sensor, temperature sensor, pressure sensor etc.) and power drive etc..
The hardware or software architecture in some embodiments may be based on the description in the above embodiments, and in some embodiments may be based on other hardware or software architectures that are similar to the above embodiments, and it is sufficient to implement the technical solution of the present application.
In some embodiments, the display device 200 may be a rotating television, i.e., the display 260 can rotate clockwise or counterclockwise about an axis perpendicular to the plane of the display in a specific plane (a vertical plane or a plane having a predetermined angle (less than 45 °) with respect to a vertical axis), and thus can operate in two rotational states, i.e., a landscape state illustrated in fig. 1, i.e., a state in which the long side of the display is in a horizontal direction, and a portrait state illustrated in fig. 1, i.e., a state in which the short side of the display is in a horizontal direction. The rotating television may be provided with a fixing assembly by which the above-described rotation of the display 260 is achieved. The application mainly solves the technical problem that when the rotary television plays media assets, a user controls the rotary television to rotate, so that the media asset playing effect is poor, and therefore the display device in the following embodiment can be the rotary television.
To describe the solution of the above technical problem in detail, the following respectively describes the display device, some features of the assets displayed on the display device, and the process of the user viewing the assets on the display device.
In some embodiments, the controller 250 rotates the display 260 by a fixed angle, such as 90 degrees, according to the rotation instruction. If the display device is in the landscape screen state, the user may send a rotation instruction to the display device through the smart device 300, the control apparatus 100, or a rotation button on the display device, and the controller 250 rotates the display 260 to the portrait screen state according to the rotation instruction; if the display device is in the vertical screen state, the user may send a rotation instruction to the display device through the smart device 300, the control apparatus 100, or a rotation button on the display device, and the controller 250 rotates the display 260 to the horizontal screen state according to the rotation instruction.
In some embodiments, a rotation status flag of the display 260 is stored in the controller 250 or the memory 260 of the display device, for example, the rotation status flag may have two values, which respectively represent a landscape state and a portrait state, when the rotation status of the display 260 changes, the display direction of the display changes, the controller 250 may monitor the change of the display direction by rewriting an onconfiguration changed method, update the value of the rotation status flag after monitoring the change of the display direction, generate a notification message, and send the notification message to the UI process, so that the UI process updates the display direction of the interface to be consistent with the display direction of the display, where the notification message may include value information of the rotation status flag.
In some embodiments, the marking of the spin state may be made internal to the multimedia application (e.g., a JUUI application), the UI process may be a process within the JUUI application, in some embodiments, the marking of the spin state may be made external to the multimedia application (e.g., a JUUI application), and the UI process may be a process within the JUUI application.
In some embodiments, the value of the rotation status indicator may also change in real time following the rotation angle of the display 260.
In some embodiments, the server of the display device may pull some pieces of asset information of the asset from a server of a platform such as a media provider, for example, a super-cool platform, an arcade platform, and the like, process and store the asset information, so as to realize the storage of the asset, and the display device may display the stored asset, so that a user may view the asset through the display device.
In some embodiments, the asset information may include information such as an asset poster, an asset introduction, an asset tag, an asset type, a play address, and the like of an asset, where the play address is an interface address of a video stream of the asset.
In some embodiments, a screen status identifier may be further set in the play address of the media asset information provided by the server of the media asset provider, where the screen status identifier has two possible values, for example, when the value is lan (horizontal printing format), it indicates that the play address is the play address of the horizontal screen video stream of the media asset, and when the value is por (vertical printing format), it indicates that the play address is the play address of the vertical screen video stream of the media asset. The horizontal screen video stream and the vertical screen stream are video streams with different formats, video frames of the horizontal screen video stream and video frames of the vertical screen video stream have different aspect ratios, the width value of the video frames of the horizontal screen video stream is larger than the height value, and the height value of the video frames of the vertical screen video stream is larger than the width value.
If one media asset has both a horizontal screen video stream suitable for horizontal screen playing and a vertical screen video stream suitable for vertical screen playing, two playing addresses can be provided in the media asset information of the media asset, wherein one playing address is provided with a lan, and the other playing address is provided with a por. If one media asset is only suitable for the horizontal screen video stream and is not suitable for the vertical screen video stream, a playing address can be arranged in the media asset information of the media asset, and a lan is arranged in the playing address, or if no screen state identifier is arranged in the playing address, the playing address is defaulted to be the playing address of the horizontal screen video stream. If one piece of media asset only has a vertical screen video stream and does not have a horizontal screen video stream, a playing address can be arranged in the media asset information of the media asset, and the playing address is provided with a por.
In some embodiments, if one piece of media asset has both a horizontal screen video stream and a vertical screen video stream, there may be only one play address in the media asset information of the media asset, where the play address has a first mapping relationship with the horizontal screen video stream of the media asset and a second mapping relationship with the vertical screen video stream, and a lan may be set in the first mapping relationship and a por may be set in the second mapping relationship.
In some embodiments, if the screen status identifier is not included in the asset information of one asset provided by the server of the asset provider, the server may process and store the asset information when performing asset warehousing on the asset, and the processing of the asset information includes adding the screen status identifier to the asset information alone. In order to determine whether the value of the screen state identifier to be added needs to be set as lan or por, the server can acquire a first frame image frame of the video stream of the media asset from the playing address of the media asset information, and determine whether the video stream of the media asset is a horizontal screen video stream or a vertical screen video stream according to the size ratio, namely the aspect ratio, of the first frame image frame. For example, if the size ratio is 16:9, the video stream of the medium asset is determined to be a horizontal screen video stream, and if the size ratio is 9:16, the video stream of the medium asset is determined to be a vertical screen video stream. And if the video stream is a horizontal screen video stream, setting the value of the screen state identifier to be added as lan, and if the video stream is a vertical screen video stream, setting the value of the screen state identifier to be added as por.
In some embodiments, if the media information of a piece of media asset provided by the server of the media asset provider includes a screen status identifier, but the screen status identifier is not set in the play address, or the value of the screen status identifier is not lan or por, the server may also obtain the first frame image frame of the video stream of the piece of media asset, determine whether the play address corresponds to a cross-screen video stream or a vertical-screen video stream, and further add the screen status identifier with the value of lan or por in the media asset information, so that after the media asset is put in storage, the server of the display device or the display device can quickly identify whether the play address of the piece of media asset is the play address of the cross-screen video stream or the play address of the vertical-screen video stream. Of course, the server of the display device may also establish a corresponding relationship between different screen state identifiers and the lan or the por without adding a screen state identifier in the media asset information, so that the display device or the server of the display device can quickly identify whether the play address of one media asset is the play address of the horizontal screen video stream or the play address of the vertical screen video stream according to the corresponding relationship.
In some embodiments, when the display device requests data of an interface from the server, the server may set a media asset recommendation bit according to the interface requested by the display device, and issue media asset information to the display device, and if a user requests to play media assets of the recommendation bit, the display device may obtain a video stream according with a rotation state of the display device according to a play address in the media asset information and the rotation state of the display device, and then play the video stream.
In some embodiments, if one piece of media asset information provided by a server of a media asset provider does not include a screen state identifier, when the server of the display device performs media asset warehousing on the media asset, whether the media asset is suitable for vertical screen viewing or not can be judged according to the type of the media asset in the media asset information, if the media asset is suitable for vertical screen viewing, a screen state identifier is added to the media asset, and if the media asset is not suitable for vertical screen viewing, a screen state identifier is not added to the media asset. For example, the types of assets suitable for portrait viewing may include types of fitness.
In some embodiments, if a piece of media that a user is watching on the display device is not a fitness media, for example, the user watches a piece of movie media under a landscape screen, after the user inputs a display rotation instruction to the display device, the display device cannot provide a good playing effect because the media is not adapted to a video stream played in a portrait screen state, so that the display device can quit playing the media according to the fact that the type of the media that is being played is not a fitness type, and then display a preset interface, which can be provided with a prompt word to prompt the user to watch the media under the landscape screen state.
Taking the user as an example of watching a fitness video, the process of watching the media assets on the display device by the user is as follows:
in some embodiments, the display device may be configured to enter the home interface shown in fig. 5 after being powered on, and referring to fig. 5, the home interface may be provided with a plurality of entry controls, such as a karaoke control, a children's palette control, a friend circle, and an AI fitness control, and so on. The user may enter the AI fitness interface by clicking the AI fitness control, as he wants to watch a fitness video.
In some embodiments, after the user clicks the AI fitness control, the display device sends a data request of the AI fitness interface to the server according to the triggering of the AI fitness control. After receiving the data request, the server sends the interface data of the AI fitness interface to the display device, so that the display device can draw the AI fitness interface shown in fig. 6 according to the interface data. The interface data may include media information corresponding to the recommendation bit, the media information includes at least one play address, each recommendation bit may be a control, and may display information such as a poster and a name of an individual media asset, or display information such as a poster and a name of a media asset set, where a media asset set may include multiple media assets, for example, if the media asset corresponding to the recommendation bit is a movie, the media asset may be an individual media asset, and if the media asset corresponding to the recommendation bit is a tv show, the media asset may be a media asset set including multiple individual media assets.
In some embodiments, after the AI fitness interface shown in fig. 6 is displayed on the display device, the user may click one recommendation level control and enter the media asset detail interface corresponding to the recommendation level control, and if the media asset corresponding to the recommendation level control clicked by the user in fig. 6 is a media asset set, the media asset detail interface may be shown in fig. 7, and the interface may be referred to as a first interface, and the interface may display a plurality of single-set media assets. Each single-set media asset is a control, if a user wants to watch one of the single-set media assets, the user can click one single-set media asset, and at the moment, the single-set media asset which the user wants to watch can be called as a target media asset. If the display device supports multiple play modes, the play mode selection interface shown in fig. 8 may be entered, where fig. 8 includes three play modes: a normal mode, a follow-up mode and a watching mode, and each play mode in fig. 8 may be a control.
In some embodiments, in the normal mode, the display device may perform full-screen playing on the target media asset; in the follow-up mode, the display equipment can start the camera, generate two playing windows and play the target media assets and the user images collected by the camera in the two playing windows respectively; in the film watching mode, the display device can generate two playing windows, and respectively play the target asset and another asset selected by the user in the two playing windows, such as a television show asset or a movie asset.
In some embodiments, if the display device only supports one play mode, the play mode interface may not be generated, and the play interface of the target media asset may be directly entered, which may be referred to as a second interface.
In some embodiments, the display device plays the target asset based on MediaPlayer, and if the user clicks the normal mode in fig. 8, a start-up instruction to generate the target asset. The display device responds to the play starting instruction, can determine the target media asset as a MediaPlayer object, and obtains the current rotation state of the display according to the value of the current rotation state identifier. And if the current rotation state is the landscape screen state, acquiring a playing address of the landscape screen video stream from the media asset information corresponding to the recommended bit control, namely, the screen state identifier takes the value of the playing address of lan, then accessing the playing address to acquire the landscape screen video stream, and after the landscape screen video stream is acquired, decoding the landscape screen video stream to play the landscape screen video stream on a display. And if the current rotation state is the vertical screen state, acquiring a playing address of the vertical screen video stream from the media asset information corresponding to the recommended bit control, namely acquiring the playing address with the screen state identifier value of por, then accessing the playing address to acquire the vertical screen video stream, and after the vertical screen video stream is acquired, decoding the vertical screen video stream to play the vertical screen video stream on a display.
In some embodiments, only one play address is in the media asset information of the target media asset selected by the user, the display device may temporarily ignore the current rotation state of the display device, acquire the video stream from the play address first, if the play direction of the video stream is consistent with the current rotation state, the video stream may be directly played, and if the play direction of the video stream is not consistent with the current rotation state, the display may be rotated to be consistent with the play direction of the video stream, and then the video stream is played. The playing direction comprises a horizontal screen direction or a vertical screen direction, the horizontal screen direction can correspond to the horizontal screen state, and the vertical screen direction can correspond to the vertical screen state.
Taking the current rotation state of the display device as the landscape screen state as an example, the interface of the display device for playing the landscape screen video stream can be shown in fig. 9, the video frame of the landscape screen video stream can be displayed in a full screen manner, the landscape screen video stream can be referred to as a first video stream, and the playing address of the first video stream can be referred to as a first playing address.
In some embodiments, when the user views the target asset, the user may want to adjust the rotation state of the display device, for example, the user wants to switch the display device from the landscape screen state to the portrait screen state, at this time, the user may input a rotation instruction to the display, the controller of the display device rotates the display by 90 degrees according to the rotation instruction, and after the rotation is completed, the value of the rotation state identifier may be updated.
It should be noted that the player playing the video stream of the target asset before and after the rotation of the display is the same player, and in some embodiments, the player may be a MediaPlayer.
In some embodiments, after a user inputs a rotation instruction, the display device may receive a notification message that a display direction of the display changes, determine, according to the notification message, whether a media type of a currently playing media belongs to a type suitable for vertical screen playing, such as a fitness type, when a target media is a fitness video, the target media belongs to the fitness type, the display device may call a pause () method of a MediaPlayer object to pause a currently playing first video stream according to the target media being the fitness type, obtain and record a current playing progress by a getCurrentPosition () method of the MediaPlayer object, and continue playing the target media from a time corresponding to the playing progress after the display rotates, thereby avoiding a problem that a picture of the target media is in an inclined state to cause poor viewing experience in a rotation process. If the rotation state identifier has only two values, the display device can update according to the values of the rotation state identifier and judge that the rotation of the display is finished; if the rotation state identifier is updated in real time along with the rotation angle of the display, the rotation of the display can be judged to be finished according to the value within the preset time, such as 1 second.
In some embodiments, after the user inputs the rotation instruction, the display device may also suspend playing the first video stream directly according to the notification message that the display direction of the display changes, without determining whether the type of the currently playing media asset is a type suitable for vertical screen playing.
In some embodiments, after the user inputs the rotation instruction, the display device may also not pause the playing of the first video stream, and after the rotation of the display is completed, pause the playing of the first video stream, record the playing progress, and continue playing the target asset according to the playing progress, thereby avoiding the problem that the rotation time may need to be long, and the user needs to wait for a long time because the playing asset is paused in the rotation process.
In some embodiments, after the user inputs the rotation instruction, the display device needs to obtain the video stream corresponding to the other display state according to the second playing address.
In some embodiments, to ensure that the display device can continue playing the target media asset in time after the display device is rotated, the display device may determine, after receiving the rotation instruction, a target state of the rotation instruction, that is, a rotation state that the user wants to present on the display device, according to the current rotation state. If the current rotation state is a horizontal screen state, determining that the target state is a vertical screen state according to the fact that the angle of rotation of the display is 90 degrees; and if the current rotation state is the vertical screen state, determining that the target state is the horizontal screen state according to the fact that the angle of rotation of the display is 90 degrees every time.
In some embodiments, after determining the target state, the display device may obtain a play address corresponding to the target state from the asset information of the target asset. Taking the target state as the vertical screen state as an example, the vertical screen video stream of the target medium resource may be referred to as a second video stream, the playing address of the second video stream may be referred to as a second playing address, and if the second playing address can be obtained, the second video stream is obtained from the second playing address, in order to ensure the continuous playing effect, after the vertical screen video stream is acquired, the play progress before rotation can be quickly positioned by the seekTo () method of the MediaPlayer object, then, the play () method of the MediaPlayer object is called, the second video stream is played from the play time corresponding to the play progress, therefore, the user can see that the target media asset continues to be played from the playing progress before the display device rotates, the playing effect can be seen in fig. 10, and as can be seen from fig. 9 to 10, if the user inputs a rotation instruction when the playing reaches 03:43, the user continues to play from 03:43 after the display device rotates.
In some embodiments, if the second play address is not acquired, the long connection of the first video stream is maintained, and the acquisition and play of the first video stream is continued after the rotation into place.
Therefore, by writing a plurality of playing addresses of one media asset into the media asset information of the media asset in advance, when the rotation state of the display device is changed, the display device can acquire the matched playing addresses according to the rotated state, so that the display device can flexibly adjust the playing mode of the media asset after rotation, and the playing effect and the watching experience of a user are improved.
In some embodiments, if the target state is the vertical screen state, but the display device cannot detect the second play address in the media information of the target media asset, the first video stream is continuously loaded from the original play address, i.e., the first play address. After a video stream is requested and a video frame is analyzed, the video stream is played in a small window form, at the moment, the width of the small window can be the same as that of a display in a vertical screen state, the small window is displayed in the middle of the display, and black edges exist on the upper side and the lower side of the small window.
In some embodiments, if there is no second play address, when the landscape state is converted into the portrait state, a scaling factor of the video frame is determined according to a width of the media asset in the horizontal direction and a resolution of the display in the short side direction, and the video frame of the first video stream is scaled according to the scaling factor.
In some embodiments, if there is no second play address, when the portrait screen state is converted into the landscape screen state, a scaling factor of the video frame is determined according to a height of the media asset in the vertical direction and a resolution of the display in the short side direction, and the video frame of the first video stream is scaled according to the scaling factor.
In some embodiments, during the horizontal-vertical screen conversion process, the display coordinate parameters of the display screen need to be exchanged in horizontal and vertical coordinates.
In some embodiments, if the target state is the vertical screen state, but the display device cannot detect the second play address in the media information of the target media asset, the playing of the first video stream may also be exited, and then the preset interface is displayed. In some embodiments, the preset interface may be provided with a prompt for prompting the user to view the target asset in the landscape state.
The above embodiment shows a resume method when a server issues media asset information containing at least one play address in advance, in other embodiments, the server may establish a mapping relationship between the media asset and at least one play address when the media asset is stored in the storage, when the media asset information is sent to the display equipment, the mapping relation is not sent, or only a default playing address is sent, if in the process of playing the target media asset by the display equipment, the user inputs a rotation instruction, the display device can send a media resource address request to the server according to the mismatching of the target state and the video stream corresponding to the current playing address, the media asset address request can comprise a target state and a media asset identifier of the target media asset, the server can issue a second playing address matched with the target state to the display equipment according to the mapping relation, and the display equipment loads a second video stream by going to the second playing address.
In some embodiments, the display device may request the server for the second play address during the rotation of the display to contend for time for loading of the second video stream, so that the second video stream can be played immediately after the rotation of the display is completed, and the second video stream can be played only after a long time is required after the rotation of the display is completed.
In some embodiments, one play address of the target media asset has two mapping relationships, which respectively correspond to a resource of the first video stream and a resource of the second video stream, and the display device may also select the corresponding mapping relationship to load the second video stream according to the target state being a vertical screen state.
As can be seen from the above embodiments, when a first video stream of a target asset is played, if the rotation state of the display changes, a second video stream of the target asset can be continuously played from the current playing progress, where the second video stream is a video stream matched with the rotated rotation state, so as to improve the playing effect of the target asset.
Since the above embodiments are all described by referring to and combining with other embodiments, the same portions are provided between different embodiments, and the same and similar portions between the various embodiments in this specification may be referred to each other. And will not be described in detail herein.
It is noted that, in this specification, relational terms such as "first" and "second," and the like, are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a circuit structure, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such circuit structure, article, or apparatus. Without further limitation, the presence of an element identified by the phrase "comprising an … …" does not exclude the presence of other like elements in a circuit structure, article, or device comprising the element.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
The above embodiments of the present application do not limit the scope of the present application.