GithubHelp home page GithubHelp logo

mtube's Introduction

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

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

mtube's People

Contributors

imanghafoori1 avatar phpjunior avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.