このトピックでは、macOS用のNative RTS SDKを、FFmpegに基づくサードパーティのプレーヤーと統合して、ApsaraVideo LiveでRTSを使用する方法について説明します。
手順
ネイティブRTS SDKパッケージをダウンロードして解凍します。 ダウンロードURLの詳細については、「リリースノート」をご参照ください。
rtsdec.cおよびrtsenc.cファイルをFFmpegベースのプレーヤーのlibavformatディレクトリにコピーします。
Makefileファイルを変更します。 次の図に示すように、rtsdec.oファイルとrtsenc.oファイルの説明をMakefileファイルに追加します。
ARTCプロトコルをサポートするようにallformats.cファイルを変更します。
extern AVInputFormat ff_rtc_demuxer;
ffplay.cファイルを変更します。
/* connect rts library to rts plugin */ struct rts_glue_funcs; extern const struct rts_glue_funcs *get_rts_funcs(int version); extern void av_set_rts_demuxer_funcs(const struct rts_glue_funcs *funcs);
|| !strcmp(s->iformat->name, "artc")
av_set_rts_demuxer_funcs(get_rts_funcs(2));
ffplay.cがあるMakefileファイルを変更します。
$(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(EXTRALIBS-$(1)) -lRtsSDK --verbose ifeq ($(TARGET_OS),windows) LDFLAGS += -L../../release/windows/x86_64/RtsSDK/lib/ -lRtsSDK endif ifeq ($(TARGET_OS),mac) LDFLAGS += -L../../release/mac/x86_64/RtsSDK/lib -lRtsSDK endif
コードをコンパイルして実行します。
. /ffplay "artc:// <ストリーミングURL>"
説明低遅延ストリーミングを使用するには:./ffplay -fflags nobuffer -flags low_delay "artc://<Streaming URL>"