AnyChat技术支持论坛

标题: AnyChat 音频录制文件命名 [打印本页]

作者: Zhiyu    时间: 2016-4-7 09:34
标题: AnyChat 音频录制文件命名
您好,我看到论坛里说客户端调用录制方法(BRAC_StreamRecordCtrlEx)时,通过参数(lpUserStr)传入文件名,类似:{"filename":"abc.mp4"},为一个json字符串,关键字为:filename;能够对生成的文件按照希望的名字命名。
我的代码如下:
  1. JObject obj = JObject.Parse("{\"filename\":\"abc.wmv\"}");
复制代码
录制时:
  1. int ret = AnyChatCoreSDK.StreamRecordCtrlEx(-1, true, AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_AUDIO, 0, (string)obj["filename"]);
复制代码
结束时:
  1. int ret = AnyChatCoreSDK.StreamRecordCtrlEx(-1, false, AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_AUDIO, 0, (string)obj["filename"]);
复制代码
但是文件名还是没有改变,这是什么原因呢?求解答,谢谢。



作者: 佰锐科技-江裕    时间: 2016-4-7 09:48
您好,通过StreamRecordCtrlEx来传输唯一标识ID(用最后的lpUserStr参数来传),在服务器端录像完成回调事件中直接对录像文件进行改名即可,lpFileName为录像文件名(自动生成),lpUserStr为客户端传递的ID,调用操作系统的文件改名函数API接口对文件进行改名。
作者: Zhiyu    时间: 2016-4-7 10:40
佰锐科技-江裕 发表于 2016-4-7 09:48
您好,通过StreamRecordCtrlEx来传输唯一标识ID(用最后的lpUserStr参数来传),在服务器端录像完成回调事 ...

你好,我使用的是c#的demo,在demo中我找到了音视频录制回调函数,代码如下:
  1. /// <summary>
  2.         /// 音视频录制回调函数
  3.         /// </summary>
  4.         /// <param name="userId"></param>
  5.         /// <param name="filePath"></param>
  6.         /// <param name="param"></param>
  7.         /// <param name="recordType"></param>
  8.         /// <param name="userValue"></param>
  9.         private static void SetRecordCallBack_CallBack(int userId, string filePath, int param, bool recordType, int userValue)
  10.         {
  11.             if (SetRecordReceivedCallBack != null)
  12.                 SetRecordReceivedCallBack(userId, filePath, param, recordType, userValue);
  13.         }
复制代码
里面的这几个参数应该如何理解呢?对于c#的demo文件又应该如何重命名呢?
作者: Zhiyu    时间: 2016-4-7 10:41
佰锐科技-江裕 发表于 2016-4-7 09:48
您好,通过StreamRecordCtrlEx来传输唯一标识ID(用最后的lpUserStr参数来传),在服务器端录像完成回调事 ...

你好,我使用的是c#的demo,在demo中我找到了音视频录制回调函数,代码如下:
  1. /// <summary>
  2.         /// 音视频录制回调函数
  3.         /// </summary>
  4.         /// <param name="userId"></param>
  5.         /// <param name="filePath"></param>
  6.         /// <param name="param"></param>
  7.         /// <param name="recordType"></param>
  8.         /// <param name="userValue"></param>
  9.         private static void SetRecordCallBack_CallBack(int userId, string filePath, int param, bool recordType, int userValue)
  10.         {
  11.             if (SetRecordReceivedCallBack != null)
  12.                 SetRecordReceivedCallBack(userId, filePath, param, recordType, userValue);
  13.         }
复制代码
里面的这几个参数应该如何理解呢?对于c#的demo文件又应该如何重命名呢?
作者: 佰锐科技-江裕    时间: 2016-4-7 11:02
Zhiyu 发表于 2016-4-7 10:41
你好,我使用的是c#的demo,在demo中我找到了音视频录制回调函数,代码如下:里面的这几个参数应该如何理 ...

您好,修改文件名主要是通过移动方法(Move(string sourceFileName, string destFileName))实现,该方法有两个参数,分别是:sourceFileName(源文件名)、destFileName(目标文件名),即把“待修改的文件名”移到“目标文件名(修改后的文件名)”。
作者: 佰锐科技-邵光清    时间: 2016-5-14 01:27
您好,参数有误,请参考:拍照、录像支持自定义文件名




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3