CN108696772A - A kind of transmission method and device of real-time video - Google Patents
A kind of transmission method and device of real-time video Download PDFInfo
- Publication number
- CN108696772A CN108696772A CN201710233377.5A CN201710233377A CN108696772A CN 108696772 A CN108696772 A CN 108696772A CN 201710233377 A CN201710233377 A CN 201710233377A CN 108696772 A CN108696772 A CN 108696772A
- Authority
- CN
- China
- Prior art keywords
- video
- sending end
- server
- time
- real
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 254
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000012634 fragment Substances 0.000 claims abstract description 114
- 238000012790 confirmation Methods 0.000 claims abstract description 82
- 230000004913 activation Effects 0.000 claims abstract description 11
- 238000012937 correction Methods 0.000 claims description 39
- 230000004044 response Effects 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 7
- 230000003993 interaction Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000005577 local transmission Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2385—Channel allocation; Bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
Abstract
The embodiment of the invention discloses a kind of transmission method of real-time video and devices.The method includes:Video sending end sends connection request to video server, and receives the connection confirmation message that the video server returns, and is connected with being established with the video server;Wherein, the connection request includes the identification information of the video sending end;The video server opens transmission channel corresponding with the video sending end after receiving the connection request, according to the associated at least one video playing end of identification information activation;The video frame fragment of the Video coding frame generated in real time is sent to the video server by the video sending end according to setting data transmission parameters, so that the video frame fragment is forwarded to the video playing end progress real-time video broadcasting for opening corresponding transmission channel by the video server.Technical solution through the embodiment of the present invention can reduce transmission of video delay, improve user experience.
Description
Technical field
The present embodiments relate to computer technology more particularly to the transmission methods and device of a kind of real-time video.
Background technology
With the continuous universal and development of internet, mobile Internet net cast is in blowout hair like a raging fire
In exhibition.Traditional live streaming is one-way type mostly, for example TV station or operator's live streaming, user only need the receipts that open a terminal
It sees, for real-time, there is no too big requirements.And mobile Internet net cast often functionally needs to record end
There are interaction, this interaction to be not limited to the interaction of word with end is played, further includes the interaction of video, therefore, mobile Internet video
It is higher that requirement of real-time is broadcast live.
Currently, the transmission method of real-time video is in mobile Internet net cast, records end acquisition video data and press
Video coding is carried out according to X264 formats, by QoS (Quality of Service, service quality) algorithms by video stream data base
RTMP (Real Time on TCP (Transmission Control Protocol, transmission control protocol)
Messaging Protocol, real-time messages transport protocol) plug-flow to CDN, (divide by Content Delivery Network, content
Hairnet network) server is distributed, and it plays end and draws stream decoding to play from CDN server.
The real-time video live streaming delay of the prior art is shown is based on RTMP plug-flows to CDN and from CDN by video stream data
Stream caching is drawn to play based on RTMP, and the data transmission procedure based on TCP is excessively complicated, so that whole network link regards
Frequency transmission delay is usually at 1-3 seconds or worse.
Invention content
The embodiment of the present invention provides a kind of transmission method and device of real-time video, and transmission of video delay is reduced to realize,
Improve user experience.
In a first aspect, an embodiment of the present invention provides a kind of transmission methods of real-time video, including:
Video sending end sends connection request to video server, and receives the connection that the video server returns and confirm
Information is connected with being established with the video server;
Wherein, the connection request includes the identification information of the video sending end;The video server is connecing
After receiving the connection request, according to the associated at least one video playing end of identification information activation open with it is described
The corresponding transmission channel of video sending end;
The video sending end is according to setting data transmission parameters by the video frame fragment of the Video coding frame generated in real time
It is sent to the video server, so that the video frame fragment is forwarded to the corresponding transmission channel of opening by the video server
Video playing end carry out real-time video broadcasting.
Second aspect, the embodiment of the present invention additionally provide a kind of transmission method of real-time video, including:
The connection request that video server is sent according to the video sending end returns corresponding to the video sending end
Confirmation message is connected, is connected with being established with the video sending end, wherein the connection request includes the video sending end
Identification information;
The identification information is sent to associated at least one video playing end by the video server, with activation
Open transmission channel corresponding with the video sending end in the video playing end;
The video server receives what the video sending end was sent according to setting data transmission parameters, generates in real time
The video frame fragment of Video coding frame, and the video frame fragment is forwarded to open the video playing end of corresponding transmission channel into
Row real-time video plays.
The third aspect, the embodiment of the present invention additionally provide a kind of transmission method of real-time video, and this method includes:
Video playing end receives the identification information for the video sending end that video server is sent;
Transmission channel list is inquired according to the identification information in the video playing end, determine and open with it is described
The corresponding transmission channel of video sending end, wherein record has identification information and transmission channel in the transmission channel list
Between correspondence;
The video player receives the video sending end of the video server forwarding by the transmission channel
According to the video frame fragment for the Video coding frame generated in real time that setting data transmission parameters are sent;
The video playing end carries out real-time video broadcasting according to the video frame fragment received.
Fourth aspect, the embodiment of the present invention additionally provide a kind of transmitting device of real-time video, are configured at video sending end,
The device includes:
Connection request sending module for sending connection request to video server, and receives the video server and returns
The connection confirmation message returned is connected with being established with the video server;
Wherein, the connection request includes the identification information of the video sending end;The video server is connecing
After receiving the connection request, according to the associated at least one video playing end of identification information activation open with it is described
The corresponding transmission channel of video sending end;
Video slicing sending module is regarded according to setting data transmission parameters by what is generated in real time for the video sending end
The video frame fragment of frequency coded frame is sent to the video server, so that the video server turns the video frame fragment
It is sent to the video playing end progress real-time video broadcasting for opening corresponding transmission channel.
5th aspect, the embodiment of the present invention additionally provide a kind of transmitting device of real-time video, are configured at video server,
The device includes:
Connection, which confirms, returns to module, and the connection request for being sent according to the video sending end is sent to the video
End returns to corresponding connection confirmation message, is connected with being established with the video sending end, wherein the connection request includes described
The identification information of video sending end;
Identification information sending module, for the identification information to be sent to associated at least one video playing
End, to activate the video playing end to open transmission channel corresponding with the video sending end;
Video slicing forwarding module, for receiving the video sending end according to setting data transmission parameters transmission, in fact
The video frame fragment of the Video coding frame of Shi Shengcheng, and the video frame fragment is forwarded to the video for opening corresponding transmission channel
It plays end and carries out real-time video broadcasting.
6th aspect, the embodiment of the present invention additionally provide a kind of transmitting device of real-time video, are configured at video playing end,
The device includes:
Identification information receiving module, the identification information of the video sending end for receiving video server transmission;
Transmission channel opens module, for according to the identification information, inquiring transmission channel list, determines and opens
Transmission channel corresponding with the video sending end, wherein record has identification information and passes in the transmission channel list
Correspondence between defeated channel;
Video slicing receiving module, the video for receiving the video server forwarding by the transmission channel
The video frame fragment for the Video coding frame generated in real time that transmitting terminal is sent according to setting data transmission parameters;
Real-time video playing module carries out real for the video playing end according to the video frame fragment received
When video playing.
The embodiment of the present invention sends connection request by video sending end to video server, to be established with video server
After connection, the video frame fragment of the Video coding frame generated in real time is sent to by video sending end according to setting data transmission parameters
Video server, and then video playing end is transmitted to by video server and carries out real-time video broadcasting.It is once asked due to only sending
It asks and establishes connection, and Video coding frame is divided into several video frame fragments after a connection setup and is sent, solve existing
Have because needing the complex process by three-way handshake before being attached based on TCP in technology, and uses and be directly based upon video counts
The method for being transmitted and playing according to stream, and transmission of video is caused to postpone high problem, realizing reduces transmission of video delay, carries
The effect of high user experience.
Description of the drawings
Fig. 1 is a kind of flow diagram of the transmission method for real-time video that the embodiment of the present invention one provides;
Fig. 2 is a kind of flow diagram of the transmission method of real-time video provided by Embodiment 2 of the present invention;
Fig. 3 is a kind of flow diagram of the transmission method for real-time video that the embodiment of the present invention three provides;
Fig. 4 is a kind of flow diagram of the transmission method for real-time video that the embodiment of the present invention four provides;
Fig. 5 is a kind of structural schematic diagram of the transmitting device for real-time video that the embodiment of the present invention five provides;
Fig. 6 is a kind of structural schematic diagram of the transmitting device for real-time video that the embodiment of the present invention six provides;
Fig. 7 is a kind of structural schematic diagram of the transmitting device for real-time video that the embodiment of the present invention seven provides.
Specific implementation mode
The present invention is described in further detail with reference to the accompanying drawings and examples.It is understood that this place is retouched
The specific embodiment stated is used only for explaining the present invention rather than limitation of the invention.It also should be noted that in order to just
Only the parts related to the present invention are shown in description, attached drawing rather than entire infrastructure.
Embodiment one
Fig. 1 is a kind of flow diagram of the transmission method for real-time video that the embodiment of the present invention one provides.This method can
Suitable for the transmission situation of real-time video, this method can be executed by the transmitting device of real-time video, which can be by hardware
And/or software composition, and can generally be integrated in video sending end and all intelligent terminals comprising video sending function.Tool
Body includes as follows:
S110, video sending end send connection request to video server, and the connection for receiving video server return is true
Recognize information, is connected with being established with video server.
Wherein, video sending end can be for example crowd video originator, can also be crowd video new entrant.It is exemplary
, when a client newly initiates group's video session to video server, then the client relative to other participation group's videos
For end, which is video sending end;When a client needs that group's video newly is added, then relative to other
For the client for participating in group's video, which is video sending end.
Optionally, connection request may include UID (User Identification, the user identity mark of video sending end
Know), can also include IP (Internet Protocol, the agreement interconnected between network) address of video sending end.
Relative to the connection type of three-way handshake used by connection-oriented TCP, connection used in the embodiment of the present invention
Mode reduces the complexity of connection procedure, shortens connection setup time, and for towards connectionless UDP (User
Datagram Protocol, User Datagram Protocol) transmission mode, the transmission used in the embodiment of the present invention based on connection
Mode provides reliable transmission mechanism so that subsequent data transmission process is relatively reliable.Therefore, by video sending end to regarding
Frequency server sends connection request to be advantageous in that with establishing connection with video server, can be improved reducing the while of postponing
The reliability of subsequent data transmission.
S120, wherein, connection request includes the identification information of video sending end;Video server is receiving connection
After request, transmission corresponding with video sending end is opened according to the associated at least one video playing end of identification information activation
Channel.
Wherein, identification information can be the UID of video sending end.Illustratively, video server is connected with multiple
Video playing end, when there is video sending end to connect video server, video server is needed the identity of the video sending end
Identification information is sent to all video playing ends being connected with video server, is sent with the video so that video playing end is opened
Hold corresponding transmission channel.Wherein, transmission channel is specifically as follows the network port.It is logical to open transmission corresponding with video sending end
The purpose in road is, dedicated data transmission corresponding with the video sending end is provided for the transmission of video frame fragment in subsequent step
Channel so that when there are multiple video sending ends simultaneously to the same video playing end transmission data when can be independent of each other.
S130, video sending end are according to setting data transmission parameters by the video frame fragment of the Video coding frame generated in real time
It is sent to video server, so that video frame fragment is forwarded to the video playing end for opening corresponding transmission channel by video server
Carry out real-time video broadcasting.
Optionally, setting data transmission parameters may include setting the resolution ratio of video encoder, and/or setting data pass
Defeated code check.Preferably, Video coding frame according to preset resolution ratio and can use the form of h264 to reality by video encoder
When collected video data encoded to obtain.
Wherein, video frame fragment can be obtained by Video coding frame after fragment is handled.Illustratively, work as video encoder
When encoding out the complete h264 Video codings frame of a frame, video sending end needs send the Video coding frame, and for
High-resolution Video coding frame, the size of frame are often higher than the Network Maximum Transmission unit in the transmission mode based on UDP, because
This needs video sending end to retransmit the progress fragment processing of Video coding frame, carries out video as unit of video frame fragment every time
The transmission of data, to efficiently solve the problems, such as that slowed-down video is high caused by transmission unit is excessive, reduces video
Transmission delay.
Preferably, in video sending end according to setting data transmission parameters by the video frame of the Video coding frame generated in real time
Fragment is sent to after video server, further includes:Video sending end, which is sent, disconnects request to video server, and receives video
The disconnection confirmation message that server returns, to be disconnected with video server;Wherein, video server is asked receiving disconnection
After asking, transmission channel corresponding with video sending end is closed at the associated at least one video playing end of control.
Illustratively, when there is client needs to exit group video in group's video, the visitor relative to other participation group's videos
For the end of family, need the client for exiting group video that can be considered as video sending end, and other clients for participating in group's video can
It is considered as video playing end, video sending end can disconnect request to disconnect the company between video server by sending at this time
It connects, and then discharges relevant connection resource, video server is also required to after receiving disconnection request, and all video playing ends is notified to close
Transmission channel corresponding with the video sending end is closed, to save channel resource.
The technical solution of the present embodiment sends connection request, to be taken with video by video sending end to video server
It is engaged in after device foundation connection, video sending end divides the video frame of the Video coding frame generated in real time according to setting data transmission parameters
Piece is sent to video server, and then is transmitted to video playing end by video server and carries out real-time video broadcasting.Due to only sending out
It send primary request to establish connection, and Video coding frame is divided into several video frame fragments after a connection setup and is sent,
It solves in the prior art because needing the complex process by three-way handshake before being attached based on TCP, and uses direct base
In the method that video data stream is transmitted and is played, and transmission of video is caused to postpone high problem, realizing, which reduces video, passes
Defeated delay improves the effect of user experience.
Embodiment two
Fig. 2 is a kind of flow diagram of the transmission method of real-time video provided by Embodiment 2 of the present invention.The present embodiment
It is optimized based on above-described embodiment, provides the transmission method of preferred real-time video, specifically, in video sending end
The connection confirmation message for sending connection request to video server, and receiving video server return has carried out further excellent later
Change.It specifically includes as follows:
S210, video sending end send connection request to video server, and the connection for receiving video server return is true
Recognize information, is connected with being established with video server.
S220, wherein, connection request includes the identification information of video sending end;Video server is receiving connection
After request, transmission corresponding with video sending end is opened according to the associated at least one video playing end of identification information activation
Channel.
S230, video sending end are asked according to the audio video synchronization that video server is sent, and are returned and are corresponded to video server
Audio video synchronization confirmation message.
Wherein, audio video synchronization confirmation message includes:Originate the sequence number and currently transmitted video frame point of video frame fragment
The sequence number of piece;Video server confirmation have target video play end open transmission channel corresponding with video sending end when,
Audio video synchronization request is sent to video sending end, so that target video plays the playing progress rate that end obtains real-time video.
Optionally, confirmation of synchronization information can be sent to video server by handshake, and be passed through by video server
Handshake is transmitted to video sending end.Wherein, starting video frame fragment can be that the key frame (I frames) in video pictures group is right
The first video frame fragment answered.The purpose for providing the sequence number of starting video frame fragment is, makes video playing end can be from this
Key frame where starting video frame fragment plays out, to avoid the when of playing from Huaping phenomenon occur.Currently transmitted regard is provided
The purpose of the sequence number of frequency frame fragment is, enables video playing end according to the sequence number update of currently transmitted video frame fragment
Currently playing progress.It can be seen that video sending end returns to the benefit of corresponding audio video synchronization confirmation message to video server
It is, target video can be made to play the playing progress rate that end obtains real-time video in time, to reduce slowed-down video.
Optionally, the execution sequence of S220 and S230 can exchange, and can also be carried out at the same time.
S240, video sending end according to time of currently transmitted video frame fragment and it is last receive receive confirm response when
Between calculate network-induced delay.
Since network has unpredictability, it is possible that the case where shake, congestion or a large amount of packet losses, if according to
Fixed code check and parameter send video frame fragment, and the transmission that may result between video sending end and video playing end is logical
Road more congestion, to make the playout-delay higher at broadcasting end or a large amount of mosaics occur.So needing by being sent in video
Real-time estimation current bandwidth is held to detect current network conditions, to adjust video encoder according to current network conditions in real time
Frame per second or code check.Optionally, can one timer be set in video sending end, does a bandwidth system at predetermined time intervals
Meter.
Preferably, network-induced delay can be calculated according to formula delay_ts_delta=cur_ts-acked_ts,
In, delay_ts_delta indicates network-induced delay;Cur_ts indicates the time of currently transmitted video frame fragment;acked_ts
It indicates finally to receive the time for receiving and confirming response.Illustratively, the time of currently transmitted video frame fragment, i.e., current positive transmission
Video frame fragment time be t1, the time for receiving and confirming response is finally received, i.e. the last time receives reception confirmation response
Time be t2, then current network-induced delay is t1-t2。
S250, video sending end receive the bandwidth for confirming response and on last stage according to receiving in the current one time
Bandwidth variation correction value determines that current bandwidth shakes correction value.
Illustratively, corresponding bandwidth can be estimated according to the case where receiving reception confirmation response in the current one time
Value receives the bandwidth for receiving and confirming response in the current one time.Wherein, on bandwidth variation correction value on last stage refers to
The bandwidth variation correction value being calculated when bandwidth measurement.
Preferably, the video sending end confirms the bandwidth and upper one responded according to reception is received in the current one time
The bandwidth variation correction value in stage calculates current bandwidth and shakes correction value, including:Video sending end is according to formulaIt calculates current bandwidth and shakes correction value;Wherein, acked_bw is current bandwidth
Shake correction value, acked_bw0For bandwidth variation correction value on last stage, bw is to receive reception in the current one time to confirm
The bandwidth of response.In addition, by the calculation formula of acked_bw it is found that the value of acked_bw is integer value.It is calculated when for the first time
When acked_bw, acked_bw0Value be 0.
S260, video sending end update the data configured transmission according to network-induced delay and current bandwidth shake correction value.
Preferably, bandwidth of every 10 seconds statistics, and then update a data transmission parameters.Periodically update data transmission
Parameter is advantageous in that, can be according to current network conditions real-time aligned data configured transmission, and then improves biography to greatest extent
Defeated efficiency reduces slowed-down video, improves user experience.
Preferably, configured transmission is updated the data according to network-induced delay and current bandwidth shake correction value, including:If working as
Preceding video frame fragment and network-induced delay in the presence of repeating transmission is more than predetermined threshold value, then sets desired bandwidth value to current bandwidth
Correction value is shaken, and reduces the value of data transmission parameters according to desired bandwidth value, wherein data transmission parameters include:Video
The resolution ratio and/or data transmission code check of encoder;If there is currently no the shakes of the video frame fragment and current bandwidth of repeating transmission to repair
Positive value is more than 0, then setting desired bandwidth value to current bandwidth shakes the preset multiple of correction value, and is carried according to desired bandwidth value
The value of high data transmission parameters;If current bandwidth, which shakes correction value, is equal to 0, the value of data transmission parameters is kept.
Illustratively, if delay_ts_delta is more than 8 × MAX (rtt+rtt_var, 100), then dst_bw=acked_
Bw, and then resolution ratio, frame per second and/or the data transmission code check of video encoder are reduced to protect according to the value of updated dst_bw
Demonstrate,prove the real-time played and fluency;If acked_bw be more than 0, dst_bw=acked_bw*9/8, and then according to update after
Dst_bw value improve video encoder resolution ratio, frame per second and/or data transmission code check, come restore clarity and improve use
Family plays experience;If acked_bw be equal to 0, do not update the value of dst_bw, that is, keep current video encoder resolution ratio,
Frame per second and/or data transmission code check are constant.Wherein, delay_ts_delta indicates network-induced delay;Rtt indicates current video
The round-trip transmission time of frame fragment;The correction value of rtt is rtt_var, and rtt_var can be obtained according to existing rtt correction algorithms;
Dst_bw indicates desired bandwidth value;Acked_bw is that current bandwidth shakes correction value.
S270, video sending end are according to setting data transmission parameters by the video frame fragment of the Video coding frame generated in real time
It is sent to video server, so that video frame fragment is forwarded to the video playing end for opening corresponding transmission channel by video server
Carry out real-time video broadcasting.
Optionally, the S240 to S260 in the present embodiment can be performed simultaneously with S270.
The technical solution of the present embodiment sends audio video synchronization confirmation message by video sending end to video server, with
It is final that target video broadcasting end is made to synchronize confirmation, in addition, being trembled according to the network-induced delay and current bandwidth that are calculated
Dynamic correction value sends video frame fragment to update the data configured transmission according to the data transmission parameters, is regarded to reduce
Defeated and playout-delay is kept pouring in, user is improved and plays experience.
Embodiment three
Fig. 3 is a kind of flow diagram of the transmission method for real-time video that the embodiment of the present invention three provides.This method can
Suitable for the transmission situation of real-time video, this method can be executed by the transmitting device of real-time video, which can be by hardware
And/or software composition, and can generally be integrated in video server and all intelligent terminals comprising transmission of video function.Tool
Body includes as follows:
The connection request that S310, video server are sent according to video sending end returns to corresponding company to video sending end
Confirmation message is connect, is connected with being established with video sending end, wherein connection request includes the identification information of video sending end.
Illustratively, it after video server receives the connection request sent by video sending end, is returned to video sending end
Corresponding connection confirmation message, is established with video sending end by the connection confirmation message of return and is connected.
Wherein, identification information can be the UID of video sending end.Preferably, connection request may include video hair
The UID of sending end and the IP address of video sending end.It, can be in Video service in order to be managed collectively the link information of each client
Corresponding information storage table is set on device, to store the UID and IP address of each client, so that video sending end is sent
Video information or video data can be forwarded by the IP address stored corresponding to the information storage table.
Identification information is sent to associated at least one video playing end by S320, video server, is regarded with activation
Frequency plays end and opens transmission channel corresponding with video sending end.
Optionally, can be to establish to connect with video server with the associated at least one video playing end of video server
At least one video playing end.
Illustratively, when newly adding client in group's video, or when the IP address hair for the client for participating in group's video
When raw change, then video server needs for the UID of the client to be sent to other clients for participating in group's video, so that other
Client records the UID of the client, and distributes and open transmission channel corresponding with the UID.
Preferably, identification information is sent in video server after associated at least one video playing end,
Further include:Video server confirmation have target video play end open transmission channel corresponding with video sending end when, to regarding
The sending end that takes place frequently sends audio video synchronization request;Video server receives the audio video synchronization confirmation message that video sending end returns, wherein
Audio video synchronization confirmation message includes:Originate the sequence number of video frame fragment and the sequence number of currently transmitted video frame fragment;It will
Audio video synchronization confirmation message be forwarded to target video play end so that target video play end obtain real-time video broadcasting into
Degree.
It optionally, can be by shaking hands when there is target video to play end opening transmission channel corresponding with video sending end
Confirmation message informs that video server transmission channel has been opened, and video server can confirm have after receiving the confirmation message of shaking hands
Target video plays end and opens transmission channel corresponding with video sending end.The mesh that audio video synchronization is asked is sent to video sending end
Be, audio video synchronization confirmation message is obtained and forwards, so that the data of video sending end send situation and video playing end
Data receiver situation is consistent, to reduce transmission of video delay.
S330, video server receive what video sending end was sent according to setting data transmission parameters, and what is generated in real time regards
The video frame fragment of frequency coded frame, and video frame fragment is forwarded to and opens the video playing end progress for corresponding to transmission channel in real time
Video playing.
Optionally, the video frame fragment that video sending end is sent is transmitted to associated regard by video server as transfer
Frequency plays end.Illustratively, each client being connected with video server in group's video is equal compared to for other clients
It can regard video sending end as, when some client will acquire and encode the video frame fragment of the Video coding frame of generation in real time
When being sent to video server, which can be sent to other clients in other clients by video server
Carry out real-time video broadcasting.
Preferably, it receives what video sending end was sent according to setting data transmission parameters in video server, generates in real time
Video coding frame video frame fragment after, further include:Video server is according to the video frame fragment of reception, real-time update life
At the Video coding frame group in setting time section, wherein Video coding frame group includes at least one key frame;By audio video synchronization
Confirmation message is forwarded to target video and plays end, further comprises:The audio video synchronization confirmation message and the video are compiled
Code frame group is forwarded to the target video and plays end, so that the video playing end to the Video coding frame group receive i.e.
Put display.
Optionally, the Video coding frame group in setting time section can specifically include at least one complete GOP (Group
Of Pictures, picture group).Wherein, key frame is specifically as follows I frames.Cache setting time area in real time in video server
Interior Video coding frame group, and be forwarded to the Video coding frame group as head screen pictures together with audio video synchronization confirmation message
Video playing end receive and puts and be advantageous in that, while video playing end can be enable to carry out data synchronization for the first time and
When play first video pictures group, reduce the playout-delay of real-time video, improve and play experience.
Preferably, it receives what video sending end was sent according to setting data transmission parameters in video server, generates in real time
Video coding frame video frame fragment, and video frame fragment is forwarded to and opens the video playing end of corresponding transmission channel and carries out
After real-time video plays, further include:Video server receives the disconnection request that video sending end is sent;Video server according to
Request is disconnected, transmission channel corresponding with video sending end is closed at the associated at least one video playing end of control;Video service
Device returns to corresponding disconnection confirmation message to video sending end, to be disconnected with video sending end.
Illustratively, if video server receives the disconnection request that some client is sent, video clothes in group's video
Business device can will disconnect other clients that request is sent in group video comprising the video of client UID, so that other clients
Transmission channel corresponding with the client is closed at end, and is sent disconnection confirmation message and given the client, is confirmed and is completed to disconnect.
The technical solution of the present embodiment, the connection request foundation that video sending end is responded by video server reliably connect
It connects, and the identity identification information of video sending end is sent to video playing end, so that corresponding transmission is opened at video playing end
Channel finally coordinates video sending end that the video frame fragment of the Video coding frame generated in real time is forwarded to associated video playing
End, to reduce transmission of video delay, improves the reliable of transmission of video so that video playing end carries out real-time video broadcasting
Property, improve user experience.
Example IV
Fig. 4 is a kind of flow diagram of the transmission method for real-time video that the embodiment of the present invention four provides.This method can
Suitable for the transmission situation of real-time video, this method can be executed by the transmitting device of real-time video, which can be by hardware
And/or software composition, and can generally be integrated in video playing end and all intelligence comprising video reception and playing function eventually
In end.It specifically includes as follows:
S410, video playing end receive the identification information for the video sending end that video server is sent.
Wherein, the identification information of video sending end can be the UID of video sending end.
Illustratively, whenever the UID for the video sending end for receiving video server transmission, you can determine that the video is sent
Group video has been added in end, it is therefore desirable to corresponding transmission channel is distributed and open, to carry out the transmission of video data.
Transmission channel list is inquired in S420, video playing end according to identification information, determines and opens and video transmission
Hold corresponding transmission channel, wherein record has the corresponding pass between identification information and transmission channel in transmission channel list
System.
Illustratively, for the client of group video is newly added, other clients for having participated in group video are video
The client for playing end, and group video being newly added is video sending end.If being stored in the transmission in other clients in group video
The UID for not including the new client that group's video is added in channel list and the transmission channel number corresponding to the UID, then by the visitor
The UID at family end and the transmission channel number for distributing to the UID are added in each transmission channel list, and when next time, the UID is corresponding
When group's video is added in client again, after only needing each client query respectively to find corresponding UID in transmission channel list, open
The transmission channel of the transmission channel number of respective record.
Preferably, at video playing end according to identification information, transmission channel list is inquired, determine and is opened and video
After the corresponding transmission channel of transmitting terminal, further include:Video playing end sends transmission channel to video server and opens confirmation letter
Breath, so that video server sends audio video synchronization request to video sending end;Video playing end receives video server forwarding
Audio video synchronization confirmation message, to obtain the playing progress rate of real-time video;Wherein, audio video synchronization confirmation message includes:Originate video
The sequence number of the sequence number of frame fragment and currently transmitted video frame fragment;Audio video synchronization confirmation message is video sending end root
The information returned according to audio video synchronization request.
Preferably, while video playing end receives the audio video synchronization confirmation message of video server forwarding, further include:
Video playing end receives the Video coding frame group corresponding with video sending end that video server is sent, and to Video coding frame group
Receive and puts display;Wherein, video server is according to the video frame fragment of reception, real-time update generation setting time section
Interior Video coding frame group, wherein Video coding frame group includes at least one key frame.
Optionally, the Video coding frame group in setting time section can be at least one GOP.To Video coding frame group into
It is to put display to be advantageous in that row, which is received, can reduce waiting time, and then reduce the playout-delay of video.
S430, video player receive the video sending end of video server forwarding according to setting data by transmission channel
The video frame fragment for the Video coding frame generated in real time that configured transmission is sent.
Illustratively, according to be stored in local transmission channel list the UID of each video sending end and transmission channel it
Between relationship, video player can pass through different transmission channels receive video server forwarding different video sending end institutes
The video frame fragment of transmission improves data transmission efficiency to realize non-interfering transmission mode between video data, and reduction regards
Frequency transmission delay.
S440, video playing end carry out real-time video broadcasting according to the video frame fragment received.
Optionally, video playing end is according to the video frame fragment received, by the corresponding video frame of different video coded frame
After fragment merges processing, real-time video broadcasting is carried out by frame.
Preferably, it is also wrapped after carrying out real-time video broadcasting according to the video frame fragment received at video playing end
It includes:Video playing end receives the open command that video server is sent, wherein open command includes the identity of video sending end
Identification information;It is logical to close transmission corresponding with video sending end according to the identification information in open command for video playing end
Road.
Illustratively, when in group's video client receive video server transmission related other clients UID disconnection
When instruction, transmission channel corresponding with client UID in closing transmission channel list, to discharge the channel resource.
The technical solution of the present embodiment coordinates video sending end to carry out to video server related by video playing end
Operation, realizing reduces transmission of video delay, improves the effect of user experience.
Embodiment five
Fig. 5 is a kind of structural schematic diagram of the transmitting device for real-time video that the embodiment of the present invention five provides.The device can
The case where suitable for being transmitted to real-time video, the device can be made of hardware and/or software, and can generally be integrated in video
In transmitting terminal and all intelligent terminals comprising video sending function.With reference to figure 5, the transmitting device of real-time video includes:Even
Request sending module 510 and video slicing sending module 520 are connect, each module is specifically described below.
Connection request sending module 510 for sending connection request to video server, and receives the video server
The connection confirmation message of return is connected with being established with the video server;
Wherein, the connection request includes the identification information of the video sending end;The video server is connecing
After receiving the connection request, according to the associated at least one video playing end of identification information activation open with it is described
The corresponding transmission channel of video sending end;
Video slicing sending module 520, for according to setting data transmission parameters by the Video coding frame generated in real time
Video frame fragment is sent to the video server, so that the video frame fragment is forwarded to opening pair by the video server
The video playing end of transmission channel is answered to carry out real-time video broadcasting.
The transmitting device of real-time video provided in this embodiment sends connection to video server by video sending end and asks
It asks, after establishing connection with video server, video sending end compiles the video generated in real time according to setting data transmission parameters
The video frame fragment of code frame is sent to video server, and then is transmitted to video playing end by video server and carries out real-time video
It plays.Connection is established due to only sending primary request, and Video coding frame is divided into several video frame after a connection setup
Fragment is sent, and is solved in the prior art because needing the complex process by three-way handshake before being attached based on TCP,
And use and be directly based upon the method that video data stream is transmitted and plays, and transmission of video is caused to postpone high problem, it realizes
The delay of reduction transmission of video, improves the effect of user experience.
On the basis of the various embodiments described above, can also include:
Confirmation of synchronization returns to module, for sending connection request to video server, and receives the video server
After the connection confirmation message of return, asked according to the audio video synchronization that the video server is sent, to the video server
Return to corresponding audio video synchronization confirmation message;
Wherein, the audio video synchronization confirmation message includes:Originate the sequence number of video frame fragment and currently transmitted video
The sequence number of frame fragment;The video server has target video broadcasting end opening corresponding with the video sending end in confirmation
When transmission channel, the audio video synchronization request is sent to the video sending end, is obtained in fact so that the target video plays end
When video playing progress rate.
On the basis of the various embodiments described above, can also include:
Network delay computing module, for according to setting data transmission parameters regarding the Video coding frame generated in real time
While frequency frame fragment is sent to the video server, according to the time of currently transmitted video frame fragment and finally reception is received
Confirm that the time of response calculates network-induced delay;
Bandwidth variation correcting module, for according to the bandwidth and upper one for receiving reception confirmation response in the current one time
The bandwidth variation correction value in stage determines that current bandwidth shakes correction value;
Configured transmission update module, for according to the network-induced delay and current bandwidth shake correction value update
The data transmission parameters.
On the basis of the various embodiments described above, the bandwidth variation correcting module specifically can be used for:
The video sending end is according to formulaCalculate current bandwidth shake
Correction value;
Wherein, acked_bw is that current bandwidth shakes correction value, acked_bw0For bandwidth variation amendment on last stage
Value, bw are that the bandwidth for receiving and confirming response is received in the current one time.
On the basis of the various embodiments described above, the configured transmission update module specifically can be used for:
If there is currently the video frame fragment of repeating transmission and the network-induced delay is more than predetermined threshold value, by desired bandwidth
Value is set as the current bandwidth shake correction value, and reduces taking for the data transmission parameters according to the desired bandwidth value
Value, wherein the data transmission parameters include:The resolution ratio and/or data transmission code check of video encoder;
If there is currently no the video frame fragment of repeating transmission and current bandwidth shake correction value is more than 0, band will it is expected
Width values are set as the preset multiple of the current bandwidth shake correction value, and improve the data according to the desired bandwidth value and pass
The value of defeated parameter;
If the current bandwidth shake correction value is equal to 0, the value of the data transmission parameters is kept.
On the basis of the various embodiments described above, can also include:
Server connection disconnects module, for according to setting data transmission parameters by the Video coding frame generated in real time
Video frame fragment is sent to after the video server, is sent and is disconnected request to the video server, and is regarded described in reception
The disconnection confirmation message that frequency server returns, to be disconnected with the video server;
Wherein, the video server controls associated at least one video after receiving the disconnection request
It plays end and closes transmission channel corresponding with the video sending end.
The said goods can perform the method that any embodiment of the present invention is provided, and have the corresponding function module of execution method
And advantageous effect.
Embodiment six
Fig. 6 is a kind of structural schematic diagram of the transmitting device for real-time video that the embodiment of the present invention six provides.The device can
The case where suitable for being transmitted to real-time video, the device can be made of hardware and/or software, and can generally be integrated in video
In server and all intelligent terminals comprising transmission of video function.With reference to figure 6, the transmitting device of real-time video includes:Even
It connects confirmation and returns to module 610, identification information sending module 620 and video slicing forwarding module 630, each module is carried out below
It illustrates.
Connection, which confirms, returns to module 610, and the connection request for being sent according to the video sending end is sent out to the video
Sending end returns to corresponding connection confirmation message, is connected with being established with the video sending end, wherein the connection request includes institute
State the identification information of video sending end;
Identification information sending module 620 is broadcast for the identification information to be sent to associated at least one video
End is put, to activate the video playing end to open transmission channel corresponding with the video sending end;
Video slicing forwarding module 630, for receive the video sending end according to setting data transmission parameters send,
The video frame fragment of the Video coding frame generated in real time, and the video frame fragment is forwarded to and opens regarding for corresponding transmission channel
Frequency plays end and carries out real-time video broadcasting.
The transmitting device of real-time video provided in this embodiment, the connection that video sending end is responded by video server are asked
It asks foundation to be reliably connected, and the identity identification information of video sending end is sent to video playing end, so that video playing end is beaten
Corresponding transmission channel is opened, finally coordinates video sending end that the video frame fragment of the Video coding frame generated in real time is forwarded to pass
The video playing end of connection, to reduce transmission of video delay, improves and regards so that video playing end carries out real-time video broadcasting
Defeated reliability is kept pouring in, user experience is improved.
On the basis of the various embodiments described above, can also include:
Synchronization request sending module, for the identification information to be sent to associated at least one video playing
After end, when confirmation has target video to play end and opens transmission channel corresponding with the video sending end, to the video
Transmitting terminal sends the audio video synchronization request;
Confirmation of synchronization receiving module, the audio video synchronization confirmation message returned for receiving the video sending end, wherein institute
Stating audio video synchronization confirmation message includes:Originate the sequence number of video frame fragment and the sequence number of currently transmitted video frame fragment;
Confirmation of synchronization forwarding module plays end for the audio video synchronization confirmation message to be forwarded to target video, so that
The target video plays the playing progress rate that end obtains real-time video.
On the basis of the various embodiments described above, can also include:
Coded frame group generation module, for receiving what the video sending end was sent according to setting data transmission parameters,
After the video frame fragment of the Video coding frame generated in real time, according to the video frame fragment of reception, real-time update generation is set
The Video coding frame group fixed time in section, wherein the Video coding frame group includes at least one key frame;
The confirmation of synchronization forwarding module, is further used for:The audio video synchronization confirmation message and the video are compiled
Code frame group is forwarded to the target video and plays end, so that the video playing end to the Video coding frame group receive i.e.
Put display.
On the basis of the various embodiments described above, can also include:
Request receiving module is disconnected, for receiving what the video sending end was sent according to setting data transmission parameters,
The video frame fragment of the Video coding frame generated in real time, and the video frame fragment is forwarded to and opens regarding for corresponding transmission channel
After frequency plays end progress real-time video broadcasting, the disconnection request that the video sending end is sent is received;
Transmission channel closedown module controls associated at least one video playing for being asked according to the disconnection
Transmission channel corresponding with the video sending end is closed at end;
Disconnect and confirm and return to module, for returning to corresponding disconnection confirmation message to the video sending end, with it is described
Video sending end disconnects.
The said goods can perform the method that any embodiment of the present invention is provided, and have the corresponding function module of execution method
And advantageous effect.
Embodiment seven
Fig. 7 is a kind of structural schematic diagram of the transmitting device for real-time video that the embodiment of the present invention seven provides.The device can
The case where suitable for being transmitted to real-time video, the device can be made of hardware and/or software, and can generally be integrated in video
It plays in end and all intelligent terminals comprising video reception and playing function.With reference to figure 7, the transmitting device packet of real-time video
It includes:Identification information receiving module 710, transmission channel are opened module 720, video slicing receiving module 730 and real-time video and are broadcast
Amplification module 740 is below specifically described each module.
Identification information receiving module 710, the identification information of the video sending end for receiving video server transmission;
Transmission channel opens module 720, for according to the identification information, inquiring transmission channel list, determines simultaneously
Open transmission channel corresponding with the video sending end, wherein record has identification information in the transmission channel list
Correspondence between transmission channel;
Video slicing receiving module 730, for receiving the described of the video server forwarding by the transmission channel
The video frame fragment for the Video coding frame generated in real time that video sending end is sent according to setting data transmission parameters;
Real-time video playing module 740, for according to the video frame fragment received, carrying out real-time video broadcasting.
The transmitting device of real-time video provided in this embodiment coordinates video sending end to be taken with video by video playing end
The relevant operation that business device carries out, realizing reduces transmission of video delay, improves the effect of user experience.
On the basis of the various embodiments described above, can also include:
Confirmation module is opened in channel, for according to the identification information, inquiring transmission channel list, determining and beat
After opening transmission channel corresponding with the video sending end, sends transmission channel to the video server and open confirmation letter
Breath, so that the video server sends the audio video synchronization request to the video sending end;
Confirmation of synchronization receiving module, the audio video synchronization confirmation message for receiving the video server forwarding, to obtain
The playing progress rate of real-time video;
Wherein, the audio video synchronization confirmation message includes:Originate the sequence number of video frame fragment and currently transmitted video
The sequence number of frame fragment;The audio video synchronization confirmation message is that the video sending end is returned according to audio video synchronization request
Information.
On the basis of the various embodiments described above, can also include:
It receives and puts display module, for receiving the same of the audio video synchronization confirmation message of the video server forwarding
When, the video playing end receives the Video coding frame group corresponding with the video sending end that the video server is sent,
And the Video coding frame group receive and puts display;
Wherein, the video server is according to the video frame fragment of reception, real-time update generation setting time section
The interior Video coding frame group, wherein the Video coding frame group includes at least one key frame.
On the basis of the various embodiments described above, can also include:
Open command receiving module, for according to the video frame fragment received, carrying out real-time video and playing it
Afterwards, the open command that the video server is sent is received, wherein the open command includes the body of the video sending end
Part identification information;
Transmission channel closedown module, for according to the identification information in the open command, close with it is described
The corresponding transmission channel of video sending end.
Note that above are only presently preferred embodiments of the present invention and institute's application technology principle.It will be appreciated by those skilled in the art that
The present invention is not limited to specific embodiments described here, can carry out for a person skilled in the art it is various it is apparent variation,
It readjusts and substitutes without departing from protection scope of the present invention.Therefore, although being carried out to the present invention by above example
It is described in further detail, but the present invention is not limited only to above example, without departing from the inventive concept, also
May include other more equivalent embodiments, and the scope of the present invention is determined by scope of the appended claims.
Claims (17)
1. a kind of transmission method of real-time video, which is characterized in that including:
Video sending end sends connection request to video server, and receives the connection confirmation letter that the video server returns
Breath is connected with being established with the video server;
Wherein, the connection request includes the identification information of the video sending end;The video server is receiving
After the connection request, opened and the video according to the associated at least one video playing end of identification information activation
The corresponding transmission channel of transmitting terminal;
The video sending end sends the video frame fragment of the Video coding frame generated in real time according to setting data transmission parameters
To the video server, so that the video frame fragment is forwarded to by the video server opens regarding for corresponding transmission channel
Frequency plays end and carries out real-time video broadcasting.
2. according to the method described in claim 1, being asked it is characterized in that, sending connection to video server in video sending end
It asks, and after receiving the connection confirmation message that the video server returns, further includes:
The video sending end is asked according to the audio video synchronization that the video server is sent, to video server return pair
The audio video synchronization confirmation message answered;
Wherein, the audio video synchronization confirmation message includes:Originate the sequence number and currently transmitted video frame point of video frame fragment
The sequence number of piece;The video server has target video to play the transmission corresponding with the video sending end of end opening in confirmation
When channel, the audio video synchronization request is sent to the video sending end, is regarded in real time so that the target video plays end acquisition
The playing progress rate of frequency.
3. method according to claim 1 or 2, which is characterized in that in the video sending end according to setting data transmission
While the video frame fragment of the Video coding frame generated in real time is sent to the video server by parameter, further include:
The video sending end is received according to time of currently transmitted video frame fragment and finally to be received the time for confirming response and counts
Calculate network-induced delay;
Bandwidth of the video sending end according to the bandwidth for receiving reception confirmation response in the current one time and on last stage
Shake correction value determines that current bandwidth shakes correction value;
The video sending end updates the data and passes according to the network-induced delay and current bandwidth shake correction value
Defeated parameter.
4. according to the method described in claim 3, it is characterized in that, the video sending end in the current one time according to receiving
It receives the bandwidth for confirming response and bandwidth variation correction value on last stage calculates current bandwidth and shakes correction value, including:
The video sending end is according to formulaCurrent bandwidth shake is calculated to correct
Value;
Wherein, acked_bw is that current bandwidth shakes correction value, acked_bw0For bandwidth variation correction value on last stage, bw is
The bandwidth for receiving and confirming response is received in the current one time.
5. according to the method described in claim 4, it is characterized in that, described according to the network-induced delay and the current band
Width shake correction value updates the data transmission parameters, including:
If there is currently the video frame fragment of repeating transmission and the network-induced delay is more than predetermined threshold value, desired bandwidth value is set
It is set to the current bandwidth shake correction value, and reduces the value of the data transmission parameters according to the desired bandwidth value,
In, the data transmission parameters include:The resolution ratio and/or data transmission code check of video encoder;
If there is currently no the video frame fragment of repeating transmission and current bandwidth shake correction value is more than 0, by desired bandwidth value
It is set as the preset multiple of the current bandwidth shake correction value, and the data transmission is improved according to the desired bandwidth value and is joined
Several values;
If the current bandwidth shake correction value is equal to 0, the value of the data transmission parameters is kept.
6. according to the method described in claim 1, it is characterized in that, in the video sending end according to setting data transmission parameters
After the video frame fragment of the Video coding frame generated in real time is sent to the video server, further include:
The video sending end, which is sent, disconnects request to the video server, and receives the disconnection that the video server returns
Confirmation message, to be disconnected with the video server;
Wherein, the video server controls associated at least one video playing after receiving the disconnection request
Transmission channel corresponding with the video sending end is closed at end.
7. a kind of transmission method of real-time video, which is characterized in that including:
The connection request that video server is sent according to the video sending end returns to corresponding connection to the video sending end
Confirmation message is connected, wherein the connection request includes the identity of the video sending end with being established with the video sending end
Identification information;
The identification information is sent to associated at least one video playing end by the video server, described in activation
Open transmission channel corresponding with the video sending end in video playing end;
The video server receives what the video sending end was sent according to setting data transmission parameters, the video generated in real time
The video frame fragment of coded frame, and the video frame fragment is forwarded to and opens the video playing end progress for corresponding to transmission channel in fact
When video playing.
8. the method according to the description of claim 7 is characterized in that the identification information is sent out in the video server
It send to associated at least one video playing end, further includes:
The video server confirmation have target video play end open transmission channel corresponding with the video sending end when,
The audio video synchronization request is sent to the video sending end;
The video server receives the audio video synchronization confirmation message that the video sending end returns, wherein the audio video synchronization
Confirmation message includes:Originate the sequence number of video frame fragment and the sequence number of currently transmitted video frame fragment;
The audio video synchronization confirmation message is forwarded to target video and plays end, is obtained in real time so that the target video plays end
The playing progress rate of video.
9. according to the method described in claim 8, it is characterized in that, receiving the video sending end root in the video server
It is sent according to setting data transmission parameters, after the video frame fragment of the Video coding frame generated in real time, further includes:
According to the video frame fragment of reception, real-time update generates the video in setting time section and compiles the video server
Code frame group, wherein the Video coding frame group includes at least one key frame;
The audio video synchronization confirmation message is forwarded to target video and plays end, is further comprised:The audio video synchronization is confirmed
Information and the Video coding frame group are forwarded to the target video and play end, so that the video playing end is to the video
Coded frame group, which receive, puts display.
10. the method according to the description of claim 7 is characterized in that receiving the video sending end in the video server
It is sent according to setting data transmission parameters, the video frame fragment of the Video coding frame generated in real time, and the video frame is divided
Piece is forwarded to after the video playing end progress real-time video broadcasting for opening corresponding transmission channel, further includes:
The video server receives the disconnection request that the video sending end is sent;
The video server is asked according to the disconnection, the control associated at least one video playing end close with it is described
The corresponding transmission channel of video sending end;
The video server returns to corresponding disconnection confirmation message to the video sending end, with disconnected with the video sending end
Open connection.
11. a kind of transmission method of real-time video, which is characterized in that including:
Video playing end receives the identification information for the video sending end that video server is sent;
Transmission channel list is inquired in the video playing end according to the identification information, determines and opens and the video
The corresponding transmission channel of transmitting terminal, wherein being recorded in the transmission channel list has between identification information and transmission channel
Correspondence;
The video player by the transmission channel receive the video sending end of video server forwarding according to
Set the video frame fragment for the Video coding frame generated in real time that data transmission parameters are sent;
The video playing end carries out real-time video broadcasting according to the video frame fragment received.
12. according to the method for claim 11, which is characterized in that believed according to the identity at the video playing end
Breath inquires transmission channel list, after determining and opening transmission channel corresponding with the video sending end, further includes:
The video playing end sends transmission channel to the video server and opens confirmation message, so that the video server
The audio video synchronization request is sent to the video sending end;
The video playing end receives the audio video synchronization confirmation message of the video server forwarding, to obtain broadcasting for real-time video
Degree of putting into;
Wherein, the audio video synchronization confirmation message includes:Originate the sequence number and currently transmitted video frame point of video frame fragment
The sequence number of piece;The audio video synchronization confirmation message is the letter that the video sending end is returned according to audio video synchronization request
Breath.
13. according to the method for claim 12, which is characterized in that receive the video server at the video playing end
While the audio video synchronization confirmation message of forwarding, further include:
The video playing end receives the Video coding frame group corresponding with the video sending end that the video server is sent,
And the Video coding frame group receive and puts display;
Wherein, the video server is generated according to the video frame fragment of reception, real-time update in setting time section
The Video coding frame group, wherein the Video coding frame group includes at least one key frame.
14. according to the method for claim 11, which is characterized in that regarded according to described in receiving at the video playing end
Frequency frame fragment, carry out real-time video broadcasting after, further include:
The video playing end receives the open command that the video server is sent, wherein the open command includes institute
State the identification information of video sending end;
The video playing end is closed and the video sending end pair according to the identification information in the open command
The transmission channel answered.
15. a kind of transmitting device of real-time video, is configured at video sending end, which is characterized in that including:
Connection request sending module for sending connection request to video server, and receives what the video server returned
Confirmation message is connected, is connected with being established with the video server;
Wherein, the connection request includes the identification information of the video sending end;The video server is receiving
After the connection request, opened and the video according to the associated at least one video playing end of identification information activation
The corresponding transmission channel of transmitting terminal;
Video slicing sending module, for being divided the video frame of the Video coding frame generated in real time according to setting data transmission parameters
Piece is sent to the video server, leads to so that the video frame fragment is forwarded to the corresponding transmission of opening by the video server
The video playing end in road carries out real-time video broadcasting.
16. a kind of transmitting device of real-time video, is configured at video server, which is characterized in that including:
Connection, which confirms, returns to module, and the connection request for being sent according to the video sending end is returned to the video sending end
Corresponding connection confirmation message is returned, is connected with being established with the video sending end, wherein the connection request includes the video
The identification information of transmitting terminal;
Identification information sending module, for the identification information to be sent to associated at least one video playing end, with
The video playing end is activated to open transmission channel corresponding with the video sending end;
Video slicing forwarding module, for receiving the video sending end according to setting data transmission parameters transmission, in real time life
At Video coding frame video frame fragment, and the video frame fragment is forwarded to the video playing for opening corresponding transmission channel
End carries out real-time video broadcasting.
17. a kind of transmitting device of real-time video, is configured at video playing end, which is characterized in that including:
Identification information receiving module, the identification information of the video sending end for receiving video server transmission;
Transmission channel opens module, for according to the identification information, inquiring transmission channel list, determines and opens and institute
State the corresponding transmission channel of video sending end, wherein record has identification information logical with transmission in the transmission channel list
Correspondence between road;
Video slicing receiving module, the video for receiving the video server forwarding by the transmission channel are sent
The video frame fragment for the Video coding frame generated in real time that end is sent according to setting data transmission parameters;
Real-time video playing module, for according to the video frame fragment received, carrying out real-time video broadcasting.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710233377.5A CN108696772B (en) | 2017-04-11 | 2017-04-11 | Real-time video transmission method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710233377.5A CN108696772B (en) | 2017-04-11 | 2017-04-11 | Real-time video transmission method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108696772A true CN108696772A (en) | 2018-10-23 |
CN108696772B CN108696772B (en) | 2021-07-16 |
Family
ID=63843354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710233377.5A Expired - Fee Related CN108696772B (en) | 2017-04-11 | 2017-04-11 | Real-time video transmission method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108696772B (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830823A (en) * | 2019-11-27 | 2020-02-21 | 北京奇艺世纪科技有限公司 | Play progress correction method and device, electronic equipment and readable storage medium |
CN110996164A (en) * | 2020-01-02 | 2020-04-10 | 北京字节跳动网络技术有限公司 | Video distribution method and device, electronic equipment and computer readable medium |
CN111835682A (en) * | 2019-04-19 | 2020-10-27 | 上海哔哩哔哩科技有限公司 | Connection control method, system, device and computer readable storage medium |
CN112383791A (en) * | 2020-11-12 | 2021-02-19 | 咪咕视讯科技有限公司 | Media data processing method and device, electronic equipment and storage medium |
CN112804579A (en) * | 2019-11-14 | 2021-05-14 | 上海哔哩哔哩科技有限公司 | Video playing method and device, computer equipment and readable storage medium |
CN113438520A (en) * | 2021-06-29 | 2021-09-24 | 北京奇艺世纪科技有限公司 | Data processing method, device and system |
CN114070647A (en) * | 2021-11-29 | 2022-02-18 | 中国银行股份有限公司 | Video transmission system and video transmission method |
CN114501049A (en) * | 2022-01-18 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | Method, device and system for establishing live broadcast connection |
CN114640893A (en) * | 2022-03-10 | 2022-06-17 | 京东科技信息技术有限公司 | Method and device for connecting service end of real-time audio and video communication system |
CN114979793A (en) * | 2022-05-11 | 2022-08-30 | 北京字节跳动网络技术有限公司 | Live broadcast data transmission method, device, system, equipment and medium |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1312643A (en) * | 2000-03-08 | 2001-09-12 | Lg电子株式会社 | Method for generating synthesized key frame and video glancing-over system using said method |
CN1545294A (en) * | 2003-11-19 | 2004-11-10 | 北京邮电大学 | A realtime data transmission control method for media flow transmission and network measurement |
CN101102212A (en) * | 2007-07-31 | 2008-01-09 | 中国网络通信集团公司 | End-to-end information transmission method and system |
CN101540881A (en) * | 2008-03-19 | 2009-09-23 | 华为技术有限公司 | Method, device and system for realizing positioning playing of streaming media |
CN102137302A (en) * | 2010-12-09 | 2011-07-27 | 华为技术有限公司 | Method and device for playing video contents of streaming media |
US20110310995A1 (en) * | 2009-12-31 | 2011-12-22 | Broadcom Corporation | Transcoding multiple media elements for independent wireless delivery |
CN103024561A (en) * | 2011-09-28 | 2013-04-03 | 深圳市快播科技有限公司 | Method and device for displaying dragging progress bar |
CN103259945A (en) * | 2013-05-20 | 2013-08-21 | 苏州洲际传书信息科技有限公司 | Method for achieving speech coding dynamic switching in voip conversation according to network condition |
CN104683884A (en) * | 2015-02-09 | 2015-06-03 | 网宿科技股份有限公司 | Live method and system for stream medium |
CN104821909A (en) * | 2015-04-22 | 2015-08-05 | 北京云艾科技有限公司 | Peer-to-peer data transmission method and system |
CN105263066A (en) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | Mobile equipment video stream transmission control method and system |
CN105635734A (en) * | 2014-11-03 | 2016-06-01 | 掌赢信息科技(上海)有限公司 | Self-adaptive video coding method and device based on video conversation scene |
CN106231353A (en) * | 2016-07-22 | 2016-12-14 | 北京小米移动软件有限公司 | VoIP communication means and device |
CN106341738A (en) * | 2015-07-08 | 2017-01-18 | 杭州海康威视数字技术股份有限公司 | Streaming media network transmission bandwidth calculation method, server and system |
-
2017
- 2017-04-11 CN CN201710233377.5A patent/CN108696772B/en not_active Expired - Fee Related
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1312643A (en) * | 2000-03-08 | 2001-09-12 | Lg电子株式会社 | Method for generating synthesized key frame and video glancing-over system using said method |
CN1545294A (en) * | 2003-11-19 | 2004-11-10 | 北京邮电大学 | A realtime data transmission control method for media flow transmission and network measurement |
CN101102212A (en) * | 2007-07-31 | 2008-01-09 | 中国网络通信集团公司 | End-to-end information transmission method and system |
CN101540881A (en) * | 2008-03-19 | 2009-09-23 | 华为技术有限公司 | Method, device and system for realizing positioning playing of streaming media |
US20110310995A1 (en) * | 2009-12-31 | 2011-12-22 | Broadcom Corporation | Transcoding multiple media elements for independent wireless delivery |
CN102137302A (en) * | 2010-12-09 | 2011-07-27 | 华为技术有限公司 | Method and device for playing video contents of streaming media |
CN103024561A (en) * | 2011-09-28 | 2013-04-03 | 深圳市快播科技有限公司 | Method and device for displaying dragging progress bar |
CN103259945A (en) * | 2013-05-20 | 2013-08-21 | 苏州洲际传书信息科技有限公司 | Method for achieving speech coding dynamic switching in voip conversation according to network condition |
CN105263066A (en) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | Mobile equipment video stream transmission control method and system |
CN105635734A (en) * | 2014-11-03 | 2016-06-01 | 掌赢信息科技(上海)有限公司 | Self-adaptive video coding method and device based on video conversation scene |
CN104683884A (en) * | 2015-02-09 | 2015-06-03 | 网宿科技股份有限公司 | Live method and system for stream medium |
CN104821909A (en) * | 2015-04-22 | 2015-08-05 | 北京云艾科技有限公司 | Peer-to-peer data transmission method and system |
CN106341738A (en) * | 2015-07-08 | 2017-01-18 | 杭州海康威视数字技术股份有限公司 | Streaming media network transmission bandwidth calculation method, server and system |
CN106231353A (en) * | 2016-07-22 | 2016-12-14 | 北京小米移动软件有限公司 | VoIP communication means and device |
Non-Patent Citations (1)
Title |
---|
何润岸: "基于UDP进行大规模数据传输的可靠传输系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835682A (en) * | 2019-04-19 | 2020-10-27 | 上海哔哩哔哩科技有限公司 | Connection control method, system, device and computer readable storage medium |
CN112804579A (en) * | 2019-11-14 | 2021-05-14 | 上海哔哩哔哩科技有限公司 | Video playing method and device, computer equipment and readable storage medium |
CN110830823B (en) * | 2019-11-27 | 2022-02-08 | 北京奇艺世纪科技有限公司 | Play progress correction method and device, electronic equipment and readable storage medium |
CN110830823A (en) * | 2019-11-27 | 2020-02-21 | 北京奇艺世纪科技有限公司 | Play progress correction method and device, electronic equipment and readable storage medium |
CN110996164A (en) * | 2020-01-02 | 2020-04-10 | 北京字节跳动网络技术有限公司 | Video distribution method and device, electronic equipment and computer readable medium |
CN112383791A (en) * | 2020-11-12 | 2021-02-19 | 咪咕视讯科技有限公司 | Media data processing method and device, electronic equipment and storage medium |
CN112383791B (en) * | 2020-11-12 | 2023-07-21 | 咪咕视讯科技有限公司 | Media data processing method and device, electronic equipment and storage medium |
CN113438520A (en) * | 2021-06-29 | 2021-09-24 | 北京奇艺世纪科技有限公司 | Data processing method, device and system |
CN114070647A (en) * | 2021-11-29 | 2022-02-18 | 中国银行股份有限公司 | Video transmission system and video transmission method |
CN114501049A (en) * | 2022-01-18 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | Method, device and system for establishing live broadcast connection |
CN114501049B (en) * | 2022-01-18 | 2023-10-27 | 上海哔哩哔哩科技有限公司 | Live broadcast connection establishment method, device and system |
CN114640893A (en) * | 2022-03-10 | 2022-06-17 | 京东科技信息技术有限公司 | Method and device for connecting service end of real-time audio and video communication system |
CN114979793A (en) * | 2022-05-11 | 2022-08-30 | 北京字节跳动网络技术有限公司 | Live broadcast data transmission method, device, system, equipment and medium |
Also Published As
Publication number | Publication date |
---|---|
CN108696772B (en) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108696772A (en) | A kind of transmission method and device of real-time video | |
US9282448B2 (en) | Method, system and apparatus for providing streaming media service | |
JP5788473B2 (en) | Method and system for synchronizing terminal output | |
CN108696773A (en) | A kind of transmission method and device of real-time video | |
US20080151885A1 (en) | On-Demand Multi-Channel Streaming Session Over Packet-Switched Networks | |
CN105704580B (en) | A kind of video transmission method | |
US8813160B2 (en) | Method, system and user device for obtaining a key frame in a streaming media service | |
US20210410168A1 (en) | Service data transmission method, network device, and terminal device | |
US9838209B2 (en) | Method for subscribing to streams from multicast clients | |
US10027496B2 (en) | Method for distributing identifiers of multicast sources | |
CN107743698A (en) | Method and apparatus for multipath media transmission | |
CN101129041A (en) | Method and system to minimize the switching delay between two rtp multimedia streaming sessions | |
US11101917B2 (en) | Optimizing delay-sensitive network-based communications with latency guidance | |
CN106454553A (en) | A precise time delay live video network transmission control method | |
CN110943977A (en) | Multimedia service data transmission method, server, equipment and storage medium | |
CN108810475A (en) | A kind of Android video monitoring apparatus based on Onvif standards and Sip agreements | |
US8880684B2 (en) | Method and system for measuring individual network round-trip delays in IP gateways | |
CN106790030A (en) | Multi-screen collaboration audio transmission service end, client, system and its processing method | |
CN106790576A (en) | A kind of interactive desktop synchronization | |
CN108123947A (en) | Implementation method is broadcast live in one-to-many audio and video | |
US20220294555A1 (en) | Optimizing delay-sensitive network-based communications with latency guidance | |
CN108353035B (en) | Method and apparatus for multiplexing data | |
Noh et al. | Time-shifted streaming in a peer-to-peer video multicast system | |
Stanislav et al. | NETWORK TECHNOLOGY FOR TRANSMISSION OF VISUAL INFORMATION | |
CN116708392A (en) | Method and device for transmitting media stream file, storage medium and electronic device |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200818 Address after: No.259 Nanjing West Road, Tangqiao town, Zhangjiagang City, Suzhou City, Jiangsu Province Applicant after: Suzhou Qianwen wandaba Education Technology Co.,Ltd. Address before: Yangpu District State Road 200433 Shanghai City No. 200 Building 5 room 2002 Applicant before: SHANGHAI QIANWENWANDABA CLOUD TECH. Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210716 |