Commit graph

515 commits

Author SHA1 Message Date
Gabe Kangas
a9b8a70e8a Change the poster based on online status 2020-06-25 21:56:43 -07:00
Gabe Kangas
20eb8287ef Reset after player ended to force poster. Break out reset function. 2020-06-25 21:24:43 -07:00
Gabe Kangas
04dc0796d8
New video transcoder (#27)
* New video transcoder

* Set a smaller max muxing size + logging tweaks

* No need to return an err since it wiill panic anyway

* Use a default encoder preset if one is not supplied

* Rename to NewTranscoder.  Add comments.

* Rename Bitrate to VideoBitrate. Config file changes required with this rename.

* Allow overrides of segment length. Allow offline stream to live in a single segment

* Append offline state video to existin HLS stream instead of overwriting because players do not like that

* Make properties private as they do not need to be exported
2020-06-25 17:44:47 -07:00
Gabe Kangas
a297e33eff Make IDs for chat messages generated server-side, not client. For #26 2020-06-24 22:00:49 -07:00
Gabe Kangas
5dffaf215b Fix missing poster in the player. Closes #29 2020-06-24 14:34:22 -07:00
Bradley Hilton
fe96739f60
Fix a memory leak with the chat aspect. (#23)
Essentially, the for loop wasn't being returned out
of and that caused the read listener to never be
let up and released to the gc
2020-06-22 23:52:50 -07:00
Ginger Wong
1a44a4bd2f user content general layout 2020-06-21 01:31:08 -07:00
Ginger Wong
1ecf39c2f1 clean up social code 2020-06-21 00:07:57 -07:00
Ginger Wong
19dee67f2a set up components and icons for optional creator's social pages; add airplay icon 2020-06-20 23:41:13 -07:00
Gabe Kangas
04dd7d7f90 Explicitly set poster in js 2020-06-19 13:40:44 -07:00
Gabe Kangas
4c194afce9 Experiment with markdown being supported in chat messgaes 2020-06-19 13:40:36 -07:00
Gabe Kangas
7bdc9052d3 Fix undefined reference in js 2020-06-19 12:19:18 -07:00
Gabe Kangas
886485255a Fix errors on Firefox 2020-06-18 20:46:07 -07:00
Bradley Hilton
5611f4d00e
Merge branch 'master' into fix-initial-offline-state 2020-06-18 20:07:23 -05:00
Gabe Kangas
69da77b054 Fix short segment thumbnails. Move to JPG thumbs. Fix default thumb copy. 2020-06-18 17:56:06 -07:00
Bradley Hilton
42371a30fe
Fix the race condition where the logo wasn't copied over for the default thumbnail 2020-06-18 19:35:09 -05:00
Gabe Kangas
55776b0136 Add default thumbnail 2020-06-18 15:12:25 -07:00
Gabe Kangas
26760b3be1 Rework how videojs is initialized 2020-06-18 14:38:06 -07:00
Ginger Wong
51b79287c5 Merge branch 'master' of https://github.com/gabek/owncast 2020-06-18 10:25:58 -07:00
Ginger Wong
b39824b8c3 updates towards more customization 2020-06-18 10:24:54 -07:00
Gabe Kangas
3ce6026cc8 Simplify videojs init 2020-06-18 01:24:09 -07:00
Ginger Wong
d15080db11 Merge branch 'master' of https://github.com/gabek/owncast 2020-06-18 00:12:39 -07:00
Ginger Wong
cf27b157e6 - fix chrome mobile form focus bug by specifying class. when form focuses media query widths change and may think portrait is in landcape and therefore hide the form.
- cleanup now unused methods
- jump to bottom from vue prop listener
2020-06-18 00:06:10 -07:00
Gabe Kangas
6bc10dc812 Add web content file to build 2020-06-17 23:24:27 -07:00
Gabe Kangas
728b5fe3d7 Update videojs 2020-06-17 21:14:58 -07:00
Gabe Kangas
b0a73a99b9 Add ability to populate the content area in the page with a markdown file 2020-06-17 20:56:24 -07:00
Gabe Kangas
594e1c774a Add ability to populate the content area in the page with a markdown file 2020-06-17 20:20:28 -07:00
Gabe Kangas
f20d8b3179 Troubleshoot player not getting ready event on production server 2020-06-17 17:48:33 -07:00
Gabe Kangas
06ec265038 Use on Ready event instead of player setup hook 2020-06-17 17:16:34 -07:00
Gabe Kangas
431c1a54e7 Split out status polling into own file 2020-06-17 16:35:47 -07:00
Gabe Kangas
b2f74adc02 Move player js to player.js. Update offline video clip. 2020-06-17 16:25:27 -07:00
Ginger Wong
d27c87212e Merge branch 'master' of https://github.com/gabek/owncast 2020-06-17 10:39:19 -07:00
Ginger Wong
aad1a407b8 take out unused event listeners; layout fixes 2020-06-17 10:39:13 -07:00
Gabe Kangas
b835d7d56f Catch automated play() promise error 2020-06-16 21:48:37 -07:00
Gabe Kangas
b35059f17b Wait until player is setup before we start polling for status 2020-06-16 21:08:31 -07:00
Gabe Kangas
c6e4ea8349 Use client-side config files to config things 2020-06-16 18:58:03 -07:00
Gabe Kangas
ca4932e2b4 Make the entire web page wrapped in a vue object 2020-06-16 18:36:11 -07:00
Ginger Wong
195fe5d9e3 Merge branch '0615-layoutrefactor' 2020-06-16 02:16:21 -07:00
Ginger Wong
21aaf0c0fc add logo 2020-06-16 02:09:47 -07:00
Ginger Wong
fd570a6f75 integrate desktop styles. clean up later 2020-06-16 02:09:29 -07:00
Ginger Wong
97c71771df markup and styles for simple mobile only 2020-06-15 23:32:26 -07:00
Gabe Kangas
d7229a8c6d Add AirPlay player button 2020-06-15 20:12:24 -07:00
Gabe Kangas
12d2973e9c Finally give this thing a stupid real title 2020-06-15 18:20:42 -07:00
Ginger Wong
903fdc33ae Merge branch 'master' of https://github.com/gabek/owncast 2020-06-15 17:40:18 -07:00
Ginger Wong
7aaf1e6102 good nuff hacks for nowz 2020-06-15 17:40:12 -07:00
Gabe Kangas
a90d98ff1b Auto-restart playback when the stream comes back online 2020-06-15 17:23:44 -07:00
Ginger Wong
44058c24aa ⏱🛠 2020-06-15 16:23:39 -07:00
Ginger Wong
59ab5e9e98 add a delay before recalculating vh 😭 2020-06-15 15:55:57 -07:00
Ginger Wong
0510d47486 Merge branch 'master' of https://github.com/gabek/owncast 2020-06-15 15:46:01 -07:00
Ginger Wong
4497cc86c2 mobile hackery 2020-06-15 15:45:55 -07:00
Gabe Kangas
96870870e1 Remove unused method 2020-06-15 14:52:51 -07:00
Gabe Kangas
08d20a1096 Add color hash for user avatar backgrounds 2020-06-15 13:44:39 -07:00
Ginger Wong
a9f8ee9956 Merge branch 'master' of https://github.com/gabek/owncast 2020-06-15 13:43:48 -07:00
Ginger Wong
567729f6f8 calc resize on android on message field focus 2020-06-15 13:43:41 -07:00
Gabe Kangas
7e959e3ba1 Add color hash for user avatar backgrounds 2020-06-15 13:42:34 -07:00
Ginger Wong
986c168d07 Merge branch 'master' of https://github.com/gabek/owncast 2020-06-15 00:15:36 -07:00
Ginger Wong
cef9bc7adb hacks and fixes 2020-06-15 00:15:23 -07:00
Ginger Wong
f864e57340 update colors using tailwind styles 2020-06-14 23:12:58 -07:00
Gabe Kangas
d9ce2c0575 Remove hardcoded urls 2020-06-14 22:27:02 -07:00
Ginger Wong
82b0d725c3 center play btn hack 2020-06-14 21:27:50 -07:00
Ginger Wong
67acfeb6f5 Merge branch '0614gw-updates' 2020-06-14 21:15:03 -07:00
Ginger Wong
c16cd50dbb mobile style hacks 2020-06-14 21:14:42 -07:00
Gabe Kangas
11b842ec53 Remove sea theme 2020-06-14 19:15:24 -07:00
Gabe Kangas
8821f09a9d Fix changing username 2020-06-14 18:28:21 -07:00
Ginger Wong
1b2b7248fc Merge branch 'master' into 0614gw-updates 2020-06-14 18:20:24 -07:00
Ginger Wong
151dcb46d2 misc 2020-06-14 18:20:04 -07:00
Gabe Kangas
4e61848d31 Use sea theme just to get rid of that upper left hand corner play button 2020-06-14 18:12:06 -07:00
Gabe Kangas
16e8ab4edc Re-enable timed status check 2020-06-14 17:15:19 -07:00
Ginger Wong
ee19ecdc27 Merge branch '0614gw-updates' 2020-06-14 17:02:36 -07:00
Ginger Wong
687920a4cd more css 2020-06-14 17:02:10 -07:00
Gabe Kangas
a9662e7c1e Support keepalive PING messages on the socket 2020-06-14 16:53:25 -07:00
Ginger Wong
aead6d6b13 videojs video sizing hacks, other css 2020-06-14 16:32:39 -07:00
Gabe Kangas
a3c3276a48 Start of a web UI config 2020-06-14 15:18:43 -07:00
Gabe Kangas
c2d0d6e962 Remove ES6 arrow functions 2020-06-14 13:08:14 -07:00
Gabe Kangas
5e1524d03e Merge remote-tracking branch 'origin/web-layout'
* origin/web-layout:
  more clean up and fixins
  fix chat; get rid of jquery
  set up localstorage-able items
2020-06-14 01:29:28 -07:00
Ginger Wong
50a59ef3c0 more clean up and fixins 2020-06-14 01:10:26 -07:00
Ginger Wong
3ef20c5516 Merge branch 'web-layout' of https://github.com/gabek/owncast into web-layout 2020-06-14 00:24:55 -07:00
Ginger Wong
0fa453044f fix chat; get rid of jquery 2020-06-14 00:24:26 -07:00
Ginger Wong
2aaedd99b5 set up localstorage-able items 2020-06-13 23:38:09 -07:00
Gabe Kangas
6d8e8a8849 Merge branch 'web-layout'
* web-layout:
  Show max viewers
  Move to videojs and point to remote video on goth.land
  form functionailties
  progress. implement chat toggling
  fix msg container
  use app file from web-layout
  style message items
  Guard against the infinite that can take place when the ws server goes unavailable
  use css vars
  initial chat form layout
  mobile considerations
  add file
  initial layout
  Support local development of index.html
2020-06-13 22:46:06 -07:00
Gabe Kangas
ce41b6ad40 Show max viewers 2020-06-13 22:45:22 -07:00
Gabe Kangas
4553ae628b Move to videojs and point to remote video on goth.land 2020-06-13 22:36:12 -07:00
Ginger Wong
5d787d25cd form functionailties 2020-06-13 22:15:58 -07:00
Ginger Wong
eb223ed905 progress. implement chat toggling 2020-06-13 20:15:31 -07:00
Ginger Wong
9b2e4f40c9 fix msg container 2020-06-11 01:24:05 -07:00
Gabe Kangas
b47ea89c06 Add basic persistent viewership stats 2020-06-10 23:59:36 -07:00
Gabe Kangas
9ebec675b5 Generate a static thumbnail png every 20s 2020-06-10 01:38:35 -07:00
Gabe Kangas
33278fc2c5 Replace hls.js with videojs for web playback 2020-06-10 00:35:33 -07:00
Ginger Wong
69ba10a898 use app file from web-layout 2020-06-09 14:15:00 -07:00
Ginger Wong
5c46191cbf Merge branch 'web-layout' into web-layout-gw 2020-06-09 14:13:35 -07:00
Ginger Wong
21c3520e00 style message items 2020-06-09 14:12:50 -07:00
Gabe Kangas
a65564eedf Guard against the infinite that can take place when the ws server goes unavailable 2020-06-09 10:56:15 -07:00
Gabe Kangas
39be46d884 Guard against the infinite that can take place when the ws server goes unavailable 2020-06-09 10:51:12 -07:00
Gabe Kangas
2829d14144 Do not transcode audio just pass it along 2020-06-09 02:47:02 -07:00
Ginger Wong
6da9b7c889 use css vars 2020-06-09 01:22:32 -07:00
Ginger Wong
60080cd93c initial chat form layout 2020-06-04 03:15:27 -07:00
Ginger Wong
33f994fcfd mobile considerations 2020-06-04 02:31:41 -07:00
Ginger Wong
35a3a907c5 add file 2020-06-04 01:32:06 -07:00
Ginger Wong
9b63d1ffb3 initial layout 2020-06-04 01:31:47 -07:00
Gabe Kangas
a29852f404 Support local development of index.html 2020-06-02 18:37:05 -07:00
Gabe Kangas
ad959b130b Make sure the hls directory is in the repo 2020-06-02 18:24:30 -07:00
Gabe Kangas
ae94eb1c5f Make messages unique and dedupe on reconnection 2020-06-02 17:59:58 -07:00
Gabe Kangas
f83fccfa89 Show viewer count and reconnect to websocket 2020-06-02 17:35:49 -07:00
Gabe Kangas
380dad2b87 Support links and embeds in the chat 2020-06-02 15:37:36 -07:00
Gabe Kangas
f6153c983f Save author name on send 2020-06-02 14:27:11 -07:00
Gabe Kangas
90e7e9082b Fix status checking loop. 2020-06-02 14:22:22 -07:00
Gabe Kangas
7e85a38613 Use Vuejs for web UI 2020-06-02 14:07:38 -07:00
Gabe Kangas
1395e7ff82 Try and hack around autoplay 2020-06-02 10:42:24 -07:00
Gabe Kangas
94fabf56a8 Store chat username on send 2020-06-02 10:38:13 -07:00
Gabe Kangas
4cb282040b Add endpoint for returning stream status 2020-06-02 01:02:26 -07:00
Gabe Kangas
020ace7ddd Some basic positioning of HTML 2020-06-01 23:50:32 -07:00
Gabe Kangas
216c15547d Use relative path to websocket 2020-06-01 17:51:33 -07:00
Gabe Kangas
ca622c85c7 Add config file. Turn on/off ipfs 2020-06-01 16:53:31 -07:00
Gabe Kangas
af698063bd Initial POC works with IPFS 2020-05-30 19:05:30 -07:00
Gabe Kangas
cc48f86b85 WIP 2020-05-23 17:57:49 -07:00