|
|
1 سال پیش | |
|---|---|---|
| .. | ||
| README.md | 1 سال پیش | |
| main.go | 1 سال پیش | |
bandwidth-estimation-from-disk demonstrates how to use Pion's Bandwidth Estimation APIs.
Pion provides multiple Bandwidth Estimators, but they all satisfy one interface. This interface emits an int for how much bandwidth is available to send. It is then up to the sender to meet that number.
high.ivf med.ivf and low.ivfffmpeg -i $INPUT_FILE -g 30 -b:v .3M -s 320x240 low.ivf
ffmpeg -i $INPUT_FILE -g 30 -b:v 1M -s 858x480 med.ivf
ffmpeg -i $INPUT_FILE -g 30 -b:v 2.5M -s 1280x720 high.ivf
go get github.com/pion/webrtc/v3/examples/bandwidth-estimation-from-disk
jsfiddle.net you should see two text-areas, 'Start Session' button and 'Copy browser SessionDescription to clipboard'
The output.ivf you created should be in the same directory as bandwidth-estimation-from-disk. In the jsfiddle press 'Copy browser Session Description to clipboard' or copy the base64 string manually.
Now use this value you just copied as the input to bandwidth-estimation-from-disk
Run echo $BROWSER_SDP | bandwidth-estimation-from-disk
bandwidth-estimation-from-disk < my_fileCopy the text that bandwidth-estimation-from-disk just emitted and copy into the second text area in the jsfiddle
A video should start playing in your browser above the input boxes. When bandwidth-estimation-from-disk switches quality levels it will print the old and new file like so.
Switching from low.ivf to med.ivf
Switching from med.ivf to high.ivf
Switching from high.ivf to med.ivf
Congrats, you have used Pion WebRTC! Now start building something cool