All Projects → netzfisch → rpi-tvheadend

netzfisch / rpi-tvheadend

Licence: MIT license
TVheadend server for the ARM based Raspberry PI

Programming Languages

Dockerfile
14818 projects

Projects that are alternatives of or similar to rpi-tvheadend

Tow-Boot
An opinionated distribution of U-Boot. — https://matrix.to/#/#Tow-Boot:matrix.org?via=matrix.org
Stars: ✭ 338 (+1509.52%)
Mutual labels:  arm
data-landing-zone
Template to deploy a single Data Landing Zone of the Data Management & Analytics Scenario (former Enterprise-Scale Analytics). The Data Landing Zone is a logical construct and a unit of scale in the architecture that enables data retention and execution of data workloads for generating insights and value with data.
Stars: ✭ 136 (+547.62%)
Mutual labels:  arm
EvoArm
An open-source 3D-printable robotic arm
Stars: ✭ 114 (+442.86%)
Mutual labels:  arm
SHA256Hasher
SHA-256 IP core for ZedBoard (Zynq SoC)
Stars: ✭ 25 (+19.05%)
Mutual labels:  arm
ARMed
A terminal-based emulator of the ARM instruction set written in Golang
Stars: ✭ 64 (+204.76%)
Mutual labels:  arm
alpine-qbittorrent-openvpn
qBittorrent docker container with OpenVPN client running as unprivileged user on alpine linux
Stars: ✭ 230 (+995.24%)
Mutual labels:  arm
Robotic Arm
Forward and Inverse Kinematics for Robotic Manipulator
Stars: ✭ 21 (+0%)
Mutual labels:  arm
rasa-docker-arm
Rasa Docker image for ARMv7. Runs on a Raspberry Pi.
Stars: ✭ 19 (-9.52%)
Mutual labels:  arm
Aphid
🚫 This project is no longer maintained. Lightweight MQTT client in Swift 3
Stars: ✭ 56 (+166.67%)
Mutual labels:  arm
Azote
Fast and lightweight AArch64 disassembler.
Stars: ✭ 24 (+14.29%)
Mutual labels:  arm
PrntrBoardV2
32-bit 3D Printer controller board using STM32F407 and replaceable TMC2660/2209 stepper drivers.
Stars: ✭ 31 (+47.62%)
Mutual labels:  arm
discolix
distroless arm docker images
Stars: ✭ 22 (+4.76%)
Mutual labels:  arm
alloc-cortex-m
A heap allocator for Cortex-M processors
Stars: ✭ 139 (+561.9%)
Mutual labels:  arm
asm2cfg
Python command-line tool and GDB extension to view and save x86, ARM and objdump assembly files as control-flow graph (CFG) pdf files
Stars: ✭ 42 (+100%)
Mutual labels:  arm
ncnn-android-benchmark
ncnn android benchmark app
Stars: ✭ 78 (+271.43%)
Mutual labels:  arm
data-product-analytics
Template to deploy a Data Product for analytics and data science use-cases into a Data Landing Zone of the Data Management & Analytics Scenario (former Enterprise-Scale Analytics). The Data Product template can be used by cross-functional teams to create insights and products for external users.
Stars: ✭ 62 (+195.24%)
Mutual labels:  arm
protonmail-bridge-docker
ProtonMail IMAP/SMTP Bridge Docker container
Stars: ✭ 184 (+776.19%)
Mutual labels:  arm
webgrabplus-siteinipack
Official user supported WebGrab+Plus Siteini.pack repo
Stars: ✭ 133 (+533.33%)
Mutual labels:  tvheadend
deollvm64
deobfuscator llvm arm64 script
Stars: ✭ 67 (+219.05%)
Mutual labels:  arm
elfloader
ARMv7M ELF loader
Stars: ✭ 71 (+238.1%)
Mutual labels:  arm

Tvheadend Docker Image

Orginaly just made for ARM architecture but now also supporting x86/x64 platform, see Dockerfile.x86_64 and/or get the x86_64-image!

Turn your Raspberry PI (or x86_64 machine) within 15 minutes into a TV streaming and recording server for your local network! This project uses the well known Tvheadend software, is based on alpine Linux, which is with ~5 MB much smaller than most other distribution base, and thus leads to a slimmer Tvheadend target image.

Find the full source code at GitHub or the ready-to-run images in the DockerHub for the ARM or x86_64 platform and do not forget to star the repository ;-)

Requirements

Setup

  • Install a debian Docker package, which you download here and install with dpkg -i package_name.deb. Alternatively install HypriotOS, which is based on Raspbian a debian derivate and results to a fully working docker host, see Getting Started!
  • Get the right DVB-C/S/T Linux firmware, e.g.
/lib/firmware $ wget https://www.linuxtv.org/downloads/firmware/dvb-usb-vp7045-01.fw
  • Change your network interface to a static IP
$ cat /etc/network/interfaces
  ...
  allow-hotplug eth0
  iface eth0 inet static
    address 192.168.PI.IP
    netmask 255.255.255.0
    gateway 192.168.XXX.XXX
  ...
  • Integrate your NAS permanently
$ cat /etc/fstab
  ...
  192.168.NAS.IP:/nfs/Public /mnt nfs auto  0 0
  ...

Alternatively ... if you are lazy, use a docker volume plugin, which enables the volume type NFS to be mounted directly within the container, see Netshare docker plugin. After install you can use it like this

$ docker run -it --volume-driver=nfs --volume NFShost/path:/data alpine /bin/ash
$ cd /data
$ touch testfile
  • Pull the respective docker image $ docker pull netzfisch/rpi-tvheadend

Build

To build the image and/or compile by yourself from git source, use Dockerfile.build

$ cat Dockerfile.build
$ docker build -f Dockerfile.build -t netzfisch/tvheadend:git-build .
$ docker tag netzfisch/tvheadend:git-build netzfisch/tvheadend:4.1_git20161008

Find the automated build for that at DockerHub.

Usage

Get ready to roll and run the container:

$ docker run --detach \
             --name tvheadend \
             --restart unless-stopped \
             --volume /mnt/Configs/tvh-config:/config \
             --volume /mnt/Movies:/recordings \
             -p 9981-9982:9981-9982 \
             --privileged netzfisch/rpi-tvheadend

Finally configure Tvheadend via the web interface at http://192.168.PI.IP:9981. An initial user is created, so you will be logged in flawless, and setup wizard should start immediately!

HEADS UP If you are running into problems like

2016-10-02 18:32:25.705 dvr: Unsupported charset ASCII using ASCII
2016-10-02 18:32:25.705 dvr: Recording error: Unable to create file

check the Web-GUI [ Recording > DVR-Profile > Advanced View > Filename Charset ] if set to a supported charset format, e.g. UTF-8! At my installation it was set to ASCII which failed to write to the NAS, and cost me too much time to debug ;-( ... encoding in 2016 still sucks!

Debugging

If you run into trouble, try to get a clean setup at docker host level

$ docker stop tvheadend && docker rm tvheadend # stop and remove container
$ rmmod dvb_usb_vp7045 dvb_usb dvb_core        # remove DVB-T linux modules
$ modprobe dvb_usb_vp7045                      # reload DVB-T linux modules
$ docker run --detach \                        # create new containter
             --name tvheadend \
             ...

and than go into the container for further debugging:

$ docker exec -it tvheadend /bin/ash

Contributing

If you find a problem, please create a GitHub Issue.

Have a fix, want to add or request a feature? Pull Requests are welcome!

License

The MIT License (MIT), see LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].