From 44b2b077819c6a40ce98ef4b60764d4daf5a19e4 Mon Sep 17 00:00:00 2001 From: Leandro Moreira Date: Wed, 22 Jul 2015 22:49:26 -0300 Subject: [PATCH] introduces docker for testing or development --- AUTHORS | 1 + CONTRIBUTORS | 1 + Dockerfile | 27 +++++++++++++++++++++++++++ README.md | 36 ++++++++++++++++++++++++++++++++++++ 4 files changed, 65 insertions(+) create mode 100644 Dockerfile diff --git a/AUTHORS b/AUTHORS index 4e723be0d6..dd2e6f9b94 100644 --- a/AUTHORS +++ b/AUTHORS @@ -14,4 +14,5 @@ # Please keep the list sorted. Google Inc. <*@google.com> +Leandro Moreira The Chromium Authors <*@chromium.org> diff --git a/CONTRIBUTORS b/CONTRIBUTORS index c9ff421a48..0fe7c95b84 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -23,6 +23,7 @@ # Please keep the list sorted. Joey Parrish +Leandro Moreira Kongqun Yang Rintaro Kuroiwa Thomas Inskip diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000..0eb7706d18 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +FROM ubuntu:latest + +ENV DEBIAN_FRONTEND noninteractive + +# update, upgrade and install basic packages +RUN apt-get update && apt-get upgrade -y && apt-get clean +RUN apt-get install -y \ + build-essential \ + wget \ + git \ + python \ + subversion + +# install depot_tools http://www.chromium.org/developers/how-tos/install-depot-tools +RUN git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git +ENV PATH /depot_tools:$PATH + +# install edash-packager +RUN mkdir edash_packager +WORKDIR edash_packager +RUN gclient config https://www.github.com/google/edash-packager.git --name=src +RUN gclient sync +RUN cd src && ninja -C out/Release +ENV PATH /edash_packager/src/out/Release:$PATH + +# your media for testing +RUN mkdir /medias diff --git a/README.md b/README.md index df240557f8..2456d46b11 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,42 @@ This document provides the information needed to create a DASH packager that is See https://github.com/google/edash-packager/blob/master/CONTRIBUTING.md for details. +# Using docker for testing/development # + +[Docker](https://www.docker.com/whatisdocker) is a tool that can package an application and its dependencies in a virtual container that can run on different host operating systems. + +1. [Install Docker.](https://docs.docker.com/installation/) + +2. Build the image + + ```Shell + docker build -t edash github.com/google/edash-packager.git + ``` + +3. Run the container (`your_media_path` should be your media folder) + + ```Shell + docker run -v /your_media_path/:/medias -it --rm edash + ``` + +4. Make tests/experimentations + + ```Shell + # make sure you run step 3 and you're inside the container + + # go to /medias folder + cd /medias + + # VOD: mp4 --> dash + packager input=/medias/example.mp4,stream=audio,output=audio.mp4 \ + input=/medias/example.mp4,stream=video,output=video.mp4 \ + --profile on-demand --mpd_output example.mpd + + # then you can leave the container + exit + + # now you can access the mpd at `your_media_path` + ``` #Design overview#