PhpDev.App
PHPJunior/mtube

PHPJunior/mtube

Stars: 125

Forks: 41

Pull Requests: 15

Issues: 6

Watchers: 7

Last Updated: 2023-03-21 09:33:28

mTube : Simple Video Sharing Platform

License:

Languages: Shell, PHP, Blade

About mTube

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

Packages

Requirements

  • FFMpeg
  • PHP 7.3/8

Installations

composer install
npm install

Edit .env file and config/site.php

Assuming your app is served from http://mtube.test virtual host, then:

APP_URL=mtube.test

PUSHER_APP_ID=any
PUSHER_APP_KEY=any
PUSHER_APP_SECRET=any
PUSHER_APP_CLUSTER=any

BROADCAST_DRIVER=pusher

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

LARAVEL_WEBSOCKETS_SSL_LOCAL_CERT=
LARAVEL_WEBSOCKETS_SSL_LOCAL_PK=
LARAVEL_WEBSOCKETS_SSL_PASSPHRASE=

FFMPEG_BINARIES=
FFPROBE_BINARIES=

RTMP_HOST=http://mtube.test:3000
UPPY_COMPANION_URL=http://mtube.test:3020/companion
RTMP_SERVER_URL=rtmp://mtube.test/live

You also have to set the host value in uppy/server.js

server: {
        host: 'mtube.test:3020',
        protocol: 'https',
        path: '/companion',
    },
[
    'converted_file_driver' => 'public',
    'hls_segment_size' => 10,
    'frame_from_seconds' => 3
]

Start Laravel Websockets Server, RTMP Server, Uppy Companion Server

php artisan key:generate
php artisan storage:link

php artisan websockets:serve
php artisan queue:work

npm run rtmp-server
npm run companion-server

Or you can use Porter to start all servers at once. Before you start Porter, make sure you have installed Porter. ( Porter )

porter start	 

Create Admin User

php artisan create:admin

Todo

  • Tus Server/Client
  • Channel Management
  • Channel Branding
  • Un/Subscribe Channel
  • Realtime Un/Subscribe View
  • Video Management
  • Transcode Video
  • Dis/Like Video
  • Video View Count
  • Video Comments
  • Video Thumbnails
  • Video Settings
  • Video Playlists
  • Video Player - Google IMA Pre Roll Plugin
  • Realtime Notifications ( Dis/Like, Un/Subscribe Channel, Comments )
  • Admin Panel
  • Companion - Uppy Standalone Server

Credits

  • All Contributors

License

The MIT License MIT license. Please see License File for more information.

Screenshots

screenshot 1 screenshot 2 screenshot 3 screenshot 4 screenshot 5 screenshot 6 screenshot 7 screenshot 8