A media packaging and development framework for VOD and Live DASH and HLS applications, supporting Common Encryption for Widevine and other DRM Systems.
Go to file
KongQun Yang 1bf1ec2445 Add multi-key support in fixed/raw keys
The keys can be specified in --keys option, with the form of
  label=<label>:key_id=<32-digit hex string>:key=<32-digit hex string>,label=...

There can be multiple "label=..." block. The DRM label can be one
of "AUDIO, SD, HD, UHD1, UHD2" or a custom label.

Mark --key and --key_id as deprecated. We can achieve the same result
with --keys=label=:key_id=<key_id>:key=<key>.

Also add a new optional field in stream descriptor: drm_label, which
is used to overwrite the internally generated DRM label for the stream.
If not provided, the DRM label is generated automatically based on
audio/video information, e.g. resolution.

Code changes:
- Merged RawKeyEncryptionParams and RawKeyDecryptionParams into
  RawKeyParams.
- Make FixedKeySource accepts RawKeyParams as input.

Change-Id: Ic8c2f071cc71188e13f14bc6396fc2b3ffa5cac6
2017-10-24 21:04:49 +00:00
.github Update github issue template with mailing list for test files 2017-06-02 18:16:41 +00:00
docs Add multi-key support in fixed/raw keys 2017-10-24 21:04:49 +00:00
kokoro Batch script should fail if ninja fails 2017-04-20 21:25:10 +00:00
packager Add multi-key support in fixed/raw keys 2017-10-24 21:04:49 +00:00
.clang-format Use Chromium style for clang-format 2014-07-02 22:49:46 +00:00
.gitignore Add gitignores for msvs files 2016-12-19 21:26:26 +00:00
.gitmodules Add an empty .gitmodules to avoid gclient warning 2014-03-28 22:13:33 +00:00
.travis.yml Add appveyor config for Windows CI 2016-08-23 12:24:34 -07:00
AUTHORS Fairplay key system support 2017-08-08 10:31:40 -07:00
CHANGELOG.md Add v1.6.2 tag in CHANGELOG 2017-04-18 13:56:18 -07:00
CONTRIBUTING.md Add AUTHORS, CONTRIBUTORS, CONTRIBUTING.md, and README.md 2014-04-19 00:05:38 +00:00
CONTRIBUTORS Fairplay key system support 2017-08-08 10:31:40 -07:00
DEPS Organize DEPS file 2017-04-11 17:38:19 +00:00
Dockerfile Fix docker build failure due to build update 2016-08-29 17:52:53 -07:00
LICENSE Update README and LICENSE 2016-09-07 19:22:41 +00:00
README.md Fix README rendering problems 2017-09-19 20:30:30 -07:00
appveyor.yml Fix build break in win64 2017-02-10 22:57:35 -08:00
chromium-LICENSE Add Chromium license 2014-04-10 19:58:08 +00:00
gyp_packager.py Update DEPS to fix mac build failure 2016-08-19 13:49:41 -07:00

README.md

Shaka Packager

Build Status Build status

Shaka Packager is a tool and a media packaging SDK for DASH and HLS packaging and encryption. It can prepare and package media content for online streaming.

Shaka Packager supports:

  • Both Video-On-Demand and Live.

  • Streaming formats:

  • Key systems:

  • Encryption standards:

  • Media Containers and codecs

    Codecs ISO-BMFF WebM MPEG2-TS WVM
    H264 (AVC) I / O - I / O I
    H265 (HEVC) I / O - I -
    VP8 I / O I / O - -
    VP9 I / O I / O - -
    AAC I / O - I / O I
    Dolby AC3/EAC3 I / O - - -
    DTS I / O - - -
    Opus I / O I / O - -
    Vorbis - I / O - -

    ** I for input and O for output. ** Opus support in ISO-BMFF is experimental.

  • Platforms

    • Linux
    • Mac
    • Windows
    • Cross compiling for ARM is also supported.

1: Limited support

Getting Shaka Packager

There are several ways you can get Shaka Packager.

Useful Links

Contributing

If you have improvements or fixes, we would love to have your contributions. See https://github.com/google/shaka-packager/blob/master/CONTRIBUTING.md for details.