Commit graph

2286 commits

Author SHA1 Message Date
Owncast
b4cdd4ba19 Update admin to ff8e15ea97041d0e8bdf6405b4c9192641af4409 2022-01-25 01:08:13 +00:00
Gabe Kangas
580a6077e1 Support Mastodon+Twitter cards via HTML embed player in OG tags. 2022-01-22 21:04:45 -08:00
Owncast
ec272f6ce0 Update admin to 6708e289d6a064544f789452b0afe7c7acf4ae52 2022-01-21 04:14:08 +00:00
Owncast
a621e920e7 Update admin to 208f5d9a90a5f50543910c989cb949d7d8abff6f 2022-01-19 01:10:22 +00:00
Owncast
626bd3776f Update admin to 45330b523bed0f6d13e1ff7bcbcb12a2b2348de1 2022-01-18 03:57:03 +00:00
Owncast
4197c5c569 Update admin to 4942bb6f73f8fa14856412e74e813003917bc714 2022-01-18 02:04:06 +00:00
Owncast
87812bdfcb Update admin to 98b0e1e6144db5485435ab9492548404418872d7 2022-01-18 02:01:25 +00:00
Owncast
2ae42e835b Update admin to 5d90954e7a9ee7e57c0691454cce44d2e577d2e8 2022-01-17 01:31:57 +00:00
Owncast
ca8e26e0d9 Update admin to 39563ce6e2e802b860497ab4f402291821950d7b 2022-01-14 19:22:40 +00:00
Owncast
98f9af78cb Update admin to 45786937462c1a83067fff5e79b79c17cef5914d 2022-01-14 01:09:39 +00:00
Owncast
6e0854d710 Update admin to 8bf4a1eb950df480a58dedb50fd99d2c1e259fb8 2022-01-13 23:19:11 +00:00
Owncast
e8436f063e Update admin to 1bc86ab4af5cabb60b6d03a59395312fd75cfe47 2022-01-13 01:15:38 +00:00
Owncast
754e4a09ca Update admin to 645c4ba86fa6fa9a0ab8274efd429614101d0a8a 2022-01-12 22:04:33 +00:00
Gabe Kangas
045a0a2afd
Social features / ActivityPub federation (#1629)
* Support webfinger requests for the live account. Closes https://github.com/owncast/owncast/issues/1193

* Support for actor requests. Returns response for live actor. Closes https://github.com/owncast/owncast/issues/1203

* Handle follow and unfollow requests. Closes
https://github.com/owncast/owncast/issues/1191 and https://github.com/owncast/owncast/issues/1205 and https://github.com/owncast/owncast/issues/1206 and https://github.com/owncast/owncast/issues/1194

* Add basic support for sending out text activities. For https://github.com/owncast/owncast/issues/1192

* Some error handling and passing of dynamic local account names.

* Add hardcoded example image attachment to test post

* Centralize the map of accounts and inboxes

* No longer disable the preview generator based on YP toggle

* Send a federated message to followers when stream starts. For https://github.com/owncast/owncast/issues/1192

* Placeholder for attaching tags

* Add image description

* Save and get to outbox persistence. Return using outbox endpoint for actor

* Pass payloads to be handled through the gochan

* Handle undo follow requests explitly, not all undo requests

* Add API for manually sending simple federated messages. Closes #1215

* Verify inbox requests. Closes #1321

* Add route to fetch a single AP object by ID. For #1329

* Add responses to fediverse nodeinfo requests

* Set and get federation config values for admin

* Handle host-meta requests

* Do not send out message if disabled. Use saved go live message.

* Require AP-compatible content types for AP-related requests

* Rename ap models to apmodels for clarity

* Change how content type matching takes place.

* io -> ioutil

* Add stub delete activity callback

* Handle likes and announces to surface engagement in chat. Part of #1229

* Append url to go live posts

* Do not require specific content types for nodeinfo requests

* Add follow engagement chat message via AP

* add owncast user-agent to requests

* Set note visibility to public (for now)

* Fix saving/fetching a single object

* Add support for x-nodeinfo2 responses

* Point to the dev admin branch for ap

* Bundle in dev admin for testing

* Add error logging

* Add AP middleware back

* Point to the new external compatible logo endpoint

* Clean up more AP logging to help testing

* Tweak go live text and link hashtags

* Fix bug in fetching init time

* Send update actor activities when server details/profile is updated

* Add federation config overview to web client config

* Add additional actor properties

* Make the AP middleware checking more flexible when looking at types

* First pass at remote fediverse follow flow. For #1371

* Added a basic AP actor followers endpoint

* WIP client followers API

* Add profile-page reference to webfinger response

* Add aliases to webfinger response

* Fix content-type returned to be expected activitypub+json

* First pass at followers api

* Point at local dev copy of go-fed/activity

* Add custom toot Hashtag objects to posts

* Store additional user details to followers table

* Fix AP followers endpoint. Closes #1204

* Add owncast hashtag as an invisible tag to go live posts

* Reject AP requests when it is disabled

* Add actor util for generating full account user from person object

* Verify inbox requests before performing any other work

* Accept actor update requests

* Fix linter errors in federation branch

* Migrate AP SQL to sqlc for type safe queries

* Use the @unclearParadigm REST parameter helper

* Fix verifying post ID on AP engagement

* WIP privacy/request approval

* Style the remote follow modal

* First pass at a followers list component w/ mock data. #1370

* Revert "Use the @unclearParadigm REST parameter helper"

This reverts commit c8af8a413f.

* Fix get followers API

* Add support for requiring approval. Closes https://github.com/owncast/owncast/issues/1208

* Handle Applications as Actors partly for PeerTube support

* add temp todo list

* check route on load, this might change later

* style followers

* account for just 1 tab case

* Remove mock data. Allow showing follow button even when there are no external actions defined

* Point to actual followers API

* Support fallback img for follower views

* Remove duplicate verification. Add some additional verbose logging

* Bundle dev admin

* Add type to host-meta webfinger template response

* Tweak remote follow modal content

* WIP federation followers refactor

* Do not send pointer to middleware

* Update admin

* Add setting for toggling displaying fediverse engagement. Closes #1404

* Add in-development admin

* Do not enable cors on admin followers api

* Add db migration for updating messages table

* Enable empty string go live messages to disable

* Remove debug messages

* Rework some ActivityPub handling.

Create new Actor->Person handling.
Create new Actor->Service handling.
Add engagement handlers to send chat events and store event objects.
Store inbound activities to new ap_inbound_activities table.

* Support federated engagement events.

Store them in the messages table and surface them via chat events.

* Support federated event engatement in the chat

* Tweak web UI followers handling

* Point go.mod at remote fork instead of local

* Update admin

* Merged in develop. Couple fixes

* Update dev admin

* Update fedi engagement posts.

- Fix incorrect action text.
- Add action icons.

* Set public as to instead of cc for ap msg

* Updated styling for federated actions in chat

* Add support for blocking federated domains. Closes #1209

* Force checking of https in verify step

* Update dev admin

* Return user scopes in chat history api. Closes #1586

* Update dev admin

* Add AP outbound request worker pool. Closes #1571

* Disable (temporarily?) owncast tag on AP posts

* Consolidate creating activity+notes in outbound AP messages

* Add inbox worker pool. Closes #1570

* Update dev admin bundle

* Clean up some logs

* Re-enable inbound verfication

* Save full IRI to outbox instead of path

* Reject if full IRI is not found in outbox

* Use full ActivityPub user account in chat event

* Fix and expand follower APIs

- Add missing IDs to AP follower endpoints
- Split AP follower endpoints into initial request and pages.
- Support pagination in AP requests.

* Include IRI in error message

* Hide chat toggle when chat is hidden. Closes #1606

* Updates to followers pagination

* Set default go live message

* Remove log

* indirect -> direct import

* Updates for inbound federated event handling.

- Keep track of existing events and reject duplicates.
- Change what is sent to chat for surfing federated engagement.
- Keep track if outbound events are automated "go live" events or not.

* Update chat federated engagement.

* Update dev admin.

* Move from being a person to a bot (service). Closes #1619

* Only set server init date if not already set

* Only save notes to outbox able

* Rework private-mode followers/approvals

* API for returning a list of federated actions for #1573

* Fix too-small follower cells and jumpy tabs. Closes #1616 and closes #1516

* Fix shortcuts getting fired on inputs. Fixes #1489 and #1201

* Add spinner, autoclose + other fixes to follow modal. Fixes #1593

* Fix fetching a single object by IRI

* SendFederationMessage -> SendFederatedMessage

* Autolink and create tag objects from manual posts. Closes #1620

* Update dev admin bundle

* Handle engagement from non-automated/live posts

* Reject federated engagement actions if they do not match a local post

* Update dev admin bundle

* A bunch of cleanup

* Fix unused assignments and logic

* Remove unused function

* Add content warning and sentive content flag if stream is NSFW. Closes #1624

* Disable fetching objects by IRI when in private mode. Closes #1623

* Update the error message of the remote follow dialog. closes #1622

* Update dev admin

* Fix NREs throwing in test content

* Fix query that wasn't properly filtering out hidden messages

* Test against user being disabled instead of message visibility

* Fix automated test NRE

* Update comment

* Adjust federated engagement chat views. Closes #1617

* Add additional index to users table

* Add support for removing followers/requests. Closes #1630

* Reject federated actions from blocked actors. #1631

* Use fallback avatar if it fails to load. Closes #1635

* Fix styling of follower list. Closes #1636

* Add basic blurb stating they should follow the server. Closes #1641

* Update dev admin

* Set default go live message in migration. Closes #1642

* Reset the messages table on 0.0.11 schema migration

* Fix js error with moderation actions. Closes #1621

* Add a bit more clarification on follow modal. Closes #1599

* Remove todos

* Split out actor and domain blocking checks

* Check for errors on default values being set

* Clean up actor rejection due to being blocked

* Update dev admin

* Add colon to error to make it easier to read

* Remove markdown rendering of go live message. Reorganize text. Remove content warning. Closes #1645

* Break out the sort+render messages logic so it can be fired on visibility change. Closes #1643

* Do not send profile updates if federation is disabled

* Save follow references to inbound activities table

* Update dev admin

* Add blocked actor test

* Remove the overloaded term of Follow from social links

* Fix test running in memory only

* Remove "just" in engagement messags

* Replace star with heart for like action.

* Update dev admin

* Explicitly set cc as public

* Remove overly using the stream name in fediverse engagement messages

* Some federated/follow UI tweaks

* Remove explicit cc and bcc as they are not required

* Explicitly set the audience

* Remove extra margin

* Add Join Fediverse button to follow modal. Closes #1651

* Do not allow multiple follows to send multiple events. Closes #1650

* Give events a min height

* Do not allow old posts to be liked/shared. Closes #1652

* Remove value from log message

* Alert followers on private mode toggle

* Ignore clicks to follow button if disabled

* Remove underline from action buttons

* Add moderator icon to join message

* Update admin

* Post-merge remove unused var

* Remove pointing at feature branch

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2022-01-12 13:53:10 -08:00
Owncast
c51d9cdbf4 Update admin to 2e9d6134bd17a084c06be1c78116a5a92e644bcc 2022-01-12 19:36:36 +00:00
Owncast
913dbf89a2 Update admin to e6cc72d9c72d1abdec40c7878f08b041b483a250 2022-01-12 18:19:21 +00:00
Owncast
f54a9f997d Update admin to beb9376c1292d0c64dd0d21e621cd953d86baa19 2022-01-06 01:18:10 +00:00
Owncast
d62848c6c8 Update admin to aff6ed5f3fadb20ae0e5f2fe08d33f7194da6ce6 2022-01-05 02:23:02 +00:00
Owncast
2e3a0e6d7d Update admin to 70e12e1972c1edf1d9fcea0149c99acb927b2189 2022-01-04 08:32:27 +00:00
Owncast
9d2e821dda Update admin to 23d407d69b4692172ee3638ac074c3ba30db483a 2022-01-04 08:28:01 +00:00
Owncast
f83e39411c Update admin to 3223c0ac16f48cf7122f6178ddaf12032964dbbe 2022-01-03 02:58:32 +00:00
Owncast
b2cd174676 Update admin to e57746d2dc34306abf2a2fa931155604f1c64bfd 2021-12-31 04:55:23 +00:00
Owncast
a53cefbac5 Update admin to 43cd4caaafcdc66d46a382d24b656033d626b0a2 2021-12-30 06:34:58 +00:00
Owncast
9885fe5884 Update admin to ac1fe289f43df9bc70141ec4f56ee69481498c87 2021-12-29 04:02:06 +00:00
Owncast
48567a9760 Update admin to 6ac5305f3863a31f02dc2ca6022260dd55d71343 2021-12-28 07:45:13 +00:00
Owncast
3092b8457a Update admin to c9fcab679074fb78d6bc025cbae59361dc3e8069 2021-12-24 21:06:34 +00:00
Owncast
3105037935 Update admin to fde0bfe7162fae6535a6c1762188768cac936976 2021-12-23 01:07:40 +00:00
Owncast
864bce474c Update admin to 3bc4397b57d6798f7505edcb9e75a97a3265f6f4 2021-12-21 22:58:05 +00:00
Owncast
5e4fb4bb86 Update admin to 15dc0df0a23c48067d67771448c45a01025141ab 2021-12-21 01:17:21 +00:00
Owncast
9ca2b5399e Update admin to 9f48665271f15b855ccdc989cffdbff302e17ac3 2021-12-21 01:12:51 +00:00
Owncast
6a47ac1bd3 Update admin to 10be37570d2d54d253ec948f29b104808ec562da 2021-12-20 06:33:12 +00:00
Owncast
2cf25c50b0 Update admin to 7504c5da2d39b45a51e26006612842dda4ee7c6f 2021-12-16 01:39:26 +00:00
Owncast
a747a26c75 Update admin to e36cebbe0b80a855e1350cac28437c7d819d6d8e 2021-12-14 02:31:43 +00:00
Owncast
1a6e2b6208 Update admin to 6c715003e84f044f541f302e4f17552d30a15da5 2021-12-14 02:06:11 +00:00
Owncast
79ad532b9f Update admin to edbd24713562e00042f45c088697638a9064a1e7 2021-12-13 01:40:09 +00:00
Owncast
7790d6c32d Update admin to 4ab21f4c530be68131baba16fd29e5ec6a8ce111 2021-12-10 01:11:42 +00:00
Owncast
c71b8f1e0f Update admin to c4b2758cad1ef1f26cf142a1ebadb2e3f6fff020 2021-12-09 01:57:20 +00:00
Owncast
14fc24c419 Update admin to 3c78fadd33bb6bc88c2d3b0f7f4d8ffbc9869a4d 2021-12-07 02:12:34 +00:00
Owncast
399f168112 Update admin to 6c13bc1cc8bed67a9cce47ccef056809da9c30f3 2021-12-07 02:07:42 +00:00
Owncast
ba77f8e4cf Update admin to dc55fbb7bf7103e847263b1f893983f3e78a5dfb 2021-12-07 02:03:56 +00:00
Owncast
8eacd05e12 Update admin to 9bcd47d1f2c7aa25c80523a3ee349c28d0f6a841 2021-12-07 01:58:47 +00:00
Owncast
8f10f9ad83 Update admin to 70510886ed6c2bef8346b9d9648338b895cc639e 2021-12-06 05:36:27 +00:00
Owncast
74b7949454 Update admin to 5db1ff13fd8f919221f0cd9b9d05eb468c5eb32c 2021-12-06 04:03:39 +00:00
Owncast
faa08b03f6 Update admin to 549c0f8a18cecc5dd9a8b5f3a3b39ce40334f2db 2021-12-03 04:07:24 +00:00
Owncast
d02603c280 Update admin to 63e368a5d809cd2dd31e555b8b3af253c02dddb6 2021-12-03 04:02:54 +00:00
Owncast
1b27e42dbb Update admin to 6c515b598ff68e92c90b290b75b80a4173fec405 2021-12-01 01:49:08 +00:00
Owncast
ee6beca07e Update admin to 011cf3e160fb6d7700ac697d1ebba512b66b307e 2021-12-01 01:44:48 +00:00
Owncast
81653b0e99 Update admin to 0dd17f7357e6fae645c8963740e8d0797c150aa1 2021-11-30 02:49:20 +00:00
Owncast
ea42019029 Update admin to 13220dcaf048a2f3bdf69b10527cf7fc54c28231 2021-11-30 02:45:04 +00:00
Owncast
f0d24d129d Update admin to 0d242dd4be5c98d36fa2c9ffe991a4e45edddd4c 2021-11-29 05:15:41 +00:00
Owncast
1a031f9d30 Update admin to 2a7a6cb9f1b3f90ef77a850ea852893952b88832 2021-11-28 02:15:03 +00:00
Owncast
3ed7035e39 Update admin to d8e1b0e1b115e6b97efd0bac8818341d72d8bcd0 2021-11-26 03:11:32 +00:00
Owncast
2065908c5e Update admin to fc607ea343a3628d6c7f694d7bd091bd903075b9 2021-11-25 02:52:27 +00:00
Owncast
e915cb49bd Update admin to a778dc999e7862dfb34438c8d759442785d52fd4 2021-11-23 03:48:21 +00:00
Owncast
4e96835274 Update admin to 50ca541baec42ea929009483b350161d4618dca4 2021-11-22 01:30:00 +00:00
Owncast
d9314eac2c Update admin to cba0da2dcacab2dc4d65ff61fb2d9323dfb108e5 2021-11-18 01:29:17 +00:00
Owncast
519e60b1e2 Update admin to ff1dc3fb59cdad30196e9e2b0f8d6a1ea44d1983 2021-11-16 01:17:51 +00:00
Owncast
cc27be3721 Update admin to 9cc9dc8d8c96d3f6b09e3bf5c074d23837c26ab0 2021-11-16 01:13:36 +00:00
Owncast
7635be565d Update admin to fd9e718734c5e6c7f73f6c19b23eabfdba2c4738 2021-11-16 01:09:39 +00:00
Owncast
66693b563b Update admin to 7f277ea4f322685350d1280599b548c74524aee1 2021-11-16 00:58:31 +00:00
Owncast
2eedcc5a0f Update admin to f42267c88407d02172e9786c687e0ec3b2f07d87 2021-11-15 23:10:59 +00:00
Owncast
14af894446 Update admin to 6a846a604723c6cd7d195c3b41b2534b1fbe9ae1 2021-11-15 20:25:17 +00:00
Owncast
a6e190bfdd Update admin to c8a31ade5e5f88d25f272f491afcbc83ee9ecd45 2021-11-13 05:31:26 +00:00
Owncast
72cc0206a4 Update admin to 8279a11f5152836ac9cd0465947f0f7bb6a43544 2021-11-13 00:50:23 +00:00
Gabe Kangas
676aa96f40 Add support for overriding embedded offline.ts. Closes #1507 2021-11-03 16:27:37 -07:00
Gabe Kangas
4a52ba9f35 Update admin 2021-11-02 18:02:03 -07:00
Gabe Kangas
c7d988c7dd Update admin 2021-11-01 18:16:01 -07:00
Gabe Kangas
cc2a9b8d8e Update admin 2021-10-28 17:36:06 -07:00
Gabe Kangas
2600afa022 Update admin (update to Nextjs 12) 2021-10-26 22:54:31 -07:00
Gabe Kangas
a40312d733 Update admin 2021-10-24 19:31:06 -07:00
Gabe Kangas
95211f51b3 Update admin 2021-10-13 19:53:10 -07:00
Gabe Kangas
ca9d5de192
Embed static resources (#1466)
* Replace pkger with go:embed for bundling the admin. Closes #844

* Remove references to pkged.go

* Point tests to use an updated version of Go

* Add comment to new exported function

* Cleanup

* Add a dummy pkged.go to alert people to stop using it.

* Add simple browser test to make sure the admin is available and renders

* Don't panic

* Embed bot/scraper metadata template.

Add browser test to validate the rendering of this template.

* Use embedded offline.ts segment

* Remove placeholder thumbnail as its unnecessary

* Remove copying the static directory into the release

* Cleanup
2021-10-11 15:04:16 -07:00
Gabe Kangas
f0bd7d2528
Replace pkger with go:embed for bundling the admin. Closes #844 (#1464)
* Replace pkger with go:embed for bundling the admin. Closes #844

* Remove references to pkged.go

* Point tests to use an updated version of Go

* Add comment to new exported function

* Cleanup

* Add a dummy pkged.go to alert people to stop using it.

* Add simple browser test to make sure the admin is available and renders

* Don't panic
2021-10-11 14:56:00 -07:00
Gabe Kangas
dc8cdb09d5 Fix metadata.html crash. Closes #746. Re: #685 2021-02-20 16:47:47 -08:00
Gabe Kangas
bc2caadb74
0.0.6 -> Master (#731)
* Implement webhook events for external integrations (#574)

* Implement webhook events for external integrations

Reference #556

* move message type to models and remove duplicate

* add json header so content type can be determined

* Pass at migrating webhooks to datastore + management apis (#589)

* Pass at migrating webhooks to datastore + management apis

* Support nil lastUsed timestamps and return back the new webhook on create

* Cleanup from review feedback

* Simplify a bit

Co-authored-by: Aaron Ogle <aaron@geekgonecrazy.com>

Co-authored-by: Gabe Kangas <gabek@real-ity.com>

* Webhook query cleanup

* Access tokens + Send system message external API (#585)

* New add, get and delete access token APIs

* Create auth token middleware

* Update last_used timestamp when using an access token

* Add auth'ed endpoint for sending system messages

* Cleanup

* Update api spec for new apis

* Commit updated API documentation

* Add auth'ed endpoint for sending user chat messages

* Return access token string

* Commit updated API documentation

* Fix route

* Support nil lastUsed time

* Commit updated Javascript packages

* Remove duplicate function post rebase

* Fix msg id generation

* Update controllers/admin/chat.go

Co-authored-by: Aaron Ogle <geekgonecrazy@users.noreply.github.com>

* Webhook query cleanup

* Add SystemMessageSent to EventType

Co-authored-by: Owncast <owncast@owncast.online>
Co-authored-by: Aaron Ogle <geekgonecrazy@users.noreply.github.com>

* Set webhook as used on completion. Closes #610

* Display webhook errors as errors

* Commit updated API documentation

* Add user joined chat event

* Change integration API paths. Update API spec

* Update development version of admin that supports integration apis

* Commit updated API documentation

* Add automated tests for external integration APIs

* check error

* quiet this test for now

* Route up some additional 3rd party apis. #638

* Commit updated API documentation

* Save username on user joined event

* Add missing scope to valid scopes list

* Add generic chat action event API for 3rd parties. Closes #666

* Commit updated API documentation

* First pass at moving WIP config framework into project for #234

* Only support exported fields in custom types

* Using YP get/set key as a first pass at using the data layer. Fixes + integration.

* Ignore test db

* Start adding getters and setters for config values

* More get/set config work. Starting to populate api with data

* Wire up some config edit endpoints

* More endpoints

* Disable cors middleware

* Add more endpoints and add test to test them

* Remove the in-memory change APIs

* Add endpoint for changing tags

* Add more config endpoints

* Starting to point more things away from config file and to the datastore

* Populate YP with db data

* Create new util method for parsing page body markdown and return it in api

* Verify proposed path to ffmpeg

* For development purposes show the config key in logs

* Move stats values to datastore

* Moving over more values to the datastore

* Move S3 config to datastore

* First pass the config -> db migrator

* Add the start of the video config apis

* It builds pointing everything away from the config

* Tweak ffmpeg path error message

* Backup database every hour. Closes #549

* Config + defaults + migration work for db

* Cleanup logging

* Remove all the old config structs

* Add descriptive info about migration

* Tweak ffmpeg validation logic

* Fix db backup path. backup on db version migration

* Set video and s3 configurations

* Update api spec with new config endpoints

* Add migrator for stats file

* Commit updated API documentation

* Use a dynamic system port for internal HLS writes. Closes #577 (#626)

* Use a dynamic system port for internal HLS writes. Closes #577

* Cleanup

* YP key migration to datastore

* Create a backup directory if needed before migrations

* Remove config test that no longer makes sense. Cleanup.

* Change number types from float32 to float64

* Update automated test suite

* Allow restoring a database backup via command line flags. Closes #549

* Add new hls segment config api

* Commit updated API documentation

* Update apis to require a value container property

* add socialHandles api

* Commit updated API documentation

* Add new latancy level setting to replace segment settings

* Commit updated API documentation

* Fix spelling

* Commit updated API documentation

* hardcode a json api of available social platforms

* Add additional icons

* Return social handles in server config api

* Add socialhandles validation to test

* Move list of hard coded social platforms to an api

* Remove audio only code from transcoder since we do not use it

* Add latency levels api + snapshot of video settings as current broadcast

* Add config/serverurl endpoint

* Return 404 on YP api if disabled

* Surface stream title in YP response

* Add stream title to web ui

* Cleanup log message. Closes #520

* Rename ffmpeg package to transcoder

* Add ws package for testing

* Reduce chat backlog to past 5hrs, max 50. Closes #548

* Fix error formatting

* Add endpoint for resetting yp registration

* Add yp/reset to api spec. return status in response

* Return zero viewer count if stream is offline. Closes #422

* Post-rebase fixes

* Fix merge conflict in openapi file

* Commit updated API documentation

* Standardize controller names

* Support setting the stream key via the command line. Closes #665

* Return social handles with YP data. First half of https://github.com/owncast/owncast-yp/issues/28

* Give the YP package access to server status regardless if enabled or not

* Change delay in automated tests

* Add stream title integration API. For #638

* Commit updated API documentation

* Add storage to the migrator

* Missing returning NSFW value in server config

* Add flag to ignore websocket client. Closes #537

* Add error for parsing broadcaster metadata

* Add support for a cli specified http server port. Closes #674

* Add cpu usage levels and a temporary mapping between it and libx264 presets

* Test for valid url endpoint when saving s3 config

* Re-configure storage on every stream to allow changing storage providers

* After 5 minutes of a stream being stopped clear the stream title

* Hide viewer count once stream goes offline instead of when player stops

* Pull steamTitle from the status that gets updated instead of the config

* Commit updated API documentation

* Optionally show stream title in the header

* Reset stream title when server starts

* Show chat action when stream title is updated

* Allow system messages to come back in persistence

* Split out getting chat history for moderation + fix tests

* Remove server title and standardize on name only

* Commit updated API documentation

* Bump github.com/aws/aws-sdk-go from 1.37.1 to 1.37.2 (#680)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.37.1 to 1.37.2.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.37.1...v1.37.2)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add video variant and stream latency config file migrator

* Remove mostly unused disable upgrade check bool

* Commit updated API documentation

* Allow bundling the admin from the 0.0.6 branch

* Fix saving port numbers

* Use name instead of old title on window focus

* Work on latency levels. Fix test to use levels. Clean up transcoder to only reference levels

* Another place where title -> name

* Fix test

* Bump github.com/aws/aws-sdk-go from 1.37.2 to 1.37.3 (#690)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.37.2 to 1.37.3.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.37.2...v1.37.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update dependabot config

* Bump github.com/aws/aws-sdk-go from 1.37.3 to 1.37.5 (#693)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.37.3 to 1.37.5.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.37.3...v1.37.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump video.js from 7.10.2 to 7.11.4 in /build/javascript (#694)

* Bump video.js from 7.10.2 to 7.11.4 in /build/javascript

Bumps [video.js](https://github.com/videojs/video.js) from 7.10.2 to 7.11.4.
- [Release notes](https://github.com/videojs/video.js/releases)
- [Changelog](https://github.com/videojs/video.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/video.js/compare/v7.10.2...v7.11.4)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>

* Make the latency migrator dynamic so I can tweak values easier

* Split out fetching ffmpeg path from validating the path so it can be changed in the admin

* Some commenting and linter cleanup

* Validate the path for a logo change and throw an error if it does not exist

* Logo change requests have to be a real file now

* Cleanup, making linter happy

* Format javascript on push

* Only format js in master

* Tweak latency level values

* Remove unused config file examples

* Fix thumbnail generation after messing with the ffmpeg path getter

* Reduce how often we report high hardware utilization warnings

* Bundle the 0.0.6 branch version of the admin

* Return validated ffmpeg path in admin server config

* Change the logo to be stored in the data directory instead of webroot

* Bump postcss from 8.2.4 to 8.2.5 in /build/javascript (#702)

Bumps [postcss](https://github.com/postcss/postcss) from 8.2.4 to 8.2.5.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.2.4...8.2.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Default config file no longer used

* don't show stream title when offline

addresses https://github.com/owncast/owncast/issues/677

* Remove auto-clearing stream title. #677

* webroot -> data when using logo as thumbnail

* Do not list websocket/access token create/delete as integration APIs

* Commit updated API documentation

* Bundle updated admin

* Remove pointing to the 0.0.6 admin branch

* Linter cleanup

* Linter cleanup

* Add donations and follow links to show up under social handles

* Prettified Code!

* More linter cleanup

* Update admin bundle

* Remove use of platforms.js and return icons with social handles. Closes #732

* Update admin bundle

* Support custom config path for use in migration

* Remove unused platform-logos.gif

* Reduce log level of message

* Remove unused logo files in static dir

* Handle dev vs. release build info

* Restore logo.png for initial thumbnail

* Cleanup some files from the build process that are not needed

* Fix incorrect build-time injection var

* Fix missing file getting copied to the build

* Remove console directory message.

* Update admin bundle

* Fix comment

* Report storage setup error

* add some value set error checking

* Use validated dynamic ffmpeg path for animated gif preview

* Make chat message links be white so they don't hide in the bg. Closes #599

* Restore conditional that was accidentally removed

Co-authored-by: Aaron Ogle <geekgonecrazy@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
Co-authored-by: Ginger Wong <omqmail@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: nebunez <uoj2y7wak869@opayq.net>
Co-authored-by: gabek <gabek@users.noreply.github.com>
2021-02-18 23:05:52 -08:00
imgbot[bot]
103ce8428c
[ImgBot] Optimize images (#313)
*Total -- 3,827.51kb -> 3,399.33kb (11.19%)

/webroot/img/emoji/stayhomeparrot.gif -- 53.85kb -> 7.82kb (85.48%)
/webroot/img/emoji/sadparrot.gif -- 15.42kb -> 3.91kb (74.65%)
/webroot/img/emoji/upvoteparrot.gif -- 10.02kb -> 2.55kb (74.55%)
/webroot/img/emoji/tacoparrot.gif -- 10.91kb -> 2.87kb (73.73%)
/webroot/img/emoji/loveparrot.gif -- 10.15kb -> 2.68kb (73.55%)
/webroot/img/emoji/chewbacca.png -- 34.82kb -> 11.03kb (68.31%)
/webroot/img/emoji/ripparrot.gif -- 23.23kb -> 7.55kb (67.48%)
/webroot/img/emoji/fixparrot.gif -- 10.60kb -> 3.76kb (64.5%)
/webroot/img/airplay.png -- 1.06kb -> 0.39kb (63.53%)
/webroot/img/emoji/darth_vader.png -- 1.16kb -> 0.57kb (51.18%)
/webroot/img/emoji/bluelightsaber.png -- 28.43kb -> 14.05kb (50.56%)
/webroot/img/emoji/death_star.png -- 1.34kb -> 0.70kb (48%)
/webroot/img/emoji/coffeeparrot.gif -- 6.51kb -> 3.41kb (47.53%)
/webroot/img/emoji/cryptoparrot.gif -- 9.23kb -> 5.12kb (44.55%)
/webroot/img/emoji/metalparrot.gif -- 11.54kb -> 6.53kb (43.46%)
/webroot/img/emoji/parrotnotfound.gif -- 34.86kb -> 20.16kb (42.19%)
/webroot/img/emoji/pizzaparrot.gif -- 7.07kb -> 4.11kb (41.84%)
/webroot/img/emoji/wfhparrot.gif -- 26.21kb -> 16.89kb (35.55%)
/webroot/img/smiley.png -- 3.19kb -> 2.18kb (31.72%)
/webroot/img/emoji/dealwithitparrot.gif -- 45.50kb -> 32.52kb (28.53%)
/webroot/img/emoji/mandalorian.png -- 4.38kb -> 3.17kb (27.63%)
/webroot/img/emoji/spyparrot.gif -- 62.57kb -> 45.51kb (27.26%)
/webroot/img/emoji/thanks.png -- 1.07kb -> 0.79kb (26.55%)
/webroot/img/emoji/bells.png -- 6.90kb -> 5.54kb (19.73%)
/webroot/img/emoji/cakeparrot.gif -- 88.45kb -> 71.34kb (19.35%)
/webroot/img/emoji/dadparrot.gif -- 19.06kb -> 15.45kb (18.92%)
/webroot/img/emoji/starwars.png -- 4.53kb -> 3.71kb (18.04%)
/webroot/img/emoji/r2d2.png -- 26.56kb -> 21.86kb (17.68%)
/webroot/img/emoji/Reaper-wtf.png -- 13.03kb -> 10.73kb (17.65%)
/webroot/img/emoji/ac-box.png -- 8.21kb -> 6.78kb (17.39%)
/webroot/img/emoji/ac-tree.png -- 8.38kb -> 7.02kb (16.25%)
/webroot/img/emoji/stormtrooper.png -- 4.90kb -> 4.12kb (16.03%)
/static/logo.png -- 54.96kb -> 46.18kb (15.97%)
/static/logo-900x720.png -- 54.96kb -> 46.18kb (15.97%)
/webroot/img/emoji/ryangoslingparrot.gif -- 6.98kb -> 5.88kb (15.8%)
/webroot/img/emoji/moonwalkingparrot.gif -- 19.27kb -> 16.30kb (15.44%)
/webroot/img/emoji/Reaper-gg.png -- 17.15kb -> 14.60kb (14.88%)
/webroot/img/emoji/Reaper-hype.png -- 17.34kb -> 14.76kb (14.85%)
/webroot/img/emoji/division-gg.png -- 20.83kb -> 17.80kb (14.54%)
/webroot/img/emoji/bluntparrot.gif -- 24.54kb -> 21.04kb (14.23%)
/webroot/img/emoji/tpparrot.gif -- 68.70kb -> 59.15kb (13.91%)
/webroot/img/emoji/division-lol.png -- 18.33kb -> 15.89kb (13.28%)
/webroot/img/emoji/division-hype.png -- 18.99kb -> 16.58kb (12.67%)
/webroot/img/emoji/Reaper-rip.png -- 16.79kb -> 14.70kb (12.47%)
/webroot/img/emoji/porg.png -- 29.23kb -> 25.64kb (12.29%)
/webroot/img/emoji/Reaper-lol.png -- 18.02kb -> 15.85kb (12.01%)
/webroot/img/emoji/empire.png -- 6.16kb -> 5.43kb (11.8%)
/webroot/img/emoji/division-hi.png -- 20.87kb -> 18.42kb (11.7%)
/webroot/img/emoji/darkmodeparrot.gif -- 10.28kb -> 9.09kb (11.56%)
/webroot/img/emoji/palpatine.png -- 7.33kb -> 6.48kb (11.53%)
/webroot/img/emoji/ac-moneytree.png -- 11.49kb -> 10.17kb (11.48%)
/webroot/img/emoji/ac-construction.png -- 8.03kb -> 7.10kb (11.47%)
/webroot/img/emoji/division-rip.png -- 20.36kb -> 18.05kb (11.32%)
/webroot/img/emoji/gabe1.png -- 15.36kb -> 13.64kb (11.17%)
/webroot/img/emoji/ac-turnip.png -- 8.45kb -> 7.54kb (10.8%)
/webroot/img/emoji/jediparrot.gif -- 19.26kb -> 17.21kb (10.6%)
/webroot/img/emoji/rythmicalparrot.gif -- 8.77kb -> 7.84kb (10.58%)
/webroot/img/emoji/sithparrot.gif -- 19.24kb -> 17.21kb (10.57%)
/webroot/img/emoji/division-rage.png -- 24.76kb -> 22.16kb (10.53%)
/webroot/img/emoji/division-omg.png -- 17.42kb -> 15.76kb (9.54%)
/webroot/img/logo.png -- 374.78kb -> 339.80kb (9.33%)
/webroot/img/emoji/ac-shirt.png -- 11.42kb -> 10.36kb (9.25%)
/webroot/img/emoji/doom_mad.gif -- 2.42kb -> 2.20kb (9.14%)
/webroot/img/emoji/originalparrot.gif -- 13.17kb -> 11.97kb (9.11%)
/webroot/img/emoji/division-wtf.png -- 22.52kb -> 20.57kb (8.68%)
/webroot/img/emoji/Reaper-hi.png -- 17.03kb -> 15.62kb (8.28%)
/webroot/img/emoji/transparront.gif -- 13.09kb -> 12.04kb (8.05%)
/webroot/img/emoji/partyparrot.gif -- 14.08kb -> 12.95kb (7.99%)
/webroot/img/emoji/parrot.gif -- 14.66kb -> 13.57kb (7.42%)
/webroot/img/social-icons.gif -- 14.49kb -> 13.46kb (7.16%)
/webroot/img/emoji/shufflepartyparrot.gif -- 64.00kb -> 59.52kb (7%)
/webroot/img/emoji/michaeljacksonparrot.gif -- 30.49kb -> 28.38kb (6.91%)
/webroot/img/emoji/meldparrot.gif -- 45.62kb -> 42.47kb (6.91%)
/webroot/img/emoji/headbangingparrot.gif -- 14.84kb -> 13.88kb (6.47%)
/webroot/img/emoji/blacklightsaber.png -- 11.56kb -> 10.83kb (6.3%)
/webroot/img/emoji/thumbsupparrot.gif -- 19.79kb -> 18.56kb (6.22%)
/webroot/img/emoji/sleepingparrot.gif -- 13.46kb -> 12.64kb (6.12%)
/webroot/img/emoji/ac-fossil.png -- 9.53kb -> 8.96kb (6.01%)
/webroot/img/emoji/matrixparrot.gif -- 2.21kb -> 2.08kb (5.91%)
/webroot/img/emoji/discoparrot.gif -- 17.60kb -> 16.58kb (5.84%)
/webroot/img/emoji/wineparrot.gif -- 29.77kb -> 28.10kb (5.61%)
/webroot/img/emoji/Reaper-rage.png -- 19.04kb -> 17.98kb (5.53%)
/webroot/img/emoji/ac-kkslider.png -- 28.00kb -> 26.46kb (5.48%)
/webroot/img/emoji/twinsparrot.gif -- 20.48kb -> 19.36kb (5.47%)
/webroot/img/emoji/ac-song.png -- 4.98kb -> 4.71kb (5.4%)
/webroot/img/emoji/gothparrot.gif -- 17.06kb -> 16.15kb (5.28%)
/webroot/img/emoji/mustacheparrot.gif -- 16.99kb -> 16.14kb (5.01%)
/webroot/img/emoji/popcornparrot.gif -- 17.74kb -> 16.88kb (4.86%)
/webroot/img/emoji/bb8.png -- 3.79kb -> 3.61kb (4.74%)
/webroot/img/emoji/Reaper-love.png -- 23.07kb -> 22.06kb (4.36%)
/webroot/img/emoji/scienceparrot.gif -- 26.45kb -> 25.31kb (4.32%)
/webroot/img/emoji/ac-mosquito.png -- 4.35kb -> 4.17kb (4.13%)
/webroot/img/emoji/explodyparrot.gif -- 57.42kb -> 55.08kb (4.06%)
/webroot/img/emoji/beerparrot.gif -- 23.17kb -> 22.25kb (3.98%)
/webroot/img/emoji/bobaparrot.gif -- 21.47kb -> 20.64kb (3.86%)
/webroot/img/emoji/copparrot.gif -- 20.94kb -> 20.15kb (3.78%)
/webroot/img/emoji/chillparrot.gif -- 3.75kb -> 3.62kb (3.64%)
/webroot/img/emoji/ac-item-leaf.png -- 8.65kb -> 8.34kb (3.61%)
/webroot/img/emoji/redenvelopeparrot.gif -- 23.17kb -> 22.35kb (3.52%)
/webroot/img/emoji/quadparrot.gif -- 25.43kb -> 24.57kb (3.36%)
/webroot/img/emoji/ac-weeds.png -- 10.45kb -> 10.10kb (3.26%)
/webroot/img/emoji/tiedyeparrot.gif -- 33.46kb -> 32.49kb (2.92%)
/webroot/img/emoji/rotatingparrot.gif -- 7.95kb -> 7.72kb (2.84%)
/webroot/img/favicon/ms-icon-310x310.png -- 37.86kb -> 36.83kb (2.71%)
/webroot/img/emoji/icecreamparrot.gif -- 4.19kb -> 4.08kb (2.68%)
/webroot/img/emoji/christmasparrot.gif -- 22.08kb -> 21.50kb (2.64%)
/webroot/img/emoji/pirateparrot.gif -- 22.53kb -> 21.95kb (2.6%)
/webroot/img/favicon/ms-icon-144x144.png -- 14.08kb -> 13.71kb (2.59%)
/webroot/img/favicon/apple-icon-144x144.png -- 14.08kb -> 13.71kb (2.59%)
/webroot/img/favicon/android-icon-144x144.png -- 14.08kb -> 13.71kb (2.59%)
/webroot/img/emoji/covid19parrot.gif -- 120.40kb -> 117.29kb (2.59%)
/webroot/img/favicon/apple-icon.png -- 18.35kb -> 17.88kb (2.58%)
/webroot/img/favicon/apple-icon-precomposed.png -- 18.35kb -> 17.88kb (2.58%)
/webroot/img/emoji/hamburgerparrot.gif -- 11.41kb -> 11.11kb (2.58%)
/webroot/img/favicon/ms-icon-150x150.png -- 14.52kb -> 14.15kb (2.58%)
/webroot/img/favicon/apple-icon-114x114.png -- 10.29kb -> 10.03kb (2.54%)
/webroot/img/favicon/apple-icon-180x180.png -- 17.99kb -> 17.53kb (2.54%)
/webroot/img/emoji/owncast.png -- 17.99kb -> 17.53kb (2.54%)
/webroot/img/favicon/apple-icon-120x120.png -- 11.07kb -> 10.79kb (2.5%)
/webroot/img/emoji/bananadance.gif -- 31.98kb -> 31.19kb (2.48%)
/webroot/img/emoji/darkbeerparrot.gif -- 5.31kb -> 5.18kb (2.47%)
/webroot/img/emoji/schnitzelparrot.gif -- 33.21kb -> 32.40kb (2.44%)
/webroot/img/favicon/apple-icon-152x152.png -- 14.83kb -> 14.47kb (2.43%)
/webroot/img/emoji/nodeparrot.gif -- 20.77kb -> 20.29kb (2.3%)
/webroot/img/favicon/favicon-96x96.png -- 8.42kb -> 8.23kb (2.28%)
/webroot/img/favicon/android-icon-96x96.png -- 8.42kb -> 8.23kb (2.28%)
/webroot/img/emoji/shipitparrot.gif -- 6.30kb -> 6.15kb (2.26%)
/webroot/img/emoji/headsetparrot.gif -- 31.98kb -> 31.28kb (2.17%)
/webroot/img/emoji/everythingsfineparrot.gif -- 19.57kb -> 19.15kb (2.13%)
/webroot/img/emoji/moonparrot.gif -- 32.88kb -> 32.20kb (2.08%)
/webroot/img/emoji/storm_trooper.gif -- 61.68kb -> 60.49kb (1.93%)
/webroot/img/emoji/nicolas_cage_party.gif -- 23.64kb -> 23.19kb (1.9%)
/webroot/img/favicon/apple-icon-76x76.png -- 6.25kb -> 6.14kb (1.8%)
/webroot/img/favicon/ms-icon-70x70.png -- 5.59kb -> 5.49kb (1.78%)
/webroot/img/emoji/margaritaparrot.gif -- 7.54kb -> 7.40kb (1.78%)
/webroot/img/emoji/skiparrot.gif -- 3.92kb -> 3.85kb (1.77%)
/webroot/img/emoji/pokeparrot.gif -- 20.19kb -> 19.85kb (1.66%)
/webroot/img/emoji/footballparrot.gif -- 42.08kb -> 41.39kb (1.64%)
/webroot/img/favicon/android-icon-192x192.png -- 17.79kb -> 17.50kb (1.62%)
/webroot/img/emoji/flyingmoneyparrot.gif -- 24.19kb -> 23.81kb (1.59%)
/webroot/img/favicon/apple-icon-72x72.png -- 5.86kb -> 5.77kb (1.53%)
/webroot/img/favicon/android-icon-72x72.png -- 5.86kb -> 5.77kb (1.53%)
/webroot/img/emoji/vikingparrot.gif -- 27.87kb -> 27.45kb (1.5%)
/webroot/img/emoji/daftpunkparrot.gif -- 45.15kb -> 44.48kb (1.49%)
/webroot/img/emoji/papalparrot.gif -- 2.37kb -> 2.34kb (1.48%)
/webroot/img/favicon/android-icon-48x48.png -- 3.72kb -> 3.66kb (1.47%)
/webroot/img/emoji/evilparrot.gif -- 22.77kb -> 22.47kb (1.33%)
/webroot/img/favicon/apple-icon-57x57.png -- 4.44kb -> 4.39kb (1.27%)
/webroot/img/emoji/hmmparrot.gif -- 18.09kb -> 17.88kb (1.21%)
/webroot/img/emoji/gentlemanparrot.gif -- 23.98kb -> 23.70kb (1.19%)
/webroot/img/emoji/birthdaypartyparrot.gif -- 31.71kb -> 31.34kb (1.15%)
/webroot/img/favicon/favicon-32x32.png -- 2.36kb -> 2.33kb (1.12%)
/webroot/img/favicon/android-icon-36x36.png -- 2.71kb -> 2.68kb (1.05%)
/webroot/img/emoji/sushiparrot.gif -- 33.04kb -> 32.70kb (1.03%)
/webroot/img/favicon/apple-icon-60x60.png -- 4.70kb -> 4.66kb (1%)
/webroot/img/emoji/laptop_parrot.gif -- 16.63kb -> 16.49kb (0.85%)
/webroot/img/emoji/sintparrot.gif -- 43.68kb -> 43.32kb (0.82%)
/webroot/img/emoji/harrypotterparrot.gif -- 8.21kb -> 8.14kb (0.81%)
/webroot/img/emoji/dabparrot.gif -- 9.25kb -> 9.18kb (0.76%)
/webroot/img/emoji/phparrot.gif -- 38.19kb -> 37.92kb (0.69%)
/webroot/img/emoji/headingparrot.gif -- 21.52kb -> 21.41kb (0.51%)
/webroot/img/emoji/docparrot.gif -- 22.51kb -> 22.42kb (0.42%)
/webroot/img/emoji/illuminatiparrot.gif -- 57.22kb -> 56.99kb (0.39%)
/webroot/img/emoji/opensourceparrot.gif -- 33.38kb -> 33.26kb (0.37%)
/webroot/img/emoji/pumpkinparrot.gif -- 37.52kb -> 37.40kb (0.3%)
/webroot/img/emoji/hypnoparrot.gif -- 46.43kb -> 46.30kb (0.27%)
/webroot/img/emoji/sonic.gif -- 50.32kb -> 50.24kb (0.17%)
/webroot/img/emoji/donutparrot.gif -- 60.86kb -> 60.86kb (0%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-10-31 13:27:39 -07:00
Gabe Kangas
6ea9affce0
HLS video handling/storage/state refactor (#151)
* WIP with new transcoder progress monitor

* A whole different WIP in progress monitoring via local PUTs

* Use an actual hls playlist parser to rewrite master playlist

* Cleanup

* Private vs public path for thumbnail generation

* Allow each storage provider to make decisions of how to store different types of files

* Simplify inbound file writes

* Revert

* Split out set stream as connected/disconnected state methods

* Update videojs

* Add comment about the hls handler

* Rework of the offline stream state.  For #85

* Delete old unreferenced video segment files from disk

* Cleanup all segments and revert to a completely offline state after 5min

* Stop thumbnail generation on stream stop. Copy logo to thumbnail on cleanup.

* Update transcoder test

* Add comment

* Return http 200 on success to transcoder. Tweak how files are written to disk

* Force pixel color format in transcoder

* Add debugging info for S3 transfers. Add default ACL.

* Fix cleanup timer

* Reset session stats when we cleanup the session.

* Put log file back

* Update test

* File should not be a part of this commit

* Add centralized shared performance timer for use anywhere

* Post-rebase cleanup

* Support returning nil from storage provider save

* Updates to reflect package changes + other updates in master

* Fix storage providers being overwritten

* Do not return pointer in save. Support cache headers with S3 providers

* Split out videojs + vhs and point to specific working versions of them

* Bump vjs and vhs versions

* Fix test

* Remove unused

* Update upload warning message

* No longer valid comment

* Pin videojs and vhs versions
2020-10-14 14:07:38 -07:00
Gabe Kangas
4632ba4247 Reorganize the favicons 2020-08-20 17:57:22 -07:00
Gabe Kangas
0fb48d8a7c Add favicon(s). Closes #75 2020-07-19 22:27:42 -07:00
Gabe Kangas
05c511848a Use the thumbnail for opengraph if online 2020-07-19 18:39:27 -07:00
Gabe Kangas
af2a0d4019 Fix rendered template. Closes #38 2020-07-05 23:49:48 -07:00
Gabe Kangas
b4c9654dac Swap out server-side agent detection. 2020-06-30 16:49:39 -07:00
Gabe Kangas
ea9a1a3afd Support webcrawers, bots, opengraph with a basic server-rendered metadata page. Closes #36 2020-06-30 00:09:40 -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
69da77b054 Fix short segment thumbnails. Move to JPG thumbs. Fix default thumb copy. 2020-06-18 17:56:06 -07:00
Gabe Kangas
b2f74adc02 Move player js to player.js. Update offline video clip. 2020-06-17 16:25:27 -07:00