Compare commits

...

3 Commits

Author SHA1 Message Date
Chibani
c7ae803a23
Update README.md 2025-01-10 00:41:56 +02:00
ochibani
36eed3f749
remove ffmpeg print 2025-01-10 00:18:06 +02:00
ochibani
d399851c23
return old merge process (TMP) 2025-01-09 23:58:52 +02:00
3 changed files with 20 additions and 14 deletions

View File

@ -20,16 +20,16 @@ Blue Recorder is available as a Snap and Flatpak package.
Blue Recorder depends on the following dependencies:
```
ffmpeg
gdk
gio
gtk
gstreamer
libadwaita
pipewire
x11-utils
pipewire-pulse
xwininfo
```
Install dependencies for Ubuntu and Debian-based distros:
```
sudo apt install build-essential clang cargo x11-utils ffmpeg libgtk-3-dev libgtk-4-dev libatk1.0-dev libgstreamer1.0-dev libpipewire-0.3-dev
sudo apt install build-essential clang cargo x11-utils ffmpeg libadwaita-1-dev libgstreamer1.0-dev libpipewire-0.3-dev pipewire-pulse
```
Then use `Cargo` to build it:
```

View File

@ -634,7 +634,6 @@ impl Ffmpeg {
ffmpeg_command.args(["-map_metadata", "-1"]);
ffmpeg_command.arg(&self.temp_output_audio_filename);
ffmpeg_command.overwrite();
ffmpeg_command.print_command();
// Sleep for delay
if !is_video_record(&self.temp_video_filename) && !is_input_audio_record(&self.temp_input_audio_filename) {

View File

@ -18,8 +18,6 @@ use std::cell::RefCell;
use std::ops::Add;
use std::path::Path;
use std::rc::Rc;
use std::sync::mpsc;
use std::thread;
use crate::{area_capture, config_management, fluent::get_bundle};
use crate::timer::{RecordClick, recording_delay, start_timer, stop_timer};
@ -988,9 +986,7 @@ fn build_ui(application: &Application, error_dialog: MessageDialog, error_messag
let _stop_button = stop_button.clone();
let _video_switch = video_switch.clone();
let mut _ffmpeg_record_interface = ffmpeg_record_interface.clone();
let (tx, rx) = mpsc::channel::<Result<()>>();
stop_button.connect_clicked(move |_| {
let _tx = tx.clone();
let mut show_play = true;
_record_time_label.set_visible(false);
stop_timer(_record_time_label.clone());
@ -1070,10 +1066,21 @@ fn build_ui(application: &Application, error_dialog: MessageDialog, error_messag
if show_play {
_play_button.show();
}
let merge_request = _ffmpeg_record_interface.borrow_mut().merge();
thread::spawn(move || {
_tx.send(merge_request).unwrap();
});
// Save record
match _ffmpeg_record_interface.borrow_mut().merge() {
Ok(_) => {
_play_button.set_sensitive(true);
_play_button.set_tooltip_text(Some(&get_bundle("play-tooltip", None)));
},
Err(error) => {
_play_button.hide();
let text_buffer = TextBuffer::new(None);
text_buffer.set_text(&format!("{}", error));
_error_message.set_buffer(Some(&text_buffer));
_error_dialog.show();
},
}
});
// Delay window button