CN107729132B - A kind of video decoding process guard method and device - Google Patents

A kind of video decoding process guard method and device Download PDF

Info

Publication number
CN107729132B
CN107729132B CN201710930589.9A CN201710930589A CN107729132B CN 107729132 B CN107729132 B CN 107729132B CN 201710930589 A CN201710930589 A CN 201710930589A CN 107729132 B CN107729132 B CN 107729132B
Authority
CN
China
Prior art keywords
decoding
decoding process
function
new
list
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
CN201710930589.9A
Other languages
Chinese (zh)
Other versions
CN107729132A (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.)
Baosheng China Technology Industry Co ltd
Original Assignee
Wuhan Douyu Network 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201710930589.9A priority Critical patent/CN107729132B/en
Publication of CN107729132A publication Critical patent/CN107729132A/en
Application granted granted Critical
Publication of CN107729132B publication Critical patent/CN107729132B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • 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
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The invention discloses a kind of video decoding process guard method and devices; this method comprises: when host process is created for cooperateing with the decoding process that same video resource is decoded and is played with the host process, from the destination service function for being used to enumerate current all processes obtained in task manager in SSDT system service descriptor table;The destination service function is called to obtain process list, the process list includes the system currently respective process structure information of all processes;Write-protect is gone to the memory of the SSDT table;The destination service function is replaced with to the new demand servicing function different from the destination service function by hooking operation;The corresponding process structure information of the decoding process is removed from process list by the new demand servicing function.The technical issues of manslaughtering one or more decoding process, is easy by task manager to which the present invention solves.

Description

A kind of video decoding process guard method and device
Technical field
The present invention relates to video decoding filed more particularly to a kind of video decoding process guard method and devices.
Background technique
It is all utilized in a process in the prior art and carries out audio/video decoding, then broadcast audio-video after decoding It puts.This project plan comparison is simple, quick.
But if to realize player more open (player more open can exactly be opened simultaneously in a player it is multiple Video resource, such as: video file or network video stream).As the number for more opening video is more and more, then the process needs The system resource wanted, as CPU occupy, memory consumption also will be more and more.It can make to play when reaching the performance bottleneck of the process Effect worse and worse, picture increasingly Caton, or even will cause the collapse of player.In order to prevent this situation, then by one Independent process carrys out decoded video streams, the problem of to avoid picture effect difference and Caton.
But as video more is opened and just will appear multiple decoding process, by task manager be easy by one of them or Multiple decoding process are manslaughtered, and then the video playing of player main program is caused to stop.
Summary of the invention
The embodiment of the present invention solves by providing a kind of video decoding process guard method and device and passes through task management Device is easy the technical issues of manslaughtering one or more decoding process.
In a first aspect, the embodiment of the present invention provides a kind of video decoding process guard method, comprising:
It creates in host process for cooperateing with the solution that same video resource is decoded and is played with the host process When code process, from the target for being used to enumerate current all processes obtained in task manager in SSDT system service descriptor table Service function;
The destination service function is called to obtain process list, the process list includes that currently all processes are respectively for system Process structure information;
Write-protect is gone to the memory of the SSDT table;
The destination service function is replaced with to the new demand servicing letter different from the destination service function by hooking operation Number;
The corresponding process structure information of the decoding process is removed from process list by the new demand servicing function.
Optionally, described from the destination service function obtained in task manager in SSDT system service descriptor table, packet It includes:
The address where the destination service function is oriented by the service number of the destination service function;
Address where the destination service function obtains the destination service function.
Optionally, the memory to the SSDT table goes write-protect, comprising:
Create new virtual memory corresponding with the decoding process;
Original virtual memory where the SSDT table is mapped into the new virtual memory, so that the new virtual memory Same physical memory corresponding with the virtual memory where the SSDT table;
Lock the descriptor memory symbol of the new virtual memory.
Optionally, it is described by hook operation the destination service function replaced with it is different from the destination service function New demand servicing function, comprising:
According to the service number of the descriptor memory of the new virtual memory of locking symbol and the destination service function, from described The destination service function is identified in new virtual memory and replaces with the new demand servicing function.
Optionally, the process structure information for each process for including in the process list includes that process name claims, described logical It crosses the new demand servicing function and removes the corresponding process structure information of the decoding process from process list, comprising:
It is obtained from the process list by the new service function and removes the process name with the decoding process Claim identical process structure information.
Optionally, it is described obtained from the process list by the new service function and remove with it is described decode into The identical process structure information of the process title of journey, comprising:
Step a: judging whether the process title in current process structure variable is equal to the process title of the decoding process, If so, b is thened follow the steps, it is no to then follow the steps e, wherein assignment has current process in the current process structure variable Process structure information;
Step b, judge whether upper process structure variable is equal to 0, if being not equal to 0, then follow the steps c, otherwise execute Step d, wherein assignment has the process structure information of a upper process in the upper process structure variable;
Step c, judge process structure information corresponding to the decoding process whether the process list interposition It sets, if it is, passing through prev.NextEntryDelta+=current.NextEntryDelta for the decoding process Process structure information is removed from the process list;Otherwise pass through prev.NextEntryData=0 for the decoding process Corresponding process structure information is removed from the process list, wherein prev.NextEntryDelta is a upper process NextEntryDelta field in structure variable, current.NextEntryDelta are in the current process structure variable NextEntryDelta field;
Step d, judges whether the NextEntryDelta field in the current process structure variable is equal to 0, if waited In 0, then by directly setting 0 for process list, by the process structure information of the decoding process from the process list Otherwise middle removal passes through SystemInformation+=current.NextEntryDelta for the process of the decoding process Structural information is removed from the process list, wherein SystemInformation indicates the current value of the process list;
Step e, current process structure variable is set as a process structure variable, and benefit is assigned to when future variable again Value, and judge whether the NextEntryDelta field of the current process structure variable after assignment again is equal to 0, if be not equal to 0, return step b.
Optionally, after the host process creates the decoding process, the method also includes:
During the host process cooperates with the decoding process and same video resource is decoded and is played, Whether the RPC communication connection monitored between the host process and the decoding process disconnects;
When monitoring that the RPC communication connection between the host process and the decoding process disconnects, new decoding is created Process simultaneously establishes the connection of the RPC communication between the new decoding process and the host process;
It is cooperateed with by the new decoding process with the host process and the video resource is continued to decode and be played.
Optionally, described cooperateed with by the new decoding process with the host process continues to solve to the video resource Code simultaneously plays, comprising:
The current decoding progress of the video resource is sent to the new decoding process by the host process and is deposited Store up station location marker;
The video resource is obtained according to storage location mark by the new decoding process, and from video resource Current decoding progress continues to decode the video resource;
It is written the decoded video image that decoding obtains is continued to the video resource by the new decoding process In the system shared drive created by the decoding process;
By the host process in response to the Image Rendering order from the new decoding process, with from the decoding The subsequent decoding rear video image of the video resource is read in the system shared drive that process is created;
The subsequent decoding rear video image of the video resource is drawn by the host process, and by described new Audio plays out after decoding process synchronizes the subsequent decoding to the video resource.
Optionally, audio plays out after the new decoding process is synchronized to the subsequent decoding of the video resource In the process, the method also includes:
The new decoding process records the video money when audio plays out after the decoding to the video resource Audio time stamp when audio plays after the current frame decoding in source;
Obtain the present frame that the new decoding process obtains the video resource from the file decoding service module Video time stamp when decoded video image;
Judge whether the video time stamp is less than or equal to the audio time stamp;
If so, deleting the present frame decoded video figure from the system shared drive that the decoding process is created Picture.
Second aspect, the embodiment of the present invention provide a kind of video decoding process protective device, comprising:
Function acquiring unit is created in host process and is solved for cooperateing with the host process to same video resource When code and the decoding process played, it is used to enumerate current institute from obtaining in task manager in SSDT system service descriptor table There is the destination service function of process;
List acquiring unit, for calling the destination service function to obtain process list, the process list includes to be The current all respective process structure information of process of system;
Write-protect unit is removed, goes write-protect for the memory to the SSDT table;
Function replacement unit, for being replaced with the destination service function and the destination service letter by hooking operation The different new demand servicing function of number;
Unit is removed, for removing the corresponding process of the decoding process from process list by the new demand servicing function Structural information.
The third aspect, the embodiment of the invention provides a kind of computer readable storage mediums, are stored thereon with computer journey Sequence realizes step described in any embodiment in first aspect when the program is executed by processor.
Fourth aspect, the embodiment of the invention provides a kind of computer equipments, are stored thereon with computer program, feature It is, step described in any embodiment in first aspect is realized when which is executed by processor.
The one or more technical solutions provided in the embodiment of the present invention, have at least the following technical effects or advantages:
Due to from task manager obtain SSDT system service descriptor table in destination service function;Invocation target clothes Business function obtains process list, and the process list includes the system currently respective process structure information of all processes;To SSDT The memory of table goes write-protect;Destination service function is replaced with to the new demand servicing function different from destination service function;By newly taking Business function removes the corresponding process structure information of decoding process from process list.To go to write guarantor due to the memory to SSDT table Shield is arranged further through new demand servicing function from process so as to replace with different new demand servicing function to destination service function The corresponding process structure information of decoding process is removed in table, so that task manager gets the process structure letter of decoding process Breath, it is achieved that concealing decoding process for task manager, then decoding process cannot be killed by task manager Extremely.So that video playing frame more safety and stability, and then avoid stopping in the video display process of player main program.
Detailed description of the invention
To describe the technical solutions in the embodiments of the present invention more clearly, make required in being described below to embodiment Attached drawing is briefly described, it should be apparent that, drawings in the following description are some embodiments of the invention, for this For the those of ordinary skill of field, without creative efforts, it can also be obtained according to these attached drawings others Attached drawing.
Fig. 1 is the flow chart of video decoding process guard method provided in an embodiment of the present invention;
Fig. 2 is the Program modual graph of video decoding process protective device provided in an embodiment of the present invention;
Fig. 3 is the structural schematic diagram of computer readable storage medium provided in an embodiment of the present invention;
Fig. 4 is the structural schematic diagram of computer equipment provided in an embodiment of the present invention.
Specific embodiment
In order to solve to be easy the technical issues of manslaughtering one or more decoding process by task manager, the present invention is real It applies example and a kind of video decoding process guard method and device is provided.In order to better understand the above technical scheme, below in conjunction with The above described technique is demenstrated in detail for Figure of description and specific embodiment.
Video decoding process guard method provided in an embodiment of the present invention is applied to Windows operating system.With reference to Fig. 1 Shown, which includes the following steps:
Firstly, executing step S101, being carried out for being cooperateed with host process to same video resource in host process creation Decode and play decoding process when, from task manager obtain SSDT (System Services Descriptor Table, Chinese are system service descriptor table) in table for enumerating the destination service function of current all processes.
Specifically, with RPC (Remote Procedure Call, remote procedure call) communicate mode realize master control into Communication between journey and the decoding process created.
In order to obtain the destination service function for enumerating current all processes, first pass through this be used to enumerate it is current it is all into The service number of the destination service function of journey orients the address where the destination service function for enumerating current all processes;So Afterwards, which is obtained according to the address where the destination service function for enumerating current all processes.
In the present embodiment, it can be provided by system drive layer for enumerating the destination service function of current all processes ZwQuerySystemInformation service function because ZwQuerySystemInformation service function is SSDT One of service function in table, and have a corresponding SSDT service number in each of SSDT table service function, To be positioned by the service number of ZwQuerySystemInformation service function Address where ZwQuerySystemInformation service function.Specifically, ZwQuerySystemInformation takes Address where business function adds locating memory value to be the SSDT service number of ZwQuerySystemInformation service function.
Specifically, being directed to N number of video by the creation of same host process when obtaining the playing request to N number of video resource N number of decoding process of the equal and host process RPC communication of resource, N is positive integer.Same the created decoding process of host process Number is identical as the number of video resource.The step of independently executing, is created as to N number of decoding process, is existed by same host process Creation respective required decoding process when obtaining playing request respective for each video resource in N number of video resource.
Host process is created for cooperateing with the decoding process that same video resource is decoded and is played with host process, Specifically: RPC link address of the distribution for being communicated between decoding process and host process;By host process creation decode into Journey will be used for the RPC link address that decoding process is communicated with host process and pass to the decoding process of creation by host process;Solution Code process is communicated by the RPC link address for communicating between decoding process and host process with host process, to realize RPC communication connection between decoding process and host process.
After step slol, then execute step S102: invocation target service function obtains process list, the process List includes the system currently respective process structure information of all processes.
In Windows operating system, task manager is by calling an api function: QuerySystemInformation function obtains progress information.
QuerySystemInformation is being called to obtain the process list comprising the current all processes of system, by this First parameter of QuerySystemInformation function is set as 5, indicates to obtain progress information, second parameter is one A structure is the _ process structure information of SYSTEM_PROCESSES, one _ SYSTEM_PROCESSES structure represent one into Journey.
The process structure information for each process for including in process list includes that process name claims and other information, such as: NextEntryDelta field.Indicate the field of the process title of corresponding process are as follows: ProcessName field.Each process Also there is a field to be used to indicate the process structure information of next process relative to current process in process structure information The offset of process structure information is NextEntryData field
In order to get process list, destination service function is being replaced with to the new clothes different from destination service function It is engaged in front of function further include: invocation target service function obtains the process list of current all processes.
Specifically, application layer and driving layer, QuerySystemInformation function are divided into Windows system It is the api function that Windows system is provided to application layer developer, and the QuerySystemInformation function also relies on The ZwQuerySystemInformation service function provided by system drive layer.Specifically, in Windows operating system In, if QuerySystemInformation function is called to obtain process list, specifically, QuerySystemInformation function is by calling the ZwQuerySystemInformation service function to driving layer To obtain the process list comprising the current all processes of system.
After step s 102, it then executes step S103: write-protect is gone to the memory of SSDT table.
Specifically, going write-protect to the memory of SSDT table are as follows: remove the memory write-protect to SSDT table, Windows system In be divided into application layer and driving layer, driving layer in by KeServiceDescriptorTable variable export SSDT table, should ServiceTableBase field references in the KeServiceDescriptorTable variable first address of SSDT table.Because ServiceTableBase field is read-only, therefore cannot rewrite the content at the first address of SSDT table, and then can not be right SSDT table is rewritten.In order to remove the memory write-protect to SSDT table, SSDT table is rewritten, a kind of embodiment party is provided Formula are as follows: creation new virtual memory corresponding with decoding process maps to the original virtual memory where SSDT table new virtual interior It deposits, so that new virtual memory same physical memory corresponding with the virtual memory where SSDT table, locks the memory of new virtual memory Descriptor.
Specifically, it is accorded with by the descriptor memory for calling MmCreateMdl system function to create a new virtual memory, it will The parameter of ServiceTableBase field is passed in MmCreateMdl system function, then, MmCreateMdl system letter Number returns to the descriptor memory that a type is MDL and accords with, and is labeled as " g_ssdtmdl ".Call MmMapLockedPages function lock Surely the descriptor memory symbol " g_ssdtmdl " returned accords with institute by calling MmMapLockedPages function to get descriptor memory The address of corresponding virtual memory, to obtain new virtual memory and be rewritten to new virtual memory, to new virtual memory The content at the first address for influencing SSDT table is rewritten, so that subsequent can carry out to the target for enumerating current all processes Process Hook operation where service function, replaces with new demand servicing function.
After the memory write-protect for eliminating SSDT table by step S103, so that it may to where destination service function into Journey Hook operation, that is, execute and carry out step S104:
S104: destination service function is replaced with to the new demand servicing function different from destination service function by hooking operation.
It should be noted that by for protecting the drive module of decoding process to execute hook function, to be hooked (hook) it operates, destination service function is replaced with to the new demand servicing function different from destination service function, to realize hook (Hook) the ZwQuerySystemInformations function in SSDT table is lived, so that task manager can not obtain solution The process structure information of code process.It should be noted that needing to unload hook function (hook letter after executing step S105 Number).Specifically, Hook Function is a kind of special call back function.System can call Hook Function after the particular event of monitoring occurs It is handled, in the present embodiment, Hook Function can be triggered after step S101~S103 later and handled.
Specifically, the destination service function according to the descriptor memory of new virtual memory symbol and for enumerating current all processes Service number, the destination service function for enumerating current all processes, and the use that will identify that are identified from new virtual memory New demand servicing function is replaced in the destination service function for enumerating current all processes.
It in the specific implementation process, can be with are as follows: new virtual memory is got according to the descriptor memory of new virtual memory symbol New virtual memory is determined according to the address of new virtual memory in address, according to the destination service for enumerating current all processes The service number of function identifies this for enumerating the service number of the currently destination service function of all processes from new virtual memory.
Specifically, new demand servicing function can be to be named as ZwQuerySystemInformation, pass through calling InterlockedExchange function, to realize that according with " g_ssdtImage " according to the descriptor memory of new virtual memory gets newly The service number of the address of virtual memory, ZwQuerySystemInformation service function is identified from new virtual memory ZwQuerySystemInformation service function, and the ZwQuerySystemInformation service function that will identify that New demand servicing function MyOpenProcess is replaced with, to complete to ZwQuerySystemInformation service function Hook operation.
After step s 104, step S105 is then executed:
The corresponding process structure information of decoding process is removed from process list by new demand servicing function, process list includes The current respective process structure information of all processes of system.
Decoding process can be RpcMediaDecoder, and host process can be dy_pcclient.
It is obtained from process list in step S105 by new service function and removes the process title with decoding process Identical process structure information realizes pair so that task manager can not obtain the process structure information of decoding process Decoding process is hidden, and then can not be killed by task manager.
It is obtained from process list in the following, being given by new service function and removes the process title phase with decoding process One specific embodiment of same process structure information, to execute following steps a~step e in new demand servicing function:
Step a: assignment has the process structure information of current process in current process structure variable, judges current process structure Whether the process title in variable is equal to the process title of decoding process, if so, b is thened follow the steps, it is no to then follow the steps e.
Step b, assignment has the process structure information of a upper process in upper process structure variable, judges a upper process structure Whether variable is equal to 0, if being not equal to 0, thens follow the steps c, no to then follow the steps d.
It should be noted that the process structure information of a upper process is located at the process letter of current process in process list The previous position of breath.
Step c, judge process structure information corresponding to decoding process whether in the middle position of process list, if It is then to pass through prev.NextEntryDelta+=current.NextEntryDelta for the process structure information of decoding process It is removed from process list;Otherwise by prev.NextEntryData=0 by the corresponding process structure information of decoding process from It is removed in process list, wherein prev.NextEntryDelta is the NextEntryDelta word in upper process structure variable Section, current.NextEntryDelta are the NextEntryDelta field in current process structure variable.
Step d, judges whether the NextEntryDelta field in current process structure variable is equal to 0, if being equal to 0, Then by directly setting 0 for process list, the process structure information of decoding process is removed from process list, is otherwise led to It crosses SystemInformation+=current.NextEntryDelta and arranges the process structure information of decoding process from process It is removed in table, wherein SystemInformation indicates process list.
Step e, current process structure variable is set as a process structure variable, and benefit is assigned to when future variable again Value, and judge whether the NextEntryDelta field of the current process structure variable after assignment again is equal to 0, if be not equal to 0, return step b.
It should be noted that the destination service function for enumerating current all processes is called to obtain process list, label For SystemInformation, decoding process RpcMediaDecoder
Specifically, in step a, assignment has the process structure information of current process in process structure variable
Current process structure _ SYSTEM_PROCESSES variable is indicated with current variable, is indicated with prev variable One process structure _ SYSTEM_PROCESSES variable, if the process ProcessName in current variable is equal to decoding The process title of process: RpcMediaDecoder thens follow the steps b, no to then follow the steps e, wherein at the beginning of current variable Initial value is the process structure on first position in process list, and the initial value of prev variable is 0.
Specifically, in step c: if the NextEntryDelta field of current variable is not equal to 0, then it represents that Process structure corresponding to decoding process then utilizes prev.NextEntryDelta+=in the middle section of process list Current.NextEntryDelta removes the process structure information of decoding process from process list;If current becomes The NextEntryDelta field of amount is equal to 0, then it represents that the last one of decoding process in process list then utilizes Prev.NextEntryData=0 removes the process structure information of decoding process from process list.
Specifically, in step d: prev variable is equal to 0, then it represents that first position of the process in process list On, judge whether the NextEntryDelta field of current variable is equal to 0, if being not equal to 0, passes through SystemInformation+=current.NextEntryDelta is by the process structure information of decoding process from process list Middle removal;If be equal to 0, directly by SystemInformation be set as 0 by the process structure information of decoding process from into It is removed in Cheng Liebiao.
In step e, current variable specially is set by prev variable, and utilize current=current+ Current.NextEntryData gives current variable assignments again, the current variable after judging assignment again Whether NextEntryDelta field is equal to 0, if being not equal to 0, enters step b, if being equal to 0, enters step Exit circulation.
It should be noted that in above-mentioned steps, arithmetic sign used " +=" continues to use the meaning in computer program, it may be assumed that A+=b indicates a=a+b.
Further, after host process creates decoding process, host process is cooperateed with decoding process to same video Resource is decoded and plays.
Host process is cooperateed with decoding process same video resource is decoded and is played during, monitoring master control into Whether the RPC communication connection between journey and decoding process disconnects;Monitor that the RPC communication between host process and decoding process connects When connecing disconnection, creates new decoding process and establish the connection of the RPC communication between new decoding process and host process;By new Decoding process cooperateed with host process video resource continued to decode and be played.
Notify to give control process specifically, sending signal by host process, by control process the new decoding of creation into Journey.
Distribute the RPC link address for connecting new decoding process and host process;It is used for by host process transmission The notification message of the new decoding process of notice control process creation;If the error handling module of control process receives the notice and disappears Breath, then by controlling the new decoding process of process creation;New decoding process and host process will be used to connect by host process RPC link address pass to new decoding process so that new decoding process passes through for connecting new decoding process and master The RPC link address of control process is connected to control process.
In order to enable new decoding process continue after investment it is accurate to the decoded position of video resource, avoid mistake pair The decoding of other video resources realizes the longitude progress that accurate docking decoding process is handled, additionally provides new decoding process association Continue the specific embodiment for decoding and playing to target video resource with host process, includes the following steps:
The current decoding progress and storage location mark of video resource are sent to new decoding process by host process;By New decoding process identifies according to storage location and obtains video resource, and continues from the current decoding progress of video resource to video Resource decoding;By by new decoding process to video resource continue decoding obtain decoded video image write-in by decode into In the system shared drive that journey is created;By host process in response to the Image Rendering order from new decoding process, with The subsequent decoding rear video image of video resource is read from the system shared drive that decoding process is created;After video resource Continuous decoded video image is drawn by host process, and synchronizes the subsequent decoding to video resource by new decoding process Audio plays out afterwards.
In order to realize, audio is synchronous with host process drafting decoded video image after decoding process broadcast decoder, also mentions For following steps: new decoding process records video resource during audio plays out after the decoding to video resource Current frame decoding after audio play when audio time stamp;New decoding process is obtained to obtain from file decoding service module Video time stamp when the present frame decoded video image of video resource;When judging whether video time stamp is less than or equal to audio Between stab;If so, deleting present frame decoded video image from the system shared drive that decoding process is created.
Specifically, either new decoding process or former decoding process, after to decoding in audio playing process, It need to control synchronous between decoded video image and audio after decoding.Using audio after decoded video image synchronization to decoding The mode of image keeps audio-visual synchronization.Audio after one frame decoding of every broadcasting, records current audio time stamp audioPts. Obtain view when new decoding process obtains the present frame decoded video image of video resource from file decoding service module Frequency timestamp videoFrame.pts, if the value of video time stamp is less than or equal to the value of audio time stamp, then it represents that the video The play time of picture frame then calls the related command of file decoding service module that will work as already less than the play time of audio frame Previous frame decoded video image-erasing, in this way, after host process is next decoding from what is obtained when reading in system shared drive Video image frame, to realize audio-visual synchronization.
Applied to video player application, the video resource played for video player application can be this Ground video file or network video stream.
Specifically, obtaining to monitor whether the connection of the RPC communication between host process and decoding process disconnects for view When the playing request of frequency resource, decoding process is created by host process, and establish the RPC between host process and decoding process Communication connection;Target by host process registration for the RPC communication connection between host process and decoding process adjusts back letter Number;When RPC communication between host process and decoding process connects opening, host process is made to enter target call back function.
Host process creates RPC communication example after creating decoding process, is calling RpcCreateInstance letter When number creation RPC communication example, providing a structure to the RpcCreateInstance function is The call back function array of RpcCallbackFunctions, and provide a function to the onConnection field of the structure and refer to Needle, when the RPC communication connection between host process and decoding process is to opening, host process enters target call back function In onConnection.
To the opening procedure of video resource, specifically comprise the following steps: to open video resource by decoding process Operation;If decoding process opens successfully video resource, the video resource after being opened into function is decoded by decoding process; The decoded video image of video resource is drawn by host process, and audio passes through decoding process after the decoding of video resource It plays out.
More specifically, the opening of video resource can be realized by following process: call host process to decode into Journey sends video and opens order, is opened and is ordered in response to video by decoding process, to carry out opening behaviour to video resource correspondence Make.In the specific implementation process, decoding process can call open method to video resource carry out opening operation, such as decode into Journey calls the open method in file decoding service module (MediaDecoder) to open video resource, and obtains open method Return value result is opened as video resource as a result, the opening result to video resource is returned to master control by decoding process Process.
Judged by host process to the opening of video resource as a result, specifically judge return value result as 1 or 0, if Judge that return value result is 1, then it represents that video resource is opened successfully, if it is judged that return value result is 0, then it represents that Video resource opens failure.If video resource is opened successfully, after notifying decoding process to function is opened by host process Video resource be decoded;If video resource opens failure, decoding process is notified to exit by host process.
It should be noted that host process is the host process of player application.
Specifically, when obtaining the playing request for being directed to video resource, host process passes through calling system CreateProcess function creation decoding process.
Specifically, decoding process is created by host process, and it is logical to establish the RPC between host process and decoding process Believe the process of connection, specifically: RPC link address of the distribution for being connected between decoding process and host process;Pass through master control Process creation decoding process is passed to by host process by the RPC link address that decoding process is connect with host process is used for Decoding process through creating;Decoding process is connected by the RPC link address for connecting between decoding process and host process To host process.To realize the connection of the RPC communication between decoding process and host process.
In the specific implementation process, RPC link address be using host process process ID and the decoding that will create into The process index of journey is mark.For example, the character string shaped like " pid_index ".
A kind of embodiment whether the RPC communication connection between monitoring host process and decoding process disconnects is as follows:
It is detected for supporting host process and solution the inside that RPC communication connects between host process and decoding process Whether the name pipeline of the RPC communication connection between code process disconnects;If disconnected, the state parameter of target call back function is set It is set to 0;Judge whether the state parameter of target call back function is currently zero by the host process in target call back function; If it is zero, determine that the RPC communication connection between host process and decoding process has disconnected.
The bottom of RPC communication connection between host process and decoding process depends on the name pipeline of Windows system Agreement, it is name pipeline session that host process and decoding process, which are named the corresponding function class of pipeline communication: NamedPipeSession.It is then corresponding, monitor the RPC communication between host process and decoding process connects the mistake whether disconnected Journey is specific as follows:
If step a, the inside that RPC communication connects between host process and decoding process detects that name pipeline session exists It reads and mistake has occurred in data procedures, and error code is target error code: when ERROR_BROKEN_PIPE, determining decoding Name pipeline communication between process and host process is in an off state.
Step b, after by naming pipeline session NamePipeSession to detect that name pipeline disconnects, then pass through tune So that calling the target call back function of registration in error handle function, and target is adjusted back with error handle function: OnError The state parameter of function: status is set as 0, to connect the notice disconnected as RPC communication.
Step c, the host process passed into target call back function judges the state parameter of the target call back function Whether 0 is equal to;If being equal to 0, the determining RPC communication connection between decoding process of host process has been disconnected.
In the specific implementation process, the broadcasting that rear audio is decoded in video player is controlled by decoding process, because This, initializes audio player first.The parameter specifically initialized includes: audio sample rate, audio track and audio sample lattice Formula.
When decoding process receives player phase from the readjustment of file decoding service module (MediaDecoder) notice When closing message (MDT_AudioHeader), and initAudioDevice function is called, by the player related news AudioSampleRate (audio sample rate) parameter, audioChannel (audio track) parameter, AudioSampleFormat (audio sample format) parameter initializes audio player.
A frame video image of same video resource is solved it should be noted that decoding process is cooperateed with host process Code and play process carry out citing description:
Step 1 calls decoding process to obtain current frame video image from file decoding service module;Step 2, will be current Frame video image is written in the system shared drive of decoding process creation;Step 3, decoding process send image to host process Rendering order, host process respond the Image Rendering order from decoding process, and present frame view is obtained from system shared drive Then frequency image calls update method to be updated as current frame video image the image on player;Step 5 is called Decoding process obtains next frame video image and return step 2 from file decoding service module.It is recycled with this to realize to master Control process carries out iterative decoding to video resource and is updated to the image on video player.
The technical solution provided through the embodiment of the present invention can open an ontology video file or a network video When frequency flows, it is the decoding process that connect of RPC communication between one and the host process that host process, which just will create, by the decoding into Journey is responsible for playing the audio/video decoding and audio of the video file or network video stream, and by decoded video image It is written in the system shared drive created by decoding process.Decoding process sends a rendering order to host process, when It, will the successively decoding process institute corresponding to the video file or network video stream after host process receives rendering order Each frame video image is read in the system shared drive of creation, is then drawn.To open a video money every time Source, host process will newly create the broadcasting of audio after decoding and decoding of the decoding process to be responsible for the video resource. And it is not take up the first decoding process being decoded to other video resources and audio plays, it further avoids and opens view more The problem of difference of original result of broadcast caused by frequency and broadcasting Caton.
Based on the same inventive concept, the embodiment of the present invention provides a kind of video decoding process protective device, with reference to Fig. 2 institute Show, comprising:
Function acquiring unit 201, host process creation for cooperateed with the host process to same video resource into When row decoding and the decoding process played, it is used to enumerate working as from obtaining in task manager in SSDT system service descriptor table The destination service function of preceding all processes;
List acquiring unit 202, for calling the destination service function to obtain process list, the process list includes The current respective process structure information of all processes of system;
Write-protect unit 203 is removed, goes write-protect for the memory to the SSDT table;
Function replacement unit 204, for being replaced with the destination service function and target clothes by hooking operation The different new demand servicing function of business function;
Unit 205 is removed, it is corresponding for removing the decoding process from process list by the new demand servicing function Process structure information.
In one embodiment, the function acquiring unit 201 is specifically used for executing following steps:
The address where the destination service function is oriented by the service number of the destination service function;
Address where the destination service function obtains the destination service function.
In one embodiment, described to remove write-protect unit 203, it is specifically used for executing following steps:
Create new virtual memory corresponding with the decoding process;
Original virtual memory where the SSDT table is mapped into the new virtual memory, so that the new virtual memory Same physical memory corresponding with the virtual memory where the SSDT table;
Lock the descriptor memory symbol of the new virtual memory.
In one embodiment, function replacement unit 204 is specifically used for executing following steps:
According to the service number of the descriptor memory of the new virtual memory of locking symbol and the destination service function, from described The destination service function is identified in new virtual memory and replaces with the new demand servicing function.
In one embodiment, unit 205 is removed, is specifically used for executing following steps: passing through the new service function It is obtained from the process list and removes process structure information identical with the process title of the decoding process.
In one embodiment, unit 205 is removed, is specifically used for executing following steps:
Step a: judging whether the process title in current process structure variable is equal to the process title of the decoding process, If so, b is thened follow the steps, it is no to then follow the steps e, wherein assignment has current process in the current process structure variable Process structure information;
Step b, judge whether upper process structure variable is equal to 0, if being not equal to 0, then follow the steps c, otherwise execute Step d, wherein assignment has the process structure information of a upper process in the upper process structure variable;
Step c, judge process structure information corresponding to the decoding process whether the process list interposition It sets, if it is, passing through prev.NextEntryDelta+=current.NextEntryDelta for the decoding process Process structure information is removed from the process list;Otherwise pass through prev.NextEntryData=0 for the decoding process Corresponding process structure information is removed from the process list, wherein prev.NextEntryDelta is a upper process NextEntryDelta field in structure variable, current.NextEntryDelta are in the current process structure variable NextEntryDelta field;
Step d, judges whether the NextEntryDelta field in the current process structure variable is equal to 0, if waited In 0, then by directly setting 0 for process list, by the process structure information of the decoding process from the process list Otherwise middle removal passes through SystemInformation+=current.NextEntryDelta for the process of the decoding process Structural information is removed from the process list, wherein SystemInformation indicates the process list;
Step e, current process structure variable is set as a process structure variable, and benefit is assigned to when future variable again Value, and judge whether the NextEntryDelta field of the current process structure variable after assignment again is equal to 0, if be not equal to 0, return step b.
In one embodiment, described device further include:
Disconnection detection unit solves same video resource for cooperateing in the host process with the decoding process During code and broadcasting, whether the RPC communication connection monitored between the host process and the decoding process is disconnected;
Creating unit, when for monitoring that the connection of the RPC communication between the host process and the decoding process disconnects, It creates new decoding process and establishes the connection of the RPC communication between the new decoding process and the host process;
Continue broadcast unit, for cooperateing with the host process to the video resource by the new decoding process Continue to decode and play.
Further, the continuation broadcast unit, is specifically used for:
The current decoding progress of the video resource is sent to the new decoding process by the host process and is deposited Store up station location marker;
The video resource is obtained according to storage location mark by the new decoding process, and from video resource Current decoding progress continues to decode the video resource;
It is written the decoded video image that decoding obtains is continued to the video resource by the new decoding process In the system shared drive created by the decoding process;
By the host process in response to the Image Rendering order from the new decoding process, with from the decoding The subsequent decoding rear video image of the video resource is read in the system shared drive that process is created;
The subsequent decoding rear video image of the video resource is drawn by the host process, and by described new Audio plays out after decoding process synchronizes the subsequent decoding to the video resource.
Described device further include:
Audio time recording unit, for the new decoding process, audio is carried out after the decoding to the video resource When broadcasting, audio time stamp when audio plays after the current frame decoding of the video resource is recorded;
Video time acquiring unit is obtained from the file decoding service module for obtaining the new decoding process Video time stamp when the present frame decoded video image of the video resource;
Judging unit, judges whether the video time stamp is less than or equal to the audio time stamp;
Image-erasing unit, for if it is determined that the judging result of unit be it is yes, be from what the decoding process was created The present frame decoded video image is deleted in system shared drive.
Based on the same inventive concept, refering to what is shown in Fig. 3, the embodiment of the invention provides a kind of computer readable storage mediums 301, it is stored thereon with computer program 302, which realizes aforementioned modal dialog box processing method when being executed by processor The step of any embodiment in embodiment.
Based on the same inventive concept, the embodiment of the invention provides a kind of computer equipments 400, refering to what is shown in Fig. 4, including Memory 410, processor 420 and it is stored in the computer program 411 that can be run on memory 410 and on processor 420, located The step of reason device 420 realizes any embodiment in aforementioned modal dialog box processing method embodiment when executing program 411.
The one or more technical solutions provided in the embodiment of the present invention, have at least the following technical effects or advantages:
Due to from task manager obtain SSDT system service descriptor table in destination service function;Invocation target clothes Business function obtains process list, and the process list includes the system currently respective process structure information of all processes;To SSDT The memory of table goes write-protect;Destination service function is replaced with to the new demand servicing function different from destination service function;By newly taking Business function removes the corresponding process structure information of decoding process from process list.To go to write guarantor due to the memory to SSDT table Shield is arranged further through new demand servicing function from process so as to replace with different new demand servicing function to destination service function The corresponding process structure information of decoding process is removed in table, so that task manager gets the process structure letter of decoding process Breath, it is achieved that concealing decoding process for task manager, then decoding process cannot be killed by task manager Extremely.So that video playing frame more safety and stability, and then avoid stopping in the video display process of player main program.
Although preferred embodiments of the present invention have been described, it is created once a person skilled in the art knows basic Property concept, then additional changes and modifications may be made to these embodiments.So it includes excellent that the following claims are intended to be interpreted as It selects embodiment and falls into all change and modification of the scope of the invention.
Obviously, various changes and modifications can be made to the invention without departing from essence of the invention by those skilled in the art Mind and range.In this way, if these modifications and changes of the present invention belongs to the range of the claims in the present invention and its equivalent technologies Within, then the present invention is also intended to include these modifications and variations.

Claims (8)

1. a kind of video decoding process guard method characterized by comprising
Host process creation for cooperateed with the host process decoding that same video resource is decoded and is played into Cheng Shi, from the destination service for being used to enumerate current all processes obtained in task manager in SSDT system service descriptor table Function;
Call the destination service function to obtain process list, the process list include system currently all processes it is respective into Journey structural information;
Write-protect is gone to the memory of the SSDT table, is specifically included: creation new virtual memory corresponding with the decoding process;It will Original virtual memory where the SSDT table maps to the new virtual memory, so that the new virtual memory and the SSDT Virtual memory where table corresponds to same physical memory;Lock the descriptor memory symbol of the new virtual memory;
The destination service function is replaced with to the new demand servicing function different from the destination service function by hooking operation;
The corresponding process structure information of the decoding process is removed from process list by the new demand servicing function, it is specific to wrap Include: the process structure information for each process for including in the process list includes that process name claims, and passes through the new service letter Number obtains from the process list and removes process structure information identical with the process title of the decoding process.
2. video decoding process guard method as described in claim 1, which is characterized in that described to be obtained from task manager Destination service function in SSDT system service descriptor table, comprising:
The address where the destination service function is oriented by the service number of the destination service function;
Address where the destination service function obtains the destination service function.
3. video decoding process guard method as described in claim 1, which is characterized in that described operated by hook will be described Destination service function replaces with the new demand servicing function different from the destination service function, comprising:
According to the service number of the descriptor memory of the new virtual memory of locking symbol and the destination service function, from the new void The destination service function is identified in quasi- memory and replaces with the new demand servicing function.
4. video decoding process guard method as described in claim 1, which is characterized in that described to pass through the new service letter Number obtains from the process list and removes process structure information identical with the process title of the decoding process, comprising:
Step a: judging whether the process title in current process structure variable is equal to the process title of the decoding process, if It is to then follow the steps b, it is no to then follow the steps e, wherein assignment has the process of current process in the current process structure variable Structural information;
Step b, judge whether upper process structure variable is equal to 0, if being not equal to 0, then follow the steps c, it is no to then follow the steps D, wherein assignment has the process structure information of a upper process in the upper process structure variable;
Step c, judge process structure information corresponding to the decoding process whether in the middle position of the process list, such as Fruit is then to pass through prev.NextEntryDelta+=current.NextEntryDelta for the process knot of the decoding process Structure information is removed from the process list;Otherwise by prev.NextEntryData=0 that the decoding process is corresponding Process structure information is removed from the process list, wherein prev.NextEntryDelta is that a upper process structure becomes NextEntryDelta field in amount, current.NextEntryDelta are in the current process structure variable NextEntryDelta field;
Step d, judges whether the NextEntryDelta field in the current process structure variable is equal to 0, if being equal to 0, Then by directly setting 0 for process list, the process structure information of the decoding process is moved from the process list It removes, otherwise passes through SystemInformation+=current.NextEntryDelta for the process structure of the decoding process Information is removed from the process list, wherein SystemInformation indicates the process list;
Step e, current process structure variable is set as a process structure variable, and benefit gives again and works as future variable assignments, And judge whether the NextEntryDelta field of the current process structure variable after assignment again is equal to 0, if being not equal to 0, Return step b.
5. video decoding process guard method as described in claim 1, which is characterized in that described in host process creation After decoding process, the method also includes:
During the host process cooperates with the decoding process and same video resource is decoded and is played, monitoring Whether the RPC communication connection between the host process and the decoding process disconnects;
When monitoring that the RPC communication connection between the host process and the decoding process disconnects, new decoding process is created And establish the connection of the RPC communication between the new decoding process and the host process;
It is cooperateed with by the new decoding process with the host process and the video resource is continued to decode and be played.
6. a kind of video decoding process protective device characterized by comprising
Function acquiring unit is created in host process and is decoded simultaneously for cooperateing with the host process to same video resource When the decoding process of broadcasting, from obtained in task manager in SSDT system service descriptor table for enumerate it is current it is all into The destination service function of journey;
List acquiring unit, for calling the destination service function to obtain process list, the process list is worked as comprising system The preceding respective process structure information of all processes;
Write-protect unit is removed, write-protect is gone for the memory to the SSDT table, specifically includes: creation and the decoding process pair The new virtual memory answered;Original virtual memory where the SSDT table is mapped into the new virtual memory, so that described new Virtual memory same physical memory corresponding with the virtual memory where the SSDT table;The memory for locking the new virtual memory is retouched State symbol;
Function replacement unit, for being replaced with the destination service function with the destination service function not by hooking operation Same new demand servicing function;
Unit is removed, for removing the corresponding process structure of the decoding process from process list by the new demand servicing function Information specifically includes: the process structure information for each process for including in the process list includes that process name claims, by described New service function obtains from the process list and removes process structure identical with the process title of the decoding process Information.
7. a kind of computer readable storage medium, is stored thereon with computer program, which is characterized in that the program is held by processor Method described in any claim in claim 1-5 is realized when row.
8. a kind of computer equipment, is stored thereon with computer program, which is characterized in that the realization when program is executed by processor Method described in any claim in claim 1-5.
CN201710930589.9A 2017-10-09 2017-10-09 A kind of video decoding process guard method and device Active CN107729132B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710930589.9A CN107729132B (en) 2017-10-09 2017-10-09 A kind of video decoding process guard method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710930589.9A CN107729132B (en) 2017-10-09 2017-10-09 A kind of video decoding process guard method and device

Publications (2)

Publication Number Publication Date
CN107729132A CN107729132A (en) 2018-02-23
CN107729132B true CN107729132B (en) 2019-10-25

Family

ID=61208649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710930589.9A Active CN107729132B (en) 2017-10-09 2017-10-09 A kind of video decoding process guard method and device

Country Status (1)

Country Link
CN (1) CN107729132B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449634A (en) * 2018-03-27 2018-08-24 武汉斗鱼网络科技有限公司 A kind of decoded playback method of multi-process, computer equipment and storage medium

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509272B (en) * 2018-03-22 2020-10-16 武汉斗鱼网络科技有限公司 Method and device for copying GPU (graphics processing Unit) video memory texture to system memory and electronic equipment
CN111083569B (en) * 2018-10-18 2021-11-05 杭州海康威视数字技术股份有限公司 Video playing method and device
CN109669778B (en) * 2018-12-21 2023-09-01 北京奇虎科技有限公司 Method and system for determining number of parallel processes for running unit

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801961A (en) * 2012-08-21 2012-11-28 北京捷成世纪科技股份有限公司 Multiprocess-based audio/video data processing method and system
CN103455361A (en) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 Design method for calling 32-bit decoding library under 64-bit operating system
CN104881291A (en) * 2015-06-03 2015-09-02 北京金山安全软件有限公司 Control method and device of default browser and terminal
CN106203093A (en) * 2016-06-30 2016-12-07 北京金山安全软件有限公司 Process protection method and device and terminal
CN106469272A (en) * 2016-08-31 2017-03-01 北京力鼎创软科技有限公司 A kind of windows process protection method and system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102768720B (en) * 2012-03-20 2019-02-22 新奥特(北京)视频技术有限公司 A kind of method of Process Protection
CN102831344B (en) * 2012-07-27 2015-04-15 北京奇虎科技有限公司 Course handling method and device
CN104715202B (en) * 2015-03-31 2018-06-12 北京奇虎科技有限公司 Hidden process detection method and device in a kind of virtual machine

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801961A (en) * 2012-08-21 2012-11-28 北京捷成世纪科技股份有限公司 Multiprocess-based audio/video data processing method and system
CN103455361A (en) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 Design method for calling 32-bit decoding library under 64-bit operating system
CN104881291A (en) * 2015-06-03 2015-09-02 北京金山安全软件有限公司 Control method and device of default browser and terminal
CN106203093A (en) * 2016-06-30 2016-12-07 北京金山安全软件有限公司 Process protection method and device and terminal
CN106469272A (en) * 2016-08-31 2017-03-01 北京力鼎创软科技有限公司 A kind of windows process protection method and system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449634A (en) * 2018-03-27 2018-08-24 武汉斗鱼网络科技有限公司 A kind of decoded playback method of multi-process, computer equipment and storage medium
CN108449634B (en) * 2018-03-27 2021-04-23 武汉斗鱼网络科技有限公司 Playing method for multi-process decoding, computer equipment and storage medium

Also Published As

Publication number Publication date
CN107729132A (en) 2018-02-23

Similar Documents

Publication Publication Date Title
CN107729132B (en) A kind of video decoding process guard method and device
CN107566843B (en) A kind of video decoding process guard method and device
CN101589369B (en) Reproducing apparatus, system LSI, and initialization method
CN107484011A (en) A kind of video resource coding/decoding method and device
CN107484010A (en) A kind of video resource coding/decoding method and device
CN100437453C (en) Tag information display control apparatus, information processing apparatus, display apparatus, tag information display control method and recording medium
US8838758B2 (en) Sink device addressing mechanism
US20110305435A1 (en) Playback device, recording medium, playback method and program
CN104253860A (en) Shared storage message queue-based implementation method for high availability of virtual machines
US20060002409A1 (en) Faults and status in virtual private networks
CN108933948A (en) A kind of video playing progress synchronous method and device
CN103563356B (en) Method for displaying service list and image display device using the same
CN107704360A (en) Processing method, equipment, server and the storage medium of monitoring data
CN109246182A (en) A kind of Distributed Lock Manager and its implementation
CN108449634A (en) A kind of decoded playback method of multi-process, computer equipment and storage medium
CN101853180A (en) Method for realizing application management and non-intelligent mobile terminal
CN105959743A (en) Video advertisement playing method and device and server
CN100558142C (en) A kind of method, application and device that changes application state in a plurality of current service
CN109324942A (en) The dual-active processing method of micro services, apparatus and system, equipment, storage medium
CN111356023A (en) Playing mode determining method and device
CN109088830B (en) Port state synchronization method and device
JP3777090B2 (en) Method and mechanism for providing error correction
CN106487633A (en) A kind of abnormal monitoring method of virtual machine and device
CN116320448B (en) Video decoding session multiplexing optimization method based on dynamic self-adaptive resolution
US8424008B2 (en) Application management support for acquiring information of application programs and associated logical volume updates and displaying the acquired information on a displayed time axis

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
TR01 Transfer of patent right

Effective date of registration: 20240528

Address after: 100000 616, floor 6, 33 Suzhou street, Haidian District, Beijing

Patentee after: Baosheng (China) Technology Industry Co.,Ltd.

Country or region after: China

Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building

Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.

Country or region before: China