diff options
Diffstat (limited to 'server/replaytool/src/main.rs')
| -rw-r--r-- | server/replaytool/src/main.rs | 45 | 
1 files changed, 8 insertions, 37 deletions
diff --git a/server/replaytool/src/main.rs b/server/replaytool/src/main.rs index a9032a61..1e5be601 100644 --- a/server/replaytool/src/main.rs +++ b/server/replaytool/src/main.rs @@ -21,7 +21,11 @@ pub mod record;  pub mod render;  pub mod replay; -use crate::{record::record, render::render, replay::replay}; +use crate::{ +    record::record, +    render::{render, RenderArgs}, +    replay::replay, +};  use clap::Parser;  use hurrycurry_protocol::PacketC;  use log::{info, warn, LevelFilter}; @@ -45,23 +49,7 @@ enum Args {      /// Starts a local server that replays previously recorded sessions      Replay { input: PathBuf },      /// Runs a replay server and the client in movie mode to record that replay -    Render { -        /// Replay file path -        input: PathBuf, -        /// Output video file path passed to godot (must end in either .avi for MJPEG or .png for PNG sequence) -        output: PathBuf, -        #[arg(short = 'r', long, default_value = "30")] -        framerate: usize, -        /// Render without display server; Requires wlheadless-run and mutter -        #[arg(short = 'H', long)] -        headless: bool, -        #[arg(long, default_value = "wayland")] -        video_driver: String, -        #[arg(long, default_value = "vulkan")] -        rendering_driver: String, -        #[arg(long, default_value = "mutter")] -        headless_compositor: String, -    }, +    Render(#[command(flatten)] RenderArgs),  }  #[derive(Serialize, Deserialize)] @@ -118,25 +106,8 @@ async fn main() -> anyhow::Result<()> {                  replay(&ws_listener, &input).await?;              }          } -        Args::Render { -            input, -            output, -            framerate, -            headless, -            rendering_driver, -            headless_compositor, -            video_driver, -        } => { -            render( -                &input, -                &output, -                framerate, -                headless, -                &rendering_driver, -                &video_driver, -                &headless_compositor, -            ) -            .await?; +        Args::Render(a) => { +            render(a).await?;          }      }      Ok(())  |