Coder Social home page Coder Social logo

jprjr / multistreamer Goto Github PK

View Code? Open in Web Editor NEW
320.0 30.0 94.0 1.2 MB

[discontinued] A webapp for publishing video to multiple streaming services at once.

License: MIT License

Lua 93.60% Shell 0.52% CSS 1.76% JavaScript 3.90% Perl 0.14% Makefile 0.08%
lua-nginx openresty streaming streaming-video stream rtmp irc-interface irc video lua-resty twitch twitch-api youtube youtube-api facebook facebook-api discord discord-api mixer

multistreamer's Issues

Preview Live stream

Hi. Amazing work with multistreamer. Tested it and its great! Just one thing.

The live stream preview does not load any video (even if play button is clicked) while the video streams properly to all services. I just get the same html5 video container like below.

test

PS: Will be using multistreamer from now on. Will give you feedback regularly. Good work.

User delete button typo

When attempting to delete a user from the /users page identified a typo in the button

image

should be a quick fix in line 9 in the following file "/opt/postgres-auth-server/lib/postgres-auth-server/views/deleteuser.etlua"
<button type="submit" class="pure-button pure-button-primary">Delte User</button>

Facebook App Needs to be Live

I just noticed something. I've properly configured my Facebook, Twitch and YouTube keys and secrets and everything was going well. 'Til I tried visiting my pages as incognito and found that Twitch and YouTube shows the stream/videos as is but Facebook, well its a bit sketchy.

As an admin of my own page, I see my live/previous streams without any problems. I always wondered about the question mark but did not bother with it.

Wat

So I went on with my life and streamed with Multistreamer some more. I checked in incognito my public FB page and lo and behold, nothing was friggin there. I've been streaming with Multistreamer since January and the last post was December, probably using NVidia or Restream.

Old

Then I did an experiment, I created a Privacy Policy page and published and made my app live. There it goes, I saw every Multistream post even in incognito. Even a random guy in some remote corner of the world, stumbles upon my FB page, he can see the full glory of my noobidity.

Live

TLDR; please include in the FB guide that the app needs to go live. That involves a Privacy Policy link being published and flipping the app switch to live. Then again, you will still have that question mark even if its live, but check your page in incognito to make sure its published publicly in FB.

Auto push turned on, OBS is failing to connect

Probably related to #49 , I tend to setup my multistreamer to automatically stream when it gets a feed from OBS, when im using this setting, OBS is complaining about my secret or my RTMP URL (which is, from my previous posts, already corrected).

My hunch is that OBS is not smart enough to know that theres probably a different problem with multistreamer. Probably if a return code is returned to OBS to display another error (like stream cant start or something) would be more intuitive than blaming on the RTMP url or keys that is obviously correct.

Instructions for Deploying to ARM Based Machines

Hi, I filed an issue in the Docker repo of Multistreamer but it seems that its a bit complicated to do an automated build to with ARM. So I'm writing this to ask if theres any specific instructions to install/build this in an ARM based machine such as a Raspberry Pi?

Im having trouble with keeping my Multistreamer deployment stable in my ESXi machine since I occasionally shut it down during weekends (I use it for work) and at times when booting the VM where Multistreamer is installed, everything goes to utter crap (ie. not working, not pushing streams, etc).

I'd rather have my extra RPi forever turned on for Multistreamer purposes than have a power hungry dedicated x86 machine for this. I've also observed that Multistreamer works pretty well resource wise so I think an RPi3 would have enough power to handle streaming for 1 or 2 accounts.

Feature request for night mode UI

Just wondering if its possible to have a dark/night mode for the Multistreamer UI? If theres any way you can point me to which files are edited along with a template file with test data, I think I can do so myself.

I think majority of the people here are using this for streaming gaming, I tend to use my other PC to monitor/start the stream and the glare of the light UI is overpowering my other screen. (yes, I know I can just turn off the monitor, but surely there is a better way.)

Missing closing fieldset tag

in file "/opt/multistreamer/multistreamer/lib/multistreamer/views/stream-permissions.etlua"

after line 36 the form is missing a closing fieldset tag

<option value="1" <% if other_user.metadata_level == 1 then %>selected<% end %>>View Metadata</option>
<option value="2" <% if other_user.metadata_level == 2 then %>selected<% end %>>Edit Metadata</option>
</select>
</div>
</fieldset>   <-- this needs to be added

<% end %>

other wise if you are sharing multiple accounts the bowser will embed a fieldset inside a fieldset making the markup look crazy

Facebook stream suddenly stopped

I had a stream configured to push to fb, yt and twitch.. after an hour or so the fb stream stopped but the two was still going. Any logs i can collect to help with this investigation?

Facebook API Change?

Im getting messages like this in my email:

Your app is receiving errors from GET {invalid-id-id}/comments

In the last three hours 100% of the calls to the method GET {invalid-id-id}/comments resulted in errors.

Error Code: 100
Error Description: Invalid parameter
Error Count: 3564

This may be result of a recent change you made to PogzNet Multistreamer, or a failure to comply with a recent breaking change.
For more information about error codes and recovery tactics, please visit our documentation.
If the error rate has not been resolved after 3 days, we'll send you another alert.

You can view this and other Developer Notifications related to your app, in the App Dashboard.

Something I need to be concerned about?

More of a question than an issue

So did I understand correctly that I need to create a Facebook App so I could have a key and a secret to use it with multistreamer? If I want to stream to an existing Facebook Page, would it be possible?

Im using Nvidia GeForce Experience to stream to my Facebook Page and Restream.io to stream to YouTube and Twitch. I just want to use one to make management easier. I came across your page but I am not sure if I would be able to do what I want with this.

Mixer Chatbox bug

When using mixer, some error is also popping up on my chatbox like below once I stopped my stream. I had 2 chat boxes open, and one of them showed it right and other had it with this error.

test1

Cosmetic bug in the readme/instructions

Hi,

On the install section for OpenResty:

...
cd ../luarocks-2.4.2
./configure \
  --prefix=/opt/openresty-rtmp \
  --with-lua=/opt/openresty-rtmp/luajit \
  --lua-suffix=jit \
  --with-lua-include=/opt/openresty-rtmp/luajit/include/luajit-2.1

No make build, make install, or make bootstrap? I am surprised I missed this on the first go around. :/

Chatbot

Is it possible to create a chat bot that would respond to simple commands ( Created by ourselves ) . Eg !www return http://sample.website by bot.

Feature Request: Status Indicator

So, it took me some time to re-setup my deployment (damn persistent storage) and once I got everything back up and running, I did a stream yesterday and it was fine but when I streamed today.. In my iPad I only check Facebook and Twitch. Visiting my YouTube page, I noticed that there was no stream.

How hard would it be to have a status indicator in the dashboard on the main page (more on this below) to show that its pushing to YT/FB/Twitch or something.

  • I thought of putting it on the main page since the main page already show a little nice green button that the stream is pushing. Would be nice to have x number of green buttons if its already live on the services/accounts added to that stream.

Error message when adding a Facebook Account

Since I realized that theres a new build, I redeployed Multistreamer again and deleted all my accounts and readded them. When adding FB, I got an error but upon checking I saw that FB was added (probably because I already previously authorized this app)

Error

/home/multistreamer/lib/multistreamer/networks/facebook.lua:155: attempt to index local 'event_info' (a boolean value)

Traceback

stack traceback:
	/home/multistreamer/lib/multistreamer/networks/facebook.lua:155: in function 'refresh_targets'
	/home/multistreamer/lib/multistreamer/networks/facebook.lua:286: in function 'register_oauth'
	/home/multistreamer/lib/multistreamer/webapp.lua:1180: in function 'handler'
	...streamer/lua_modules/share/lua/5.1/lapis/application.lua:130: in function 'resolve'
	...streamer/lua_modules/share/lua/5.1/lapis/application.lua:161: in function <...streamer/lua_modules/share/lua/5.1/lapis/application.lua:159>
	[C]: in function 'xpcall'
	...streamer/lua_modules/share/lua/5.1/lapis/application.lua:159: in function 'dispatch'
	.../multistreamer/lua_modules/share/lua/5.1/lapis/nginx.lua:215: in function 'serve'
	content_by_lua(nginx.conf:69):2: in function <content_by_lua(nginx.conf:69):1>

RTMP URL missing prefix

I was supposed to stream today and gather more information about the start/stop problem but I've faced several problems. I will be individually filing an issue for those.

Upon checking, I noticed that even if I have a prefix set, the suggested RTMP URL in the dashboard doesnt contain my prefix. Using it without the prefix doesnt work, I had to go back to my config and add /multistreamer on OBS for me to be able to connect.

Irc connect with ii

I'm a little confused on how to connect with a command line irc client. I'm trying to use ii so I can pipe chat from a costume rtmp service. Any advise would be appreciated.

ffmpeg persistent after stream stops

Hey JR,
unfortunately i'm facing the issue with persistent ffmpeg processes, even when the stream is stopped. using "Stop pushing" also can't terminate the processes running. tried both ways - with "require preview" switched on and off - again same results. tomorrow will try again 2 fresh installations but on both ubuntu/centos result is the same.

Trouble Installing On Ubuntu 16.04

When i'm trying to add a user i get this error

./bin/htpasswd-auth-server -l /opt/openresty-rtmp/luajit/bin/luajit add /opt/openresty-rtmp/luajit/bin/luajit: /root/htpasswd-auth-server/bin/htpasswd-auth-server.lua:62: module 'lecho' not found: no field package.preload['lecho'] no file './lib/lecho.lua' no file '/root/htpasswd-auth-server/lua_modules/share/lua/5.1/lecho.lua' no file '/root/htpasswd-auth-server/lua_modules/share/lua/5.1/lecho/init.lua' no file './lecho.lua' no file '/root/htpasswd-auth-server/lua_modules/lib/lua/5.1/lecho.so' stack traceback: [C]: in function 'require' /root/htpasswd-auth-server/bin/htpasswd-auth-server.lua:62: in main chunk [C]: at 0x004047d0

Trouble deploying on Debian 8.0 linux container

Hi,

I am having a bit of problem deploying multistreamer here. Unfortunately, on your readme, it doesn't indicate which lua version you need to run this program?

Correction: The readme does mention the program requires lua 5.1 further down.

In Debian 8.0 (jessie), there are 3 different version available: 5.0, 5.1, 5.2, 5.3.

5.1

/usr/bin/lua: error loading module 'posix.ctype' from file '/usr/local/src/multistreamer/lua_modules/lib/lua/5.1/posix.so':
        /usr/local/src/multistreamer/lua_modules/lib/lua/5.1/posix.so: undefined symbol: luaL_fileresult
stack traceback:
        [C]: ?
        [C]: in function 'require'
        ...ltistreamer/lua_modules/share/lua/5.1/posix/init.lua:29: in main chunk
        [C]: in function 'require'
        /usr/local/src/multistreamer/bin/multistreamer.lua:12: in main chunk
        [C]: ?

5.2

/usr/bin/lua: /usr/local/src/multistreamer/bin/multistreamer.lua:12: module 'posix' not found:
        no field package.preload['posix']
        no file '/usr/local/src/multistreamer/lua_modules/share/lua/5.2/posix.lua'
        no file '/usr/local/src/multistreamer/lua_modules/share/lua/5.2/posix/init.lua'
        no file './posix.lua'
        no file '/usr/local/src/multistreamer/lua_modules/lib/lua/5.2/posix.so'
stack traceback:
        [C]: in function 'require'
        /usr/local/src/multistreamer/bin/multistreamer.lua:12: in main chunk
        [C]: in ?

NOTE 1: I've never worked with lua in the past.

NOTE 2: I assumed I had to use luarocks from /opt/openresty/bin/luarocks because I wasn't aware luarocks was already in the repositories.

NOTE 3: LuaRocks from Debian 8.0 repository wants '--tree='

NOTE 4: LuaRocks from Debian 8.0 doesn't install dependencies AFAIK. It just errors out: "Unable to statisfy dependecies". Might be a bug in packaging. See full commands in order below:

luarocks --tree=lua_modules install bit32
luarocks --tree=lua_modules install lua-cjson
luarocks --tree=lua_modules install date
luarocks --tree=lua_modules install luacrypto
luarocks --tree=lua_modules install ansicolors
luarocks --tree=lua_modules install lpeg
luarocks --tree=lua_modules install etlua
luarocks --tree=lua_modules install loadkit
luarocks --tree=lua_modules install luafilesystem
luarocks --tree=lua_modules install mimetypes
luarocks --tree=lua_modules install luasocket
luarocks --tree=lua_modules install luabitop
luarocks --tree=lua_modules install pgmoon
luarocks --tree=lua_modules install netstring
luarocks --tree=lua_modules install lua-resty-exec
luarocks --tree=lua_modules install lua-resty-jit-uuid
luarocks --tree=lua_modules install lua-resty-string
luarocks --tree=lua_modules install lua-resty-http
luarocks --tree=lua_modules install lua-resty-upload
luarocks --tree=lua_modules install lapis
luarocks --tree=lua_modules install etlua
luarocks --tree=lua_modules install luaposix
luarocks --tree=lua_modules install luafilesystem
luarocks --tree=lua_modules install whereami

I opted for https://github.com/jprjr/htpasswd-auth-server, see requiste luarocks below:

NOTE: I am not sure if I should open a seperate issue for htpasswd-auth-server

luarocks --tree=lua_modules install lecho
luarocks --tree=lua_modules install bit32
luarocks --tree=lua_modules install luaposix
luarocks --tree=lua_modules install etlua
luarocks --tree=lua_modules install luafilesystem
luarocks --tree=lua_modules install lbase64

Note 1: htpasswd-auth-server failed to run here, see jprjr/htpasswd-auth-server#1

Note 2: In hindsight, htpasswd-auth-server seems like a overkill and I went with nginx instead. Although creating a username and password combo for htpasswd was useful with htpasswd-auth-server.

Your sample systemd unit service has a syntax error:

systemd[1]: [/etc/systemd/system/multistreamer.service:2] Unknown lvalue 'description' in section 'Unit'

Description needs to start with a capital 'D'. Additionally, multistreamer errors out with:

Error: auth_endpoint not set in config

With the following command:

./bin/multistreamer -e prod run

However, this seem to work:

./bin/multistreamer -e production run

What is the real difference between development and production?

Lastly, is this significant:

Jun 25 16:45:57 rtmp multistreamer[4228]: 2017/06/25 16:45:57 [error] 4244#0: stream [lua] init_worker_by_lua:10: running irc thread, context: ngx.timer
Jun 25 16:45:57 rtmp multistreamer[4228]: 2017/06/25 16:45:57 [error] 4243#0: stream [lua] init_worker_by_lua:10: running irc thread, context: ngx.timer

PS. Took me 3 to 4 hours to set this up, before I even check if it can actually stream. :D

EDIT: It's running, I created a 'Stream', extracted the Stream URL and Stream Key and attempted to stream with OBS.

deepinscreenshot20170625140603

Wireshark TCP dump:

deepinscreenshot20170625140720

Where can I view the logs in regards to why it's failing for rtmp? There is nothing userful in my /var/log/syslog minus the regular HTTP and lua traffic?

EDIT: My config.lua:

local config = require('lapis.config').config

config({'development','production'}, {
  -- name of the cookie used to store session data
  session_name = 'multistreamer',

  -- key for encrypting session data
  secret = '*************',

  -- whether to log queries and requests
  logging = {
      queries = true,
      requests = true,
  },

  -- if deploying somewhere other than the root of a domain,
  -- set this to your prefix (ie, '/multistreamer')
  http_prefix = '',

  -- set an rtmp prefix
  -- note: this can only be a single string,
  -- no slashes etc
  -- defaults to 'multistreamer' if unset
  rtmp_prefix = 'multistreamer',

  -- path to your nginx+lua+rtmp binary
  nginx = '/opt/openresty-rtmp/bin/openresty',

  -- path to psql
  psql = '/usr/bin/psql',

  -- path to ffmpeg
  ffmpeg = '/usr/bin/ffmpeg',

  -- set your logging level
  log_level = 'debug',

  -- setup your external urls (without prefixes)
public_http_url = 'http://rtmp.lhprojects.int',
  public_rtmp_url = 'rtmp://rtmp.lhprojects.int:1935',

  -- setup your private (loopback) urls (without prefixes)
  private_http_url = 'http://127.0.0.1:8081',
  private_rtmp_url = 'rtmp://127.0.0.1:1935',

  -- setup your public IRC hostname, for the web
  -- interface
  public_irc_hostname = 'example.com',
  -- setup your public IRC port, to report in the
  -- web interface
  public_irc_port = '7000',
  -- set to true if you've setup an SSL terminator in front
  -- of multistreamer
  public_irc_ssl = true,


  -- configure streaming networks/services
  -- you'll need to register a new app with each
  -- service and insert keys/ids in here

  -- 'rtmp' just stores RTMP urls and has no config,
  networks = {
    -- twitch = {
    --   client_id = 'client_id',
    --   client_secret = 'client_secret',
    --   ingest_server = 'rtmp://somewhere', -- see https://bashtech.net/twitch/ingest.php
                                             -- for a list of endpoints
    -- },
    -- facebook = {
    --   app_id = 'app_id',
    --   app_secret = 'app_secret',
    -- },
    -- youtube = {
    --   client_id = 'client_id',
    --   client_secret = 'client_secret',
    --   country = 'us', -- 2-character country code, used for listing available categories
    -- },
    rtmp = true,
  },

  -- postgres connection settings
  postgres = {
    host = '127.0.0.1',
    user = 'multistreamer',
    password = 'multistreamer',
    database = 'multistreamer'
  },

  -- nginx http "listen" directive, see
  -- http://nginx.org/en/docs/http/ngx_http_core_module.html#listen
  http_listen = '10.0.0.12:8081',

  -- nginx rtmp "listen" directive, see
  -- https://github.com/arut/nginx-rtmp-module/wiki/Directives#listen
  rtmp_listen = '1935',

  -- nginx irc "listen" directive, see
  -- https://nginx.org/en/docs/stream/ngx_stream_core_module.html#listen
  irc_listen = '6667',

  -- set the IRC hostname reported by the server
  irc_hostname = 'rtmp.lhprojects.int',

  -- should users be automatically brought into chat rooms when
  -- their streams go live? (default false)
  -- this is handy for clients like Adium, Pidgin, etc that don't
  -- have a great IRC interface
  irc_force_join = false,

  -- number of worker processes
  worker_processes = 1,

  -- http auth endpoint
  -- multistreamer will make an HTTP request with the 'Authorization'
  -- header to this URL when a user logs in
  -- see http://nginx.org/en/docs/http/ngx_http_auth_request_module.html
  -- see https://github.com/jprjr/ldap-auth-server for an LDAP implementation
  auth_endpoint = 'http://127.0.0.1:8080/',

  -- redis host
  redis_host = '127.0.0.1:6379',

  -- prefix for redis keys
  redis_prefix = 'multistreamer/',

  -- path to trusted ssl certificate store
  ssl_trusted_certificate = '/etc/ssl/certs/ca-certificates.crt',

  -- dns resolver
  dns_resolver = '8.8.8.8',

  -- maximum ssl verify depth
  ssl_verify_depth = 5,

  -- sizes for shared dictionaries (see https://github.com/openresty/lua-nginx-module#lua_shared_dict)
  lua_shared_dict_streams_size = '10m',
  lua_shared_dict_writers_size = '10m',

  -- specify the run directory to hold temp files etc,
  -- defaults to $HOME/.multistreamer if not set
  -- work_dir = '/path/to/some/folder',

  -- set the path to sockexec's socket
  -- see https://github.com/jprjr/sockexec for installation details
  sockexec_path = '/tmp/exec.sock',

})

Feature request to clone/copy stream details

I've started to create multiple streams rather than editing the stream information manually everytime. I would just opt to create streams in Multistreamer and different profile in OBS and switch accordingly depending on the game im playing.

If its possible, I would like to request the option to clone a stream (which accounts are active, all the information, etc.) since that would make everything easier by just cloning and doing minor edits than putting all values again over and over.

Another way to approach this is to use templates (like how Switchboard Live Cloud does it) so its easier to switch what type you're streaming with a single configuration for RTMP/keys.

Version or Build Number

Hi, I typically just relaunch my container with the option to force pull a new image. But just for sanity, is it possible to add the current version number of Multistreamer lets say, on the login page? This would make it easier for me to identify that I indeed got the new version.

Delays in YouTube

Upon doing a stream just a couple of hours ago, I noticed something odd. I use OBS to push my stream to Multistreamer which then pushes to Facebook, YouTube and Twitch. Making sure that my stream session was good, I checked the videos for Facebook, which showed the complete video; Twitch also showed the complete video in the archives and upon checking YouTube, it ended abruptly, around 30 seconds before I actually ended the stream.

My procedure of ending the stream is via OBS. What I did after ending the OBS stream, I noticed that Multistreamer still has the Go Live! button still grayed out and refreshed the page accordingly for me to check and make sure that Go Live! and Stop Pushing are both disabled.

My hypothesis is that while OBS sent a signal to stop the stream, there might be some left over data that Multistreamer needs to send to YouTube, but since I hit the refresh button, it stopped abruptly.

FB video length: 42:24 https://www.facebook.com/1549289731752927/videos/2067338696614692/
Twitch video length: 42:08 https://www.twitch.tv/videos/235516506
YouTube video length: 40:28 https://www.youtube.com/watch?v=yzLOhz6Mznk

What is the correct process to properly end a stream?

Request: stream key + username

Hello,

would like to kindly ask JprJR to add the username to the stream key, no matter with additional function or replace current one (ideally to have a tick box for attach the username to the stream key). Asking this only for easily monitor through the RTMP stats functions of the Nginx module, and because lately don't have a minute spare time, to additionally edit your code. Will greatly appreciate your effort.

thanks in advance

Twitch hook fails to auth against Kraken

helo,

it seems that the Twitch made some changes to their API lately, because the connector fails once the user restarts the stream. Other connectors works just fine, starting stopping only breaks the twitch authentication. The following scenarios were tried:

  1. New/old dev account - also resetting the secret ID doesn't work
  2. Full and fresh install of multistream as well as different browser (tried: FireFox, IE10, Edge, Opera, Chrome, even in incognito mode)
  3. Pushing the rtmp with only FB/YT enabled works, and once Twitch is turned on, it returns 'no client id specified'
  4. Tried describing the auth return URL to either https/http - the result is the same
  5. Checked everything db/nginx relations, configs etc.

Will kindly assist in any tests, or deployments.

BR

Support for ARM Processors

Tried deploying this to my Raspberry Pi and didnt work.

The results were promising and I think all other components worked fine except for multistreamer itself. I have filed an issue on the docker repo install for multistreamer regarding the errors I found.

Error message when starting the stream

After I was able to figure out the correct RTMP, I tried (settings currently in preview before streaming) to start my stream and got the following message:

Failed to start pusher: {"error":"Bad Request","status":400,"message":"No client id specified"}

Facebooks New Permission Requests

Due to the GDPR I think, Facebook is adjusting the permissions needed for the app. Is there any list of important permissions we would have to enable for our "multistreamer app" for this?


App Review required by the listed review deadline(s) to retain Live Video API access
 
To retain API access to the following permissions and features you must submit your app for App Review by the listed review deadline(s).

Live Video API

Context: The permissions model developers use to publish video to user timelines, Groups and Pages is changing. Developers must submit their app for App Review before August 2, 2018. Learn More.

Action Required: For Multistreamer to maintain functionality, you will need to request the following permissions based on your needs as part of submitting your app for App Review:

To publish video to a user timeline, you will need to request the Live Video API feature, along with the new publish_video permission.

For Groups access you will need to request the publish_to_groups permission.

For Pages access, you will also need to request the publish_pages, manage_pages and pages_show_list permissions.

Note: The publish_to_groups permission is currently only available in development mode, it is scheduled to be enabled in production at a future date.

Next Steps: Start app review.

ffmpeg not running after overriding FFMPEG Arguments

Hello,

I am multistreaming to Twitch and Facebook. I wanted to transcode my stream to Facebook and input all the necessary arguments into the FFMPEG Args field. Everything seems okay after I clicked submit and Go Live, no errors so far. When I checked my stream on my Twitch channel, it states that I'm offline. Checked my Facebook post and it showed it is unavailable or not found. I accessed the terminal to look for running processes using 'top' and ffmpeg is not running. I even tested with default args '-acodec copy -vcodec copy', still the result is consistent.

The stream works/ffmpeg is running when the FFMPEG Args is blank but doesn't after I override the FFMPEG Args. Also, I can't save blank FFMPEG Args after I clicked submit. It just re-input the previous arguments. If I put a space into the field, it saves but ffmpeg is not running as well.

Any ideas? Thanks in advance.

Returning path from networks

hello.

in the last 3-4 weeks i'm receiving complains from my friends, that they are getting error once the complete the steps of authorizing mutlistreamer from Youtube. i was able to reproduce the error, but sometimes, the authorization just completes fine.

https://gyazo.com/015f47fde63709e25667aab481b8d1fb

This is the exact error returned from multistreamer, and below is the debug messages from multistreamer (will cut most of the information because of keys and privacy)

https://gyazo.com/fa115d7eaf574a9e135c8186c6827ab7

if any of you guys, have an insight on this, please let me know.

https Redirect

Facebook is now strictly implementing strict https for oauth redirect URIs. so things like http://<hostname>:8081/auth/facebook wouldnt work anymore.

Possible to create an https redirect to the http endpoint rather than manually setting up SSL with this?

Another option is to support adding of certs via the environment variables.

Multistreamer cant resume when OBS disconnects

I was getting timestamps for more information on the start/end discrepancies between Multistreamer and all the services and halfway through playing/streaming my OBS just gave out an alert that I was disconnected and its trying to reconnect.

All the while I thought that its just gonna be a hiccup and everything would continue on as it should. As I completed my stream, I noticed that the OBS disconnect cut the stream altogether. Is it by design? Or should Multistreamer be at least able to recover on things like this like a network hiccup or some quick OBS failure?

Previously in one service im using, even if OBS disconnects, there would just be a gap on the stream but would still continue on when OBS resumes the stream/reconnects.

To help out further, here are the start timestamps of the videos and services.

YT: Started 23:51:31 (lasted for 00:15:38)
FB: Started 23:51:14 (lasted for 00:16:02)
Twitch: Started 23:51:30 (lasted for 00:15:46)

Please note that these timestamps are GMT +8. I have gathered the logs but unforunately its in UTC.

I wish I could do the math but I would need to sleep. So the logs in question should be around 15:51 UTC at the very least.

20180319 Multistreamer Logs.zip

Chat stopped showing messages

Easy as that. Stopped showing Twitch messages but YT messages were shown. Kinda weird. This happened in the middle of a stream. F5 the chat window don't fixed this.

I'm using docker so don't know what to do to get logs and such.

Account info persist into postgre even after user is deleted

hey imba,

stumbled the issue when i had to delete a user, cause of hijacked password, and after creating new user, she tried to add her account in twitch system returned already in use account. Adding same compromised username, the dashboard appeared with her twitch account. While writing this, i'm thinking that this might/should be a security feature but had to delete the stream-key at least from the db. also there are wrong EN translation button/links. will fix them when i find some spare time

best~

Proxy settings.

I there a way to overlap your web interface with an existing nginx configuration?....

For some reason I can't seem to get the docker IMG to get to the login screen... I've followed the video tutorial and even typed the same settings you have for the nginx proxy with no avail. Would you be able to assist? Maybe I have missed something

new twitch module

Hey man,

so far so good. again there are issues with the twitch module. there are two cases:

with option "Require Preview before going live" switch off:
ffmpeg processes are keep spawning, like it doesn't check if there is any current process running. stopping stream doesn't kill those ffmpegs

with option "Require Preview before going live" switch on:
it spawns only one process of ffmpeg, but then again, upon stream is stopped the process is keep running.

test it on CenOS 7.4 and Ubuntu 16.04, with both 'tactics' - with installer and by hand.
Hope you'll have time to look into this.

ps. would kindly ask you to point me where exactly is the function of creating the stream key, want to add username to the stream key, because currently testing and developing rtmp stat module.

Stop puller doesn't kill ffmpeg process

Steps to reproduce:

  1. Create a new stream with custom ffmepg arguments
  2. Head over to Edit Metadata and start puller
  3. Wait a few minutes and click Stop puller

While the page refreshes and appears that the ffmpeg puller has stopped. The stream preview is still showing content and the ffmpeg processes are still running. At this point, you are no longer able to stop the ffmpeg process through the Web UI, only launch a new ffmpeg process.

[feature request] chat widget timeout and avatars

it would be really nice to have a chat widget url option to specify how long given chat message is visible, so that it's not obstructing space if nobody is chatting and there are only few old chat messages. alternatively there could be unix timestamp attached as message attribute, so that can be handled by some external javascript.

the second attribute that could be attached (and displayed if certain flag is switched) is user avatar if it was provided by upstream API.

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.