This PR adds FFmpeg to our tech stack and demonstrates a very simple script that takes an input address (file or network stream) and proxies it through FFmpeg to an available internal network stream, configurable via .env.
To accomplish that though, it adds a bunch (possibly too much) of support infrastructure.
Due Diligence Checklist
[x] Tests
[x] Documentation: TODO: Needs JSDoc format for tests
[x] Consolidated commits
[x] Relevant labels assigned
Steps to Test
Modify .env to add the new variables from .env.template
yarn ingest:showInternalStreamPool should list out all the address/port combinations from ☝️
yarn ingest {source} should open a stream to the first port from that list; for now, a good {source} would be an HDHomeRun stream address like http://<device ip>:5004/auto/v<channel number>
To verify ☝️ is happening, open a new tab and run ffplay {address} where {address} is the first address dumped out by yarn ingest:showInternalStreamPool (which is the one it will be streaming to)
Deploy Notes
Must modify .env to add the new variables from .env.template
Must install FFmpeg; this is outside of the scope of the instructions.
Description
This PR adds FFmpeg to our tech stack and demonstrates a very simple script that takes an input address (file or network stream) and proxies it through FFmpeg to an available internal network stream, configurable via
.env
.To accomplish that though, it adds a bunch (possibly too much) of support infrastructure.
Due Diligence Checklist
Steps to Test
.env
to add the new variables from.env.template
yarn ingest:showInternalStreamPool
should list out all the address/port combinations from ☝️yarn ingest {source}
should open a stream to the first port from that list; for now, a good{source}
would be an HDHomeRun stream address likehttp://<device ip>:5004/auto/v<channel number>
ffplay {address}
where{address}
is the first address dumped out byyarn ingest:showInternalStreamPool
(which is the one it will be streaming to)Deploy Notes
.env
to add the new variables from.env.template
Related Issues
Related to #14