From bd4e9a271b7c76ec01a1fc39550b9b77d2a0eba4 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Thu, 12 Dec 2024 18:48:31 +0800 Subject: [PATCH 01/33] mux mp4 without ffmpeg cli --- apps/desktop/src-tauri/src/lib.rs | 2 +- crates/export/src/lib.rs | 258 +++++++--------- crates/ffmpeg-cli/src/lib.rs | 16 +- .../gpu-converters/src/rgba_uyvy/shader.wgsl | 33 +++ crates/media/src/data.rs | 7 + crates/media/src/encoders/mod.rs | 2 + crates/media/src/encoders/mp3.rs | 69 +---- crates/media/src/encoders/mp4.rs | 280 ++++++++++++++++++ crates/media/src/pipeline/audio_buffer.rs | 73 +++++ crates/media/src/pipeline/mod.rs | 1 + 10 files changed, 514 insertions(+), 227 deletions(-) create mode 100644 crates/gpu-converters/src/rgba_uyvy/shader.wgsl create mode 100644 crates/media/src/encoders/mp4.rs create mode 100644 crates/media/src/pipeline/audio_buffer.rs diff --git a/apps/desktop/src-tauri/src/lib.rs b/apps/desktop/src-tauri/src/lib.rs index 4f27000c..92794580 100644 --- a/apps/desktop/src-tauri/src/lib.rs +++ b/apps/desktop/src-tauri/src/lib.rs @@ -499,7 +499,7 @@ async fn create_screenshot( decoder.format(), decoder.width(), decoder.height(), - ffmpeg::format::Pixel::RGB24, + ffmpeg::format::Pixel::YUV420P, size.map_or(decoder.width(), |s| s.0), size.map_or(decoder.height(), |s| s.1), ffmpeg::software::scaling::flag::Flags::BILINEAR, diff --git a/crates/export/src/lib.rs b/crates/export/src/lib.rs index d555b748..35ec5f89 100644 --- a/crates/export/src/lib.rs +++ b/crates/export/src/lib.rs @@ -1,8 +1,12 @@ use cap_editor::Segment; +use cap_media::data::{AudioInfo, RawVideoFormat, VideoInfo}; +use cap_media::encoders::MP4Input; +use cap_media::MediaError; use image::{ImageBuffer, Rgba}; use mp4::Mp4Reader; use std::path::Path; use std::{path::PathBuf, sync::Arc}; +use tokio::sync::oneshot; use cap_media::feeds::AudioFrameBuffer; use cap_project::{ProjectConfiguration, RecordingMeta}; @@ -13,7 +17,6 @@ use cap_rendering::{ struct AudioRender { buffer: AudioFrameBuffer, - pipe_tx: tokio::sync::mpsc::Sender>, } const FPS: u32 = 30; @@ -31,6 +34,9 @@ pub enum ExportError { #[error("Rendering: {0}")] Rendering(#[from] cap_rendering::RenderingError), + + #[error("Media/{0}")] + Media(#[from] cap_media::MediaError), } pub async fn export_video_to_file( @@ -78,30 +84,55 @@ pub async fn export_video_to_file( }) .unzip(); - let ffmpeg_handle = tokio::spawn({ + let (frame_tx, frame_rx) = std::sync::mpsc::sync_channel::(4); + let (done_tx, done_rx) = oneshot::channel(); + + let audio_info = if audio_segments + .get(0) + .and_then(|d| d.as_ref().as_ref()) + .is_some() + { + Some( + AudioInfo::new( + cap_media::data::Sample::F32(cap_media::data::Type::Packed), + 48000, + 1, + ) + .map_err(Into::::into)?, + ) + } else { + None + }; + + std::thread::spawn(move || { + let mut encoder = cap_media::encoders::MP4Encoder::init( + "output", + VideoInfo::from_raw(RawVideoFormat::YUYV420, output_size.0, output_size.1, 30), + audio_info, + cap_media::encoders::Output::File(output_path.clone()), + ) + .unwrap(); + + while let Ok(frame) = frame_rx.recv() { + println!("queueing frame"); + encoder.queue_video_frame(frame.video); + if let Some(audio) = frame.audio { + encoder.queue_audio_frame(audio); + } + } + + encoder.finish(); + + done_tx.send(output_path).ok(); + }); + + tokio::spawn({ let project = project.clone(); let project_path = project_path.clone(); async move { println!("Starting FFmpeg output process..."); - let mut ffmpeg = cap_ffmpeg_cli::FFmpeg::new(); - - let audio_dir = tempfile::tempdir().unwrap(); - let video_dir = tempfile::tempdir().unwrap(); - let mut audio = if let Some(audio_data) = - audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) + let mut audio = if let Some(_) = audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) { - let (tx, rx) = tokio::sync::mpsc::channel::>(30); - - let pipe_path = - cap_utils::create_channel_named_pipe(rx, audio_dir.path().join("audio.pipe")); - - ffmpeg.add_input(cap_ffmpeg_cli::FFmpegRawAudioInput { - input: pipe_path, - sample_format: "f64le".to_string(), - sample_rate: audio_data.info.sample_rate, - channels: audio_data.info.channels as u16, - }); - Some(AudioRender { buffer: AudioFrameBuffer::new( audio_segments @@ -109,104 +140,73 @@ pub async fn export_video_to_file( .map(|s| s.as_ref().as_ref().unwrap().clone()) .collect(), ), - pipe_tx: tx, }) } else { None }; - let video_tx = { - let (tx, rx) = tokio::sync::mpsc::channel::>(30); - - let pipe_path = - cap_utils::create_channel_named_pipe(rx, video_dir.path().join("video.pipe")); - - ffmpeg.add_input(cap_ffmpeg_cli::FFmpegRawVideoInput { - width: output_size.0, - height: output_size.1, - fps: 30, - pix_fmt: "rgba", - input: pipe_path, - }); - - tx - }; - - ffmpeg - .command - .args(["-f", "mp4"]) - .args(["-codec:v", "libx264", "-codec:a", "aac"]) - .args(["-preset", "ultrafast"]) - .args(["-pix_fmt", "yuv420p", "-tune", "zerolatency"]) - .arg("-y") - .arg(&output_path); - - let mut ffmpeg_process = ffmpeg.start(); - let mut frame_count = 0; let mut first_frame = None; - loop { - tokio::select! { - result = ffmpeg_process.wait() => { - match result { - Err(e) => Err(ExportError::FFmpeg(e.to_string())), - Ok(status) => { - if status.success() { - Ok(()) - } else { - Err(ExportError::FFmpeg( - ffmpeg_process - .read_stderr() - .await - .unwrap_or_else(|_| "Failed to read FFmpegg error".to_string()) - )) - } - } - }?; + while let Some(frame) = rx_image_data.recv().await { + on_progress(frame_count); + + if frame_count == 0 { + first_frame = Some(frame.clone()); + } + + let audio_frame = if let Some(audio) = &mut audio { + if frame_count == 0 { + audio.buffer.set_playhead(0., project.timeline()); } - frame = rx_image_data.recv() => { - match frame { - Some(frame) => { - on_progress(frame_count); - - if frame_count == 0 { - first_frame = Some(frame.clone()); - } - - if let Some(audio) = &mut audio { - if frame_count == 0 { - audio.buffer.set_playhead(0., project.timeline()); - } - - let audio_info = audio.buffer.info(); - let estimated_samples_per_frame = - f64::from(audio_info.sample_rate) / f64::from(FPS); - let samples = estimated_samples_per_frame.ceil() as usize; - - if let Some((_, frame_data)) = - audio.buffer.next_frame_data(samples, project.timeline()) - { - let frame_samples = frame_data.to_vec(); - audio.pipe_tx.send(frame_samples).await.unwrap(); - } - } - - video_tx.send(frame).await.unwrap(); - - frame_count += 1; - } - None => { - println!("All frames sent to FFmpeg"); - break; - } - } + + let audio_info = audio.buffer.info(); + // dbg!(&audio_info); + let estimated_samples_per_frame = + f64::from(audio_info.sample_rate) / f64::from(FPS); + let samples = estimated_samples_per_frame.ceil() as usize; + + if let Some((_, frame_data)) = + audio.buffer.next_frame_data(samples, project.timeline()) + { + // dbg!(&audio_info); + let mut frame = audio_info.wrap_frame( + &frame_data + .to_vec() + .chunks(8) + .flat_map(|v| { + (f64::from_le_bytes([ + v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7], + ]) as f32) + .to_le_bytes() + }) + .collect::>(), + 0, + ); + frame.set_pts(Some(1_000_000 / 30 * (frame_count as i64))); + Some(frame) + } else { + None } - } + } else { + None + }; + + let mut video_frame = + VideoInfo::from_raw(RawVideoFormat::Rgba, output_size.0, output_size.1, 30) + .wrap_frame(&frame, 0); + video_frame.set_pts(Some(frame_count as i64)); + + frame_tx + .send(MP4Input { + audio: audio_frame, + video: video_frame, + }) + .ok(); + + frame_count += 1; } - ffmpeg_process.stop().await; - // Save the first frame as a screenshot and thumbnail if let Some(frame_data) = first_frame { let width = output_size.0; @@ -248,7 +248,7 @@ pub async fn export_video_to_file( eprintln!("No frames were processed, cannot save screenshot or thumbnail"); } - Ok::<_, ExportError>(output_path) + Ok::<_, ExportError>(()) } }); @@ -263,49 +263,7 @@ pub async fn export_video_to_file( ) .await?; - let output_path = ffmpeg_handle.await??; - - println!("Copying file to {:?}", project_path); - let result_path = project_path.join("output").join("result.mp4"); - // Function to check if the file is a valid MP4 - fn is_valid_mp4(path: &std::path::Path) -> bool { - if let Ok(file) = std::fs::File::open(path) { - let file_size = match file.metadata() { - Ok(metadata) => metadata.len(), - Err(_) => return false, - }; - let reader = std::io::BufReader::new(file); - Mp4Reader::read_header(reader, file_size).is_ok() - } else { - false - } - } - - if output_path != result_path { - println!("Waiting for valid MP4 file at {:?}", output_path); - // Wait for the file to become a valid MP4 - let mut attempts = 0; - while attempts < 10 { - // Wait for up to 60 seconds - if is_valid_mp4(&output_path) { - println!("Valid MP4 file detected after {} seconds", attempts); - match std::fs::copy(&output_path, &result_path) { - Ok(bytes) => { - println!("Successfully copied {} bytes to {:?}", bytes, result_path) - } - Err(e) => eprintln!("Failed to copy file: {:?}", e), - } - break; - } - println!("Attempt {}: File not yet valid, waiting...", attempts + 1); - std::thread::sleep(std::time::Duration::from_secs(1)); - attempts += 1; - } - - if attempts == 10 { - eprintln!("Timeout: Failed to detect a valid MP4 file after 60 seconds"); - } - } + let output_path = done_rx.await.unwrap(); Ok(output_path) } diff --git a/crates/ffmpeg-cli/src/lib.rs b/crates/ffmpeg-cli/src/lib.rs index 6a8bc532..6673e358 100644 --- a/crates/ffmpeg-cli/src/lib.rs +++ b/crates/ffmpeg-cli/src/lib.rs @@ -13,7 +13,7 @@ use tokio::{ pub struct FFmpegProcess { pub ffmpeg_stdin: ChildStdin, - pub ffmpeg_stderr: ChildStderr, + // pub ffmpeg_stderr: ChildStderr, cmd: Child, } @@ -28,7 +28,7 @@ impl FFmpegProcess { let mut cmd = command .stdin(Stdio::piped()) - .stderr(Stdio::piped()) + // .stderr(Stdio::piped()) .spawn() .unwrap_or_else(|e| { println!("Failed to start FFmpeg: {}", e); @@ -41,14 +41,14 @@ impl FFmpegProcess { panic!("Failed to capture FFmpeg stdin"); }); - let ffmpeg_stderr = cmd.stderr.take().unwrap_or_else(|| { - println!("Failed to capture FFmpeg stderr"); - panic!("Failed to capture FFmpeg stderr"); - }); + // let ffmpeg_stderr = cmd.stderr.take().unwrap_or_else(|| { + // println!("Failed to capture FFmpeg stderr"); + // panic!("Failed to capture FFmpeg stderr"); + // }); Self { ffmpeg_stdin, - ffmpeg_stderr, + // ffmpeg_stderr, cmd, } } @@ -69,7 +69,7 @@ impl FFmpegProcess { pub async fn read_stderr(&mut self) -> std::io::Result { let mut err = String::new(); - self.ffmpeg_stderr.read_to_string(&mut err).await?; + // self.ffmpeg_stderr.read_to_string(&mut err).await?; Ok(err) } diff --git a/crates/gpu-converters/src/rgba_uyvy/shader.wgsl b/crates/gpu-converters/src/rgba_uyvy/shader.wgsl new file mode 100644 index 00000000..dbdb7000 --- /dev/null +++ b/crates/gpu-converters/src/rgba_uyvy/shader.wgsl @@ -0,0 +1,33 @@ +@group(0) @binding(0) +var rgba_input: texture_2d; + +@group(0) @binding(1) +var uyvy_output: texture_storage_2d; + +@compute +@workgroup_size(8, 8) +fn main(@builtin(global_invocation_id) global_id: vec3) { + let coords = global_id.xy; + + // Get two adjacent RGBA pixels + let input_coords = coords * vec2(2, 1); + let rgba1 = textureLoad(rgba_input, input_coords, 0); + let rgba2 = textureLoad(rgba_input, input_coords + vec2(1, 0), 0); + + // Convert RGB to YUV for first pixel + let y1 = 0.299 * rgba1.r + 0.587 * rgba1.g + 0.114 * rgba1.b; + let u1 = -0.147 * rgba1.r - 0.289 * rgba1.g + 0.436 * rgba1.b + 0.5; + let v1 = 0.615 * rgba1.r - 0.515 * rgba1.g - 0.100 * rgba1.b + 0.5; + + // Convert RGB to YUV for second pixel + let y2 = 0.299 * rgba2.r + 0.587 * rgba2.g + 0.114 * rgba2.b; + let u2 = -0.147 * rgba2.r - 0.289 * rgba2.g + 0.436 * rgba2.b + 0.5; + let v2 = 0.615 * rgba2.r - 0.515 * rgba2.g - 0.100 * rgba2.b + 0.5; + + // Average the U and V values + let u = (u1 + u2) * 0.5; + let v = (v1 + v2) * 0.5; + + // Store as UYVY + textureStore(uyvy_output, coords, vec4(u, y1, v, y2)); +} diff --git a/crates/media/src/data.rs b/crates/media/src/data.rs index 1c807429..b87203a0 100644 --- a/crates/media/src/data.rs +++ b/crates/media/src/data.rs @@ -177,6 +177,13 @@ impl AudioInfo { frame.set_pts(Some(timestamp)); frame.set_rate(self.sample_rate); + // dbg!( + // samples, + // sample_size, + // frame.plane::(0).len(), + // data.len() + // ); + match self.channels { 0 => unreachable!(), 1 => frame.plane_data_mut(0)[0..data.len()].copy_from_slice(data), diff --git a/crates/media/src/encoders/mod.rs b/crates/media/src/encoders/mod.rs index 27d9ba0c..b47d29db 100644 --- a/crates/media/src/encoders/mod.rs +++ b/crates/media/src/encoders/mod.rs @@ -4,11 +4,13 @@ mod h264; #[cfg(target_os = "macos")] mod h264_avassetwriter; mod mp3; +mod mp4; pub use h264::*; #[cfg(target_os = "macos")] pub use h264_avassetwriter::*; pub use mp3::*; +pub use mp4::*; pub enum Output { File(PathBuf), diff --git a/crates/media/src/encoders/mp3.rs b/crates/media/src/encoders/mp3.rs index 7ac4036a..a7d0cefe 100644 --- a/crates/media/src/encoders/mp3.rs +++ b/crates/media/src/encoders/mp3.rs @@ -7,7 +7,7 @@ use std::collections::VecDeque; use crate::{ data::{AudioInfo, FFAudio, FFPacket, FFRational, PlanarData}, - pipeline::task::PipelineSinkTask, + pipeline::{audio_buffer::AudioBuffer, task::PipelineSinkTask}, MediaError, }; @@ -119,70 +119,3 @@ impl PipelineSinkTask for MP3Encoder { println!("Shutting down {} audio encoding thread", self.tag); } } - -#[derive(Debug)] -struct AudioBuffer { - current_pts: i64, - data: Vec>, - frame_size: usize, - config: AudioInfo, -} - -impl AudioBuffer { - fn new(config: AudioInfo, encoder: &encoder::Audio) -> Self { - let sample_size = config.sample_size(); - let frame_buffer_size = usize::try_from(config.buffer_size).unwrap() * sample_size; - - Self { - current_pts: 0, - data: vec![VecDeque::with_capacity(frame_buffer_size); config.channels], - frame_size: encoder.frame_size().try_into().unwrap(), - config, - } - } - - fn is_empty(&self) -> bool { - self.data[0].is_empty() - } - - fn len(&self) -> usize { - self.data[0].len() - } - - fn consume(&mut self, frame: FFAudio) { - // TODO: Set PTS from frame with ffmpeg::sys::av_rescale_q?? - // if let Some(pts) = frame.pts() { - // self.current_pts = pts; - // } - for channel in 0..self.config.channels { - // if self.current_pts == 0 { - // println!("Data in channel {channel}: {:?}", frame.data(channel)); - // } - self.data[channel].extend(frame.plane_data(channel)); - } - } - - fn next_frame(&mut self) -> Option { - if self.is_empty() { - return None; - } - - let frame_size = self.frame_size * self.config.sample_size(); - - if self.len() < frame_size { - return None; - } - - let mut frame = self.config.empty_frame(self.frame_size); - frame.set_pts(Some(self.current_pts)); - - for channel in 0..self.config.channels { - for (index, byte) in self.data[channel].drain(0..frame_size).enumerate() { - frame.plane_data_mut(channel)[index] = byte; - } - } - - self.current_pts += i64::try_from(frame_size / self.config.sample_size()).unwrap(); - Some(frame) - } -} diff --git a/crates/media/src/encoders/mp4.rs b/crates/media/src/encoders/mp4.rs new file mode 100644 index 00000000..c47a5c03 --- /dev/null +++ b/crates/media/src/encoders/mp4.rs @@ -0,0 +1,280 @@ +use crate::{ + data::{AudioInfo, FFAudio, FFPacket, FFRational, FFVideo, PlanarData, VideoInfo}, + pipeline::{audio_buffer::AudioBuffer, task::PipelineSinkTask}, + MediaError, +}; +use ffmpeg::{ + codec::{codec::Codec, context, encoder}, + format::{self}, + threading::Config, + Dictionary, +}; + +use super::Output; + +pub struct MP4Encoder { + tag: &'static str, + video_encoder: encoder::Video, + audio_encoder: Option, + output_ctx: format::context::Output, + audio_buffer: Option, + last_video_pts: Option, + video_config: VideoInfo, + audio_config: Option, +} + +impl MP4Encoder { + const AUDIO_BITRATE: usize = 128 * 1000; // 128k + + pub fn init( + tag: &'static str, + video_config: VideoInfo, + audio_config: Option, + output: Output, + ) -> Result { + dbg!(&audio_config, video_config); + + let Output::File(destination) = output; + let mut output_ctx = format::output(&destination)?; + + // Setup video encoder + let (video_codec, video_options) = get_video_codec_and_options(&video_config)?; + let mut video_ctx = context::Context::new_with_codec(video_codec); + video_ctx.set_threading(Config::count(4)); + let mut video_enc = video_ctx.encoder().video()?; + + video_enc.set_width(video_config.width); + video_enc.set_height(video_config.height); + video_enc.set_format(video_config.pixel_format); + video_enc.set_time_base(video_config.frame_rate.invert()); + video_enc.set_frame_rate(Some(video_config.frame_rate)); + + dbg!(video_enc.time_base()); + + if video_codec.name() == "h264_videotoolbox" { + video_enc.set_bit_rate(1_200_000); + video_enc.set_max_bit_rate(120_000); + } else { + video_enc.set_bit_rate(8_000_000); + video_enc.set_max_bit_rate(8_000_000); + } + + let video_encoder = video_enc.open_with(video_options)?; + + let audio = if let Some(audio_config) = audio_config { + // Setup audio encoder + let audio_codec = encoder::find(ffmpeg::codec::Id::AAC) + .ok_or(MediaError::TaskLaunch("Could not find AAC codec".into()))?; + let mut audio_ctx = context::Context::new_with_codec(audio_codec); + audio_ctx.set_threading(Config::count(4)); + let mut audio_enc = audio_ctx.encoder().audio()?; + + if !audio_codec + .audio() + .unwrap() + .rates() + .into_iter() + .flatten() + .any(|r| r == audio_config.rate()) + { + return Err(MediaError::TaskLaunch(format!( + "AAC Codec does not support sample rate {}", + audio_config.rate() + ))); + } + + audio_enc.set_bit_rate(Self::AUDIO_BITRATE); + audio_enc.set_rate(audio_config.rate()); + audio_enc.set_format(audio_config.sample_format); + audio_enc.set_channel_layout(audio_config.channel_layout()); + audio_enc.set_time_base(audio_config.time_base); + + Some((audio_enc.open()?, audio_codec, audio_config)) + } else { + None + }; + + // Setup output streams + let mut video_stream = output_ctx.add_stream(video_codec)?; + video_stream.set_time_base(video_config.frame_rate.invert()); + video_stream.set_parameters(&video_encoder); + + dbg!(video_stream.time_base()); + + let (audio_encoder, audio_buffer) = + if let Some((audio_encoder, audio_codec, audio_config)) = audio { + let mut audio_stream = output_ctx.add_stream(audio_codec)?; + audio_stream.set_time_base(FFRational(1, audio_config.rate())); + audio_stream.set_parameters(&audio_encoder); + + let audio_buffer = AudioBuffer::new(audio_config, &audio_encoder); + + Some((audio_encoder, audio_buffer)) + } else { + None + } + .unzip(); + + output_ctx.write_header()?; + + Ok(Self { + tag, + video_encoder, + audio_encoder, + output_ctx, + audio_buffer, + last_video_pts: None, + video_config, + audio_config, + }) + } + + pub fn queue_video_frame(&mut self, frame: FFVideo) { + let mut scaler = ffmpeg::software::converter( + (frame.width(), frame.height()), + frame.format(), + self.video_config.pixel_format, + ) + .unwrap(); + + let mut output = FFVideo::empty(); + + scaler.run(&frame, &mut output).unwrap(); + + output.set_pts(frame.pts()); + + self.video_encoder.send_frame(&output).unwrap(); + self.process_video_packets(); + } + + pub fn queue_audio_frame(&mut self, frame: FFAudio) { + if self.audio_buffer.is_none() || self.audio_encoder.is_none() { + return; + } + + self.audio_buffer.as_mut().unwrap().consume(frame); + while let Some(buffered_frame) = self.audio_buffer.as_mut().unwrap().next_frame() { + self.audio_encoder + .as_mut() + .unwrap() + .send_frame(&buffered_frame) + .unwrap(); + self.process_audio_packets(); + } + } + + fn process_video_packets(&mut self) { + let mut encoded_packet = FFPacket::empty(); + + while self + .video_encoder + .receive_packet(&mut encoded_packet) + .is_ok() + { + encoded_packet.set_stream(0); // Video is stream 0 + encoded_packet.rescale_ts( + self.video_encoder.time_base(), + self.output_ctx.stream(0).unwrap().time_base(), + ); + encoded_packet + .write_interleaved(&mut self.output_ctx) + .unwrap(); + } + } + + fn process_audio_packets(&mut self) { + let mut encoded_packet = FFPacket::empty(); + + if let Some(audio_encoder) = self.audio_encoder.as_mut() { + while audio_encoder.receive_packet(&mut encoded_packet).is_ok() { + encoded_packet.set_stream(1); // Audio is stream 1 + encoded_packet.set_time_base(self.output_ctx.stream(1).unwrap().time_base()); + encoded_packet.rescale_ts( + encoded_packet.time_base(), + self.output_ctx.stream(1).unwrap().time_base(), + ); + encoded_packet + .write_interleaved(&mut self.output_ctx) + .unwrap(); + } + } + } + + pub fn finish(&mut self) { + self.video_encoder.send_eof().unwrap(); + self.process_video_packets(); + + if let Some(audio_encoder) = self.audio_encoder.as_mut() { + audio_encoder.send_eof().unwrap(); + self.process_audio_packets(); + } + + self.output_ctx.write_trailer().unwrap(); + } +} + +// Implementation of AudioBuffer and get_video_codec_and_options remains the same +// ... [Previous AudioBuffer implementation] +// ... [Previous get_video_codec_and_options implementation] + +// You'll need to implement a new task trait for handling both audio and video inputs +pub struct MP4Input { + pub video: FFVideo, + pub audio: Option, +} + +impl PipelineSinkTask for MP4Encoder { + type Input = MP4Input; + + fn run( + &mut self, + ready_signal: crate::pipeline::task::PipelineReadySignal, + input: flume::Receiver, + ) { + println!("Starting {} MP4 encoding thread", self.tag); + ready_signal.send(Ok(())).unwrap(); + + while let Ok(frame) = input.recv() { + self.queue_video_frame(frame.video); + if let Some(audio) = frame.audio { + self.queue_audio_frame(audio); + } + } + + println!("Received last {} frame. Finishing up encoding.", self.tag); + self.finish(); + + println!("Shutting down {} MP4 encoding thread", self.tag); + } +} + +fn get_video_codec_and_options(config: &VideoInfo) -> Result<(Codec, Dictionary), MediaError> { + let encoder_name = { + if cfg!(target_os = "macos") { + "libx264" + // looks terrible rn :( + // "h264_videotoolbox" + } else { + "libx264" + } + }; + if let Some(codec) = encoder::find_by_name(encoder_name) { + let mut options = Dictionary::new(); + + if encoder_name == "h264_videotoolbox" { + // options.set("constant_bit_rate", "true"); + options.set("realtime", "true"); + } else { + let keyframe_interval_secs = 2; + let keyframe_interval = keyframe_interval_secs * config.frame_rate.numerator(); + let keyframe_interval_str = keyframe_interval.to_string(); + + options.set("preset", "ultrafast"); + options.set("tune", "zerolatency"); + } + + return Ok((codec, options)); + } + + Err(MediaError::MissingCodec("H264 video")) +} diff --git a/crates/media/src/pipeline/audio_buffer.rs b/crates/media/src/pipeline/audio_buffer.rs new file mode 100644 index 00000000..54d65f8c --- /dev/null +++ b/crates/media/src/pipeline/audio_buffer.rs @@ -0,0 +1,73 @@ +use std::collections::VecDeque; + +use ffmpeg::encoder; +pub use ffmpeg::util::frame::Audio as FFAudio; + +use crate::data::{AudioInfo, PlanarData}; + +#[derive(Debug)] +pub struct AudioBuffer { + current_pts: i64, + data: Vec>, + frame_size: usize, + config: AudioInfo, +} + +impl AudioBuffer { + pub fn new(config: AudioInfo, encoder: &encoder::Audio) -> Self { + let sample_size = config.sample_size(); + let frame_buffer_size = usize::try_from(config.buffer_size).unwrap() * sample_size; + + Self { + current_pts: 0, + data: vec![VecDeque::with_capacity(frame_buffer_size); config.channels], + frame_size: encoder.frame_size().try_into().unwrap(), + config, + } + } + + fn is_empty(&self) -> bool { + self.data[0].is_empty() + } + + fn len(&self) -> usize { + self.data[0].len() + } + + pub fn consume(&mut self, frame: FFAudio) { + // TODO: Set PTS from frame with ffmpeg::sys::av_rescale_q?? + // if let Some(pts) = frame.pts() { + // self.current_pts = pts; + // } + for channel in 0..self.config.channels { + // if self.current_pts == 0 { + // println!("Data in channel {channel}: {:?}", frame.data(channel)); + // } + self.data[channel].extend(frame.plane_data(channel)); + } + } + + pub fn next_frame(&mut self) -> Option { + if self.is_empty() { + return None; + } + + let frame_size = self.frame_size * self.config.sample_size(); + + if self.len() < frame_size { + return None; + } + + let mut frame = self.config.empty_frame(self.frame_size); + frame.set_pts(Some(self.current_pts)); + + for channel in 0..self.config.channels { + for (index, byte) in self.data[channel].drain(0..frame_size).enumerate() { + frame.plane_data_mut(channel)[index] = byte; + } + } + + self.current_pts += i64::try_from(frame_size / self.config.sample_size()).unwrap(); + Some(frame) + } +} diff --git a/crates/media/src/pipeline/mod.rs b/crates/media/src/pipeline/mod.rs index 685aa6af..d3a94da5 100644 --- a/crates/media/src/pipeline/mod.rs +++ b/crates/media/src/pipeline/mod.rs @@ -1,6 +1,7 @@ use indexmap::IndexMap; use std::thread::JoinHandle; +pub mod audio_buffer; pub mod builder; pub mod clock; pub mod control; From ee56001b4bf54a53054588d83a70ff7fa7a012d4 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Fri, 13 Dec 2024 18:02:38 +0800 Subject: [PATCH 02/33] manual zoom --- Cargo.lock | 24 ++ apps/desktop/src-tauri/src/recording.rs | 58 ++-- .../src/routes/editor/ConfigSidebar.tsx | 84 +++++- apps/desktop/src/routes/editor/Player.tsx | 6 +- apps/desktop/src/routes/editor/Timeline.tsx | 35 ++- .../routes/editor/editorInstanceContext.ts | 5 +- apps/desktop/src/routes/editor/ui.tsx | 4 +- apps/desktop/src/utils/socket.ts | 24 +- apps/desktop/src/utils/tauri.ts | 3 +- crates/editor/src/editor.rs | 6 +- crates/editor/src/editor_instance.rs | 11 +- crates/export/src/lib.rs | 6 + crates/ffmpeg-cli/src/lib.rs | 18 +- crates/project/src/configuration.rs | 11 +- crates/rendering/Cargo.toml | 3 + crates/rendering/src/lib.rs | 280 ++++++++++++++---- crates/utils/Cargo.toml | 1 + crates/utils/src/lib.rs | 48 +-- 18 files changed, 482 insertions(+), 145 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f993a72b..3ef14003 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -886,6 +886,7 @@ dependencies = [ "futures-intrusive", "image 0.25.5", "nix 0.29.0", + "pretty_assertions", "serde", "specta", "thiserror 1.0.63", @@ -897,6 +898,7 @@ dependencies = [ name = "cap-utils" version = "0.1.0" dependencies = [ + "futures", "nix 0.29.0", "tokio", "uuid", @@ -1808,6 +1810,12 @@ dependencies = [ "x11", ] +[[package]] +name = "diff" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" + [[package]] name = "digest" version = "0.10.7" @@ -4987,6 +4995,16 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" +[[package]] +name = "pretty_assertions" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" +dependencies = [ + "diff", + "yansi", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -8783,6 +8801,12 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "539a77ee7c0de333dcc6da69b177380a0b81e0dacfa4f7344c465a36871ee601" +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + [[package]] name = "yansi-term" version = "0.1.2" diff --git a/apps/desktop/src-tauri/src/recording.rs b/apps/desktop/src-tauri/src/recording.rs index da093dfa..42b3f03e 100644 --- a/apps/desktop/src-tauri/src/recording.rs +++ b/apps/desktop/src-tauri/src/recording.rs @@ -311,35 +311,35 @@ fn generate_zoom_segments_from_clicks( const ZOOM_SEGMENT_AFTER_CLICK_PADDING: f64 = 1.5; // single-segment only - for click in &recording.cursor_data.clicks { - let time = click.process_time_ms / 1000.0; - - if segments.last().is_none() { - segments.push(ZoomSegment { - start: (click.process_time_ms / 1000.0 - (ZOOM_DURATION + 0.2)).max(0.0), - end: click.process_time_ms / 1000.0 + ZOOM_SEGMENT_AFTER_CLICK_PADDING, - amount: 2.0, - }); - } else { - let last_segment = segments.last_mut().unwrap(); - - if click.down { - if last_segment.end > time { - last_segment.end = - (time + ZOOM_SEGMENT_AFTER_CLICK_PADDING).min(recordings.duration()); - } else if time < max_duration - ZOOM_DURATION { - segments.push(ZoomSegment { - start: (time - ZOOM_DURATION).max(0.0), - end: time + ZOOM_SEGMENT_AFTER_CLICK_PADDING, - amount: 2.0, - }); - } - } else { - last_segment.end = - (time + ZOOM_SEGMENT_AFTER_CLICK_PADDING).min(recordings.duration()); - } - } - } + // for click in &recording.cursor_data.clicks { + // let time = click.process_time_ms / 1000.0; + + // if segments.last().is_none() { + // segments.push(ZoomSegment { + // start: (click.process_time_ms / 1000.0 - (ZOOM_DURATION + 0.2)).max(0.0), + // end: click.process_time_ms / 1000.0 + ZOOM_SEGMENT_AFTER_CLICK_PADDING, + // amount: 2.0, + // }); + // } else { + // let last_segment = segments.last_mut().unwrap(); + + // if click.down { + // if last_segment.end > time { + // last_segment.end = + // (time + ZOOM_SEGMENT_AFTER_CLICK_PADDING).min(recordings.duration()); + // } else if time < max_duration - ZOOM_DURATION { + // segments.push(ZoomSegment { + // start: (time - ZOOM_DURATION).max(0.0), + // end: time + ZOOM_SEGMENT_AFTER_CLICK_PADDING, + // amount: 2.0, + // }); + // } + // } else { + // last_segment.end = + // (time + ZOOM_SEGMENT_AFTER_CLICK_PADDING).min(recordings.duration()); + // } + // } + // } segments } diff --git a/apps/desktop/src/routes/editor/ConfigSidebar.tsx b/apps/desktop/src/routes/editor/ConfigSidebar.tsx index 8cc05bf3..9a390f60 100644 --- a/apps/desktop/src/routes/editor/ConfigSidebar.tsx +++ b/apps/desktop/src/routes/editor/ConfigSidebar.tsx @@ -626,7 +626,7 @@ export function ConfigSidebar() { return (
@@ -638,6 +638,7 @@ export function ConfigSidebar() {
{ const index = value().selection.index; @@ -678,6 +679,87 @@ export function ConfigSidebar() { step={0.001} /> + }> + + + setSelectedTab(item.id)} + disabled + > + Auto + + setSelectedTab(item.id)} + > + Manual + + +
+ + + + { + const m = value().segment.mode; + if (m === "auto") return; + return m.manual; + })()} + > + {(mode) => ( +
+
{ + if (e.buttons === 1) { + const bounds = + e.currentTarget.getBoundingClientRect(); + + setProject( + "timeline", + "zoomSegments", + value().selection.index, + "mode", + "manual", + { + x: Math.max( + Math.min( + (e.clientX - bounds.left) / + bounds.width, + 1 + ), + 0 + ), + y: Math.max( + Math.min( + (e.clientY - bounds.top) / + bounds.height, + 1 + ), + 0 + ), + } + ); + } + }} + > +
+
+
+ )} + + + +
); }} diff --git a/apps/desktop/src/routes/editor/Player.tsx b/apps/desktop/src/routes/editor/Player.tsx index 9981dbba..a9bfafae 100644 --- a/apps/desktop/src/routes/editor/Player.tsx +++ b/apps/desktop/src/routes/editor/Player.tsx @@ -44,7 +44,7 @@ export function Player() { const frame = latestFrame(); if (!frame) return; const ctx = canvasRef.getContext("2d"); - ctx?.putImageData(frame, 0, 0); + ctx?.putImageData(frame.data, 0, 0); }); const [canvasContainerRef, setCanvasContainerRef] = @@ -172,7 +172,7 @@ export function Player() { }; const frameAspect = () => - currentFrame().width / currentFrame().height; + currentFrame().width / currentFrame().data.height; const size = () => { if (frameAspect() < containerAspect()) { @@ -210,7 +210,7 @@ export function Player() { ref={canvasRef} id="canvas" width={currentFrame().width} - height={currentFrame().height} + height={currentFrame().data.height} /> ); }} diff --git a/apps/desktop/src/routes/editor/Timeline.tsx b/apps/desktop/src/routes/editor/Timeline.tsx index d4255331..11f0e41c 100644 --- a/apps/desktop/src/routes/editor/Timeline.tsx +++ b/apps/desktop/src/routes/editor/Timeline.tsx @@ -6,6 +6,7 @@ import { For, Show, createContext, + batch, createRoot, createSignal, onMount, @@ -404,18 +405,28 @@ export function Timeline() { if (time === undefined) return; e.stopPropagation(); - setProject( - "timeline", - "zoomSegments", - produce((zoomSegments) => { - zoomSegments ??= []; - zoomSegments.push({ - start: time, - end: time + 1, - amount: 1.5, - }); - }) - ); + batch(() => { + setProject("timeline", "zoomSegments", (v) => v ?? []); + setProject( + "timeline", + "zoomSegments", + produce((zoomSegments) => { + zoomSegments ??= []; + zoomSegments.push({ + start: time, + end: time + 1, + amount: 1.5, + mode: { + manual: { + x: 0.5, + y: 0.5, + }, + }, + }); + console.log(zoomSegments); + }) + ); + }); }} > { - const [latestFrame, setLatestFrame] = createLazySignal(); + const [latestFrame, setLatestFrame] = createLazySignal<{ + width: number; + data: ImageData; + }>(); const [editorInstance] = createResource(async () => { const instance = await commands.createEditorInstance(props.videoId); diff --git a/apps/desktop/src/routes/editor/ui.tsx b/apps/desktop/src/routes/editor/ui.tsx index 1703a6b8..36fc74a5 100644 --- a/apps/desktop/src/routes/editor/ui.tsx +++ b/apps/desktop/src/routes/editor/ui.tsx @@ -16,7 +16,9 @@ import { } from "solid-js"; import { useEditorContext } from "./context"; -export function Field(props: ParentProps<{ name: string; icon: JSX.Element }>) { +export function Field( + props: ParentProps<{ name: string; icon?: JSX.Element }> +) { return (
diff --git a/apps/desktop/src/utils/socket.ts b/apps/desktop/src/utils/socket.ts index fc2bbe5f..fc1c5d64 100644 --- a/apps/desktop/src/utils/socket.ts +++ b/apps/desktop/src/utils/socket.ts @@ -3,7 +3,7 @@ import { createResource, createSignal } from "solid-js"; export function createImageDataWS( url: string, - onmessage: (data: ImageData) => void + onmessage: (data: { width: number; data: ImageData }) => void ): [Omit, () => boolean] { const [isConnected, setIsConnected] = createSignal(false); const ws = createWS(url); @@ -23,13 +23,19 @@ export function createImageDataWS( setIsConnected(false); }); + // let lastTime = Date.now(); ws.binaryType = "arraybuffer"; ws.onmessage = (event) => { + // console.log(Date.now() - lastTime); + + // onmessage(new ImageData(new Uint8ClampedArray([0, 0, 0, 0]), 1, 1)); + const buffer = event.data as ArrayBuffer; const clamped = new Uint8ClampedArray(buffer); const widthArr = clamped.slice(clamped.length - 4); const heightArr = clamped.slice(clamped.length - 8, clamped.length - 4); + const strideArr = clamped.slice(clamped.length - 12, clamped.length - 8); const width = widthArr[0] + @@ -41,14 +47,24 @@ export function createImageDataWS( (heightArr[1] << 8) + (heightArr[2] << 16) + (heightArr[3] << 24); + const stride = + (strideArr[0] + + (strideArr[1] << 8) + + (strideArr[2] << 16) + + (strideArr[3] << 24)) / + 4; + + console.log({ stride, width, height }); const imageData = new ImageData( - clamped.slice(0, clamped.length - 8), - width, + clamped.slice(0, clamped.length - 12), + stride, height ); - onmessage(imageData); + // lastTime = Date.now(); + + onmessage({ width, data: imageData }); }; return [ws, isConnected]; diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index a1be7e26..a8183d8b 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -286,7 +286,8 @@ export type Video = { duration: number; width: number; height: number } export type VideoRecordingMetadata = { duration: number; size: number } export type VideoType = "screen" | "output" export type XY = { x: T; y: T } -export type ZoomSegment = { start: number; end: number; amount: number } +export type ZoomMode = "auto" | { manual: { x: number; y: number } } +export type ZoomSegment = { start: number; end: number; amount: number; mode: ZoomMode } /** tauri-specta globals **/ diff --git a/crates/editor/src/editor.rs b/crates/editor/src/editor.rs index 03b6f381..cae9659f 100644 --- a/crates/editor/src/editor.rs +++ b/crates/editor/src/editor.rs @@ -165,8 +165,8 @@ impl Renderer { let frame_tx = self.frame_tx.clone(); frame_task = Some(tokio::spawn(async move { - let time_instant = Instant::now(); - let frame = produce_frame( + let now = Instant::now(); + let (frame, stride) = produce_frame( &render_constants, &screen_frame, &camera_frame, @@ -176,13 +176,13 @@ impl Renderer { ) .await .unwrap(); - // println!("produced frame in {:?}", time_instant.elapsed()); frame_tx .try_send(SocketMessage::Frame { data: frame, width: uniforms.output_size.0, height: uniforms.output_size.1, + stride, }) .ok(); finished.send(()).ok(); diff --git a/crates/editor/src/editor_instance.rs b/crates/editor/src/editor_instance.rs index db9b969e..2dde4823 100644 --- a/crates/editor/src/editor_instance.rs +++ b/crates/editor/src/editor_instance.rs @@ -8,6 +8,7 @@ use cap_rendering::{ }; use std::ops::Deref; use std::sync::Mutex as StdMutex; +use std::time::Instant; use std::{path::PathBuf, sync::Arc}; use tokio::sync::{mpsc, watch, Mutex}; @@ -277,6 +278,8 @@ impl EditorInstance { let project = self.project_config.1.borrow().clone(); + let now = Instant::now(); + let Some((time, segment)) = project .timeline .as_ref() @@ -288,6 +291,8 @@ impl EditorInstance { let segment = &self.segments[segment.unwrap_or(0) as usize]; + let now = Instant::now(); + let Some((screen_frame, camera_frame)) = segment .decoders .get_frames((time * FPS as f64) as u32) @@ -355,8 +360,9 @@ async fn create_frames_ws(frame_rx: mpsc::Receiver) -> (u16, mpsc }; match chunk { - SocketMessage::Frame { width, height, mut data } => { - data.extend_from_slice(&height.to_le_bytes()); + SocketMessage::Frame { width, height, mut data, stride } => { + data.extend_from_slice(&stride.to_le_bytes()); + data.extend_from_slice(&height.to_le_bytes()); data.extend_from_slice(&width.to_le_bytes()); socket.send(Message::Binary(data)).await.unwrap(); @@ -406,6 +412,7 @@ pub enum SocketMessage { data: Vec, width: u32, height: u32, + stride: u32, }, } diff --git a/crates/export/src/lib.rs b/crates/export/src/lib.rs index d555b748..bdbe5a02 100644 --- a/crates/export/src/lib.rs +++ b/crates/export/src/lib.rs @@ -149,6 +149,7 @@ pub async fn export_video_to_file( loop { tokio::select! { result = ffmpeg_process.wait() => { + dbg!(frame_count, &result); match result { Err(e) => Err(ExportError::FFmpeg(e.to_string())), Ok(status) => { @@ -166,6 +167,7 @@ pub async fn export_video_to_file( }?; } frame = rx_image_data.recv() => { + dbg!(frame_count, frame.is_some()); match frame { Some(frame) => { on_progress(frame_count); @@ -192,8 +194,12 @@ pub async fn export_video_to_file( } } + println!("sending frame {frame_count} to ffmpeg tx"); + video_tx.send(frame).await.unwrap(); + println!("sent frame {frame_count} to ffmpeg tx"); + frame_count += 1; } None => { diff --git a/crates/ffmpeg-cli/src/lib.rs b/crates/ffmpeg-cli/src/lib.rs index 6a8bc532..686b0705 100644 --- a/crates/ffmpeg-cli/src/lib.rs +++ b/crates/ffmpeg-cli/src/lib.rs @@ -13,7 +13,7 @@ use tokio::{ pub struct FFmpegProcess { pub ffmpeg_stdin: ChildStdin, - pub ffmpeg_stderr: ChildStderr, + // pub ffmpeg_stderr: ChildStderr, cmd: Child, } @@ -28,7 +28,7 @@ impl FFmpegProcess { let mut cmd = command .stdin(Stdio::piped()) - .stderr(Stdio::piped()) + // .stderr(Stdio::piped()) .spawn() .unwrap_or_else(|e| { println!("Failed to start FFmpeg: {}", e); @@ -41,14 +41,14 @@ impl FFmpegProcess { panic!("Failed to capture FFmpeg stdin"); }); - let ffmpeg_stderr = cmd.stderr.take().unwrap_or_else(|| { - println!("Failed to capture FFmpeg stderr"); - panic!("Failed to capture FFmpeg stderr"); - }); + // let ffmpeg_stderr = cmd.stderr.take().unwrap_or_else(|| { + // println!("Failed to capture FFmpeg stderr"); + // panic!("Failed to capture FFmpeg stderr"); + // }); Self { ffmpeg_stdin, - ffmpeg_stderr, + // ffmpeg_stderr, cmd, } } @@ -69,7 +69,7 @@ impl FFmpegProcess { pub async fn read_stderr(&mut self) -> std::io::Result { let mut err = String::new(); - self.ffmpeg_stderr.read_to_string(&mut err).await?; + // self.ffmpeg_stderr.read_to_string(&mut err).await?; Ok(err) } @@ -279,7 +279,7 @@ impl Default for FFmpeg { impl FFmpeg { pub fn new() -> Self { let mut command = Command::new(relative_command_path("ffmpeg").unwrap()); - command.arg("-hide_banner"); + // command.arg("-hide_banner"); Self { command, diff --git a/crates/project/src/configuration.rs b/crates/project/src/configuration.rs index 3197b0d8..022ceeff 100644 --- a/crates/project/src/configuration.rs +++ b/crates/project/src/configuration.rs @@ -283,13 +283,20 @@ impl TimelineSegment { } } -#[derive(Type, Serialize, Deserialize, Clone, Debug, Default)] +#[derive(Type, Serialize, Deserialize, Clone, Debug)] #[serde(rename_all = "camelCase")] pub struct ZoomSegment { pub start: f64, pub end: f64, pub amount: f64, - // pub mode: Z + pub mode: ZoomMode, +} + +#[derive(Type, Serialize, Deserialize, Clone, Debug)] +#[serde(rename_all = "camelCase")] +pub enum ZoomMode { + Auto, + Manual { x: f32, y: f32 }, } #[derive(Type, Serialize, Deserialize, Clone, Debug, Default)] diff --git a/crates/rendering/Cargo.toml b/crates/rendering/Cargo.toml index 383bc8be..5cf21305 100644 --- a/crates/rendering/Cargo.toml +++ b/crates/rendering/Cargo.toml @@ -22,3 +22,6 @@ thiserror.workspace = true [target.'cfg(unix)'.dependencies] nix = { version = "0.29.0", features = ["fs"] } + +[dev-dependencies] +pretty_assertions = "1.4.1" diff --git a/crates/rendering/src/lib.rs b/crates/rendering/src/lib.rs index b344ac22..0faafba6 100644 --- a/crates/rendering/src/lib.rs +++ b/crates/rendering/src/lib.rs @@ -15,9 +15,9 @@ use wgpu::{CommandEncoder, COPY_BYTES_PER_ROW_ALIGNMENT}; use cap_project::{ AspectRatio, BackgroundSource, CameraXPosition, CameraYPosition, Content, Crop, CursorAnimationStyle, CursorClickEvent, CursorData, CursorEvents, CursorMoveEvent, - ProjectConfiguration, RecordingMeta, FAST_SMOOTHING_SAMPLES, FAST_VELOCITY_THRESHOLD, - REGULAR_SMOOTHING_SAMPLES, REGULAR_VELOCITY_THRESHOLD, SLOW_SMOOTHING_SAMPLES, - SLOW_VELOCITY_THRESHOLD, XY, + ProjectConfiguration, RecordingMeta, ZoomSegment, FAST_SMOOTHING_SAMPLES, + FAST_VELOCITY_THRESHOLD, REGULAR_SMOOTHING_SAMPLES, REGULAR_VELOCITY_THRESHOLD, + SLOW_SMOOTHING_SAMPLES, SLOW_VELOCITY_THRESHOLD, XY, }; use image::GenericImageView; @@ -147,8 +147,6 @@ pub async fn render_video_to_channel( let constants = RenderVideoConstants::new(options, meta).await?; let recordings = ProjectRecordings::new(meta); - println!("Setting up FFmpeg input for screen recording..."); - ffmpeg::init().unwrap(); let start_time = Instant::now(); @@ -158,6 +156,9 @@ pub async fn render_video_to_channel( .map(|t| t.duration()) .unwrap_or(recordings.duration()); + println!("export duration: {duration}"); + println!("export duration: {duration}"); + let mut frame_number = 0; let background = Background::from(project.background.source.clone()); @@ -186,6 +187,8 @@ pub async fn render_video_to_channel( if let Some((screen_frame, camera_frame)) = segment.decoders.get_frames((time * 30.0) as u32).await { + println!("frame {frame_number} decoded"); + let frame = produce_frame( &constants, &screen_frame, @@ -196,7 +199,11 @@ pub async fn render_video_to_channel( ) .await?; - sender.send(frame).await?; + println!("frame {frame_number} produced"); + + sender.send(frame.0).await?; + + println!("frame {frame_number} sent"); } else { println!("no decoder frames: {:?}", (time, segment_i)); }; @@ -247,7 +254,13 @@ impl RenderVideoConstants { .await .ok_or(RenderingError::NoAdapter)?; let (device, queue) = adapter - .request_device(&wgpu::DeviceDescriptor::default(), None) + .request_device( + &wgpu::DeviceDescriptor { + required_features: wgpu::Features::MAPPABLE_PRIMARY_BUFFERS, + ..Default::default() + }, + None, + ) .await?; // Pass project_path to load_cursor_textures @@ -499,11 +512,11 @@ impl ProjectUniforms { ); let zoom_keyframes = ZoomKeyframes::new(project); - let current_zoom = zoom_keyframes.get_amount(time as f64); - let prev_zoom = zoom_keyframes.get_amount((time - 1.0 / 30.0) as f64); + let current_zoom = zoom_keyframes.interpolate(time as f64); + let prev_zoom = zoom_keyframes.interpolate((time - 1.0 / 30.0) as f64); let velocity = if current_zoom != prev_zoom { - let scale_change = (current_zoom - prev_zoom) as f32; + let scale_change = (current_zoom.0 - prev_zoom.0) as f32; // Reduce the velocity scale from 0.05 to 0.02 [ (scale_change * output_size.0 as f32) * 0.02, // Reduced from 0.05 @@ -519,24 +532,35 @@ impl ProjectUniforms { 0.0 }; - let zoom_origin_uv = if let Some(cursor_position) = cursor_position { - (zoom_keyframes.get_amount(time as f64), cursor_position) - } else { - (1.0, Coord::new(XY { x: 0.0, y: 0.0 })) - }; - let crop = Self::get_crop(options, project); - let zoom_origin = if let Some(cursor_position) = cursor_position { - cursor_position + let (zoom_amount, zoom_origin) = { + let (amount, position) = zoom_keyframes.interpolate(time as f64); + + let origin = match position { + ZoomPosition::Manual { x, y } => Coord::::new(XY { + x: x as f64, + y: y as f64, + }) .to_raw_display_space(options) - .to_cropped_display_space(options, project) - } else { - let center = XY::new( - options.screen_size.x as f64 / 2.0, - options.screen_size.y as f64 / 2.0, - ); - Coord::::new(center).to_cropped_display_space(options, project) + .to_cropped_display_space(options, project), + ZoomPosition::Cursor => { + if let Some(cursor_position) = cursor_position { + cursor_position + .to_raw_display_space(options) + .to_cropped_display_space(options, project) + } else { + let center = XY::new( + options.screen_size.x as f64 / 2.0, + options.screen_size.y as f64 / 2.0, + ); + Coord::::new(center) + .to_cropped_display_space(options, project) + } + } + }; + + (amount, origin) }; let (display, zoom) = { @@ -561,7 +585,7 @@ impl ProjectUniforms { .clamp(display_offset.coord, end.coord); let zoom = Zoom { - amount: zoom_keyframes.get_amount(time as f64), + amount: zoom_amount, zoom_origin: screen_scale_origin, // padding: screen_scale_origin, }; @@ -606,7 +630,7 @@ impl ProjectUniforms { // Calculate camera size based on zoom let base_size = project.camera.size / 100.0; - let zoom_amount = zoom_keyframes.get_amount(time as f64) as f32; + let zoom_amount = zoom_amount as f32; let zoomed_size = if zoom_amount > 1.0 { // Get the zoom size as a percentage (0-1 range) let zoom_size = project.camera.zoom_size.unwrap_or(20.0) / 100.0; @@ -650,7 +674,7 @@ impl ProjectUniforms { // Calculate camera motion blur based on zoom transition let camera_motion_blur = { let base_blur = project.motion_blur.unwrap_or(0.2); - let zoom_delta = (current_zoom - prev_zoom).abs() as f32; + let zoom_delta = (current_zoom.0 - prev_zoom.0).abs() as f32; // Calculate a smooth transition factor let transition_speed = 30.0f32; // Frames per second @@ -694,53 +718,183 @@ impl ProjectUniforms { } } -#[derive(Debug)] +#[derive(Debug, PartialEq)] pub struct ZoomKeyframe { time: f64, - amount: f64, + scale: f64, + position: ZoomPosition, } -#[derive(Debug)] +#[derive(Debug, PartialEq, Clone, Copy)] +pub enum ZoomPosition { + Cursor, + Manual { x: f32, y: f32 }, +} +#[derive(Debug, PartialEq)] pub struct ZoomKeyframes(Vec); pub const ZOOM_DURATION: f64 = 0.6; +#[cfg(test)] +mod test { + use super::*; + + #[test] + fn zoom_keyframes() { + let segments = [ZoomSegment { + start: 0.5, + end: 1.5, + amount: 1.5, + mode: cap_project::ZoomMode::Manual { x: 0.2, y: 0.2 }, + }]; + + let keyframes = ZoomKeyframes::from_zoom_segments(&segments); + + pretty_assertions::assert_eq!( + keyframes, + ZoomKeyframes(vec![ + ZoomKeyframe { + time: 0.0, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.0, y: 0.0 } + }, + ZoomKeyframe { + time: 0.5, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + }, + ZoomKeyframe { + time: 0.5 + ZOOM_DURATION, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + }, + ZoomKeyframe { + time: 1.5, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + }, + ZoomKeyframe { + time: 1.5 + ZOOM_DURATION, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + } + ]) + ); + + let segments = [ + ZoomSegment { + start: 0.5, + end: 1.5, + amount: 1.5, + mode: cap_project::ZoomMode::Manual { x: 0.2, y: 0.2 }, + }, + ZoomSegment { + start: 1.5, + end: 2.5, + amount: 1.5, + mode: cap_project::ZoomMode::Manual { x: 0.8, y: 0.8 }, + }, + ]; + + let keyframes = ZoomKeyframes::from_zoom_segments(&segments); + + pretty_assertions::assert_eq!( + keyframes, + ZoomKeyframes(vec![ + ZoomKeyframe { + time: 0.0, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.0, y: 0.0 } + }, + ZoomKeyframe { + time: 0.5, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + }, + ZoomKeyframe { + time: 0.5 + ZOOM_DURATION, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + }, + ZoomKeyframe { + time: 1.5, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + }, + ZoomKeyframe { + time: 1.5 + ZOOM_DURATION, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.8, y: 0.8 } + }, + ZoomKeyframe { + time: 2.5, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.8, y: 0.8 } + } + ]) + ); + } +} + impl ZoomKeyframes { pub fn new(config: &ProjectConfiguration) -> Self { let Some(zoom_segments) = config.timeline().map(|t| &t.zoom_segments) else { return Self(vec![]); }; - if zoom_segments.is_empty() { + Self::from_zoom_segments(zoom_segments) + } + + fn from_zoom_segments(segments: &[ZoomSegment]) -> Self { + if segments.is_empty() { return Self(vec![]); } let mut keyframes = vec![]; - for segment in zoom_segments { + if segments[0].start != 0.0 { + keyframes.push(ZoomKeyframe { + time: 0.0, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.0, y: 0.0 }, + }); + } + + for segment in segments { + let position = match segment.mode { + cap_project::ZoomMode::Auto => ZoomPosition::Cursor, + cap_project::ZoomMode::Manual { x, y } => ZoomPosition::Manual { x, y }, + }; + keyframes.push(ZoomKeyframe { time: segment.start, - amount: 1.0, + scale: 1.0, + position, }); keyframes.push(ZoomKeyframe { time: segment.start + ZOOM_DURATION, - amount: segment.amount, + scale: segment.amount, + position, }); keyframes.push(ZoomKeyframe { time: segment.end, - amount: segment.amount, + scale: segment.amount, + position, }); keyframes.push(ZoomKeyframe { time: segment.end + ZOOM_DURATION, - amount: 1.0, + scale: 1.0, + position, }); } Self(keyframes) } - pub fn get_amount(&self, time: f64) -> f64 { + pub fn interpolate(&self, time: f64) -> (f64, ZoomPosition) { + let default = (1.0, ZoomPosition::Manual { x: 0.0, y: 0.0 }); + if !FLAGS.zoom { - return 1.0; + return default; } let prev_index = self @@ -751,13 +905,13 @@ impl ZoomKeyframes { .map(|p| self.0.len() - 1 - p); let Some(prev_index) = prev_index else { - return 1.0; + return default; }; let next_index = prev_index + 1; let Some((prev, next)) = self.0.get(prev_index).zip(self.0.get(next_index)) else { - return 1.0; + return default; }; let keyframe_length = next.time - prev.time; @@ -766,7 +920,17 @@ impl ZoomKeyframes { let t = delta_time / keyframe_length; let t = t.powf(0.5); - prev.amount + (next.amount - prev.amount) * t + let position = match (&prev.position, &next.position) { + (ZoomPosition::Manual { x: x1, y: y1 }, ZoomPosition::Manual { x: x2, y: y2 }) => { + ZoomPosition::Manual { + x: x1 + (x2 - x1) * t as f32, + y: y1 + (y2 - y1) * t as f32, + } + } + _ => ZoomPosition::Manual { x: 0.0, y: 0.0 }, + }; + + (prev.scale + (next.scale - prev.scale) * t, position) } } @@ -777,7 +941,7 @@ pub async fn produce_frame( background: Background, uniforms: &ProjectUniforms, time: f32, -) -> Result, RenderingError> { +) -> Result<(Vec, u32), RenderingError> { let mut encoder = constants.device.create_command_encoder( &(wgpu::CommandEncoderDescriptor { label: Some("Render Encoder"), @@ -900,16 +1064,16 @@ pub async fn produce_frame( output_is_left = !output_is_left; } - // if FLAGS.zoom { - // Then render the cursor - draw_cursor( - constants, - uniforms, - time, - &mut encoder, - get_either(texture_views, !output_is_left), - ); - // } + if FLAGS.zoom { + // Then render the cursor + draw_cursor( + constants, + uniforms, + time, + &mut encoder, + get_either(texture_views, !output_is_left), + ); + } // camera if let (Some(camera_size), Some(camera_frame), Some(uniforms)) = ( @@ -1041,18 +1205,14 @@ pub async fn produce_frame( .ok_or(RenderingError::BufferMapWaitingFailed)??; let data = buffer_slice.get_mapped_range(); - let padded_data: Vec = data.to_vec(); // Ensure the type is Vec - let mut image_data = - Vec::with_capacity((uniforms.output_size.0 * uniforms.output_size.1 * 4) as usize); - for chunk in padded_data.chunks(padded_bytes_per_row as usize) { - image_data.extend_from_slice(&chunk[..unpadded_bytes_per_row as usize]); - } + + let image_data = data.to_vec(); // Unmap the buffer drop(data); output_buffer.unmap(); - Ok(image_data) + Ok((image_data, padded_bytes_per_row)) } fn draw_cursor( diff --git a/crates/utils/Cargo.toml b/crates/utils/Cargo.toml index 644dab0f..668d7971 100644 --- a/crates/utils/Cargo.toml +++ b/crates/utils/Cargo.toml @@ -19,5 +19,6 @@ windows = { version = "0.58.0", features = [ ] } [dependencies] +futures = "0.3.31" tokio = { workspace = true, features = ["net"] } uuid = "1.11.0" diff --git a/crates/utils/src/lib.rs b/crates/utils/src/lib.rs index 567b04fd..d9138bfe 100644 --- a/crates/utils/src/lib.rs +++ b/crates/utils/src/lib.rs @@ -1,4 +1,6 @@ -use std::{ffi::OsString, fs::OpenOptions, path::PathBuf}; +use futures::FutureExt; +use std::{ffi::OsString, fs::OpenOptions, io::Write, path::PathBuf}; +// use tokio::{fs::OpenOptions, io::AsyncWriteExt}; #[cfg(windows)] pub fn get_last_win32_error_formatted() -> String { @@ -46,26 +48,38 @@ pub fn create_channel_named_pipe( ) -> OsString { #[cfg(unix)] { - use std::io::Write; - create_named_pipe(&unix_path).unwrap(); let path = unix_path.clone(); - tokio::spawn(async move { - let mut file = OpenOptions::new() - .write(true) - .create(false) - .truncate(true) - .open(&path)?; - println!("video pipe opened"); - - while let Some(bytes) = rx.recv().await { - file.write_all(&bytes)?; - } + tokio::spawn( + async move { + let mut file = OpenOptions::new() + .write(true) + .create(false) + .truncate(true) + .open(&path) + // .await + .unwrap(); + println!("video pipe opened"); - println!("done writing to video pipe"); - Ok::<(), std::io::Error>(()) - }); + println!("receiving frame for channel"); + while let Some(bytes) = rx.recv().await { + println!("received frame, writing bytes"); + file.write_all(&bytes) + // .await + .unwrap(); + println!("bytes written"); + } + + println!("done writing to video pipe"); + Ok::<(), std::io::Error>(()) + } + .then(|result| async { + if let Err(e) = result { + eprintln!("error writing to video pipe: {}", e); + } + }), + ); unix_path.into_os_string() } From e71c3feb042ef2f2e22d11229fe05cf8cf53030c Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Fri, 13 Dec 2024 18:18:05 +0800 Subject: [PATCH 03/33] remove logs --- crates/export/src/lib.rs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/crates/export/src/lib.rs b/crates/export/src/lib.rs index bdbe5a02..d555b748 100644 --- a/crates/export/src/lib.rs +++ b/crates/export/src/lib.rs @@ -149,7 +149,6 @@ pub async fn export_video_to_file( loop { tokio::select! { result = ffmpeg_process.wait() => { - dbg!(frame_count, &result); match result { Err(e) => Err(ExportError::FFmpeg(e.to_string())), Ok(status) => { @@ -167,7 +166,6 @@ pub async fn export_video_to_file( }?; } frame = rx_image_data.recv() => { - dbg!(frame_count, frame.is_some()); match frame { Some(frame) => { on_progress(frame_count); @@ -194,12 +192,8 @@ pub async fn export_video_to_file( } } - println!("sending frame {frame_count} to ffmpeg tx"); - video_tx.send(frame).await.unwrap(); - println!("sent frame {frame_count} to ffmpeg tx"); - frame_count += 1; } None => { From 630fe1a90cafe8951489cedf61459efbbc778a57 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Fri, 13 Dec 2024 18:21:21 +0800 Subject: [PATCH 04/33] fix types --- apps/desktop/src/routes/camera.tsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/apps/desktop/src/routes/camera.tsx b/apps/desktop/src/routes/camera.tsx index 9b7c52d6..176ecfb3 100644 --- a/apps/desktop/src/routes/camera.tsx +++ b/apps/desktop/src/routes/camera.tsx @@ -47,7 +47,10 @@ export default function () { { name: "cameraWindowState" } ); - const [latestFrame, setLatestFrame] = createLazySignal(); + const [latestFrame, setLatestFrame] = createLazySignal<{ + width: number; + data: ImageData; + } | null>(); const [isLoading, setIsLoading] = createSignal(true); const [error, setError] = createSignal(null); @@ -56,7 +59,7 @@ export default function () { (imageData) => { setLatestFrame(imageData); const ctx = cameraCanvasRef?.getContext("2d"); - ctx?.putImageData(imageData, 0, 0); + ctx?.putImageData(imageData.data, 0, 0); setIsLoading(false); } ); @@ -81,7 +84,7 @@ export default function () { (imageData) => { setLatestFrame(imageData); const ctx = cameraCanvasRef?.getContext("2d"); - ctx?.putImageData(imageData, 0, 0); + ctx?.putImageData(imageData.data, 0, 0); setIsLoading(false); } ); @@ -196,7 +199,7 @@ export default function () { {(latestFrame) => { const style = () => { const aspectRatio = - latestFrame().width / latestFrame().height; + latestFrame().data.width / latestFrame().data.height; const windowWidth = windowSize.latest?.size ?? 0; @@ -232,8 +235,8 @@ export default function () { data-tauri-drag-region class={cx("absolute")} style={style()} - width={latestFrame().width} - height={latestFrame().height} + width={latestFrame().data.width} + height={latestFrame().data.height} ref={cameraCanvasRef!} /> ); From 9119407aa2a053bd451d5c10dc5c99293996ed91 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Sun, 15 Dec 2024 16:49:06 +0800 Subject: [PATCH 05/33] resample audio --- Cargo.lock | 1 + crates/export/Cargo.toml | 1 + crates/export/src/lib.rs | 55 +++++------ crates/media/src/data.rs | 7 -- crates/media/src/encoders/mp4.rs | 152 ++++++++++++++++++------------- 5 files changed, 115 insertions(+), 101 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f993a72b..e42feb7f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -772,6 +772,7 @@ dependencies = [ "cap-project", "cap-rendering", "cap-utils", + "futures", "image 0.25.5", "mp4", "tempfile", diff --git a/crates/export/Cargo.toml b/crates/export/Cargo.toml index 05e66a54..1711b488 100644 --- a/crates/export/Cargo.toml +++ b/crates/export/Cargo.toml @@ -17,3 +17,4 @@ tempfile = "3.12.0" image = "0.25.2" mp4 = "0.14.0" thiserror.workspace = true +futures = "0.3.31" diff --git a/crates/export/src/lib.rs b/crates/export/src/lib.rs index 35ec5f89..e4bd52da 100644 --- a/crates/export/src/lib.rs +++ b/crates/export/src/lib.rs @@ -1,7 +1,8 @@ use cap_editor::Segment; use cap_media::data::{AudioInfo, RawVideoFormat, VideoInfo}; -use cap_media::encoders::MP4Input; +use cap_media::encoders::{MP4Encoder, MP4Input}; use cap_media::MediaError; +use futures::FutureExt; use image::{ImageBuffer, Rgba}; use mp4::Mp4Reader; use std::path::Path; @@ -29,14 +30,14 @@ pub enum ExportError { #[error("IO: {0}")] IO(#[from] std::io::Error), - #[error("FFmpeg Task: {0}")] - FFmpegTask(#[from] tokio::task::JoinError), - #[error("Rendering: {0}")] Rendering(#[from] cap_rendering::RenderingError), #[error("Media/{0}")] Media(#[from] cap_media::MediaError), + + #[error("Join: {0}")] + Join(#[from] tokio::task::JoinError), } pub async fn export_video_to_file( @@ -85,36 +86,28 @@ pub async fn export_video_to_file( .unzip(); let (frame_tx, frame_rx) = std::sync::mpsc::sync_channel::(4); - let (done_tx, done_rx) = oneshot::channel(); - - let audio_info = if audio_segments - .get(0) - .and_then(|d| d.as_ref().as_ref()) - .is_some() - { - Some( + + let audio_info = match audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) { + Some(audio_data) => Some( AudioInfo::new( - cap_media::data::Sample::F32(cap_media::data::Type::Packed), - 48000, - 1, + audio_data.info.sample_format, + audio_data.info.sample_rate, + audio_data.info.channels as u16, ) .map_err(Into::::into)?, - ) - } else { - None + ), + _ => None, }; - std::thread::spawn(move || { + let encoder_thread = tokio::task::spawn_blocking(move || { let mut encoder = cap_media::encoders::MP4Encoder::init( "output", - VideoInfo::from_raw(RawVideoFormat::YUYV420, output_size.0, output_size.1, 30), + VideoInfo::from_raw(MP4Encoder::video_format(), output_size.0, output_size.1, 30), audio_info, cap_media::encoders::Output::File(output_path.clone()), - ) - .unwrap(); + )?; while let Ok(frame) = frame_rx.recv() { - println!("queueing frame"); encoder.queue_video_frame(frame.video); if let Some(audio) = frame.audio { encoder.queue_audio_frame(audio); @@ -123,10 +116,11 @@ pub async fn export_video_to_file( encoder.finish(); - done_tx.send(output_path).ok(); - }); + Ok::<_, ExportError>(output_path) + }) + .then(|f| async { f.map_err(Into::into).and_then(|v| v) }); - tokio::spawn({ + let render_task = tokio::spawn({ let project = project.clone(); let project_path = project_path.clone(); async move { @@ -250,20 +244,21 @@ pub async fn export_video_to_file( Ok::<_, ExportError>(()) } - }); + }) + .then(|f| async { f.map_err(Into::into).and_then(|v| v) }); println!("Rendering video to channel"); - cap_rendering::render_video_to_channel( + let render_video_task = cap_rendering::render_video_to_channel( render_constants.options, project, tx_image_data, &meta, render_segments, ) - .await?; + .then(|f| async { f.map_err(Into::into) }); - let output_path = done_rx.await.unwrap(); + let (output_path, _, _) = tokio::try_join!(encoder_thread, render_video_task, render_task)?; Ok(output_path) } diff --git a/crates/media/src/data.rs b/crates/media/src/data.rs index b87203a0..1c807429 100644 --- a/crates/media/src/data.rs +++ b/crates/media/src/data.rs @@ -177,13 +177,6 @@ impl AudioInfo { frame.set_pts(Some(timestamp)); frame.set_rate(self.sample_rate); - // dbg!( - // samples, - // sample_size, - // frame.plane::(0).len(), - // data.len() - // ); - match self.channels { 0 => unreachable!(), 1 => frame.plane_data_mut(0)[0..data.len()].copy_from_slice(data), diff --git a/crates/media/src/encoders/mp4.rs b/crates/media/src/encoders/mp4.rs index c47a5c03..d6034b37 100644 --- a/crates/media/src/encoders/mp4.rs +++ b/crates/media/src/encoders/mp4.rs @@ -1,26 +1,37 @@ use crate::{ - data::{AudioInfo, FFAudio, FFPacket, FFRational, FFVideo, PlanarData, VideoInfo}, + data::{ + AudioInfo, FFAudio, FFPacket, FFRational, FFVideo, PlanarData, RawVideoFormat, VideoInfo, + }, pipeline::{audio_buffer::AudioBuffer, task::PipelineSinkTask}, MediaError, }; use ffmpeg::{ codec::{codec::Codec, context, encoder}, format::{self}, + software, threading::Config, Dictionary, }; use super::Output; +struct Audio { + encoder: encoder::Audio, + buffer: AudioBuffer, + input_config: AudioInfo, + resampler: software::resampling::Context, +} + +struct Video { + encoder: ffmpeg::encoder::Video, + config: VideoInfo, +} + pub struct MP4Encoder { tag: &'static str, - video_encoder: encoder::Video, - audio_encoder: Option, output_ctx: format::context::Output, - audio_buffer: Option, - last_video_pts: Option, - video_config: VideoInfo, - audio_config: Option, + video: Video, + audio: Option
@@ -280,7 +284,8 @@ function ExportButton() { videoId, project, progress, - true + true, + false ); await commands.copyFileToPath(videoPath, path); @@ -399,14 +404,20 @@ function ShareButton() { } }; - await commands.exportVideo(videoId, projectConfig, progress, true); + await commands.exportVideo( + videoId, + projectConfig, + progress, + true, + false + ); // Now proceed with upload const result = recordingMeta()?.sharing ? await commands.uploadExportedVideo(videoId, "Reupload") : await commands.uploadExportedVideo(videoId, { - Initial: { pre_created_video: null }, - }); + Initial: { pre_created_video: null }, + }); console.log("Upload result:", result); diff --git a/apps/desktop/src/routes/prev-recordings.tsx b/apps/desktop/src/routes/prev-recordings.tsx index b5274dff..62c3ecf4 100644 --- a/apps/desktop/src/routes/prev-recordings.tsx +++ b/apps/desktop/src/routes/prev-recordings.tsx @@ -749,6 +749,7 @@ function createRecordingMutations( mediaId, presets.getDefaultConfig() ?? DEFAULT_PROJECT_CONFIG, progress, + false, false ); @@ -873,7 +874,8 @@ function createRecordingMutations( mediaId, presets.getDefaultConfig() ?? DEFAULT_PROJECT_CONFIG, progress, - true // Force re-render + true, // Force re-render + false ); await commands.copyFileToPath(outputPath, savePath); @@ -1002,6 +1004,7 @@ function createRecordingMutations( mediaId, presets.getDefaultConfig() ?? DEFAULT_PROJECT_CONFIG, progress, + false, false ); console.log("Using existing rendered video"); diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index a1be7e26..4f4dae92 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -53,8 +53,8 @@ async focusCapturesPanel() : Promise { async getCurrentRecording() : Promise> { return await TAURI_INVOKE("get_current_recording"); }, -async exportVideo(videoId: string, project: ProjectConfiguration, progress: TAURI_CHANNEL, force: boolean) : Promise { - return await TAURI_INVOKE("export_video", { videoId, project, progress, force }); +async exportVideo(videoId: string, project: ProjectConfiguration, progress: TAURI_CHANNEL, force: boolean, useCustomMuxer: boolean) : Promise { + return await TAURI_INVOKE("export_video", { videoId, project, progress, force, useCustomMuxer }); }, async copyFileToPath(src: string, dst: string) : Promise { return await TAURI_INVOKE("copy_file_to_path", { src, dst }); diff --git a/crates/export/src/lib.rs b/crates/export/src/lib.rs index e4bd52da..ffcd8a0a 100644 --- a/crates/export/src/lib.rs +++ b/crates/export/src/lib.rs @@ -1,24 +1,18 @@ use cap_editor::Segment; -use cap_media::data::{AudioInfo, RawVideoFormat, VideoInfo}; -use cap_media::encoders::{MP4Encoder, MP4Input}; -use cap_media::MediaError; -use futures::FutureExt; -use image::{ImageBuffer, Rgba}; -use mp4::Mp4Reader; -use std::path::Path; -use std::{path::PathBuf, sync::Arc}; -use tokio::sync::oneshot; - -use cap_media::feeds::AudioFrameBuffer; +use cap_media::{ + data::{AudioInfo, RawVideoFormat, VideoInfo}, + encoders::{MP4Encoder, MP4Input}, + feeds::{AudioData, AudioFrameBuffer}, + MediaError, +}; use cap_project::{ProjectConfiguration, RecordingMeta}; use cap_rendering::{ ProjectUniforms, RecordingSegmentDecoders, RenderSegment, RenderVideoConstants, SegmentVideoPaths, }; - -struct AudioRender { - buffer: AudioFrameBuffer, -} +use futures::FutureExt; +use image::{ImageBuffer, Rgba}; +use std::{path::PathBuf, sync::Arc}; const FPS: u32 = 30; @@ -40,239 +34,471 @@ pub enum ExportError { Join(#[from] tokio::task::JoinError), } -pub async fn export_video_to_file( - project: ProjectConfiguration, +pub struct Exporter { + render_segments: Vec, + audio_segments: Vec>>, + output_size: (u32, u32), output_path: PathBuf, - on_progress: impl Fn(u32) + Send + 'static, - project_path: &PathBuf, + project: ProjectConfiguration, + project_path: PathBuf, + on_progress: TOnProgress, meta: RecordingMeta, render_constants: Arc, - segments: &[Segment], -) -> Result { - let (tx_image_data, mut rx_image_data) = tokio::sync::mpsc::channel::>(4); - - let output_folder = output_path.parent().unwrap(); - std::fs::create_dir_all(output_folder)?; - - let output_size = ProjectUniforms::get_output_size(&render_constants.options, &project); - - let (render_segments, audio_segments): (Vec<_>, Vec<_>) = segments - .iter() - .enumerate() - .map(|(i, segment)| { - let segment_paths = match &meta.content { - cap_project::Content::SingleSegment { segment: s } => SegmentVideoPaths { - display: s.display.path.as_path(), - camera: s.camera.as_ref().map(|c| c.path.as_path()), - }, - cap_project::Content::MultipleSegments { inner } => { - let s = &inner.segments[i]; - - SegmentVideoPaths { +} + +impl Exporter +where + TOnProgress: Fn(u32) + Send + 'static, +{ + pub fn new( + project: ProjectConfiguration, + output_path: PathBuf, + on_progress: TOnProgress, + project_path: PathBuf, + meta: RecordingMeta, + render_constants: Arc, + segments: &[Segment], + ) -> Result { + let output_folder = output_path.parent().unwrap(); + std::fs::create_dir_all(output_folder)?; + + let output_size = ProjectUniforms::get_output_size(&render_constants.options, &project); + + let (render_segments, audio_segments): (Vec<_>, Vec<_>) = segments + .iter() + .enumerate() + .map(|(i, segment)| { + let segment_paths = match &meta.content { + cap_project::Content::SingleSegment { segment: s } => SegmentVideoPaths { display: s.display.path.as_path(), camera: s.camera.as_ref().map(|c| c.path.as_path()), + }, + cap_project::Content::MultipleSegments { inner } => { + let s = &inner.segments[i]; + + SegmentVideoPaths { + display: s.display.path.as_path(), + camera: s.camera.as_ref().map(|c| c.path.as_path()), + } } - } - }; - - ( - RenderSegment { - cursor: segment.cursor.clone(), - decoders: RecordingSegmentDecoders::new(&meta, segment_paths), - }, - segment.audio.clone(), - ) + }; + + ( + RenderSegment { + cursor: segment.cursor.clone(), + decoders: RecordingSegmentDecoders::new(&meta, segment_paths), + }, + segment.audio.clone(), + ) + }) + .unzip(); + + Ok(Self { + project, + output_path, + on_progress, + project_path, + meta, + render_constants, + render_segments, + audio_segments, + output_size, }) - .unzip(); - - let (frame_tx, frame_rx) = std::sync::mpsc::sync_channel::(4); - - let audio_info = match audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) { - Some(audio_data) => Some( - AudioInfo::new( - audio_data.info.sample_format, - audio_data.info.sample_rate, - audio_data.info.channels as u16, - ) - .map_err(Into::::into)?, - ), - _ => None, - }; - - let encoder_thread = tokio::task::spawn_blocking(move || { - let mut encoder = cap_media::encoders::MP4Encoder::init( - "output", - VideoInfo::from_raw(MP4Encoder::video_format(), output_size.0, output_size.1, 30), - audio_info, - cap_media::encoders::Output::File(output_path.clone()), - )?; - - while let Ok(frame) = frame_rx.recv() { - encoder.queue_video_frame(frame.video); - if let Some(audio) = frame.audio { - encoder.queue_audio_frame(audio); - } + } + + pub async fn export_with_custom_muxer(self) -> Result { + struct AudioRender { + buffer: AudioFrameBuffer, } - encoder.finish(); - - Ok::<_, ExportError>(output_path) - }) - .then(|f| async { f.map_err(Into::into).and_then(|v| v) }); - - let render_task = tokio::spawn({ - let project = project.clone(); - let project_path = project_path.clone(); - async move { - println!("Starting FFmpeg output process..."); - let mut audio = if let Some(_) = audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) - { - Some(AudioRender { - buffer: AudioFrameBuffer::new( - audio_segments - .iter() - .map(|s| s.as_ref().as_ref().unwrap().clone()) - .collect(), - ), - }) - } else { - None - }; - - let mut frame_count = 0; - let mut first_frame = None; - - while let Some(frame) = rx_image_data.recv().await { - on_progress(frame_count); - - if frame_count == 0 { - first_frame = Some(frame.clone()); + let (tx_image_data, mut rx_image_data) = tokio::sync::mpsc::channel::>(4); + + let (frame_tx, frame_rx) = std::sync::mpsc::sync_channel::(4); + + let audio_info = match self.audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) { + Some(audio_data) => Some( + AudioInfo::new( + audio_data.info.sample_format, + audio_data.info.sample_rate, + audio_data.info.channels as u16, + ) + .map_err(Into::::into)?, + ), + _ => None, + }; + + let encoder_thread = tokio::task::spawn_blocking(move || { + let mut encoder = cap_media::encoders::MP4Encoder::init( + "output", + VideoInfo::from_raw( + MP4Encoder::video_format(), + self.output_size.0, + self.output_size.1, + 30, + ), + audio_info, + cap_media::encoders::Output::File(self.output_path.clone()), + )?; + + while let Ok(frame) = frame_rx.recv() { + encoder.queue_video_frame(frame.video); + if let Some(audio) = frame.audio { + encoder.queue_audio_frame(audio); } + } + + encoder.finish(); + + Ok::<_, ExportError>(self.output_path) + }) + .then(|f| async { f.map_err(Into::into).and_then(|v| v) }); + + let render_task = tokio::spawn({ + let project = self.project.clone(); + let project_path = self.project_path.clone(); + async move { + println!("Starting FFmpeg output process..."); + let mut audio = + if let Some(_) = self.audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) { + Some(AudioRender { + buffer: AudioFrameBuffer::new( + self.audio_segments + .iter() + .map(|s| s.as_ref().as_ref().unwrap().clone()) + .collect(), + ), + }) + } else { + None + }; + + let mut frame_count = 0; + let mut first_frame = None; + + while let Some(frame) = rx_image_data.recv().await { + (self.on_progress)(frame_count); - let audio_frame = if let Some(audio) = &mut audio { if frame_count == 0 { - audio.buffer.set_playhead(0., project.timeline()); + first_frame = Some(frame.clone()); } - let audio_info = audio.buffer.info(); - // dbg!(&audio_info); - let estimated_samples_per_frame = - f64::from(audio_info.sample_rate) / f64::from(FPS); - let samples = estimated_samples_per_frame.ceil() as usize; + let audio_frame = if let Some(audio) = &mut audio { + if frame_count == 0 { + audio.buffer.set_playhead(0., project.timeline()); + } - if let Some((_, frame_data)) = - audio.buffer.next_frame_data(samples, project.timeline()) - { + let audio_info = audio.buffer.info(); // dbg!(&audio_info); - let mut frame = audio_info.wrap_frame( - &frame_data - .to_vec() - .chunks(8) - .flat_map(|v| { - (f64::from_le_bytes([ - v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7], - ]) as f32) - .to_le_bytes() - }) - .collect::>(), - 0, - ); - frame.set_pts(Some(1_000_000 / 30 * (frame_count as i64))); - Some(frame) + let estimated_samples_per_frame = + f64::from(audio_info.sample_rate) / f64::from(FPS); + let samples = estimated_samples_per_frame.ceil() as usize; + + if let Some((_, frame_data)) = + audio.buffer.next_frame_data(samples, project.timeline()) + { + // dbg!(&audio_info); + let mut frame = audio_info.wrap_frame( + &frame_data + .to_vec() + .chunks(8) + .flat_map(|v| { + (f64::from_le_bytes([ + v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7], + ]) as f32) + .to_le_bytes() + }) + .collect::>(), + 0, + ); + frame.set_pts(Some(1_000_000 / 30 * (frame_count as i64))); + Some(frame) + } else { + None + } } else { None - } + }; + + let mut video_frame = VideoInfo::from_raw( + RawVideoFormat::Rgba, + self.output_size.0, + self.output_size.1, + 30, + ) + .wrap_frame(&frame, 0); + video_frame.set_pts(Some(frame_count as i64)); + + frame_tx + .send(MP4Input { + audio: audio_frame, + video: video_frame, + }) + .ok(); + + frame_count += 1; + } + + // Save the first frame as a screenshot and thumbnail + if let Some(frame_data) = first_frame { + let width = self.output_size.0; + let height = self.output_size.1; + let rgba_img: ImageBuffer, Vec> = + ImageBuffer::from_raw(width, height, frame_data) + .expect("Failed to create image from frame data"); + + // Convert RGBA to RGB + let rgb_img: ImageBuffer, Vec> = + ImageBuffer::from_fn(width, height, |x, y| { + let rgba = rgba_img.get_pixel(x, y); + image::Rgb([rgba[0], rgba[1], rgba[2]]) + }); + + let screenshots_dir = project_path.join("screenshots"); + std::fs::create_dir_all(&screenshots_dir).unwrap_or_else(|e| { + eprintln!("Failed to create screenshots directory: {:?}", e); + }); + + // Save full-size screenshot + let screenshot_path = screenshots_dir.join("display.jpg"); + rgb_img.save(&screenshot_path).unwrap_or_else(|e| { + eprintln!("Failed to save screenshot: {:?}", e); + }); + + // // Create and save thumbnail + // let thumbnail = image::imageops::resize( + // &rgb_img, + // 100, + // 100, + // image::imageops::FilterType::Lanczos3, + // ); + // let thumbnail_path = screenshots_dir.join("thumbnail.png"); + // thumbnail.save(&thumbnail_path).unwrap_or_else(|e| { + // eprintln!("Failed to save thumbnail: {:?}", e); + // }); + } else { + eprintln!("No frames were processed, cannot save screenshot or thumbnail"); + } + + Ok::<_, ExportError>(()) + } + }) + .then(|f| async { f.map_err(Into::into).and_then(|v| v) }); + + println!("Rendering video to channel"); + + let render_video_task = cap_rendering::render_video_to_channel( + self.render_constants.options, + self.project, + tx_image_data, + &self.meta, + self.render_segments, + ) + .then(|f| async { f.map_err(Into::into) }); + + let (output_path, _, _) = tokio::try_join!(encoder_thread, render_video_task, render_task)?; + + Ok(output_path) + } + + pub async fn export_with_ffmpeg_cli(self) -> Result { + struct AudioRender { + buffer: AudioFrameBuffer, + pipe_tx: tokio::sync::mpsc::Sender>, + } + + let (tx_image_data, mut rx_image_data) = tokio::sync::mpsc::channel::>(4); + + let ffmpeg_handle = tokio::spawn({ + let project = self.project.clone(); + let project_path = self.project_path.clone(); + async move { + println!("Starting FFmpeg output process..."); + let mut ffmpeg = cap_ffmpeg_cli::FFmpeg::new(); + + let audio_dir = tempfile::tempdir().unwrap(); + let video_dir = tempfile::tempdir().unwrap(); + let mut audio = if let Some(audio_data) = + self.audio_segments.get(0).and_then(|d| d.as_ref().as_ref()) + { + let (tx, rx) = tokio::sync::mpsc::channel::>(30); + + let pipe_path = cap_utils::create_channel_named_pipe( + rx, + audio_dir.path().join("audio.pipe"), + ); + + ffmpeg.add_input(cap_ffmpeg_cli::FFmpegRawAudioInput { + input: pipe_path, + sample_format: "f64le".to_string(), + sample_rate: audio_data.info.sample_rate, + channels: audio_data.info.channels as u16, + }); + + Some(AudioRender { + buffer: AudioFrameBuffer::new( + self.audio_segments + .iter() + .map(|s| s.as_ref().as_ref().unwrap().clone()) + .collect(), + ), + pipe_tx: tx, + }) } else { None }; - let mut video_frame = - VideoInfo::from_raw(RawVideoFormat::Rgba, output_size.0, output_size.1, 30) - .wrap_frame(&frame, 0); - video_frame.set_pts(Some(frame_count as i64)); + let video_tx = { + let (tx, rx) = tokio::sync::mpsc::channel::>(30); - frame_tx - .send(MP4Input { - audio: audio_frame, - video: video_frame, - }) - .ok(); + let pipe_path = cap_utils::create_channel_named_pipe( + rx, + video_dir.path().join("video.pipe"), + ); - frame_count += 1; - } + ffmpeg.add_input(cap_ffmpeg_cli::FFmpegRawVideoInput { + width: self.output_size.0, + height: self.output_size.1, + fps: 30, + pix_fmt: "rgba", + input: pipe_path, + }); + + tx + }; + + ffmpeg + .command + .args(["-f", "mp4"]) + .args(["-codec:v", "libx264", "-codec:a", "aac"]) + .args(["-preset", "ultrafast"]) + .args(["-pix_fmt", "yuv420p", "-tune", "zerolatency"]) + .arg("-y") + .arg(&self.output_path); + + let mut ffmpeg_process = ffmpeg.start(); + + let mut frame_count = 0; + let mut first_frame = None; + + loop { + tokio::select! { + result = ffmpeg_process.wait() => { + match result { + Err(e) => Err(ExportError::FFmpeg(e.to_string())), + Ok(status) => { + if status.success() { + Ok(()) + } else { + Err(ExportError::FFmpeg( + ffmpeg_process + .read_stderr() + .await + .unwrap_or_else(|_| "Failed to read FFmpegg error".to_string()) + )) + } + } + }?; + } + frame = rx_image_data.recv() => { + match frame { + Some(frame) => { + (self.on_progress)(frame_count); + + if frame_count == 0 { + first_frame = Some(frame.clone()); + } + + if let Some(audio) = &mut audio { + if frame_count == 0 { + audio.buffer.set_playhead(0., project.timeline()); + } + + let audio_info = audio.buffer.info(); + let estimated_samples_per_frame = + f64::from(audio_info.sample_rate) / f64::from(FPS); + let samples = estimated_samples_per_frame.ceil() as usize; + + if let Some((_, frame_data)) = + audio.buffer.next_frame_data(samples, project.timeline()) + { + let frame_samples = frame_data.to_vec(); + audio.pipe_tx.send(frame_samples).await.unwrap(); + } + } + + video_tx.send(frame).await.unwrap(); + + frame_count += 1; + } + None => { + println!("All frames sent to FFmpeg"); + break; + } + } + } + } + } - // Save the first frame as a screenshot and thumbnail - if let Some(frame_data) = first_frame { - let width = output_size.0; - let height = output_size.1; - let rgba_img: ImageBuffer, Vec> = - ImageBuffer::from_raw(width, height, frame_data) - .expect("Failed to create image from frame data"); - - // Convert RGBA to RGB - let rgb_img: ImageBuffer, Vec> = - ImageBuffer::from_fn(width, height, |x, y| { - let rgba = rgba_img.get_pixel(x, y); - image::Rgb([rgba[0], rgba[1], rgba[2]]) + ffmpeg_process.stop().await; + + // Save the first frame as a screenshot and thumbnail + if let Some(frame_data) = first_frame { + let width = self.output_size.0; + let height = self.output_size.1; + let rgba_img: ImageBuffer, Vec> = + ImageBuffer::from_raw(width, height, frame_data) + .expect("Failed to create image from frame data"); + + // Convert RGBA to RGB + let rgb_img: ImageBuffer, Vec> = + ImageBuffer::from_fn(width, height, |x, y| { + let rgba = rgba_img.get_pixel(x, y); + image::Rgb([rgba[0], rgba[1], rgba[2]]) + }); + + let screenshots_dir = project_path.join("screenshots"); + std::fs::create_dir_all(&screenshots_dir).unwrap_or_else(|e| { + eprintln!("Failed to create screenshots directory: {:?}", e); }); - let screenshots_dir = project_path.join("screenshots"); - std::fs::create_dir_all(&screenshots_dir).unwrap_or_else(|e| { - eprintln!("Failed to create screenshots directory: {:?}", e); - }); - - // Save full-size screenshot - let screenshot_path = screenshots_dir.join("display.jpg"); - rgb_img.save(&screenshot_path).unwrap_or_else(|e| { - eprintln!("Failed to save screenshot: {:?}", e); - }); - - // // Create and save thumbnail - // let thumbnail = image::imageops::resize( - // &rgb_img, - // 100, - // 100, - // image::imageops::FilterType::Lanczos3, - // ); - // let thumbnail_path = screenshots_dir.join("thumbnail.png"); - // thumbnail.save(&thumbnail_path).unwrap_or_else(|e| { - // eprintln!("Failed to save thumbnail: {:?}", e); - // }); - } else { - eprintln!("No frames were processed, cannot save screenshot or thumbnail"); - } + // Save full-size screenshot + let screenshot_path = screenshots_dir.join("display.jpg"); + rgb_img.save(&screenshot_path).unwrap_or_else(|e| { + eprintln!("Failed to save screenshot: {:?}", e); + }); - Ok::<_, ExportError>(()) - } - }) - .then(|f| async { f.map_err(Into::into).and_then(|v| v) }); + // // Create and save thumbnail + // let thumbnail = image::imageops::resize( + // &rgb_img, + // 100, + // 100, + // image::imageops::FilterType::Lanczos3, + // ); + // let thumbnail_path = screenshots_dir.join("thumbnail.png"); + // thumbnail.save(&thumbnail_path).unwrap_or_else(|e| { + // eprintln!("Failed to save thumbnail: {:?}", e); + // }); + } else { + eprintln!("No frames were processed, cannot save screenshot or thumbnail"); + } - println!("Rendering video to channel"); + Ok::<_, ExportError>(self.output_path) + } + }); - let render_video_task = cap_rendering::render_video_to_channel( - render_constants.options, - project, - tx_image_data, - &meta, - render_segments, - ) - .then(|f| async { f.map_err(Into::into) }); + println!("Rendering video to channel"); - let (output_path, _, _) = tokio::try_join!(encoder_thread, render_video_task, render_task)?; + cap_rendering::render_video_to_channel( + self.render_constants.options, + self.project, + tx_image_data, + &self.meta, + self.render_segments, + ) + .await?; - Ok(output_path) -} + let output_path = ffmpeg_handle.await??; -/// Validates if a file at the given path is a valid MP4 file -pub fn is_valid_mp4(path: &Path) -> bool { - if let Ok(file) = std::fs::File::open(path) { - let file_size = match file.metadata() { - Ok(metadata) => metadata.len(), - Err(_) => return false, - }; - let reader = std::io::BufReader::new(file); - Mp4Reader::read_header(reader, file_size).is_ok() - } else { - false + Ok(output_path) } } From 78e661e31923edd19995787216ee376a8566f726 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Mon, 16 Dec 2024 20:33:17 +0800 Subject: [PATCH 17/33] cmd-shift-click to use custom mp4 muxer --- apps/desktop/src/routes/editor/Header.tsx | 22 +++++++++++---- .../desktop/src/routes/recordings-overlay.tsx | 28 +++++++++++++------ crates/rendering/src/lib.rs | 6 ---- 3 files changed, 35 insertions(+), 21 deletions(-) diff --git a/apps/desktop/src/routes/editor/Header.tsx b/apps/desktop/src/routes/editor/Header.tsx index 206bee25..8c5c116c 100644 --- a/apps/desktop/src/routes/editor/Header.tsx +++ b/apps/desktop/src/routes/editor/Header.tsx @@ -239,7 +239,7 @@ function ExportButton() { const { videoId, project, prettyName } = useEditorContext(); const exportVideo = createMutation(() => ({ - mutationFn: async () => { + mutationFn: async (useCustomMuxer: boolean) => { const path = await save({ filters: [{ name: "mp4 filter", extensions: ["mp4"] }], defaultPath: `~/Desktop/${prettyName()}.mp4`, @@ -285,7 +285,7 @@ function ExportButton() { project, progress, true, - false + useCustomMuxer ); await commands.copyFileToPath(videoPath, path); @@ -303,7 +303,13 @@ function ExportButton() { })); return ( - ); @@ -316,7 +322,7 @@ function ShareButton() { ); const uploadVideo = createMutation(() => ({ - mutationFn: async () => { + mutationFn: async (useCustomMuxer: boolean) => { console.log("Starting upload process..."); if (!recordingMeta()) { console.error("No recording metadata available"); @@ -478,7 +484,9 @@ function ShareButton() { fallback={
- }> + } + value={`${project.camera.size ?? 30}%`} + > setProject("camera", "size", v[0])} @@ -457,7 +461,11 @@ export function ConfigSidebar() { /> {window.FLAGS.zoom && ( - }> + } + value={`${project.camera.zoom_size ?? 20}%`} + > setProject("camera", "zoom_size", v[0])} diff --git a/apps/desktop/src/routes/editor/Timeline.tsx b/apps/desktop/src/routes/editor/Timeline.tsx index 11f0e41c..d7144523 100644 --- a/apps/desktop/src/routes/editor/Timeline.tsx +++ b/apps/desktop/src/routes/editor/Timeline.tsx @@ -5,12 +5,10 @@ import { ComponentProps, For, Show, - createContext, batch, createRoot, createSignal, onMount, - useContext, } from "solid-js"; import { createEventListenerMap } from "@solid-primitives/event-listener"; import { cx } from "cva"; @@ -459,6 +457,9 @@ export function Timeline() { return `${amount.toFixed(1)}x`; }; + const zoomSegments = () => + project.timeline!.zoomSegments!; + return ( { const start = segment.start; - const maxDuration = - editorInstance.recordingDuration - - segments().reduce( - (acc, segment, segmentI) => - segmentI === i() - ? acc - : acc + - (segment.end - segment.start) / - segment.timescale, - 0 - ); + let minValue = 0; + + for ( + let i = zoomSegments().length - 1; + i >= 0; + i-- + ) { + const segment = zoomSegments()[i]!; + if (segment.end <= start) { + minValue = segment.end; + break; + } + } + + let maxValue = segment.end - 1; function update(event: MouseEvent) { const { width } = timelineBounds; @@ -503,12 +508,8 @@ export function Timeline() { i(), "start", Math.min( - Math.max( - newStart, - // Math.max(newStart, 0), - segment.end - maxDuration - ), - segment.end - 1 + maxValue, + Math.max(minValue, newStart) ) ); } @@ -554,6 +555,18 @@ export function Timeline() { onMouseDown={(downEvent) => { const end = segment.end; + const minValue = segment.start + 1; + + let maxValue = duration(); + + for (let i = 0; i > zoomSegments().length; i++) { + const segment = zoomSegments()[i]!; + if (segment.start > end) { + maxValue = segment.end; + break; + } + } + const maxDuration = editorInstance.recordingDuration - segments().reduce( @@ -580,13 +593,7 @@ export function Timeline() { "zoomSegments", i(), "end", - Math.max( - Math.min( - newEnd, - segment.start + maxDuration - ), - segment.start + 1 - ) + Math.min(maxValue, Math.max(minValue, newEnd)) ); } diff --git a/apps/desktop/src/routes/editor/ui.tsx b/apps/desktop/src/routes/editor/ui.tsx index 36fc74a5..5e6024c0 100644 --- a/apps/desktop/src/routes/editor/ui.tsx +++ b/apps/desktop/src/routes/editor/ui.tsx @@ -17,13 +17,15 @@ import { import { useEditorContext } from "./context"; export function Field( - props: ParentProps<{ name: string; icon?: JSX.Element }> + props: ParentProps<{ name: string; icon?: JSX.Element; value?: string }> ) { return (
{props.icon} {props.name} + + {props.value &&
{props.value}
}
{props.children}
diff --git a/apps/desktop/src/utils/socket.ts b/apps/desktop/src/utils/socket.ts index 2e4d5492..37bec54a 100644 --- a/apps/desktop/src/utils/socket.ts +++ b/apps/desktop/src/utils/socket.ts @@ -49,8 +49,6 @@ export function createImageDataWS( (strideArr[3] << 24)) / 4; - console.log({ width, height, stride }); - const imageData = new ImageData( clamped.slice(0, clamped.length - 12), stride, diff --git a/crates/flags/src/lib.rs b/crates/flags/src/lib.rs index 550e9a80..96edd6b2 100644 --- a/crates/flags/src/lib.rs +++ b/crates/flags/src/lib.rs @@ -12,6 +12,6 @@ pub const FLAGS: Flags = Flags { record_mouse: false, // cfg!(debug_assertions), split: false, // cfg!(debug_assertions), pause_resume: false, // cfg!(debug_assertions), - zoom: false, // cfg!(debug_assertions), + zoom: false, // false, // false, // cfg!(debug_assertions), custom_s3: true, }; diff --git a/crates/rendering/src/lib.rs b/crates/rendering/src/lib.rs index ee5fea98..f2380555 100644 --- a/crates/rendering/src/lib.rs +++ b/crates/rendering/src/lib.rs @@ -1,6 +1,7 @@ use anyhow::Result; use bytemuck::{Pod, Zeroable}; use cap_flags::FLAGS; +use core::f64; use decoder::{AsyncVideoDecoder, AsyncVideoDecoderHandle}; use futures::future::OptionFuture; use futures_intrusive::channel::shared::oneshot_channel; @@ -509,8 +510,8 @@ impl ProjectUniforms { let current_zoom = zoom_keyframes.interpolate(time as f64); let prev_zoom = zoom_keyframes.interpolate((time - 1.0 / 30.0) as f64); - let velocity = if current_zoom != prev_zoom { - let scale_change = (current_zoom.0 - prev_zoom.0) as f32; + let velocity = if current_zoom.amount != prev_zoom.amount { + let scale_change = (current_zoom.amount - prev_zoom.amount) as f32; // Reduce the velocity scale from 0.05 to 0.02 [ (scale_change * output_size.0 as f32) * 0.02, // Reduced from 0.05 @@ -520,7 +521,7 @@ impl ProjectUniforms { [0.0, 0.0] }; - let motion_blur_amount = if current_zoom != prev_zoom { + let motion_blur_amount = if current_zoom.amount != prev_zoom.amount { project.motion_blur.unwrap_or(0.2) // Reduced from 0.5 to 0.2 } else { 0.0 @@ -528,10 +529,10 @@ impl ProjectUniforms { let crop = Self::get_crop(options, project); - let (zoom_amount, zoom_origin) = { - let (amount, position) = zoom_keyframes.interpolate(time as f64); + let interpolated_zoom = zoom_keyframes.interpolate(time as f64); - let origin = match position { + let (zoom_amount, zoom_origin) = { + let origin = match interpolated_zoom.position { ZoomPosition::Manual { x, y } => Coord::::new(XY { x: x as f64, y: y as f64, @@ -554,7 +555,7 @@ impl ProjectUniforms { } }; - (amount, origin) + (interpolated_zoom.amount, origin) }; let (display, zoom) = { @@ -624,20 +625,10 @@ impl ProjectUniforms { // Calculate camera size based on zoom let base_size = project.camera.size / 100.0; - let zoom_amount = zoom_amount as f32; - let zoomed_size = if zoom_amount > 1.0 { - // Get the zoom size as a percentage (0-1 range) - let zoom_size = project.camera.zoom_size.unwrap_or(20.0) / 100.0; - - // Smoothly interpolate between base size and zoom size - let t = (zoom_amount - 1.0) / 1.5; // Normalize to 0-1 range - let t = t.min(1.0); // Clamp to prevent over-scaling + let zoom_size = project.camera.zoom_size.unwrap_or(20.0) / 100.0; - // Lerp between base_size and zoom_size - base_size * (1.0 - t) + zoom_size * t - } else { - base_size - }; + let zoomed_size = (interpolated_zoom.t as f32) * zoom_size * base_size + + (1.0 - interpolated_zoom.t as f32) * base_size; let size = [ min_axis * zoomed_size + CAMERA_PADDING, @@ -668,7 +659,7 @@ impl ProjectUniforms { // Calculate camera motion blur based on zoom transition let camera_motion_blur = { let base_blur = project.motion_blur.unwrap_or(0.2); - let zoom_delta = (current_zoom.0 - prev_zoom.0).abs() as f32; + let zoom_delta = (current_zoom.amount - prev_zoom.amount).abs() as f32; // Calculate a smooth transition factor let transition_speed = 30.0f32; // Frames per second @@ -717,6 +708,7 @@ pub struct ZoomKeyframe { time: f64, scale: f64, position: ZoomPosition, + has_segment: bool, } #[derive(Debug, PartialEq, Clone, Copy)] pub enum ZoomPosition { @@ -726,14 +718,14 @@ pub enum ZoomPosition { #[derive(Debug, PartialEq)] pub struct ZoomKeyframes(Vec); -pub const ZOOM_DURATION: f64 = 0.6; +pub const ZOOM_DURATION: f64 = 0.8; #[cfg(test)] mod test { use super::*; #[test] - fn zoom_keyframes() { + fn single_keyframe() { let segments = [ZoomSegment { start: 0.5, end: 1.5, @@ -749,31 +741,39 @@ mod test { ZoomKeyframe { time: 0.0, scale: 1.0, - position: ZoomPosition::Manual { x: 0.0, y: 0.0 } + position: ZoomPosition::Manual { x: 0.0, y: 0.0 }, + has_segment: false, }, ZoomKeyframe { time: 0.5, scale: 1.0, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, }, ZoomKeyframe { time: 0.5 + ZOOM_DURATION, scale: 1.5, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, }, ZoomKeyframe { time: 1.5, scale: 1.5, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, }, ZoomKeyframe { time: 1.5 + ZOOM_DURATION, scale: 1.0, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: false, } ]) ); + } + #[test] + fn adjancent_different_position() { let segments = [ ZoomSegment { start: 0.5, @@ -797,36 +797,266 @@ mod test { ZoomKeyframe { time: 0.0, scale: 1.0, - position: ZoomPosition::Manual { x: 0.0, y: 0.0 } + position: ZoomPosition::Manual { x: 0.0, y: 0.0 }, + has_segment: false, + }, + ZoomKeyframe { + time: 0.5, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, + }, + ZoomKeyframe { + time: 0.5 + ZOOM_DURATION, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, + }, + ZoomKeyframe { + time: 1.5, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, + }, + ZoomKeyframe { + time: 1.5 + ZOOM_DURATION, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.8, y: 0.8 }, + has_segment: true, + }, + ZoomKeyframe { + time: 2.5, + scale: 1.5, + position: ZoomPosition::Manual { x: 0.8, y: 0.8 }, + has_segment: true, + }, + ZoomKeyframe { + time: 2.5 + ZOOM_DURATION, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.8, y: 0.8 }, + has_segment: false, + } + ]) + ); + } + + #[test] + fn adjacent_different_amount() { + let segments = [ + ZoomSegment { + start: 0.5, + end: 1.5, + amount: 1.5, + mode: cap_project::ZoomMode::Manual { x: 0.2, y: 0.2 }, + }, + ZoomSegment { + start: 1.5, + end: 2.5, + amount: 2.0, + mode: cap_project::ZoomMode::Manual { x: 0.2, y: 0.2 }, + }, + ]; + + let keyframes = ZoomKeyframes::from_zoom_segments(&segments); + + pretty_assertions::assert_eq!( + keyframes, + ZoomKeyframes(vec![ + ZoomKeyframe { + time: 0.0, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.0, y: 0.0 }, + has_segment: false, }, ZoomKeyframe { time: 0.5, scale: 1.0, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, }, ZoomKeyframe { time: 0.5 + ZOOM_DURATION, scale: 1.5, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, }, ZoomKeyframe { time: 1.5, scale: 1.5, - position: ZoomPosition::Manual { x: 0.2, y: 0.2 } + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, }, ZoomKeyframe { time: 1.5 + ZOOM_DURATION, + scale: 2.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, + }, + ZoomKeyframe { + time: 2.5, + scale: 2.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: true, + }, + ZoomKeyframe { + time: 2.5 + ZOOM_DURATION, + scale: 1.0, + position: ZoomPosition::Manual { x: 0.2, y: 0.2 }, + has_segment: false, + } + ]) + ); + } + + #[test] + fn gap() { + let segments = [ + ZoomSegment { + start: 0.5, + end: 1.5, + amount: 1.5, + mode: cap_project::ZoomMode::Manual { x: 0.0, y: 0.0 }, + }, + ZoomSegment { + start: 1.8, + end: 2.5, + amount: 1.5, + mode: cap_project::ZoomMode::Manual { x: 0.0, y: 0.0 }, + }, + ]; + + let keyframes = ZoomKeyframes::from_zoom_segments(&segments); + + let position = ZoomPosition::Manual { x: 0.0, y: 0.0 }; + let base = ZoomKeyframe { + time: 0.0, + scale: 1.0, + position, + has_segment: true, + }; + + pretty_assertions::assert_eq!( + keyframes, + ZoomKeyframes(vec![ + ZoomKeyframe { + has_segment: false, + ..base + }, + ZoomKeyframe { + time: 0.5, + scale: 1.0, + ..base + }, + ZoomKeyframe { + time: 0.5 + ZOOM_DURATION, + scale: 1.5, + ..base + }, + ZoomKeyframe { + time: 1.5, scale: 1.5, - position: ZoomPosition::Manual { x: 0.8, y: 0.8 } + ..base + }, + ZoomKeyframe { + time: 1.8, + scale: 1.5 - (0.3 / ZOOM_DURATION) * 0.5, + has_segment: false, + ..base + }, + ZoomKeyframe { + time: 1.8 + ZOOM_DURATION, + scale: 1.5, + ..base }, ZoomKeyframe { time: 2.5, scale: 1.5, - position: ZoomPosition::Manual { x: 0.8, y: 0.8 } + ..base + }, + ZoomKeyframe { + time: 2.5 + ZOOM_DURATION, + scale: 1.0, + ..base } ]) ); } + + #[test] + fn project_config() { + let segments = [ + ZoomSegment { + start: 0.3966305848375451, + end: 1.396630584837545, + amount: 1.176, + mode: cap_project::ZoomMode::Manual { x: 0.0, y: 0.0 }, + }, + ZoomSegment { + start: 1.396630584837545, + end: 3.21881273465704, + amount: 1.204, + mode: cap_project::ZoomMode::Manual { x: 0.0, y: 0.0 }, + }, + ]; + + let keyframes = ZoomKeyframes::from_zoom_segments(&segments); + + let position = ZoomPosition::Manual { x: 0.0, y: 0.0 }; + let base = ZoomKeyframe { + time: 0.0, + scale: 1.0, + position, + has_segment: true, + }; + + pretty_assertions::assert_eq!( + keyframes, + ZoomKeyframes(vec![ + ZoomKeyframe { + has_segment: false, + ..base + }, + ZoomKeyframe { + time: 0.3966305848375451, + scale: 1.0, + ..base + }, + ZoomKeyframe { + time: 0.3966305848375451 + ZOOM_DURATION, + scale: 1.176, + ..base + }, + ZoomKeyframe { + time: 1.396630584837545, + scale: 1.176, + ..base + }, + ZoomKeyframe { + time: 1.396630584837545 + ZOOM_DURATION, + scale: 1.204, + ..base + }, + ZoomKeyframe { + time: 3.21881273465704, + scale: 1.204, + ..base + }, + ZoomKeyframe { + time: 3.21881273465704 + ZOOM_DURATION, + scale: 1.0, + has_segment: false, + ..base + }, + ]) + ); + } +} + +#[derive(Debug, PartialEq, Clone, Copy)] +pub struct InterpolatedZoom { + amount: f64, + t: f64, + position: ZoomPosition, } impl ZoomKeyframes { @@ -850,42 +1080,82 @@ impl ZoomKeyframes { time: 0.0, scale: 1.0, position: ZoomPosition::Manual { x: 0.0, y: 0.0 }, + has_segment: false, }); } - for segment in segments { + for (i, segment) in segments.iter().enumerate() { let position = match segment.mode { cap_project::ZoomMode::Auto => ZoomPosition::Cursor, cap_project::ZoomMode::Manual { x, y } => ZoomPosition::Manual { x, y }, }; - keyframes.push(ZoomKeyframe { - time: segment.start, - scale: 1.0, - position, - }); + let prev = if i > 0 { segments.get(i - 1) } else { None }; + let next = segments.get(i + 1); + + if let Some(prev) = prev { + if prev.end + ZOOM_DURATION < segment.start { + // keyframes.push(ZoomKeyframe { + // time: segment.start, + // scale: 1.0, + // position, + // }); + } + } else { + if keyframes.len() != 0 { + keyframes.push(ZoomKeyframe { + time: segment.start, + scale: 1.0, + position, + has_segment: true, + }); + } + } + keyframes.push(ZoomKeyframe { time: segment.start + ZOOM_DURATION, scale: segment.amount, position, + has_segment: true, }); keyframes.push(ZoomKeyframe { time: segment.end, scale: segment.amount, position, + has_segment: true, }); - keyframes.push(ZoomKeyframe { - time: segment.end + ZOOM_DURATION, - scale: 1.0, - position, - }); + + if let Some(next) = next { + if segment.end + ZOOM_DURATION > next.start && next.start > segment.end { + let time = next.start - segment.end; + let t = time / ZOOM_DURATION; + + keyframes.push(ZoomKeyframe { + time: segment.end + time, + scale: 1.0 * t + (1.0 - t) * segment.amount, + position, + has_segment: false, + }); + } + } else { + keyframes.push(ZoomKeyframe { + time: segment.end + ZOOM_DURATION, + scale: 1.0, + position, + has_segment: false, + }); + } } - Self(keyframes) + Self(dbg!(keyframes)) } - pub fn interpolate(&self, time: f64) -> (f64, ZoomPosition) { - let default = (1.0, ZoomPosition::Manual { x: 0.0, y: 0.0 }); + pub fn interpolate(&self, time: f64) -> InterpolatedZoom { + let default = InterpolatedZoom { + amount: 1.0, + position: ZoomPosition::Manual { x: 0.0, y: 0.0 }, + t: 0.0, + }; if !FLAGS.zoom { return default; @@ -911,8 +1181,7 @@ impl ZoomKeyframes { let keyframe_length = next.time - prev.time; let delta_time = time - prev.time; - let t = delta_time / keyframe_length; - let t = t.powf(0.5); + let t = do_easing(delta_time / keyframe_length); let position = match (&prev.position, &next.position) { (ZoomPosition::Manual { x: x1, y: y1 }, ZoomPosition::Manual { x: x2, y: y2 }) => { @@ -924,10 +1193,65 @@ impl ZoomKeyframes { _ => ZoomPosition::Manual { x: 0.0, y: 0.0 }, }; - (prev.scale + (next.scale - prev.scale) * t, position) + let keyframe_diff = next.scale - prev.scale; + + let amount = prev.scale + (keyframe_diff) * t; + + InterpolatedZoom { + amount: prev.scale + (next.scale - prev.scale) * t, + position, + t: do_easing(if prev.scale > 1.0 && next.scale > 1.0 { + if !next.has_segment { + (amount - 1.0) / (prev.scale - 1.0) + } else if !prev.has_segment { + (amount - 1.0) / (next.scale - 1.0) + } else { + 1.0 + } + } else if next.scale > 1.0 { + (amount - 1.0) / (next.scale - 1.0) + } else if prev.scale > 1.0 { + (amount - 1.0) / (prev.scale - 1.0) + } else { + 0.0 + }), + } } } +// fn do_easing(t: f64) -> f64 { +// if t < 0.5 { +// 4.0 * t * t * t +// } else { +// 1.0 - f64::powf(-2.0 * t + 2.0, 3.0) / 2.0 +// } +// } + +// fn do_easing(t: f64) -> f64 { +// if t < 0.5 { +// 2.0 * t * t +// } else { +// -1.0 + (4.0 - 2.0 * t) * t +// } +// } + +// fn do_easing(t: f64) -> f64 { +// 0.5 * (1.0 - f64::cos(f64::consts::PI * t)) +// } + +// fn do_easing(t: f64) -> f64 { +// let t = t - 1.0; +// t * t * t + 1.0 +// } + +// fn do_easing(t: f64) -> f64 { +// f64::sin((t * f64::consts::PI) / 2.0) +// } + +fn do_easing(t: f64) -> f64 { + 1.0 - (1.0 - t) * (1.0 - t) +} + pub async fn produce_frame( constants: &RenderVideoConstants, screen_frame: &Vec, From 29206fae093636b568a5c126a0ead65505a77199 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Tue, 17 Dec 2024 14:26:11 +0000 Subject: [PATCH 32/33] docs: New Cloudflare R2 docs post --- .gitignore | 1 + apps/web/app/docs/[...slug]/page.tsx | 202 ++++++++++++++++++ apps/web/components/pages/DocsPage.tsx | 76 ++++--- .../{s3-config.mdx => s3-config/aws-s3.mdx} | 2 +- .../content/docs/s3-config/cloudflare-r2.mdx | 104 +++++++++ apps/web/next.config.mjs | 5 + apps/web/public/docs/s3-config.jpg | Bin 151287 -> 0 bytes apps/web/public/docs/s3-config/aws-s3.jpg | Bin 0 -> 98614 bytes apps/web/public/docs/s3-config/bunny.jpg | Bin 0 -> 104519 bytes .../public/docs/s3-config/cloudflare-r2.jpg | Bin 0 -> 99584 bytes apps/web/public/docs/s3-config/minio.jpg | Bin 0 -> 96116 bytes apps/web/public/docs/s3-config/supabase.jpg | Bin 0 -> 100789 bytes apps/web/utils/blog.ts | 57 ++++- 13 files changed, 398 insertions(+), 49 deletions(-) create mode 100644 apps/web/app/docs/[...slug]/page.tsx rename apps/web/content/docs/{s3-config.mdx => s3-config/aws-s3.mdx} (99%) create mode 100644 apps/web/content/docs/s3-config/cloudflare-r2.mdx delete mode 100644 apps/web/public/docs/s3-config.jpg create mode 100644 apps/web/public/docs/s3-config/aws-s3.jpg create mode 100644 apps/web/public/docs/s3-config/bunny.jpg create mode 100644 apps/web/public/docs/s3-config/cloudflare-r2.jpg create mode 100644 apps/web/public/docs/s3-config/minio.jpg create mode 100644 apps/web/public/docs/s3-config/supabase.jpg diff --git a/.gitignore b/.gitignore index d1b88374..d538b67a 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ dist-ssr .env.development .env.test target +.cursorrules # Editor directories and files .vscode/* diff --git a/apps/web/app/docs/[...slug]/page.tsx b/apps/web/app/docs/[...slug]/page.tsx new file mode 100644 index 00000000..2f3e361f --- /dev/null +++ b/apps/web/app/docs/[...slug]/page.tsx @@ -0,0 +1,202 @@ +import { notFound } from "next/navigation"; +import Image from "next/image"; +import Link from "next/link"; +import { MDXRemote } from "next-mdx-remote/rsc"; +import { getDocs } from "@/utils/blog"; +import type { Metadata } from "next"; +import type { DocMetadata } from "@/utils/blog"; + +type Doc = { + metadata: DocMetadata; + slug: string; + content: string; +}; + +interface DocProps { + params: { + slug: string[]; + }; +} + +export async function generateMetadata( + props: DocProps +): Promise { + const { params } = props; + if (!params?.slug) return; + + const fullSlug = params.slug.join("/"); + + // If it's a category page + if (params.slug.length === 1) { + const category = params.slug[0]; + if (!category) return; + + const displayCategory = category + .split("-") + .map((word) => word.charAt(0).toUpperCase() + word.slice(1)) + .join(" "); + + return { + title: `${displayCategory} Documentation - Cap`, + description: `Documentation for ${displayCategory} in Cap`, + }; + } + + // If it's a doc page + const allDocs = getDocs() as Doc[]; + const doc = allDocs.find((doc) => doc.slug === fullSlug); + if (!doc) return; + + const { title, summary, image } = doc.metadata; + const ogImage = image ? `${process.env.NEXT_PUBLIC_URL}${image}` : undefined; + const description = summary || title; + + return { + title, + description, + openGraph: { + title, + description, + type: "article", + url: `${process.env.NEXT_PUBLIC_URL}/docs/${fullSlug}`, + ...(ogImage && { + images: [{ url: ogImage }], + }), + }, + twitter: { + card: "summary_large_image", + title, + description, + ...(ogImage && { images: [ogImage] }), + }, + }; +} + +export default async function DocPage(props: DocProps) { + const { params } = props; + if (!params?.slug) notFound(); + + const fullSlug = params.slug.join("/"); + const allDocs = getDocs() as Doc[]; + + // Handle category pages (e.g., /docs/s3-config) + if (params.slug.length === 1) { + const category = params.slug[0]; + if (!category) notFound(); + + // Find docs that either: + // 1. Have a slug that exactly matches the category, or + // 2. Have a slug that starts with category/ + const categoryDocs = allDocs + .filter( + (doc) => doc.slug === category || doc.slug.startsWith(`${category}/`) + ) + .sort((a, b) => { + // Sort by depth (root level first) + const aDepth = a.slug.split("/").length; + const bDepth = b.slug.split("/").length; + if (aDepth !== bDepth) return aDepth - bDepth; + + // Then by title + return a.metadata.title.localeCompare(b.metadata.title); + }); + + if (categoryDocs.length === 0) { + notFound(); + } + + // Format the category name for display + const displayCategory = category + .split("-") + .map((word) => word.charAt(0).toUpperCase() + word.slice(1)) + .join(" "); + + // Find the root category doc if it exists + const rootDoc = categoryDocs.find((doc) => doc.slug === category); + + return ( +
+

{displayCategory} Documentation

+ + {/* Show root category content if it exists */} + {rootDoc && ( +
+ +
+
+ )} + + {/* Show subcategory docs */} + {categoryDocs.length > (rootDoc ? 1 : 0) && ( + <> +

Available Guides

+
+ {categoryDocs + .filter((doc) => doc.slug !== category) // Filter out the root doc if it exists + .map((doc) => ( + +
+

{doc.metadata.title}

+ {doc.metadata.summary && ( +

+ {doc.metadata.summary} +

+ )} + {doc.metadata.tags && ( +
+ {doc.metadata.tags.split(", ").map((tag) => ( + + {tag} + + ))} +
+ )} +
+ + ))} +
+ + )} +
+ ); + } + + // Handle individual doc pages + const doc = allDocs.find((doc) => doc.slug === fullSlug); + + if (!doc) { + notFound(); + } + + return ( +
+ {doc.metadata.image && ( +
+ {doc.metadata.title} +
+ )} + +
+
+

{doc.metadata.title}

+
+
+ +
+
+ ); +} diff --git a/apps/web/components/pages/DocsPage.tsx b/apps/web/components/pages/DocsPage.tsx index 243942b5..a40c1417 100644 --- a/apps/web/components/pages/DocsPage.tsx +++ b/apps/web/components/pages/DocsPage.tsx @@ -11,46 +11,44 @@ export const DocsPage = () => {

Documentation

-
- {allDocs.map((doc) => ( -
- - {doc.metadata.image && ( -
- {doc.metadata.title} -
- )} -
-

- {doc.metadata.title} -

-

{doc.metadata.summary}

-
- {doc.metadata.tags && - doc.metadata.tags.split(", ").map((tag) => ( -

- {tag} -

- ))} -
+ {allDocs.map((doc) => ( +
+ + {doc.metadata.image && ( +
+ {doc.metadata.title}
- -
- ))} -
+ )} +
+

+ {doc.metadata.title} +

+

{doc.metadata.summary}

+
+ {doc.metadata.tags && + doc.metadata.tags.split(", ").map((tag) => ( +

+ {tag} +

+ ))} +
+
+ +
+ ))}
); diff --git a/apps/web/content/docs/s3-config.mdx b/apps/web/content/docs/s3-config/aws-s3.mdx similarity index 99% rename from apps/web/content/docs/s3-config.mdx rename to apps/web/content/docs/s3-config/aws-s3.mdx index 5929831f..63af11b5 100644 --- a/apps/web/content/docs/s3-config.mdx +++ b/apps/web/content/docs/s3-config/aws-s3.mdx @@ -2,7 +2,7 @@ title: "Cap Apps: S3 Config (AWS)" summary: "Connect your own S3 bucket to Cap and maintain 100% ownership over your data." tags: "Cap Apps" -image: "/docs/s3-config.jpg" +image: "/docs/s3-config/aws-s3.jpg" --- # Connecting Your Amazon S3 Bucket to Cap Desktop diff --git a/apps/web/content/docs/s3-config/cloudflare-r2.mdx b/apps/web/content/docs/s3-config/cloudflare-r2.mdx new file mode 100644 index 00000000..575b98f3 --- /dev/null +++ b/apps/web/content/docs/s3-config/cloudflare-r2.mdx @@ -0,0 +1,104 @@ +--- +title: "Cap Apps: S3 Config (Cloudflare R2)" +summary: "Connect your own Cloudflare R2 bucket to Cap Desktop and maintain 100% ownership over your data." +tags: + [ + "Cap Apps", + "Cloudflare R2", + "S3-compatible storage", + "Cloud storage configuration", + ] +image: "/docs/s3-config/cloudflare-r2.jpg" +--- + +# How to Connect Your Cloudflare R2 Bucket to Cap Desktop + +Looking to take full control of your data storage within Cap? Integrating your Cloudflare R2 bucket gives you ownership, flexible scalability, and reduced latency, all while keeping your workflow smooth and secure. In this guide, you'll learn how to quickly set up and configure Cloudflare R2 with Cap Desktop—no complicated steps or robotic instructions, just straightforward guidance. + +> **TL;DR**: +> +> 1. Open Cap Desktop → Cap Apps → S3 Config → Configure +> 2. Select Cloudflare R2 → Enter your R2 credentials +> 3. Adjust bucket permissions and test the connection +> 4. Save settings and start using your R2 bucket for seamless content delivery. + +> **Note**: While this tutorial focuses on Cloudflare R2, Cap Desktop supports any S3-compatible storage service. If you use another provider, just substitute the endpoint and credentials accordingly. + +## Step 1: Open Cap Desktop and Access the Cap Apps Tab + +1. **Open the Cap Desktop App**: Click the Cap icon on your desktop or launch it from your applications folder. +2. **Go to Cap Apps**: Once the app is open, look for the "Cap Apps" tab in the Settings menu. + +## Step 2: Choose S3 Config and Start Configuration + +1. **Click on S3 Config**: Within the Cap Apps section, locate "S3 Config." +2. **Begin Configuration**: Click "Configure." +3. **Select Cloudflare R2**: From the list of storage services, pick "Cloudflare R2." + +## Step 3: Set Up Your Cloudflare R2 Bucket + +Before connecting to Cap, ensure you have a Cloudflare R2 bucket ready: + +1. **Create or Access Your R2 Bucket**: + + - Log in to the [Cloudflare Dashboard](https://dash.cloudflare.com). + - Navigate to **Storage → R2**. + - If you don’t have a bucket yet, click "Create Bucket." + - Provide a unique bucket name (e.g., `my-cap-uploads`) and select a region (`auto` or your preferred option). + - Click "Create Bucket." + +2. **Generate R2 Access Keys**: + + - In the R2 dashboard, find the "Access Keys" section. + - Click "Create Access Key" and name it (e.g., `cap-app-user`). + - Copy both the **Access Key ID** and **Secret Access Key** immediately. You won’t be able to view the secret key again later. + +3. **Configure Bucket Permissions**: + By default, Cloudflare R2 keys come with broad permissions. If you need more controlled access: + + - Check Cloudflare’s [R2 documentation](https://developers.cloudflare.com/r2/) for guidance on applying custom access policies. + - Ensure that your R2 keys have at least **Read**, **Write**, and **List** permissions for the selected bucket. + +4. **Set CORS Rules (Optional)**: + If you’re serving content directly from the bucket via a browser (e.g., sharing publicly accessible links): + - Go to your R2 bucket’s settings and locate **CORS Rules**. + - Add rules that allow `GET`, `HEAD`, and `PUT` from domains like `https://cap.so`, `https://www.cap.so`, `https://cap.link`, and `https://www.cap.link`. + - This ensures that assets load smoothly if accessed directly from a browser. + +## Step 4: Enter Your Cloudflare R2 Details in Cap Desktop + +1. Return to the "R2 Config" section in Cap Desktop. +2. Fill in the following information: + - **Access Key ID**: Paste the key ID from the R2 dashboard. + - **Secret Access Key**: Paste the corresponding secret key. + - **Endpoint**: Usually follows `https://.r2.cloudflarestorage.com`. Find the exact endpoint in your R2 bucket details. + - **Bucket Name**: The name of your R2 bucket (e.g., `my-cap-uploads`). + - **Region**: R2 often uses `auto`. Check your bucket details to confirm. + +## Step 5: Test and Save Your Connection + +1. **Test Connection**: Click "Test Connection" in Cap Desktop to verify that it can communicate with your R2 bucket successfully. +2. **Save Configuration**: Once you see a successful connection message, save your settings. + +With these steps completed, Cap Desktop will now use your Cloudflare R2 bucket to store and serve assets, giving you full control over how and where your content is hosted. + +--- + +## Benefits of Using Cloudflare R2 with Cap Desktop + +- **Full Data Ownership**: Your files stay under your control, not locked into a third-party platform. +- **S3-Compatible & Scalable**: R2 is designed to be S3-compatible, making it simple to use with Cap or other tools. +- **Global Performance**: Cloudflare’s extensive network ensures quick, reliable access to your files worldwide. +- **Cost-Effective**: R2 often provides competitive pricing compared to traditional cloud storage solutions. + +--- + +## Accessing Your R2 Files in Cap + +After setting up Cloudflare R2 in Cap Desktop, any new shareable links you create will be served from your R2 bucket. This means: + +- Faster load times for your images and videos. +- Greater flexibility to scale as you grow. +- Improved ownership and long-term cost savings. + +With your Cloudflare R2 integration complete, you can enjoy seamless, secure, and efficient content delivery directly within Cap Desktop—no extra steps, no compromises. diff --git a/apps/web/next.config.mjs b/apps/web/next.config.mjs index dd804a5d..58ef2639 100644 --- a/apps/web/next.config.mjs +++ b/apps/web/next.config.mjs @@ -70,6 +70,11 @@ const nextConfig = { destination: "/blog/:slug", permanent: true, }, + { + source: "/docs/s3-config", + destination: "/docs", + permanent: true, + }, ]; }, env: { diff --git a/apps/web/public/docs/s3-config.jpg b/apps/web/public/docs/s3-config.jpg deleted file mode 100644 index 8954833fab89b3651fa1598c62de554bed4c7039..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151287 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

vb-T1(U|*_|$W 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 LVXvjlzl;A1@c=dy literal 0 HcmV?d00001 diff --git a/apps/web/public/docs/s3-config/bunny.jpg b/apps/web/public/docs/s3-config/bunny.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6fa977319f8610a93e377834ac694af0bddc7e12 GIT binary patch literal 104519 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

pffl7KaZYiI040%?BW|xp;tA;5<4kI-4EG{B`|l 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 DIJXLW literal 0 HcmV?d00001 diff --git a/apps/web/public/docs/s3-config/minio.jpg b/apps/web/public/docs/s3-config/minio.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bda44897a0be688dc028b20a65fde03f6efa9f07 GIT binary patch literal 96116 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 Zn6K|Doh`|o7(@yf=V89p5&X6EzX0w|m$?7{ literal 0 HcmV?d00001 diff --git a/apps/web/public/docs/s3-config/supabase.jpg b/apps/web/public/docs/s3-config/supabase.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5f1ef540d1a4fdc1ae23ce61094f76fdaa1321ce GIT binary patch literal 100789 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%0D^ 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 z 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 = {}; + let frontMatterLines = frontMatterBlock.trim().split("\n"); + let metadata: Partial = {}; frontMatterLines.forEach((line) => { let [key, ...valueArr] = line.split(": "); + if (!key) return; + let value = valueArr.join(": ").trim(); value = value.replace(/^['"](.*)['"]$/, "$1"); // Remove quotes - metadata[key!.trim() as keyof PostMetadata] = value; + metadata[key.trim() as keyof (PostMetadata | DocMetadata)] = value; }); - return { metadata: metadata as PostMetadata, content }; + return { + metadata: metadata as (PostMetadata | DocMetadata), + content + }; } function getMDXFiles(dir: string) { - return fs.readdirSync(dir).filter((file) => path.extname(file) === ".mdx"); + const files: string[] = []; + + function scanDir(currentDir: string) { + const entries = fs.readdirSync(currentDir); + entries.forEach(entry => { + const fullPath = path.join(currentDir, entry); + const stat = fs.statSync(fullPath); + + if (stat.isDirectory()) { + scanDir(fullPath); + } else if (path.extname(entry) === '.mdx') { + // Store paths relative to the base dir + const relativePath = path.relative(dir, fullPath); + console.log('Found MDX file:', { relativePath, fullPath }); + files.push(relativePath); + } + }); + } + + console.log('Scanning directory:', dir); + scanDir(dir); + console.log('Found files:', files); + return files; } function readMDXFile(filePath: string) { @@ -47,10 +78,18 @@ function readMDXFile(filePath: string) { } function getMDXData(dir: string) { + console.log('Getting MDX data from:', dir); let mdxFiles = getMDXFiles(dir); - return mdxFiles.map((file) => { - let { metadata, content } = readMDXFile(path.join(dir, file)); - let slug = path.basename(file, path.extname(file)); + return mdxFiles.map((relativePath) => { + const fullPath = path.join(dir, relativePath); + console.log('Processing file:', { relativePath, fullPath }); + let { metadata, content } = readMDXFile(fullPath); + let slug = relativePath + .replace(/\.mdx$/, '') // Remove .mdx extension + .split(path.sep) // Split on directory separator + .join('/'); // Join with forward slashes for URL + + console.log('Generated slug:', { relativePath, slug }); return { metadata, slug, From a8ab944f86bdea8e733ed29e405f9ae08d156664 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Tue, 17 Dec 2024 15:47:16 +0000 Subject: [PATCH 33/33] feat: Fix docs sitemap --- apps/web/app/sitemap.ts | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/web/app/sitemap.ts b/apps/web/app/sitemap.ts index 6bbcca0b..7654df4b 100644 --- a/apps/web/app/sitemap.ts +++ b/apps/web/app/sitemap.ts @@ -1,6 +1,6 @@ import { promises as fs } from "fs"; import path from "path"; -import { getBlogPosts } from "@/utils/blog"; +import { getBlogPosts, getDocs } from "@/utils/blog"; import { seoPages } from "../lib/seo-pages"; async function getPagePaths( @@ -14,7 +14,6 @@ async function getPagePaths( if ( entry.isDirectory() && entry.name !== "dashboard" && - !entry.name.startsWith("s") && entry.name !== "blog" && !entry.name.startsWith("[") ) { @@ -28,7 +27,6 @@ async function getPagePaths( const routePath = "/" + relativePath.split(path.sep).slice(1).join("/"); if ( !routePath.includes("/dashboard") && - !routePath.split("/").some((segment) => segment.startsWith("s")) && !routePath.includes("[") ) { const stats = await fs.stat(fullPath); @@ -58,15 +56,21 @@ export default async function sitemap() { }; }); + // Add docs routes + const docs = getDocs(); + const docsRoutes = docs.map((doc) => ({ + path: `/docs/${doc.slug}`, + lastModified: new Date().toISOString(), // You might want to add a publishedAt to doc metadata + })); + // Add SEO pages const seoRoutes = Object.keys(seoPages).map((slug) => ({ path: `/${slug}`, - // Set lastModified to current date since these are static pages lastModified: new Date().toISOString(), })); // Combine routes and ensure '/' is first - const allRoutes = [...pagePaths, ...blogRoutes, ...seoRoutes]; + const allRoutes = [...pagePaths, ...blogRoutes, ...docsRoutes, ...seoRoutes]; const homeRoute = allRoutes.find((route) => route.path === "/"); const otherRoutes = allRoutes.filter((route) => route.path !== "/");