Docker is a tool that can package an application and its dependencies in a virtual container to run on different host operating systems.
To pull latest Shaka Packager:
$ docker pull google/shaka-packagerYou can pull a specific version, e.g. v1.6.2:
$ docker pull google/shaka-packager:release-v1.6.2The full list of tags is available here.
Assume you have your media files stored in host_media_path in the host
machine.
This runs the container and maps host_media_path to media in the container:
$ docker run -v /host_media_path/:/media -it --rm google/shaka-packagerNote that the networking in the container is containerized by default, so if
you want to access UDP multicast in the host network, you will need to configure
the network explicitly. You may do this with --net=host option, i.e.
$ docker run -v /host_media_path/:/media -it --net=host --rm google/shaka-packagerThen in the container, run the packager command, e.g.:
$ packager input=/media/example.mp4,stream=audio,output=/media/audio.mp4 \
input=/media/example.mp4,stream=video,output=/media/video.mp4 \
--mpd_output /media/example.mpdOutputs are available in the host's media folder host_media_path.