modelscope/3D-Speaker

请教多模态说话人日志处理问题

liuruoling opened this issue · 1 comments

你好,我在运行3D-Speaker-main/egs/3dspeaker/speaker-diarization的run_video.sh,在speaker-diarization/local/vision_processer.py的第89行,frame_st, frame_ed = int(audio_sample_st/640), int(audio_sample_ed/640),计算每个音频段的帧数时,为什么是将采样点数除以640,这样算出来是40ms一帧,640这个数是怎么得出来的。

据我所知,不同的视频帧率会不一样的,会对结果有什么影响吗?vision_processer.py是否对视频做过处理?

 for [audio_sample_st, audio_sample_ed] in self.audio_vad:
            # frame_st and frame_ed are the starting and ending frames of current interval.
            frame_st, frame_ed = int(audio_sample_st/640), int(audio_sample_ed/640)
            num_frames = frame_ed - frame_st + 1

video帧率是25fps,audio是16k,模型只支持处理该类型的数据,run_video.sh中的stage2已经对音视频进行了格式转换。
frame_st和frame_ed指vad结果中audio片段对应的video片段起始帧,并非audio帧。audio_sample_st/16000*25=audio_sample_st/640