MATLAB: Add/extract Audio to/from Video

addaudioextractvideo

How can I extract an audio document(*.wav) from a video document(*.avi)???
How can I add an audio document(*.wav) to a video document(*.avi)???
THX!!!THX!!!THX!!!

Best Answer

  • Write audio in a video using vision.VideoFileWriter. The source of code
    VideoFrameRate = 24;
    TempImage = imread('cameraman.tif');
    load handel.mat
    y = y(1:4 * Fs, :); % select the first 4s
    AudioStep = Fs / VideoFrameRate;
    videoFWriter = vision.VideoFileWriter('Temp.avi', 'FileFormat', 'AVI',...
    'FrameRate', VideoFrameRate, 'AudioInputPort', true);
    for i = 1:(VideoFrameRate * length(y) / Fs)
    TempIndexBeginning = floor((i - 1) * AudioStep) + 1;
    TempIndexEnding = ceil(TempIndexBeginning + AudioStep - 1);
    step(videoFWriter, TempImage, y(TempIndexBeginning:TempIndexEnding));
    end
    release(videoFWriter);
    Read Sound from Video directly usind audioread
    [y1,Fs1] = audioread('Temp.avi');