ffmpeg 中 rtmpproto.c 超时的默认值是多少?
What's the default value of timeout for rtmpproto.c in ffmpeg?
我使用 ffmpeg 制作了一个 rtmp 流媒体 android 应用程序。我想知道流式传输但网络离线时的超时时间。我检查了 rtmpproto.c 实现:
{"timeout", "Maximum timeout (in seconds) to wait for incoming connections. -1 is infinite. Implies -rtmp_listen 1", OFFSET(listen_timeout), AV_OPT_TYPE_INT, {.i64 = -1}, INT_MIN, INT_MAX, DEC, "rtmp_listen" },
我认为超时选项是我想要的。但是我没有找到它的默认值。
timeout 选项的默认值是多少?
根据您引用的代码,默认值{.i64 = -1}
表示无限。
在ijkmediaplayer、ijkplayer中加载rtmpurl
用以下 setOption 替换所有 setOption 以轻松加载 rtmp://....
url
mMediaPlayer = new IjkMediaPlayer();
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "FAST", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "analyzeduration", 1L);
mMediaPlayer.setOption(1, "analyzemaxduration", 100L);
mMediaPlayer.setOption(1, "probesize", 100L);
mMediaPlayer.setOption(1, "flush_packets", 0L);
mMediaPlayer.setOption(4, "framedrop", 0L);
mMediaPlayer.setOption(4, "packet -buffering", 0L);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "fflags", "nobuffer");
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec-HEVC", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec-Auto-Rotate", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec-handle-Resolution-Change", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "opensles", 0);
我使用 ffmpeg 制作了一个 rtmp 流媒体 android 应用程序。我想知道流式传输但网络离线时的超时时间。我检查了 rtmpproto.c 实现:
{"timeout", "Maximum timeout (in seconds) to wait for incoming connections. -1 is infinite. Implies -rtmp_listen 1", OFFSET(listen_timeout), AV_OPT_TYPE_INT, {.i64 = -1}, INT_MIN, INT_MAX, DEC, "rtmp_listen" },
我认为超时选项是我想要的。但是我没有找到它的默认值。
timeout 选项的默认值是多少?
根据您引用的代码,默认值{.i64 = -1}
表示无限。
在ijkmediaplayer、ijkplayer中加载rtmpurl
用以下 setOption 替换所有 setOption 以轻松加载 rtmp://....
url
mMediaPlayer = new IjkMediaPlayer();
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "FAST", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "analyzeduration", 1L);
mMediaPlayer.setOption(1, "analyzemaxduration", 100L);
mMediaPlayer.setOption(1, "probesize", 100L);
mMediaPlayer.setOption(1, "flush_packets", 0L);
mMediaPlayer.setOption(4, "framedrop", 0L);
mMediaPlayer.setOption(4, "packet -buffering", 0L);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "fflags", "nobuffer");
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec-HEVC", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec-Auto-Rotate", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacodec-handle-Resolution-Change", 1);
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "opensles", 0);