Commit graph

201 commits

Author SHA1 Message Date
Jannik
edc777ae1b
🐛 use currentBroadcast for playlist overwrites (#1149)
Fixes #1147 since it looks into currentBroadcast and does not use the configuration of the next stream.
2021-07-01 18:27:56 -07:00
Gabe Kangas
0802a20f4f Do not save invalid disconnect time 2021-06-29 11:38:13 -07:00
Gabe Kangas
12104978e8 Some linter cleanup 2021-06-29 10:21:00 -07:00
Gabe Kangas
ab3bbd59bf Cleanup the persisted disconnected time 2021-06-29 10:04:26 -07:00
Gabe Kangas
d28c4b96f3 Fix invalid nil time being returned 2021-06-28 13:59:23 -07:00
Gabe Kangas
1586d80a32 Wire up blocked chat username controller 2021-06-21 20:16:21 -07:00
Gabe Kangas
20c272ff3d Guard against invalid last disconnect time 2021-06-20 20:16:27 -07:00
Gabe Kangas
89dfcfb047 Fix buggy saving of lastDisconnectTime now used for #1111 2021-06-20 11:30:29 -07:00
Meisam
e991199735
updates to backups directory (#1099)
* read BackupDirectory from command line flag

* Change the default backup directory

* mkdir BackupDirectory

* use config for backup file path

* migrateDatabase to the backup directory

* use DoesFileExists

change permission on the directory to 0700

* declare err

* generate backupFile  where needed

* style fix

* more style fixes

* more style fixes
2021-06-13 15:28:59 -07:00
Gabe Kangas
306a0066d1 Fix concurrency crash. Closes #1067 2021-06-07 21:59:43 -07:00
Jannik
fae2c58259
Fix rtmp secret validation to allow / (#1069) (#1070)
* Fix rtmp secret validation to allow `/` (#1069)

* add negative test cases for stuff before /live/

* simplify since Url.Path is already stripping the host

This means that we can simplify the code and make it much clearer.
Removes the tests that checked for the host and stuff between the host and /live/.
2021-06-04 20:09:43 -07:00
Gabe Kangas
94136d4361 Demote log message 2021-05-24 21:43:13 -07:00
leuc
5ab901bb36
Fix #981 Use -webserverip to set http listen address (#1032)
* Fix #981 Use -webserverip to set http listen address

* use 0.0.0.0 as default http listen address

* add Admin REST API for setting http listen address

* full input validation of port and IP
2021-05-24 16:13:49 -07:00
Gabe Kangas
1a0beb1d0e Fix tests 2021-05-23 14:27:35 -07:00
Meisam
8b57ddcfb1
Remove config file migrator (#1045)
* rm migrator consts

* Delete migrator.go

* rm RunMigrations()
2021-05-23 13:36:34 -07:00
Fabian Fischer
d3696cd0aa
fix: avoid duplicate cache-control header (#1048) 2021-05-23 13:35:05 -07:00
Gabe Kangas
61e07bf945 API for setting a list of blocked usernames. For #782 2021-05-22 21:50:34 -07:00
Gabe Kangas
83ad6db394 If tag storage is an empty string return back an empty slice. Fixes #974 2021-05-22 21:32:56 -07:00
Gabe Kangas
381daaec9b Save owncast logs to log file. Closes #908 2021-05-22 19:25:54 -07:00
Gabe Kangas
36a15a97dd Handle the server summary data as auto-linked markdown. Closes #1010 2021-05-22 17:09:57 -07:00
tomleb
1504ea3509
Add -logdir flag (#1039)
This allow configuring the various logs that may be outputted
(transcoder and future logs)
2021-05-22 16:29:49 -07:00
Gabe Kangas
91f6dcd0f6
Active viewer PING controller. Closes #790 (#990) 2021-05-20 20:29:01 -07:00
Gabe Kangas
3810ce4f63 Do not try to copy logo if image does not exist on disk 2021-05-14 15:28:13 -07:00
Gabe Kangas
09da85090e Fix tests 2021-05-05 19:58:02 -07:00
Gabe Kangas
4f4cef97e2 Force an iframe every segment 2021-05-05 18:21:27 -07:00
Gabe Kangas
fc123ecda3 Fix tests 2021-05-05 17:31:19 -07:00
Gabe Kangas
6bcbe60c28 Update latency level values 2021-05-05 17:22:57 -07:00
Gabe Kangas
fa3a959dc5 update tests 2021-04-29 22:13:47 -07:00
Gabe Kangas
5324d235bf Force an i-frame every second for consistent segment lenghts with
minimum latency.
2021-04-29 22:06:39 -07:00
Gabe Kangas
4f73da30a8 Add additional stream + server info to stream started webhook. Closes #971 2021-04-29 17:04:33 -07:00
Gabe Kangas
eedc07fc94 Ignore warning about hls segment length 2021-04-24 14:00:35 -07:00
Gabe Kangas
34c4350597 Add some more va-api codec error mappings 2021-04-21 17:48:39 -07:00
Gabe Kangas
a06a9c58ea Add i965-va-driver-shader missing error 2021-04-15 22:25:28 -07:00
Gabe Kangas
543577c2e0 Create hls directories at transcoder start to account for stream output changes. Fixes #940 2021-04-15 21:36:14 -07:00
Gabe Kangas
5214d81264
Codec selection (#892)
* Query for installed codecs

* Start modeling out codecs

* Can now specify a codec and get the correct settings returned from the model

* Return codecs in admin/serverconfig

* Start handling transcoding errors and return messages to user

* filter available codecs against a whitelist

* Fix merge

* Codecs are working

* Switching between codecs work

* Add apis for setting a custom video codec

* Cleanup the logging of transcoder errors

* Add v4l codec

* Add fetching v4l

* Add support for per-codec presets

* Use updated nvenc encoding parameters

* Update log message

* Some more codec WIP

* Turn off v4l. It is a mess.

* Try to make the lowest latency level a bit more playable

* Use a human redable display name in console messages

* Turn on transcoder persistent connections

* Add more codec-related user-facing error messages

* Give the initial offline state transcoder an id

* Force a minimum segment count of 3

* Disable qsv for now. set x264 specific params in VariantFlags

* Close body in case

* Ignore vbv underflow message, it is not actionable

* Determine a dynamic gop value based on the length of segments

* Add codec-specific tests

* Cleanup

* Ignore goconst lint warnings in codec file

* Troubleshoot omx

* Add more codec tests

* Remove no longer accurate comment

* Bundle admin from codec branch

* Revert back to old setting

* Cleanup list of codecs a bit

* Remove old references to the encoder preset

* Commit updated API documentation

* Update admin bundle

* Commit updated API documentation

* Add codec setting to api spec

* Commit updated API documentation

Co-authored-by: Owncast <owncast@owncast.online>
2021-04-15 13:55:51 -07:00
Gabe Kangas
f216e781dd Reduce log level on data getters 2021-04-14 16:06:22 -07:00
Gabe Kangas
df7dff081f Set and get custom styling for web interface. For #718 2021-04-11 19:34:05 -07:00
Gabe Kangas
36be7b76c2
If no logo exists copy a default one into data on launch. Closes #909 (#916) 2021-04-11 16:44:50 -07:00
Gabe Kangas
12509c1bc2 Change log level 2021-04-07 00:13:30 -07:00
Gabe Kangas
64a5720a21 Allow unique streampipe fifos. Closes #883 2021-04-01 18:56:00 -07:00
Gabe Kangas
7556671afc Fix race condition where initial offline video state was not written 2021-03-31 23:08:27 -07:00
Gabe Kangas
3ad221665e Handle un-typed or un-parsable chat messages by throwing them away and not panicing. Closes #856 2021-03-25 19:20:05 -07:00
nebunez
80579c5e7e
implement custom welcome message (#820)
* implement custom welcome message

This change adds logic for handling custom welcome messages.

* trim welcome message string on POST

Instead of trimming the welcome message every time we are going to send to send
a welcome message, we just trim once when the message is posted from the admin.
2021-03-21 17:10:56 -04:00
Gabe Kangas
3fb80554ef
Gek/external actions (#827)
* WIP External actions modal frontend

* Add external action links

* Allow modal to show/hide and use a dynamic url

* Use external link object instead of just url for state

* add style and placement to external action buttons

* reformat and simplify tag list style as not to conflict with action buttons and make them look less actionable since they're not

* fix bug to open modal

* have Esc key close modal

* fix style on modal

* make modal bg darker

* close modal when you click outside of it

* fix zindex

* Add support for external action icons and colors

* Some external action modal sizing + loading spinner

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2021-03-15 15:32:52 -07:00
Gabe Kangas
bf33d08384
Add support for disabling chat. Closes #472 (#799) 2021-03-14 11:46:27 -07:00
Gabe Kangas
6f545a905b
Support full html in system messages. Closes #747 (#814) 2021-03-12 00:43:10 -08:00
nebunez
7e0822b62d fix mismatched message ids when client first sends a message
This bug is caused by the message being sent to all clients before
msg.SetDefaults() is called and the message is saved to the chat database. This
causes connected clients to get a message id that is different from what exists
in the database. This only affects clients using websockets that were connected
when the message was sent and message visibility updated.

Fixes https://github.com/owncast/owncast/issues/809
2021-03-10 14:07:47 -05:00
Gabe Kangas
de195f883e
Gek/disable remote images (#800)
* Disable images from anywhere but our emojis. Closes #756

* Add tests around images in chat messages

* Update sanitizer + test
2021-03-08 23:20:15 -08:00
Gabe Kangas
a67e938875 allocate yp at launch to allow for enabling it later 2021-03-04 01:48:10 -08:00
Gabe Kangas
49bb899d51 Optimize/fix concurrency for chat 2021-03-03 21:48:11 -08:00