CN105992055B - video decoding method and device - Google Patents

video decoding method and device Download PDF

Info

Publication number
CN105992055B
CN105992055B CN201510046323.9A CN201510046323A CN105992055B CN 105992055 B CN105992055 B CN 105992055B CN 201510046323 A CN201510046323 A CN 201510046323A CN 105992055 B CN105992055 B CN 105992055B
Authority
CN
China
Prior art keywords
terminal
decoding
video
information
terminal information
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
CN201510046323.9A
Other languages
Chinese (zh)
Other versions
CN105992055A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201510046323.9A priority Critical patent/CN105992055B/en
Publication of CN105992055A publication Critical patent/CN105992055A/en
Application granted granted Critical
Publication of CN105992055B publication Critical patent/CN105992055B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The invention discloses a video decoding method and device, and belongs to the field of internet communication. The method comprises the following steps: acquiring terminal information contained in each decoding mode inquiry message received historically; constructing a white list according to the acquired terminal information, wherein the white list comprises the terminal information of a terminal capable of decoding a video in a hardware decoding mode; when a decoding mode query message sent by a terminal is received, acquiring the decoding mode of the terminal according to the terminal information of the terminal and the white list; and sending the decoding mode to the terminal, so that the terminal performs video decoding according to the decoding mode. The device comprises: the device comprises a first acquisition module, a construction module, a second acquisition module and a sending module. The invention can avoid the video playing incapability caused by the decoding failure of the terminal.

Description

Video decoding method and device
Technical Field
The present invention relates to the field of internet communications, and in particular, to a method and an apparatus for video decoding.
Background
with the development of mobile terminals, the functions of the mobile terminals are increasing, for example, most of the current mobile terminals have the functions of downloading and playing videos, and after the videos are downloaded by the mobile terminals, the videos need to be decoded first and then played.
Currently, a mobile terminal can decode a video in the following manner: the mobile terminal comprises a decoding chip, and after the mobile terminal downloads the video, the downloaded video can be decoded through the decoding chip.
In the process of implementing the invention, the inventor finds that the prior art has at least the following problems:
at present, the decoding complexity of videos in video websites is higher and higher, and the performance of decoding chips of many mobile terminals is lower, so that the videos with higher decoding complexity cannot be decoded, and the videos cannot be played.
disclosure of Invention
In order to solve the problems of the prior art, the invention provides a method and a device for video decoding. The technical scheme is as follows:
a method of video decoding, the method comprising:
Acquiring terminal information contained in each decoding mode inquiry message received historically;
Constructing a white list according to the acquired terminal information, wherein the white list comprises the terminal information of a terminal capable of decoding a video in a hardware decoding mode;
When a decoding mode query message sent by a terminal is received, acquiring the decoding mode of the terminal according to the terminal information of the terminal and the white list;
and sending the decoding mode to the terminal, so that the terminal performs video decoding according to the decoding mode.
A device of video decoding, the device comprising:
The first acquisition module is used for acquiring terminal information contained in each decoding mode inquiry message received historically;
a construction module, configured to construct a white list according to the obtained terminal information, where the white list includes terminal information of a terminal that can decode a video in a hardware decoding manner;
the second acquisition module is used for acquiring the decoding mode of the terminal according to the terminal information of the terminal and the white list when receiving a decoding mode query message sent by the terminal;
And the sending module is used for sending the decoding mode to the terminal so that the terminal carries out video decoding according to the decoding mode.
In the embodiment of the invention, when a decoding mode query message sent by a terminal is received, the decoding mode of the terminal is obtained according to the terminal information and the white list of the terminal, so that the terminal decodes according to the decoding mode, and the video cannot be played due to the decoding failure of the terminal can be avoided; in addition, a white list is constructed according to the terminal information contained in each decoding mode inquiry message received in history, so that the constructed white list is the terminal information of the terminal with higher current user use frequency.
drawings
fig. 1 is a flowchart of a video decoding method according to embodiment 1 of the present invention;
Fig. 2 is a flowchart of a video decoding method according to embodiment 2 of the present invention;
Fig. 3 is a flowchart of a video decoding method according to embodiment 3 of the present invention;
Fig. 4 is a schematic structural diagram of an apparatus for video decoding according to embodiment 4 of the present invention;
fig. 5 is a schematic structural diagram of a server according to embodiment 5 of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
example 1
Referring to fig. 1, an embodiment of the present invention provides a method for video decoding, including:
Step 101: and acquiring terminal information contained in each decoding mode inquiry message received in history.
Step 102: and constructing a white list according to the acquired terminal information, wherein the white list comprises the terminal information of the terminal capable of decoding the video in a hardware decoding mode.
Step 103: and when receiving a decoding mode query message sent by the terminal, acquiring the decoding mode of the terminal according to the terminal information and the white list of the terminal.
Step 104: and sending the decoding mode to the terminal, so that the terminal performs video decoding according to the decoding mode.
in the embodiment of the invention, when a decoding mode query message sent by a terminal is received, the decoding mode of the terminal is obtained according to the terminal information and the white list of the terminal, so that the terminal decodes according to the decoding mode, and the video cannot be played due to the decoding failure of the terminal can be avoided; in addition, a white list is constructed according to the terminal information contained in each decoding mode inquiry message received in history, so that the constructed white list is the terminal information of the terminal with higher current user use frequency.
Example 2
Referring to fig. 2, an embodiment of the present invention provides a video decoding method, where an execution subject of the present invention may be a server, and the method includes:
Step 201: and acquiring terminal information contained in each decoding mode inquiry message received in history.
each user may install a client, which may be a browser or a player, etc., on the terminal that the user uses. When a user plays a new video which is not played by using the client, the terminal reads the terminal information of the user and sends a decoding mode query message containing the terminal information to the server. The server receives and stores the decoding mode query message, then determines a decoding mode according to the terminal information and sends the decoding mode to the terminal. And the terminal determines whether to decode the new video by using a decoding chip of the terminal or a video decoding algorithm stored in the terminal according to the decoding mode.
each decoding method query message stored in the server is each decoding method query message historically received by the server, so the step may be: and acquiring each decoding mode query message stored in the server.
The terminal information of the terminal at least comprises model information and operating system version information of the terminal. The model information of the terminal may be a model of the terminal, and the operating system version information of the terminal may be a version number of an operating system currently installed in the terminal.
Step 202: and counting the number corresponding to each kind of terminal information in the acquired terminal information, selecting the terminal information with the maximum number and preset numerical values, and forming an information set.
Since the terminal sends the decoding mode query message containing the terminal information when the user plays a new video each time, the number corresponding to a certain terminal information is the number of times that the terminal corresponding to the terminal information is used by each user, and thus the terminal corresponding to each terminal information in the information set is the terminal with the maximum frequency of use by the user.
Step 203: and testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set.
The preset video set comprises a plurality of videos with different decoding complexity. And respectively purchasing a terminal corresponding to each terminal information by a technician according to each terminal information in the information set. For each purchased terminal, the terminal uses a hardware decoding mode to decode each video in the video set respectively to obtain successfully decoded videos, selects the maximum decoding complexity from the decoding complexities corresponding to the successfully decoded videos, and determines the selected decoding complexity as the decoding complexity corresponding to the terminal information of the terminal.
the terminal comprises a hardware decoding mode and a software decoding mode, wherein the hardware decoding mode refers to that the terminal decodes a video through a decoding chip which the terminal comprises; the software decoding mode means that the terminal decodes the video through a video decoding algorithm included in the terminal.
There are many decoding chips, about twenty decoding chips exist, each decoding chip supports different decoding complexity, for each terminal, when the terminal is tested through a video set, if the decoding complexity supported by the decoding chip included in the terminal is higher, the video successfully decoded by using the hardware decoding mode of the terminal is more, and if the decoding complexity supported by the decoding chip included in the terminal is lower, the video successfully decoded by using the hardware decoding mode of the terminal is less.
The video in the preset video set is acquired by the server in advance, and the acquisition process may be the following steps (1) to (4), including:
(1): and acquiring the decoding complexity of each video included by the video website, and selecting the video with the largest decoding complexity from each video included by the website.
Specifically, video parameters of each video are acquired from a video website, and the video parameters of the video may include configuration information, resolution, reference frames, length and width of video pictures, frame rate, and the like of the video; and calculating the decoding complexity of each video according to the video parameters of each video, and selecting the video with the maximum decoding complexity from each video included in the website. The video with the greatest decoding complexity may be one or more.
For the operation of acquiring the video parameters of each video from the video website, the operation may be:
And crawling a video file of each video included in the video website from the video website through a web crawler technology, and respectively extracting the video parameter of each video from the video file of each video.
(2): and intercepting a section of video with a video picture meeting the preset picture condition from the selected video.
a duration range can also be preset, and the duration of the intercepted video is located in the duration range.
The preset picture conditions may include that only two characters preferably have dialogs in the same scene, and the mouth shapes of the characters can be clearly seen, the dialogs are Chinese characters, subtitles of the dialogs are required in a film, the speaking rate is approximately the normal speaking rate, a section of the film comprises different scenes, such as indoor scenes, outdoor scenes, landscape scenes, walking scenes and the like, the picture color is rich but cannot be too beautiful, the picture cannot be a certain single color, and the color of the image area in the edge area of the scene has certain stripes.
(3): and converting the intercepted video into a plurality of videos with different decoding complexity, wherein the decoding complexity of each converted video is less than that of the intercepted video.
For example, assuming that the decoding complexity of the video with the largest decoding complexity is selected to be 9, the decoding complexity of the cut video is also 9, and the cut video is converted into a video with a decoding complexity of 8, a video of 7, a video of 6, a video of 5, a video of 4, a video of 3, a video of 2, and a video of 1, respectively.
(4): and forming a video set by the intercepted video and each video obtained by conversion.
for example, the cut video, the converted video with decoding complexity of 8, the video with decoding complexity of 7, the video with decoding complexity of 6, the video with decoding complexity of 5, the video with decoding complexity of 4, the video with decoding complexity of 3, the video with decoding complexity of 2, and the video with decoding complexity of 1 are combined into a video set.
step 204: and selecting the terminal information with the decoding complexity exceeding a preset threshold value from the information set, and forming a white list by the selected terminal information.
Each terminal information in the white list is the terminal information of the terminal capable of decoding the video by adopting a hardware decoding mode.
The decoding complexity of most videos in the video website is within a decoding complexity range, and few videos with the decoding complexity lower than the lower limit value of the decoding complexity range or videos with the decoding complexity higher than the upper limit value of the decoding complexity range. In this step, the preset threshold may be greater than or equal to the upper limit of the decoding complexity range, so that the terminal whose decoding complexity exceeds the preset threshold can successfully decode most of the videos in the video website, and thus the selected terminal information may be grouped into a white list.
For any user, the user may use the client installed on the terminal to play a new video, where the new video is a movie, a tv series, and the like that have not been played by the terminal, and it should be noted that, because the decoding complexity of each episode of the tv series is the same, when a certain episode of the tv series is played for the first time, the terminal needs to query the server for a decoding manner, and when other movies of the tv series other than the episode of the tv series are played, the terminal does not need to query the server for a decoding manner.
Before the terminal uses the client to play the new video, the terminal first obtains its own terminal information, sends a decoding mode query message containing the terminal information to the server to query the server for a decoding mode for decoding the new video, and after receiving the decoding mode query message, the server executes the following step 205.
Step 205: and when receiving a decoding mode query message sent by the terminal, acquiring the decoding mode of the terminal according to the terminal information and the white list of the terminal.
Specifically, when receiving a decoding mode query message sent by a terminal, extracting terminal information of the terminal from the decoding mode query message, and determining whether the terminal information of the terminal exists in a white list, if so, acquiring that the decoding mode of the terminal is a hardware decoding mode, and if not, acquiring that the decoding mode of the terminal is a software decoding mode.
Further, the received decoding method inquiry message is stored.
Step 206: and sending the decoding mode to a terminal, so that the terminal performs video decoding according to the decoding mode.
and the terminal receives the decoding mode sent by the server, if the decoding mode is a hardware decoding mode, the terminal uses a decoding chip included in the terminal to decode the video of the new video, and if the decoding mode is a software decoding mode, the terminal uses a video decoding algorithm included in the terminal to decode the video of the new video.
In the embodiment of the invention, when a decoding mode query message sent by a terminal is received, the decoding mode of the terminal is obtained according to the terminal information and the white list of the terminal, so that the terminal decodes according to the decoding mode, and the video cannot be played due to the decoding failure of the terminal can be avoided; in addition, a white list is constructed according to terminal information contained in each decoding mode inquiry message received historically, so that the constructed white list is the terminal information of the terminal with higher current user use frequency, the terminals corresponding to the terminal information in the white list use a hardware decoding mode to perform video decoding, and the decoding effect of the hardware decoding mode is superior to that of a software decoding mode, so that the current mainstream terminal can be ensured to perform video decoding by using the hardware decoding mode to obtain higher code determining effect.
example 3
Referring to fig. 3, an embodiment of the present invention provides a video decoding method, where an execution subject of the present invention may be a server, and the method includes:
step 301: and acquiring terminal information contained in each decoding mode inquiry message received in history.
Each user may install a client, which may be a browser or a player, etc., on the terminal that the user uses. When a user plays a new video which is not played by using the client, the terminal reads the terminal information of the user and sends a decoding mode query message containing the terminal information to the server. The server receives and stores the decoding mode query message, determines a decoding mode according to the terminal information and sends the decoding mode to the terminal. And the terminal determines whether to decode the new video by using a decoding chip of the terminal or a video decoding algorithm stored in the terminal according to the decoding mode.
the decoding mode query messages stored in the server are decoding mode query messages received by the server in history, so that the decoding mode query messages stored in the server can be acquired in the step.
the terminal information of the terminal at least comprises model information and operating system version information of the terminal. The model information of the terminal may be a model of the terminal, and the operating system version information of the terminal may be a version number of an operating system currently installed in the terminal.
Step 302: and counting the number corresponding to each kind of terminal information in the acquired terminal information, selecting the terminal information with the maximum number and preset numerical values, and forming an information set.
Since the terminal sends the decoding mode query message containing the terminal information when the user plays a new video each time, the number corresponding to a certain terminal information is the number of times that the terminal corresponding to the terminal information is used by each user, and thus the terminal corresponding to each terminal information in the information set is the terminal with the maximum frequency of use by the user.
Step 303: and acquiring the decoding chip model of the terminal corresponding to each terminal information in the information set.
specifically, according to model information included in each piece of terminal information in the information set, a decoding chip model of a terminal corresponding to each piece of terminal information is inquired from a preset website.
the preset website comprises information such as model information, operating system version information, decoding chip model and time-to-market information of various terminals which are currently on the market or are about to be on the market. For example, the terminal may be a mobile phone, and many websites currently appear to include model information, operating system version information, decoding chip model, time to market information, and the like of various mobile phones that are currently on the market and are about to come on the market.
Step 304: and removing the terminal information of the terminal with the decoding chip model as the preset model from the information set.
There are many decoding chips, about twenty decoding chips exist, each decoding chip supports different decoding complexity, and for each decoding chip, when decoding a video through the decoding chip, if the decoding complexity supported by the decoding chip is higher, the more the video successfully decoded by the decoding chip, and if the decoding complexity supported by the decoding chip is lower, the less the video successfully decoded by the decoding chip.
the decoding complexity supported by various decoding chips is known at present, and the preset model can be the model of the decoding chip with the decoding complexity smaller than a preset threshold.
step 305: and testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set.
The preset video set comprises a plurality of videos with different decoding complexity. And respectively purchasing a terminal corresponding to each terminal information by a technician according to each terminal information in the information set. For each purchased terminal, the terminal uses a hardware decoding mode to decode each video in the video set respectively to obtain successfully decoded videos, selects the maximum decoding complexity from the decoding complexities corresponding to the successfully decoded videos, and determines the selected decoding complexity as the decoding complexity corresponding to the terminal information of the terminal.
the terminal comprises a hardware decoding mode and a software decoding mode, wherein the hardware decoding mode refers to that the terminal decodes a video through a decoding chip which the terminal comprises; the software decoding mode means that the terminal decodes the video through a video decoding algorithm included in the terminal.
The video in the preset video set is acquired by the server in advance, and the acquisition process may be the following steps (1) to (4), including:
(1): and acquiring the decoding complexity of each video included by the video website, and selecting the video with the largest decoding complexity from each video included by the website.
Specifically, video parameters of each video are acquired from a video website, and the video parameters of the video may include configuration information, resolution, reference frames, length and width of video pictures, frame rate, and the like of the video; and calculating the decoding complexity of each video according to the video parameters of each video, and selecting the video with the maximum decoding complexity from each video included in the website. The video with the greatest decoding complexity may be one or more.
For the operation of acquiring the video parameters of each video from the video website, the operation may be:
and crawling a video file of each video included in the video website from the video website through a web crawler technology, and respectively extracting the video parameter of each video from the video file of each video.
(2): and intercepting a section of video with a video picture meeting the preset picture condition from the selected video.
a duration range can also be preset, and the duration of the intercepted video is located in the duration range.
The preset picture conditions may include that only two characters preferably have dialogs in the same scene, and the mouth shapes of the characters can be clearly seen, the dialogs are Chinese characters, subtitles of the dialogs are required in a film, the speaking rate is approximately the normal speaking rate, a section of the film comprises different scenes, such as indoor scenes, outdoor scenes, landscape scenes, walking scenes and the like, the picture color is rich but cannot be too beautiful, the picture cannot be a certain single color, and the color of the image area in the edge area of the scene has certain stripes.
(3): and converting the intercepted video into a plurality of videos with different decoding complexity, wherein the decoding complexity of each converted video is less than that of the intercepted video.
for example, assuming that the decoding complexity of the video with the largest decoding complexity is selected to be 9, the decoding complexity of the cut video is also 9, and the cut video is converted into a video with a decoding complexity of 8, a video of 7, a video of 6, a video of 5, a video of 4, a video of 3, a video of 2, and a video of 1, respectively.
(4): and forming a video set by the intercepted video and each video obtained by conversion.
For example, the cut video, the converted video with decoding complexity of 8, the video with decoding complexity of 7, the video with decoding complexity of 6, the video with decoding complexity of 5, the video with decoding complexity of 4, the video with decoding complexity of 3, the video with decoding complexity of 2, and the video with decoding complexity of 1 are combined into a video set.
step 306: and selecting the terminal information with the decoding complexity exceeding a preset threshold value from the information set, and forming a white list by the selected terminal information.
Each terminal information in the white list is the terminal information of the terminal capable of decoding the video by adopting a hardware decoding mode.
The decoding complexity of most videos in the video website is within a decoding complexity range, and few videos with the decoding complexity lower than the lower limit value of the decoding complexity range or videos with the decoding complexity higher than the upper limit value of the decoding complexity range. In this step, the preset threshold may be greater than or equal to the upper limit of the decoding complexity range, so that the terminals whose decoding complexity exceeds the preset threshold can successfully decode most of the videos in the video website, and thus the terminal information of the selected terminals may be grouped into a white list.
Since the decoding complexity supported by the decoding chip is less than the preset threshold, and the decoding complexity supported by the terminal including the decoding chip may also be less than the preset threshold, the model of the decoding chip whose decoding complexity is less than the preset threshold is determined as the preset model in step 304, and the terminal information of the terminal whose decoding chip model is the preset model is removed, so that the number of test terminals can be reduced, and the efficiency is improved.
Further, in the embodiment of the present invention, a time period closest to the current time and having a preset time length may also be obtained, the terminal information of the terminal whose time of market emergence information is in the time period and whose decoding chip model is other than the preset model is obtained from the preset website, and the obtained terminal information is added to the white list.
The preset model is a model of a decoding chip with decoding complexity smaller than a preset threshold, so that the decoding complexity supported by the decoding chip in the terminal except the preset model is greater than or equal to the preset threshold, the decoding complexity supported by the terminal except the preset model can also be greater than or equal to the preset threshold, and therefore the terminal information of the terminal except the preset model of the decoding chip can be added into a white list.
For any user, the user may use the client installed on the terminal to play a new video, where the new video is a movie, a tv series, and the like that have not been played by the terminal, and it should be noted that, because the decoding complexity of each episode of the tv series is the same, when a certain episode of the tv series is played for the first time, the terminal needs to query the server for a decoding manner, and when other movies of the tv series other than the episode of the tv series are played, the terminal does not need to query the server for a decoding manner.
Before the terminal uses the client to play the new video, the terminal first obtains its own terminal information, sends a decoding mode query message containing the terminal information to the server to query the server for a decoding mode for decoding the new video, and after receiving the decoding mode query message, the server executes the following step 307.
Step 307: and when receiving a decoding mode query message sent by the terminal, acquiring the decoding mode of the terminal according to the terminal information and the white list of the terminal.
Specifically, when receiving a decoding mode query message sent by a terminal, extracting terminal information of the terminal from the decoding mode query message, and determining whether the terminal information of the terminal exists in a white list, if so, acquiring that the decoding mode of the terminal is a hardware decoding mode, and if not, acquiring that the decoding mode of the terminal is a software decoding mode.
further, the received decoding method inquiry message is stored.
step 308: and sending the decoding mode to a terminal, so that the terminal performs video decoding according to the decoding mode.
and the terminal receives the decoding mode sent by the server, if the decoding mode is a hardware decoding mode, the terminal uses a decoding chip included in the terminal to decode the video of the new video, and if the decoding mode is a software decoding mode, the terminal uses a video decoding algorithm included in the terminal to decode the video of the new video.
In the embodiment of the invention, when a decoding mode query message sent by a terminal is received, the decoding mode of the terminal is obtained according to the terminal information and the white list of the terminal, so that the terminal decodes according to the decoding mode, and the video cannot be played due to the decoding failure of the terminal can be avoided; in addition, a white list is constructed according to terminal information contained in each decoding mode inquiry message received historically, so that the constructed white list is the terminal information of the terminal with higher current user use frequency, the terminals corresponding to the terminal information in the white list use a hardware decoding mode to perform video decoding, and the decoding effect of the hardware decoding mode is superior to that of a software decoding mode, so that the current mainstream terminal can be ensured to perform video decoding by using the hardware decoding mode to obtain higher code determining effect.
example 4
Referring to fig. 4, an embodiment of the present invention provides an apparatus for video decoding, including:
A first obtaining module 401, configured to obtain terminal information included in each decoding method query message received in history;
a constructing module 402, configured to construct a white list according to the obtained terminal information, where the white list includes terminal information of a terminal that can decode a video in a hardware decoding manner;
A second obtaining module 403, configured to, when receiving a decoding mode query message sent by a terminal, obtain a decoding mode of the terminal according to terminal information and a white list of the terminal;
a sending module 404, configured to send the decoding method to the terminal, so that the terminal performs video decoding according to the decoding method.
Optionally, the constructing module 402 includes:
A counting unit for counting the number of each kind of terminal information in the acquired terminal information;
The device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring the terminal information with the largest number of preset values and forming an information set;
The test unit is used for testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set, and the video set comprises a plurality of videos with different decoding complexities;
and the selection unit is used for selecting the terminal information of which the decoding complexity exceeds a preset threshold value and forming a white list by the selected terminal information.
Further, the apparatus further comprises:
and the removing module is used for acquiring the decoding chip model of the terminal corresponding to each terminal information in the information set, removing the terminal information of the terminal of which the decoding chip model is a preset model from the information set, and then executing the operation of testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set.
Further, the apparatus further comprises:
the third acquisition module is used for acquiring a video with the maximum decoding complexity and a video picture meeting a preset picture condition from a video website;
the transfer module is used for converting the acquired video into a plurality of videos with different decoding complexity, and the decoding complexity of each converted video is less than that of the video;
And the composition module is used for composing the acquired video and each converted video into a video set.
Further, the apparatus further comprises:
And the adding module is used for acquiring a time period which is nearest to the current and has the preset time length, acquiring the terminal information of the terminal of which the time-to-market information is in the time period and the type of the decoding chip is other than the preset type from a preset website, and adding the acquired terminal information to the white list.
In the embodiment of the invention, when a decoding mode query message sent by a terminal is received, the decoding mode of the terminal is obtained according to the terminal information and the white list of the terminal, so that the terminal decodes according to the decoding mode, and the video cannot be played due to the decoding failure of the terminal can be avoided; in addition, a white list is constructed according to terminal information contained in each decoding mode inquiry message received historically, so that the constructed white list is the terminal information of the terminal with higher current user use frequency, the terminals corresponding to the terminal information in the white list use a hardware decoding mode to perform video decoding, and the decoding effect of the hardware decoding mode is superior to that of a software decoding mode, so that the current mainstream terminal can be ensured to perform video decoding by using the hardware decoding mode to obtain higher code determining effect.
example 5
Fig. 5 is a schematic structural diagram of a server according to an embodiment of the present invention. Server 1900 may vary widely by configuration or performance, and may include one or more Central Processing Units (CPUs) 1922 (e.g., one or more processors) and memory 1932, one or more storage media 1930 (e.g., one or more mass storage devices) storing applications 1942 or data 1944. Memory 1932 and storage medium 1930 can be, among other things, transient or persistent storage. The program stored in the storage medium 1930 may include one or more modules (not shown), each of which may include a series of instructions operating on a server. Still further, a central processor 1922 may be provided in communication with the storage medium 1930 to execute a series of instruction operations in the storage medium 1930 on the server 1900.
the server 1900 may also include one or more power supplies 1926, one or more wired or wireless network interfaces 1950, one or more input-output interfaces 1958, one or more keyboards 1956, and/or one or more operating systems 1941, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
server 1900 may include memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors include instructions for:
Acquiring terminal information contained in each decoding mode inquiry message received historically;
Constructing a white list according to the acquired terminal information, wherein the white list comprises the terminal information of a terminal capable of decoding a video in a hardware decoding mode;
When a decoding mode query message sent by a terminal is received, acquiring the decoding mode of the terminal according to the terminal information of the terminal and the white list;
And sending the decoding mode to the terminal, so that the terminal performs video decoding according to the decoding mode.
optionally, the constructing a white list according to the obtained terminal information includes:
Counting the number of each kind of terminal information in the acquired terminal information;
Acquiring terminal information with the largest number of preset values and forming an information set;
Testing terminals corresponding to terminal information in the information set through a preset video set to obtain decoding complexity corresponding to the terminal information in the information set, wherein the video set comprises a plurality of videos with different decoding complexity;
selecting terminal information with decoding complexity exceeding a preset threshold value, and forming a white list by the selected terminal information.
further, before the testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set, the method further includes:
and acquiring the model of a decoding chip of a terminal corresponding to each terminal information in the information set, removing the terminal information of the terminal with the model of the decoding chip being a preset model from the information set, and then executing the operation of testing the terminal corresponding to each terminal information in the information set through the preset video set to obtain the decoding complexity corresponding to each terminal information in the information set.
further, before constructing the white list according to the obtained terminal information, the method further includes:
Acquiring a video with the maximum decoding complexity and a video picture meeting a preset picture condition from a video website;
converting the video into a plurality of videos with different decoding complexity, wherein the decoding complexity of each converted video is less than that of the video;
composing the video and each video of the conversion into a video set.
Further, before the sending the white list to the terminal used by each user, the method further includes:
The method comprises the steps of obtaining a time period which is nearest to the current and the time period of which is a preset time period, obtaining terminal information of terminals of which the time-to-market information is in the time period and the types of decoding chips are other than preset types from a preset website, and adding the obtained terminal information to a white list.
In the embodiment of the invention, when a decoding mode query message sent by a terminal is received, the decoding mode of the terminal is obtained according to the terminal information and the white list of the terminal, so that the terminal decodes according to the decoding mode, and the video cannot be played due to the decoding failure of the terminal can be avoided; in addition, a white list is constructed according to terminal information contained in each decoding mode inquiry message received historically, so that the constructed white list is the terminal information of the terminal with higher current user use frequency, the terminals corresponding to the terminal information in the white list use a hardware decoding mode to perform video decoding, and the decoding effect of the hardware decoding mode is superior to that of a software decoding mode, so that the current mainstream terminal can be ensured to perform video decoding by using the hardware decoding mode to obtain higher code determining effect.
it will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (10)

1. A method of video decoding, the method comprising:
acquiring terminal information contained in each decoding mode inquiry message received historically, wherein the terminal information comprises machine type information and operating system version information of a terminal;
Constructing a white list according to the acquired terminal information, wherein the white list comprises the terminal information of a terminal capable of decoding a video in a hardware decoding mode;
When a decoding mode query message sent by a terminal is received, if the white list has terminal information of the terminal, the decoding mode of the terminal is acquired to be a hardware decoding mode, and if the white list does not have the terminal information of the terminal, the decoding mode of the terminal is acquired to be a software decoding mode;
And sending the decoding mode to the terminal, so that the terminal performs video decoding according to the decoding mode.
2. the method of claim 1, wherein the constructing a white list according to the obtained terminal information comprises:
counting the number of each kind of terminal information in the acquired terminal information;
Acquiring terminal information with the largest number of preset values and forming an information set;
testing terminals corresponding to terminal information in the information set through a preset video set to obtain decoding complexity corresponding to the terminal information in the information set, wherein the video set comprises a plurality of videos with different decoding complexity;
Selecting terminal information with decoding complexity exceeding a preset threshold value, and forming a white list by the selected terminal information.
3. The method of claim 2, wherein before the testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set, the method further comprises:
And acquiring the model of a decoding chip of a terminal corresponding to each terminal information in the information set, removing the terminal information of the terminal with the model of the decoding chip being a preset model from the information set, and then executing the operation of testing the terminal corresponding to each terminal information in the information set through the preset video set to obtain the decoding complexity corresponding to each terminal information in the information set.
4. The method according to claim 1 or 2, wherein before constructing the white list according to the obtained terminal information, further comprising:
Acquiring a video with the maximum decoding complexity and a video picture meeting a preset picture condition from a video website;
converting the video into a plurality of videos with different decoding complexity, wherein the decoding complexity of each converted video is less than that of the video;
Composing the video and each video of the conversion into a video set.
5. The method according to any of claims 1 to 3, wherein said constructing a white list according to said obtained terminal information further comprises:
The method comprises the steps of obtaining a time period which is nearest to the current and the time period of which is a preset time period, obtaining terminal information of terminals of which the time-to-market information is in the time period and the types of decoding chips are other than preset types from a preset website, and adding the obtained terminal information to a white list.
6. an apparatus for video decoding, the apparatus comprising:
The first acquisition module is used for acquiring terminal information contained in each decoding mode inquiry message received historically, wherein the terminal information comprises machine type information and operating system version information of a terminal;
a construction module, configured to construct a white list according to the obtained terminal information, where the white list includes terminal information of a terminal that can decode a video in a hardware decoding manner;
A second obtaining module, configured to, when receiving a decoding mode query message sent by a terminal, if the white list has terminal information of the terminal, obtain that a decoding mode of the terminal is a hardware decoding mode, and if the white list does not have the terminal information of the terminal, obtain that the decoding mode of the terminal is a software decoding mode;
And the sending module is used for sending the decoding mode to the terminal so that the terminal carries out video decoding according to the decoding mode.
7. The apparatus of claim 6, wherein the construction module comprises:
a counting unit configured to count the number of each type of terminal information in the acquired terminal information;
the device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring the terminal information with the largest number of preset values and forming an information set;
The test unit is used for testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set, and the video set comprises a plurality of videos with different decoding complexities;
and the selection unit is used for selecting the terminal information of which the decoding complexity exceeds a preset threshold value and forming a white list by the selected terminal information.
8. The apparatus of claim 7, wherein the apparatus further comprises:
and the removing module is used for acquiring the decoding chip model of the terminal corresponding to each terminal information in the information set, removing the terminal information of the terminal of which the decoding chip model is a preset model from the information set, and then executing the operation of testing the terminal corresponding to each terminal information in the information set through a preset video set to obtain the decoding complexity corresponding to each terminal information in the information set.
9. the apparatus of claim 6 or 7, wherein the apparatus further comprises:
The third acquisition module is used for acquiring a video with the maximum decoding complexity and a video picture meeting a preset picture condition from a video website;
a transfer module, configured to convert the video into a plurality of videos with different decoding complexities, where the decoding complexity of each converted video is less than the decoding complexity of the video;
A composing module for composing the video and each of the converted videos into a video set.
10. The apparatus of any of claims 6 to 8, further comprising:
And the adding module is used for acquiring a time period which is nearest to the current and has the preset time length, acquiring terminal information of the terminal with the time-to-market information in the time period and the type of the decoding chip except the preset type from a preset website, and adding the acquired terminal information to the white list.
CN201510046323.9A 2015-01-29 2015-01-29 video decoding method and device Active CN105992055B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510046323.9A CN105992055B (en) 2015-01-29 2015-01-29 video decoding method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510046323.9A CN105992055B (en) 2015-01-29 2015-01-29 video decoding method and device

Publications (2)

Publication Number Publication Date
CN105992055A CN105992055A (en) 2016-10-05
CN105992055B true CN105992055B (en) 2019-12-10

Family

ID=57035704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510046323.9A Active CN105992055B (en) 2015-01-29 2015-01-29 video decoding method and device

Country Status (1)

Country Link
CN (1) CN105992055B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108134956B (en) * 2016-12-01 2020-09-25 腾讯科技(深圳)有限公司 Updating method, terminal and system for hard solution adaptive white list
CN110139104B (en) * 2018-02-09 2023-02-28 腾讯科技(深圳)有限公司 Video decoding method, video decoding device, computer equipment and storage medium
CN110858920A (en) * 2018-08-23 2020-03-03 武汉斗鱼网络科技有限公司 Video decoding method, mobile terminal, server, system and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025994A (en) * 2010-12-16 2011-04-20 深圳市融创天下科技发展有限公司 Coding method, coding device and coding and decoding system based on adaptive decoding complexity as well as equipment comprising coding and decoding system
CN102572364A (en) * 2010-12-15 2012-07-11 中兴通讯股份有限公司 Decoding method and device for video communication data
CN102761736A (en) * 2011-04-29 2012-10-31 腾讯科技(深圳)有限公司 Video decoding method and device
CN102802138A (en) * 2011-05-25 2012-11-28 腾讯科技(深圳)有限公司 Video file processing method and system, and video proxy system
CN103339959A (en) * 2011-01-19 2013-10-02 高通股份有限公司 Dynamic video switching

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120000942A (en) * 2010-06-28 2012-01-04 주식회사 케이티 Bot-infected host detection apparatus and method based on blacklist access statistics

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102572364A (en) * 2010-12-15 2012-07-11 中兴通讯股份有限公司 Decoding method and device for video communication data
CN102025994A (en) * 2010-12-16 2011-04-20 深圳市融创天下科技发展有限公司 Coding method, coding device and coding and decoding system based on adaptive decoding complexity as well as equipment comprising coding and decoding system
CN103339959A (en) * 2011-01-19 2013-10-02 高通股份有限公司 Dynamic video switching
CN102761736A (en) * 2011-04-29 2012-10-31 腾讯科技(深圳)有限公司 Video decoding method and device
CN102802138A (en) * 2011-05-25 2012-11-28 腾讯科技(深圳)有限公司 Video file processing method and system, and video proxy system

Also Published As

Publication number Publication date
CN105992055A (en) 2016-10-05

Similar Documents

Publication Publication Date Title
CN106559679B (en) The decoded method of video, server and mobile terminal
US20150040011A1 (en) Video content displaying schemes
EP3086561A1 (en) Information pushing method, device, and system
CN110392306B (en) Data processing method and equipment
CN107634930B (en) Method and device for acquiring media data
CN109391843B (en) Online video speed doubling playing method, device, medium and intelligent terminal
EP3384493A1 (en) Method and apparatus for transmitting video data
CN107392111B (en) Advertisement identification method and device
WO2019184822A1 (en) Multi-media file processing method and device, storage medium and electronic device
EP3142381A1 (en) Network video playing method and device
CN111954051A (en) Method, equipment and system for transmitting video and audio
US20210014558A1 (en) Media Information Processing Method, Related Device, and Computer Storage Medium
US11540028B2 (en) Information presenting method, terminal device, server and system
CN107832142B (en) Resource allocation method and equipment for application program
CN105992055B (en) video decoding method and device
WO2019114330A1 (en) Video playback method and apparatus, and terminal device
CN111405339B (en) Split screen display method, electronic equipment and storage medium
CN107147921A (en) Based on section and the intelligence CDN video playback accelerated methods dispatched and equipment
CN108966006A (en) Playback method, browser equipment and the readable storage medium storing program for executing of video
CN107613302B (en) Decoding method and device, storage medium and processor
CN108632667B (en) A kind of coding/decoding method and terminal of multimedia file
CN110996137B (en) Video processing method and device
CN111064976B (en) Method for sending live broadcast information and server
CN112118473B (en) Video bullet screen display method and device, computer equipment and readable storage medium
CN108111900B (en) Playing speed control method and device

Legal Events

Date Code Title Description
C06 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