QNAP Using FFmpeg for AC/3 in TV Recordings Conversion
If you run an HDHomeRun DVR on a QNAP Device, you may have noticed the built in transcoder doesn’t work on your recordings. The version of FFmpeg installed on QNAP through CodexPack doesn’t support AC/3 audio transcoding, which is what most TV broadcasts use (at least in the US). To solve this, I scoured the internet for a solution. I summarize it here for convenience.
- Install the QNAP FFmpeg version from QNAPClub.eu. This is the easiest way and it appears to be safe. You can also do this manually by grabbing FFmpeg on Github.
- Backup the installed version of FFmpeg:
mv /usr/bin/ffmpeg /usr/bin/ffmpeg.bak
mv /share/CACHEDEV1_DATA/.qpkg/CodexPack/opt/cdx/bin/ffmpeg /share/CACHEDEV1_DATA/.qpkg/CodexPack/opt/cdx/bin/ffmpeg.bak
3. Symlink to the ffmpeg you just installed:
ln -s /share/CACHEDEV1_DATA/.qpkg/ffmpeg/ffmpeg /usr/bin/ffmpeg
ln -s /share/CACHEDEV1_DATA/.qpkg/ffmpeg/ffmpeg /share/CACHEDEV1_DATA/.qpkg/CodexPack/opt/cdx/bin/ffmpeg
You’re done!
Some caveats:
I’m not sure if this version of ffmpeg leverages hardware transcoding support on QNAP. It takes a long time, but other transcoding took a long time for me before I did this, so I can’t tell. The forum mention I took this from said there are still issues transcoding some videos, but probably not TV recordings.
To Undo:
mv /usr/bin/ffmpeg.bak /usr/bin/ffmpeg
mv /share/CACHEDEV1_DATA/.qpkg/CodexPack/opt/cdx/bin/ffmpeg.bak /share/CACHEDEV1_DATA/.qpkg/CodexPack/opt/cdx/bin/ffmpeg