CN113038150B - Program switching method and device - Google Patents

Program switching method and device Download PDF

Info

Publication number
CN113038150B
CN113038150B CN201911252282.3A CN201911252282A CN113038150B CN 113038150 B CN113038150 B CN 113038150B CN 201911252282 A CN201911252282 A CN 201911252282A CN 113038150 B CN113038150 B CN 113038150B
Authority
CN
China
Prior art keywords
program
switched
video data
audio data
hardware decoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911252282.3A
Other languages
Chinese (zh)
Other versions
CN113038150A (en
Inventor
彭文剑
宗树伟
梁国富
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Broadband Multimedia Technology Co Ltd
Original Assignee
Hisense Broadband Multimedia Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hisense Broadband Multimedia Technology Co Ltd filed Critical Hisense Broadband Multimedia Technology Co Ltd
Priority to CN201911252282.3A priority Critical patent/CN113038150B/en
Publication of CN113038150A publication Critical patent/CN113038150A/en
Application granted granted Critical
Publication of CN113038150B publication Critical patent/CN113038150B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4398Processing of audio elementary streams involving reformatting operations of audio signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

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

The application discloses a program switching method and a device, which are used for realizing rapid program switching and reducing hardware cost and terminal power consumption required by program switching, thereby saving resources. The program switching method provided by the embodiment of the application comprises the following steps: determining a switched target program according to a user instruction; the audio data and the video data of the target program which are stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder; and outputting the image decoded by the video data hardware decoder and the sound decoded by the audio data hardware decoder.

Description

Program switching method and device
Technical Field
The present application relates to the field of electrical technologies, and in particular, to a program switching method and apparatus.
Background
The current technology for realizing the fast switching station for the live program is realized by 3 parallel hardware decoders (decoders), wherein the 3 hardware decoders work simultaneously, 1 decoding and playing the previous program, 1 decoding and playing the currently played program, and 1 decoding and playing the next program. Wherein the program is such as center 1, center 2, center 3, center 4, etc. If on the program list of the television terminal, the display order is respectively: center 1, center 2, center 3, center 4,; while the user is currently looking at the center 3, then the "previous program" designation is center 2 and the "next program" designation is center 4.
When receiving a request of switching the next (or the last) program from a user, the television directly outputs the decoded output image of the next (or the last) hardware decoder. This enables fast switching table (FCC) functions by means of a parallel operation of multiple hardware decoders. However, it is apparent that this implementation technique requires 3-way hardware decoders to operate simultaneously, is costly in hardware, and consumes relatively large amounts of power.
Disclosure of Invention
The embodiment of the application provides a program switching method and a device, which are used for realizing rapid program switching and reducing hardware cost and terminal power consumption required by program switching, thereby saving resources.
The program switching method provided by the embodiment of the application comprises the following steps:
determining a switched target program according to a user instruction;
the audio data and the video data of the target program which are stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder;
and outputting the image decoded by the video data hardware decoder and the sound decoded by the audio data hardware decoder.
By the method, audio data and video data of the target program stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder; and outputting the image decoded by the video data hardware decoder and the sound decoded by the audio data hardware decoder, so that quick program switching can be realized, and the hardware cost and the terminal power consumption required by the program switching are reduced, thereby saving resources.
Optionally, the target program belongs to a program to be switched, and the method further includes the step of pre-storing audio data and video data of the program to be switched as follows:
acquiring information of a program to be switched;
and filtering the program to be switched according to the information of the program to be switched to obtain the audio data and the video data of the program to be switched.
Optionally, the method further comprises:
and judging whether the frequency locking of the program to be switched is needed according to the information of the program to be switched.
Thus, time required for frequency locking can be saved.
Optionally, the program to be switched includes: the last program and the next program of the currently played program in the preset program management list.
Optionally, after obtaining the audio data and the video data of the program to be switched, the method further includes:
and sending the audio data and the video data of the program to be switched to a quick switching and playing preprocessing module corresponding to the program to be switched, and setting the working state of the quick switching and playing preprocessing module to be a quick switching preprocessing state.
Optionally, the audio data and the video data of the target program stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder, which specifically include:
and respectively transmitting the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program to an audio data hardware decoder and a video data hardware decoder.
Optionally, after the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program are respectively sent to the audio data hardware decoder and the video data hardware decoder, the method further includes:
setting the working state of the fast switching and playing preprocessing module corresponding to the target program as a playing state;
and respectively and directly transmitting the video data and the audio data of the program corresponding to the fast switching and playing preprocessing module in the playing state to a video data hardware decoder and an audio data hardware decoder for decoding and outputting.
In the application, each program to be switched is provided with two working states, namely a fast switching pretreatment state and a playing state, which correspond to each other; in the playing state, all live broadcast real-time data are directly poured into the audio/video data decoder without preprocessing, so that the switching between the preprocessing working state and the playing working state is simple and easy.
And it can be seen that, in the embodiment of the present application, based on the switching of the working states of the fast switching and playing preprocessing modules corresponding to each program to be switched, each program can be multiplexed with one audio/video data hardware decoder, so that the program switching can be realized only by using one audio/video data decoder. This can simply extend the fast switching preprocessing for many programs so that the programs can be switched fast by switching keys or number keys up and down by the remote control program.
Alternatively, the process may be carried out in a single-stage,
the audio data of the program to be switched comprises the audio data synchronized with the latest frame image of the program to be switched;
the video data of the program to be switched comprises I frame data of the latest frame image of the program to be switched, and B frame data and P frame data after the I frame data.
Since only one frame I frame is stored, followed by B, P frames, which are not decoded, only a small amount of storage space is needed, saving storage space.
And only one frame of audio packet (namely the latest audio packet) data corresponding to the latest video frame of the program to be switched is stored, so that the latest and real-time sound is ensured, the audio and video synchronization is also ensured, and the time required by the audio and video synchronization can be further saved.
Another embodiment of the present application provides a program switching apparatus, which includes a memory for storing program instructions and a processor for calling the program instructions stored in the memory and executing any one of the methods according to the obtained program.
Another embodiment of the present application provides a computer storage medium storing computer-executable instructions for causing the computer to perform any of the methods described above.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of time required for each operation phase of a switching station according to an embodiment of the present application;
fig. 2 is a schematic diagram of an internal flow of a program fast switching and playing preprocessing module according to an embodiment of the present application;
fig. 3 is a schematic flow chart of a program switching method according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a program switching device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments, but not all embodiments of the present application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
The embodiment of the application provides a program switching method and a program switching device, which are used for reducing the hardware cost required by program switching, greatly reducing the power consumption of a terminal and saving resources.
The method and the device are based on the same application, and because the principles of solving the problems by the method and the device are similar, the implementation of the device and the method can be referred to each other, and the repetition is not repeated.
Various embodiments of the application are described in detail below with reference to the drawings attached to the specification. It should be noted that, the display sequence of the embodiments of the present application only represents the sequence of the embodiments, and does not represent the advantages or disadvantages of the technical solutions provided by the embodiments.
The device provided by the embodiment of the application can be any type of terminal product, for example, a television, a set top box, a mobile phone, a computer and the like.
For example, for a set-top box product, the most common functional operation is for the user to press a program up-down key to switch stations. Typically, the switching stage speed is controlled within 500ms so that the user operating experience is at an extreme level. This can perform the function of a handoff station within 500ms, which we call a fast handoff station (FCC) function.
The embodiment of the application aims at how to effectively realize the fast switching table (FCC) function under a single-channel hardware decoder aiming at the live program, analyzes the time influence factors of each stage of the switching table, and reduces the hardware cost realized by the fast switching table (FCC) function through a series of special technical processes, thereby realizing the purpose of reducing the working power consumption, providing efficiency, saving time and finally achieving the purpose of saving resources.
Specifically, the embodiment of the application aims at realizing the effective fast switching table (FCC) function of the live program under the single-channel hardware decoder, analyzes the time influence factors of each stage of the switching table, and effectively realizes the fast switching table (FCC) function under the single-channel hardware decoder through a series of technical steps of software identification, annular cache of the latest I, B and P frame data of the multi-channel program, audio and video presynchronization storage and discarding and the like. To reduce the hardware cost of a fast switching table (FCC) implementation and to reduce operating power consumption. The technology also has better platform applicability.
First, time-related factors of each stage of the switching station are analyzed:
for example, referring to fig. 1, the course of action phase times for a typical switching station includes the following:
1. basic information of a switching target program, such as frequency, audio and video identification code transmission packet identification (Packet Identifier, PID) and the like, is found;
the time spent in this process: in the millisecond range, i.e. substantially less time consuming.
2. Judging whether the program to be switched in the program list (namely a previous program and a next program of the currently played program) is in the same frequency as the currently played program, and if not, locking the frequency; if so, the program to be switched and the program currently played are on the same frequency, and frequency locking is not needed again.
The time spent in this process: 200ms level;
for example, regarding the frequency locking, 1, 2, 3, 4, 5, … … stations are taken as examples of the program center; frequency locking means locking a frequency such that a signal at that frequency can be fed in.
A frequency bandwidth of, for example, 8M, typically contains 4 to 8 programs; for example, a frequency of 350Mhz, indicating a center frequency of 350Mhz, may contain a center 1-4 programs; whereas 358Mhz may contain a central 5-8 programs;
if the user is currently looking at the central 1 station, then the frequency of machine locking must be 350Mhz; if one wants to see the central 6 stations, one must first lock on the 358Mhz frequency.
3. Setting audio and video PID parameters and filtering, and waiting for the arrival of a first I frame after switching stations (namely switching programs currently played);
the time spent in this process: on the order of 400-1500ms, depending on the program I frame interval, and the contingency of the switching station occasions.
4. Synchronizing audio and video;
the time spent in this process: 300-800 ms;
5. decoding audio and video data by hardware;
the time spent in this process: 20ms level;
6. the decoded image and sound are finally output and presented;
the time spent in this process: in the order of 10 ms.
In video coding, for efficient compression and transmission of data, the changing image codes are compressed into I, B, P frame data. The frames of different classes are roughly the following:
i frame is characterized by that it is a full-frame compression coding frame. The method carries out compression coding and transmission on full-frame image information; the complete image can be reconstructed only by using the data of the I frame during decoding;
p frame, B frame, I frame is taken as reference frame, and the dynamic change part different from the I frame (background) is predicted and encoded. Briefly, it only contains the image content that has changed relative to the previous frame for encoding. Is local and describes only the content of the variation.
From the above analysis, the process that takes a long time mainly includes: frequency locking, filtering data, waiting for I frame arrival and audio/video synchronization.
Based on the above analysis, referring to fig. 2, the overall implementation flow of the technical solution provided in the embodiment of the present application includes the following steps:
1. and establishing a program management list.
Wherein the program order in the program management list is consistent with the program order seen by the user on the User Interface (UI);
2. when a user watches a currently played program, the background executes the following steps:
2-A: acquiring next program information and last program information of a currently played program in a program management list;
wherein the next program information comprises the frequency, audio-video PID and the like of the next program; the last program information comprises the frequency, audio-video PID and the like of the last program;
2-B: if the program to be switched (i.e. the next program and the last program) and the currently played program are not in the same frequency point, locking the frequency point of the program to be switched by a Tuner; the method specifically comprises the following steps:
the next program information of the currently played program is taken out, and whether the next program and the currently played program are in the same frequency point or not is judged; if not, other tuners are used to lock the frequency point of the 'next' program.
The information of the last program of the currently played program is taken out, and whether the last program and the currently played program are in the same frequency point or not is judged; if not, other tuners are used for locking the frequency point of the last program.
2-C: continuously filtering audio and video data of the programs to be switched (namely the next program and the last program) respectively, transmitting the data filtered by the programs to a fast switching and playing preprocessing module respectively, and setting the working state of the fast switching and playing preprocessing module to be a fast switching preprocessing state;
wherein, the audio and video data of each program has different PIDs; audio data and video data for each program can be filtered out by this PID. Filtering the obtained data, including audio data and video data of each program; a program contains a set of audio data and a set of video data. Step 2-C specifically comprises:
continuously filtering audio and video data of the last program, and transmitting the audio data and the video data obtained by filtering the last program to a fast switching and playing preprocessing module corresponding to the last program; setting the working state of the fast switching and playing preprocessing module as a fast switching preprocessing state;
continuously filtering audio and video data of the next program, and transmitting the audio data and the video data obtained by filtering the next program to a fast switching and playing preprocessing module corresponding to the next program; and the working state of the fast switching and playing preprocessing module is set to be a fast switching preprocessing state.
Wherein each program contains its own set of audio data and set of video data. For a program, there is its own independent fast switching and playback preprocessing module to process the video and audio of the program.
It is also known from the above steps 2-a,2-B that 3 programs need to be processed simultaneously, so that there are 3 different fast switching and playing preprocessing modules corresponding to each other.
3. When the user presses the up-down key of the remote controller to switch the station, the program index of the target program (i.e. the last program or the next program) to be switched is determined.
The target program to be switched is one program of the programs to be switched.
4. And according to the program index of the target program, the stored image I frame, each B frame and each P frame and an audio frame packet synchronous with the last (or latest) frame image are taken out from the corresponding fast switching and playing preprocessing module of the target program.
5. And respectively filling the image I frame, each B frame and each P frame of the target program into a video data hardware decoder, and filling the audio frame data synchronized with the image of the last frame into an audio data hardware decoder.
Wherein, since the audio frame synchronized with the last frame image is the last frame audio packet and the new audio packet coming thereafter is continuous in time, the sound can be made to sound continuous without jumping.
6. And outputting the image of the target program decoded by the video data hardware decoder and the sound of the target program decoded by the audio data hardware decoder.
At this time, the target program has been switched to the currently played program.
7. The working state of the fast switching and playing preprocessing module for switching the currently played program is a playing state, so that the image and sound data of the currently played program are not preprocessed, and are continuously and directly sent to the video data hardware decoder and the audio data hardware decoder to directly decode and output the image and sound.
Wherein the pretreatment, i.e. the step in the large wire in fig. 2, comprises the steps 3-6.
In summary, the technical solution provided by the embodiment of the present application includes the following matters:
1. and when watching the currently played program, the background locks the frequency point of the next and/or the last program in advance, and filters data to enter a program fast switching preprocessing module. Here, about 200ms of time required for frequency locking can be saved.
2. In a program quick switching preprocessing module of one path of program, under the working state of quick switching:
2-1), video processing buffering only the I-frame of the latest one frame, and the subsequent B, P frames; because, for live programming, the user needs to see the latest and most real-time image after switching the station. Thus, after the user cuts the platform, the user can be ensured to see the latest real-time image. The function of storing B and P frames is to send I frames, each B and P frame into video data hardware decoder after user switches the station, so that decoded images are overlapped, mosaic will not appear, and the user sees the latest real-time image. And only one frame I frame is stored followed by B, P frames of these video undecoded compressed frames, requiring only a small amount of memory space.
Here, the time required to wait for an I frame can be saved by about 400-1500 ms.
2-2), the audio processing stores only one frame of audio packet data of the program to be switched (i.e. the program to be played next, i.e. the program immediately preceding or next to the currently played program in the program list). By continuously comparing the time stamp of the latest video frame of the program to be switched with the time stamp of the latest video frame of the program to be switched, only one frame of audio packet (namely the latest audio packet) data corresponding to the latest video frame synchronized with the program to be switched is stored, so that the latest and latest real-time sound is ensured, and the audio and video synchronization is also ensured. And only one frame of audio is stored without decoding the compressed frame, only little storage space is needed.
The time of 300-800ms required by audio and video synchronization can be saved.
3. The fast switching and playing preprocessing module has two working states, namely a fast switching preprocessing state and a playing state; in the playing state, all live broadcast real-time data are directly poured into the corresponding audio and video data decoder without preprocessing. This makes it simple and easy to switch the preprocessing state and the play state quickly.
4. The video and audio preprocessing algorithm of one path of program is simple, the related data buffer area is few, and an audio and video data hardware decoder is multiplexed. This can simply extend the fast switching preprocessing for many programs so that the programs can be switched fast by switching keys or number keys up and down by the remote control program.
In summary, referring to fig. 3, a program switching method provided by an embodiment of the present application includes:
s101, determining a switched target program according to a user instruction;
s102, respectively sending the audio data and the video data of the target program stored in advance to an audio data hardware decoder and a video data hardware decoder;
s103, outputting the image decoded by the video data hardware decoder and the sound decoded by the audio data hardware decoder.
By the method, audio data and video data of the target program stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder; and outputting the image decoded by the video data hardware decoder and the sound decoded by the audio data hardware decoder, so that quick program switching can be realized, and the hardware cost and the terminal power consumption required by the program switching are reduced, thereby saving resources.
Optionally, the target program belongs to a program to be switched, and the method further includes the step of pre-storing audio data and video data of the program to be switched as follows:
acquiring information of a program to be switched;
and filtering the program to be switched according to the information of the program to be switched to obtain the audio data and the video data of the program to be switched.
Optionally, the method further comprises:
and judging whether the frequency locking of the program to be switched is needed according to the information of the program to be switched.
Thus, time required for frequency locking can be saved.
Optionally, the program to be switched includes: the last program and the next program of the currently played program in the preset program management list.
Optionally, after obtaining the audio data and the video data of the program to be switched, the method further includes:
and sending the audio data and the video data of the program to be switched to a quick switching and playing preprocessing module corresponding to the program to be switched, and setting the working state of the quick switching and playing preprocessing module to be a quick switching preprocessing state.
Optionally, the audio data and the video data of the target program stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder, which specifically include:
and respectively transmitting the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program to an audio data hardware decoder and a video data hardware decoder.
Optionally, after the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program are respectively sent to the audio data hardware decoder and the video data hardware decoder, the method further includes:
setting the working state of the fast switching and playing preprocessing module corresponding to the target program as a playing state;
and respectively and directly transmitting the video data and the audio data of the program corresponding to the fast switching and playing preprocessing module in the playing state to a video data hardware decoder and an audio data hardware decoder for decoding and outputting.
In the application, each program to be switched is provided with two working states, namely a fast switching pretreatment state and a playing state, which correspond to each other; in the playing state, all live broadcast real-time data are directly poured into the audio/video data decoder without preprocessing, so that the switching between the preprocessing working state and the playing working state is simple and easy.
And it can be seen that, in the embodiment of the present application, based on the switching of the working states of the fast switching and playing preprocessing modules corresponding to each program to be switched, each program can be multiplexed with one audio/video data hardware decoder, so that the program switching can be realized only by using one audio/video data decoder. This can simply extend the fast switching preprocessing for many programs so that the programs can be switched fast by switching keys or number keys up and down by the remote control program.
Alternatively, the process may be carried out in a single-stage,
the audio data of the program to be switched comprises the audio data synchronized with the latest frame image of the program to be switched;
the video data of the program to be switched comprises I frame data of the latest frame image of the program to be switched, and B frame data and P frame data after the I frame data.
Since only one frame I frame is stored, followed by B, P frames, which are not decoded, only a small amount of storage space is needed, saving storage space.
And only one frame of audio packet (namely the latest audio packet) data corresponding to the latest video frame of the program to be switched is stored, so that the latest and real-time sound is ensured, the audio and video synchronization is also ensured, and the time required by the audio and video synchronization can be further saved.
Referring to fig. 4, another embodiment of the present application provides a program switching apparatus, which includes a memory 11 and a processor 12, wherein the memory 11 is used for storing program instructions, and the processor 12 is used for calling the program instructions stored in the memory 11, and executing according to the obtained program:
determining a switched target program according to a user instruction;
the audio data and the video data of the target program which are stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder;
and outputting the image decoded by the video data hardware decoder and the sound decoded by the audio data hardware decoder.
Optionally, the target program belongs to a program to be switched, and the processor 12 is further configured to call the program instructions stored in the memory 11, and execute the following steps of pre-storing audio data and video data of the program to be switched according to the obtained program:
acquiring information of a program to be switched;
and filtering the program to be switched according to the information of the program to be switched to obtain the audio data and the video data of the program to be switched.
Optionally, the processor 12 is further configured to call the program instructions stored in the memory 11, and execute according to the obtained program:
and judging whether the frequency locking of the program to be switched is needed according to the information of the program to be switched.
Optionally, the program to be switched includes: the last program and the next program of the currently played program in the preset program management list.
Optionally, after obtaining the audio data and the video data of the program to be switched, the processor 12 is further configured to call the program instructions stored in the memory 11, and execute according to the obtained program:
and sending the audio data and the video data of the program to be switched to a quick switching and playing preprocessing module corresponding to the program to be switched, and setting the working state of the quick switching and playing preprocessing module to be a quick switching preprocessing state.
Optionally, the audio data and the video data of the target program stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder, which specifically include:
and respectively transmitting the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program to an audio data hardware decoder and a video data hardware decoder.
Optionally, after sending the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program to the audio data hardware decoder and the video data hardware decoder, respectively, the processor 12 is further configured to invoke the program instruction stored in the memory 11, and execute according to the obtained program:
setting the working state of the fast switching and playing preprocessing module corresponding to the target program as a playing state;
and respectively and directly transmitting the video data and the audio data of the program corresponding to the fast switching and playing preprocessing module in the playing state to a video data hardware decoder and an audio data hardware decoder for decoding and outputting.
Alternatively, the process may be carried out in a single-stage,
the audio data of the program to be switched comprises the audio data synchronized with the latest frame image of the program to be switched;
the video data of the program to be switched comprises I frame data of the latest frame image of the program to be switched, and B frame data and P frame data after the I frame data.
It should be noted that, in the embodiment of the present application, the division of the units is schematic, which is merely a logic function division, and other division manners may be implemented in actual practice. In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The device provided by the embodiment of the application can be a desktop computer, a portable computer, a smart phone, a tablet personal computer, a mobile phone, a television, a set top box, a personal digital assistant (Personal Digital Assistant, PDA) and the like. The apparatus may include a central processing unit (Center Processing Unit, CPU), a memory, an input/output device, etc., the input device may include a keyboard, a mouse, a touch screen, a remote controller, etc., and the output device may include a display device such as a liquid crystal display (Liquid Crystal Display, LCD), a Cathode Ray Tube (CRT), etc.
The memory may include Read Only Memory (ROM) and Random Access Memory (RAM) and provide the processor with program instructions and data stored in the memory. In the embodiment of the present application, the memory may be used to store a program of any of the methods provided in the embodiment of the present application.
The processor is used for executing any one of the methods provided by the embodiment of the application according to the obtained program instructions by calling the program instructions stored in the memory.
An embodiment of the present application provides a computer storage medium storing computer program instructions for use in an apparatus provided in the embodiment of the present application, where the computer storage medium includes a program for executing any one of the methods provided in the embodiment of the present application.
The computer storage media may be any available media or data storage device that can be accessed by a computer, including, but not limited to, magnetic storage (e.g., floppy disks, hard disks, magnetic tape, magneto-optical disks (MOs), etc.), optical storage (e.g., CD, DVD, BD, HVD, etc.), and semiconductor storage (e.g., ROM, EPROM, EEPROM, nonvolatile storage (NAND FLASH), solid State Disk (SSD)), etc.
The above-described method process flow may be implemented in a software program, which may be stored in a storage medium, and which performs the above-described method steps when the stored software program is called.
In summary, according to the technical scheme provided by the embodiment of the application, aiming at how to realize the FCC function under the single-channel hardware decoder, the time influencing elements of each stage of the switching station are analyzed, and the FCC function is realized through the following flow:
1. when watching the currently played program, the background locks frequency in advance a plurality of possible switching target programs (i.e. programs to be switched) so as to save the frequency locking time during switching.
2. And the video data is not decoded through the fast switching and playing preprocessing module, the I frame, the B frame and the P frame are identified by software, and only the I frame storing the latest frame of image, the B frame and the P frame after the I frame of the latest frame of image are refreshed. Thus, the time required to wait for the I frame of the target program is saved.
3. The audio data of the program to be switched is not decoded by the fast switching and playing preprocessing module, and only one frame of audio data synchronous with the current latest video frame of the program to be switched is refreshed and stored according to the time stamp. Therefore, the audio and video synchronization time of the program waiting to be switched is saved.
4. The fast switching and playing preprocessing module is used for fast switching preprocessing and normal playing processing.
Therefore, the embodiment of the application pre-identifies the category and the characteristic of the audio/video data packet by using software, and not only saves time, but also realizes the FCC function under a single-channel hardware decoder by a special fast switching and playing preprocessing module. The method has the obvious beneficial effects of low hardware cost, low power consumption, easy expansion, high efficiency and the like.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, magnetic disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present application without departing from the spirit or scope of the application. Thus, it is intended that the present application also include such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.

Claims (5)

1. A program switching method, the method comprising:
determining a switched target program according to a user instruction;
the audio data and the video data of the target program which are stored in advance are respectively sent to an audio data hardware decoder and a video data hardware decoder;
outputting an image decoded by the video data hardware decoder and a sound decoded by the audio data hardware decoder;
the method further comprises the following step of pre-storing audio data and video data of the program to be switched:
acquiring information of a program to be switched;
filtering the program to be switched according to the information of the program to be switched to obtain audio data and video data of the program to be switched; the audio data of the program to be switched comprises the audio data synchronized with the latest frame image of the program to be switched; the video data of the program to be switched comprises I frame data of the latest frame image of the program to be switched, and B frame data and P frame data after the I frame data;
transmitting the audio data and the video data of the program to be switched to a quick switching and playing preprocessing module corresponding to the program to be switched, and setting the working state of the quick switching and playing preprocessing module to be a quick switching preprocessing state;
the method specifically comprises the steps of respectively sending the audio data and the video data of the target program stored in advance to an audio data hardware decoder and a video data hardware decoder, wherein the method specifically comprises the following steps:
the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program are respectively sent to an audio data hardware decoder and a video data hardware decoder;
the method further comprises the steps of after the audio data and the video data in the fast switching and playing preprocessing module corresponding to the target program are respectively sent to the audio data hardware decoder and the video data hardware decoder:
setting the working state of the fast switching and playing preprocessing module corresponding to the target program as a playing state;
and respectively and directly transmitting the video data and the audio data of the program corresponding to the fast switching and playing preprocessing module in the playing state to a video data hardware decoder and an audio data hardware decoder for decoding and outputting.
2. The method according to claim 1, characterized in that the method further comprises:
and judging whether the frequency locking of the program to be switched is needed according to the information of the program to be switched.
3. The method according to claim 1 or 2, wherein the program to be switched comprises: the last program and the next program of the currently played program in the preset program management list.
4. A program switching apparatus, comprising:
a memory for storing program instructions;
a processor for invoking program instructions stored in said memory and for performing the method according to any of claims 1 to 3 in accordance with the obtained program.
5. A computer storage medium storing computer executable instructions for causing the computer to perform the method of any one of claims 1 to 3.
CN201911252282.3A 2019-12-09 2019-12-09 Program switching method and device Active CN113038150B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911252282.3A CN113038150B (en) 2019-12-09 2019-12-09 Program switching method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911252282.3A CN113038150B (en) 2019-12-09 2019-12-09 Program switching method and device

Publications (2)

Publication Number Publication Date
CN113038150A CN113038150A (en) 2021-06-25
CN113038150B true CN113038150B (en) 2023-09-12

Family

ID=76452002

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911252282.3A Active CN113038150B (en) 2019-12-09 2019-12-09 Program switching method and device

Country Status (1)

Country Link
CN (1) CN113038150B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114866823B (en) * 2022-04-02 2023-01-06 北京广播电视台 Ultra-high definition video broadcasting system and method with logic linkage function

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102883208A (en) * 2012-09-27 2013-01-16 深圳市九洲电器有限公司 Method and system for quickly changing programs
WO2015116164A1 (en) * 2014-01-31 2015-08-06 Thomson Licensing Method and apparatus for synchronizing playbacks at two electronic devices
WO2016045209A1 (en) * 2014-09-28 2016-03-31 深圳国微技术有限公司 Program switching method, device and terminal
CN105898552A (en) * 2016-06-20 2016-08-24 深圳创维数字技术有限公司 Method and device for playing video data
CN106658162A (en) * 2015-11-03 2017-05-10 中兴通讯股份有限公司 Channel changing method, channel changing device and set-top box
CN107645671A (en) * 2016-07-22 2018-01-30 南京中兴新软件有限责任公司 Program switching method and device
CN108289240A (en) * 2018-01-30 2018-07-17 深圳创维数字技术有限公司 Method, terminal and the computer-readable medium of DTV fast channel switching
CN108566526A (en) * 2018-04-16 2018-09-21 青岛海信宽带多媒体技术有限公司 A kind of program broadcasting method, device and set-top box

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101799278B1 (en) * 2014-12-05 2017-11-20 엘지전자 주식회사 Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
US10645454B2 (en) * 2016-06-22 2020-05-05 Electronics And Telecommunications Research Institute Apparatus for transmitting and receiving dynamic multi-mode service and method for providing the same

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102883208A (en) * 2012-09-27 2013-01-16 深圳市九洲电器有限公司 Method and system for quickly changing programs
WO2015116164A1 (en) * 2014-01-31 2015-08-06 Thomson Licensing Method and apparatus for synchronizing playbacks at two electronic devices
WO2016045209A1 (en) * 2014-09-28 2016-03-31 深圳国微技术有限公司 Program switching method, device and terminal
CN106658162A (en) * 2015-11-03 2017-05-10 中兴通讯股份有限公司 Channel changing method, channel changing device and set-top box
CN105898552A (en) * 2016-06-20 2016-08-24 深圳创维数字技术有限公司 Method and device for playing video data
WO2017219870A1 (en) * 2016-06-20 2017-12-28 深圳创维数字技术有限公司 Method and device for playing video data
CN107645671A (en) * 2016-07-22 2018-01-30 南京中兴新软件有限责任公司 Program switching method and device
CN108289240A (en) * 2018-01-30 2018-07-17 深圳创维数字技术有限公司 Method, terminal and the computer-readable medium of DTV fast channel switching
CN108566526A (en) * 2018-04-16 2018-09-21 青岛海信宽带多媒体技术有限公司 A kind of program broadcasting method, device and set-top box

Also Published As

Publication number Publication date
CN113038150A (en) 2021-06-25

Similar Documents

Publication Publication Date Title
CN109168078B (en) Video definition switching method and device
RU2666233C1 (en) Method and device for determination of reference images for external prediction
CN105979347A (en) Video play method and device
CN112087633A (en) Video decoding method, device and storage medium
US20180103296A1 (en) Method and apparatus for video playing processing and television
CN102792710B (en) For playing equipment and the method for media content data
US9531983B2 (en) Decoding interdependent frames of a video for display
CN107517400B (en) Streaming media playing method and streaming media player
CN1271835C (en) Recording regenerative method and device for motion picture data
CN101277450A (en) Method and apparatus for switching program
CN101267545A (en) A program switching method and device
CN111836076A (en) Video resolution switching method and device and electronic equipment
CN109348285A (en) Channel switching method and device
KR100703529B1 (en) Apparatus and method for receiving images of multiple channel in receiving digital multimedia broadcasting
CN113225585A (en) Video definition switching method and device, electronic equipment and storage medium
CN113038150B (en) Program switching method and device
CN103391467A (en) Method for achieving synchronization of decoding and displaying of audio and video of network set-top box
CN1960450B (en) Method and device for switching channels of multimedia broadcast
KR20130024571A (en) Broadcast receiving device and method
CN104994406B (en) A kind of video editing method and device based on Silverlight plug-in units
US20180234724A1 (en) Video bitstream processing for enabling tune-in
CN115297331A (en) Video data processing method, device, equipment and system
US10264274B2 (en) Coding of video and audio with initialization fragments
JP3393907B2 (en) Video decoding device
CN114286123A (en) Live broadcast method and device of television program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant