I basically made this program to convert Lemmy comments to videos just like those Reddit videos on YouTube. I know that there are a few bugs here and there, I will fix them later. For now, the most obvious one is the transition effect video not showing up during transitions, only the audio does. There also might be issues when you run it, I didn’t test if it works when the github version gets cloned so tell me if something is wrong, thanks. I also just got it to work as I wanted even though there are improvements I could make if it weren’t 10pm for me. I will do the improvements when I have the time, for now, take this one as a alpha version.

Anyways, what do you guys think?

Edit: Sorry about the previous error, made the program remove the .gitkeep files beforehand as they break the program

Edit 2: Added a config.json for easy configuration. I also made a quick project blog page explaining how it works: https://asudox.dev/projects/lemmyctts

  • Pantoffel@feddit.de
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    So, it seems I’m really out of the loop. Is this some AI thing generating a video from my comment? Or does this scroll through all comments while “recording” the screen?

    • asudox@lemmy.worldOP
      link
      fedilink
      arrow-up
      8
      ·
      edit-2
      1 year ago

      It firstly takes the posts sorted by the SORT_TYPE (e.g. Hot) from a community, for example, asklemmy@lemmy.world

      It then gets the comments from that random post sorted by Top and selects as much as the COMMENT_LIMIT is. Then the function screenshotLemmy() from screenshotLemmy.py gets called. This function uses the selenium library to simulate the browser of choice (e.g. Firefox) and screenshots the random comments and the random post selected earlier. After that, createTTS() inside createTTS.py gets called which converts the post and the comments to speech using the gTTS library. Then, createLemmyVideo() inside createLemmyVideo.py gets called. This function firstly creates parts of the final video that will be put together later using moviepy. After all that, cleanup() inside finalCleanup.py gets called, which deletes everything inside the tts, video/parts and screenshots folder. The put together video (final video) will be inside the video folder.