Closed christopher-dG closed 3 years ago
Trying to record this score on this map, and it would appear that the audio file is not copied into the temp directory. Any ideas why that might be? This is the first time I'm running into this, other beatmaps/scores have been fine.
Here's my recording code:
import os from pathlib import Path from tempfile import mkstemp from osr2mp4.osr2mp4 import Osr2mp4 def record(beatmap: Path, replay: Path) -> Path: _, output = mkstemp(suffix=".mp4") data = { "osu! path": "/", "Skin path": os.environ["OSU_SKIN_PATH"], "Beatmap path": beatmap.as_posix(), ".osr path": replay.as_posix(), "Default skin path": os.environ["OSU_SKIN_PATH"], "Output path": output, "Width": 1280, "Height": 720, "FPS": 60, "Start time": 0, "End time": -1, "Video codec": "XVID", "Process": 2, "ffmpeg path": "ffmpeg", } settings = { "Show scoreboard": False, "Song volume": 100, "Effect volume": 100, "Use FFmpeg video writer": True, "api key": "", } osr = Osr2mp4(data, settings) osr.startall() osr.joinall() return Path(output)
And here are the logs:
bot_1 | 2020-10-12 17:55:47,667:INFO:osr2mp4.osr2mp4.Osr2mp4:__init__:test bot_1 | 2020-10-12 17:55:47,697:TRACE:osr2mp4.Utils.Setup:setupglobals:CALL *({'osu! path': '/', 'Skin path': '/root/skin', 'Beatmap path': '/tmp/tmp9n1bqai9', '.osr path': '/tmp/downloads/replay-osu_2082010_3275936453.osr', 'Default skin path': '/root/skin', 'Output path': '/tmp/tmp_ny585qg.mp4', 'Width': 1280, 'Height': 720, 'FPS': 60, 'Start time': 0, 'End time': -1, 'Video codec': 'XVID', 'Process': 2, 'ffmpeg path': 'ffmpeg'}, {'Show scoreboard': False, 'Song volume': 100, 'Effect volume': 100, 'Use FFmpeg video writer': True, 'api key': None, 'Custom mods': ''}, frozenset({<Mod.NoMod: 0>}), <osr2mp4.global_var.Settings object at 0x7f104d2f0850>) **{'ppsettings': {'x': 1320, 'y': 725, 'Size': 25, 'Rgb': [255, 255, 255], 'Alpha': 1, 'Font': 'arial.ttf', 'Background': '/root/osr2mp4/res/pptemplate.png', 'Hitresult x': 50, 'Hitresult y': 150, 'Hitresult Size': 16, 'Hitresult Rgb': [255, 255, 255], 'Hitresult Alpha': 1, 'Hitresult Font': 'arial.ttf', 'Hitresult Background': '/root/osr2mp4/res/hitresulttemplate.png', 'Hitresult Gap': 3}} bot_1 | 1000 bot_1 | 2020-10-12 17:55:47,701:TRACE:root:read:{'Name': 'CirclePeople', 'Author': '- Zayin -', 'CursorRotate': '0', 'CursorExpand': '1', 'CursorCentre': '1', 'HitCircleOverlayAboveNumer': '1', 'SliderStyle': '2', 'Version': 'latest'} bot_1 | 2020-10-12 17:55:47,701:TRACE:root:read:{'Combo1': '242,216,223', 'Combo2': '0,255,168', 'Combo3': '231,232,226', 'SliderBorder': '255,110,0', 'SliderTrackOverride': '0,30,70', 'SpinnerApproachCircle': '255,255,255'} bot_1 | 2020-10-12 17:55:47,701:TRACE:root:read:{'HitCirclePrefix': 'default', 'HitCircleOverlap': '8', 'ScorePrefix': 'score', 'ScoreOverlap': '6'} bot_1 | 2020-10-12 17:55:47,701:TRACE:osr2mp4.Utils.Setup:setupglobals:RETURN None bot_1 | 2020-10-12 17:55:47,836:TRACE:root:__init__:Settings vars {'skin_path': '/root/skin', 'default_path': 'root/osr2mp4/res/default/', 'skin_ini': <osr2mp4.Parser.skinparser.Skin object at 0x7f104cba15b0>, 'default_skin_ini': <osr2mp4.Parser.skinparser.Skin object at 0x7f104cba15b0>, 'format': '.png', 'x2': '@2x', 'ffmpeg': 'ffmpeg', 'output': '/tmp/tmp_ny585qg.mp4', 'beatmap': '/tmp/tmp9n1bqai9', 'osu': '/', 'path': 'root/osr2mp4/', 'temp': 'root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/', 'width': 1280, 'height': 720, 'fps': 60, 'scale': 0.9375, 'playfieldscale': 1.453857421875, 'playfieldwidth': 744.375, 'playfieldheight': 558.28125, 'movedown': 85, 'moveright': 255, 'timeframe': 1000, 'settings': {'Show scoreboard': False, 'Song volume': 100, 'Effect volume': 100, 'Use FFmpeg video writer': True, 'api key': None, 'Custom mods': '', 'Cursor size': 1, 'In-game interface': True, 'Background dim': 100, 'Rotate sliderball': False, 'Always show key overlay': True, 'Automatic cursor size': False, 'Show mods icon': True, 'Enable PP counter': False, 'Score meter size': 1, 'Show score meter': True, 'Ignore beatmap hitsounds': False, "Use skin's sound samples": False, 'Song delay': 0, 'Global leaderboard': False, 'Mods leaderboard': '*', 'FFmpeg codec': 'libx264', 'FFmpeg custom commands': '-preset ultrafast -crf 23', 'Audio bitrate': 500, 'Slider quality': 2}, 'ppsettings': {'x': 1320, 'y': 725, 'Size': 25, 'Rgb': [255, 255, 255], 'Alpha': 1, 'Font': 'arial.ttf', 'Background': '/root/osr2mp4/res/pptemplate.png', 'Hitresult x': 50, 'Hitresult y': 150, 'Hitresult Size': 16, 'Hitresult Rgb': [255, 255, 255], 'Hitresult Alpha': 1, 'Hitresult Font': 'arial.ttf', 'Hitresult Background': '/root/osr2mp4/res/hitresulttemplate.png', 'Hitresult Gap': 3}, 'codec': 'XVID', 'audiocodec': 'aac', 'process': 2, 'enablelog': True} bot_1 | 2020-10-12 17:55:47,836:TRACE:osr2mp4.osr2mp4.Osr2mp4:startall:CALL *() **{} bot_1 | 2020-10-12 17:55:47,836:TRACE:osr2mp4.osr2mp4.Osr2mp4:analyse_replay:CALL *() **{} bot_1 | 2020-10-12 17:55:47,933:TRACE:root:__init__:Diff {'CircleSize': 4.0, 'OverallDifficulty': 9.3, 'HPDrainRate': 4.4, 'BaseHPDrainRate': 4.4, 'BaseCircleSize': 4.0, 'BaseOverallDifficulty': 9.3, 'ApproachRate': 9.9, 'BaseApproachRate': 9.9, 'SliderMultiplier': 2.0, 'BaseSliderMultiplier': 2.0, 'SliderTickRate': 1.0, 'BaseSliderTickRate': 1.0} bot_1 | 2020-10-12 17:55:47,963:DEBUG:root:checkmain:Start check bot_1 | 2020-10-12 17:55:48,539:DEBUG:root:checkmain:check done bot_1 | 2020-10-12 17:55:48,539:TRACE:root:checkmain:RETURN Info(time=150379, combo=1, combostatus=1, showscore=84088786, score=84088786, accuracy={300: 1629, 100: 17, 50: 0, 0: 2}, clicks=[629, 1029, 1, 0], hitresult=100, timestamp=150324, id=1647, hp=0.9190240000000001, maxcombo=2141, more=Circle(state=<States.FADEOUT: 2>, deltat=55, followstate=False, sliderhead=False, x=236.0, y=189.0)) bot_1 | 2020-10-12 17:55:48,539:TRACE:osr2mp4.osr2mp4.Osr2mp4:analyse_replay:RETURN None bot_1 | 2020-10-12 17:55:48,539:TRACE:osr2mp4.osr2mp4.Osr2mp4:startvideo:CALL *() **{} bot_1 | 2020-10-12 17:55:48,539:DEBUG:root:create_frame:entering preparedframes bot_1 | 2020-10-12 17:55:48,558:DEBUG:root:create_frame:Starting process bot_1 | 2020-10-12 17:55:48,561:DEBUG:root:create_frame:Start drawer 0 bot_1 | 2020-10-12 17:55:48,562:TRACE:root:draw:CALL (0, 6370), False bot_1 | 2020-10-12 17:55:48,562:DEBUG:root:draw:process start bot_1 | 2020-10-12 17:55:48,563:DEBUG:root:create_frame:Start writer 0 bot_1 | 2020-10-12 17:55:48,564:DEBUG:root:write:root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/output0.mp4 bot_1 | bot_1 | 2020-10-12 17:55:48,566:DEBUG:root:create_frame:Starting process bot_1 | 2020-10-12 17:55:48,566:DEBUG:root:__init__:start preparing cursor bot_1 | 2020-10-12 17:55:48,568:DEBUG:root:create_frame:Start drawer 1 bot_1 | 2020-10-12 17:55:48,569:TRACE:root:draw:CALL (6370, 12740), True bot_1 | 2020-10-12 17:55:48,569:DEBUG:root:draw:process start bot_1 | 2020-10-12 17:55:48,571:DEBUG:root:create_frame:Start writer 1 bot_1 | 2020-10-12 17:55:48,571:TRACE:osr2mp4.osr2mp4.Osr2mp4:startvideo:RETURN None bot_1 | 2020-10-12 17:55:48,572:TRACE:osr2mp4.osr2mp4.Osr2mp4:startaudio:CALL *() **{} bot_1 | 2020-10-12 17:55:48,572:DEBUG:root:write:root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/output1.mp4 bot_1 | bot_1 | 2020-10-12 17:55:48,574:DEBUG:root:__init__:start preparing cursor bot_1 | 2020-10-12 17:55:48,604:DEBUG:root:__init__:start preparing cursormiddle bot_1 | 2020-10-12 17:55:48,604:DEBUG:root:__init__:start preparing cursormiddle bot_1 | 2020-10-12 17:55:48,604:DEBUG:root:__init__:start preparing cursortrail bot_1 | 2020-10-12 17:55:48,604:DEBUG:root:__init__:start preparing cursortrail bot_1 | 2020-10-12 17:55:48,611:DEBUG:root:__init__:start preparing scorenetry bot_1 | 2020-10-12 17:55:48,611:DEBUG:root:__init__:start preparing scorenetry bot_1 | 2020-10-12 17:55:48,671:DEBUG:root:__init__:start preparing scorenumber bot_1 | 2020-10-12 17:55:48,677:DEBUG:root:__init__:start preparing scorenumber bot_1 | cur_index 0 bot_1 | bot_1 | bot_1 | OFFSET: 3865.0 bot_1 | 0.9375 bot_1 | 2020-10-12 17:55:48,694:DEBUG:root:__init__:start preparing accuracy bot_1 | 0.9375 bot_1 | 2020-10-12 17:55:48,694:DEBUG:root:__init__:start preparing accuracy bot_1 | 2020-10-12 17:55:48,697:TRACE:osr2mp4.osr2mp4.Osr2mp4:startaudio:RETURN None bot_1 | 2020-10-12 17:55:48,698:TRACE:osr2mp4.osr2mp4.Osr2mp4:startall:RETURN None bot_1 | 2020-10-12 17:55:48,698:TRACE:osr2mp4.osr2mp4.Osr2mp4:joinall:CALL *() **{} bot_1 | 2020-10-12 17:55:48,698:TRACE:osr2mp4.osr2mp4.Osr2mp4:joinvideo:CALL *() **{} bot_1 | 2020-10-12 17:55:48,698:DEBUG:root:joinvideo:True bot_1 | 2020-10-12 17:55:48,698:DEBUG:root:joinvideo:True bot_1 | Start write bot_1 | 2020-10-12 17:55:48,847:DEBUG:root:write:start writing: 0.275004 bot_1 | Start write bot_1 | 2020-10-12 17:55:48,847:DEBUG:root:write:start writing: 0.282898 bot_1 | 2020-10-12 17:55:49,003:DEBUG:root:__init__:start preparing circle bot_1 | 2020-10-12 17:55:49,017:DEBUG:root:__init__:start preparing circle bot_1 | 2020-10-12 17:55:49,306:ERROR:root:processaudio:KeyError('42') from audio bot_1 | bot_1 | bot_1 | bot_1 | Process Process-5: bot_1 | Traceback (most recent call last): bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap bot_1 | self.run() bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 108, in run bot_1 | self._target(*self._args, **self._kwargs) bot_1 | File "/root/osr2mp4/AudioProcess/CreateAudio.py", line 166, in processaudio bot_1 | audioprc(my_info, beatmap, offset, endtime, mods, settings) bot_1 | File "/root/osr2mp4/AudioProcess/CreateAudio.py", line 193, in audioprc bot_1 | filenames = getfilenames(beatmap, settings.settings["Ignore beatmap hitsounds"]) bot_1 | File "/root/osr2mp4/AudioProcess/Utils.py", line 174, in getfilenames bot_1 | f = getfilename(beatmap.timing_point[timingpoint_i], soundinfo, sampleset, hitsound, soundset, objtype) bot_1 | File "/root/osr2mp4/AudioProcess/Utils.py", line 58, in getfilename bot_1 | sample_name = sampleset[samplekey] bot_1 | KeyError: '42' bot_1 | done bot_1 | 2020-10-12 17:55:49,526:DEBUG:root:__init__:start preparing background bot_1 | done bot_1 | 2020-10-12 17:55:49,526:DEBUG:root:__init__:start preparing background bot_1 | 2020-10-12 17:55:49,753:DEBUG:root:__init__:start preparing sections bot_1 | 2020-10-12 17:55:49,762:DEBUG:root:__init__:start preparing sections bot_1 | 2020-10-12 17:55:49,773:DEBUG:root:__init__:start preparing scoreboard bot_1 | 2020-10-12 17:55:49,774:DEBUG:root:__init__:start preparing scoreboard bot_1 | 2020-10-12 17:55:49,860:DEBUG:root:__init__:start preparing done bot_1 | 5 8 0.6961069335937501 bot_1 | 2020-10-12 17:55:49,873:ERROR:root:prepare_text:OSError('cannot open resource') bot_1 | 2020-10-12 17:55:49,881:ERROR:root:prepare_text:OSError('cannot open resource') bot_1 | cur_index 0 bot_1 | 2020-10-12 17:55:49,889:TRACE:root:draw:PROCESS (0, 6370), <osr2mp4.VideoProcess.Draw.Drawer object at 0x7f104c8963d0> bot_1 | 2020-10-12 17:55:49,889:DEBUG:root:draw:setup done bot_1 | Loading default path YImagesss menu-back bot_1 | 2020-10-12 17:55:50,085:DEBUG:root:__init__:start preparing ur ranking bot_1 | 2020-10-12 17:55:50,098:DEBUG:root:__init__:start preparing done bot_1 | 5 8 0.6961069335937501 bot_1 | 2020-10-12 17:55:50,130:ERROR:root:prepare_text:OSError('cannot open resource') bot_1 | 2020-10-12 17:55:50,137:ERROR:root:prepare_text:OSError('cannot open resource') bot_1 | cur_index 6250 bot_1 | done bot_1 | 2020-10-12 17:55:50,156:TRACE:root:draw:PROCESS (6370, 12740), <osr2mp4.VideoProcess.Draw.Drawer object at 0x7f104cfbc340> bot_1 | 2020-10-12 17:55:50,156:DEBUG:root:draw:setup done bot_1 | Starting draw bot_1 | End draw 71.43674492835999 bot_1 | 2020-10-12 17:56:59,999:DEBUG:root:draw: bot_1 | process done (0, 6370), <osr2mp4.VideoProcess.Draw.Drawer object at 0x7f104c8963d0> bot_1 | 2020-10-12 17:56:59,999:DEBUG:root:draw:Drawing time: 0 bot_1 | 2020-10-12 17:56:59,999:DEBUG:root:draw:Total time: 71.43704152107239 bot_1 | 2020-10-12 17:56:59,999:DEBUG:root:draw:Waiting time: 8.521287679672241 bot_1 | 2020-10-12 17:56:59,999:DEBUG:root:draw:Changing value time: 0.33205676078796387 bot_1 | --- Logging error --- bot_1 | Traceback (most recent call last): bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 243, in getlocalscores bot_1 | scores = getscores(self.beatmaphash, os.path.join(self.settings.osu, "scores.db")) bot_1 | File "/root/osr2mp4/Parser/scoresparser.py", line 373, in getscores bot_1 | scoresDb = open(dbpath, "rb") bot_1 | FileNotFoundError: [Errno 2] No such file or directory: '/scores.db' bot_1 | bot_1 | During handling of the above exception, another exception occurred: bot_1 | bot_1 | Traceback (most recent call last): bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 1081, in emit bot_1 | msg = self.format(record) bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 925, in format bot_1 | return fmt.format(record) bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 664, in format bot_1 | record.message = record.getMessage() bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 369, in getMessage bot_1 | msg = msg % self.args bot_1 | TypeError: not all arguments converted during string formatting bot_1 | Call stack: bot_1 | File "/usr/local/lib/python3.8/runpy.py", line 194, in _run_module_as_main bot_1 | return _run_code(code, main_globals, None, bot_1 | File "/usr/local/lib/python3.8/runpy.py", line 87, in _run_code bot_1 | exec(code, run_globals) bot_1 | File "/root/bot/__main__.py", line 12, in <module> bot_1 | video = record(beatmap_path, replay_path) bot_1 | File "/root/bot/recorder.py", line 35, in record bot_1 | osr.startall() bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1039, in autologging_traced_instancemethod_delegator bot_1 | return proxy(method, args, keywords) bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1196, in __call__ bot_1 | value = function(*args, **keywords) bot_1 | File "/root/osr2mp4/osr2mp4.py", line 208, in startall bot_1 | self.startvideo() bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1039, in autologging_traced_instancemethod_delegator bot_1 | return proxy(method, args, keywords) bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1196, in __call__ bot_1 | value = function(*args, **keywords) bot_1 | File "/root/osr2mp4/osr2mp4.py", line 177, in startvideo bot_1 | self.drawers, self.writers, self.pipes, self.sharedarray = create_frame(self.settings, self.beatmap, bot_1 | File "/root/osr2mp4/VideoProcess/CreateFrames.py", line 62, in create_frame bot_1 | drawer.start() bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 121, in start bot_1 | self._popen = self._Popen(self) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/context.py", line 224, in _Popen bot_1 | return _default_context.get_context().Process._Popen(process_obj) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/context.py", line 277, in _Popen bot_1 | return Popen(process_obj) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__ bot_1 | self._launch(process_obj) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch bot_1 | code = process_obj._bootstrap(parent_sentinel=child_r) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap bot_1 | self.run() bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 108, in run bot_1 | self._target(*self._args, **self._kwargs) bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 182, in draw_frame bot_1 | draw(shared, conn, beatmap, replay_info, resultinfo, videotime, settings, showranking) bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 207, in draw bot_1 | drawer = Drawer(shared, beatmap, frames, replay_info, resultinfo, videotime, settings) bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 47, in __init__ bot_1 | self.setup_draw() bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 61, in setup_draw bot_1 | self.component = FrameObjects(self.frames, self.settings, self.beatmap.diff, light_replay_info, self.beatmap.meta, self.beatmap.hash, map_time) bot_1 | File "/root/osr2mp4/VideoProcess/AFrames.py", line 215, in __init__ bot_1 | self.scoreboard = Scoreboard(frames.scoreboard, frames.scoreboardscore, frames.scoreboardeffect, replay_info, meta, maphash, settings) bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 120, in __init__ bot_1 | self.getscores() bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 194, in getscores bot_1 | self.getlocalscores(mod) bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 245, in getlocalscores bot_1 | logging.error("from scoreboard", repr(e)) bot_1 | Message: 'from scoreboard' bot_1 | Arguments: ("FileNotFoundError(2, 'No such file or directory')",) bot_1 | 2020-10-12 17:57:00,008:DEBUG:root:joinvideo:Joined drawers 0 bot_1 | Release write bot_1 | End write bot_1 | 2020-10-12 17:57:00,023:DEBUG:root:write: bot_1 | Writing done root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/output0.mp4 bot_1 | 2020-10-12 17:57:00,023:DEBUG:root:write:Writing time: 12.312196969985962 bot_1 | 2020-10-12 17:57:00,024:DEBUG:root:write:Total time: 71.45969772338867 bot_1 | 2020-10-12 17:57:00,024:DEBUG:root:write:Waiting time: 54.33728504180908 bot_1 | 2020-10-12 17:57:00,024:DEBUG:root:write:Changing value time: 4.47427225112915 bot_1 | 2020-10-12 17:57:00,030:DEBUG:root:joinvideo:Joined writers 0 bot_1 | 2020-10-12 17:57:00,031:DEBUG:root:joinvideo:Closed conn 0 bot_1 | 2020-10-12 17:57:00,031:DEBUG:root:joinvideo:True bot_1 | 2020-10-12 17:57:00,031:DEBUG:root:joinvideo:True bot_1 | Starting draw bot_1 | End draw 78.02247762680054 bot_1 | 2020-10-12 17:57:06,592:DEBUG:root:draw: bot_1 | process done (6370, 12740), <osr2mp4.VideoProcess.Draw.Drawer object at 0x7f104cfbc340> bot_1 | 2020-10-12 17:57:06,592:DEBUG:root:draw:Drawing time: 0 bot_1 | 2020-10-12 17:57:06,592:DEBUG:root:draw:Total time: 78.02273297309875 bot_1 | 2020-10-12 17:57:06,592:DEBUG:root:draw:Waiting time: 8.14038896560669 bot_1 | 2020-10-12 17:57:06,592:DEBUG:root:draw:Changing value time: 0.3120119571685791 bot_1 | --- Logging error --- bot_1 | Traceback (most recent call last): bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 243, in getlocalscores bot_1 | scores = getscores(self.beatmaphash, os.path.join(self.settings.osu, "scores.db")) bot_1 | File "/root/osr2mp4/Parser/scoresparser.py", line 373, in getscores bot_1 | scoresDb = open(dbpath, "rb") bot_1 | FileNotFoundError: [Errno 2] No such file or directory: '/scores.db' bot_1 | bot_1 | During handling of the above exception, another exception occurred: bot_1 | bot_1 | Traceback (most recent call last): bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 1081, in emit bot_1 | msg = self.format(record) bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 925, in format bot_1 | return fmt.format(record) bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 664, in format bot_1 | record.message = record.getMessage() bot_1 | File "/usr/local/lib/python3.8/logging/__init__.py", line 369, in getMessage bot_1 | msg = msg % self.args bot_1 | TypeError: not all arguments converted during string formatting bot_1 | Call stack: bot_1 | File "/usr/local/lib/python3.8/runpy.py", line 194, in _run_module_as_main bot_1 | return _run_code(code, main_globals, None, bot_1 | File "/usr/local/lib/python3.8/runpy.py", line 87, in _run_code bot_1 | exec(code, run_globals) bot_1 | File "/root/bot/__main__.py", line 12, in <module> bot_1 | video = record(beatmap_path, replay_path) bot_1 | File "/root/bot/recorder.py", line 35, in record bot_1 | osr.startall() bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1039, in autologging_traced_instancemethod_delegator bot_1 | return proxy(method, args, keywords) bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1196, in __call__ bot_1 | value = function(*args, **keywords) bot_1 | File "/root/osr2mp4/osr2mp4.py", line 208, in startall bot_1 | self.startvideo() bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1039, in autologging_traced_instancemethod_delegator bot_1 | return proxy(method, args, keywords) bot_1 | File "/usr/local/lib/python3.8/site-packages/autologging.py", line 1196, in __call__ bot_1 | value = function(*args, **keywords) bot_1 | File "/root/osr2mp4/osr2mp4.py", line 177, in startvideo bot_1 | self.drawers, self.writers, self.pipes, self.sharedarray = create_frame(self.settings, self.beatmap, bot_1 | File "/root/osr2mp4/VideoProcess/CreateFrames.py", line 62, in create_frame bot_1 | drawer.start() bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 121, in start bot_1 | self._popen = self._Popen(self) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/context.py", line 224, in _Popen bot_1 | return _default_context.get_context().Process._Popen(process_obj) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/context.py", line 277, in _Popen bot_1 | return Popen(process_obj) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__ bot_1 | self._launch(process_obj) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch bot_1 | code = process_obj._bootstrap(parent_sentinel=child_r) bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap bot_1 | self.run() bot_1 | File "/usr/local/lib/python3.8/multiprocessing/process.py", line 108, in run bot_1 | self._target(*self._args, **self._kwargs) bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 182, in draw_frame bot_1 | draw(shared, conn, beatmap, replay_info, resultinfo, videotime, settings, showranking) bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 207, in draw bot_1 | drawer = Drawer(shared, beatmap, frames, replay_info, resultinfo, videotime, settings) bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 47, in __init__ bot_1 | self.setup_draw() bot_1 | File "/root/osr2mp4/VideoProcess/Draw.py", line 61, in setup_draw bot_1 | self.component = FrameObjects(self.frames, self.settings, self.beatmap.diff, light_replay_info, self.beatmap.meta, self.beatmap.hash, map_time) bot_1 | File "/root/osr2mp4/VideoProcess/AFrames.py", line 215, in __init__ bot_1 | self.scoreboard = Scoreboard(frames.scoreboard, frames.scoreboardscore, frames.scoreboardeffect, replay_info, meta, maphash, settings) bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 120, in __init__ bot_1 | self.getscores() bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 194, in getscores bot_1 | self.getlocalscores(mod) bot_1 | File "/root/osr2mp4/ImageProcess/Objects/Components/Scoreboard.py", line 245, in getlocalscores bot_1 | logging.error("from scoreboard", repr(e)) bot_1 | Message: 'from scoreboard' bot_1 | Arguments: ("FileNotFoundError(2, 'No such file or directory')",) bot_1 | 2020-10-12 17:57:06,600:DEBUG:root:joinvideo:Joined drawers 1 bot_1 | Release write bot_1 | End write bot_1 | 2020-10-12 17:57:06,604:DEBUG:root:write: bot_1 | Writing done root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/output1.mp4 bot_1 | 2020-10-12 17:57:06,604:DEBUG:root:write:Writing time: 12.81538438796997 bot_1 | 2020-10-12 17:57:06,604:DEBUG:root:write:Total time: 78.03226280212402 bot_1 | 2020-10-12 17:57:06,604:DEBUG:root:write:Waiting time: 60.06943345069885 bot_1 | 2020-10-12 17:57:06,604:DEBUG:root:write:Changing value time: 4.2786948680877686 bot_1 | 2020-10-12 17:57:06,607:DEBUG:root:joinvideo:Joined writers 1 bot_1 | 2020-10-12 17:57:06,607:DEBUG:root:joinvideo:Closed conn 1 bot_1 | 2020-10-12 17:57:06,608:TRACE:osr2mp4.osr2mp4.Osr2mp4:joinvideo:RETURN None bot_1 | 2020-10-12 17:57:06,608:TRACE:osr2mp4.osr2mp4.Osr2mp4:joinaudio:CALL *() **{} bot_1 | 2020-10-12 17:57:06,608:TRACE:osr2mp4.osr2mp4.Osr2mp4:joinaudio:RETURN None bot_1 | ffmpeg version 4.1.6-1~deb10u1 Copyright (c) 2000-2020 the FFmpeg developers bot_1 | built with gcc 8 (Debian 8.3.0-6) bot_1 | configuration: --prefix=/usr --extra-version='1~deb10u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared bot_1 | libavutil 56. 22.100 / 56. 22.100 bot_1 | libavcodec 58. 35.100 / 58. 35.100 bot_1 | libavformat 58. 20.100 / 58. 20.100 bot_1 | libavdevice 58. 5.100 / 58. 5.100 bot_1 | libavfilter 7. 40.101 / 7. 40.101 bot_1 | libavresample 4. 0. 0 / 4. 0. 0 bot_1 | libswscale 5. 3.100 / 5. 3.100 bot_1 | libswresample 3. 3.100 / 3. 3.100 bot_1 | libpostproc 55. 3.100 / 55. 3.100 bot_1 | [mov,mp4,m4a,3gp,3g2,mj2 @ 0x55bf626f1600] Auto-inserting h264_mp4toannexb bitstream filter bot_1 | Input #0, concat, from '/root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/listvideo.txt': bot_1 | Duration: N/A, start: 0.000000, bitrate: 7982 kb/s bot_1 | Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, 7982 kb/s, 60 fps, 60 tbr, 15360 tbn, 120 tbc bot_1 | Metadata: bot_1 | handler_name : VideoHandler bot_1 | Output #0, mp4, to 'root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/outputf.mp4': bot_1 | Metadata: bot_1 | encoder : Lavf58.20.100 bot_1 | Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, q=2-31, 7982 kb/s, 60 fps, 60 tbr, 15360 tbn, 15360 tbc bot_1 | Metadata: bot_1 | handler_name : VideoHandler bot_1 | Stream mapping: bot_1 | Stream #0:0 -> #0:0 (copy) bot_1 | Press [q] to stop, [?] for help bot_1 | [mov,mp4,m4a,3gp,3g2,mj2 @ 0x55bf627878c0] Auto-inserting h264_mp4toannexb bitstream filter bot_1 | frame= 9156 fps=0.0 q=-1.0 Lsize= 149529kB time=00:02:32.58 bitrate=8028.0kbits/s speed= 737x bot_1 | video:149491kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.025910% bot_1 | ffmpeg version 4.1.6-1~deb10u1 Copyright (c) 2000-2020 the FFmpeg developers bot_1 | built with gcc 8 (Debian 8.3.0-6) bot_1 | configuration: --prefix=/usr --extra-version='1~deb10u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared bot_1 | libavutil 56. 22.100 / 56. 22.100 bot_1 | libavcodec 58. 35.100 / 58. 35.100 bot_1 | libavformat 58. 20.100 / 58. 20.100 bot_1 | libavdevice 58. 5.100 / 58. 5.100 bot_1 | libavfilter 7. 40.101 / 7. 40.101 bot_1 | libavresample 4. 0. 0 / 4. 0. 0 bot_1 | libswscale 5. 3.100 / 5. 3.100 bot_1 | libswresample 3. 3.100 / 3. 3.100 bot_1 | libpostproc 55. 3.100 / 55. 3.100 bot_1 | Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/outputf.mp4': bot_1 | Metadata: bot_1 | major_brand : isom bot_1 | minor_version : 512 bot_1 | compatible_brands: isomiso2avc1mp41 bot_1 | encoder : Lavf58.20.100 bot_1 | Duration: 00:02:32.60, start: 0.000000, bitrate: 8027 kb/s bot_1 | Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, 8025 kb/s, 60 fps, 60 tbr, 15360 tbn, 120 tbc (default) bot_1 | Metadata: bot_1 | handler_name : VideoHandler bot_1 | root/osr2mp4/286ae3ae-0cb4-11eb-a23f-0242ac130002temp/audio.mp3: No such file or directory
Happened again, this time on this map.
e47144b7fdb9882fce55e8d34ab75b91d9dfb545
Trying to record this score on this map, and it would appear that the audio file is not copied into the temp directory. Any ideas why that might be? This is the first time I'm running into this, other beatmaps/scores have been fine.
Here's my recording code:
And here are the logs: