ZLMediaKit / ZLMediaKit

WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT server and client framework based on C++11
https://docs.zlmediakit.com
Other
14.08k stars 3.45k forks source link

[功能请求] Could you add an automatic function to redirect old links to the new source? #3901

Open Coloryr opened 2 months ago

Coloryr commented 2 months ago

描述该功能的用处,可以提供相关资料描述该功能

Steps:

  1. Use ffmpeg to push a stream to the address rtps://127.0.0.1/live/test
  2. Use ffplay to play this address rtps://127.0.0.1/live/test
  3. Stop ffmpeg from pushing the stream, but do not exit ffplay, ffplay is still pulling the stream
  4. Reopen ffmpeg to push the stream to the same address

Issue: ffplay will not receive the data from the re-push, it can only reconnect

Is it possible to receive the re-push data without restarting ffplay?

步骤:

  1. 使用ffmpeg推流一个地址 rtps://127.0.0.1/live/test
  2. 使用ffplay播放这个地址 rtps://127.0.0.1/live/test
  3. 停止ffmpeg推流,此时不退出ffplay,ffplay还在拉流
  4. 重新打开ffmpeg推流到同样的地址

能否不重启ffplay的情况下拿到再次推流的数据

TRANS_BY_GITHUB_AI_ASSISTANT

该功能是否用于改进项目缺陷,如果是,请描述现有缺陷

ffplay不会拿到再次推流的数据,只能重连

描述你期望实现该功能的方式和最终效果

不需要重启ffplay就能继续播放

Coloryr commented 2 months ago

https://github.com/user-attachments/assets/1da42b62-3440-433f-89bc-bb527c6bc14c

xiongguangjie commented 2 months ago

This is an active end of the stream, of course, the stream will be unregistered, and resuming the stream will not take effect. It requires an abnormal disconnection, such as a TCP abnormal disconnection, for the resuming to take effect.

你这种是主动结束推流,当然流会注销,续推无法生效, 需要异常断开如tcp异常断开,续推等待才能生效

TRANS_BY_GITHUB_AI_ASSISTANT