├── librtmp
├── lib
│ ├── librtmp.so
│ ├── librtmp.a
│ ├── librtmp.so.1
│ └── pkgconfig
│ │ └── librtmp.pc
└── include
│ └── librtmp
│ ├── http.h
│ ├── log.h
│ └── amf.h
├── prtsp_conn.cpp
├── prtsp_client.cpp
├── README.md
├── prtsp_server.h
├── ptask_timer.h
├── pmedia_client.h
├── pstring.h
├── Makefile
├── pmedia_client.cpp
├── psip_conn.h
├── prtmp_client.h
├── pencoder.h
├── pdecoder.h
├── plog.h
├── pmedia.cpp
├── pmanager.h
├── prtsp_conn.h
├── ptask.h
├── pstring.cpp
├── psip_server.h
├── prtsp_client.h
├── ptask_timer.cpp
├── prtsp_server.cpp
├── psip_client.h
├── osip2
└── include
│ └── osipparser2
│ ├── osip_md5.h
│ ├── headers
│ ├── osip_allow.h
│ ├── osip_mime_version.h
│ ├── osip_content_encoding.h
│ ├── osip_content_length.h
│ ├── osip_alert_info.h
│ ├── osip_error_info.h
│ ├── osip_accept.h
│ ├── osip_content_disposition.h
│ ├── osip_call_info.h
│ ├── osip_cseq.h
│ ├── osip_content_type.h
│ ├── osip_call_id.h
│ ├── osip_accept_language.h
│ ├── osip_header.h
│ ├── osip_route.h
│ ├── osip_accept_encoding.h
│ ├── osip_record_route.h
│ ├── osip_contact.h
│ ├── osip_from.h
│ ├── osip_to.h
│ ├── osip_via.h
│ ├── osip_proxy_authentication_info.h
│ ├── osip_authentication_info.h
│ ├── osip_proxy_authenticate.h
│ └── osip_www_authenticate.h
│ ├── osip_headers.h
│ ├── osip_body.h
│ ├── osip_list.h
│ └── osip_const.h
├── ptask.cpp
├── prtsp_comm.h
├── pmanager.cpp
├── plog.cpp
├── psip_server.cpp
├── prtsp_comm.cpp
└── psip_conn.cpp
/librtmp/lib/librtmp.so:
--------------------------------------------------------------------------------
1 | librtmp.so.1
--------------------------------------------------------------------------------
/prtsp_conn.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/greenjim301/pmedia/HEAD/prtsp_conn.cpp
--------------------------------------------------------------------------------
/prtsp_client.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/greenjim301/pmedia/HEAD/prtsp_client.cpp
--------------------------------------------------------------------------------
/librtmp/lib/librtmp.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/greenjim301/pmedia/HEAD/librtmp/lib/librtmp.a
--------------------------------------------------------------------------------
/librtmp/lib/librtmp.so.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/greenjim301/pmedia/HEAD/librtmp/lib/librtmp.so.1
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # pmedia
2 | 简单的流媒体服务器。
3 |
支持RTSP发流。
4 |
支持RTSP收流。
5 |
支持GB28181收流。
6 |
支持RTMP收流。
7 |
支持流复用。
8 |
更多介绍详见https://blog.csdn.net/greenjim301/article/details/89554717
9 |
--------------------------------------------------------------------------------
/prtsp_server.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "ptask.h"
4 | #include "pstring.h"
5 |
6 | class PRtspServer : public PTask
7 | {
8 | public:
9 | PRtspServer(PString& ip, uint16_t port);
10 | ~PRtspServer();
11 |
12 | void OnRun();
13 |
14 | private:
15 | PString m_ip;
16 | uint16_t m_port;
17 | int m_sock;
18 | };
19 |
--------------------------------------------------------------------------------
/librtmp/lib/pkgconfig/librtmp.pc:
--------------------------------------------------------------------------------
1 | prefix=/opt/librtmp
2 | exec_prefix=${prefix}
3 | libdir=/opt/librtmp/lib
4 | incdir=${prefix}/include
5 |
6 | Name: librtmp
7 | Description: RTMP implementation
8 | Version: v2.4
9 | Requires: libssl,libcrypto
10 | URL: http://rtmpdump.mplayerhq.hu
11 | Libs: -L${libdir} -lrtmp -lz
12 | Libs.private:
13 | Cflags: -I${incdir}
14 |
--------------------------------------------------------------------------------
/ptask_timer.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "ptask.h"
4 | #include