|
|
|
|
|
by ww520
984 days ago
|
|
If you open up the browser's Web Developer Tools on the Youtube page and go to the Network tab, you can see all the requests and responses going between the webpage (client) and the servers. The Youtube video segments are downloaded from the googlevideo.com host. These alternative clients basically go directly to the googlevideo.com to download the video segments to play them back. Google uses DASH as the manifest file for streaming video. Each video has a corresponding DASH file. You can download the DASH manifest XML file from the Youtube page for the video. Then extract video segment URLs from the file. Those typically go to the googlevideo.com host. Google uses WebM as video container and VP9 for video encoding for the video segment, which most browsers support. Most streaming players (alternative players) use the MSE API (Media Source Extensions) to feed the downloaded video segment data to the <video> tag to play the video. Most browsers support MSE these days. |
|