public class VideoFileMaker :IDisposable
{
/// <summary>
/// 初始化视频文件。
/// </summary>
/// <param name="filePath">文件路径</param>
/// <param name="videoCodec">视频编码格式</param>
/// <param name="videoWidth">视频宽度</param>
/// <param name="videoHeight">视频高度</param>
/// <param name="videoFrameRate">帧频</param>
/// <param name="audioCodec">音频编码格式</param>
/// <param name="audioSampleRate">音频采样率。【注:采样位数必须为16位】</param>
/// <param name="audioChannelCount">声道数</param>
/// <param name="autoSyncToAudio">如果是实时录制,则可传入true,以音频为基准进行同步。</param>
void Initialize(string filePath, VideoCodecType videoCodec, int videoWidth, int videoHeight, int videoFrameRate, AudioCodecType audioCodec,
int audioSampleRate, int audioChannelCount, bool autoSyncToAudio);
/// <summary>
/// 添加音频帧。
/// </summary>
void AddAudioFrame(byte[] audioframe);
/// <summary>
/// 添加视频帧。如果autoSyncToAudio开启,则自动同步到音频。
/// </summary>
void AddVideoFrame(Bitmap frame);
/// <summary>
/// 添加视频帧。
/// </summary>
/// <param name="frame">视频帧</param>
/// <param name="timeStamp">离开始时的时间长度</param>
void AddVideoFrame(Bitmap frame, TimeSpan timeStamp);
/// <summary>
/// 关闭视频文件。
/// </summary>
/// <param name="waitFinished">如果还有帧等待写入文件,是否等待它们全部写入文件。</param>
void Close(bool waitFinished);
}
this.multimediaManager = MultimediaManagerFactory.GetSingleton();
this.multimediaManager.Initialize("aa01", "", "127.0.0.1", 9900);
this.cameraConnector1.BeginConnect("aa01");
this.microphoneConnector1.BeginConnect("aa01");
this.videoFileMaker.Initialize("test.mp4", VideoCodecType.H264, this.multimediaManager.CameraVideoSize.Width, this.multimediaManager.CameraVideoSize.Height, 10, AudioCodecType.AAC, 16000, 1, true);
this.timer = new System.Threading.Timer(new System.Threading.TimerCallback(this.Callback), null ,0, 100);
this.multimediaManager.AudioPlayed += new ESBasic.CbGeneric<byte[]>(multimediaManager_AudioPlayed);
void multimediaManager_AudioPlayed(byte[] audio)
{
this.videoFileMaker.AddAudioFrame(audio);
}
private void Callback(object state)
{
Bitmap bm = this.cameraConnector1.GetCurrentImage();
this.videoFileMaker.AddVideoFrame(bm);
}
this.videoFileMaker.Close(true);
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有