GB2540571A - Digital home network multimedia share system and share method thereof - Google Patents

Digital home network multimedia share system and share method thereof Download PDF

Info

Publication number
GB2540571A
GB2540571A GB1512851.5A GB201512851A GB2540571A GB 2540571 A GB2540571 A GB 2540571A GB 201512851 A GB201512851 A GB 201512851A GB 2540571 A GB2540571 A GB 2540571A
Authority
GB
United Kingdom
Prior art keywords
video
terminal device
code stream
server
client
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.)
Withdrawn
Application number
GB1512851.5A
Other versions
GB201512851D0 (en
Inventor
Xie Shengli
Xie Kan
Wu Zongze
Zhang Haochuan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to GB1512851.5A priority Critical patent/GB2540571A/en
Publication of GB201512851D0 publication Critical patent/GB201512851D0/en
Publication of GB2540571A publication Critical patent/GB2540571A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0014Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the source coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/39Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440227Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440263Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44227Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A digital home network multimedia share system and a share method thereof is described wherein the system comprises an intelligent home gateway and a terminal device. The terminal device performs video encoding on video using a Scalable Video Coding (SVC) method; generates video code stream blocks with scalable time, space and quality and generates a video track file; allocates transmission priorities of the encoded video code stream blocks; adaptively adjusts a transmission code rate of a multimedia information stream according to a network condition, such as available bandwidth. When available bandwidth is small e.g. only a base layer stream may be transmitted with a reduced resolution and when available bandwidth increases a gradually higher resolution (base layer plus additional enhancement layers) may be transmitted. Fluency of the video playback is maintained throughout. The system is adapted to a bandwidth-limited digital home network, and to interconnection and interworking between different terminals in a heterogeneous network. The gateway may maintain a list of active/inactive devices in the home network and also a multimedia/resource list identifying where content items are located in the network. Variable access restrictions to the content items may also be employed.

Description

DIGITAL HOME NETWORK MULTIMEDIA SHARE SYSTEM AND SHARE
METHOD THEREOF
TECHNICAL FIELD
[0001] The present disclosure relates to a multimedia information share technique, and in particular, to a digital home network multimedia share system and a share method thereof.
BACKGROUND
[0002] With interaction and integration of a computer, communication and various entertainment media, various digital media applications are integrated as a whole through a communication network. In a network environment such as Internet, various terminal devices may have different reproduction capabilities and application requirements. Thus, one-time compression of a code stream for a specific application is not satisfied and efficient, and even meaningless for some particular users or devices. One of efficient methods for solving this problem is scalable encoding. In the scalable encoding, a low code rate code stream generated for a low-end application is embedded, as a subset, into a high core rate code stream generated for a high-end application. As such, for the one-time compressed high code rate code stream, decoding results adapted for various applications and various kinds of devices may be obtained by selectively transmitting and decoding parts of the code stream.
[0003] The scalable video encoding may select encoded code stream reasonably according to different requirements, in order to implement scalable transmission. The scalable video encoding may satisfy smooth interconnection and interworking of the video code stream in real time between different networks, different devices, different services in a digital home. Scalability is implemented by splitting a single code stream into several layers. A precondition is the single code stream, and several layers are embedded in the single code stream from an encoder. If the code stream generated by the one-time compression in the video encoder can be decoded by a decoder in different code rates, frame rates, spatial resolutions and video qualities, the encoding/decoding system is regarded as having “scalability”. The encoder in support of scalability only needs encoding once to satisfy different requirements. Since the encoded code stream is embedded layered, video with specific quality and a time/spatial resolution may be obtained by decoding a part of the encoded code stream. Such an encoding approach may have a stronger capability of satisfying different requirements and significantly improved encoding efficiency, compared to the encoding approach currently used. These layers comprise a basic layer, one or more enhanced layers. Decoding the basic layer may obtain video with an acceptable lowest resolution, while the enhanced layer contains all of additional information necessary for reconstructing the high resolution video. Resolution levels and/or qualities of respective successive enhanced layer video are gradually increased.
[0004] With increasingly widespread of network application-oriented video services, the bandwidth is always varied in a wider range due to network heterogeneity and lack of QoS (Quality of Service) assurance. Therefore, the requirement on video compression is not only guaranteeing a high compression rate, but also requiring that the compressed video can be adapted to certain variation of network available bandwidth and have certain error tolerance and scalabilities in a plurality of aspects.
SUMMARY
[0005] An object of the present disclosure is to overcome the above defects of the conventional solutions, providing a digital home network multimedia share system and a share method. The object of the present disclosure is implemented by technical solutions as follows.
[0006] A digital home network multimedia share system comprises an intelligent home gateway and a terminal device, wherein the intelligent home gateway is a control center of the system, and the terminal device is used as a client or a server in the system, and wherein the terminal device performs video encoding on video using a scalable video encoding method; generates a video code stream block with time, space and quality scalabilities and generates a video track file; allocates transmission priority of the encoded video code stream block; adaptively adjusts a transmission code rate of a multimedia information stream according to a network condition while transmits the video code stream block according to the allocated priorities.
[0007] In the digital home network multimedia share system as described above, the video track file describes scalability of the video code stream block; the video track file is one of bases on which the server selects the code stream blocks; and the video track file includes information on the time, space and quality characteristics and address of the video code stream block.
[0008] In the digital home network multimedia share system as described above, a terminal device list included in the intelligent home gateway displays a terminal device currently online; the terminal device list comprises a device which is monitored by the intelligent home gateway via a network port; and the intelligent home gateway refreshes the terminal device list in real time.
[0009] In the digital home network multimedia share system as described above, the intelligent home gateway has an online and offline discovery function, refreshes the terminal device list according to a login request issued by the terminal device, and refreshes the terminal device list according to an offline message issued by the terminal device.
[0010] In the digital home network multimedia share system as described above, each of the intelligent home gateway and the terminal device includes a multimedia information list; content of the multimedia information list is multimedia resource information shared by the terminal devices, including a profile of multimedia resource and an access right for the multimedia resource; and different terminal devices have different access rights for one and the same multimedia resource.
[0011] In the digital home network multimedia share system as described above, different terminal devices have different access rights for the multimedia resource; and the access right for the multimedia resource is contained in the multimedia information list.
[0012] In the digital home network multimedia share system as described above, the client has a network available bandwidth measuring function, and feeds back network available bandwidth information to the server; the client counts data amount of the received video code stream block and a time wasted for receiving the video code stream block using a passive bandwidth measuring method, and obtains a network available bandwidth by dividing the data amount of the video code stream block by the wasted time; and the server has a code stream block selection function, a basis on which the code stream block is selected being the network available bandwidth information and the video track file.
[0013] In the digital home network multimedia share system as described above, the server comprises a SVC controller, a variable code rate unit and a video transmitter; the SVC controller of the server analyzes the address information of the code stream block in connection with the video track file and the network available bandwidth, the variable code rate unit selects and organizes the video code stream block according to the address information of the code stream blocks, then transmits the video code stream block to the video transmitter; and the video transmitter transmits the video code stream block; the client comprises a video receiver, a code rate monitor, a bandwidth estimator and a video decoder; the video receiver receives the video code stream block transmitted from the server, the code rate monitor monitors variation of the video code rate in real time, and the bandwidth estimator estimates a current network available bandwidth according to the monitored video code rate and the wasted time; the bandwidth estimator estimates the network bandwidth, and feeds back the network available bandwidth information to the server, and then the video decoder decodes the video code stream block.
[0014] A share method of the digital home network multimedia share system as described comprises steps of: [0015] adding, by the intelligent home network gateway, a terminal device identification in the terminal device list according to the login request issued by the terminal device, when the terminal device is discovered to be online; and deleting, by the intelligent home gateway, the corresponding terminal device identification from the terminal device list according to the offline message issued by the terminal device, when the terminal device is discovered to be offline; [0016] transmitting the multimedia information list of the terminal device to the intelligent home gateway by the terminal device itself; refreshing, by the intelligent home gateway, the multimedia information list when refreshing the terminal device list; and then obtaining, by the terminal device, the terminal device list and the multimedia information list of the intelligent home gateway; [0017] viewing, by a client of the terminal device, the terminal device list and the multimedia information list transmitted from the intelligent home gateway, and transmitting a connection request to a server of a terminal device owing some multimedia information, the request including media information, network condition, information on display capability and computing capability of its own; transmitting, by the server, a reply message to the client according to the right and the network condition after the server receives the request information; establishing a connection between the server and the client if the client agrees; [0018] extracting, by the server, a corresponding multimedia information stream according to the request information transmitted by the client, and transmitting to the client; [0019] receiving, by the client, the multimedia information stream from the server, and estimating the network available bandwidth according to the received multimedia information stream; recording, by the client, data amount of the video code stream block in the received multimedia information stream while receiving the video code stream block in the multimedia information stream; estimating the current network available bandwidth by dividing the data amount of the video code stream block by the wasted time to generate the network available bandwidth information, and transmitting the information to the server; [0020] selecting, by the server, the video code stream block according to the network available bandwidth information fed back by the client in connection with the video track file; [0021] viewing, at the client, fluent video with a lower resolution, when the network available bandwidth is smaller; and gradually improving, by the client, the resolution of the video under the condition that the fluency of the video is kept, when the network available bandwidth is larger.
[0022] The present disclosure has advantages and effects as follows, compared with the conventional solutions.
[0023] The system uses an intelligent home gateway as a control center. Various terminal devices inside the home request the intelligent home gateway for entering the system. One terminal device (a client) establishes a connection with another terminal device (a server) for transmitting the video code stream block with scalability. When the network available bandwidth becomes smaller, fluent video may be viewed at the client. Although a resolution of the video may be reduced, fluency of the vide may be kept. When the network available bandwidth become larger, the resolution of the video may be gradually improved at the client under a condition that the fluency of the video may be kept. The system is adapted to a bandwidth-limited digital home network, to interconnection and interworking between different terminals in a heterogeneous network, and to terminals with different performances and characteristics, such as a computer, notebook, PDA and TV etc.
BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Fig. 1 is a schematic diagram of a server and a client in an embodiment; [0025] Fig. 2 is a state machine view of a server part in an embodiment; and
[0026] Fig. 3 is a state machine view of a client part in an embodiment. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0027] Hereinafter, particular embodiments of the present disclosure will be described in detail in connection with the drawings. However, the implementation and protection scope of the present disclosure are not limited to this.
[0028] The system comprises an intelligent home gateway and a terminal device. The intelligent home gateway is a control center of the system, and the terminal device is used as a client or a server in the system. The main effects of the intelligent home gateway are monitoring an online state and an offline state of various terminal devices, establishing a connection between a terminal device (the client) and another terminal device (the server), and controlling transmission of a multimedia information steam between the client and the server.
[0029] The intelligent home gateway contains related information of the client and the sever, and controls communication between the client and the server. The server adjusts a transmission code rate according to a network available bandwidth and a video track file; and selects an appropriate video code stream block for transmitting to the client, according to a priority allocated based on the video track file and requirements of the terminal device. The higher the priority is, the more important the video code stream block is. Thus, the server firstly transmits the video code stream block with a higher priority. Each of the intelligent home gateway and the terminal device has a multimedia information list function. Content of the list is multimedia resource information shared by the terminal devices, including a profile of multimedia resource and an access right for the multimedia resource. Different terminal devices have different access rights for one and the same multimedia resource. The access rights of the multimedia resource are contained in the multimedia information list, and centrally managed by the intelligent home gateway.
[0030] The effect of a SVC (Scalable Video Coding) controller of the server as shown in Fig. 1 is to obtain address information of the code stream block by analyzing the video track file and the network available bandwidth. A variable code rate unit selects and organizes the video code stream block according to the address information of the code stream block, and then transmits to a video transmitter. Then, the video transmitter transmits the video code stream block. A video receiver in the client receives the video code stream block transmitted from the server. A code rate monitor monitors variation of the video code rate in real time. A bandwidth estimator estimates a current network available bandwidth according to the monitored video code rate and a wasted time. The bandwidth estimator estimates the network bandwidth, and feeds back the network available bandwidth information to the sever. Then, a video decoder decodes the video code stream block.
[0031] A terminal device list in the intelligent home gateway reflects online states of various terminal devices, displaying the terminal device(s) which may be function as the client or the server. The multimedia information list in the intelligent home gateway reflects the multimedia resource information shared by the terminal devices, including the profile of the multimedia resource and the access rights for the multimedia resource. The terminal device in the online state may access various multimedia resource after the multimedia resource list in the intelligent home gateway is obtained.
[0032] When the multimedia information stream is transmitted, the intelligent home gateway is a forwarding apparatus between the server and the client. The multimedia information stream of the server is transmitted to the intelligent home gateway, and then the intelligent home gateway transmits the multimedia information stream to the client.
[0033] A working process of the home multimedia share system is as follows.
[0034] (1) The terminal device logs in. After any terminal device is online inside the home, it initiates a connection to the intelligent home gateway. After authentication, the terminal device transmits the multimedia information list to the intelligent home gateway.
[0035] (2) The intelligent home gateway refreshes the lists. The intelligent home gateway refreshes the terminal device list and the multimedia information list of its own.
[0036] (3) The terminal device refreshes the lists. The terminal device obtains the terminal device list, the multimedia information list in the intelligent home gateway.
[0037] (4) The terminal device requests for the connection. After the list information of the intelligent home gateway is obtained, the terminal device (the client) transmits a request for media information it is interested in to a terminal device (the server) owing the media information, the request comprising media information, information on network condition, display capability and computing capability of its own etc.
[0038] (5) The server replies to the client. After the server receives the request information, the server transmits a reply message to the client according to the right and the network condition. If the replay message indicates OK, the connection is established between the server and the client; and if the replay message indicates Not OK, the connection is not established between the server and the client for now.
[0039] (6) The server transmits the multimedia information stream. The server extracts the corresponding media information stream for transmitting to the client, according to the request information transmitted by the client.
[0040] (7) The client receives the multimedia information stream. After the client receives the OK message of the server, the client receives the multimedia information stream from the server, and predicts the network available bandwidth for transmitting the multimedia information stream next time according to the situation of receiving the media stream. The prediction process uses a passive bandwidth measuring technique.
[0041] (8) The terminal device is offline. After the terminal device leaves the home network or powered down, the terminal device transmits an offline message to the intelligent home gateway. The intelligent home gateway refreshes the current list information again.
[0042] The server performs scalable video encoding on the video to obtain a video file consisting of the code stream blocks, and at the same time to generate the video track file containing video track information. Each code stream block corresponds to an information collection layerjnformation, recording the video track information. The information collection comprises members as follows.
[0043] TJndex: a time dimension index; [0044] LJndex: a spatial dimension index; [0045] QJndex: a quality dimension index; [0046] layerjndex: an index of the code stream block in one frame; [0047] layerjength: a size of data amount of the code stream block; [0048] layer_distortion: a distortion degree caused by losing the code stream block; [0049] layerjmportant: an importance parameter of the code stream block; [0050] datajmportant: data amount of more important code stream block.
[0051] The video track file is generated in the scalable video encoding process. The generating step comprises: [0052] (1) reading, by the encoder, 16 frames from the video source to constitute a video group.
[0053] (2) performing the scalable video encoding, and generating code stream blocks which may be truncated arbitrarily.
[0054] (3) calculating the distortion degree caused by losing some code stream block. layer_distortion is a distortion degree of video data in a DCT transformation domain. The distortion degree caused by losing some code stream block is a summation of distortion degrees of all coefficients of the video group, which is calculated as follows: [0055]
[0056] g: the number of frames contained in one video group, g=16 in this example; [0057] h: a frame height in the DCT transformation domain; [0058] w: a frame width in the DCT transformation domain; [0059] aj jk: a coefficient on a position with a height j and a width k in the i-th frame when the code stream block is maintained; [0060] a’jjk: a coefficient on a position with a height j and a width k in the i-th frame when the code stream block is abandoned; [0061] (4) quantizing the video data in the DCT transformation domain, and entropy coding the quantized code stream block. In the present embodiment, CAVLC (Context Adaptive Variable Length Coder) is used. The CAVLC sufficiently utilizes characteristics of residual error transformed and quantized data for compression, in order to further reduce redundancy information in the data. After the entropy coding, the size layerjength of data amount of each code stream block is recorded.
[0062] (5) calculating the importance parameter layerjmportant of the code stream block as follows: [0063]
[0064] layer_distortionj : a distortion degree caused by losing the i-th code stream block in the video group; [0065] layerjengthj : a size of data amount of the i-th code stream block in the video group; [0066] layerjmportant represents a distortion degree of the code stream block in a data amount unit. When the size layerjength of data amount of the code stream block is fixed, the larger the distortion degree layer_distortion caused by losing some code stream block is, the larger the layerjmportant is and the more important the code stream block is; otherwise, the smaller the layer_distortion is, the smaller the layerjmportant is and the less important the code stream block is. When the distortion degree layer_distortion caused by losing some code stream block is fixed, the larger the size layerjength of data amount of the code stream block is, the smaller the layerjmportant is and the less important the code stream block is; otherwise, the smaller the layerjength is, the larger the layerjmportant is and the more important the code stream block is.
[0067] Then, the information collection layerjnformation of the code stream block in the video group is ordered according to the importance parameter layerjmportant of the code stream block. The index of the layerjnformation containing a larger value of the layerjmportant is smaller, the code stream block corresponding to a higher transmission priority; and the index of the layerjnformation containing a smaller value of the layerjmportant is larger, the code stream block corresponding to a lower transmission priority.
[0068] (6) calculating the data amount datajmportant of the more important code stream block, datajmportant represents a summation of the size of the data amount of some code stream block in the video group and the size of the data amount of a code stream block with a lager importance parameter than that of the some code stream block. The calculation method is as follows: [0069]
[0070] Wherein j and k represent indexes of respective information collection layerjnformation of the code stream block after the layerjnformation is ordered. The datajmportant corresponds to the size of data amount of the video group transmitted in the network.
[0071] The video receiver at the client receives the video code stream block transmitted from the server. The code rate monitor monitors the variation of the video code rate in real time. The bandwidth estimator estimates the current network available bandwidth according to the monitored video code rate and the wasted time. The bandwidth estimator estimates the network bandwidth, and feeds back the network available bandwidth information to the server. Then, the video decoder decodes the video code stream block.
[0072] The step of estimating the network available bandwidth is as follows: [0073] (1) continuously receiving, by the client, the code stream blocks contained in one video group; [0074] (2) counting, by the client, a data amount data_receive of the video group with a counter, when the video code stream is received; [0075] (3) measuring, by the client, a time time_receive wasted for receiving one video group with a timer, when the video code stream is received; [0076] (4) calculating the network available bandwidth band_width by dividing the data amount of the received video group by the wasted time as follows: [0077]
[0078] (5) calculating, by the client, the data amount data_request of the video group which is requested for transmission, the data_request being a result of rounding a product of the band_width and the time_group, which is calculated as follows: [0079]
[0080] Finally, the client feeds back a message containing the data_request to the server.
[0081] The SVC controller of the server analyzes to obtain the address information of the code stream block in connection with the video track file and the network available bandwidth. The variable code rate unit selects and organizes the video code stream block according to the address information of the code stream block, and then transmits to the video transmitter. Sequentially, the video transmitter transmits the video code stream block.
[0082] The server records the data amount data_request of the video group transmitted from the client. The server searches the information collection layerjnformation of the code stream block for the datajmportant by taking the data_request as a constraint factor. The searching method comprises:.
[0083]
[0084] x: an index of layerjnformation where the data amount datajmportant of the searched more important code stream block is located; [0085] ijirst: an index of layerjnformation of the most important code stream block, and here i_first=1; [0086] ijast: an index of layerjnformation of the least important code stream block, and here i_last=64; [0087] data_important0: a variable set for searching for datajmportant, and here datajmportant0=0; [0088] dataJmportanti_first: datajmportant corresponding to the most important code stream block, and here data_importanti_fjrst= datajmportant^ layerjength-i; [0089] datajmportantijast: datajmportant corresponding to the least important code stream block; [0090] In a first situation, the data amount allowed by the network available bandwidth is too small. The minimum of the datajmportant does not satisfy a constraint condition - the datajmportant is less than or equal to the data_request. Therefore, data_importantx= data_important1, and datajmportant is used as the data amount data_send of the transmitted video group, i.e., [0091] data_send=data_importanti [0092] In a second situation, the data amount allowed by the network available bandwidth is moderate. The server searches for the data amount datajmportant of the less important video stream block. The constraint condition is the datajmportant is less than or equal to the data_request, and the datajmportant is near the data_request. The searching result data_importantx is used as the data amount data_send of the transmitted video group, i.e., [0093]
[0094] In a third situation, the data amount allowed by the network available bandwidth is too large. The maximum of the datajmportant is more than the data amount data_request of the video group requested to be transmitted. Therefore, data_ importantx=dataJmportant64, and the dataJmportant64 is used as the data amount data_send of the transmitted video group, i.e., [0095] data_send=data_important64 [0096] After the data_send is determined, the server analyzes layerjnformation whose index is less than or equal to x among the layerjnformation corresponmding to the code stream block in the video group to obtain the address information of the code stream block (the time dimension index IJndex, the spatial dimension index LJndex, the quality dimension index QJndex and the index layerjndex of the code stream block in one frame). Then, the variable code rate unit of the server selects and organizes the video code stream block according to the address information of the code stream block.
[0097] The server transmits the code stream block to the client. After the transmission of the video data is completed, the server waits for a next message containing the datajrequest.
[0098] When it is detected by measurement that the current network available bandwidth is not adapted to transmit the high quality video, a part of code stream blocks in the next video group with smaller importance parameters may be abandoned; and when it is detected by measurement that the current network available bandwidth can transmit the high quality video, a part of code stream blocks with smaller importance parameters may be added in the next video group. However, the transmitted video at least comprises the basic code stream block. The data amount of the transmitted video group depends on the current network available bandwidth, and the data amount of the transmitted video group decides that the code stream block with which kind of importance parameter is contained in the video group. The network available bandwidth is measured by the data amount of the video group, and decides the data amount of the next video group.
Therefore, the transmission of the video can be adapted to the situation of the network available bandwidth.
[0099] Fig. 2 shows a state flowchart of the server.
[00100] (1) When the server is started, a port monitoring program is executed. The server processes an initialization listening socket, and waits for connection from the client. The connection of the client may be accepted or restricted, so that other client(s) may also connect to a main listening socket.
[00101] (2) The server waits for a video playing request from the client. If the playing request is received, a next step of transmitting the video to the client is proceeded; otherwise, the server is always in a waiting state.
[00102] (3) The server transmits the video code stream block to the client, while the server receives the network available bandwidth message and other messages fed back by the client and transmits a corresponding message to the client.
[00103] (4) In the process of video transmission, it is determined whether the playing of the video is finished. If so, the video transmission is ended, and completion of playing the video is notified, so that both the server and the corresponding client enter an end state; otherwise, the video code stream block is continued to be transmitted.
[00104] (5) The network bandwidth situation is determined according to the network available bandwidth message fed back by the client. If the network available bandwidth is varied, the code rate of the next video code stream block is adjusted; otherwise, other parameter(s) of the video may be adjusted.
[00105] (6) In a condition that variation of the network available bandwidth occurs, the video code rate is adjusted. Another basis on which the video code rate is adjusted is the video track file.
[00106] (7) The video control message transmitted from the client is monitored. If any video control message from the client is not received, the transmission of the video is continued; if the video control message is received, a corresponding process may be performed.
[00107] (8) The control message transmitted from the client is checked to determine whether the message is a stop message. If the client is requesting for stop, the transmission of the video is ended, a buffer is cleared, the connection is disconnected, and the end state is entered.
[00108] (9) In a case that the received control message is not the stop message, a process corresponding to other control message(s) is proceeded. After the process is completed, the state of transmitting the video is returned to.
[00109] (10) The end state is entered. This state occurs when the video transmission has been finished or when the client requests for stopping the video transmission.
[00110] Fig. 3 is a state flowchart of the client.
[00111] (1) The client transmits a connection request to the server. If the server accepts the connection request, a connection is established between the server and the client.
[00112] (2) The client selects a video file, and transmits a video playing request to the server.
[00113] (3) After the server receives the video playing request from the client, the server transmits the video code stream block to the client. At the same time, the client feeds back the network available bandwidth message and other message(s) to the server, and receives the corresponding message transmitted from the server.
[00114] (4) it is determined whether the playing of the video is finished. If so, the video transmission is ended, and an end state is entered; otherwise, the video code stream block is continued to be transmitted.
[00115] (5) During the video is played, the client monitors the data amount of the received video code stream block and the wasted time for estimating the network available bandwidth, and then transmits the bandwidth message to the server.
[00116] (6) In a condition that variation of the network available bandwidth occurs, the client transmits a message to the client, requesting for adjusting the video code rate.
[00117] (7) The client determines whether to change the resolution of the video. If it is required to change the video resolution, adjustment may be performed according to the spatial factor corresponding to the required resolution.
[00118] (8) The client adjusts the resolution according to the spatial factor.
[00119] (9) The client transmits a video control message to the server, if necessary. If there is not any video control message to be transmitted, the video transmission is continued.
[00120] (10) The client determines whether to stop the video transmission. If the video transmission is to be stopped, the control message is transmitted to the server to stop the video transmission. Both the client and the server stop transmitting the video, clear the buffer, disconnect the connection and enter the end state.
[00121] (12) The end state is entered. The situation corresponding to the state is the video transmission of having been finished or the client requesting for stopping the video transmission.
[00122] The present disclosure may be implemented by the embodiments as described above. The system is adapted to the bandwidth-limited digital home network, to interconnection and interworking between different terminals in a heterogeneous network, and to terminals with different performances and characteristics, such as a computer, notebook, PDA and TV etc.

Claims (10)

What is claimed is:
1. A digital home network multimedia share system comprising an intelligent home gateway and a terminal device, wherein the intelligent home gateway is a control center of the system, and the terminal device is used as a client or a server in the system, and wherein the terminal device performs video encoding on video using a scalable video encoding method; generates a video code stream block with time, space and quality scalabilities and generates a video track file; allocates transmission priority of the encoded video code stream block; adaptively adjusts a transmission code rate of a multimedia information stream according to a network condition while transmits the video code stream block according to the allocated priorities.
2. The digital home network multimedia share system according to claim 1, wherein the video track file describes scalability of the video code stream block; the video track file is one of bases on which the server selects the code stream blocks; and the video track file includes information on the time, space and quality characteristics and address of the video code stream block.
3. The digital home network multimedia share system according to claim 1, wherein a terminal device list included in the intelligent home gateway displays a terminal device currently online; the terminal device list comprises a device which is monitored by the intelligent home gateway via a network port; and the intelligent home gateway refreshes the terminal device list in real time.
4. The digital home network multimedia share system according to claim 1, wherein the intelligent home gateway has an online and offline discovery function, refreshes the terminal device list according to a login request issued by the terminal device, and refreshes the terminal device list according to an offline message issued by the terminal device.
5. The digital home network multimedia share system according to claim 1, wherein each of the intelligent home gateway and the terminal device includes a multimedia information list; content of the multimedia information list is multimedia resource information shared by the terminal devices, including a profile of multimedia resource and an access right for the multimedia resource; and different terminal devices have different access rights for one and the same multimedia resource.
6. The digital home network multimedia share system according to claim 5, wherein different terminal devices have different access rights for the multimedia resource; and the access right for the multimedia resource is contained in the multimedia information list.
7. The digital home network multimedia share system according to claim 1, wherein the client has a network available bandwidth measuring function, and feeds back network available bandwidth information to the server; the client counts data amount of the received video code stream block and a time wasted for receiving the video code stream block using a passive bandwidth measuring method, and obtains a network available bandwidth by dividing the data amount of the video code stream block by the wasted time; and the server has a code stream block selection function, a basis on which the code stream block is selected being the network available bandwidth information and the video track file.
8. The digital home network multimedia share system according to any of claims 1-7, wherein the server comprises a SVC controller, a variable code rate unit and a video transmitter; the SVC controller of the server analyzes the address information of the code stream block in connection with the video track file and the network available bandwidth, the variable code rate unit selects and organizes the video code stream block according to the address information of the code stream blocks, then transmits the video code stream block to the video transmitter; and the video transmitter transmits the video code stream block; the client comprises a video receiver, a code rate monitor, a bandwidth estimator and a video decoder; the video receiver receives the video code stream block transmitted from the server, the code rate monitor monitors variation of the video code rate in real time, and the bandwidth estimator estimates a current network available bandwidth according to the monitored video code rate and the wasted time; the bandwidth estimator estimates the network bandwidth, and feeds back the network available bandwidth information to the server, and then the video decoder decodes the video code stream block.
9. A share method of the digital home network multimedia share system according to any of claims 1-7, comprising: adding, by the intelligent home network gateway, a terminal device identification in the terminal device list according to the login request issued by the terminal device, when the terminal device is discovered to be online; and deleting, by the intelligent home gateway, the corresponding terminal device identification from the terminal device list according to the offline message issued by the terminal device, when the terminal device is discovered to be offline; transmitting the multimedia information list of the terminal device to the intelligent home gateway by the terminal device itself; refreshing, by the intelligent home gateway, the multimedia information list when refreshing the terminal device list; and then obtaining, by the terminal device, the terminal device list and the multimedia information list of the intelligent home gateway; viewing, by a client of the terminal device, the terminal device list and the multimedia information list transmitted from the intelligent home gateway, and transmitting a connection request to a server of a terminal device owing some multimedia information, the request including media information, network condition, information on display capability and computing capability of its own; transmitting, by the server, a reply message to the client according to the right and the network condition after the server receives the request information; establishing a connection between the server and the client if the client agrees; extracting, by the server, a corresponding multimedia information stream according to the request information transmitted by the client, and transmitting to the client; receiving, by the client, the multimedia information stream from the server, and estimating the network available bandwidth according to the received multimedia information stream; recording, by the client, data amount of the video code stream block in the received multimedia information stream while receiving the video code stream block in the multimedia information stream; estimating the current network available bandwidth by dividing the data amount of the video code stream block by the wasted time to generate the network available bandwidth information, and transmitting the information to the server; selecting, by the server, the video code stream block according to the network available bandwidth information fed back by the client in connection with the video track file; viewing, at the client, fluent video with a lower resolution, when the network available bandwidth is smaller; and gradually improving, by the client, the resolution of the video under the condition that the fluency of the video is kept, when the network available bandwidth is larger.
10. The share method according to claim 9, wherein the server adjusts the transmission code rate according to the network available bandwidth and the video track file; selects an appropriate video code stream block for transmitting to the client according to the priority allocated based on the video track file and requirements of the terminal device, and wherein the higher the priority is, the more important the video code stream block is, and the server firstly transmits the video code stream block with a higher priority.
GB1512851.5A 2015-07-21 2015-07-21 Digital home network multimedia share system and share method thereof Withdrawn GB2540571A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1512851.5A GB2540571A (en) 2015-07-21 2015-07-21 Digital home network multimedia share system and share method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1512851.5A GB2540571A (en) 2015-07-21 2015-07-21 Digital home network multimedia share system and share method thereof

Publications (2)

Publication Number Publication Date
GB201512851D0 GB201512851D0 (en) 2015-09-02
GB2540571A true GB2540571A (en) 2017-01-25

Family

ID=54064717

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1512851.5A Withdrawn GB2540571A (en) 2015-07-21 2015-07-21 Digital home network multimedia share system and share method thereof

Country Status (1)

Country Link
GB (1) GB2540571A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10382517B2 (en) 2017-06-09 2019-08-13 At&T Intellectual Property I, L.P. Estimating network data encoding rate
CN110337026A (en) * 2019-06-18 2019-10-15 厦门立林科技有限公司 A kind of video code rate self-adapting regulation method of cloud intercom system
US11349887B2 (en) 2017-05-05 2022-05-31 At&T Intellectual Property I, L.P. Estimating network data streaming rate

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113726759A (en) * 2021-08-25 2021-11-30 烽火通信科技股份有限公司 Code rate self-adaption method, device, equipment and readable storage medium
CN116248952A (en) * 2021-12-08 2023-06-09 成都拟合未来科技有限公司 Body-building video stream acquisition method and system applied to network-free environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100161823A1 (en) * 2008-12-19 2010-06-24 Soon-Heung Jung A streaming service system and method for universal video access based on scalable video coding
CN101951331B (en) * 2010-07-30 2013-04-17 华南理工大学 Digital household network multimedia sharing system and sharing method thereof
EP2517434B1 (en) * 2009-12-21 2015-10-07 Koninklijke KPN N.V. Content distribution system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100161823A1 (en) * 2008-12-19 2010-06-24 Soon-Heung Jung A streaming service system and method for universal video access based on scalable video coding
EP2517434B1 (en) * 2009-12-21 2015-10-07 Koninklijke KPN N.V. Content distribution system
CN101951331B (en) * 2010-07-30 2013-04-17 华南理工大学 Digital household network multimedia sharing system and sharing method thereof

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11349887B2 (en) 2017-05-05 2022-05-31 At&T Intellectual Property I, L.P. Estimating network data streaming rate
US10382517B2 (en) 2017-06-09 2019-08-13 At&T Intellectual Property I, L.P. Estimating network data encoding rate
US10972526B2 (en) 2017-06-09 2021-04-06 At&T Intellectual Property I, L.P. Estimating network data encoding rate
CN110337026A (en) * 2019-06-18 2019-10-15 厦门立林科技有限公司 A kind of video code rate self-adapting regulation method of cloud intercom system
CN110337026B (en) * 2019-06-18 2021-07-13 厦门立林科技有限公司 Video code rate self-adaptive adjustment method of cloud intercom system

Also Published As

Publication number Publication date
GB201512851D0 (en) 2015-09-02

Similar Documents

Publication Publication Date Title
US10764623B2 (en) Method and system for media adaption
US9351020B2 (en) On the fly transcoding of video on demand content for adaptive streaming
CN101951331B (en) Digital household network multimedia sharing system and sharing method thereof
US20160337680A1 (en) Systems and Methods for Performing Quality Based Streaming
EP2710808B1 (en) Distributing audio video content
GB2540571A (en) Digital home network multimedia share system and share method thereof
KR20040069360A (en) Targeted scalable video multicast based on client bandwidth or capability
CN104412253A (en) Methods for quality-aware adaptive streaming over hypertext transfer protocol
US11470326B2 (en) Encoder output coordination
WO2015120766A1 (en) Video optimisation system and method
US20140215017A1 (en) Prioritized side channel delivery for download and store media
US10291677B2 (en) Method of adaptive downloading of digital contents for several screens
EP2524503B1 (en) Method and apparatus for transmitting video content compressed by codec
WO2015085873A1 (en) Video code stream obtaining method and apparatus
Zhao et al. A cloud-assisted DASH-based scalable interactive multiview video streaming framework
Zeng et al. TVSR‐OR: Tile‐based 360‐degree video streaming over real time streaming protocol with optimized read
CN116980392A (en) Media stream processing method, device, computer equipment and storage medium
WO2019123480A1 (en) Streaming methods and systems using tuner buffers
US20230010330A1 (en) Methods and systems for streaming content
US11265357B2 (en) AV1 codec for real-time video communication
CN111447459B (en) Rtmp self-adaptive code rate realizing method
US11770431B2 (en) Network-adaptive live media encoding system
KR100896688B1 (en) Multimedia service providing method considering a terminal capability, and terminal used therein
CN113207011A (en) Pre-loading method for short video processing
KR20070024747A (en) Network linkage model used switching system and method

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)