Coder Social home page Coder Social logo

bitwave-tv / bitwave Goto Github PK

View Code? Open in Web Editor NEW
141.0 141.0 32.0 11.41 MB

Front end for [bitwave.tv] - an open platform live video streaming service

Home Page: https://bitwave.tv

License: GNU General Public License v3.0

Vue 80.52% JavaScript 15.79% Dockerfile 0.05% Shell 0.04% SCSS 3.60%
bitwave livestreaming nuxt nuxtjs vue vuejs

bitwave's People

Contributors

dependabot-preview[bot] avatar dependabot[bot] avatar diingus avatar dispatchcommit avatar doxismightier avatar emilyhartig avatar propertyofnonobject avatar scamcast avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bitwave's Issues

Throttle live notifications

With the current live notification API, users can get multiple live notifications if a streamer drops out.

Solution:
Throttle notifications by specifying a cool down period after user goes offline

FR: Store bumps in database

Store bumps in database to make it easier to add / remove / update bumps. Optionally at a later date we could use this to link stream profiles with custom bump lists to allow users to specify offline bumps that they choose.

Add CAPTCHA

Sign in dialog may require a captcha to be added in case of multiple failed password entry attempts.

May also consider utilizing on demand CAPTCHA escalation as a feature that can be enabled if / when it's needed to reduce a DDoS or targeted spam attack. (e.g. add code to client / server in disabled state, but linked to a server side feature flag that allows us to enable / disable dynamically).

NSFW blur keycombo

Add a key combo to blur the video in case things get too spicy on stream.

Improve Chat Autoscroll

Cancel setTimeout of second autoscroll on new message to attempt to prevent 'jumping' down.

Consider adding option to disable smooth scroll

Fix template for /chat

/chat pages still use outdated toolbar instead of app-bar.

'app' has been removed, use '<v-app-bar app>' instead.

Create dedicated OBS overlays

Create OBS overlay specific page.

Basic Features:

  • Automatic transparent background
  • Account synchronized via unique token
  • Synchronize username (show @ tags in overlay) & ignore list
  • Allow setting global / local (hide labels in local)
  • Allow showing / hiding trolls
  • Do not show input or top bar

Advanced Features

  • Compact mode (hide avatars)
  • Emote toggle
  • Clear command

Quote Submissions

A place to post stream quotes (optionally with a sound byte).

Crowd sourced soundboard basically

Add option for dense chat

Add option to chat to allow hiding avatars and making messages appear inline with usernames so that more chats can be viewed.

Improve user tagging experience

Try to figure out a better way to at users in chat. At the minimum, we should try to prevent multi-tagging a user when lagging

Streamkey copies mouse event

When copying the streamkey, if the key is hidden it will copy the mouse event instead of the actual key value.

We should always explicitly pass the value to the copyToClipboard function to prevent this corner case.

View streams over VPN problems

Streams will not play on any browser I try to use which includes Safari, Chrome, Firefox, Beaker and others when I am using my VPN. I get the message "The media could not be loaded, either because the server or network failed or because the format is not supported." regardless of the stream I choose.

Add SSR to homepage

Load livestreams via asyncData in index page, then pass results to stream-grid component while waiting for database socket to connect to improve load response and take advantage of SSR.

Improve stream Kick / Ban API

This is more of a bitwave-media-server issues foremost, but improve the method of kicking / banning a stream such that is

  1. More stable. Lost processes mean entire server reboots are required to remove a stream
  2. More robust. Kicked streams need to have stream keys reset in order to prevent immediate re-connections. Banned streams need to have ban flags set in their profile ( temp duration / perm )
  3. More convenient. Having to pull up postman to send API requests to multiple endpoints to kill a stream is time consuming, confusing, and error prone. Especially when dealing with lost processes.

Mitigate issues by at the minimum marking the stream as offline and modifying the endpoints to a bumper in order to force clients to drop the stream immediately (maybe a designated banned / kicked bumper?)

Immediately flag account as kicked / temp banned / banned. Change or remove stream key.

Prevent user from acquiring additional stream key(s) if possible.

Integrate into either an admin control panel or directly on page - lazy-loaded and injected into pages if an admin account is detected.

Create live streamstats

Create page or component that is capable or showing stream Stream Errors, Stream Data, and other streamer analytics (similar to YouTube dashboard).

Bug: Remove non 16:9 bumps

Remove and (optionally) re-render non 16:9 bumps as they overflow the video container and break page layout.

FR: Simplify & Improve chat commands

Currently chat commands use a mix of /command and !code combinations and are mixed case sensitive / insensitive. We should work to unify chat commands to 1 use pattern.

Improve Mobile Chat

  • Allow mobile chat to autoscroll.
  • Hide Jump to bottom button by default
  • Make scroll to bottom button appear only when chat is scrolled up. past threshhold;
  • Animate fly in / out of scroll to bottom button.

Provide documentation regarding stream encoder options

I'm using ffmpeg and I'm seeing the stream fall behind as if it's publishing faster than the framerate. These settings worked fine on other platforms. It's be nice to have encoder examples to help with such issues.

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.