{"id":15376748,"url":"https://github.com/bennypowers/shaka-player","last_synced_at":"2025-06-17T11:09:22.548Z","repository":{"id":32433501,"uuid":"126670915","full_name":"bennypowers/shaka-player","owner":"bennypowers","description":"Custom element wrapper for google's Shaka Player","archived":false,"fork":false,"pushed_at":"2023-07-18T20:44:24.000Z","size":1772,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-21T16:57:07.868Z","etag":null,"topics":["customelements","google-shaka-player","hacktoberfest","html","shaka-player","video-player","webcomponents"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bennypowers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":["bennypowers"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"custom":null}},"created_at":"2018-03-25T06:31:09.000Z","updated_at":"2024-12-17T11:44:45.000Z","dependencies_parsed_at":"2024-10-01T14:08:52.942Z","dependency_job_id":"a6ee32d9-daa7-43b5-bd07-2549516c3398","html_url":"https://github.com/bennypowers/shaka-player","commit_stats":{"total_commits":71,"total_committers":5,"mean_commits":14.2,"dds":0.647887323943662,"last_synced_commit":"b645124d7902e632586642e310ca15d0fba34252"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/bennypowers/shaka-player","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bennypowers%2Fshaka-player","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bennypowers%2Fshaka-player/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bennypowers%2Fshaka-player/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bennypowers%2Fshaka-player/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bennypowers","download_url":"https://codeload.github.com/bennypowers/shaka-player/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bennypowers%2Fshaka-player/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260346875,"owners_count":22995151,"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":["customelements","google-shaka-player","hacktoberfest","html","shaka-player","video-player","webcomponents"],"created_at":"2024-10-01T14:08:50.268Z","updated_at":"2025-06-17T11:09:17.530Z","avatar_url":"https://github.com/bennypowers.png","language":"JavaScript","funding_links":["https://github.com/sponsors/bennypowers"],"categories":[],"sub_categories":[],"readme":"# shaka-player\n\nCustom element wrapper for google\u0026#39;s Shaka Player\n\n## Usage\n```html\n\u003cshaka-player\n   autoplay\n   controls\n   dash-manifest=\"http://rdmedia.bbc.co.uk/dash/ondemand/bbb/2/client_manifest-common_init.mpd\"\n\u003e\u003c/shaka-player\u003e\n```\n\n## Properties\n\n| Property                    | Attribute                      | Modifiers | Type                             | Default    | Description                                      |\n|-----------------------------|--------------------------------|-----------|----------------------------------|------------|--------------------------------------------------|\n| `allowCrossSiteCredentials` | `allow-cross-site-credentials` |           | `boolean`                        |            | Whether shaka player should use cookies for CORS requests. |\n| `autoplay`                  | `autoplay`                     |           | `boolean`                        | false      | Whether the video should auto-play.              |\n| `canPlay`                   |                                | readonly  | `boolean`                        |            | Whether the video can play.                      |\n| `controls`                  | `controls`                     |           | `boolean`                        |            | Whether to display controls over the video.      |\n| `currentTime`               | `currentTime`                  |           | `number`                         |            | Video's current time                             |\n| `dashManifest`              | `dash-manifest`                |           | `string`                         |            | URL to the MPEG-DASH manifest                    |\n| `duration`                  |                                | readonly  | `number`                         |            | The duration of the video in seconds.            |\n| `ended`                     |                                | readonly  | `boolean`                        |            | Whether or not the video playback has ended.     |\n| `hlsManifest`               | `hls-manifest`                 |           | `string`                         |            | URL to the HLS manifest                          |\n| `loading`                   | `loading`                      |           | `boolean`                        | false      | Whether the video is loading                     |\n| `muted`                     | `muted`                        |           | `boolean`                        | false      | Whether the video is muted.                      |\n| `paused`                    |                                | readonly  | `boolean`                        |            | Whether the video is paused.                     |\n| `playing`                   | `playing`                      |           | `boolean`                        |            | Whether the video is playing.                    |\n| `poster`                    | `poster`                       |           | `string`                         |            | The src URL for the poster frame.                |\n| `preload`                   | `preload`                      |           | `'none'\\|'metadata'\\|'auto'\\|''` | \"metadata\" | Video element preload value.                     |\n| `readyState`                |                                | readonly  | `number`                         |            | Ready state of the video element.                |\n| `src`                       | `src`                          |           | `string`                         |            | URL to a video file                              |\n| `volume`                    |                                |           | `number`                         | 1          | The volume level of the video.                   |\n\n## Methods\n\n| Method         | Type                                             | Description                                      |\n|----------------|--------------------------------------------------|--------------------------------------------------|\n| `load`         | `(manifestUri: string, startTime?: number \\| undefined, manifestMimeType?: string \\| undefined): Promise` | Load a Manifest.\u003cbr /\u003e\u003cbr /\u003e**startTime**: Optional start time, in seconds, to begin playback. Defaults to 0 for VOD and to the live edge for live. Set a positive number to start with a certain offset the beginning. Set a negative number to start with a certain offset from the end. This is intended for use with live streams, to start at a fixed offset from the live edge.\u003cbr /\u003e**manifestMimeType**: Optional mimetype registered using `shaka.media.ManifestParser.register(mimeType, ParserClass)` |\n| `loadManifest` | `(manifestUri: string): Promise`                 | Load a manifest URL into shaka player.           |\n| `loadVideo`    | `(url: string): string`                          | Load a regular video URL.                        |\n| `pause`        | `(): any`                                        | Pauses the player.                               |\n| `play`         | `(): Promise`                                    | Plays the player.                                |\n| `unload`       | `(reinitializeMediaSource?: boolean \\| undefined): Promise\u003cvoid\u003e` | Unload the current manifest and make the Player available for re-use.\u003cbr /\u003e\u003cbr /\u003e**reinitializeMediaSource**: If true, start reinitializing MediaSource right away. This can improve load() latency for MediaSource-based playbacks. Defaults to true. |\n\n## Events\n\n| Event               | Description                                     |\n|---------------------|-------------------------------------------------|\n| `error`             | fired when shaka player errors                  |\n| `init-shaka-player` | fired when shaka player is initialized          |\n| `manifest-loaded`   | fired when shaka player loads the manifest file |\n\n## CSS Custom Properties\n\n| Property                          | Description                                      |\n|-----------------------------------|--------------------------------------------------|\n| `--shaka-player-background-color` | The background color of the video element. Default: `black` |\n| `--shaka-player-object-fit`       | object-fit property of the video element. Default: `initial` |\n| `--shaka-player-video-height`     | height property of the video element. Default: `auto` |\n| `--shaka-player-video-width`      | width property of the video element. Default: `100%` |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbennypowers%2Fshaka-player","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbennypowers%2Fshaka-player","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbennypowers%2Fshaka-player/lists"}