# agora::rtc::IMediaNodeFactory类 参考 (/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-media-node-factory)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

继承自 agora::RefCountInterface.

<a id="details"></a>

## 详细描述 [#详细描述]

[`IMediaNodeFactory`](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-media-node-factory) 类。

## 构造及析构函数说明 [#构造及析构函数说明]

<a id="afb30af61026e2ef3f6559f8942d688a8"></a>

### ~IMediaNodeFactory() [#imedianodefactory]

<ApiSignature labels="inline protected">

agora::rtc::IMediaNodeFactory::~IMediaNodeFactory()

</ApiSignature>

## 成员函数说明 [#成员函数说明]

<a id="aa6b8aa23b839f89801ca90d5228d712d"></a>

### createAudioPcmDataSender() [#createaudiopcmdatasender]

<ApiSignature labels="pure virtual">

virtual [agora_refptr](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1agora-refptr)&lt;[IAudioPcmDataSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-audio-pcm-data-sender)&gt; agora::rtc::IMediaNodeFactory::createAudioPcmDataSender()

</ApiSignature>

创建一个 PCM 数据发送模块。

该方法创建一个 [`IAudioPcmDataSender`](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-audio-pcm-data-sender) 对象, 可用于 [createCustomAudioTrack](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1base-1-1-i-agora-service#ab267caa07c4614e8bf27da38527150de) 方法。

<h4 data-toc-hidden="true" id={"返回值"}>返回值</h4>

- [IAudioPcmDataSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-audio-pcm-data-sender) 对象：方法调用成功。
- 空指针：方法调用失败。

<a id="a8723328a619ac7786ff9f96a644d5db5"></a>

### createAudioEncodedFrameSender() [#createaudioencodedframesender]

<ApiSignature labels="pure virtual">

virtual [agora_refptr](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1agora-refptr)&lt;[IAudioEncodedFrameSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-audio-encoded-frame-sender)&gt; agora::rtc::IMediaNodeFactory::createAudioEncodedFrameSender()

</ApiSignature>

创建一个已编码音频数据发送模块。

该方法创建一个 [`IAudioEncodedFrameSender`](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-audio-encoded-frame-sender) 对象, 可用于 createCustomAudioTrack 方法。

<h4 data-toc-hidden="true" id={"返回值-1"}>返回值</h4>

- [IAudioEncodedFrameSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-audio-encoded-frame-sender) 对象: 方法调用成功。
- 空指针：方法调用失败。

<a id="ae5c627b7b2671942a75f577dc64a22f7"></a>

### createVideoFrameSender() [#createvideoframesender]

<ApiSignature labels="pure virtual">

virtual [agora_refptr](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1agora-refptr)&lt;[IVideoFrameSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-video-frame-sender)&gt; agora::rtc::IMediaNodeFactory::createVideoFrameSender()

</ApiSignature>

创建一个 YUV 格式的视频帧发送模块。

该方法创建 [`IVideoFrameSender`](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-video-frame-sender) 对象，可用于 [createCustomVideoTrack](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1base-1-1-i-agora-service#aaefc87859c82a4266947f0a4ebd07c51)1 方法。

<h4 data-toc-hidden="true" id={"返回值-2"}>返回值</h4>

- [IVideoFrameSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-video-frame-sender) 对象：方法调用成功。
- 空指针：方法调用失败。

<a id="a5313c5f02951817b9a7f41c156db0338"></a>

### createVideoEncodedImageSender() [#createvideoencodedimagesender]

<ApiSignature labels="pure virtual">

virtual [agora_refptr](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1agora-refptr)&lt;[IVideoEncodedImageSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-video-encoded-image-sender)&gt; agora::rtc::IMediaNodeFactory::createVideoEncodedImageSender()

</ApiSignature>

创建一个已编码视频发送模块。

该方法创建 [`IVideoEncodedImageSender`](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-video-encoded-image-sender) 对象，可用于 [createCustomVideoTrack](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1base-1-1-i-agora-service#a5cbbb4b5bebe8a90953389bb249a2d4d)2 方法。

<h4 data-toc-hidden="true" id={"返回值-3"}>返回值</h4>

- [IVideoEncodedImageSender](/zh-CN/api-reference/rtc-server-sdk/cpp/classagora-1-1rtc-1-1-i-video-encoded-image-sender) 对象：方法调用成功。
- 空指针：方法调用失败。
