Docker images
MFormats SDK:
docker pull f.docker.medialooks.net:5000/docker/cloud_sdk_cpp_win_vs17:tests-mformats
MPlatform SDK:
docker pull f.docker.medialooks.net:5000/docker/cloud_sdk_cpp_win_vs17:tests-mplatform
Preparations
All images are Windows-based and works only on Windows hosts.
So, first you should add Hyper-V component to your system, install Docker Desktop app, and then switch type to Windows containers there.
After pulling the image you can run container in the interactive mode (docker run -it image_id) or use Dockerfile.
Dockerfile example
Transcoder is a typical use case for SDK docker image, so the SampleFileTranscodingConsole.exe ("C:\Program Files (x86)\Medialooks\MFormats SDK\Samples\C++\Sample File Transcoding Console") is used here as an example:
FROM f.docker.medialooks.net:5000/docker/cloud_sdk_cpp_win_vs17:tests-mformats
WORKDIR /app
COPY "x64/" /app/
# Create folders
RUN mkdir C:\input
# Expose the working directory
ENTRYPOINT ["SampleFileTranscodingConsole.exe"]
# Default values (can be overridden)
CMD ["C:\input\1.mp4", "udp://192.168.10.111:12345", "-c", "23"]Application exe is stored in the "x64" folder next to Dockerfile, "C:\input" is used as shared folder.
Running commands:
docker build -t mediatranscoder .
docker run -v "C:\input:C:\input" mediatranscoderExample with more parameters:
docker run --rm -v "C:\input:C:\input" mediatranscoder "C:\input\1.mp4" "udp://192.168.10.111:12345" -c 23 -v 6 -a 1Limitations
Here is a list of known limitations:
- CPU-only pipeline
- No preview
- NDI input/output should work if network is correctly configured
- SDI cards as well as other 'real' devices are not supported
Only Intel GPU-encoder can be used, additional parameters are needed:
--isolation=process --device class/5B45201D-F2F2-4F3B-85BB-30FF1F953599