50
Vantage Optimizing video upload for time-shifted viewing of social live streams (SIGCOMM 2019) Devdeep Ray, Jack Kosaian, Rashmi Vinayak, Srinivasan Seshan 1

(SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

  • Upload
    others

  • View
    6

  • Download
    2

Embed Size (px)

Citation preview

Page 1: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

VantageOptimizing video upload for time-shifted

viewing of social live streams(SIGCOMM 2019)

Devdeep Ray, Jack Kosaian, Rashmi Vinayak, Srinivasan Seshan

1

Page 2: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Social live video streaming (SLVS)

Server

Record

Upload

Real-time

delivery

Real-time deliveryDelayed

delivery

2

Page 3: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Challenges in mobile social live streaming

Limitations of current techniques

Vantage:

Key ideas

Design and implementation

Evaluation3

Page 4: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

4

Bob

Alice

Network impairments tolerated by real-time viewers

Page 5: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

5

Charlie(Attending SIGCOMM during concert)

Page 6: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

6

Page 7: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

7

Charlie

Delayed viewers also affected by network impairments

Page 8: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Typical SLVS platforms today

Server

Record

Upload

Real-time

delivery

Real-time deliveryDelayed

delivery

8

Page 9: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Video upload path is critical

9

Available network bandwidth

Mobile streaming common

Significant bandwidth variation on upload path

The uploaded video is a baseline for all viewers

Downstream optimizations are limited by upload quality

Page 10: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Qua

lity

Broadcast(Sports, News)

Conferencing(Hangouts, Skype)

10

Viewing delay

Live video streaming today

"Real-time" latency constraintsVideo quality is secondary

Delay tolerantVideo quality is important

Social live streaming has both real time and delay-tolerant viewers for the same session

Page 11: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Qua

lity

Broadcast(Sports, News)

Conferencing(Hangouts, Skype)

SLVS applications: WebRTC, RTMP

11

Viewing delay

SLVS applications use conferencing techniques

Page 12: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Qua

lity

Broadcast(Sports, News)

Conferencing(Hangouts, Skype)

12

Viewing delay

SLVS applications

Today's solutions

SLVS today: Same video quality for all viewing delays

Page 13: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Qua

lity

Broadcast(Sports, News)

Conferencing(Hangouts, Skype)

13

Viewing delay

Goal: Better quality for delayed viewers

Goal: SLVS applications

Page 14: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Challenges in mobile social live streaming

Limitations of current techniques

Vantage:

Key ideas

Design and implementation

Evaluation14

Page 15: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Existing upload techniques: Real-time streaming

"Real-time" latency constraints

Bitrate closely matches available bandwidth

Sensitive to bandwidth variation

Conferencing(Skype, Hangouts, ..)

15Charlie

(Delayed)Bob

(Real-time)

Page 16: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Existing upload techniques: Buffered streaming

Delay tolerant

Encode at ~ average bandwidth

Large sender-side buffers to absorb bandwidth variation

Higher video quality, no interactivity

Broadcasting(Entertainment, News, ..)

16Charlie

(Delayed)Bob

(Real-time)

Page 17: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Existing upload techniques

Inadequate for SLVS:

Delayed + high quality video

OR

Interactive video17

Page 18: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Challenges in mobile social live streaming

Limitations of current techniques

Vantage:

Key ideas

Design and implementation

Evaluation18

Page 19: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Observation #1: Bandwidth is highly variable

Analyzed traces from the Mahimahi ** project

Significant variations observed, with extreme lows and highs

** Netravali, Ravi, et al. "Mahimahi: a lightweight toolkit for reproducible web measurement." ACM SIGCOMM Computer Communication Review 44.4 (2015): 129-130.

19

Page 20: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Catering to multiple viewing delays

20

Network is impaired: Use real-time strategy

When network recovers: Use less than capacity for real-time

Excess bandwidth used to repair past segments

Page 21: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Viewing quality for different delays

21Bob Charlie

Real-time video bitrate

Delayed video bitrate

Page 22: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Viewing quality for different delays

22

Bob(Real-time)

Charlie(Delayed)

Why is Bob (real-time viewer) okay with this?

Page 23: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Aside: Video quality metrics

Video bitrate != video quality

Vantage uses SSIM for measuring perceived video quality

23

SSIM = 1.0 SSIM = 0.66

Page 24: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Observation #2: Quality vs. Frame size is concave

Video encoded multiple times at different bitrates

24

Size vs. SSIM plot for each frame

Page 25: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Observation #2: Quality vs. Frame size is concave

25

Page 26: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Observation #2: Quality vs. Frame size is concave

26

Page 27: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Observation #2: Quality vs. Frame size is concave

Using high bandwidth to improve low quality frames very powerful!

27

Page 28: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Challenges in mobile social live streaming

Limitations of current techniques

Vantage:

Key ideas

Design and implementation

Evaluation28

Page 29: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage: System architecture

Server

Record

Upload

Real-time

delivery

Real-time deliveryDelayed

delivery

29

Page 30: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage: Streamer Architecture

30

Page 31: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage: Key challenges

Real-time video stream bitrate

Enhancement frame selection

Video enhancement stream bitrate

Real-time decisions that optimize video quality for all viewing delays

31

Page 32: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

32

Page 33: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

33

Input: 1. Bandwidth estimates2. Frame encoding stats

Page 34: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

34

Output: 1. Real-time bitrate2. Enhancement frames3. Enhancement bitrate

Input: 1. Bandwidth estimates2. Frame encoding stats

Page 35: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Scheduling goals

35

1. Constrain encoded bits to the available bandwidth2. Optimize video quality across multiple viewing delays

Page 36: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage scheduler

Mixed integer program (MIP) maximizes quality for multiple viewing delays

Periodically generates video encoding schedule

Key challenges:

Handling stale bandwidth estimates

Mapping frame sizes to quality

36

Page 37: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Scheduler period trade-offs

Short time period

Accurate bandwidth estimates

Short sighted scheduling

Long time period

Stale bandwidth estimates

Long term optimal scheduling

37

Page 38: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Handling stale network estimates

38

Dual approach: Long term (MIP) + short term (Execution engine)

Vantage: MIP generates schedule every 2 seconds

Fallback strategy: Execution engine prioritizes real-time

Page 39: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage scheduler

Mixed integer program (MIP) maximizes quality for multiple viewing delays

Periodically generates video encoding schedule

Key challenges:

Handling stale bandwidth estimates

Mapping frame sizes to quality

39

Page 40: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Frame size vs SSIM estimation

Frame size vs SSIM curve needed for optimization

Statistics from encoders drive estimation

Simple non-linear model: works well

40

Size vs. SSIM plot for each frame

Page 41: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Challenges in mobile social live streaming

Limitations of current techniques

Vantage:

Key ideas

Design and implementation

Evaluation41

Page 42: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage: Evaluation

Designed to work with existing congestion control protocols for real-time video

Emulated transport layer that provides network estimates from traces

Evaluation performed on different combinations of videos and network traces

Videos: Animated, talking head, drone footage

Network traces: LTE (Verizon, ATT), UMTS (T-Mobile) **

** Netravali, Ravi, et al. "Mahimahi: a lightweight toolkit for reproducible web measurement." ACM SIGCOMM Computer Communication Review 44.4 (2015): 129-130. 42

Page 43: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Baseline: Real-time (conference style) streaming

All viewers affected by network variations

43

Page 44: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Baseline: Buffered streaming

High quality for delayed viewing

Real-time viewing infeasible

44

Page 45: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage: Quality enhancing retransmissions

Real-time quality almost as good as real-time baselineReal-time baseline Vantage

45

Page 46: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Vantage: Quality enhancing retransmissions

Real-time quality almost as good as real-time baselineReal-time baseline Vantage

46Delayed viewing quality significantly better!

Page 47: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Other results in the paper

Multiple traces + videos, detailed results in paper

Varying delay distributions

Sensitivity analyses of optimizer period and bandwidth estimation error

Ablation studies comparing Vantage with naive solutions

47

Page 48: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Results summary

48

Up to 42.9% (average 19.9%) higher delayed video quality (Charlie = Happy)

At most 7% (average 3.3%) drop in real-time quality (Bob = Still Happy)

Page 49: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

Summary

SLVS applications present new and unique challenges

New paradigm of watching videos: Time-shifted viewing

Upload path variability is important to address

Vantage: Mitigates upload path variability to improve quality for time-shifted viewing

Thank you for listening!

49

Page 50: (SIGCOMM 2019) viewing of social live streams Optimizing ... · Viewing delay Live video streaming today "Real-time" latency constraints Video quality is secondary Delay tolerant

50

JackKosaian

[email protected]

RashmiVinayak

[email protected]

SrinivasanSeshan

[email protected]

DevdeepRay

[email protected]

Our research group