# Purpose Roku's [BIF file creation tool](https://developer.roku.com/docs/developer-program/media-playback/trick-mode/bif-file-creation.md) for linux is out of date (last updated six years ago). It includes a dependency on `libavformat.so.57`, which is obsolete on all modern GNU/Linux distributions. This container allows execution of the BIF creation tool using a container powered by the archived Debian version "Stretch", which includes the necessary version of the dependency. # Usage After cloning the repository, build the image: ```sh podman build -t [local-image-name] . ``` Add your input and output folders to env variables: ```sh INPUT_DIR=[path] OUTPUT_DIR=[path] ``` You will need to grant all users read access to your input dir, and write + execute access to your output dir: ```sh chmod o+r $INPUT_DIR chmod o+wx $OUTPUT_DIR ``` Now, you can run the script. The input dir should be bind mounted read-only, and output dir bind mounted read-write: ```sh podman run --rm \ --mount="type=bind,src=$INPUT_DIR,dst=/media,ro" \ --mount="type=bind,src=$OUTPUT_DIR,dst=/output" \ localhost/[local-image-name] -- /media/path/to/video.mp4 ``` The `/media` destination folder for the input dir is arbitrary. You can use any folder you like, as long as the file you pass as the execution argument is located within that folder. # Remote dependencies The container fetches the following remote resources at build time. - Debian (Stretch) container iage from `docker.io/library`. - biftools_linux.zip file from `rokudev/samples` repository. - `ffmpeg` and `unzip` packages, the former of which contains deprecated library `libavformat.so.57`, from `archive.debian.org`.