Browser Administration for Linux-Based Audio/Video-Player like ODROID or Raspberry Pi

Overview

Max2Play - Webinterface

Browser Administration for Linux-Based Audio/Video-Player like ODROID or Raspberry Pi.

More Information on http://www.max2play.com and http://shop.max2play.com

Find a live Demo of Max2Play Web interface at http://demo.max2play.com:81/.

FEATURES

  • browser interface for configuring WiFi, filesystem mountpoints, autostarts, display resolution, init-scripts, etc.
  • no need to ssh to your device any more
  • Plugin configuration to add new features and customize navigation
  • custom CSS and logo possible
  • easy to use even for non-programmers (configure mount-points, samba-shares, start/stop programs)
  • responsive layout - optimized for mobile devices
  • adds plug & play to existing audio/video-player releases
  • multilanguage support for basic settings and new plugins (german and english are already available with PO-files)

HOW TO INSTALL

  • install & configure apache webserver with php5 support: "apt-get install apache2 php5 php5-json"
  • Enable mod_rewrite for Apache "a2enmod rewrite"
  • Add "/etc/apache2/sites_enabled/max2play.conf" from repository "CONFIG_SYSTEM/apache2/" to point to the max2play directory and remove default from "/etc/apache2/sites_enabled/"
  • drop the files from the max2play-Folder of this repository to "var/www/max2play/"
  • reload webserver "/etc/init.d/apache2 reload"

HOW TO CONFIGURE

  • every task for the browserinterface needs little setup to work properly
  • the browser interface itsself uses script-files and configuration-files located in "/opt/max2play"
  • some file-permissions and sudoer-configs need to be set in order to get wifi and other things working in the max2play-interface
  • activate or deactivate Plugins on "Reboot / Reset"-Tab of webinterface

HOW TO UPDATE

  • On Basic-Settings in Webinterface click "check Max2play Update"
  • If a new version is available, the files in webserver-folder and /opt/max2play will be overwritten, just keeping wifi, samba and playername config-files

FILESTRUCTURE OF MAX2PLAY PROJECT

  • Webinterface is under /max2play
  • Config-Files for /etc/ under /CONFIG_SYSTEM
  • Config-Files for /home/USER under /CONFIG_USER
  • Packages with Scripts for /opt/ under /opt/

HOW TO CREATE NEW PLUGINS

  • copy an existing Plugin (e.g. a small one that exists): cp -r /var/www/max2play/application/plugins/squeezeplug /var/www/max2play/application/plugins/myplugin
  • change the Pluginname /var/www/max2play/application/plugins/myplugin/controller/Setup.php
  • there is always a backend- (folder "controller") and a frontend-file (folder "view"). Both have the same name and go together (see MVC-Schema).
  • if you want to call shell scripts best use the function $this->writeDynamicScript(array("SCRIPT GOES HERE"));
  • you can work with the return value of your script and pass it to the view
  • the view is used to place buttons and output data as well as take input data from forms
  • to activate your new plugin go to "Reset/Reboot" and mark your new Plugin -> save and reload page -> now your Plugin should be visible in the navigation

SCREENS OF CURRENT USAGE - THIS IS HOW IT LOOKS LIKE

This file is work in progress...

Comments
  • setting dnla gmediarender GMEDIARENDERER_ALSA_DEVICE and GMEDIARENDER_ALSA_DEVICE is confused

    setting dnla gmediarender GMEDIARENDERER_ALSA_DEVICE and GMEDIARENDER_ALSA_DEVICE is confused

    In /etc/init.d/gmediarender the variable "GMEDIARENDERER_ALSA_DEVICE" is grepped from /opt/max2play/audioplayer.conf where actually GMEDIARENDER_ALSA_DEVICE is defined.

    Therefore audio output of gmediarender is not set / not set correctly. In my case always to --gstout-audiosink=alsasink --gstout-audiodevice=sysdefault.

    opened by linuxlurak 3
  • Inconsistent use of SSL during updates

    Inconsistent use of SSL during updates

    When updating, only the first download is secured via HTTPS. This should occur for all the plugins. Output below.

    ` Running Check for Plugin Updates and install if available Update IQAudIO (https://shop.max2play.com/media/downloadable/currentversion/iqaudio.tar): Click here to show detailed information Serverversion: 2019-07-04T14:18:01+0000 lokale Version:2019-06-18T14:30:01+0100 Get Plugin from https://shop.max2play.com/media/downloadable/currentversion/iqaudio.tar Load Plugin from tar Installing Plugin iqaudio Install successful

    Update Jivelite (http://shop.max2play.com/media/downloadable/currentversion/jivelite.tar): Click here to show detailed information Serverversion: 2019-07-04T14:17:51+0000 lokale Version:2019-06-18T14:29:51+0100 Get Plugin from http://shop.max2play.com/media/downloadable/currentversion/jivelite.tar Load Plugin from tar Installing Plugin jivelite Install successful

    Update Raspberry Settings (http://shop.max2play.com/media/downloadable/currentversion/raspberrysettings.tar): Click here to show detailed information Serverversion: 2019-07-04T14:17:55+0000 lokale Version:2019-06-18T14:29:55+0100 Get Plugin from http://shop.max2play.com/media/downloadable/currentversion/raspberrysettings.tar Load Plugin from tar Installing Plugin raspberrysettings Install successful

    Update Bluetooth (http://shop.max2play.com/media/downloadable/currentversion/bluetooth.tar): Click here to show detailed information Serverversion: 2019-07-04T14:18:11+0000 lokale Version:2019-06-18T14:30:10+0100 Get Plugin from http://shop.max2play.com/media/downloadable/currentversion/bluetooth.tar Load Plugin from tar Installing Plugin bluetooth Install successful

    Update Spotify Connect (http://shop.max2play.com/media/downloadable/currentversion/spotifyconnect.tar): Click here to show detailed information Serverversion: 2019-07-04T14:18:18+0000 lokale Version:2019-06-18T14:30:17+0100 Get Plugin from http://shop.max2play.com/media/downloadable/currentversion/spotifyconnect.tar Load Plugin from tar Installing Plugin spotifyconnect Install successful

    Update Music Player MPD (http://shop.max2play.com/media/downloadable/currentversion/mpd.tar): Click here to show detailed information Serverversion: 2019-07-04T14:18:04+0000 lokale Version:2019-06-18T14:30:03+0100 Get Plugin from http://shop.max2play.com/media/downloadable/currentversion/mpd.tar Load Plugin from tar Installing Plugin mpd Install successful

    Max2Play update started Click here to show detailed information `

    opened by gcrow 1
  • Google Music: Remove bugfix for HTTPS

    Google Music: Remove bugfix for HTTPS

    The bugfix for HTTPS is no longer required as a fix was pushed to the squeezebox-googlemusic repo as of https://github.com/squeezebox-googlemusic/squeezebox-googlemusic/commit/e11f9c1f38d8bf22f90e3ce075a524581508a252

    I've also added updated the script so that cpanminus and libio-socket-perl is installed with apt-get.

    Installing cpanminus from apt-get instead of cpan fixed this issue for me while attempting to install the plugin using the max2play webinterface:

    Running install for module 'App::cpanminus'
    Checksum for /root/.cpan/sources/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz ok
    Uncompressed /root/.cpan/sources/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz successfully
    Using Tar:/bin/tar xf "App-cpanminus-1.7043.tar":
    Couldn't untar App-cpanminus-1.7043.tar: 'Cannot allocate memory'
    'YAML' not installed, will not store persistent state
    MIYAGAWA/App-cpanminus-1.7043.tar.gz
    Had problems unarchiving. Please build manually
    

    And installing libio-socket-perl fixes this issue with the plugin:

    [17-12-28 02:47:17.6499] Slim::bootstrap::tryModuleLoad (286) Warning: Module [Plugins::GoogleMusic::Plugin] failed to load:
    Base class package "IO::Socket::SSL" is empty.
        (Perhaps you need to 'use' the module which defines that package first,
        or make that module available in @INC (@INC contains: /var/lib/squeezeboxserver/cache/_Inline/lib /var/lib/squeezeboxserver/cache/InstalledPlugins /usr/share/squeezeboxserver/CPAN/arch/5.20/arm-linux-gnueabihf-thread-multi-64int /usr/share/squeezeboxserver/CPAN/arch/5.20/arm-linux-gnueabihf-thread-multi-64int/auto /usr/share/squeezeboxserver/CPAN/arch/5.20.2/arm-linux-gnueabihf-thread-multi-64int /usr/share/squeezeboxserver/CPAN/arch/5.20.2/arm-linux-gnueabihf-thread-multi-64int/auto /usr/share/squeezeboxserver/CPAN/arch/5.20/arm-linux-gnueabihf-thread-multi-64int /usr/share/squeezeboxserver/CPAN/arch/5.20/arm-linux-gnueabihf-thread-multi-64int/auto /usr/share/squeezeboxserver/CPAN/arch/arm-linux-gnueabihf-thread-multi-64int /usr/share/squeezeboxserver/CPAN/arch/5.20 /usr/share/squeezeboxserver/lib /usr/share/squeezeboxserver/CPAN /usr/share/squeezeboxserver /usr/share/squeezeboxserver/CPAN /usr/share/squeezeboxserver /usr/sbin /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .).
     at /usr/share/perl5/Slim/Player/Protocols/HTTPS.pm line 3.
    BEGIN failed--compilation aborted at /usr/share/perl5/Slim/Player/Protocols/HTTPS.pm line 3.
    Compilation failed in require at /usr/share/perl/5.20/base.pm line 135.
            ...propagated at /usr/share/perl/5.20/base.pm line 157.
    BEGIN failed--compilation aborted at /usr/share/squeezeboxserver/Plugins/GoogleMusic/ProtocolHandler.pm line 9.
    Compilation failed in require at /usr/share/squeezeboxserver/Plugins/GoogleMusic/Plugin.pm line 26.
    BEGIN failed--compilation aborted at /usr/share/squeezeboxserver/Plugins/GoogleMusic/Plugin.pm line 26.
    Compilation failed in require at (eval 848) line 1.
    BEGIN failed--compilation aborted at (eval 848) line 1.
    
    opened by davewongillies 1
  • can't make squeezelite with new script

    can't make squeezelite with new script

    hi, I have odroid xu4 and debian jessie. I am not able to make makefile.m2p. Here is log

    root@max2play:~/squeezelite# make -f Makefile.m2p cc -Wall -fPIC -s -O3 -march=armv6 -mfloat-abi=hard -mfpu=vfp -DRESAMPLE -DCONTROLSBS -DALSASYNC -DBLUETOOTHSYNC -DFFMPEG -DVISEXPORT -DDSD -DGPIO -DIR -DRPI -I./include main.c -c -o main.o In file included from /usr/include/stdio.h:934:0, from squeezelite.h:234, from main.c:30: /usr/include/arm-linux-gnueabihf/bits/stdio.h: In function ‘vprintf’: /usr/include/arm-linux-gnueabihf/bits/stdio.h:37:1: sorry, unimplemented: Thumb-1 hard-float VFP ABI { ^ Makefile.m2p:20: recipe for target 'main.o' failed make: *** [main.o] Error 1

    opened by ghost 1
  • [INFO] Docker?

    [INFO] Docker?

    Hopefully I have the time to do this, but I have forked this repo w/intent of adding hypriot docker as an add-in and framework for future plugins.

    Ref: Hypriot Blog Hypriot Github

    Thoughts? Anybody else interested in this effort?

    opened by neurocis 1
  • Webinterface

    Webinterface

    Das updaten des max2play webinterfaces überschreibt jedesmal die lxpanel konfiguration im homeordner des angemeldeten users und setzt den Besitzer auf root. Bitte ändern !!Das updaten des max2play webinterfaces überschreibt jedesmal die lxpanel konfiguration im homeordner des angemeldeten users und setzt den Besitzer auf root. Bitte ändern !!

    opened by franky384 1
Owner
Max2Play
Max2Play
Online All in One PHP Video & Audio Downloader From YouTube,Facebook,Twitter,Pinterest,Instagram,MXtakatak,IPL, Tiktok and 1000+ More Sites too

DLhut Contact me If You Find ANy Bug ... PHP Search and Download any Videos from any site. Online All in One Video & Audio Downloader From YouTube,Fac

Vijay Kumar 4 Nov 8, 2021
🗨️ Nextcloud Talk – chat, video & audio calls for Nextcloud

Nextcloud Talk A video & audio conferencing app for Nextcloud Why is this so awesome? ?? Chat Nextcloud Talk comes with a simple text chat, allowing y

Nextcloud 1.3k Dec 23, 2022
Roundcube Webmail is a browser-based multilingual IMAP client with an application-like user interface.

Roundcube Webmail roundcube.net ATTENTION This is just a snapshot from the GIT repository and is NOT A STABLE version of Roundcube. It's not recommend

Roundcube Webmail Project 4.7k Dec 28, 2022
Koel is a simple web-based personal audio streaming service written in Vue and Laravel

Koel (also stylized as koel, with a lowercase k) is a simple web-based personal audio streaming service written in Vue on the client side and Laravel on the server side. Targeting web developers, Koel embraces some of the more modern web technologies – CSS grid, audio, and drag-and-drop API to name a few – to do its job.

Koel 14.3k Jan 4, 2023
YouTubeClone - Web Projects Build By Laravel Framework v8 & LiveWire it's Small project to upload video Like Youtube

YouTubeClone YouTubeClone - Web Projects Build By Laravel Framework & LiveWire it's Small project to upload video Like Youtube Use Laravel v8.80.0 Ima

Hesham Adel 1 Jan 24, 2022
Wetterstation für den Raspberry PI mit Funkverbindung

Wetterstation für den Raspberry PI mit Funkverbindung Die Wetterstation misst Temperatur, Feuchtigkeit, Regen und Wind. Die Daten werden auf einen Das

Dominic 1 Oct 27, 2021
A simple tool that I share with you. This tool serves to make conversions from text to audio Google Translate.

A simple tool that I share with you. This tool serves to make conversions from text to audio Google Translate. You can download this conversion 100% for free. Good luck.

Afid Arifin 1 Oct 25, 2021
ViMbAdmin project provides a web based virtual mailbox administration system to allow mail administrators to easily manage domains, mailboxes and aliases.

ViMbAdmin project (vim-be-admin) provides a web based virtual mailbox administration system to allow mail administrators to easily manage domains, mailboxes and aliases.

Open Solutions 464 Jan 1, 2023
Mira - A lightweight WebUI alternative to top/htop for GNU/Linux.

Mira Mira lets you monitor your server's resource usage through a responsive WebUI. ======== Introduction Screenshots Installation Limitations Known I

Jams246 9 Mar 27, 2022
FreeBSD Bhyve Web Administration Software

BVCP is a graphical and secure webcontrol panel for FreeBSD Bhyve's Virtual Machines. BVCP is made with love and for enterprise use, 24/7 NON-STOP operation, tested on production enterprise-class area.

null 44 Dec 30, 2022
This plugin allows administrators to apply discounts on orders from the administration panel.

skilldo-discounts This plugin of cms Skilldo This plugin allows administrators to apply discounts in percentage on full orders from the administration

null 3 Nov 13, 2021
Joyce 🦊 - Panel Remote Access Android, Windows and Linux

Joyce is an exploiting tool (botnet) which compiles a malware with famous payload, and then the compiled maware can be executed on Linux , Windows and Android. Joyce Provides An Easy way to create Backdoors and Payload which can bypass most anti-virus.

AeX03 8 Nov 1, 2022
Das AddOn stellt den Lottie-Player für das Abspielen von Lottie-Animationen im .json-Format zur Verfügung.

REDAXO-AddOn: Lottie Das AddOn stellt den Lottie-Player für das Abspielen von Lottie-Animationen im .json-Format zur Verfügung. Das AddOn ermöglicht i

Friends Of REDAXO 17 Sep 9, 2022
mTube is a simple video sharing platform built with Laravel.

mTube is a simple video sharing platform built with Laravel. Create personal channel share videos online with friends and family.

Nyi Nyi Lwin 115 Dec 28, 2022
This app aims to benchmark several video/live streaming OTT platforms

video-platform-bench This app aims to benchmark several video/live streaming OTT platforms based on Encoding Time performance and provide also a "Time

api.video 9 Dec 17, 2021
DLvidHUT Online All in One PHP Video Downloader

DLvidHUT Online All in One PHP Video Downloader API based PHP Video Downloader from YouTube, Instagram, Twitter, Facebook, Tiktok and many more (More Than YouTube DL)

Vijay Kumar 2 Dec 31, 2021
codecourse.com video downloader.

Codecourse Downloader Download codecourse.com videos. Description Inspired from iamfreee/laracasts-downloader. Download or update your local catalogue

Hakan ERSU 61 Nov 28, 2022
A Simple Facebook Video Downloader using PHP.

Facebook Video Downloader A simple Facebook Video Downloader using PHP. Feature Download Public Video Download Private Video All Quality How to use Co

Tran Viet Hoang 2 Sep 5, 2022
Retrieve MySejahtera App's data from MySejahtera API and show to users via web browser. Written in PHP

MySejahtera-PHP-Web Retrieve MySejahtera App's data from MySejahtera API and show to users via web browser. Written in PHP. Disclaimer This web app is

Sam Sam 3 Oct 21, 2022