Skip to content

Commit e6ffebb

Browse files
committed
coderabbit
1 parent 352c0cd commit e6ffebb

File tree

1 file changed

+32
-44
lines changed

1 file changed

+32
-44
lines changed

crates/frame-converter/src/d3d11.rs

Lines changed: 32 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -498,7 +498,7 @@ impl FrameConverter for D3D11Converter {
498498
fn pixel_to_dxgi(pixel: Pixel) -> Result<DXGI_FORMAT, ConvertError> {
499499
match pixel {
500500
Pixel::NV12 => Ok(DXGI_FORMAT_NV12),
501-
Pixel::YUYV422 => Ok(DXGI_FORMAT_YUY2),
501+
Pixel::YUYV422 | Pixel::UYVY422 => Ok(DXGI_FORMAT_YUY2),
502502
_ => Err(ConvertError::UnsupportedFormat(pixel, Pixel::NV12)),
503503
}
504504
}
@@ -548,35 +548,29 @@ unsafe fn copy_frame_to_mapped(frame: &frame::Video, dst: *mut u8, dst_stride: u
548548
match format {
549549
Pixel::NV12 => {
550550
for y in 0..height {
551-
unsafe {
552-
ptr::copy_nonoverlapping(
553-
frame.data(0).as_ptr().add(y * frame.stride(0)),
554-
dst.add(y * dst_stride),
555-
frame.width() as usize,
556-
);
557-
}
551+
ptr::copy_nonoverlapping(
552+
frame.data(0).as_ptr().add(y * frame.stride(0)),
553+
dst.add(y * dst_stride),
554+
frame.width() as usize,
555+
);
558556
}
559557
let uv_offset = height * dst_stride;
560558
for y in 0..height / 2 {
561-
unsafe {
562-
ptr::copy_nonoverlapping(
563-
frame.data(1).as_ptr().add(y * frame.stride(1)),
564-
dst.add(uv_offset + y * dst_stride),
565-
frame.width() as usize,
566-
);
567-
}
559+
ptr::copy_nonoverlapping(
560+
frame.data(1).as_ptr().add(y * frame.stride(1)),
561+
dst.add(uv_offset + y * dst_stride),
562+
frame.width() as usize,
563+
);
568564
}
569565
}
570566
Pixel::YUYV422 | Pixel::UYVY422 => {
571567
let row_bytes = frame.width() as usize * 2;
572568
for y in 0..height {
573-
unsafe {
574-
ptr::copy_nonoverlapping(
575-
frame.data(0).as_ptr().add(y * frame.stride(0)),
576-
dst.add(y * dst_stride),
577-
row_bytes,
578-
);
579-
}
569+
ptr::copy_nonoverlapping(
570+
frame.data(0).as_ptr().add(y * frame.stride(0)),
571+
dst.add(y * dst_stride),
572+
row_bytes,
573+
);
580574
}
581575
}
582576
_ => {}
@@ -590,36 +584,30 @@ unsafe fn copy_mapped_to_frame(src: *const u8, src_stride: usize, frame: &mut fr
590584
match format {
591585
Pixel::NV12 => {
592586
for y in 0..height {
593-
unsafe {
594-
ptr::copy_nonoverlapping(
595-
src.add(y * src_stride),
596-
frame.data_mut(0).as_mut_ptr().add(y * frame.stride(0)),
597-
frame.width() as usize,
598-
);
599-
}
587+
ptr::copy_nonoverlapping(
588+
src.add(y * src_stride),
589+
frame.data_mut(0).as_mut_ptr().add(y * frame.stride(0)),
590+
frame.width() as usize,
591+
);
600592
}
601593
let uv_offset = height * src_stride;
602594
for y in 0..height / 2 {
603-
unsafe {
604-
ptr::copy_nonoverlapping(
605-
src.add(uv_offset + y * src_stride),
606-
frame.data_mut(1).as_mut_ptr().add(y * frame.stride(1)),
607-
frame.width() as usize,
608-
);
609-
}
595+
ptr::copy_nonoverlapping(
596+
src.add(uv_offset + y * src_stride),
597+
frame.data_mut(1).as_mut_ptr().add(y * frame.stride(1)),
598+
frame.width() as usize,
599+
);
610600
}
611601
}
612-
Pixel::YUYV422 => {
602+
Pixel::YUYV422 | Pixel::UYVY422 => {
613603
let bytes_per_pixel = 2;
614604
let row_bytes = frame.width() as usize * bytes_per_pixel;
615605
for y in 0..height {
616-
unsafe {
617-
ptr::copy_nonoverlapping(
618-
src.add(y * src_stride),
619-
frame.data_mut(0).as_mut_ptr().add(y * frame.stride(0)),
620-
row_bytes,
621-
);
622-
}
606+
ptr::copy_nonoverlapping(
607+
src.add(y * src_stride),
608+
frame.data_mut(0).as_mut_ptr().add(y * frame.stride(0)),
609+
row_bytes,
610+
);
623611
}
624612
}
625613
_ => {}

0 commit comments

Comments
 (0)