Metal Player

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

VIDEO PLAYER FOR RASPBERRY PI

(update 2018/12/25)

Introduction

Welcome to our new Video Player for Raspberry Pi (RPi) B+, 2 and 3. This player
up to the latest update 2018/12/25, is able to play H.264 video up to 1920x1080
resolution (Full HDTV) at 60p with AAC or MP3 audio. This software player is
able to receive many streaming native protocols: RTMP, RTSP (over UDP/TCP/HTTP),
UDP (unicast/multicast, HTTP/S progressive, HLS and TCP. It uses the OpenMAX
core from Bradcom so is able to change the speed of playback to adjust
dynamically the delay to the original stream in the long run, so it is good for
low-latency projects. It also has an internal RTMP server, that can be used to
connect directly from RTMP encoders (such FMLE, Wirecast, or our BMD encoder
softwares). And it is also able to play interlaced fields in the chosen order.

We have also added livestreamer as downloader in order to add other protocols


such as: Dailymotion, Livestream, Twitch, Ustream and 60 more plugins
(http://docs.livestreamer.io/plugin_matrix.html#plugin-matrix). Apart from this,
livestreamer can be used for other protocols as well: HDS, Akamai HD, Apple HLS,
RTMP, HTTP/S progressive:
(http://docs.livestreamer.io/cli.html#playing-built-in-streaming-protocols-
directly).

There also more features added to this version of player as: MPEG-2 (thru MPEG-
LA license - http://www.raspberrypi.com/mpeg-2-license-key/ -), you can add
easily a logo and a background thru the web interface, use the GPIO26 as a
trigger to control an external relay (active when receiving stream, and inactive
when there's no stream), new updates thru web interface uploading, hardware
watchdog that make impossible to be hung by hardware and automatically
reconnected on network disrupts, etc...

In essence, this is a must have player for any broadcast business that wants to
be updated using the state of the art in video technology.

Installing the software

RPi uses a microSD card in versions B+, 2 and 3. We recommend to use 8GBs
Samsung Class 10 cards or higher. You will have to download the .img file, and
use Win32 Disk Imager to burn it into the microSD card. Once you downloaded and
installed the Win32DiskImager, you will see something like this in the
installation folder you chose.

Insert the microSD card in your reader and your system will detect it. Then you
can double click the Win32DiskImager application. Load the image (.img file) you
want to burn.
Now just click the Write button to start recording. Mabbe a message will appear
advising you about corrupting your old content inside the card.

Just press Yes, and recording will start.

Once the image is completely written into the card (100%), a message will appear
to advise it.
Configuration

You can now extract the card, and plug it into the RPi board. Plug a FAT
formatted USB drive, connect the board to the network and power it, and wait
until you have colorbars in the video default output (HDMI). This will take less
than 40 seconds on a Rpi 3. You can extract the USB drive, and plug it in a
computer in the same network. You will discover a new file recorded on it called
“rpiplayer”. Double click on it and your web browser will open with the control
panel on it. You can also use a computer in the same network and a ip scanner
software to find the IP of your player and access it thru your preferred web
browser.

Enter the default login username and password: admin/admin . By default the
network is configured to be DHCP on, so you will have to enable a DHCP server in
your network (i.e: in your router), so you RPi will acquire an IP from it.

All the fields in this Control Panel are self-explained, just passing the mouse
over it. You will also have an updated version of this manual, just pressing in
the Help menu.

If you want to have an Static IP, tell your network administrator to configure
this part for you. This page will tell you any error you might have entering the
values. The Auto Pilot option has 2 possibilities: none (when the player is
plugged in, will start playing the url stream configured in the Player's page),
player (will start to play the url stream configured in the Player's page once
plugged in).

You can also join to your private VPN LAN using ZeroTier service. Just enter
your ZeroTier Network ID.

You will have to press Save in order to save all changes made in these pages.
You can also Reboot or Halt (stop completely the system) pressing the proper
buttons.
Player Settings

This is the Player's Page default settings:

Let's explain every field step by step:

Station Name .- This field can be used to identify this player from other
players you might use in your broadcasting network deployment. You can use
spaces on it, but have in mind that you can send this value to your server using
the GET method when the Raw URL field is set to “no”. Some servers can use this
value to show the name of the station in your control dashboard.

Screen Mode .- Here you will select the resolution and the aspect (4/3 or 16/9)
of your final screen to be shown, no matter the source stream's resolution and
frame rate are, it will be resized to your selected screen mode. Analog is for
the analog video/audio output, and Digital is only for HDMI video/audio output.

Video Aspect .- This field will let you select how to display the source on you
selected screen mode. Original will respect the source's video aspect, so if you
chose a 16/9 screen mode, and the source's aspect is 4/3, you will have a
perfect 4/3 screen with blank side bars. Fill All Screen will fill all of your
screen, no matter if it has to stretch the source's picture to achieve it. Fill
Width will spread the source's picture respecting its original video aspect
until all the width of the screen is filled, so mabbe your picture could
overspan on height.

Fields Oder .- You can here choose the correct fields order of your source or
how you want to display it. Any will display it on a random order, so select it
only if your source is progressive. TFF is top field first, used for PAL and
HDTV, and BFF is bottom field first, used for NTSC and DV.

Video Background .- The video displayed could have gaps on the edges depending
on the source's aspect and the screen mode and video aspect selected, so if you
choose a transparent background, the gaps on it could show the background bars
if displayed, so if you don't want this, just choose the black background
option.

Bars .- This enable or disable the background bars or picture you might upload
thru the Screen Page.

Logo .- Here you can choose where to show your channel's logo on the screen. Go
to the Screen Page to customize it.

Audio decoding .- By default software decoding is good for every audio format
(AAC, MP3), however some AAC encoders will perform better using the hardware
option. (not very relevant)

Downloader .- By default our player is able to access native URLs by itself


(RTMP, RTSP -over UDP/TCP/HTTP-, TCP, HTTP progressive, HLS -.m3u8-, UDP
-unicast/multicast-). However if you want to play special URL streams featured
by livestreamer (Youtube Live, Dailymotion, Livestreamer, Twitch, Ustream and
many more) just use it as your downloader. Have in mind that we use Livestreamer
1.12.2 version (the latest at the moment of writing), so we cannot ensure that
these URLs could be played and supported by this BSD-2 project in the future.

Streaming URL .- This is the native protocol URL or the Livestreamer URL to
access depending on your previous option's choice.

Raw URL .- If yes, then no extra fields will be sent to the streaming server
when accessed by the URL request. If no, then Username, Password, Identifier and
Station Name fields will be sent to the server using a GET method added to the
URL request.

RTSP Transport .- This is only intended for RTSP URLs, and will select what kind
of protocol will use to transport the RTSP commands (UDP, TCP or HTTP)

Playback Buffer .- To ensure a soft playback we will need a minimum buffer of


video to avoid network jittering when possible. On low-latency connections the
best protocols are UDP for local networks, TCP, RTMP, RTSP, HTTP for good public
networks, and if even with 5000 ms of buffer these protocols are not stable, you
will have to use HLS that has long latencies (20 to 50 seconds, depending on the
video segment's length)

Identifier .- Is the MAC address of you Rpi board without colons (:). It is a
readonly field so cannot change it.

Username/Password .- We send these values on the URL request using the GET
method, so mabbe you can configure your server to use this values for
conditional access control.

Audio Card .- Here you will be able to select the audio card you want to use to
output the audio (embedded = RPi internal, USB Audio = external when plugged in)

Audio Volume .- In % and using increasing or decreasing buttons instead of


allowed values directly.
Once you are done with these settings, just press Save and start to Play.

The Status Page, will show the playing stream details along with internal
hardware parameters (time to host, cpu usage, threads, temperature of core).
Screen Page

Here you can change the default bars background and the inexistent logo. You can
select up to 2 PNG files at the same time, using the Ctrl button and click, so
upload them in one go. The system will recognise them on their prefix names.

The background file must be prefixed with “back” (i.e: background.png). The
background can be any size, but it will create a fitted version for the screen
mode used, so try not to use lesser resolutions to avoid degraded quality in the
picture showed.

The logo file must be prefixed with “logo” (i.e: logodebian.png). Have in mind
that you can use Alpha Channels on the PNG to show transparent zones on it when
displayed over the video picture. If the input size is above 512x512, it will be
resized to this values. Have in mind the Screen mode resolution you chose, to
set a well fitted logo size.

Once you upload a file, this is immediately changed and showed instead of the
old one.

Have in mind that when long files are selected, the upload process will make the
browser to wait until the process has ended to show the results and the message
of “logo updated” or/and “background updated”. Be patient here.

Status Page

This page just will show the status of playback and some hardware INFO below.
It will also show any error that might happen during the playback.
Unlock Page

Here you can ask for a license key if you tested our player and like how it
works that fits perfectly for your needs. Just enter Your E-mail and press Send,
the browser will block during the process some seconds until we receive your e-
mail request, and a message will be show in red “E-mail sent successfully !!!”.
Once received we will contact you thru e-mail in order to accomplish the
purchase, and will finally sent you a keycode to enter here in this page and
press Save. The Unlock Page link will disappear from the menu, and your player
will play non-stop.

You can test our player before purchasing our license playing in periods of 7
seconds. Once elapsed this time, the player will stop and the Status Page will
show something like this:

If you want to test more, just go to the Network Page and press Reboot to keep
on testing. There are no limits on how many times you want to test our player.
Don't buy our license until you are sure you want it.

Update Page

You can update to the latest version of our software totally for free. When
there is no new software, this page will show it, and when there is a new
version to download, it will show an update button you can press whenever you
want. The upgrade will take some time to download all it needs from our servers
and install it. You will see the process in this page, show as messages until
the end of the process.

Once done, it will notify that in 5 seconds the service will be up again, and
you will be able to enter the panel.
Password Page

Here you can change the username and password to access the control panel.

You will have to enter the Password twice to ensure you write it correctly. Once
done the next time you enter the panel, you will have to use the new parameters.

What happens if I forget my user/pass ?

You will need to know the MAC(Ident) of your board (some IP scanners will tell
you this if you are in the local network of your player), so you will have to
enter this URL to your browser:
http://ip_of_player/reset.cgi?id=ident (don't forget that the ident is the MAC
with no colons (:)). Once done correctly user/pass will be reseted to its
original values (admin/admin)

MPEG-2 License

You can buy an MPEG-LA license for you hardware thru the page:
http://www.raspberrypi.com/mpeg-2-license-key/
You will need the CPU serial for that, and you will receive a License number
started with 0x. You can access this page once logged in the control panel
writing the URL of the page manually: http://ip_of_player/mpeg2

Here you will find the CPU Serial needed for the purchase procedure. Once
entered the License, you will have to reboot the player in order to be
activated. You will be able to play MPEG-2 video streams up to 1080i60.
Branding your Control Panel

You can freely customize our control panel just changing deeply its HTML code
and CSS design, or just by changing the header PNG. You can download the files
needed from the own player using the URL in your browser :
http://ip_of_player/panel.zip
You can open this ZIP file and edit directly its files, change them and even
delete them. The header image file is inside the “images” folder as logo.png

Once you have your edited ZIP file, you can upload it using the URL in your
browser: http://ip_of_player/branding?id=ident . You will need to be logged in
the control panel to access this page. You can then upload your own zip file,
and see how changes work.

Apart from this, if you read carefully our HTML code, you will see that we just
use POST calls to CGIs with some parameters, so you can also make your own
external software to control our player thru this CGI's interfaces.

However, have in mind that new updates could add new options to any of the HTML
pages, so although settings and logos PNGs will not be overwritten, the HTML
code could be changed in the future to allow new menus and options.

And that's all you need to know about our player. Have a nice time with it.

December 2018

You might also like