{"id":255768,"date":"2017-05-09T08:25:35","date_gmt":"2017-05-09T00:25:35","guid":{"rendered":"http:\/\/blog.zhenglei.net\/?p=255768"},"modified":"2017-05-09T08:36:25","modified_gmt":"2017-05-09T00:36:25","slug":"crtmpserver-convert-rtsp-streaming-to-rtmp-streaming","status":"publish","type":"post","link":"https:\/\/blog.zhenglei.net\/?p=255768","title":{"rendered":"crtmpserver convert rtsp streaming to rtmp streaming"},"content":{"rendered":"<h1><span style=\"color: #0000ff\">Rtsp Broadcasting:\u00a0 <\/span><\/h1>\n<p>Braodcast from android handset with the help of Rtsp Server from VXG (Google player)<\/p>\n<p>IP: 172.24.1.168\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Port: 5540<\/p>\n<p>Resolution: 720X480<\/p>\n<p>Bitrate:\u00a0 Video=1000 kpbs,\u00a0 Audio=64 kpbs<\/p>\n<p>URL = rtsp:\/\/172.24.1.168:5540\/ch0<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #0000ff\"><strong>Streaming Server:<\/strong> <\/span><\/p>\n<p>Debian 8 with crtmpserver v1.1c<\/p>\n<p>IP = 172.24.1.69<\/p>\n<p>Enable RTSP source by add following definition in the externalStreams section of crtmpserver.lua:<\/p>\n<p><em>externalStreams ={<\/em><\/p>\n<p><em>\u00a0\u00a0 {<\/em><br \/>\n<em>\u00a0\u00a0\u00a0\u00a0 <span style=\"color: #ff0000\">uri=&#8221;rtsp:\/\/172.24.1.168:5540\/ch0&#8243;,<\/span><\/em><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0\u00a0\u00a0 localStreamName=&#8221;rtsp&#8221;,<\/em><\/span><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0\u00a0\u00a0 forceTcp=true,<\/em><\/span><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0\u00a0\u00a0 keepAlive=true<\/em><\/span><br \/>\n<em>\u00a0 \u00a0\u00a0 },<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #0000ff\">Verify RTMP on Workstation :<\/span><\/p>\n<p>ffplay rtmp:\/\/172.24.1.69\/live\/rtsp<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #0000ff\">Support rtmp and rtsp same time from crtmpserver<\/span><\/p>\n<p>Enable rtsp inbound in accept section of config file:<\/p>\n<p><em>acceptors =<\/em><br \/>\n<em> {<\/em><br \/>\n<em>\u00a0\u00a0\u00a0 {<\/em><br \/>\n<em>\u00a0\u00a0\u00a0 ip=&#8221;0.0.0.0&#8243;,<\/em><br \/>\n<em>\u00a0\u00a0\u00a0 port=6666,<\/em><br \/>\n<em>\u00a0\u00a0\u00a0 protocol=&#8221;inboundLiveFlv&#8221;,<\/em><br \/>\n<em>\u00a0\u00a0\u00a0 waitForMetadata=true,<\/em><br \/>\n<em>\u00a0\u00a0 },<\/em><br \/>\n<em>\u00a0\u00a0 {<\/em><br \/>\n<em>\u00a0\u00a0 ip=&#8221;0.0.0.0&#8243;,<\/em><br \/>\n<em>\u00a0\u00a0 port=9999,<\/em><br \/>\n<em>\u00a0\u00a0 protocol=&#8221;inboundTcpTs&#8221;<\/em><br \/>\n<em>\u00a0\u00a0 },<\/em><\/p>\n<p><em>\u00a0<span style=\"color: #ff0000\"> {<\/span><\/em><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0 ip=&#8221;0.0.0.0&#8243;,<\/em><\/span><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0 port=5544,<\/em><\/span><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0 protocol=&#8221;inboundRtsp&#8221;<\/em><\/span><br \/>\n<span style=\"color: #ff0000\"><em>\u00a0\u00a0 },<\/em><\/span><\/p>\n<p><em>}<\/em><\/p>\n<p><span style=\"color: #0000ff\">Verify RTSP on Workstation :<\/span><\/p>\n<p>ffplay rtsp:\/\/172.24.1.69:5544\/rtsp<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Rtsp Broadcasting:\u00a0 Braodcast from andro &hellip; <a href=\"https:\/\/blog.zhenglei.net\/?p=255768\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,6,16],"tags":[357,356,358],"class_list":["post-255768","post","type-post","status-publish","format-standard","hentry","category-flash","category-internet","category-javascript","tag-crtmpserver","tag-rtmp","tag-rtsp"],"_links":{"self":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts\/255768","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=255768"}],"version-history":[{"count":3,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts\/255768\/revisions"}],"predecessor-version":[{"id":255771,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts\/255768\/revisions\/255771"}],"wp:attachment":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=255768"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=255768"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=255768"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}