| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
-
- #include <windows.h>
- #include "MediaSourceRtsp.h"
- int main(int argc, char** argv)
- {
- if (argc != 4) {
- printf("Failed\n");
- printf("RtspPush [src_rtsp] [out_rtsp] [tcp/udp]\n");
- printf("[src_rtsp] input rtsp\n");
- printf("[src_rtsp] output rtsp\n");
- return 0;
- }
- CMediaSourceRtsp pusher;
- pusher.m_Input_rtsp = std::string(argv[1]);
- pusher.m_Output_rtsp = std::string(argv[2]);
- std::string tcporudp = std::string(argv[3]);
- if ((tcporudp == "TCP") || (tcporudp == "tcp"))
- pusher.m_TcpOrudp = "tcp";
- if ((tcporudp == "UDP") || (tcporudp == "udp"))
- pusher.m_TcpOrudp = "udp";
- if (!pusher.OpenInput(pusher.m_Input_rtsp, pusher.m_TcpOrudp)) {
- printf("open input_rtsp failed\n");
- exit(-1);
- }
- if (!pusher.OpenOutput(pusher.m_Output_rtsp)) {
- printf("open output_rtsp failed\n");
- exit(-1);
- }
- int ret = -1;
- while (true) {
-
- std::shared_ptr<AVPacket> packet = nullptr;
- packet = pusher.ReadPacket();
- if (!packet) {
- OutputDebugStringA("GetAvPacket ERROR\n");
- printf("GetAvPacket ERROR\n");
- pusher.ResetConnect();
- continue;
- }
- if ((packet) && (packet->stream_index == pusher.m_nVideoStream)) {
-
- ret = pusher.WritePacket(packet);
- if (ret < 0) {
-
- pusher.CheckOutputNet();
- }
- }
- }
- return 0;
- }
|