Method and device for streaming data based on transmission rate control method
View Patent ↗A method and device for streaming data based on a transmission rate control method are disclosed. According to one embodiment of the present disclosure, a method performed by a device may include performing buffering on video content for a first predetermined time period based on a start time of a first epoch; determining a first transmission rate in the first epoch based on an amount of data transmitted according to the buffering and traffic pattern information of the video content; providing the video content at the first transmission rate from a time point at which the buffering is completed to a time point at which the first epoch ends.
1 . A method of streaming data performed by a device, the method comprising:
performing buffering on video content for a first predetermined time period based on a start time of a first epoch;
determining a first transmission rate in the first epoch based on an amount of data transmitted according to the buffering and traffic pattern information of the video content;
providing the video content at the first transmission rate from a time point at which the buffering is completed to a time point at which the first epoch ends;
determining a second transmission rate in a second epoch adjacent to the first epoch based on an accumulated amount of data transmitted until the time point at which the first epoch ends and the traffic pattern information of the video content; and
providing the video content during the second epoch at the second transmission rate,
wherein, based on an amount of data required for streaming the video content, a noise data value (e) to be transmitted by the device is determined,
wherein, based on the amount of data required for streaming the video content exceeding a threshold value, the noise data value is set to 0, and
wherein, based on the amount of data required for streaming the video content being less than the threshold value, the noise data value is set to a non-zero positive number.
2 . The method of claim 1 , wherein:
the traffic pattern information of the video content includes at least one of the amount of data required for streaming the video content for each of a plurality of epochs or a time-sequence graph calculated based on an accumulated amount of data required for streaming the video content for each of the plurality of epochs, and
an x-axis of the time-sequence graph represents time and a y-axis of the time-sequence graph represents an accumulated amount of data of the video content transmitted over time.
3 . The method of claim 2 , wherein:
the first transmission rate (r1) is a slope value of a first straight line connecting a first coordinate and i) a second coordinate on the time-sequence graph within the first epoch or ii) a third coordinate having a y-axis value greater than the second coordinate, and
each of the x-axis value and the y-axis value of the first coordinate is a time point (TB) at which the buffering is completed and an amount of data (SB) transmitted according to the buffering.
4 . The method of claim 1 , wherein the determining the second transmission rate comprises:
performing buffering on the video content for a second predetermined time period based on the start time of the first epoch; and
determining the second transmission rate based on ‘a sum of the accumulated amount of data transmitted until the time point at which the first epoch ends and an amount of data transmitted according to buffering during the second predetermined time period’ and the traffic pattern information of the video content.
5 . The method of claim 1 , wherein:
an entire amount of data for streaming the video content is divided into a plurality of epoch units by the device, and
the traffic pattern information of the video content is output based on metadata of the entire amount of data divided into the plurality of epoch units.
6 . The method of claim 1 , wherein:
whether to perform buffering in the second epoch is determined based on a network status for transmitting the video content.
7 . A device that streams data based on a transmission rate control method, the device comprising:
at least one memory; and
at least one processor,
wherein the at least one processor is configured to:
perform buffering on video content for a first predetermined time period based on a start time of a first epoch,
determine a first transmission rate in the first epoch based on an amount of data transmitted according to the buffering and traffic pattern information of the video content,
provide the video content at the first transmission rate from a time point at which the buffering is completed to a time point at which the first epoch ends,
determine a second transmission rate in a second epoch adjacent to the first epoch based on an accumulated amount of data transmitted until the time point at which the first epoch ends and the traffic pattern information of the video content, and
provide the video content during the second epoch at the second transmission rate,
wherein, based on an amount of data required for streaming the video content, a noise data value (e) to be transmitted by the device is determined,
wherein, based on the amount of data required for streaming the video content exceeding a threshold value, the noise data value is set to 0, and
wherein, based on the amount of data required for streaming the video content being less than the threshold value, the noise data value is set to a non-zero positive number.
8 . The device of claim 7 , wherein:
the traffic pattern information of the video content includes at least one of the amount of data required for streaming the video content for each of a plurality of epochs or a time-sequence graph calculated based on an accumulated amount of data required for streaming the video content for each of the plurality of epochs, and
an x-axis of the time-sequence graph represents time and a y-axis of the time-sequence graph represents an accumulated amount of data of the video content transmitted over time.
9 . The device of claim 8 , wherein:
the first transmission rate (r1) is a slope value of a first straight line connecting a first coordinate and i) a second coordinate on the time-sequence graph within the first epoch or ii) a third coordinate having a y-axis value greater than the second coordinate, and
each of the x-axis value and the y-axis value of the first coordinate is a time point (TB) at which the buffering is completed and an amount of data (SB) transmitted according to the buffering.
10 . The device of claim 7 , wherein the at least one processor is configured to:
perform buffering on the video content for a second predetermined time period based on the start time of the first epoch; and
determine the second transmission rate based on ‘a sum of the accumulated amount of data transmitted until the time point at which the first epoch ends and an amount of data transmitted according to buffering during the second predetermined time period’ and the traffic pattern information of the video content.
11 . The device of claim 7 , wherein:
an entire amount of data for streaming the video content is divided into a plurality of epoch units by the device, and
the traffic pattern information of the video content is output based on metadata of the entire amount of data divided into the plurality of epoch units.
12 . The device of claim 7 , wherein:
whether to perform buffering in the second epoch is determined based on a network status for transmitting the video content.
13 . A system for streaming data based on a transmission rate control method, the system comprising:
a device providing video content; and
a terminal of a user receiving the video content,
wherein the device is configured to:
perform buffering on video content for a first predetermined time period based on a start time of a first epoch,
determine a first transmission rate in the first epoch based on an amount of data transmitted according to the buffering and traffic pattern information of the video content,
provide the video content at the first transmission rate from a time point at which the buffering is completed to a time point at which the first epoch ends,
determine a second transmission rate in a second epoch adjacent to the first epoch based on an accumulated amount of data transmitted until the time point at which the first epoch ends and the traffic pattern information of the video content, and
provide the video content during the second epoch at the second transmission rate to the terminal,
wherein, based on an amount of data required for streaming the video content, a noise data value (e) to be transmitted by the device is determined,
wherein, based on the amount of data required for streaming the video content exceeding a threshold value, the noise data value is set to 0, and
wherein, based on the amount of data required for streaming the video content being less than the threshold value, the noise data value is set to a non-zero positive number.