1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- using System;
- using System.Collections.Generic;
- using Vinno.FIS.TRTCClient.Common.Enum;
- using Vinno.vCloud.FIS.CrossPlatform.Common.LiveVideo;
- using Vinno.vCloud.FIS.CrossPlatform.Common.LiveVideo.Interface;
- using Vinno.vCloud.Protocol.Infrastructures;
- namespace Vinno.vCloud.Common.FIS.LiveVideos
- {
- internal interface ILiveVideoPusherManager : IPreview, IDisposable
- {
- /// <summary>
- /// 推流状态改变事件通知
- /// </summary>
- event EventHandler<PusherState> PusherStateChanged;
- /// <summary>
- /// 获取品牌列表
- /// </summary>
- /// <returns></returns>
- List<string> GetBrandList();
- /// <summary>
- /// 获取型号列表
- /// </summary>
- /// <param name="brand"></param>
- /// <param name="model"></param>
- /// <returns></returns>
- List<string> GetModelList(string brand);
- /// <summary>
- /// 获取推荐分辨率
- /// </summary>
- /// <param name="brand"></param>
- /// <param name="model"></param>
- /// <returns></returns>
- DeviceRecommandResolution GetRecommandResolution(string brand, string model);
- /// <summary>
- /// 当前的推流模式
- /// </summary>
- EnumPusherType CurrentPushType { get; }
- void UpdateCurrentVideoDeviceInfoList(List<CPVideoDeviceInfo> infos);
- /// <summary>
- /// 是否正在推流
- /// </summary>
- bool IsPushing { get; }
- /// <summary>
- /// 重新推流
- /// </summary>
- void RestartPusher();
- /// <summary>
- /// 设置是否暂停
- /// </summary>
- /// <param name="isPaused"></param>
- void SetIsPaused(bool isPaused);
- void SetMute(bool isMute);
- void PushModeChanged(LiveDataMode pushLiveMode, LiveProtocol liveProtocol);
- void LiveStateChanged(LiveEventArgs liveEventArgs);
- }
- public enum PusherState
- {
- Preparing,
- Prepared
- }
- }
|