I purchased the latest entry-level Intel NUC mini pc this last month specifically for setting up channels DVR:
https://www.amazon.com/gp/product/B01MSZTD8N/
I had to add some DDR3 RAM, and I also bought a 2TB regular hard drive. I'm booting with the latest version of Open Media Vault on a Samsung USB 3 thumb-drive so I can also use and easily administer the system as a file server. I had problems installing from an external CD-ROM drive, but got it to go by installing the ISO image on one USB thumb drive, booting from that, and installing to the Samsung USB 3 drive. Installing channels DVR and getting that to work was a cinch, since it is Debian Linux. There are other problems I've had with Open Media Vault however. Seems like some of the services I enabled in the web UI said they were running, but they really were not (like FTP for instance). Also I haven't got SMB to work yet, but AFP works fine.
I wanted to use FreeNAS which is based on BSD, but I discovered that BSD does not have the driver to support hardware transcoding, and the CPU cannot keep up viewing recorded or live TV from the web interface. Anyhow, OpenMediaVault is much less demanding on system resources than FreeNAS (which requires 8GB RAM minimum), and it uses less than 25% CPU while transcoding video (quad-core processor).
I have an IP camera set up outdoors, and I FTP photos/video from that to the mini-pc, and I run a cron job to send the latest photos to weather-underground every two minutes acting as a web-cam for my personal weather station. It does this job splendidly. Running this cron-job on my old D-LINK DIR-320N NAS box was bogging that whole system down (funplug) and the fan was running on high constantly!
This is probably the least expensive way to go right now, for a dedicated channels DVR system that can transcode, and have CPU and resources leftover for doing other interesting things.