uyitroa / osr2mp4-core

A program to convert osu replay file osr to mp4. Sample: https://www.youtube.com/watch?v=5ugu_9yDSg0
MIT License
120 stars 15 forks source link

Failed replay fails to render #97

Open alchzh opened 3 years ago

alchzh commented 3 years ago

Every time I try to render a failed replay it goes to 99% then gives me this error

Process Process-3:
Traceback (most recent call last):
  File "C:\Users\alchzh\osr2mp4\libs\pythonlib\lib\multiprocessing\process.py", line 297, in _bootstrap
    self.run()
  File "C:\Users\alchzh\osr2mp4\libs\pythonlib\lib\multiprocessing\process.py", line 99, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\alchzh\osr2mp4\libs\pythonlib\lib\site-packages\osr2mp4\VideoProcess\Draw.py", line 190, in draw_frame
    draw(shared, conn, beatmap, replay_info, resultinfo, videotime, settings, showranking)
  File "C:\Users\alchzh\osr2mp4\libs\pythonlib\lib\site-packages\osr2mp4\VideoProcess\Draw.py", line 218, in draw
    status = drawer.render_draw()
  File "C:\Users\alchzh\osr2mp4\libs\pythonlib\lib\site-packages\osr2mp4\VideoProcess\Draw.py", line 88, in render_draw
    in_break = check_break(self.beatmap, self.component, self.frame_info, self.updater, self.settings)
  File "C:\Users\alchzh\osr2mp4\libs\pythonlib\lib\site-packages\osr2mp4\VideoProcess\calc.py", line 122, in check_break
    component.sections.startbreak(1, breakperiod["Start"], updater.resultinfo[updater.info_index].hp)
IndexError: list index out of range
uyitroa commented 3 years ago

@alchzh a temporary fix is to set the end time to when you failed.