WO2018166319A1 - 一种视频播放方法、用户终端以及服务器 - Google Patents
一种视频播放方法、用户终端以及服务器 Download PDFInfo
- Publication number
- WO2018166319A1 WO2018166319A1 PCT/CN2018/076531 CN2018076531W WO2018166319A1 WO 2018166319 A1 WO2018166319 A1 WO 2018166319A1 CN 2018076531 W CN2018076531 W CN 2018076531W WO 2018166319 A1 WO2018166319 A1 WO 2018166319A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- program
- play
- user terminal
- target channel
- channel
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26603—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/278—Content descriptor database or directory service for end-user access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4332—Content storage operation, e.g. storage operation in response to a pause request, caching operations by placing content in organized collections, e.g. local EPG data repository
-
- 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/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
Definitions
- the present application relates to streaming media playback technologies, and in particular, to a video playback method, a user terminal, and a server.
- Digital Video Converter (English: Set Top Box, abbreviated: STB), commonly referred to as a set-top box or set-top box, is a user terminal that connects a television to an external source. It converts compressed digital signals into TV content and displays them on the TV. Signals can come from cable, satellite antennas, broadband networks, and terrestrial broadcasts.
- the content received by the user terminal can receive digital content, including electronic program guides, Internet web pages, subtitles, and the like, in addition to the images and sounds that the analog television can provide.
- the live TV channel contains many types of programs, such as entertainment programs, TV series, sports competitions, science and education columns, etc. When users watch TV live channels, there will be different viewing experience requirements for different types of programs, mainly including real-time. Experience requirements in terms of fluency, clarity, and speed of broadcast.
- the selected play and cache policy will affect the actual experience of the above four play attributes, but in the case of a certain network environment of the user's home, the four attributes played.
- the present application provides a video playing method, a user terminal, and a server.
- the user terminal can play the program according to the playing mode corresponding to the program type of the program played by the current live channel, and can better match the user's different program types for playing the program.
- the user terminal plays a variety of different program types during the process of playing the live channel.
- an example of the present application provides a video playing method, which is applied to playing a live channel.
- a user terminal receives an input instruction that includes a target channel selected by a user, and after receiving an input instruction, the user terminal receives an input instruction.
- the channel identifier of the target channel selected by the user may be determined, and then a play request including the channel identifier including the target channel is sent to the electronic program menu (English: Electronic Program Guide, EPG) server; the user terminal receives the return from the EPG server.
- EPG Electronic Program Guide
- the playback response of the target channel play address, and the user terminal can acquire the program type corresponding to the program currently being played by the target channel; then, the user terminal plays the program according to the play mode corresponding to the program type according to the play address. Therefore, in the present application, the user terminal can play the program according to the play mode corresponding to the program type of the program played by the current channel, which can better match the user's viewing demand for different program types of the broadcast program, and the user terminal is playing.
- different playback modes are implemented for different program types, and the playback modes are various.
- the playback response of the EPG server to the user terminal further includes the program type corresponding to the program played by the target channel, and the user terminal acquires the program type corresponding to the program currently played by the target channel, which may specifically refer to the user terminal.
- the program type corresponding to the program currently being played by the target channel is directly obtained from the playback response. It can be seen that, in this implementation, the corresponding program type of the played program of the target channel can be sent to the user terminal by the EPG server, which improves the diversity of the scheme, and can reduce the load on the user terminal side.
- the user terminal determines a program type corresponding to the program currently being played by the target channel, and may obtain a corresponding event by using a transport stream corresponding to the program currently being played by the target channel.
- the information table (English: Event Information Table, abbreviation: EIT), and then according to the obtained EIT table, determine the program type corresponding to the program currently being played by the target channel.
- the user terminal can directly determine the program type corresponding to the program according to the transport stream corresponding to the program, in addition to the program type being fed back by the EPG server, thereby improving the diversity of the scheme.
- the user terminal determines the program corresponding to the program according to the EIT table, including: the user terminal parses the EIT table to obtain a corresponding content descriptor, and then determines, from the content descriptor, the currently broadcasted program of the target channel.
- the corresponding program type The program type corresponding to the program is determined by describing the content descriptor having the program classification information in the EIT table.
- the EIT table of the transport stream includes various descriptors, including the content descriptor.
- the content descriptor includes program type classification information for transmitting the corresponding program.
- the program type classification information of the program may also be described in other descriptors in the EIT table, thereby determining the program type corresponding to the program played by the target channel through other descriptors, specifically There is no limit here. It can be seen that, in the implementation, the manner in which the user terminal determines the program type corresponding to the program according to the EIT table is specifically given, and the implementability of the solution is improved.
- the user terminal determines the program type corresponding to the program currently being played by the target channel, and may obtain the fragment index file of the playback segment corresponding to the currently played program of the target channel. And determining, according to the fragment index file, a program type corresponding to the program currently being played by the target channel.
- the OTT live channel another way of obtaining the program type corresponding to the program is also proposed, which increases the implementability of the scheme.
- the user terminal plays the program according to the play mode corresponding to the program type, including: the user terminal determines the real-time demand degree and the fluency requirement degree corresponding to the program type according to the preset program type play attribute list; If the demand level is higher than the fluency demand degree, the user terminal receives the play data required for the program decoding and plays the program; if the real-time demand degree is lower than the fluency demand degree, the user terminal caches the program preset time duration after playing the data. Play the show.
- the user terminal plays the program according to the play mode corresponding to the program type, including: the user terminal determines the real-time demand degree and the fluency requirement degree corresponding to the program type according to the preset program type play attribute list; When the transport stream is recovered by the interrupt, if the real-time demand is higher than the fluency demand degree, the user terminal receives the play data required for the program decoding and plays the program; when the target channel's transport stream is recovered by the interrupt, if real-time If the fluency is lower than the fluency requirement, the user terminal caches the program for the preset duration of the program and then plays the program.
- the user terminal plays the program according to the play mode corresponding to the program type, including: the user terminal determines the real-time demand degree corresponding to the program type according to the preset program type play attribute list. And the speed requirement of the broadcast speed; if the real-time demand degree is higher than the start speed demand degree, the user terminal plays the program by adding the multicast address corresponding to the program.
- the user terminal plays the program by turning on the FCC function.
- the method further includes: the user terminal acquires the index file of the program, and the index file by using the media server corresponding to the program.
- the code rate information of each play slice of the program is included; the play mode according to the play mode corresponding to the program type includes: the user terminal plays the attribute list according to the preset program type to obtain the clarity requirement degree and the fluency requirement degree corresponding to the program type; If the degree of sexual demand is higher than the degree of fluency, the user terminal acquires the program in the historical download code rate of the program, and plays the program in the rate of the code rate that matches the rate information; if the clarity requirement is lower than the fluency requirement, The user terminal plays the program by acquiring the playback slice corresponding to the lowest code rate indicated by the code rate information.
- the user terminal plays the program according to the play mode corresponding to the program type, including: the user terminal determines the corresponding fluency requirement of the program type according to the preset program type play attribute list. Degree and clarity requirement; the user terminal determines the download code rate of the to-be-downloaded play segment of the program according to the fluency demand degree, the clarity demand degree, and the current network bandwidth; the user terminal downloads the play slice of the program according to the download code rate; the user The terminal plays the program by playing the slice. Therefore, in this implementation manner, the downloading code rate of the to-be-downloaded playback segment can be determined according to the network bandwidth, so that the playback segment of the program to be downloaded can be switched in real time according to the size of the network bandwidth.
- the user terminal determines the download code rate of the to-be-downloaded play segment of the program according to the fluency requirement, the clarity requirement, and the current network bandwidth, including: if the clarity requirement is higher than the fluency requirement When the network bandwidth is sufficient, the user terminal adjusts the download code rate of the program to be downloaded and played to the maximum code rate that the network bandwidth can accept; if the clarity is higher than the fluency requirement and the network bandwidth is insufficient, The download rate of the play slice of the program is adjusted to a lower code rate.
- the user terminal determines the download code rate of the to-be-downloaded playback segment of the program according to the fluency requirement, the clarity requirement, and the current network bandwidth, including: if the fluency requirement is higher than the clarity requirement And when the network bandwidth is insufficient, the download code rate of the program to be downloaded and played is adjusted to the maximum code rate that the network bandwidth can accept; if the fluency demand is higher than the clarity requirement, and the network bandwidth is sufficient, the program will be The download code rate of the to-be-downloaded playback slice is adjusted to a higher level code rate.
- a specific implementation manner of switching the code rate of the play segment to be downloaded of the program according to the program type and the network bandwidth is given, and the practical embodiment of the solution is enhanced.
- an embodiment of the present application provides a video playing method, where the EPG server receives a play request that the user terminal sends a channel identifier that includes a target channel, and after receiving the play request, the EPG server is configured according to the target channel.
- the channel identifier determines a program type corresponding to the currently played program of the target channel, and a play address of the target channel; and then feeds back to the user terminal a play address including the target channel and a play response of the program type play response, so that the user terminal receives the play response
- the user terminal plays the program according to the play mode included in the play response according to the play address included in the play response.
- the user terminal can play the program according to the play mode corresponding to the program type of the program played by the current target channel, and can better match the user's viewing requirements for different program types of the broadcast program, and the user terminal is During the playback of the target channel, the playback mode for different program types is more diverse.
- the EPG server determines, according to the channel identifier of the target channel, the program type corresponding to the program currently being played by the target channel, including: the EPG server determines, according to the channel identifier, the program currently being played by the target channel, and then saves the program information saved from the memory. Determining the program type corresponding to the program; or obtaining the program type corresponding to the program from the service platform (the server providing the program) corresponding to the program.
- an EPG measurement method for determining a program type corresponding to a program played by a target channel is proposed, which improves the diversity and implementability of the solution.
- the embodiment of the present application further provides a user terminal, where the user terminal includes: a receiving module, configured to receive an input instruction, where the input instruction includes a target channel selected by the user, and a sending module, configured to send to the electronic program menu EPG server a play request, the play request includes a channel identifier of the target channel included in the input instruction received by the receiving module, and the receiving module is further configured to receive a play response returned from the EPG server according to the play request sent by the sending module, where the play response includes the playback of the target channel
- the address and the play address are determined by the EPG server according to the channel identifier of the target channel;
- the processing module is configured to determine a program type corresponding to the currently played program of the target channel; and the processing module is further configured to: according to the play address included in the play response received by the receiving module
- the program is played according to the play mode corresponding to the program type.
- the component modules of the user terminal may also perform the steps described in the foregoing first aspect and various possible implementations, as described above in the first aspect and various possible implementations. The description will not be repeated here.
- the embodiment of the present application further provides a server, where the server has a function of implementing the behavior of the EPG server in the foregoing method, where the server includes a receiving module, configured to receive a play request sent by the user terminal, where the play request includes a channel identifier of the target channel, configured to determine, according to the channel identifier of the target channel included in the play request received by the receiving module, a program type corresponding to the currently played program of the target channel, and play of the target channel And a sending module, configured to feed back a play response to the user terminal, where the play response includes a play address of the target channel determined by the processing module and the program type.
- the server has a function of implementing the behavior of the EPG server in the foregoing method
- the server includes a receiving module, configured to receive a play request sent by the user terminal, where the play request includes a channel identifier of the target channel, configured to determine, according to the channel identifier of the target channel included in the play request received by the receiving module,
- the component modules of the server may also perform the steps described in the foregoing second aspect and various possible implementations, as described in the foregoing description of the second aspect and various possible implementations. , specifically no longer here to repeat.
- the embodiment of the present application further provides another user terminal, where the user terminal has a function of implementing the behavior of the user terminal in the foregoing method, and the foregoing functions may be implemented by using hardware or by executing corresponding software by hardware.
- the hardware or software includes one or more modules corresponding to the functions described above.
- the user terminal includes a communication port configured to support forwarding of data/information between the user terminal and a server such as an EPG server or an FCC server for transmitting or receiving. Information, instructions or data involved in the above methods.
- the user terminal may further include a memory and a processor configured to support the user terminal to perform a corresponding function in the above method; the memory is configured to store program and instructions, data, and the like necessary for the user terminal.
- the embodiment of the present application further provides another server, where the server has a function of implementing an EPG server behavior in the foregoing method design.
- the above functions can be implemented by hardware or by executing corresponding software through hardware.
- the hardware or software includes one or more modules corresponding to the functions described above. Modules can be software and/or hardware.
- the structure of the server includes a communication port for configuring to support forwarding of information/data between the server and the user terminal, and transmitting or receiving information related to the above method to the user terminal. , instructions or data.
- the server may also include a memory and a processor for configuring the server to perform a corresponding function in the above method, the memory for storing the program and instructions, data, and the like necessary for the root bridge device.
- the present application provides a computer readable storage medium having stored therein instructions that, when executed on a computer, cause the computer to perform the methods of the above aspects.
- the user terminal receives an input instruction, where the input instruction includes a target channel selected by the user; and the user terminal sends the EPG server to include the target channel. a play request of the channel identifier; the user terminal receives a play response including a play address of the target channel returned from the EPG server, wherein the play address is determined by the EPG server according to a channel identifier of the target channel; the user terminal obtains The program type corresponding to the program currently being played by the target channel; the user terminal plays the program according to the play mode corresponding to the play mode according to the play address.
- the program can be played according to the play mode corresponding to the program type of the program played by the current target channel, which can better match the user's viewing demand for different program types of the broadcast program, and the user terminal plays the live broadcast.
- the playback modes for different program types are more diverse.
- FIG. 1 is a schematic diagram of a system framework of a video playing method according to an embodiment of the present application
- FIG. 2 is a schematic structural diagram of a user terminal according to an embodiment of the present application.
- FIG. 3 is a schematic structural diagram of a server according to an embodiment of the present application.
- FIG. 4 is a schematic flowchart of an embodiment of a video playing method according to an embodiment of the present application.
- Figure 5a and Figure 5b are some example schematic diagrams of content descriptors in an EIT table
- FIG. 6 is another schematic structural diagram of a user terminal according to an embodiment of the present application.
- FIG. 7 is a schematic structural diagram of another server according to an embodiment of the present application.
- the present application provides a video playing method, a user terminal, and a server, which can play a program according to a play mode corresponding to a program type of a program played by a current live channel, and can better match the user's viewing requirements for different program types of the broadcast program.
- the user terminal In the process of playing the live channel, the user terminal has different playing modes for different program types.
- FIG. 1 is a schematic diagram of a system frame of a video playing method according to an embodiment of the present application, including a user terminal and an EPG server.
- the user terminal may specifically refer to a user terminal for providing a program channel to be broadcasted by a set top box or the like
- the EPG server is a server for indexing and navigating various live or non-live channel services provided by the user terminal, and the EPG system formed by the EPG server.
- the interactive interface provided is similar to the (English: world wide web, abbreviated: Web) page.
- the interface of the EPG system can also include various types of dynamic or static multimedia content for the user to browse.
- the related content of the interface of the EPG system provided by the EPG server is not repeated here.
- a preset program type play attribute list in the embodiment of the present application, a program type play attribute list is pre-set, and the preset program type play attribute list may be saved in the user terminal in advance, or may be acquired by the user terminal to an external server.
- the preset program type play attribute list the program type of the program played by the play channel is classified, for example, the program type includes the program type, movie, TV show type, sports program type, and other program types not listed above.
- the demand level is set for the play attribute of each program type, and the play attributes of the program type include real-time, fluency, clarity, and start-up speed.
- the user may set the requirement degree of each play attribute of the preset program type play attribute list, and of course, the user does not need to play the play attribute of the attribute list in the preset program type.
- the user terminal can play the attribute list using the default preset program type.
- the program types of the programs are classified into four categories.
- the starting broadcast speed refers to the speed at which the user terminal starts playing the program after receiving the playback response of the EPG server to the user terminal playing request.
- the demand for the playback attributes such as the real-time nature of each program type is configured, wherein the numbers in Table 1 represent the corresponding demand degrees.
- Table 1 is only an example for description herein, and does not limit the preset program type play attribute list in the embodiment of the present application. In actual applications, there may be other classification methods and requirement settings. There is no limit here, and we will not repeat them one by one.
- the channel identifier of the target channel refers to the identifier of which broadcast channel the target channel selected by the user is determined by the channel identifier, and different broadcast channels correspond to different channel identifiers.
- a play mode corresponding to the program type is configured, which is specifically determined by a demand level of a preset program type attribute play list.
- the user terminal can receive an input instruction of the target channel through the input of the user through the control device.
- the user can remotely select the target channel through the set-top box, and after determining the target channel selected by the user, the user terminal will The play request including the channel identifier of the target channel selected by the user is sent to the EPG server, and after receiving the play request sent by the user terminal and including the channel identifier of the target channel, the EPG server feeds back to the user terminal the play address including the play address of the target channel.
- the user terminal may determine the program type corresponding to the program currently being played by the target channel, and finally the user terminal according to the program type corresponding to the program currently being played by the target channel and
- the play address fed back by the EPG server plays the program according to the play mode corresponding to the above program type.
- the user terminal and the physical structure of the EPG server provided in the embodiments of the present application are respectively introduced.
- FIG. 2 is a schematic structural diagram of a user terminal according to an embodiment of the present application.
- the user terminal 200 mainly includes a processor 201 (wherein the number of processors 201 in the user terminal 200 may be one or more, FIG. 2
- the hardware structure of the memory 202, the communication port 203, and the like, and the operating system, the power supply and the like, which are installed on the hardware, are not listed in FIG. 2, but are not in the embodiment of the present application.
- the user terminal in the middle constitutes a limitation.
- the processor 201, the memory 202, and the communication port 203 may be connected by a bus or other means, which is not limited herein, and is illustrated by way of example in FIG.
- the processor 201 controls the operation of the user terminal 200, and the processor 201 may also be referred to as a central processing unit (English: central processing unit, abbreviated: CPU).
- CPU central processing unit
- each component of the user terminal is coupled together by a bus system.
- the bus system may include a power bus, a control bus, and a status signal bus in addition to the data bus.
- various buses are referred to as bus systems in FIG.
- the memory 202 may include read-only memory (English: Read-Only Memory, ROM) and random access memory (abbreviation: RAM), and provides instructions and data to the processor 201. A portion of the memory 202 may also include a non-volatile random access memory (English: non-volatile random access memory, abbreviated: NVRAM).
- the memory 202 stores an operating system and operating instructions, executable modules or data structures, or a subset thereof, or an extended set thereof, wherein the operational instructions may include various operational instructions for implementing various operations. .
- the operating system can include a variety of system programs for implementing various basic services and handling hardware-based tasks.
- the memory 202 also stores data, tables, and the like related to the embodiments of the present application, such as the preset program type play attribute list mentioned above.
- the method disclosed in the embodiment of the present application may be applied to the processor 201 or implemented by the processor 201.
- the processor 201 can be an integrated circuit chip with signal processing capabilities. In the implementation process of the embodiment of the present application, the integrated logic circuit of the hardware in the processor 201 or the instruction in the form of software can be completed.
- the processor 201 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), and a field programmable gate array (English). English: field-programmable gate array, abbreviation: FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
- DSP digital signal processor
- ASIC application-specific integrated circuit
- FPGA field programmable gate array
- the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
- the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present application may be directly implemented by the hardware decoding processor, or may be performed by a combination of hardware and software modules in the decoding processor.
- the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
- the storage medium is located in the memory 202, and the processor 201 reads the information in the memory 202, and completes the steps on the user terminal side in the video playing method of the embodiment of the present application.
- the communication port 203 can be used to receive or transmit information, such as information for receiving a playback response of the EPG server, and generate signals related to the related settings and function control of the user terminal, thereby performing initialization of the user terminal, processing of on-demand programs, and the like.
- the processor 201 is configured to perform a video playing method performed by the user terminal side in the embodiment of the present application.
- the server provided in the embodiment of the present application is described.
- FIG. 3 it is a schematic structural diagram of a server according to an embodiment of the present application.
- the server can be used as the EPG server described above, and has the function of an EPG server. include:
- the processor 301, the memory 302, and the communication port 303 (wherein the number of the processors 301 in the server 300 may be one or more, and one processor in FIG. 3 is taken as an example).
- the hardware structure of the memory 302, the communication port 303, and the like, and the operating system, the power supply and the like, which are installed on the hardware, are not specifically listed in FIG. 3, but are not limited to the user terminal in the embodiment of the present application.
- the communication port 303, the processor 301, and the memory 302 may be connected by a bus or other means, which is not limited herein, and is illustrated by way of example in FIG.
- the processor 301 controls the operation of the server 300, which may also be referred to as a central processing unit.
- each component of the server is coupled together by a bus system.
- the bus system may include a power bus, a control bus, and a status signal bus in addition to the data bus.
- various buses are referred to as bus systems in FIG.
- Memory 302 can include read only memory and random access memory and provides instructions and data to processor 301. A portion of the memory 302 can also include an NVRAM.
- the memory 302 stores operating systems and operational instructions, executable modules or data structures, or a subset thereof, or an extended set thereof, wherein the operational instructions can include various operational instructions for implementing various operations.
- the operating system can include a variety of system programs for implementing various basic services and handling hardware-based tasks.
- Processor 301 can be an integrated circuit chip with signal processing capabilities.
- the steps performed by the EPG server side in the embodiment of the present application may be completed by using an integrated logic circuit of hardware in the processor 301 or an instruction in a software form.
- the processor 301 described above may be a general purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic device, discrete hardware component.
- the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
- the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present application may be directly implemented by the hardware decoding processor, or may be performed by a combination of hardware and software modules in the decoding processor.
- the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
- the storage medium is located in the memory 302, and the processor 301 reads the information in the memory 302, and completes the steps corresponding to the EPG server side in the frequency playing method in the embodiment of the present application.
- the communication port 303 can be used to receive or transmit information, such as receiving a play request sent by the user terminal, and generating a signal related to the related settings and function control of the EPG server, thereby performing initialization of the server and the like.
- the processor 301 is configured to execute a video playing method performed by the EPG server side of the embodiment of the present application.
- the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be Physical units can be located in one place or distributed to multiple network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
- the connection relationship between the modules indicates that there is a communication connection between them, and specifically may be implemented as one or more communication buses or signal lines.
- the disclosed systems, modules, and methods may be implemented in other manners.
- the device embodiments described above are merely illustrative.
- the division of the modules is only a logical function division.
- there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
- the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
- the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
- FIG. 4 is a schematic flowchart of an embodiment of a video playing method according to an embodiment of the present disclosure, including:
- the user terminal receives an input instruction.
- the input instruction includes a target channel selected by a user.
- various play channel selection components are presented, for example, a play channel selection list is presented in the interface by playing a channel list, and various types of play channel lists are present.
- the user terminal can receive an input command input by the user through the corresponding controller including the target channel selected by the user.
- the controller corresponding to the set-top box is a digital remote controller, and different playing channels correspond to different digital buttons on the digital remote controller, and the user selects the target corresponding to the digital button by clicking the digital button of the digital remote controller. Channel.
- the user terminal sends a play request that includes the channel identifier of the target channel to the EPG server.
- the user terminal After the user terminal receives the instruction input by the user, after determining the target channel selected by the user, the user terminal sends a play request including the channel identifier of the target channel to the EPG server, and the play request is used for the user terminal to the EPG.
- the server requests related information of the target channel, for example, the correlation may be a play address of the target channel or the like.
- the EPG server determines, according to the channel identifier of the target channel, a program type corresponding to the currently played program of the target channel, and a play address of the target channel.
- the EPG server may determine the play address corresponding to the target channel according to the channel identifier, and may query the program type corresponding to the currently played program of the target channel by using the channel identifier.
- the EPG server determines, according to the channel identifier of the target channel, a program type corresponding to the program currently being played by the target channel, including:
- the EPG server acquires a program type corresponding to the program from a service platform corresponding to the program, that is, queries a program type corresponding to the program from a server that provides the program.
- the EPG server sends a play response including the play address of the target channel and the program type to the user terminal.
- the EPG server determines the play address of the target channel and the program type according to the channel identifier, the play response including the program type and the play address of the target channel is fed back to the user terminal.
- the user terminal determines, according to the play response, a program type and a play address.
- the user terminal After receiving the playback response fed back by the EPG server, the user terminal determines the program type of the currently played program of the target channel and the play address of the target channel through the playback response.
- the user terminal determines that the program types corresponding to the currently played program of the target channel have different determination manners:
- the user terminal may determine, by using an EIT table carried in the transport stream of the target channel, a program type corresponding to a program currently being played by the target channel.
- EIT table is described first.
- each TS packet includes a packet header and packet data, and each TS stream carries some information, such as corresponding video (video), audio (audio), and EIT table, program association table.
- program association table abbreviation: PAT
- program map table English: program map table, abbreviation: PMT
- the packet header of each TS packet includes a packet identifier (English: packet identifier, abbreviated as: PID).
- PID packet identifier
- the content of the packet data corresponding to the TS packet is determined by the packet identifier of the TS packet. For example, if the PID in the header of a packet in a TS stream is 0x0000, then the packet data of the packet is the PAT table; if the PID is 0x0012, then the packet data of the packet is the EIT table. Description.
- the EIT table is transmitted in the TS stream through a fixed PID (0x0012).
- the EIT table is information for providing events included in each IPTV live channel in chronological order, wherein, in the embodiment of the present application, the event refers to a program.
- the EIT table is mainly divided into EIT current/following (English: present/following, abbreviated: P/F) table and EIT schedule (EIT schedule), as follows: Shown as follows:
- the EIT P/F table is used to describe the current event and subsequent events.
- the EITP/F table can carry a variety of descriptors, such as short event descriptors (name and description of events), extended event descriptors (details of events), content descriptors (category information of events), component descriptors ( Information such as audio and video of subtitles and subtitles.
- the user terminal may obtain the program type classification information of the program in the content descriptor, thereby determining the program type corresponding to the program.
- FIG. 5a and FIG. 5b are some examples of content descriptors in the EIT table in the Digital Video Broadcasting (English: Digital Video Broadcasting, DVB) specification:
- the user terminal acquires a program type corresponding to a program currently being played by the target channel, including:
- the user terminal determines, according to the EIT table, a program type corresponding to a program currently being played by the target channel.
- the determining, by the user terminal, the program type corresponding to the program according to the EIT includes:
- the user terminal parses the EIT to obtain a corresponding content descriptor
- the user terminal determines a program type corresponding to the program from the content descriptor.
- the target channel is the OTT live channel
- the program type identifier of the program to which each of the playback segments belongs is added in advance in the segment index file corresponding to the playback segment of the program currently being played by the target channel.
- HTTP live broadcast English: http live streaming, abbreviation: HLS
- HLS HTTP live streaming
- HLS is implemented based on the HTTP protocol, and the transmission content includes two parts, one is an m3u8 index file, and the other is a media file.
- the transmission content includes two parts, one is an m3u8 index file, and the other is a media file.
- N is a number such as 01, 02, etc.
- index.m3u8 contains all the programs.
- the index information of the HLS stream for example, includes program information corresponding to each code rate in the program, that is, the index.m3u8 includes a plurality of tags, and some of the tags describe how many play points corresponding to the program. Slices, and different bitrates for each playback slice. And the fragment index file corresponding to the playback fragment of a certain bit rate of N.m3u8.
- the present application by adding a tag description of the slice index file of the play slice of the extended program, for example, adding an attribute of the program type parameter in the slice index file of the HLS to identify the currently played by the target channel.
- the program type of the playback slice of the program exemplary, the extended N.m3u8 slice index file as shown below, containing a plurality of tags.
- the EXTINF tag is a record tag that describes the duration of the playback slice (1414028051-1-353507013.hls.ts);
- the description of the fragment index file of the broadcast fragment of the program is extended by the program type parameter, such as the #EXT-X-PROGRAM-TYPE label, which defines the playback fragment.
- the program type for example, the program type of the playback slice corresponding to the above 1414028055-1-353507014.hls.ts is a movie, and the other content in the above-mentioned fragment index file is not described here.
- the user terminal acquires a program type corresponding to a program currently being played by the target channel, and includes:
- the user terminal acquires a fragment index file of a play fragment corresponding to a program currently being played by the target channel;
- the user terminal determines, according to the fragment index file, a program type corresponding to a program currently being played by the target channel.
- the user terminal plays the program according to the play address according to the play mode corresponding to the program type.
- the program is played according to the corresponding play mode according to the received play address and the determined program type.
- the user terminal has different playing modes for starting playback of the two playing channels, which are respectively described below.
- the user terminal plays the program according to a play mode corresponding to the program type, including:
- the user terminal plays the program by joining a multicast group corresponding to the program, that is, directly receiving the program through a multicast address of the target channel.
- the latest play data is used to play the program.
- the user terminal plays the program by turning on the FCC function.
- the multicast address of the target channel can be directly added to obtain the latest one. Playing the data, and then starting to play the program, can receive the latest playing data of the current program, and improve the real-time performance of the program.
- the program is started to be played by turning on the FCC function.
- the process of the user terminal playing the program by turning on the FCC function is as follows: the user terminal requests a data frame from the FCC server (FCC server), and after receiving the request from the user terminal, the FCC server will cache the program from the cache. The frames begin to send data to the user terminal.
- the process of playing the program after the IPTV function is enabled by the IPTV is not described in detail here. Therefore, the embodiment of the present application can automatically determine whether to enable the FCC function according to the program type corresponding to the program, thereby taking into account the user's requirements for the starting speed of different program types, and improving the user experience.
- the method further includes: before the playing of the program according to the play mode corresponding to the program type, when the target channel is an OTT live channel, the method further includes:
- the user terminal acquires an index file of the program by using a media server that provides the program, where the index file includes code rate information of each play segment of the program, and it should be noted that the index file includes
- the code rate information of each play slice of the program, the play slice of the same content may have multiple different levels of code rate, for example, one play slice may have a code rate of 1024 kbps, 2048 kbps, 3072 kbps, and 4056 kbps, respectively.
- the code rate of the level may be used to acquire an index file of the program by using a media server that provides the program, where the index file includes code rate information of each play segment of the program, and it should be noted that the index file includes
- the code rate information of each play slice of the program, the play slice of the same content may have multiple different levels of code rate, for example, one play slice may have a code rate of 1024 kbps, 2048 kbps, 3072 kbps, and 4056 kbps, respectively.
- the code rate of the level may be
- the user terminal plays the program according to a play mode corresponding to the program type, including
- the user terminal acquires, in a historical download code rate of the program, a play slice that matches a code rate of the code rate information, and plays the program. .
- the user terminal acquires a play slice corresponding to the lowest code rate in the code rate information to play the program.
- the user terminal can select the appropriate slice rate of the play segment according to the preset code type play attribute list and the program type through the code rate information of each play slice of the program, when determining After the appropriate code rate is obtained, the fragment index file corresponding to the code rate is obtained by the media server, so that the playback slice corresponding to the code rate is downloaded through the fragment index file.
- the user terminal acquires the play shard corresponding to the lowest code rate of the program to play the program, and can improve the startup play speed of the program.
- the user terminal can obtain the play fragment of the code rate that matches the code rate information of each play slice of the program from the historical download code rate of the program type. . That is, in the embodiment of the present application, for the OTT live channel, when the program is played, for a certain play slice, the user terminal may first select a play slice of the code rate of the play slice to start playing the program. Therefore, the user's requirements for the starting speed of different program types are balanced, and the user experience is improved.
- the user terminal may also adopt an unused play mode according to the program list type, where the user The terminal plays the program according to a play mode corresponding to the program type, including:
- the user terminal downloads a play slice of the program according to the download code rate
- the user terminal plays the program through the play slice.
- the user terminal may adjust the download code rate of the to-be-downloaded playback slice of the program in real time according to the current network bandwidth according to the program type of the aggregated program.
- the user terminal determines, according to the fluency requirement, the clarity requirement, and the current network bandwidth, a download code rate of the to-be-downloaded playback slice of the program, including:
- the user terminal adjusts a download code rate of the to-be-downloaded playback slice of the program to the network bandwidth.
- the maximum bit rate is increased by increasing the bit rate of the program to be downloaded and playing to the maximum code rate that the current network bandwidth can accept.
- the user terminal downloads the to-be-downloaded playback slice corresponding to 3072 kbps as the playback slice of the program.
- the code rate of the to-be-downloaded playback slice of the program is adjusted to a lower level code rate. For example, if the acceptable code rate of the current network bandwidth is greater than or equal to 2048 kbp, and the original user terminal downloads the to-be-downloaded playback slice with a code rate of 3072 kbps. At this time, the network bandwidth is insufficient. If the to-be-downloaded playback fragment of the program has the same content rate of 1024 kbps, 2048 kbps, 3072 kbps, and 4056 kbps, in the embodiment of the present application, the user terminal may be downloaded. The download code rate of the playback slice is reduced to one level, that is, to 2048 kbps, and the user terminal downloads the to-be-downloaded playback slice corresponding to 2048 kbps as the playback slice of the program.
- the user terminal determines a download code rate of the to-be-downloaded playback slice of the program according to the fluency requirement, the clarity requirement, and the current network bandwidth, including:
- the download code rate of the to-be-downloaded playback slice of the program is adjusted to a maximum code rate acceptable to the network bandwidth.
- the download code rate of the to-be-downloaded playback slice of the program is adjusted to a higher level code rate.
- the user terminal can switch the download code rate of the to-be-downloaded play segment of the program in real time according to the current program type and the network bandwidth, and can adapt to the specific program type of the user.
- the playback requirements in the bandwidth scenario improve the user experience.
- the playback mode of the playback is performed, and the code rate selection/switching mode is described.
- the program is played according to the play mode corresponding to the program type.
- the user terminal plays the program after receiving the play data required for the program to decode and play.
- the user terminal caches the play data of the program preset duration, and then the program is played, wherein the preset duration can be configured according to actual application conditions.
- the preset duration may be 2 seconds or 5 seconds, which is not limited herein.
- the foregoing play mode may be applied to the IPTV live channel and the OTT live channel.
- the user terminal may select to receive the play data required for decoding. It can be played immediately, or it can be buffered for a preset time (for example, buffering for 5 or 2 seconds, etc.) and then played, which can meet different user's different playback requirements for different program types.
- the foregoing embodiment is described in the related playback mode in which the user terminal starts to play the program after receiving the input instruction of the user, but in the actual application process, the transmission stream of the program is easily caused due to some unexpected event. Interrupted. After the transmission stream of the program is interrupted, the user terminal can also play according to the play mode corresponding to the program type of the restored transport stream.
- the related play mode is the same as or similar to the foregoing description, and details are not described herein.
- the user terminal plays the program according to a play mode corresponding to the program type, including:
- the user terminal plays the program after receiving the play data required for the program decoding and playing;
- the user terminal caches the play data of the program preset duration (for example, 5 seconds or 2 seconds, etc.) and then plays the program.
- the program preset duration for example, 5 seconds or 2 seconds, etc.
- the user terminal plays the program according to the play mode corresponding to the program type, and after the user terminal receives the input instruction, as described above,
- the manner of playing the program according to the play mode corresponding to the program type is similar or the same. It should be noted that, after the recovery of the transmission stream is interrupted, the manner in which the user terminal determines the type of the program is also the same as the foregoing manner, and details are not described herein again.
- the program can be played according to the play mode corresponding to the program type of the program played by the current broadcast channel, which can better match the user's viewing requirements for different program types of the broadcast program, and the user terminal.
- different play modes are performed for different program types, and the play mode is various.
- a schematic structural diagram of an embodiment of a user terminal includes a receiving module 601, a sending module 602, and a processing module 603.
- the receiving module 601 is configured to receive an input instruction, where the input instruction includes a target channel selected by a user;
- the sending module 602 is configured to send a play request to the EPG server, where the play request includes a channel identifier of the target channel included in the input instruction received by the receiving module 601.
- the receiving module 601 is further configured to receive a play response returned by the EPG server according to the play request sent by the sending module 602, where the play response includes a play address of the target channel, where the play address is Determining, by the EPG server, according to a channel identifier of the target channel;
- the processing module 603 is configured to determine a program type corresponding to the program currently being played by the target channel;
- the processing module 603 is further configured to play the program according to the play mode corresponding to the program type according to the play address included in the play response received by the receiving module 601.
- the play response further includes the program type
- the processing module 603 is configured to determine a program type corresponding to a program currently being played by the target channel, where the processing module 603 is used by the processing module 603. Determining, by the play response, a program type corresponding to a program currently being played by the target channel.
- the target channel is an IPTV live channel
- the processing module 603 is configured to determine a program type corresponding to a program currently being played by the target channel, including:
- the processing module 603 is configured to determine a corresponding EIT from a transport stream corresponding to a program currently being played by the target channel, and determine a program type corresponding to the program according to the EIT table.
- the processing module 603 is configured to determine, according to the EIT table, the program corresponding to the program type, including:
- the processing module 603 is configured to parse the EIT table to obtain a corresponding content descriptor, and determine, by using the content descriptor, a program type corresponding to the program.
- the target channel is an OTT live channel
- the receiving module 601 is further configured to acquire a fragment index file of a play fragment corresponding to a program currently being played by the target channel
- the processing module 603 is configured to determine a program type corresponding to a program currently being played by the target channel, where the processing module 603 is configured to determine, according to the fragment index file, a program type corresponding to a program currently being played by the target channel. .
- the processing module 603 is configured to play the program according to a play mode corresponding to the program type, including:
- the processing module 603 is configured to determine, according to a preset program type play attribute list, a real-time demand degree and a fluency demand degree corresponding to the program type; if the real-time demand degree is higher than the fluency demand degree, receive And playing the program after the program is decoded and played back; if the real-time demand is lower than the fluency requirement, the program is played after the play data of the program preset duration is cached.
- the processing module 603 is configured to play the program according to a play mode corresponding to the program type, including:
- the processing module 603 is configured to determine, according to a preset program type play attribute list, a real-time demand degree and a fluency requirement degree corresponding to the program type; when the transport stream of the target channel is recovered by an interrupt, if the real-time property is If the demand level is higher than the fluency requirement, the program is played after receiving the play data required for the program to be decoded and played; if the transport stream of the target channel is resumed by the interrupt, if the real-time fluency is Below the fluency requirement, the program is played after the play data of the program preset duration is cached.
- the target channel is an IPTV live channel
- the processing module 603 is configured to play the program according to a play mode corresponding to the program type, including:
- the processing module 603 is configured to: determine, according to a preset program type play attribute list, a real-time demand degree and a start-up speed demand degree corresponding to the program type; if the real-time demand degree is higher than the start-up speed demand degree And playing the program by joining the multicast address corresponding to the program.
- the target channel supports a fast channel switching FCC function
- the processing module 603 is further configured to: if the real-time demand degree is lower than the starting speed demand degree, The FCC function plays the program.
- the target channel is an OTT channel
- the processing module 603 is configured to play the program according to a play mode corresponding to the program type.
- the receiving module 601 is further configured to acquire an index file of the program by using a media server corresponding to the program, where the index file includes code rate information of each play fragment of the program;
- the processing module 603 is configured to play the program according to a play mode corresponding to the program type, including:
- the processing module 603 is configured to determine, according to the preset program type play attribute list, a clarity requirement degree and a fluency requirement degree corresponding to the program type; if the clarity requirement degree is higher than the fluency requirement degree, pass the In the historical download code rate of the program, the play slice of the code rate matching the code rate information plays the program; if the clarity requirement degree is lower than the fluency demand degree, the code is passed The playback slice corresponding to the lowest bit rate indicated by the rate information plays the program.
- the channel is an OTT live channel
- the processing module 603 is configured to play the program according to a play mode corresponding to the program type, including:
- the processing module 603 is configured to: determine, according to the preset program type play attribute list, a corresponding fluency requirement and a clarity requirement degree of the program type, according to the fluency requirement degree, the clarity requirement degree, and the current network bandwidth. Determining a download code rate of the play segment to be downloaded of the program; downloading a play slice of the program according to the download code rate; playing the program through the play slice.
- the processing module 603 is configured to determine, according to the fluency requirement, the clarity requirement, and the current network bandwidth, a download code rate of the to-be-downloaded playback slice of the program, including:
- the processing module 603 is configured to adjust a download code rate of the to-be-downloaded playback slice of the program to the network, if the clarity requirement level is higher than the fluency requirement degree, and the network bandwidth is sufficient
- the maximum code rate that the bandwidth can accept; if the clarity is higher than the fluency requirement, and the network bandwidth is insufficient, the download code rate of the play slice of the program is adjusted to a lower code rate. .
- the processing module 603 is configured to determine, according to the fluency requirement, the clarity requirement, and the current network bandwidth, a download code rate of the to-be-downloaded playback slice of the program, including:
- the processing module 603 is configured to adjust a download rate of the to-be-downloaded playback slice of the program to the network, if the fluency requirement is higher than the clarity requirement, and the network bandwidth is insufficient.
- FIG. 7 is a schematic structural diagram of an embodiment of a server according to an embodiment of the present application.
- the EPG server in the method embodiment specifically the function of the above method embodiment EPG server.
- the server includes a receiving module 701, a processing module 702, and a sending module 703.
- the receiving module 701 is configured to receive a play request sent by the user terminal, where the play request includes a channel identifier of the target channel
- the processing module 702 is configured to: according to the channel of the target channel included in the play request received by the receiving module 701 And a sending module 703, configured to feed back a play response to the user terminal, where the play response includes the processing module 702, the identifier, the program type corresponding to the program currently being played by the target channel, and the play address of the target channel. The determined play address of the target channel and the program type.
- the processing module 702 is configured to determine a program type corresponding to a program currently being played by the target channel, and a play address of the target channel, including:
- the processing module 702 is configured to: determine, according to a channel identifier of the target channel included in the play request received by the receiving module 701, a program currently being played by the target channel; and determine a program corresponding to the program from program information saved in the memory. Type; or, the program type corresponding to the program is obtained from a service platform corresponding to the program.
- the embodiment of the present application further provides a computer storage medium, wherein the computer storage medium stores a program, and when the program is executed by the computer, some or all of the steps described in the foregoing method embodiments can be implemented.
- U disk U disk
- mobile hard disk read only memory
- random access memory disk or optical disk, etc.
- a computer device which may be a personal computer, server, or network device, etc.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请实施例公开了一种视频播放方法,用户终端在播放直播频道过程中,针对不同节目类型的执行不同的播放方式。本申请实施例方法包括:用户终端接收输入指令,输入指令包括用户选择的目标频道;用户终端向EPG服务器发送包含目标频道的频道标识的播放请求;用户终端接收从EPG服务器处返回包含目标频道的播放地址的播放响应;用户终端获取目标频道当前播放的节目对应的节目类型;用户终端根据播放地址,按照节目类型对应的播放方式播放节目。
Description
本申请要求于2017年3月13日提交中国专利局、申请号为201710147880.9、发明名称为“一种视频播放方法、用户终端以及服务器”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及流媒体播放技术,尤其涉及到一种视频播放方法、用户终端以及服务器。
数字视频变换盒(英语:Set Top Box,缩写:STB),通常称作机顶盒或机上盒,是一个连接电视机与外部信号源的用户终端。它可以将压缩的数字信号转成电视内容,并在电视机上显示出来。信号可以来自有线电缆、卫星天线、宽带网络以及地面广播。用户终端接收的内容除了模拟电视可以提供的图像、声音之外,还能够接收数字内容,包括电子节目指南、因特网网页、字幕等等。使用户能在现有电视机上观看数字电视节目,并可通过网络进行交互式数字化娱乐、教育等活动。其中,电视直播频道含有多种类型的节目,比如娱乐节目、电视剧、体育比赛、科教栏目等,当用户观看电视直播频道时,对于不同类型的节目会有不同的观看体验需求,主要包含实时性、流畅度、清晰度以及起播速度这四个方面的体验需求。
在用户终端播放服务品台提供的播放频道中,选择的播放和缓存策略将会影响以上四个播放属性的实际体验效果,但是在用户家庭的网络环境一定的情况下,播放的这四个属性有互相制约的关系,如想要提升清晰度必须选择更高的码率,这样会导致获取码流首帧的时间长,会影响视频播放的起播速度,这也导致任何一种播放和缓存策略都无法同时兼顾各个播放体验属性。但实际上用户在观看不同类型直播节目的时候,对各播放体验属性的关注度会不同,比如对于现场直播类的节目如体育比赛、重大新闻事件的直播等,用户更关注实时性;而对于非直播类节目,用户对实时性的要求会减弱,更关注视频的清晰度、流畅度和起播时间。
在现有技术中,用户终端播放某个播放频道时,对于网络电视(英文:Internet Protocol Television,缩写:IPTV)组播频道,当前已有快速频道切换(英文:Fast Channel Change,缩写:FCC)功能来提升播放的起播速度,是否要启用FCC功能,一般是用户通过频道列表中该频道的FCC开关控制的,一个频道要不打开FCC功能,要不关闭FCC功能。而对于互联网电视(英文:Over The Top,缩写:OTT)直播频道,采用哪种启动播放和缓存策略,例如播放过程中卡顿时的码率选择策略,启动播放时和播放过程中的缓冲时间等,可以在用户终端版本中事先预置。综上所述,在现有技术中,用户终端在播放某个直播频道时都只是单一的播放策略。
发明内容
本申请提供了一种视频播放方法、用户终端以及服务器,用户终端可以根据当前直播频道播放的节目的节目类型所对应播放方式对节目进行播放,可以更好地匹配用户对播放节目不同节目类型的观看需求,用户终端在播放直播频道过程中,针对不同节目类型的播放方式比较多样。
为了解决上述问题,本申请实施例提供以下技术方案:
第一方面,本申请实例提供了一种视频播放方法,应用于播放直播频道,在该视频播放方法中,用户终端接收包含有用户选择的目标频道的输入指令,用户终端接收到输入指令后,可以确定用户选择的目标频道的频道标识,再向电子节目菜单(英文:Electronic Program Guide,缩写:EPG)服务器发送包含有包含目标频道的频道标识的播放请求;用户终端接收从EPG服务器处返回包含目标频道播放地址的播放响应,并且,用户终端可以获取目标频道当前播放的节目对应的节目类型;接着,用户终端根据播放地址,按照节目类型对应的播放方式播放节目。由此可见,在本申请中,用户终端可以根据当前频道播放的节目的节目类型所对应播放方式对节目进行播放,可以更好地匹配用户对播放节目不同节目类型的观看需求,用户终端在播放直播频道过程中,针对不同节目类型的执行不同的播放方式,播放方式比较多样。
在一种可能的实现中,EPG服务器反馈给用户终端的播放响应中还包含目标频道播放的节目对应的节目类型,用户终端获取目标频道当前播放的节目对应的节目类型,具体可以是指用户终端从播放响应中直接获取目标频道当前播放的节目对应的节目类型。可见,在本实现中,目标频道的所播放的节目的对应的节目类型,可以有EPG服务器下发给用户终端,提高了方案的多样性,并且,可以降低用户终端侧的负荷。
在一种可能的实现中,当目标频道为IPTV直播频道时,用户终端确定目标频道当前播放的节目对应的节目类型,可以通过从目标频道当前播放的节目对应的传输流中,获取对应的事件信息表(英文:Event Information Table,缩写:EIT),再根据获取的EIT表确定目标频道当前所播放的节目对应的节目类型。在本申请实施例中,对于IPTV直播频道,用户终端除了通过由EPG服务器反馈节目类型外,用户终端还可以直接根据节目对应的传输流确定出节目对应的节目类型,提高了方案的多样性。
在一种可能的实现中,具体的,用户终端根据EIT表确定节目对应节目类型,包括:用户终端解析EIT表得到对应的内容描述符,再从内容描述符中确定上述目标频道当前播放的节目对应的节目类型。通过在EIT表中描述有节目分类信息的内容描述符中确定出该节目对应的节目类型。需要说明的是,传输流的EIT表中包含有各种各样的描述符,其中就包括上述内容描述符,一般,内容描述符中包含有传输对应节目的节目类型分类信息。当然,另外需要说明的是,在实际应用中,也可以在EIT表中的其他描述符中描述节目的节目类型分类信息,从而通过其他描述符确定出目标频道播放的节目对应的节目类型,具体此处不做限定。由此可见,在本实现中,具体给出了用户终端根据EIT表确定出节目对应的节目类型的方式,提高了方案的可实施性。
在一种可能的实现中,当目标频道为OTT直播频道时,用户终端确定目标频道当前播放的节目对应的节目类型,可以通过获取目标频道当前播放的节目对应的播放分片的分片索引文件,再根据分片索引文件确定目标频道当前播放的节目对应的节目类型。在本实现 中,对于OTT直播频道,也提出了另一种获取节目对应的节目类型的方式,增加了方案的可实施性。
在一种可能的实现中,用户终端按照节目类型对应的播放方式播放节目,包括:用户终端根据预设节目类型播放属性列表确定节目类型对应的实时性需求度和流畅性需求度;若实时性需求度高于流畅性需求度,则用户终端接收到节目解码播放所需的播放数据后播放节目;若实时性需求度低于流畅性需求度,则用户终端缓存节目预设时长的播放数据后播放节目。
在一种可能的实现中,用户终端按照节目类型对应的播放方式播放节目,包括:用户终端根据预设节目类型播放属性列表确定节目类型对应的实时性需求度和流畅性需求度;当目标频道的传输流由中断恢复时,若实时性需求度高于流畅性需求度,则用户终端接收到节目解码播放所需的播放数据后播放节目;当目标频道的传输流由中断恢复时,若实时性流畅度低于流畅性需求度,则用户终端缓存节目预设时长的播放数据后播放节目。
在一种可能的实现中,当目标频道为IPTV直播频道时,用户终端按照节目类型对应的播放方式播放节目,包括:用户终端根据预设节目类型播放属性列表确定节目类型对应的实时性需求度和起播速度需求度;若实时性需求度高于起播速度需求度,则用户终端通过加入节目对应的组播地址播放节目。
在一种可能的实现中,当目标频道支持快速频道切换FCC功能时,若实时性需求度低于起播速度需求度,则用户终端通过开启FCC功能播放节目。
在一种可能的实现中,当目标频道为OTT频道时,用户终端按照节目类型对应的播放方式播放节目之前,方法还包括:用户终端通过节目对应的媒体服务器,获取节目的索引文件,索引文件包含节目每个播放分片的码率信息;按照节目类型对应的播放方式播放节目包括:用户终端根据预设节目类型播放属性列表获取节目类型对应的清晰性需求度和流畅性需求度;若清晰性需求度高于流畅性需求度,则用户终端获取节目的历史下载码率中,与码率信息匹配的码率的播放分片播放节目;若清晰性需求度低于流畅性需求度,则用户终端通过获取码率信息指示的最低码率对应的播放分片播放节目。
在一种可能的实现中,当目标频道为OTT直播频道时,用户终端按照节目类型对应的播放方式播放节目,包括:用户终端根据预设节目类型播放属性列表确定节目类型的对应的流畅性需求度和清晰性需求度;用户终端根据流畅性需求度、清晰性需求度以及当前网络带宽确定节目的待下载播放分片的下载码率;用户终端根据下载码率下载节目的播放分片;用户终端通过播放分片播放节目。由此可见,在该实现方式中,可以结合网络带宽确定待下载播放分片的下载码率,使得可以根据网络带宽的大小实时的对节目的待下载的播放分片的进行切换。
在一种可能的实现中,用户终端根据流畅性需求度、清晰性需求度以及当前网络带宽确定节目的待下载播放分片的下载码率,包括:若清晰性需求度高于流畅性需求度,且网络带宽充足时,用户终端将节目的待下载播放分片的下载码率调整至网络带宽能接受的最大码率;若清晰性度高于流畅性需求度,且网络带宽不足时,将节目的播放分片的下载码率调整至低一级码率。在一种可能的实现中,用户终端根据流畅性需求度、清晰性需求度以及当前网络带宽确定节目的待下载播放分片的下载码率,包括:若流畅性需求度高于清 晰性需求度,且网络带宽不足时,将节目的待下载播放分片的下载码率调整至网络带宽能接受的最大码率;若流畅性需求度高于清晰性需求度,且网络带宽充足时,将节目的待下载播放分片的下载码率调整至高一级码率。在该实现中,给出了根据节目类型以及网络带宽,对节目的待下载的播放分片的码率进行切换的具体实现方式,增强了方案的可实施例性。
第二方面,本申请实施例提供了一种视频播放方法,该视频播放方法包括:EPG服务器接收用户终端发送包含目标频道的频道标识的播放请求,EPG服务器接收到播放请求后,根据目标频道的频道标识确定目标频道当前播放的节目对应的节目类型,以及目标频道的播放地址;再向用户终端反馈包含目标频道的播放地址以及节目类型播放响应的播放响应,以使得用户终端接收到播放响应后,用户终端根据播放响应中包含的播放地址,按照节目类型对应的播放方式播放节目。由此可见,在本申请中,用户终端可以根据当前目标频道播放的节目的节目类型所对应播放方式对节目进行播放,可以更好地匹配用户对播放节目不同节目类型的观看需求,用户终端在播放目标频道过程中,针对不同节目类型的播放方式比较多样。
在一种可能的实现中EPG服务器根据目标频道的频道标识确定目标频道当前播放的节目对应的节目类型,包括:EPG服务器根据频道标识确定目标频道当前播放的节目,再从内存中保存的节目信息确定节目对应的节目类型;或者是从节目对应的服务平台(提供该节目的服务器)上获取节目对应的节目类型。在本实现中,提出了EPG测确定目标频道所播放的节目对应的节目类型的方式,提高了方案的多样性以及可实施性。
第三方面,本申请实施例还提供一种用户终端,该用户终端包括:接收模块,用于接收输入指令,输入指令包括用户选择的目标频道;发送模块,用于向电子节目菜单EPG服务器发送播放请求,播放请求中包含接收模块接收的输入指令包含的目标频道的频道标识;接收模块,还用于接收从EPG服务器根据发送模块发送的播放请求返回的播放响应,播放响应包含目标频道的播放地址,播放地址由EPG服务器根据目标频道的频道标识确定;处理模块,用于确定目标频道当前播放的节目对应的节目类型;处理模块,还用于根据接收模块接收的播放响应中包含的播放地址,按照节目类型对应的播放方式播放节目。
在本申请的第三方面中,用户终端的组成模块还可以执行前述第一方面以及各种可能的实现方式中所描述的步骤,详见前述对第一方面以及各种可能的实现方式中的说明,具体此处不再做赘述。
第四方面,本申请实施例还提供一种服务器,该服务器具有实现上述方法中EPG服务器的行为的功能,所述服务器包括接收模块,用于接收用户终端发送的播放请求,所述播放请求包含目标频道的频道标识;处理模块,用于根据所述接收模块接收的播放请求中包含的目标频道的频道标识,确定所述目标频道当前播放的节目对应的节目类型,以及所述目标频道的播放地址;发送模块,用于向所述用户终端反馈播放响应,所述播放响应包含所述处理模块确定的目标频道的播放地址以及所述节目类型。
在本申请的第四方面中,服务器的组成模块还可以执行前述第二方面以及各种可能的实现方式中所描述的步骤,详见前述对第二方面以及各种可能的实现方式中的说明,具体此处也不再做赘述。
第五方面,本申请实施例还提供另一种用户终端,该用户终端具有实现上述方法中用户终端的行为的功能,上述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。在一种可能的设计中,用户终端的结构中包括通信端口,通信端口用于被配置为支持用户终端与EPG服务器、FCC服务器等服务器之间进行的数据/信息的转发,用于发送或接收上述方法中所涉及的信息、指令或数据。用户终端还可以包括存储器和处理器,处理器用于被配置为支持用户终端执行上述方法中相应的功能;存储器用于存储用户终端必要的程序和、指令、数据等内容。
第六方面,本申请实施例还提供另一种服务器,该服务器具有实现上述方法设计中EPG服务器行为的功能。上述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。模块可以是软件和/或硬件。在一种可能的设计中,服务器的结构中包括通信端口,通信端口用于被配置为支持服务器与用户终端之间进行信息/数据的转发,向用户终端发送或接收上述方法中所涉及的信息、指令或数据。服务器还可以包括存储器和处理器,处理器用于被配置为支持服务器执行上述方法中相应的功能,存储器用于存储根桥设备必要的程序和、指令、数据等内容。
第七方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
从以上技术方案可以看出,在本申请所提供的播放方法中,包括:该用户终端接收输入指令,该输入指令包括用户选择的目标频道;该用户终端向EPG服务器发送包含有该目标频道的频道标识的播放请求;该用户终端接收从该EPG服务器处返回的包含该目标频道的播放地址的播放响应,其中,该播放地址由该EPG服务器根据该目标频道的频道标识确定;该用户终端获取该目标频道当前播放的节目对应的节目类型;该用户终端根据该播放地址,按照该节目类型对应的播放方式播放该节目。由此可见,在本申请中,可以根据当前目标频道播放的节目的节目类型所对应播放方式对节目进行播放,可以更好地匹配用户对播放节目不同节目类型的观看需求,用户终端在播放直播频道过程中,针对不同节目类型的播放方式比较多样。
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,还可以根据这些附图获得其他的附图
图1为本申请实施例一种视频播放方法一个系统框架示意图;
图2为本申请实施例一种用户终端一个结构示意图;
图3为本申请实施例一种服务器一个结构示意图;
图4为本申请实施例一种视频播放方法一个实施例流程示意图;
图5a以及图5b为EIT表中关于内容描述符的一些示例示意图;
图6为本申请实施例一种用户终端另一结构示意图;
图7为本申请实施例一种服务器另一结构示意图。
本申请提供了一种视频播放方法、用户终端以及服务器,可以根据当前直播频道播放的节目的节目类型所对应播放方式对节目进行播放,可以更好地匹配用户对播放节目不同节目类型的观看需求,用户终端在播放直播频道过程中,针对不同节目类型的播放方式比较多样。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,描述本申请实施例中的技术方案。,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先对本申请实施例所提供的视频播放方法所应用的系统框架进行一个说明,请参阅图1,图1为本申请实施例一种视频播放方法一个系统框架示意图,包括用户终端、EPG服务器。其中,用户终端具体可以是指机顶盒等用于提供播放节目频道的用户终端,EPG服务器是指向用户终端提供的各种直播或非直播频道业务的索引及导航的服务器,EPG服务器所构成的EPG系统提供的交互界面与(英文:world wide web,缩写:Web)页面类似,在EPG系统提供的交互界面上一般都提供各类菜单、按钮、业务链接等可供用户选择节目时直接点击的组件,EPG系统的界面上也可以包含各类供用户浏览的动态或静态的多媒体内容,具体关于EPG服务器所提供的EPG系统的界面的相关内容,在此处不再一一赘述。
另外,为了便于理解本申请实例,下面先对本申请实施例进行一个大概的描述。
预设节目类型播放属性列表:在本申请实施例中,预设有节目类型播放属性列表,该预设节目类型播放属列表可以预先保存用户终端中,也可以由用户终端向外部服务器获取,具体此处不做限定。在该预设节目类型播放属性列表中,对播放频道播放的节目的节目类型进行了分类,例如,节目类型包含节目类型、电影、电视剧类型、体育节目类型以及非上述所列举的其他节目类型。并且,对每种节目类型的播放属性设置了需求度,节目类型的播放属性包括实时性、流畅性、清晰性以及起播速度。需要说明的是,在本申请实施例中,用户可以对预设节目类型播放属性列表的各个播放属性的需求度进行设置,当然,在用户未对预设节目类型播放属性列表各个播放属性的需求度进行设置时,用户终端可以使用默认的预设节目类型播放属性列表。例如下表1所示的预设节目类型播放属性列表:
表1
节目类型 | 实时性 | 流畅性 | 清晰性 | 起播速度 |
直播节目 | 1 | 2 | 3 | 4 |
电影、电视剧 | 4 | 2 | 1 | 3 |
体育节目 | 4 | 1 | 2 | 3 |
其他节目 | 4 | 1 | 3 | 2 |
如上表1所示,将节目的节目类型分为了4类。其中,需要说明的是,起播速度是指,用户终端在接收到EPG服务器对于用户终端播放请求的播放响应后,开始播放节目的速度。并且对每种节目类型的实时性等播放属性的需求度进行了配置,其中,表1中的数字代表了对应的需求度。另外需要说明的是,上表1在这里只是举例进行说明,并不对本申请实施例中的预设节目类型播放属性列表构成限定,在实际应用中,还可以有其他的分类方法以及需求度设置,此处不做限定,也不再一一赘述。
目标频道的频道标识:目标频道的频道标识是指通过该频道标识可以确定用户选择的目标频道为哪个播放频道的标识,不同播放频道对应有不同的频道标识。
在本申请实施例中,对于播放频道不同的节目类型,配置有该节目类型对应的播放方式,具体由预设节目类型属性播放列表的需求度确定。用户终端可以接收用户通过控制装置的输入的包含有目标频道的输入指令,例如,以用户终端为机顶盒为例,用户可以通过机顶盒遥控选择目标频道,用户终端确定了用户选择的目标频道后,将包含有用户选择的目标频道的频道标识的播放请求发送给EPG服务器,EPG服务器接收到用户终端发送的包含有目标频道的频道标识的播放请求后,向用户终端反馈包含目标频道的播放地址的播放响应;在执行上述过程中,当用户终端确定了用户选择的目标频道后,用户终端可以确定目标频道当前播放的节目对应的节目类型,最后用户终端根据目标频道当前播放的节目对应的节目类型以及EPG服务器反馈的播放地址,按照上述节目类型对应的播放方式播放节目。以上对本申请实施例的大致流程进行了描述。
下面先对本申请实施例所提供的用户终端以及EPG服务器的实体结构分别进行介绍。
如图2所示,为本申请实施例一种用户终端一个结构示意图,该用户终端200主要包括处理器201(其中,用户终端200中的处理器201的数量可以一个或多个,图2中以一个处理器为例)、存储器202、通信端口203等硬件结构,还包括安装在硬件上的操作系统、电源等部分,具体在图2中未一一列举出来,但并不对本申请实施例中的用户终端构成限定。在本申请的一些实施例中,处理器201、存储器202以及通信端口203可通过总线或其它方式连接,具体此处不做限定,其中,图2中以通过总线连接为例进行示例说明。
处理器201控制用户终端200的操作,处理器201还可以称为中央处理单元(英文:central processing unit,缩写:CPU)。具体的应用中,用户终端的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图2中将各种总线都称为总线系统。
存储器202可以包括只读存储器(英语:Read-Only Memory,缩写:ROM)和随机存取存储器(英文:random access memory,缩写:RAM),并向处理器201提供指令和数据。存储器202的一部分还可以包括非易失性随机存取存储器(英文:non-volatile random access memory,缩写:NVRAM)。存储器202存储有操作系统和操作指令、可执行模块或 者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,各种操作指令用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。存储器202还存储有本申请实施例所涉及的数据、表格等,例如上述所提到的预设节目类型播放属性列表等。
本申请实施例揭示的方法可以应用于处理器201中,或者由处理器201实现。处理器201可以是一种集成电路芯片,具有信号的处理能力。在本申请实施例实现过程中,可以通过处理器201中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器201可以是通用处理器、数字信号处理器(英文:digital signal processing,缩写:DSP)、专用集成电路(英文:application-specific integrated circuit,缩写:ASIC)、现场可编程门阵列(英文:field-programmable gate array,缩写:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器202,处理器201读取存储器202中的信息,结合其硬件完成本申请实施例的视频播放方法中用户终端侧的步骤。
通信端口203可用于接收或者发送信息,例如用于接收EPG服务器的播放响应等信息,以及产生与用户终端的相关设置以及功能控制有关的信号,从而进行用户终端的初始化、点播节目等处理。
本申请实施例中,处理器201,可用于执行本申请实施例用户终端侧执行的视频播放方法。
接下来介绍本申请实施例提供的服务器,请参阅图3所示,为本申请实施例一种服务器一个结构示意图,该服务器可以作为上述所描述的EPG服务器,具有EPG服务器的功能,该服务器300包括:
处理器301、存储器302以及通信端口303(其中,服务器300中的处理器301的数量可以一个或多个,图3中以一个处理器为例)。存储器302、通信端口303等硬件结构,还包括安装在硬件上的操作系统、电源等部分,具体在图3中未一一列举出来,但并不对本申请实施例中的用户终端构成限定。在本申请的一些实施例中,通信端口303、处理器301和存储器302可通过总线或其它方式连接,具体此处不做限定,其中,图3中以通过总线连接为例进行示例说明。
处理器301控制服务器300的操作,处理器301还可以称为中央处理单元。具体的应用中,服务器的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图3中将各种总线都称为总线系统。
存储器302可以包括只读存储器和随机存取存储器,并向处理器301提供指令和数据。存储器302的一部分还可以包括NVRAM。存储器302存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操 作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
上述本申请实施例揭示的方法可以应用于处理器301中,或者由处理器301实现。处理器301可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例中EPG服务器侧所执行的各步骤可以通过处理器301中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器301可以是通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器302,处理器301读取存储器302中的信息,结合其硬件完成本申请实施例视的频播放方法中,EPG服务器侧对应的步骤。
通信端口303可用于接收或者发送信息,例如接收用户终端发送的播放请求,以及产生与EPG服务器的相关设置以及功能控制有关的信号,从而进行服务器的初始化等处理。
本申请实施例中,处理器301,用于执行本申请实施例EPG服务器侧执行的视频播放方法。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,模块和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
下面对本申请实施例一种视频播放方法进行详细的说明。
请参阅图4,图4为本申请实施例一种视频播放方法一个实施例流程示意图,包括:
401、用户终端接收输入指令。
其中,该输入指令包含有用户选择的目标频道。在EPG服务器构成的EPG系统的所提供的交互界面中,呈现有各种各样的播放频道选择组件,例如以播放频道列表的方式在界面中呈现播放频道选择列表,播放频道列表中有各种各样的播放频道,用户终端可以接 收用户通过对应的控制器输入的包含有用户选择的目标频道的输入指令。例如以用户终端为机顶盒为例,机顶盒对应的控制器为数字遥控器,不同的播放频道对应数字遥控器上不同的数字按钮,用户通过点击数字遥控器的数字按钮,选择该数字按钮对应的目标频道。
402、用户终端将包含有目标频道的频道标识的播放请求发送至EPG服务器。
在用户终端接收到用户输入的指令后,通过该输入指令确定用户选择的目标频道后,用户终端将包含有目标频道的频道标识的播放请求发送至EPG服务器,该播放请求用于用户终端向EPG服务器请求目标频道的相关信息,例如该相关可以是目标频道的播放地址等。
403、EPG服务器根据目标频道的频道标识确定目标频道当前播放的节目对应的节目类型,以及目标频道的播放地址。
EPG服务器接收到包含有目标频道的频道标志的播放请求后,根据该频道标识,可以确定该目标频道对应的播放地址,并可以通过该频道标志查询出该目标频道当前播放的节目对应的节目类型,其中,所述EPG服务器根据目标频道的频道标识确定所述目标频道当前播放的节目对应的节目类型,包括:
所述EPG服务器根据所述频道标识确定所述目标频道当前播放的节目;
所述EPG服务器从内存中保存的节目信息确定所述节目对应的节目类型;
或者,所述EPG服务器从所述节目对应的服务平台上获取所述节目对应的节目类型,即从提供该节目的服务器上查询出该节目对应的节目类型。
404、EPG服务器将包含有目标频道的播放地址以及节目类型的播放响应发送至用户终端。
当EPG服务器根据频道标识确定出目标频道的播放地址以及节目类型后,包含有节目类型以及目标频道的播放地址的播放响应反馈回用户终端。
405、用户终端根据播放响应确定节目类型以及播放地址;
用户终端接收到EPG服务器反馈的播放响应后,通过播放响应确定出目标频道当前所播放的节目的节目类型,以及目标频道的播放地址。
这里需要说明的是,在本申请实施例中,除了通过EPG服务器查询得到目标频道当前所播放的节目对应的节目类型外,还可以其他通过用户终端确定目标频道当前所播放的节目对应的节目类型的方式,例如对于目标频道为IPTV直播频道或者OTT直播频道时,用户终端确定目标频道当前播放的节目对应的节目类型分别有不同的确定方式:
第一种情况,当目标频道为IPTV直播频道时,用户终端可以通过所述目标频道的传输流中携带的EIT表中确定出目标频道当前播放的节目对应的节目类型。首先,为了便于理解,下面先对EIT表进行一个描述。
在IPTV直播频道中,用户终端接收到的是一段一段的码流,这一段一段的码流称为传输流(英文:transport stream,缩写:TS),TS流是基于TS包(packet)的格式传输,每个TS包包括包头(packet header)以及包数据(packet data),每段TS流都携带一些信息,如对应的视频(video)、音频(audio)以及EIT表、节目关联表(英文:program association table,缩写:PAT)以及节目映射表(英文:program map table,缩写:PMT)等信息。
每个TS包的包头里包含包标识(英文:packet identifier,缩写:PID),在TS包中,TS包对应的包数据的内容由该TS包的包标识确定。例如,如果一个TS流中的一个包的包头 中的PID是0x0000,那么这个包的包数据就是PAT表;如果PID是0x0012,那么这个包的包数据就是EIT表,具体这里不再一一举例说明。
而EIT表通过固定的PID(0x0012)在TS流中传输。EIT表是按时间顺序提供每一个IPTV直播频道所包含的事件的信息,其中,在本申请实施例中,事件指的是节目。其中,按照EIT表中的表标识(table id)的不同,EIT表主要分为EIT当前/后续(英文:present/following,缩写:P/F)表和EIT时间表(EIT schedule),具体如下所示:
1)当前传输流,当前/后续事件信息=table_id=0x4E;
2)其它传输流,当前/后续事件信息=table_id=0x4F;
3)当前传输流,事件时间表信息=table_id=0x50至0x5F;
4)其它传输流,事件时间表信息=table_id=0x60至0x6F。
其中,EIT P/F表用于描述当前事件以及后续事件,EIT P/F表分为当前传输流表(table_id=0x4E)和其他传输流表(table_id=0x4F),每个EIT表由两个段(section)组成,分别是EIT present段和EIT following段,其中,EIT present段(section_number=0x00)描述当前播放的事件,而EIT following段(section_number=0x01)则描述后续播放的事件。
EITP/F表中可携带多种描述符,例如短事件描述符(事件的名称与简介)、扩展事件描述符(事件详细介绍)、内容描述符(事件的分类信息,)、组件描述符(事件的音视频及字幕等信息)以及家长分级描述符。在本申请实施例中,用户终端可以在内容描述符中可以获取到节目的节目类型分类信息,从而确定出该节目对应的节目类型。
请参阅图5a以及图5b所示,图5a以及图5b是数字视频广播(英文:Digital Video Broadcasting,缩写:DVB)规范中,关于EIT表中的内容描述符的一些示例:
需要说明的是,图5a以及图5b中关于EIT表中的内容描述符的一些示例在这里只是列出部分一级分类节目下的部分或全部二级分类节目进行说明,具体关于EIT表中的内容描述符的其他分类示例,例如Children's/Youth programmes(儿童青少年节目)、Education/Science/Factual topics(教育/科学/专题)、Social/Political issues/Economics(社会/政治/经济)、Music/Ballet/Dance(音乐/芭蕾/舞蹈)、Leisure hobbies(休闲爱好)等一级节目分类的相关内容,图5a或图5b中不再一一列举。在本申请实施例中,DVB表中对于节目的分类与前述描述的预设节目类型播放属性列表(例如表1)中的节目类型的映射关系如下表2所示:
表2
因此,所述用户终端获取所述目标频道当前播放的节目对应的节目类型,包括:
所述用户终端从所述目标频道当前播放的节目对应的传输流中,获取对应的EIT表;
所述用户终端根据所述EIT表确定目标频道当前播放的节目对应的节目类型。
其中,所述用户终端根据所述EIT确定所述节目对应节目类型,包括:
所述用户终端解析所述EIT得到对应的内容描述符;
所述用户终端从所述内容描述符中确定所述节目对应的节目类型。
第二种情况,当目标频道为OTT直播频道时,预先在目标频道当前所播放的节目对应播放分片的分片索引文件中增加每个播放分片所属节目的节目类型标识。示例性的,以HTTP流媒体直播(英文:http live streaming,缩写:HLS)协议作为OTT直播频道的流媒体传输协议为例进行说明。
应理解,HLS基于HTTP协议实现,传输内容包括两部分,一是m3u8索引文件,二是媒体文件。对于一个基于HLS的节目而言,对应一个总的index.m3u8索引文件和多个N.m3u8分片索引文件(其中,N为01、02等数字),其中,index.m3u8包含了该节目所有HLS流的索引信息,例如,包含了该节目中,对应的各个码率的节目信息,即该index.m3u8中包含多个标签(tag),其中有部分标签描述了该节目对应有多少播放分片,以及每个播放分片对应的不同的码率。而N.m3u8某个码率的播放分片对应的分片索引文件。
在本申请实施例中,通过扩展节目的播放分片的分片索引文件的标签(tag)描述,例如在HLS的分片索引文件中增加节目类型参数的属性,来标识目标频道当前所播放的节目的播放分片的节目类型,示例性的,如下所示的扩展后的N.m3u8分片索引文件,包含多个标签。
#EXTM3U //EXTM3U为每个m3u文件的第一个标签;
#EXT-X-VERSION:3 //该标签表示版本;
#EXT-X-TARGETDURATION:4 //该标签指定了每个播放分片的持续时间的最大值;
#EXT-X-MEDIA-SEQUENCE:353507013 //每个播放分片的统一资源定位符(英文:Uniform Resource Locator,缩写:URL)都有一个唯一的序列号,该标签表示对应URL的序列号;
#EXT-X-KEY:METHOD=NONE //该标签表示播放分片可以被加密,加密方式为NONE(无加密),后面的URL顺序递增;
#EXT-X-PROGRAM-DATE-TIME:2014-10-23T01:34:11Z //该标签对下一个描述的播放分片有效,表示下一个播放分片的开始时间;
#EXT-X-PROGRAM-TYPE:LIVE-BROADCAST //该标签表示节目对应的而节目类型为直播节目;
#EXTINF:4,
1414028051-1-353507013.hls.ts //EXTINF标签为记录标记,该标记描述了播放分片 (1414028051-1-353507013.hls.ts)对应的持续时间;
#EXT-X-PROGRAM-DATE-TIME:2014-10-23T01:34:15Z
#EXT-X-PROGRAM-TYPE:MOVIE //该标签表示节目对应的而节目类型为电影(movie);
#EXTINF:4,
1414028055-1-353507014.hls.ts
#EXT-X-PROGRAM-DATE-TIME:2014-10-23T01:34:19Z
#EXTINF:4,
1414028059-1-353507015.hls.ts
需要说明的是,上述双斜杠(//)后面的描述分别为部分对应的标签的含义进行了简单的说明,并且,上述分片索引文件在这里只是举例进行说明。
由上述.m3u8分片索引文件的描述可看出,通过节目类型参数来扩展节目的播放分片的分片索引文件的描述,如#EXT-X-PROGRAM-TYPE标签,定义了播放分片的节目类型,例如,上述1414028055-1-353507014.hls.ts对应的播放分片的节目类型为电影(movie),具体关于上述分片索引文件中的其他内容,这里不再一一赘述。
在本申请实施例中,所述用户终端获取所述目标频道当前播放的节目对应的节目类型,包括:
所述用户终端获取所述目标频道当前播放的节目对应的播放分片的分片索引文件;
所述用户终端根据所述分片索引文件确定所述目标频道当前播放的节目对应的节目类型。
406、用户终端根据播放地址,按照节目类型对应的播放方式播放节目。
当用户终端确定了目标频道当前所播放的节目对应的节目类型后,根据接收到的播放地址,以及确定的节目类型,按照对应的播放方式播放节目。
需要说明的是,对于IPTV直播频道以及OTT直播频道,用户终端对于两种播放频道的启动播放时的播放方式有所不同,下面分别描述。
其中,当目标频道为IPTV直播频道时,所述用户终端按照所述节目类型对应的播放方式播放所述节目,包括:
所述用户终端根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和起播速度需求度;
若所述实时性需求度高于所述起播速度需求度,则所述用户终端通过加入所述节目对应的组播组播放所述节目,即直接通过目标频道的组播地址接收所述节目最新的播放数据来播放所述节目。
在本申请实施例中,当IPTV直播频道支持快FCC功能时,若所述实时性需求度低于所述起播速度需求度,则所述用户终端通过开启所述FCC功能播放所述节目。
由此可以看出,对于支持FCC功能的IPTV直播频道,当用户对于目标频道当前播放的节目的实时性需求高于起播速度需求时,则可以直接加入目标频道的组播地址来获取最新的播放数据,进而启动播放所述节目,可以接收到当前该节目最新的播放数据,提高了节目的实时性。而当用户对于目标频道当前播放的节实时性需求低于起播速度需求,才通 过开启FCC功能启动播放所述节目。
其中,用户终端通过开启FCC功能播放所述节目的流程如下:用户终端向FCC Server(FCC服务器)请求数据帧,FCC Server收到用户终端的请求后,会从自身缓存中所述节目最近的某个帧开始向用户终端发送数据。具体IPTV通过开启FCC功能后播放所述节目的过程,这里不再详细描述。因此,本申请实施例可以根据节目对应的节目类型自动确定是否开启FCC功能,从而兼顾用户对不同节目类型的起播速度的要求,提高了用户的体验。
其中,当所述目标频道为OTT直播频道时,所述按照所述节目类型对应的播放方式播放所述节目之前,所述方法还包括:
所述用户终端通过提供所述节目的媒体服务器上,获取所述节目的索引文件,所述索引文件包含所述节目每个播放分片的码率信息,需要说明的是,所述索引文件包含了节目的每一个播放分片的码率信息,相同内容的播放分片可以有多个不同级别的码率,例如一个播放分片可以有码率分别为1024kbps、2048kbps、3072kbps以及4056kbps这四个级别的码率。
所述用户终端按照所述节目类型对应的播放方式播放所述节目,包括
所述用户终端根据预设节目类型播放属性列表确定所述节目类型对应的清晰性需求度和流畅性需求度;
若所述清晰性需求度高于所述流畅性需求度,则所述用户终端获取所述节目的历史下载码率中,与所述码率信息匹配的码率的播放分片播放所述节目。
若所述清晰性需求度低于所述流畅性需求度,则所述用户终端获取所述码率信息中的最低码率对应的播放分片播放所述节目。
由此可以看出,对于OTT直播频道,用户终端可以通过节目的各个播放分片的码率信息,根据预设节目类型播放属性列表以及节目类型来选择合适的码率的播放分片,当确定了合适的码率后,再通过所述媒体服务器获取该码率对应的分片索引文件,从而通过该分片索引文件下载该码率对应的播放分片。这样,当用户对节目的流畅性要求高于清晰性要求,则所述用户终端获取所述节目的最低码率对应的播放分片播放所述节目,可以提高节目的启动播放速度。同理,若用户对节目的清晰性需求高于流畅性需求,用户终端可以从节目类型的历史下载码率中,获取与节目的各个播放分片的码率信息匹配的码率的播放分片。即本申请实施例中,对于OTT直播频道,在对节目进行播放时,对于某个播放分片,用户终端可以先选择下载所述该播放分片何种码率的播放分片来启动播放节目,从而兼顾用户对不同节目类型的起播速度的要求,提高了用户的体验。
另外,在本申请实施例中,对于OTT直播频道,用户终端在播放过程中判断由于带宽变化需要进行播放分片的码率切换时,也可以根据节目单类型采取不用的播放方式,所述用户终端按照所述节目类型对应的播放方式播放所述节目,包括:
所述用户终端根据预设节目类型播放属性列表确定所述节目类型的对应的流畅性需求度和清晰性需求度;
所述用户终端根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率;
所述用户终端根据所述下载码率下载所述节目的播放分片;
所述用户终端通过所述播放分片播放所述节目。
即在本申请实施例中,用户终端可以根据集合节目的节目类型,根据当前网络带宽的大小实时调整节目的待下载播放分片的下载码率。
其中,在本申请的一些实施例中,所述用户终端根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:
若所述清晰性需求度高于所述流畅性需求度,且所述网络带宽充足时,所述用户终端将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率,通过将节目的待下载播放分片的码率调高到当前网络带宽能接受的最大码率,以提高节目的流畅性。例如,若当前网络带宽的能接受的码率大于或等于4056kbps(千位每秒),而节目对应有1024kbps、2048kbps、3072kbps以及4056kbps这四个级别的码率,但相同内容的待下载播放分片时,用户终端下载3072kbps对应的待下载播放分片作为所述节目的播放分片。
若所述清晰性需求度高于所述流畅性需求度,且所述网络带宽不足时,将所述节目的待下载播放分片的码率调整至低一级码率。例如,若当前网络带宽的能接受的码率大于或等于2048kbp,而原先用户终端下载的是码率为3072kbps的待下载播放分片。此时,网络带宽不足,若节目的某个含有相同内容的待下载播放分片对应有1024kbps、2048kbps、3072kbps、4056kbps这四个级别的码率,本申请实施例中,用户终端可以将待下载播放分片的下载码率降一级,即降为2048kbps,用户终端下载2048kbps对应的待下载播放分片作为所述节目的播放分片。
在本申请的一些实施例中,所述用户终端根据所述流畅性需求度、清晰性需求度以及当前网络带宽调确定所述节目的待下载播放分片的下载码率,包括:
若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽不足时,将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;
若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽充足时,将所述节目的待下载播放分片的下载码率调整至高一级码率。
由此可见,在本申请实施例中,用户终端可以依据当前的节目类型以及网络带宽实时对节目的待下载播放分片的下载码率进行切换,可以适应用户对不同节目类型的在一些具体的带宽场景下的播放要求,提高了用户的体验。
以上对本申请实施例中,关于开启播放的播放方式,以及码率选择/切换方式进行了相关描述,在本申请的一些实施例中,所述按照所述节目类型对应的播放方式播放所述节目,包括:
所述用户终端根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和流畅性需求度;
若所述实时性需求度高于所述流畅性需求度,则所述用户终端接收到所述节目解码播放所需的播放数据后就播放所述节目。
若所述实时性需求度低于所述流畅性需求度,则所述用户终端缓存所述节目预设时长的播放数据后才播放所述节目,其中,预设时长可以根据实际应用情况进行配置,示例性的,预设时长可以为2秒或者5秒,具体此处不做限定。
需要说明的是,上述播放方式可以应用于IPTV直播频道以及OTT直播频道中,根据实时性需求度以及所述流畅性需求度的需求度大小,用户终端可以选择接收到解码所需的播放数据后就立即进行播放,也可以缓冲预设时间(例如缓冲个5或2秒等)再进行播放,可以满足用户对不同节目类型的不同播放需求。
另外需要说明的是,上述实施例是以用户终端接收到用户的输入指令后开始播放节目的相关播放方式进行了说明,但在实际应用过程,由于某种突发事件,容易导致节目的传输流中断。而在节目的传输流中断恢复后,用户终端同样可以根据恢复后传输流的节目类型对应的播放方式进行播放,相关的播放方式与前述描述一样或类似,具体此处不再赘述。
示例性的,在本申请的一些实施例中,当所述目标频道的传输流由中断恢复时,所述用户终端按照所述节目类型对应的播放方式播放所述节目,包括:
若所述实时性需求度高于所述流畅性需求度,则所述用户终端接收到所述节目解码播放所需的播放数据后播放所述节目;
若所述实时性流畅度低于所述流畅性需求度,则所述用户终端缓存所述节目预设时长(例如5秒或者2秒等)的播放数据后播放所述节目。
可见,在本申请实施例中,当目标频道的传输流由中断恢复时,用户终端按照所述节目类型对应的播放方式播放所述节目的方式,与前述描述的,用户终端接收到输入指令后,按照所述节目类型对应的播放方式播放所述节目的方式类似或一样。另外需要说明的是,关于传输流中断恢复后,用户终端确定节目类型的方式,也与前述方式一样,具体此处也不再赘述。
综上所述,在本申请实施例中,可以根据当前播放频道播放的节目的节目类型所对应播放方式对节目进行播放,可以更好地匹配用户对播放节目不同节目类型的观看需求,用户终端在播放播放频道过程中,针对不同节目类型的执行不同的播放方式,播放方式比较多样。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于示例性实施例,所涉及的动作和模块并不一定是本申请所必须的。
为便于更好的实施本申请上述实施例中所描述的方案,下面还提供用于实施上述方案的相关装置。
请参阅图6所示,本申请实施例提供的一种用户终端一个实施例结构示意图,包括接收模块601、发送模块602以及处理模块603,其中,
接收模块601,用于接收输入指令,所述输入指令包括用户选择的目标频道;
发送模块602,用于向EPG服务器发送播放请求,所述播放请求中包含所述接收模块601接收的输入指令包含的所述目标频道的频道标识;
所述接收模块601,还用于接收从所述EPG服务器根据所述发送模块602发送的所述播放请求返回的播放响应,所述播放响应包含所述目标频道的播放地址,所述播放地址由所述EPG服务器根据所述目标频道的频道标识确定;
处理模块603,用于确定所述目标频道当前播放的节目对应的节目类型;
所述处理模块603,还用于根据所述接收模块601接收的播放响应中包含的所述播放地址,按照所述节目类型对应的播放方式播放所述节目。
在本申请的一些实施例中,所述播放响应还包含所述节目类型,所述处理模块603用于确定所述目标频道当前播放的节目对应的节目类型,包括:所述处理模块603用于通过所述播放响应中确定所述目标频道当前播放的节目对应的节目类型。
在本申请的一些实施例中,所述目标频道为IPTV直播频道,所述处理模块603用于确定所述目标频道当前播放的节目对应的节目类型,包括:
所述处理模块603用于从所述目标频道当前播放的节目对应的传输流中,确定对应的EIT,并根据所述EIT表确定所述节目对应的节目类型。
在本申请的一些实施例中,所述处理模块603用于根据所述EIT表确定所述节目对应节目类型,包括:
所述处理模块603用于解析所述EIT表得到对应的内容描述符,通过所述内容描述符确定所述节目对应的节目类型。
在本申请的一些实施例中,所述目标频道为OTT直播频道,所述接收模块601还用于获取所述目标频道当前播放的节目对应的播放分片的分片索引文件;
所述处理模块603用于确定所述目标频道当前播放的节目对应的节目类型,包括:所述处理模块603用于根据所述分片索引文件确定所述目标频道当前播放的节目对应的节目类型。
在本申请的一些实施例中,所述处理模块603用于按照所述节目类型对应的播放方式播放所述节目,包括:
所述处理模块603用于根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和流畅性需求度;若所述实时性需求度高于所述流畅性需求度,则接收到所述节目解码播放所需的播放数据后播放所述节目;若所述实时性需求度低于所述流畅性需求度,则缓存所述节目预设时长的播放数据后播放所述节目。
在本申请的一些实施例中,所述处理模块603用于按照所述节目类型对应的播放方式播放所述节目,包括:
所述处理模块603用于根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和流畅性需求度;当所述目标频道的传输流由中断恢复时,若所述实时性需求度高于所述流畅性需求度,则接收到所述节目解码播放所需的播放数据后播放所述节目;当所述目标频道的传输流由中断恢复时,若所述实时性流畅度低于所述流畅性需求度,则缓存所述节目预设时长的播放数据后播放所述节目。
在本申请的一些实施例中,所述目标频道为IPTV直播频道,所述处理模块603用于按照所述节目类型对应的播放方式播放所述节目,包括:
所述处理模块603用于:根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和起播速度需求度;若所述实时性需求度高于所述起播速度需求度,则通过加入所述节目对应的组播地址播放所述节目。
在本申请的一些实施例中,所述目标频道支持快速频道切换FCC功能,所述处理模块 603还用于:若所述实时性需求度低于所述起播速度需求度,则通过开启所述FCC功能播放所述节目。
在本申请的一些实施例中,所述目标频道为OTT频道,所述处理模块603用于按照所述节目类型对应的播放方式播放所述节目之前,
所述接收模块601还用于通过所述节目对应的媒体服务器,获取所述节目的索引文件,所述索引文件包含所述节目每个播放分片的码率信息;
所述处理模块603用于按照所述节目类型对应的播放方式播放所述节目,包括:
所述处理模块603用于根据预设节目类型播放属性列表确定所述节目类型对应的清晰性需求度和流畅性需求度;若所述清晰性需求度高于所述流畅性需求度,则通过所述节目的历史下载码率中,与所述码率信息匹配的码率的播放分片播放所述节目;若所述清晰性需求度低于所述流畅性需求度,则通过所述码率信息指示的最低码率对应的播放分片播放所述节目。
在本申请的一些实施例中,所述频道为OTT直播频道,所述处理模块603用于按照所述节目类型对应的播放方式播放所述节目,包括:
所述处理模块603用于:根据预设节目类型播放属性列表确定所述节目类型的对应的流畅性需求度和清晰性需求度,根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率;根据所述下载码率下载所述节目的播放分片;通过所述播放分片播放所述节目。
在本申请的一些实施例中,所述处理模块603用于根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:
所述处理模块603用于若所述清晰性需求度高于所述流畅性需求度,且所述网络带宽充足时,将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;若所述清晰性度高于所述流畅性需求度,且所述网络带宽不足时,将所述节目的播放分片的下载码率调整至低一级码率。
在本申请的一些实施例中,所述处理模块603用于根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:
所述处理模块603用于若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽不足时,将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽充足时,将所述节目的待下载播放分片的下载码率调整至高一级码率。
上面对本申请实施例中的用户终端进行了描述,下面对本申请实施例中的服务器进行描述,请参阅图7,为本申请实施例提供的一种服务器一个实施例结构示意图,该服务器可以作为上述方法实施例中的EPG服务器,具体上述方法实施例EPG服务器的功能。该服务器包括接收模块701、处理模块702以及发送模块703。
其中,接收模块701,用于接收用户终端发送的播放请求,所述播放请求包含目标频道的频道标识;处理模块702,用于根据所述接收模块701接收的播放请求中包含的目标频道的频道标识,确定所述目标频道当前播放的节目对应的节目类型,以及所述目标频道的播放地址;发送模块703,用于向所述用户终端反馈播放响应,所述播放响应包含所述 处理模块702确定的目标频道的播放地址以及所述节目类型。
在本申请的一些实施例中,处理模块702用于确定所述目标频道当前播放的节目对应的节目类型,以及所述目标频道的播放地址,包括:
所述处理模块702用于:根据所述接收模块701接收的播放请求中包含的目标频道的频道标识确定所述目标频道当前播放的节目;从内存中保存的节目信息确定所述节目对应的节目类型;或,从所述节目对应的服务平台上获取所述节目对应的节目类型。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请实施例中的方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储有程序,该程序被计算机执行时能实现上述方法实施例中记载的部分或全部步骤。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (24)
- 一种视频播放方法,其特征在于,包括:用户终端接收输入指令,所述输入指令包括用户选择的目标频道;所述用户终端向电子节目菜单EPG服务器发送播放请求,所述播放请求中包含所述目标频道的频道标识;所述用户终端接收从所述EPG服务器处返回的播放响应,所述播放响应包含所述目标频道的播放地址;所述用户终端确定所述目标频道当前播放的节目对应的节目类型;所述用户终端根据所述播放地址,按照所述节目类型对应的播放方式播放所述节目。
- 根据权利要求1所述的方法,其特征在于,所述播放响应还包含所述节目类型,所述用户终端确定所述目标频道当前播放的节目对应的节目类型,包括:所述用户终端通过所述播放响应确定所述目标频道当前播放的节目对应的节目类型。
- 根据权利要求1所述的方法,其特征在于,所述目标频道为互联网电视IPTV直播频道,所述用户终端确定所述目标频道当前播放的节目对应的节目类型,包括:所述用户终端从所述IPTV直播频道当前播放的节目对应的传输流中,提取对应的事件信息表EIT;所述用户终端解析所述EIT表得到对应的内容描述符;所述用户终端通过所述内容描述符确定所述节目对应的节目类型。
- 根据权利要求1所述的方法,其特征在于,所述目标频道为网络电视OTT直播频道,所述用户终端确定所述目标频道当前播放的节目对应的节目类型,包括:所述用户终端获取所述OTT直播频道当前播放的节目对应的播放分片的分片索引文件;所述用户终端根据所述分片索引文件确定所述目标频道当前播放的节目对应的节目类型。
- 根据权利要求1-4任一项所述的方法,其特征在于,所述按照所述节目类型对应的播放方式播放所述节目,包括:所述用户终端根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和流畅性需求度;若所述实时性需求度高于所述流畅性需求度,则所述用户终端接收到所述节目解码播放所需的播放数据后播放所述节目;若所述实时性需求度低于所述流畅性需求度,则所述用户终端缓存所述节目预设时长的播放数据后播放所述节目。
- 根据权利要求1-3任一项所述的方法,其特征在于,所述目标频道为IPTV直播频道,所述目标频道支持快速频道切换FCC功能,所述按照所述节目类型对应的播放方式播放所述节目,包括:所述用户终端根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和起播速度需求度;若所述实时性需求度高于所述起播速度需求度,则所述用户终端通过加入所述节目对 应的组播地址播放所述节目;若所述实时性需求度低于所述起播速度需求度,则所述用户终端通过开启所述FCC功能播放所述节目。
- 根据权利要求1、2或4所述的方法,其特征在于,所述目标频道为OTT直播频道,所述按照所述节目类型对应的播放方式播放所述节目之前,所述方法还包括:所述用户终端通过所述节目对应的媒体服务器,获取所述节目的索引文件,所述索引文件包含所述节目每个播放分片的码率信息;所述按照所述节目类型对应的播放方式播放所述节目,包括所述用户终端根据预设节目类型播放属性列表确定所述节目类型对应的清晰性需求度和流畅性需求度;若所述清晰性需求度高于所述流畅性需求度,则所述用户终端通过所述节目的历史下载码率中,与所述码率信息匹配的码率的播放分片播放所述节目;若所述清晰性需求度低于所述流畅性需求度,则所述用户终端通过所述码率信息指示的最低码率对应的播放分片播放所述节目。
- 根据权利要求1、2或4所述的方法,其特征在于,所述目标频道为OTT直播频道,所述按照所述节目类型对应的播放方式播放所述节目,包括:所述用户终端根据预设节目类型播放属性列表确定所述节目类型的对应的流畅性需求度和清晰性需求度;所述用户终端根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率;所述用户终端根据所述下载码率下载所述节目的播放分片;所述用户终端通过所述播放分片播放所述节目。
- 根据权利要求8所述的方法,其特征在于,所述用户终端根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:若所述清晰性需求度高于所述流畅性需求度,且所述网络带宽充足时,所述用户终端将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;若所述清晰性度高于所述流畅性需求度,且所述网络带宽不足时,将所述节目的播放分片的下载码率调整至低一级码率。
- 根据权利要求9所述的方法,其特征在于,所述用户终端根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽不足时,将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽充足时,将所述节目的待下载播放分片的下载码率调整至高一级码率。
- 一种视频播放方法,其特征在于,包括:EPG服务器接收用户终端发送的播放请求,所述播放请求包含目标频道的频道标识;所述EPG服务器根据目标频道的频道标识确定所述目标频道当前播放的节目对应的节目类型,以及所述目标频道的播放地址;所述EPG服务器向所述用户终端反馈播放响应,所述播放响应包含所述目标频道的播放地址以及所述节目类型。
- 根据权利要求11所述的方法,其特征在于,所述EPG服务器根据目标频道的频道标识确定所述目标频道当前播放的节目对应的节目类型,包括:所述EPG服务器根据所述频道标识确定所述目标频道当前播放的节目;所述EPG服务器从内存中保存的节目信息确定所述节目对应的节目类型;或,所述EPG服务器从所述节目对应的服务平台上获取所述节目对应的节目类型。
- 一种用户终端,其特征在于,包括:接收模块,用于接收输入指令,所述输入指令包括用户选择的目标频道;发送模块,用于向电子节目菜单EPG服务器发送播放请求,所述播放请求中包含所述接收模块接收的输入指令包含的所述目标频道的频道标识;所述接收模块,还用于接收从所述EPG服务器返回的播放响应,所述播放响应包含所述目标频道的播放地址;处理模块,用于确定所述目标频道当前播放的节目对应的节目类型;所述处理模块,还用于根据所述接收模块接收的播放响应中包含的所述播放地址,按照所述节目类型对应的播放方式播放所述节目。
- 根据权利要求13所述的用户终端,其特征在于,所述播放响应还包含所述节目类型,所述处理模块用于确定所述目标频道当前播放的节目对应的节目类型,包括:所述处理模块用于通过所述播放响应中确定所述目标频道当前播放的节目对应的节目类型。
- 根据权利要求13所述的用户终端,其特征在于,所述目标频道为互联网电视IPTV直播频道,所述处理模块用于确定所述目标频道当前播放的节目对应的节目类型,包括:所述处理模块用于:从所述IPTV直播频道当前播放的节目对应的传输流中,确定对应的事件信息表EIT;解析所述EIT表得到对应的内容描述符;通过所述内容描述符确定所述节目对应的节目类型。
- 根据权利要求13所述的用户终端,其特征在于,所述目标频道为网络电视OTT直播频道,所述接收模块还用于获取所述目标频道当前播放的节目对应的播放分片的分片索引文件;所述处理模块用于确定所述目标频道当前播放的节目对应的节目类型,包括:所述处理模块用于根据所述分片索引文件确定所述目标频道当前播放的节目对应的节目类型。
- 根据权利要求13-16任一项所述的用户终端,其特征在于,所述处理模块用于按照所述节目类型对应的播放方式播放所述节目,包括:所述处理模块用于:根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和流畅性需求度;若所述实时性需求度高于所述流畅性需求度,则接收到所述节目解码播放所需的播放 数据后播放所述节目;若所述实时性需求度低于所述流畅性需求度,则缓存所述节目预设时长的播放数据后播放所述节目。
- 根据权利要求13-15任一项所述的用户终端,其特征在于,所述目标频道为IPTV直播频道,所述IPTV直播频道支持快速频道切换FCC功能,所述处理模块用于按照所述节目类型对应的播放方式播放所述节目,包括:所述处理模块用于:根据预设节目类型播放属性列表确定所述节目类型对应的实时性需求度和起播速度需求度;若所述实时性需求度高于所述起播速度需求度,则通过加入所述节目对应的组播地址播放所述节目;若所述实时性需求度低于所述起播速度需求度,则通过开启所述FCC功能播放所述节目。
- 根据权利要求13、14或16所述的用户终端,其特征在于,所述目标频道为OTT直播频道,所述处理模块用于按照所述节目类型对应的播放方式播放所述节目之前,所述接收模块还用于通过所述节目对应的媒体服务器,获取所述节目的索引文件,所述索引文件包含所述节目每个播放分片的码率信息;所述处理模块用于按照所述节目类型对应的播放方式播放所述节目,包括:所述处理模块用于:根据预设节目类型播放属性列表确定所述节目类型对应的清晰性需求度和流畅性需求度;若所述清晰性需求度高于所述流畅性需求度,则通过所述节目的历史下载码率中,与所述码率信息匹配的码率的播放分片播放所述节目;若所述清晰性需求度低于所述流畅性需求度,则通过所述码率信息指示的最低码率对应的播放分片播放所述节目。
- 根据权利要求13、14或16所述的用户终端,其特征在于,所述目标频道为OTT直播频道,所述处理模块用于按照所述节目类型对应的播放方式播放所述节目,包括:所述处理模块用于:根据预设节目类型播放属性列表确定所述节目类型的对应的流畅性需求度和清晰性需求度;根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率;根据所述下载码率下载所述节目的播放分片;通过所述播放分片播放所述节目。
- 根据权利要求20所述的用户终端,其特征在于,所述处理模块用于根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:所述处理模块用于:若所述清晰性需求度高于所述流畅性需求度,且所述网络带宽充足时,将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;若所述清晰性度高于所述流畅性需求度,且所述网络带宽不足时,将所述节目的播放分片的下载码率调整至低一级码率。
- 根据权利要求21所述的用户终端,其特征在于,所述处理模块用于根据所述流畅性需求度、清晰性需求度以及当前网络带宽确定所述节目的待下载播放分片的下载码率,包括:所述处理模块用于:若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽不足时,将所述节目的待下载播放分片的下载码率调整至所述网络带宽能接受的最大码率;若所述流畅性需求度高于所述清晰性需求度,且所述网络带宽充足时,将所述节目的待下载播放分片的下载码率调整至高一级码率。
- 一种服务器,其特征在于,包括:接收模块,用于接收用户终端发送的播放请求,所述播放请求包含目标频道的频道标识;处理模块,用于根据所述接收模块接收的播放请求中包含的目标频道的频道标识,确定所述目标频道当前播放的节目对应的节目类型,以及所述目标频道的播放地址;发送模块,用于向所述用户终端反馈播放响应,所述播放响应包含所述处理模块确定的目标频道的播放地址以及所述节目类型。
- 根据权利要求23所述的服务器,其特征在于,处理模块用于确定所述目标频道当前播放的节目对应的节目类型,以及所述目标频道的播放地址,包括:所述处理模块用于:根据所述接收模块接收的播放请求中包含的目标频道的频道标识确定所述目标频道当前播放的节目;从内存中保存的节目信息确定所述节目对应的节目类型;或,从所述节目对应的服务平台上获取所述节目对应的节目类型。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710147880.9A CN107094263B (zh) | 2017-03-13 | 2017-03-13 | 一种视频播放方法、用户终端以及服务器 |
CN201710147880.9 | 2017-03-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018166319A1 true WO2018166319A1 (zh) | 2018-09-20 |
Family
ID=59648578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/076531 WO2018166319A1 (zh) | 2017-03-13 | 2018-02-12 | 一种视频播放方法、用户终端以及服务器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107094263B (zh) |
WO (1) | WO2018166319A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107094263B (zh) * | 2017-03-13 | 2019-04-19 | 华为技术有限公司 | 一种视频播放方法、用户终端以及服务器 |
WO2019084959A1 (zh) * | 2017-11-06 | 2019-05-09 | 深圳市大疆创新科技有限公司 | 无人机的移动终端和云端平台的交互方法及装置 |
CN107896336A (zh) * | 2017-12-14 | 2018-04-10 | 玲珑视界科技(北京)有限公司 | 一种根据直播类型进行drm播放代理的系统及方法 |
CN108124196A (zh) * | 2017-12-19 | 2018-06-05 | 广州视源电子科技股份有限公司 | 过滤电视内容的方法、装置及设备、可读存储介质 |
CN110022498B (zh) * | 2018-01-08 | 2021-04-27 | 深圳市中兴微电子技术有限公司 | 一种实现码率切换的方法及装置 |
CN110198457B (zh) * | 2018-02-26 | 2022-09-02 | 腾讯科技(深圳)有限公司 | 视频播放方法及其设备、系统、存储介质、终端、服务器 |
CN108491524A (zh) * | 2018-03-27 | 2018-09-04 | 深圳创维-Rgb电子有限公司 | 视频推送方法、装置及计算机可读存储介质 |
CN108920590A (zh) * | 2018-06-26 | 2018-11-30 | 北京小米移动软件有限公司 | 内容播放方法及装置、电子设备、计算机可读存储介质 |
CN111064989A (zh) * | 2018-10-17 | 2020-04-24 | 国广融合(北京)传媒科技发展有限公司 | 数据流处理方法、装置、计算设备及存储介质 |
US11778275B2 (en) * | 2019-03-26 | 2023-10-03 | Saturn Licensing Llc | Information processing terminal, information processing method, and program |
CN110647303B (zh) * | 2019-08-30 | 2023-08-25 | 北京文渊佳科技有限公司 | 一种多媒体播放方法、装置、存储介质及电子设备 |
CN110740343B (zh) * | 2019-09-11 | 2022-08-26 | 深圳壹账通智能科技有限公司 | 基于视频类型的播放控制实现方法、装置及计算机设备 |
CN110933471B (zh) * | 2019-12-18 | 2020-12-15 | 腾讯科技(深圳)有限公司 | 一种安全切换频道的方法、装置、系统及介质 |
CN111935515B (zh) * | 2020-08-14 | 2023-02-10 | 北京永新视博数字电视技术有限公司 | 一种电子节目指南数据表生成方法、装置、设备及介质 |
CN112839256B (zh) * | 2020-12-30 | 2022-06-17 | 珠海极海半导体有限公司 | 视频播放方法、装置和电子设备 |
CN114143585A (zh) * | 2021-11-02 | 2022-03-04 | 深圳Tcl新技术有限公司 | 一种数据处理方法、装置及存储介质和终端设备 |
CN113794937B (zh) * | 2021-11-16 | 2022-02-08 | 深圳市华曦达科技股份有限公司 | 一种多时区频道回看方法 |
CN114501084B (zh) * | 2022-02-17 | 2023-08-01 | 北京百度网讯科技有限公司 | 播放器的起播方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070107030A1 (en) * | 1998-06-17 | 2007-05-10 | Microsoft Corporation | Combining real-time and batch mode logical address links |
CN101583019A (zh) * | 2009-06-01 | 2009-11-18 | 中兴通讯股份有限公司 | 一种在网络电视中实现画中画的方法、系统及机顶盒 |
CN203912111U (zh) * | 2014-04-16 | 2014-10-29 | 北京酷云互动科技有限公司 | 电视播放系统和电视机 |
CN105100831A (zh) * | 2014-04-16 | 2015-11-25 | 北京酷云互动科技有限公司 | 电视机播放模式的调整方法、电视播放系统和电视机 |
CN107094263A (zh) * | 2017-03-13 | 2017-08-25 | 华为技术有限公司 | 一种视频播放方法、用户终端以及服务器 |
-
2017
- 2017-03-13 CN CN201710147880.9A patent/CN107094263B/zh active Active
-
2018
- 2018-02-12 WO PCT/CN2018/076531 patent/WO2018166319A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070107030A1 (en) * | 1998-06-17 | 2007-05-10 | Microsoft Corporation | Combining real-time and batch mode logical address links |
CN101583019A (zh) * | 2009-06-01 | 2009-11-18 | 中兴通讯股份有限公司 | 一种在网络电视中实现画中画的方法、系统及机顶盒 |
CN203912111U (zh) * | 2014-04-16 | 2014-10-29 | 北京酷云互动科技有限公司 | 电视播放系统和电视机 |
CN105100831A (zh) * | 2014-04-16 | 2015-11-25 | 北京酷云互动科技有限公司 | 电视机播放模式的调整方法、电视播放系统和电视机 |
CN107094263A (zh) * | 2017-03-13 | 2017-08-25 | 华为技术有限公司 | 一种视频播放方法、用户终端以及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN107094263B (zh) | 2019-04-19 |
CN107094263A (zh) | 2017-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018166319A1 (zh) | 一种视频播放方法、用户终端以及服务器 | |
EP2700200B1 (en) | Methods and systems for data transmission | |
US8745662B2 (en) | Method of transmitting preview content and method and apparatus for receiving preview content | |
US20080148336A1 (en) | System and method of providing interactive video content | |
EP1912441B9 (en) | Buffering and transmittig video data upon request | |
US20140223502A1 (en) | Method of Operating an IP Client | |
US20080307457A1 (en) | Channel switching method and method and apparatus for implementing the method | |
US11115335B2 (en) | Information processing device and information processing method | |
US11303684B2 (en) | Methods and systems for data transmission | |
KR20100002755A (ko) | VOD(video on demand)가상채널 서비스및 동영상을 포함하는 방송 프로그램 편성표 제공방법 | |
EP2482550A2 (en) | Method and device for receiving an expanded service/program guide | |
US10805028B2 (en) | Receiving device, transmitting device, and data processing method | |
US20170048572A1 (en) | Methods and systems for content control | |
KR102640835B1 (ko) | 송신 장치, 수신 장치, 및 데이터 처리 방법 | |
EP2662790A2 (en) | A content distribution system comprising an on-demand server | |
US20150067749A1 (en) | Method and apparatus for providing extended tv data | |
US8990879B2 (en) | Method for providing data application of digital broadcasting | |
JP5696914B1 (ja) | 送信装置および送信方法 | |
US8978082B2 (en) | Method of switching digital TV application | |
US20170134809A1 (en) | Broadcasting signal transmission apparatus, broadcasting signal reception apparatus, broadcasting signal transmission method, and broadcasting signal reception method | |
KR102628917B1 (ko) | 송신 장치, 수신 장치, 및 데이터 처리 방법 | |
WO2008115032A1 (en) | Method of providing digital tv application and computer-readable medium having thereon program performing function embodying the same | |
JP6545875B2 (ja) | 放送受信装置および受信方法、伝送方法 | |
JP2024099992A (ja) | 受信装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18766587 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: 18766587 Country of ref document: EP Kind code of ref document: A1 |