Coder Social home page Coder Social logo

slp2mp4's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

gmarcott42

slp2mp4's Issues

Getting Passthrough not supported error when attempting to use program [RESOLVED]

Windows 10 user, my input and output on cmd prompt are as follows:

D:\Documents\Slippi\Convert\slp2mp4-master\slp2mp4>slp2mp4.py D:\Documents\Slippi\Game_20230127T000131.slp FavoriteGame.mp4

D:\Documents\Slippi\Convert\slp2mp4-master\slp2mp4>
[main 2023-01-27T19:31:22.684Z] update#setState idle
[main 2023-01-27T19:31:23.472Z] Starting extension host with pid 724 (fork() took 8 ms).
[main 2023-01-27T19:31:52.685Z] update#setState checking for updates
[main 2023-01-27T19:31:52.764Z] update#setState idle
[6016:0127/143322.618:ERROR:gpu_init.cc(481)] Passthrough is not supported, GL is disabled, ANGLE is

and then the program never closes. Do you have any ideas on what is happening here?

Path names with single quotes fail

If a path name has a single quote (e.g. User's Wii), the videos will render, but won't get combined properly. Happens at least on Windows.

Enable audio

If audio is disabled, you'll get an error that the audio dump is missing.

Improve / automate testing

The current testing setup is pretty minimalist. I'd like to be able to have more robust tests that handle file names, paths, ensure directory output / cleanup is consistent, etc.

Hides stdin input on Linux

When running with multiprocessing on Linux, stdin won't show. Stdout and stderr still show up, but anything typed in the command line (in urxvt) doesn't show up.

Automate trimming of "waiting for game" / black screen

It should be possible to avoid using ffmpeg to combine individual sets. This should be possible using the COMM spec queue attribute. This has some advantages and disadvantages.

Pros:

  • Removes extra step / time from processing (concating videos takes time; if done originally, this won't need to be done)
  • May simplify logic / remove "waiting for game" screens (I would expect queued items to not show waiting for game between replays; not sure how the endFrame attribute interacts w/ queued videos).
    • Does not remove waiting for game screen, and actually makes it more likely to happen (without some extra logic)
    • Each queued item can have its own start/end frames

Cons:

  • Could potentially slow down some cases (because it currently can run all videos in parallel, cases where there are many videos that would be combined would probably be slower)
  • Doesn't fully remove ffmpeg as a dependency, since it's needed to, at the very least, combine the audio and video

Solution: Add option to settings file to enable sequential rendering for people that want it

To fix increased occurrences of WFG screen, could try using the blackdetect filter and trimming that out (though that would remove the benefits of removing one of the passes somewhat)

Automated overlays

I think it'd be very nice to automate having minimalistic overlays - at least something for set count, though tournament would also be cool.

Potential ideas:

  • Modify netplay tags to include score
    • What happens if tag is too long?
    • Need way to modify ubjson to update that info / convert console replays to netplay replays
    • Doesn't include tournament name / round
    • No extra processing time
    • No timing info needed (see below)
  • Use ffmpeg to overlay text
    • Use drawbox and drawtext
      • Already using ffmpeg, so it's not an extra requirement
      • Not as much experience with
    • Use imagemagick
      • Increases # of dependencies
      • Easier to produce nice looking text boxes w/ borders (imo)
    • Both of these increase processing time

Timing info issue:

  • If used in conjunction with the COMM spec option, overlay updates would need to be synced with game change somehow (probably by estimating timing via frame counting, though that assumes no "waiting for game" screen / hiccups)

Other potential issues:

  • Would it be possible to configure the look / feel in a flexible, easy to use way? How?
  • Would need automated way to determine who won a set. Quit outs / hand warmers can make this challenging.
  • Need way to communicate information about players / ports, esp for console replays. What happens if there's a mid-set port-change?

slp2mp4 run: error: argument path: 'path' is not a valid file or directory

I keep seeing this error on Windows 11 no matter which path I try.

I've tried:
Game_20230512T131657.slp
.\Game_20230512T131657.slp
./Game_20230512T131657.slp
"C:\Users\jonat\Documents\Slippi\"
"C:/Users/jonat/Documents/Slippi/"
"C:\\Users\\jonat\\Documents\\Slippi\\Game_20230624T173855.slp"
"C:\Users\jonat\Documents\Slippi\Game_20230624T173855.slp"
"C://Users//jonat//Documents//Slippi//Game_20230624T173855.slp"
"C:/Users/jonat/Documents/Slippi/Game_20230624T173855.slp"

Do you have any examples of how these paths are supposed to look on windows? I'm executing these all from the slippi replay directory itself(tried outside of it too). Any help would be great

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.