{"id":21690092,"url":"https://github.com/cdnbye/dashjs-p2p-engine","last_synced_at":"2025-04-12T09:35:28.263Z","repository":{"id":96323327,"uuid":"153878130","full_name":"cdnbye/dashjs-p2p-engine","owner":"cdnbye","description":"A dash.js plugin to offload bandwidth from expensive traditional CDNs，while also maximizing a user’s viewing experience. ","archived":false,"fork":false,"pushed_at":"2024-11-11T11:07:55.000Z","size":150,"stargazers_count":12,"open_issues_count":1,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-26T04:34:01.977Z","etag":null,"topics":["bittorrent","cdnbye","dash","dashjs","html5","p2p","webrtc"],"latest_commit_sha":null,"homepage":"https://swarmcloud.net","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cdnbye.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-20T06:53:38.000Z","updated_at":"2025-03-14T08:04:13.000Z","dependencies_parsed_at":"2024-02-10T12:31:50.148Z","dependency_job_id":"b79b0b45-0d1f-4e9b-86b1-54b70a7d3451","html_url":"https://github.com/cdnbye/dashjs-p2p-engine","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdnbye%2Fdashjs-p2p-engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdnbye%2Fdashjs-p2p-engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdnbye%2Fdashjs-p2p-engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdnbye%2Fdashjs-p2p-engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cdnbye","download_url":"https://codeload.github.com/cdnbye/dashjs-p2p-engine/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248546764,"owners_count":21122377,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bittorrent","cdnbye","dash","dashjs","html5","p2p","webrtc"],"created_at":"2024-11-25T17:29:04.760Z","updated_at":"2025-04-12T09:35:28.226Z","avatar_url":"https://github.com/cdnbye.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"**English | [简体中文](Readme_zh.md)**\n\n\u003ch1 align=\"center\"\u003e\u003ca href=\"\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\u003cimg width=\"250\" src=\"https://www.swarmcloud.net/img/logo.png\" alt=\"cdnbye logo\"\u003e\u003c/a\u003e\u003c/h1\u003e\n\u003ch4 align=\"center\"\u003eLet your viewers become your unlimitedly scalable CDN.\u003c/h4\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.npmjs.com/package/@swarmcloud/dashjs\"\u003e\u003cimg src=\"https://img.shields.io/npm/v/@swarmcloud/dashjs.svg?style=flat\" alt=\"npm\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.jsdelivr.com/package/npm/@swarmcloud/dashjs\"\u003e\u003cimg src=\"https://data.jsdelivr.com/v1/package/npm/@swarmcloud/dashjs/badge\" alt=\"jsdelivr\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\nCDNBye dashjs-p2p-engine implements [WebRTC](https://en.wikipedia.org/wiki/WebRTC) datachannel to scale live/vod video streaming by peer-to-peer network using bittorrent-like protocol. The forming peer network can be layed over other CDNs or on top of the origin server. Powered by [dash.js](https://github.com/Dash-Industry-Forum/dash.js), it can play MPEG-dash on PC and mobile.\n\n## Features\n- WebRTC data channels for lightweight peer-to-peer communication with no plugins\n- Support live and VOD streams over MPEG-dash protocol\n- Very easy to integrate with an existing dash.js project\n- Seamlessly fallback to normal server usage if a browser doesn't support WebRTC\n- Compatible with all CDNs, agnostic to DRM and video codecs. No service side changes required.\n- Efficient scheduling policies to enhance the performance of P2P streaming\n- Use IP database to group up peers by ISP and regions\n\n## Getting Started\nPut the [quick-start.html](demo/quick-start.html) in your web page, run it. Wait for a few seconds，then open the same page from another browser. Now you have a direct P2P connection between two browsers without plugin!\nThe first web peer will serve as a seed, if no one else in the same channel.\n\n## Browser Support\nWebRTC has already been incorporated into the HTML5 standard and it is broadly deployed in modern browsers. The compatibility of CDNBye depends on the browser support of WebRTC and dash.js. Please note that iOS Safari \"Mobile\" does not support the MediaSource API.\n\nCompatibility|Chrome | Firefox | macOS Safari| Android Wechat/QQ | Opera | Edge | IE | iOS Safari |\n:-: | :-: | :-: | :-: | :-: | :-: | :-:| :-:| :-:\nWebRTC Datachannel | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ❌ | ✔ |\ndash.js | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |\nCDNBye | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ❌ | ✔ |\n\n## Include\nInclude the pre-built script of latest version:\n```html\n\u003cscript src=\"https://cdn.jsdelivr.net/npm/@swarmcloud/dashjs\"\u003e\u003c/script\u003e\n```\n\n## API and Configuration\nSee [API.md](https://docs.swarmcloud.net/dashjs/API)\n\n## Console\nRegister your domain in [dashboard](https://dash.swarmcloud.net), where you can view p2p-related information.\n\n## Related Projects\n- [shaka-p2p-engine](https://github.com/cdnbye/shaka-p2p-engine) - P2P engine for Shaka Player.\n- [hlsjs-p2p-engine](https://github.com/cdnbye/hlsjs-p2p-engine) - Web Video Delivery Technology with No Plugins for hls.js.\n- [mp4-p2p-engine](https://github.com/cdnbye/mp4-p2p-engine) - Web Video Delivery Technology with No Plugins for MP4.\n\n## FAQ\nWe have collected some [frequently asked questions](https://docs.swarmcloud.net/faq). Before reporting an issue, please search if the FAQ has the answer to your problem.\n\n## Contact Us\nEmail: service@cdnbye.com\n\u003cbr\u003e\nTelegram: @cdnbye\n\u003cbr\u003e\nSkype: live:86755838\n\n\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdnbye%2Fdashjs-p2p-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcdnbye%2Fdashjs-p2p-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdnbye%2Fdashjs-p2p-engine/lists"}