% 读取并播放声音
[y, Fs] = audioread('beep.wav');
sound(y, Fs);
figure; plot(y); title('Original Sound Waveform');
% 保存声音到新文件
audiowrite('beepcopy.wav', y, Fs);
% 修改声音的采样频率
[y, fs] = audioread('beep.wav');
sound(y, fs * 2); % 声音频率提高一倍
% 增加音量
sound(2 * y, fs); % 声音变大一倍
% 显示声音波形
figure; plot(y); title('Modified Sound Waveform');
% 读取并播放视频
videoFile = 'test.avi';
videoReader = VideoReader(videoFile);
while hasFrame(videoReader)
videoFrame = readFrame(videoReader);
imshow(videoFrame);
pause(1 / videoReader.FrameRate);
end
% 视频转静态图像
videoFile = 'test.avi';
videoReader = VideoReader(videoFile);
frameNum = 1;
outputFolder = '\test';
if ~exist(outputFolder, 'dir')
mkdir(outputFolder);
end
while hasFrame(videoReader)
videoFrame = readFrame(videoReader);
frameFileName = fullfile(outputFolder, sprintf('frame%d.bmp', frameNum));
imwrite(videoFrame, frameFileName, 'bmp');
frameNum = frameNum + 1;
end
% 添加水印到视频帧
I = imread('1.bmp');
J = imread('2.bmp');
C = imfuse(J, I, 'blend');
imshow(C); title('Watermarked Image');
% 视频快照
vidobj = videoinput('winvideo', 1);
snapshot = getsnapshot(vidobj);
figure; imagesc(snapshot); title('Snapshot Image');
% Modified video snapshot code using webcam
try
% Create a webcam object
cam = webcam;
% Capture a snapshot
snapshot = snapshot(cam);
% Display the snapshot image
figure; imagesc(snapshot); title('Snapshot Image');
% Clear the webcam object
clear cam;
catch ME
% Handle exceptions
disp('An error occurred while capturing the video snapshot:');
disp(ME.message);
end
% 读取和保存视频
videoReader = VideoReader('test.avi');
videoWriter = VideoWriter('output.avi', 'Uncompressed AVI');
videoWriter.FrameRate = videoReader.FrameRate;
open(videoWriter);
while hasFrame(videoReader)
frame = readFrame(videoReader);
writeVideo(videoWriter, frame);
end
close(videoWriter);
delete(videoWriter);
clear videoWriter;
delete(videoReader);
clear videoReader;
上述为本人实验过程中使用的matlab代码,运行无误,以作记录
摄像头拍照环境需要下载硬件包以作支持。