Skip to content

rofehr/rpihddevice

Repository files navigation

This is a "plugin" for the Video Disk Recorder (VDR).

Written by:                  Thomas Reufer <[email protected]>

Project's homepage:          http://projects.vdr-developer.org/projects/plg-rpihddevice

Latest version available at: git://projects.vdr-developer.org/vdr-plugin-rpihddevice.git

See the file COPYING for license information.

Description:

  VDR HD output device for Raspberry Pi. The plugin makes use of the Raspberry
  Pi's VideoCore GPU and provides a lightweight implementation for a VDR output
  device.

Features:

  - MPEG-2 and H264 high-profile video codec up to 1080p30
  - MPEG-1 Layer II, (E)AC-3, AAC and DTS audio codec at 32kHz, 44.1kHz or 48kHz
    with 2.0 (Stereo) or 5.1 channels
  - HDMI multi channel LPCM audio output
  - HDMI digital audio pass-through
  - Analog stereo audio output
  - Box (letter-box/pillar-box), Crop and Stretch video display modes
  - True color OSD with GPU support
  - Video scaling and grabbing support

Requirements:

  - libavcodec, libavformat and libavutil for audio decoding, provided by ffmpeg
    or libav
  - libswresample when using ffmpeg-1.2 or newer
  - libavresample when using libav-9 or newer
  - freetype2 for GPU accelerated text drawing
  - valid MPEG-2 license when watching MPEG-2 streams
  - Raspberry Pi userland libraries: https://github.com/raspberrypi/userland
  - Raspberry Pi firmware from 2015/01/18 or newer
  
Install:

  Get the source code either as archive or with git and compile like any other
  VDR plugin:

  $ cd /usr/src/vdr/PLUGINS/src
  $ git clone git://projects.vdr-developer.org/vdr-plugin-rpihddevice.git rpihddevice
  $ cd rpihddevice
  $ make
  $ make install
  
  If you want to link the plugin against a specific version of ffmpeg/libav, set
  EXT_LIBAV accordingly when compiling the plugin:
  
  $ make EXT_LIBAV=/usr/src/ffmpeg-1.2.6
  
Usage:

  To start the plugin, just add '-P rpihddevice' to the VDR command line.

  The plugin simply adds two new dispmanx layers on top of the framebuffer, one 
  for video and one for the OSD. The plugin does not clear the current console 
  or change any video mode settings. So it's the user's choice, what's being 
  displayed when no video is shown, e.g. during channel switches or for radio
  channels.
  
  The user also needs to select an appropriate video mode by editing config.txt:
  http://www.raspberrypi.org/documentation/configuration/config-txt.md
  
  For best performance, choose a mode which fits the desired video material,
  especially regarding frame rate.
  
Plugin-Setup:

  Video Framing: Determines how the video frame is displayed on the screen in
  case the aspect ratio differs. "box" and "cut" will preserve the video's
  aspect ratio, while "box" (often called "letter box", however "pillar box" is
  used to show 4:3 videos on a wide screen) will fit the image on the 
  screen by adding transparent borders. On the other hand, "cut" is cropping 
  away the overlapping part of the video, so the entire display area is filled.
  When setting to "stretch", the videos' aspect ratio is adapted to the screen
  and the resulting image might appear distorted.
  
  Audio Port: Set the audio output port to "analog" or "HDMI". When set to
  analog out, multi channel audio is sampled down to stereo.
  
  Digital Audio Pass-Through: Enabled pass through of compressed digital audio
  if supported by the receiver.
  
  Ignore Audio EDID: In case the HDMI peer reports false audio EDID information,
  they can be ignored with this option.
  
  Use GPU accelerated OSD: Use GPU capabilities to draw the on screen display.
  Disable acceleration in case of OSD problems to use VDR's internal rendering
  and report error to the author.
  

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published