Skip to content

Commit c378dc6

Browse files
committed
[*] refactor: video-editor
1 parent 21934aa commit c378dc6

File tree

7 files changed

+120
-184
lines changed

7 files changed

+120
-184
lines changed

lib/video-editor/src/tracks/audio_track.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,17 @@ pub struct AudioTrack {
3333
impl AudioTrack {
3434
pub fn new(track: InnerTrack) -> Self {
3535
Self {
36-
name: String::default(),
36+
name: "A".to_string(),
3737
hiding: false,
3838
track,
3939
}
4040
}
4141

42+
pub fn with_name(mut self, name: String) -> Self {
43+
self.name = name;
44+
self
45+
}
46+
4247
pub fn set_name(&mut self, name: String) {
4348
self.name = name;
4449
}

lib/video-editor/src/tracks/overlay_track.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,17 @@ impl OverlayTrack {
2323

2424
pub fn new_with_inner(track: InnerTrack) -> Self {
2525
Self {
26-
name: String::default(),
26+
name: "O".to_string(),
2727
hiding: false,
2828
track,
2929
}
3030
}
3131

32+
pub fn with_name(mut self, name: String) -> Self {
33+
self.name = name;
34+
self
35+
}
36+
3237
pub fn set_name(&mut self, name: String) {
3338
self.name = name;
3439
}

lib/video-editor/src/tracks/subtitle_track.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,18 @@ pub struct SubtitleTrack {
2222
impl SubtitleTrack {
2323
pub fn new(track: InnerTrack, subtitles: Vec<SubtitleEntry>) -> Self {
2424
Self {
25-
name: String::default(),
25+
name: "S".to_string(),
2626
hiding: false,
2727
track,
2828
subtitles,
2929
}
3030
}
3131

32+
pub fn with_name(mut self, name: String) -> Self {
33+
self.name = name;
34+
self
35+
}
36+
3237
pub fn set_name(&mut self, name: String) {
3338
self.name = name;
3439
}

lib/video-editor/src/tracks/video_track.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,18 @@ pub struct VideoTrack {
4141
impl VideoTrack {
4242
pub fn new(track: InnerTrack) -> Self {
4343
Self {
44-
name: String::default(),
44+
name: "V".to_string(),
4545
hiding: false,
4646
muted: false,
4747
track,
4848
}
4949
}
5050

51+
pub fn with_name(mut self, name: String) -> Self {
52+
self.name = name;
53+
self
54+
}
55+
5156
pub fn set_name(&mut self, name: String) {
5257
self.name = name;
5358
}

wayshot/src/logic/video_editor/conversion.rs

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ use std::{
1212
time::{Duration, SystemTime},
1313
};
1414
use video_editor::{
15+
media::media_type::MediaType,
1516
project::{
1617
project::{ProjectPreviewConfig, Resolution as ProjectPreviewResolution},
1718
recent::RecentFile,
@@ -56,7 +57,6 @@ impl From<Manager> for UIVideoEditorTracksManager {
5657
impl From<Track> for UIVideoEditorTrack {
5758
fn from(track: Track) -> Self {
5859
match track {
59-
// TODO: 获取截图
6060
Track::Video(inner) => UIVideoEditorTrack {
6161
name: if inner.name.is_empty() {
6262
"V".to_string().into()
@@ -263,6 +263,18 @@ impl From<UIVideoEditorPreviewConfig> for ProjectPreviewConfig {
263263
}
264264
}
265265

266+
impl From<MediaType> for UIVideoEditorTrackType {
267+
fn from(media_type: MediaType) -> UIVideoEditorTrackType {
268+
match media_type {
269+
MediaType::Video => UIVideoEditorTrackType::Video,
270+
MediaType::Audio => UIVideoEditorTrackType::Audio,
271+
MediaType::Image => UIVideoEditorTrackType::Overlay,
272+
MediaType::Subtitle => UIVideoEditorTrackType::Subtitle,
273+
MediaType::Text => UIVideoEditorTrackType::Overlay,
274+
}
275+
}
276+
}
277+
266278
pub fn segment_left_screenshot(seg: &Segment) -> slint::Image {
267279
seg.first_frame_image()
268280
.ok()
@@ -291,10 +303,6 @@ pub fn segment_right_screenshot(seg: &Segment) -> slint::Image {
291303
.unwrap_or_default()
292304
}
293305

294-
fn millis_to_duration(millis: i32) -> Duration {
295-
Duration::from_millis(millis as u64)
296-
}
297-
298306
fn duration_to_millis(duration: Duration) -> i32 {
299307
duration.as_millis() as i32
300308
}

0 commit comments

Comments
 (0)