【问题标题】:Agora Cloud Recording doesn't record mixed in audio filesAgora 云录制不录制混音文件
【发布时间】:2021-09-02 20:01:04
【问题描述】:

您好,我已经成功录制了一个 Agora 音频通话,其中一个人以广播角色讲话,并且在通话期间混合了许多音频文件。

在我们升级到 Flutter 2 和相关的升级包之前,所有的音频都在录制。

现在录制的只是广播员的声音,没有混音。

主播和观众都可以毫无问题地听到通话中的混音。

代码(Flutter)类似这样:

使用默认设置将音频混入有效的 RTC 会话

    final playing = await session.playAudioFile(path, (){
      state = MessagePlayerState.STOPPED;
      if (!disposing) {
        whenFinished();
      }
    });

录制选项如下(我的UID是硬编码的字符串,与任何参与者的UID都不一样)

    http.Response response = await http.post(
      Uri.https(AGORA_REST_URL, '$AGORA_REST_API_VERSION/$appId/cloud_recording/resourceid/$resourceId/mode/mix/start'),
      headers: <String, String>{
        HttpHeaders.authorizationHeader: 'Basic $basicAuth',
        HttpHeaders.contentTypeHeader: 'application/json; charset=UTF-8',
      },
      body: jsonEncode(<String, dynamic>{
        'cname': channelName,
        'uid': uid,
        'clientRequest': {
          'recordingConfig':{
            'channelType':0,
            'streamTypes':2, // TODO: Should be a streamTypes of 0 (audio only), but get failures.
            'audioProfile':1,
            'videoStreamType':0,
            'maxIdleTime':120,
            'transcodingConfig':{
              'width':360,
              'height':640,
              'fps':30,
              'bitrate':600,
              'maxResolutionUid':'1',
              'mixedVideoLayout':1
            },
            'recordingFileConfig':{
              'avFileType': ['hls','mp4']
            }
          },
          'storageConfig':{
            'vendor':1,
            'region':3,
            'bucket':AWS_RECORDING_BUCKET, // TODO: Env Var
            'accessKey':AWS_BUCKET_ACCESS_KEY,
            'secretKey':AWS_BUCKET_SECRET_KEY,
          }
        },
      }),
    );

m3u8 和 ts 文件存在于 S3 存储桶中。

在 S3 中调整元数据标签会导致文件在 Safari 中可以正常播放,但听不到混音。

使用 ffmpeg 将文件转换为 aac 显示此错误

[hls @ 0x7fd6cc808200] Opening '2838cfc6254e9fec2e3088976f39d7ce_bip_20210618014151427.ts' for reading
[mpegts @ 0x7fd6cc00a600] Packet corrupt (stream = 0, dts = 1437390).
size=     480kB time=00:00:30.69 bitrate= 128.1kbits/s speed=1.49e+03x    
video:0kB audio:470kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.093976%

结果与 S3 存储桶中的结果相同。

感谢任何帮助或提示。

【问题讨论】:

    标签: agora.io


    【解决方案1】:

    这可以关闭/忽略。事实证明,当应用程序正常使用时,我们有一个边缘条件没有显示,但是,例如,如果你想要一个非常受舞台管理的录制来向其他人炫耀它就坏了。

    【讨论】:

      猜你喜欢
      • 2022-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-31
      • 1970-01-01
      • 2022-08-16
      • 2021-11-27
      • 1970-01-01
      相关资源
      最近更新 更多