The present invention relates to a device and method for transmitting and receiving broadcast signals.
With the development of digital technology and communication technology, distribution and demand of audio/video-oriented multimedia contents are rapidly expanding in various areas such as broadcasting, movies, Internet and personal media. In addition, as the size of TV screens at home increases with the development of display technology, ultra high definition (UHD) broadcasting services are increasingly discussed.
Regarding a broadcast service, a multicast transmission scheme for transmitting the same content to a plurality of users is effective because it may take advantage of both unicast and broadcast. However, the conventional multicast transmission scheme is available only within a single network, and cannot support a multicast service between heterogeneous networks. In addition, when file-based multicast content is transmitted in a real-time IP multicast broadcasting environment, a long time is required for initialization and audio/video (AV) startup operation of the receiver.
An object of the present invention is to provide a multicast signal transmission method and device which are capable of improving transmission efficiency.
Another object of the present invention is to provide a transmission device and method for providing a multicast service over a broadcast network.
It is another object of the present invention to provide a device and method for quickly starting playback in a receiver for a multicast service.
In one aspect of the present invention, provided herein is a multicast transmission method including receiving media data, packetizing the received media data into media data packets using a delivery protocol, and multicasting the media data packets, wherein each of the media data packets generated by the delivery protocol includes a packet header and a payload, wherein the packet header includes information about fast startup.
The fast startup may support fast presentation of the media data using a single building block, the single building block including a Media Presentation Description (MPD), an initialization segment file, and an ISO base media file format (ISOBMFF) file.
The ISOBMFF file may include a segment type box (styp), a segment index box (sidx), a movie fragment box (moof), and a media data box (mdat), wherein the mdat box may selectively include only an I frame of the media data.
The delivery protocol may be Quick UDP Internet Connections (QUIC), wherein the packet header may include at least one of information about whether the fast startup is supported, a representation ID of the media data, a code point, and QUIC presentation time stamp (PTS) information.
The MPD may include a descriptor indicating whether a representation belonging to the media data supports the fast startup.
In another aspect of the present invention, provided herein is a multicast transmission apparatus including a receiver configured to receive media data, a packetizer configured to packetize the received media data into media data packets using a delivery protocol, and a transmitter configured to multicast the media data packets, wherein each of the media data packets generated by the delivery protocol includes a packet header and a payload, wherein the packet header includes information about fast startup.
The fast startup may support fast presentation of the media data using a single building block, the single building block including a Media Presentation Description (MPD), an initialization segment file, and an ISO base media file format (ISOBMFF) file.
The ISOBMFF file may include a segment type box (styp), a segment index box (sidx), a movie fragment box (moof), and a media data box (mdat), wherein the mdat box may selectively include only an I frame of the media data.
The delivery protocol may be Quick UDP Internet Connections (QUIC), wherein the packet header may include at least one of information about whether the fast startup is supported, a representation ID of the media data, a code point, and QUIC presentation time stamp (PTS) information.
The MPD may include a descriptor indicating whether a representation belonging to the media data supports the fast startup.
In another aspect of the present invention, provided herein is a multicast reception method including receiving media data packets according to a delivery protocol, wherein each of the media data packets generated by the delivery protocol includes a packet header and a payload, and the packet header includes information about fast startup, and a decoder for acquiring information about the fast startup and performing the fast startup by decoding the received media data packets, wherein the fast startup supports fast presentation of the media data using a single building block, the single building block including a Media Presentation Description (MPD), an initialization segment file, and an ISO base media file format (ISOBMFF) file, wherein the ISOBMFF file includes a segment type box (styp), a segment index box (sidx), a movie fragment box (moof), and a media data box (mdat), wherein the mdat box selectively includes only an I frame of the media data.
The delivery protocol may be Quick UDP Internet Connections (QUIC), wherein the packet header may include at least one of information about whether the fast startup is supported, a representation ID of the media data, a code point, and QUIC presentation time stamp (PTS) information.
The MPD may include a descriptor indicating whether a representation belonging to the media data supports the fast startup.
In another aspect of the present invention, provided herein is a multicast reception apparatus including a receiver configured to receive media data packets according to a delivery protocol, wherein each of the media data packets generated by the delivery protocol includes a packet header and a payload, and the packet header includes information about fast startup, and a decoder configured to acquire information about the fast startup and perform the fast startup by decoding the received media data packets, wherein the fast startup supports fast presentation of the media data using a single building block, the single building block including a Media Presentation Description (MPD), an initialization segment file, and an ISO base media file format (ISOBMFF) file, wherein the ISOBMFF file includes a segment type box (styp), a segment index box (sidx), a movie fragment box (moof), and a media data box (mdat), wherein the mdat box selectively includes only an I frame of the media data.
The delivery protocol may be Quick UDP Internet Connections (QUIC), wherein the packet header may include at least one of information about whether the fast startup is supported, a representation ID of the media data, a code point, and QUIC presentation time stamp (PTS) information, wherein the MPD may include a descriptor indicating whether a representation belonging to the media data supports the fast startup.
According to an embodiment of the present invention, transmission efficiency of a broadcast system may be enhanced.
According to an embodiment of the present invention, a multicast service may be provided between heterogeneous networks.
According to an embodiment of the present invention, playback for a multicast service in a receiver may be started quickly.
The user network may transmit a request, report, and feedback for content to be received to the ABR multicast network. The ABR multicast network may transmit a request, report, and feedback to the content network based on the information received from the user network. The content network may transmit multicast content and signaling information to the ABR multicast network based on the information received from the ABR multicast network. The ABR multicast network may transmit the received multicast content and signaling information to the user network to provide a multicast service.
In addition, the content network may further include a satellite reception network to receive produced services from a geographically remote area. The content network may also include a content server to provide pre-stored content. The content network may include, besides the content server, a Content Delivery Network (CDN) to provide media transfer. Accordingly, the content network may generate and transmit a signaling message, a control message, and the like which are related to the content.
A separate signaling message or control message may be exchanged between several nodes belonging to the content network for proper interaction among the content, signaling message, control message, and the like, and these messages may not be delivered to other external networks. The signaling message or control message that is not transmitted to the external network may be referred to as internal network signaling.
As described above, the content network may include a broadcaster head-end. Content generated by the broadcaster may be subjected to encoding and packaging, and may then be delivered to a multicast transmitter so as to be multicast or be stored in the content server and delivered to the multicast transmitter when necessary. Components included in the broadcaster head-end of the content network are described below.
First, an encoder included in the broadcaster head-end encodes content. A packager included in the broadcaster head-end may convert the encoded content and data into a format suitable for multicast transmission. The format suitable for multicast transmission may be, for example, a media segment created by dividing one content item. In addition, when necessary, the packager may generate signaling that can be received by the receiver or a device belonging to a network. The media segment generated by the packager may be delivered directly to the multicast sender and multicast. However, in the case where the media segment is data that need not be delivered immediately, it may be stored in the content server. The content server included in the broadcaster head-end may store media data and related signaling. The content server may also store third party content generated by a third party and utilize the same for multicast if necessary. Here, the content stored in the content server may not require a separate encoding operation. Accordingly, the content server may store the media segments and the file formed by encoding or packaging the content, and may transmit the same when there is a transmission request. According to an embodiment, an encoding result of the media data may be stored in the content server, and a separate packaging operation may be required depending on the type of the transmission network. An operator controller included in the broadcaster head-end may manage content production, the content server, and the like, and manage and control a series of operations related to multicasting. The operator controller may collect control and signaling data for a plurality of devices and nodes in the content network and, if necessary, transmit the control and signaling data to the multicast network. Thereby, the operator controller may enable the multicast network to perform signaling and control related to multicast. In addition, the operator controller may receive and process unicast information transmitted from a decoding device or a player to use the same for multicast.
The ABR multicast network is a network that multicasts content delivered from the content network over the IP network. Here, the IP network may correspond to either a managed network where QoS is managed by a network provider and unauthorized traffic can be restricted, or an unmanaged network where unauthorized traffic is not restricted. In addition, the IP network may be connected in a wired or wireless manner by devices included in the multicast network or the user network. In using the IP network for multicast, the IP network connected to the content network may be different from the IP network connected to the user network. That is, the content network and the user network may be connected to separate IP networks. In this case, the separate IP networks may conform to a connection protocol between Internet Service Providers (ISP) providing the respective networks. Even in this case, the multicast content is transparent between the transmitter and the receiver. That is, the output data of the transmitter is the same as the input data of the receiver, even though it passes through several ISP networks and nodes on the network.
The multicast network for transmitting and receiving multicast streams may include a multicast sender (server), a multicast receiver (client), and a multicast network controller. The multicast network may include a plurality of networks, depending on the location or connection status of the sender and receiver of the network for multicast. In addition, a separate protocol may be used for each network.
The multicast sender included in the multicast network may transmit content data to each multicast receiver. The multicast sender may receive packaged content from the content network and transmit the packaged content to a plurality of multicast receivers using the multicast protocol. The multicast receiver included in the multicast network may receive the content data transmitted from the multicast sender and deliver the content data to a decoding device capable of reproducing the content data. The multicast receiver may cache the content data to allow the decoding device to reproduce the content data efficiently. According to an embodiment, the multicast receiver may be configured in the same apparatus as the decoding device. In an embodiment, a multicast stream may be received through a gateway of the user network. In this case, the multicast receiver may be a component of the user network.
The multicast network controller included in the multicast network may control content transmission of the multicast sender and related session information. In addition, the multicast network controller may manage and transmit signaling information for configuration of each of the multicast sender and multicast receivers. The multicast network controller may be connected to each of the multicast sender and multicast receivers using a protocol separate from that of the multicast content. According to an embodiment, the multicast network controller may be connected only to the multicast sender, and signaling information transmitted to the multicast receiver may conform to the same protocol as that of the multicast content.
A network cache included in the multicast network may include a node or a device functioning as a cache between the multicast sender and the multicast receivers. In a multicast transmission, the network cache may store a proper range of content for efficient use of network resources, and deliver a multicast stream to the multicast receiver. According to an embodiment, the network cache may perform an update procedure for the multicast sender and the cached content.
The multicast sender included in the multicast network may transmit content data to each multicast receiver. The multicast sender may receive packaged content from the content network and transmit the packaged content to a plurality of multicast receivers using a multicast protocol. The multicast receiver included in the multicast network may receive the content data transmitted from the multicast sender and deliver the content data to a decoding device capable of reproducing the content data. The multicast receiver connected to the mobile access network may receive a radio signal for the mobile access network. According to an embodiment, the multicast receiver connected to the mobile access network may be connected to the decoding device according to a separate wireless access protocol. The multicast receiver may cache the content data to allow the decoding device to reproduce the content data efficiently. According to an embodiment, the multicast receiver may be configured in the same apparatus as the decoding device.
The multicast network controller included in the multicast network may control content transmission of the multicast sender and related session information. In addition, the multicast network controller may manage and transmit signaling information for configuration of each of the multicast sender and multicast receivers. The multicast network controller may be connected to each of the multicast sender and multicast receivers using a protocol separate from that of the multicast content. According to an embodiment, the multicast network controller may be connected only to the multicast sender, and signaling information transmitted to the multicast receiver may conform to the same protocol as that of the multicast content. In addition, the IP network and the mobile access network may each include a multicast network controller. In this case, the multicast network controller may transmit and receive control and signaling information about the corresponding network. Each of the multicast network controllers may use a separate protocol to perform communication between the multicast network controllers.
The network cache included in the multicast network may include a node or a device functioning as a cache between the multicast sender and the multicast receivers. The network cache may be included in each of a plurality of networks constituting the multicast network, and a plurality of network caches may be included in each network. In addition, some nodes of each network may simultaneously perform the cache function. The network cache may store a proper range of content to efficiently use network resources in multicast transmission, and deliver a multicast stream to the multicast receivers. According to an embodiment, the network cache may perform an update procedure for the multicast sender and the cached content.
The user network may be referred to as a network to receive data from the multicast network and deliver the same to a device to consume the content included in the data. The user network may be implemented in various forms according to the configuration of the user network and the type of a service provided by multicasting. According to an embodiment, the multicast receiver described above may be included in the user network. When the multicast receiver is included in the user network, the multicast receiver may receive multicast content through a device serving as a gateway or proxy included in the user network. In this case, the gateway or proxy may be considered as a component of the ABR multicast network.
The multicast receiver may serve as a server or a multicast sender in the user network. Accordingly, the decoding device included in the user network may consume the multicast content, and may enable multicast streaming even when the decoding device cannot directly receive the multicast content.
When the home network includes a plurality of devices, the home gateway may receive data from the ABR multicast network. The home gateway may transmit and receive data to and from an external network, while serving as a proxy. In the case where the home gateway operates as a proxy, the home gateway may cache data to be delivered to the multicast receiver.
The multicast receiver may be included in the ABR multicast network described above, or may be located inside the home network due to the configuration of the network. According to the configuration of the home network, the multicast receiver may serve as a proxy. In the case where the multicast receiver cannot play the multicast stream directly, a decoding device capable of playing the multicast stream may be additionally connected to the multicast receiver. In addition, the multicast receiver may transmit the multicast stream in connection with a plurality of decoding devices.
The decoding device may be defined as a device to play a multicast stream and provide the multicast stream to a user. A plurality of decoding devices may connect to the multicast receiver. The decoding devices may transmit and receive data in a unicast or multicast manner. The decoding device may connect to a unicast network as well as the multicast network to receive a multicast stream. The decoding devices may transmit a request, a report, or the like to the content network or the ABR multicast network. In some embodiments, besides the decoding device, a decoding module and a display screen may be included in the home network as separate devices. The decoding device may also be configured together with the multicast receiver as a single device.
Hereinafter, network interfaces and protocols for adaptive media streaming will be described. The protocols may be classified into a media protocol by which media data is actually transmitted, and a signaling protocol for controlling each node or entity to transmit media data or transmitting configuration information about the media data to various nodes and entities including a receiver. Signaling and control information may be transmitted by the signaling protocol. However, in the case where the receiver receives with media content by a single connection, a separate signaling path may not be configured. In this case, the signaling and control information may be delivered by the media protocol.
In the adaptive multicast streaming environment, creation and multicast transmission/reception of content may be performed separately. Therefore, a protocol for delivering created content to a node and an entity configured to perform multicast transmission and a protocol for transmitting and receiving the content in the adaptive streaming format in the multicast manner may be defined, respectively. In the figure, the node and the entity are shown as multicast senders. Content data passes through a plurality of nodes or entities, and an appropriate protocol is needed between the nodes or the entities. In this case, for a protocol on a node or an entity, a protocol for efficiently delivering data to the next node in real time may be used. This protocol may be referred to as a tunneling protocol. Accordingly, as shown in the figure, a tunneling protocol may be defined between the server and a multicast sender. In this case, the media content is delivered as a payload of the tunneling protocol, but it should be noted that the tunneling protocol can operate regardless of the format of the media content.
In the multicast sender, a protocol for supporting adaptive streaming for multicast receivers may be defined, and the IP multicast scheme may be employed to deliver the adaptive streaming to a plurality of multicast receivers. Depending on the protocol of adaptive streaming, the IP multicast scheme may be defined as a combination of TCP/IP and UDP/IP.
When the multicast receiver can serve as a decoder and player, the multicast receiver may obtain adaptive streaming data by receiving an IP multicast packet, decode data corresponding to the media content format from the data and play decoded data.
In the adaptive multicast streaming environment, creation and multicast transmission/reception of content may be performed separately. Therefore, a protocol for delivering created content to a node and an entity configured to perform multicast transmission and a protocol for transmitting and receiving the content in the adaptive streaming format in the multicast manner may be defined, respectively. In the figure, the node and the entity are shown as multicast senders. Content data passes through a plurality of nodes or entities, and an appropriate protocol is needed between the nodes or the entities. In this case, for a protocol on a node or an entity, a protocol for efficiently delivering data to the next node in real time may be used. This protocol may be referred to as a tunneling protocol. Accordingly, as shown in the figure, a tunneling protocol may be defined between the server and a multicast sender. In this case, the media content is delivered as a payload of the tunneling protocol, but it should be noted that the tunneling protocol can operate regardless of the format of the media content.
In the multicast sender, a protocol for supporting adaptive streaming for multicast receivers may be defined, and the IP multicast scheme may be employed to deliver the adaptive streaming to a plurality of multicast receivers. Depending on the protocol of adaptive streaming, the IP multicast scheme may be defined as a combination of TCP/IP and UDP/IP.
When the multicast receiver and the decoder (player) are configured as separate devices or modules, the multicast receiver may obtain adaptive streaming data by receiving an IP multicast packet and deliver the same to the decoder. Here, an IP unicast protocol may be used between the multicast receiver and the decoder. The content data received by the multicast receiver may be delivered to the decoder by the IP unicast protocol, and the decoder may decode and play data corresponding to the received media content format.
Hereinafter, a protocol for signaling and control messages will be described. Transmission of signaling and control messages may be defined by a protocol distinct from the protocol for media content transmission in order to provide transmission control, scheduling, configuration information, and the like when each node and each entity perform adaptive streaming Depending on a case where each node and each entity are connected, the protocol may be defined as a separate protocol. In the above-described network architecture, a signaling and control message may be included and transmitted in the protocol for transmission of media content. However, such a signaling and control message conforms to a protocol for media content delivery.
The network controller may deliver configuration related information about the network to the multicast sender and the multicast receiver. The network controller may deliver configuration information about network resources, information about mapping between the nodes of the network, routing information, and the like. It may also deliver configuration information received from the operator controller to the multicast sender or the multicast receiver. In this process, the protocol for transmission from the multicast network controller to the multicast sender may be distinguished from the protocol for transmission to the multicast receiver. The upper part of the figure shows the protocol for transmission from the network controller to the multicast sender, and the lower part of the figure shows the protocol for transmission from the network controller to the multicast receiver.
In addition, IP multicast may be used to deliver a configuration message from one network controller to a plurality of multicast senders and multicast receivers. Connection information, statistical information, and the like collected by the multicast senders and the multicast receivers may be reported to the multicast network controller. Since this process can be carried out independently by each of the multicast senders and multicast receivers, a unicast protocol may be used. This set of control information, configuration information, and the like may be updated dynamically and be transmitted immediately or by scheduling.
The multicast receiver may use a signaling protocol for transmitting the received adaptive streaming data to a decoding device. Here, an IP unicast protocol may be defined to provide separate information to individual decoding devices. In addition, the decoding device may transmit signaling of a request of the decoding device to the multicast receiver using the IP unicast protocol. Thus, the protocol may be defined as a bidirectional protocol between the multicast receiver and the decoding device.
The network controller may deliver configuration related information about the network to the multicast sender and the multicast receiver. The network controller may deliver configuration information about network resources, information about mapping between the nodes of the network, routing information, and the like. It may also deliver configuration information received from the operator controller to the multicast sender or the multicast receiver. However, since the multicast controller is connected only to the multicast sender and not to the multicast receiver, the multicast sender may forward the configuration message delivered from the network controller to the multicast receiver. For a protocol or message set related to configuration in the multicast network controller, the protocol for transmission to the multicast sender may be distinguished from the protocol for transmission to the multicast receiver.
In addition, IP multicast may be used to deliver a configuration message from one network controller to a plurality of multicast senders and multicast receivers. Connection information, statistical information, and the like collected by the multicast senders and the multicast receivers may be reported to the multicast network controller. Since this process can be carried out independently by each of the multicast senders and multicast receivers, a unicast protocol may be used. This set of control information, configuration information, and the like may be updated dynamically and be transmitted immediately or through scheduling.
Information such as a report to be transmitted from the multicast receiver to the multicast network controller may be delivered to the multicast network controller via the multicast sender. That is, the multicast sender may forward a report message or the like to be delivered from the multicast receiver to the multicast network controller. Operations of the other protocols may be the same as those in the above-described drawings.
Each codec may be packaged in a form suitable for transmission or storage. For this purpose, a format such as ISO Base Media File Format (ISOBMFF), Common Media Application Format (CMAF), or MPEG-2 TS (Transport Stream) may be used. In the process of packaging content data encoded with a codec, Digital Rights Management (DRM) may be added to allow only a specific receiver to play the contents, and an authentication key value used in the DRM may be transmitted on a separate link or channel.
For media data configured in a file format, a protocol capable of transmitting files directly, such as File Delivery over Unidirectional Transport (FLUTE), may be used according to transmission scheme. In addition, a protocol supporting adaptive streaming, such as Dynamic Adaptive Streaming over HTTP (DASH), may be used. A lower layer protocol may be used according to the configuration of FLUTE or DASH. For example, when DASH is used, HTTP may be used as a lower layer protocol, or FLUTE may be used as a lower layer protocol considering a DASH segment as a file.
For IP multicast, Transmission Control Protocol/Internet Protocol (TCP/IP) or User Datagram Protocol/Internet Protocol (UDP/IP) may be used according to the configuration of the upper layer protocol. Internet Group Management Protocol (IGMP) capable of managing subscription of a IP multicast group and the like may also be used in the multicast receiver. The Layer 2 protocol and Layer 1 protocol may be defined according to the transport links thereof. That is, optimized protocols may be configured according to links between the nodes and entities configured on a network. For example, in a Local Area Network (LAN) environment, Ethernet may be defined as a protocol for Layer 2, and Carrier Sense Multiple Access with Collision Detection (CSMA/CD) may be defined as protocol for Layer 1.
Protocols used on the server for content are a media codec and a file format. The media codec may include a video codec, an audio codec or other encoding formats. The video codec may include a codec such as HEVC or AVC, and the audio codec may include a codec such as AAC, AC4, and MPEG-H. The protocol for the file format may be defined as a format for transmitting or storing a codec format in the form of a file. For this purpose, file formats such as ISOBMFF and CMAF may be used, and the format of MPEG-2 TS may be used when the existing broadcast network is connected. A plurality of file formats may be used in consideration of transmission efficiency.
For a protocol between the server and the multicast sender, a protocol for efficient delivery of file formats may be mainly defined. Therefore, data of the content created in the server may be delivered using a tunneling protocol. As the tunneling protocol, a real-time transmission protocol such as RTP may be mainly used, and other IP-based tunneling protocols which are available to the corresponding network may also be used. In this case, an existing protocol may be used or the definition of a field may be changed so as to be suitable for the network. In the multicast sender, a tunneling protocol may be defined at the input terminal to receive a file transferred from the server using the tunneling protocol. In this case, since the format for the file transmitted using the tunneling protocol is data to be delivered from the multicast sender to the multicast receiver, the tunneling protocol may operate regardless of the format of the data.
As the protocol between the multicast sender and the multicast receiver, a protocol for adaptive streaming may be mainly defined. This protocol may include a DASH-based protocol. For this purpose, the lower layer protocol is based on IP multicast. In order for DASH to operate, a protocol such as HTTP may be used together with DASH. In the case where a DASH segment is used in the form of a file, a file transfer protocol such as FLUTE may be configured. In addition, TCP/IP may be used for effective connection and multicast transmission of DASH/HTTP on the network.
The multicast receiver may use TCP/IP to receive a packet stream transmitted in a multicast manner In addition, the multicast receiver may use HTTP for a request for a packet stream, a response to the received data, and the like. When the multicast sender uses DASH for adaptive streaming, the multicast receiver may include a DASH client. Data that is adaptively streamed using DASH is configured in a file format transmitted from the server. Accordingly, the multicast receiver may use a file format related protocol capable of identifying the file format and a media codec capable of decoding the identified media format.
The multicast receiver may use TCP/IP to receive a packet stream transmitted in a multicast manner In addition, the multicast receiver may use HTTP for a request for a packet stream, a response to the received data, and the like. When the multicast sender uses DASH for adaptive streaming, the multicast receiver may include a DASH client. The multicast receiver may serve as a proxy for data that is adaptively streamed using DASH. The multicast receiver may deliver the data to the decoding device. Since the number of decoding devices connected to the multicast receiver may be limited, the corresponding connection may be based on unicast transmission. Accordingly, the multicast receiver may use HTTP and TCP/IP as protocols for unicast connection.
The decoding device may use a unicast protocol to receive data transmitted from the multicast receiver. Data delivered by HTTP unicast may have a file format transmitted by the server. Accordingly, the decoding device may use a file format related protocol capable of identifying the file format and a media codec capable of decoding the identified media format. Operations of the other protocols may be the same as those in the embodiment described with reference to the previous drawings.
Files received by the DASH client may be classified according to components for media playback. The DASH client may play the media after receiving the MPD, which is a manifest file, the initialization segment file, and the media segment file. Therefore, the media encoder of the transmitting terminal may encode mdat including media data for the entire play block (MPD+IS+sidx+moof+mdat) and generate a metadata header (styp+sidx+moof) including the encoding information. Thereafter, the transmitting terminal may generate an IS.mp4 file, which is decoder initialization information, write the MPD including the URL information about the segment and transmit the same to the DASH client. The parsing order of the receiving terminal is as follows. The receiving terminal may receive and parse the MPD file, initialize the decoder, and request a media segment according to network conditions.
In the case where the DASH segments stored in various qualities provide a live type service or a service of transmitting data by encoding live broadcast content, the real-time operation of the entire media service framework is applied. Therefore, delay should be minimized to realize a seamless service. When a delay occurs in encoding and packetizing real-time content and parsing and decoding the real-time content during live broadcasting using the DASH protocol, a delay may occur at the start of the service. In other words, when each media file is generated, packetized, and transmitted, a delay time corresponding to a reception time of the packet and time to wait until the entire packet is generated for parsing of the packet may be produced. As a result, the buffering time becomes longer on the client side. To address this issue, the following method is proposed.
Therefore, the DASH server may be positioned in the user network. That is, the conventional multicast model may be maintained for networks leading up to the user network in order for the content network to transmit packets immediately after generating the packets. The DASH server in the user network may collect the received packets to generate URLs of the segments, generate an MPD according to the DASH hierarchy, and perform a streaming service with the DASH client in a unicast manner In other words, the existing DASH server may be moved to the user network, and the DASH server may collect segment files received from the multicast sender and update the MPD to perform the service.
For example, the content server preferentially generates HD segments and starts to transmit the same through the multicast sender, and the DASH server of the user network generates an MPD including information about a representation preferentially generated among the segment packets. In this case, the multicast network controller may transmit control packets through synchronization and management of MPD timeslots from a service perspective. The decoding device, which is a DASH client, may receive unicast HTTP streaming through the generated MPD according to the existing DASH model. This may enable the service to be quickly provided by changing the home gateway or multicast receiver alone without changing the existing DASH client.
Adaptive streaming, such as DASH and Http Live Streaming (HLS), may start only after generation of a content file containing content to be transmitted and metadata containing the attributes of the file. As mentioned in the previous figures, before all the media segment files to be transmitted are generated, a media segment file that can be preferentially transmitted may be transmitted using the existing multicast model. Once an ordering for playing a file at the proxy is generated, a manifest file (e.g., an MPD file) may be generated to play a media segment file transmitted first. That is, according to the existing multicast model, when multicast data or receivable unicast packets are cached in the multicast receiver or the proxy within the multicast ABR model, the multicast receiver or the proxy may create an MPD based on a specific time point. When a DASH segment stored with a plurality of qualities provides a linear service, segments corresponding to the plurality of qualities should be sequentially transmitted to the IP network. Thereby, a service delay may be caused. To overcome this issue, fast data reception may be performed and some media segments may be preferentially received and quickly played back. In the following description, priority of a packet transmission may be defined in consideration of the size of data and a reception time in a playback unit. The packet transmission according to the priority may speed up the rendering of the playback unit, thereby lowering the startup delay.
As a first step, the client may complete the service handshake through discovery. As a second step, a client application or a linear service player may access a service session of the CDN in a unicast manner for playback of a timeslot corresponding to the current time. The client may make a request and a response through HTTP GET and acquire, from the response, information about an accessible multicast network address. The client may request a subscription through the multicast network address. As a third step, the client may receive a service by receiving a packet in the form of an HTTP server push.
When the content provider provides a QUIC protocol based linear service, the QUIC protocol may support fast AV startup by extending the QUIC header information. As shown in the figure, the frame type included in the QUIC header may indicate the ABR segment extension case using a new value. When a segment is transmitted with this value, values of the header extension included in the QUIC header may be extended. The header extension field included in the QUIC header may include an FS field, a repID field, a code point field, and a QUIC PTS field. According to an embodiment, the FS, repID, code point, and QUIC PTS fields may be included as separate fields in the QUIC header. The FS field represents a fast start value of a packet containing a DASH segment, and may indicate whether a packet of a linear service is a packet for fast startup. If the FS field is 0x0, this may indicate that the segment included in the packet is an MPD, an existing DASH model, or a complete segment. If the FS field is 0x1, this may indicate that the mode is a fast startup mode and the MPD is present. That is, the FS field 0x1 may indicate that the packet constitutes a fast startup block, and that the MPD is present and thus content can be configured through the timeline and representation information in the MPD. If the FS field is 0x2, this may indicate that the mode is fast startup mode, and that the MPD is not needed. In this case, the client may start decoding immediately according to the NTP reference and QUIC PTS value of UDP without following the MPD timeline. The value of 0x3 of the FS field may be utilized later. The repID field represents a representationID (aligned with DASH) of the corresponding stream, and may indicate a value including the quality or the bandwidth of the stream. The code point field may indicate whether the IS is included and whether the entire segment is fragmented. If the value of the code point field is 0, this may indicate Default. If the value is 1, this may indicate that a new initialization segment (IS) is included in the packet and that the entire segment is unfragmented. If the value of the code point field is 2, this may indicate that a new IS is included in the packet and that the entire segment is fragmented. If the value of the code point field is 3, this may indicate that a media segment is included in the packet and that the entire segment is unfragmented. If the value is 4, this may indicate that a media segment is included in the packet and that the entire segment is fragmented. The QUIC_PTS field may represent a time stamp for the start of a fast startup block received by MPD less transmission. This field may be available only in the MPD less case. Here, “MPD less” may refer to a scenario in which a receiver cannot acquire available start time because no separate MPD is transmitted as described with reference to
The multicast server may receive media data from the content server and transmit the media data in the multicast manner. That is, the receiver d29030 in the multicast server may receive media data from the transmitter of the content server, and the transmitter d29040 in the multicast server may multicast the media data using the multicast protocol. The packetizer d29035 in the multicast server may packetize the media data into media data packets using QUIC. The media data packet may be a QUIC packet. As described with reference to
The multicast receiver may receive media data from the multicast server using the receiver d29050. The receiver d29050 of the multicast receiver may receive the media data using QUIC, and may acquire fast startup-related information of the header extension field included in the QUIC header as described above. The multicast receiver may decode the media data using the decoder d29060. Then, the fast media startup may be performed using the fast startup-related information. In some embodiments, the decoder may be included in a separate decoding device. In this case, the multicast receiver may deliver, to the decoding device, the fast startup-related information along with the media data.
According to an embodiment of the present invention, multicast transmission between devices belonging to a conventional broadcast network, the Internet, a home network, and the like may be effectively provided.
According to an embodiment of the present invention, the load on the network may be reduced by switching the conventional unicast transmission to multicast transmission.
According to an embodiment of the present invention, the issue of delay caused by network conditions during a linear service and real-time live encoding may be overcome, and fast AV startup may be supported.
Although the description of the present invention is explained with reference to each of the accompanying drawings for clarity, it is possible to design new embodiments by merging the embodiments shown in the accompanying drawings with each other. If a recording medium readable by a computer, in which programs for executing the embodiments mentioned in the foregoing description are recorded, is designed by those skilled in the art, it may fall within the scope of the appended claims and their equivalents.
The devices and methods according to the present invention may be non-limited by the configurations and methods of the embodiments mentioned in the foregoing description. The embodiments mentioned in the foregoing description may be configured in a manner of being selectively combined with one another entirely or in part to enable various modifications.
In addition, the image processing method according to the present invention may be implemented with processor-readable code in a processor-readable recording medium provided to a network device. The processor-readable medium may include all kinds of recording devices capable of storing data readable by a processor. The processor-readable medium may include one of ROM, RAM, CD-ROM, magnetic tapes, floppy disks, optical data storage devices, and the like and also include carrier-wave type implementation such as a transmission via Internet. Furthermore, as the processor-readable recording medium is distributed to a computer system connected via a network, processor-readable code may be saved and executed in a distributed manner.
Although the invention has been described with reference to the exemplary embodiments, those skilled in the art will appreciate that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention described in the appended claims. Such modifications are not to be understood individually from the technical idea or viewpoint of the present invention
Both apparatus and method inventions are described in this specification and descriptions of both the apparatus and method inventions are complementarily applicable, if necessary.
Various embodiments have been described in the best mode for carrying out the invention.
The present invention is usable and repeatable in the field of broadcast and video signal processing.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/KR2017/013069 | 11/17/2017 | WO | 00 |
Number | Date | Country | |
---|---|---|---|
62475214 | Mar 2017 | US | |
62478043 | Mar 2017 | US |