diff --git a/src/main/java/eu/crushedpixel/replaymod/ReplayMod.java b/src/main/java/eu/crushedpixel/replaymod/ReplayMod.java index 3b46dbe2..ef517907 100755 --- a/src/main/java/eu/crushedpixel/replaymod/ReplayMod.java +++ b/src/main/java/eu/crushedpixel/replaymod/ReplayMod.java @@ -18,6 +18,7 @@ import eu.crushedpixel.replaymod.renderer.*; import eu.crushedpixel.replaymod.replay.ReplayHandler; import eu.crushedpixel.replaymod.replay.ReplayProcess; import eu.crushedpixel.replaymod.replay.ReplaySender; +import eu.crushedpixel.replaymod.settings.EncodingPreset; import eu.crushedpixel.replaymod.settings.RenderOptions; import eu.crushedpixel.replaymod.settings.ReplaySettings; import eu.crushedpixel.replaymod.sound.SoundHandler; @@ -26,8 +27,8 @@ import eu.crushedpixel.replaymod.utils.OpenGLUtils; import eu.crushedpixel.replaymod.utils.ReplayFile; import eu.crushedpixel.replaymod.utils.ReplayFileIO; import eu.crushedpixel.replaymod.utils.TooltipRenderer; -import lombok.Getter; import eu.crushedpixel.replaymod.video.rendering.Pipelines; +import lombok.Getter; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.entity.RenderPlayer; import net.minecraft.client.resources.IResourcePack; @@ -283,8 +284,12 @@ public class ReplayMod { } if (exportCommandArgs != null) { options.setExportCommandArgs(exportCommandArgs); + } else { + options.setExportCommandArgs(EncodingPreset.MP4DEFAULT.getCommandLineArgs()); } + options.setOutputFile(new File(String.valueOf(System.currentTimeMillis()))); + Pipelines.Preset pipelinePreset = Pipelines.Preset.DEFAULT; if (type != null) { String[] parts = type.split(":"); @@ -344,7 +349,15 @@ public class ReplayMod { ReplayHandler.useKeyframePresetFromRepository(index); System.out.println("Rendering started..."); - ReplayProcess.startReplayProcess(options); + try { + ReplayProcess.startReplayProcess(options); + } catch (Throwable t) { + t.printStackTrace(); + FMLCommonHandler.instance().exitJava(1, false); + } + if (mc.hasCrashed) { + System.out.println(mc.crashReporter.getCompleteReport()); + } System.out.println("Rendering done. Shutting down..."); mc.shutdown(); } diff --git a/src/main/resources/META-INF/replaymod_at.cfg b/src/main/resources/META-INF/replaymod_at.cfg index 627b71a9..b4a79885 100644 --- a/src/main/resources/META-INF/replaymod_at.cfg +++ b/src/main/resources/META-INF/replaymod_at.cfg @@ -11,6 +11,7 @@ public net.minecraft.client.Minecraft field_152351_aB # scheduledTasks public net.minecraft.client.Minecraft field_110449_ao # defaultResourcePacks public net.minecraft.client.Minecraft field_110448_aq # mcResourcePackRepository public net.minecraft.client.Minecraft field_71434_R # hasCrashed +public net.minecraft.client.Minecraft field_71433_S # crashReporter public net.minecraft.client.Minecraft func_71386_F()L # getSystemTime public net.minecraft.client.Minecraft func_71383_b(I)V # updateDebugProfilerName