Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker image #1

Open
ahatdude opened this issue Sep 10, 2023 · 2 comments
Open

Docker image #1

ahatdude opened this issue Sep 10, 2023 · 2 comments

Comments

@ahatdude
Copy link

Hey,
First of all thanks for a really cool bot - I've been looking for this for a while.
Would you ever consider making this a docker image? It would be the perfect application for it to just run 24/7 on a server.

Thanks :-)

@Centurix
Copy link
Member

Glad you like the bot. I'd like to get this working from a container so we can host elsewhere, the hurdles we have to get sorted are:

  • Removing the need for a window to share the video: I think there's probably a sweet spot with something like FFMPEG that will allow it to stream IPTV to something like a V4L2Loopback device
  • Routing audio correctly and dealing with Opus: I think this could be achieved with an audio loopback as well and routing from FFMPEG. Audio sync could be an issue and also the Opus codec is another where sound just sounds terrible.
  • Pretending to be a user, automatically joining voice channels and sharing the camera for the V4L2Loopback to show.

@ahatdude
Copy link
Author

If you'll allow me, I'll make some suggestions and we can chat about the feasibility:

  • To simplify the streaming, it would be easier if somehow we could make discord automatically "latch" onto the mpv window and stream that window. It would make the audio issues non existent, since discord would just capture the sound coming out of mpv automatically.
  • I'm not sure about the feasibility of this one, but in a perfect world we'd be able to easily alter how the m3u and xmltv is parsed by the bot. As you know, the files are sometimes a bit different, they can have extra information or some missing and it would make it easier for we could somehow account for this because it can happen that the bot expects certain pieces of info that are either not there or in a different place and due to that, it never populates the mySQL db.
  • Having the bot joining the channel where the user that invoked it is (tv search X), would also make it much easier. I currently have discord running and streaming 24/7 from a VM to simplify things, but this would make it a much "cleaner" solution. We could also add an auto disconnect feature if no one is in the channel for X minutes etc. Music bots already do this, obviously they are only for sound but it may give you some ideas. I use this one, that works quite well: https://github.com/codetheweb/muse .
  • As you mentioned, having this in a container hosted on alpine linux (python version) would not only make it run lighter but also make it much easier to handle all the variables with a docker compose file or something else.

Although I cannot help much in the coding department, I'm available for any help or testing. Let me know if you need anything!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants