Red5 streaming über RTMPT
Hallo,
ich habe Red5 erfolgreich auf meinem lokalen Rechner und auf meinem Webserber installiert.
D.h. ich starte meine website, starte mein streaming bild mit simpleBroadcaster.swf auf chrome und empfange mein Bild mit simpleSubscriber.swf auf Firefox.
So weit so gut. Wenn ich nun auf meinem lokalen Rechner unter Dienste die Red5 Application beende dann ist das Empfängerbild von simpleSubscriber weg.
Ich vermute, ich habe ein Pfad-fehler bei meiner Red5 installation auf dem Webserver.
Nach einigen Recherchen habe ich gelesen, dass ich nur mit RTMPT über HTTP streamen kann.
RTMPT is RTMP protocol over HTTP
Red5 wir standardmäßig mit localhost (127.0.0.1) und Port 5080 installiert. Mir fehlen die Basics um die richtigen Änderungen einzustellen.
In einigen Foren habe ich gelesen dass ich die nötigen Ports freimachen muss. Vor allem Port 80 muss frei sein. Der ist bei mir frei. Ich habe ihn bei
Port testen getestet. Alle anderen (1935, 8088, 5080) sind zu.
im Ordner conf/jee-container.xml habe ich den Kommentar entfernt um den Code zu aktivieren:
In conf/red5-core.xml habe ich folgenden Code hinzugefügt:
Quelle: conf/red5-core.xml
In der Datei conf/red5.properties
lassen sich die http, rtmp und rtmpt einstellen:
Danke im Voraus.
ich habe Red5 erfolgreich auf meinem lokalen Rechner und auf meinem Webserber installiert.
D.h. ich starte meine website, starte mein streaming bild mit simpleBroadcaster.swf auf chrome und empfange mein Bild mit simpleSubscriber.swf auf Firefox.
So weit so gut. Wenn ich nun auf meinem lokalen Rechner unter Dienste die Red5 Application beende dann ist das Empfängerbild von simpleSubscriber weg.
Ich vermute, ich habe ein Pfad-fehler bei meiner Red5 installation auf dem Webserver.
Nach einigen Recherchen habe ich gelesen, dass ich nur mit RTMPT über HTTP streamen kann.
RTMPT is RTMP protocol over HTTP
Red5 wir standardmäßig mit localhost (127.0.0.1) und Port 5080 installiert. Mir fehlen die Basics um die richtigen Änderungen einzustellen.
In einigen Foren habe ich gelesen dass ich die nötigen Ports freimachen muss. Vor allem Port 80 muss frei sein. Der ist bei mir frei. Ich habe ihn bei
Port testen getestet. Alle anderen (1935, 8088, 5080) sind zu.
im Ordner conf/jee-container.xml habe ich den Kommentar entfernt um den Code zu aktivieren:
<!-- RTMPT (dedicated server) -->
<bean id="rtmpt.server" class="org.red5.server.tomcat.rtmpt.RTMPTLoader" init-method="init" lazy-init="true">
<property name="webappFolder" value="${red5.root}/webapps" />
<property name="connector">
<bean class="org.apache.catalina.connector.Connector">
<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11NioProtocol" />
<property name="port"><value>${rtmpt.port}</value></property>
<property name="enableLookups"><value>false</value></property>
<property name="URIEncoding" value="${http.URIEncoding}" />
</bean>
</property>
<property name="address">
<bean class="java.net.InetSocketAddress">
<constructor-arg index="0" type="java.lang.String" value="${rtmpt.host}" />
<constructor-arg index="1" type="int" value="${rtmpt.port}" />
</bean>
</property>
<property name="host">
<bean class="org.apache.catalina.core.StandardHost">
<property name="name" value="${rtmpt.host}" />
<property name="unpackWARs" value="false" />
<property name="autoDeploy" value="false" />
<property name="xmlValidation" value="false" />
<property name="xmlNamespaceAware" value="false" />
</bean>
</property>
<property name="connectionProperties">
<map>
<entry key="maxKeepAliveRequests" value="${rtmpt.max_keep_alive_requests}"/>
<entry key="useExecutor" value="true"/>
<entry key="maxThreads" value="${rtmpt.max_threads}"/>
<entry key="acceptorThreadCount" value="${rtmpt.acceptor_thread_count}"/>
<entry key="processorCache" value="${rtmpt.processor_cache}"/>
</map>
</property>
</bean>
In conf/red5-core.xml habe ich folgenden Code hinzugefügt:
<bean id="rtmpt.server" class="org.red5.server.tomcat.rtmpt.RTMPTLoader" init-method="init" lazy-init="true">
<property name="webappFolder" value="${red5.root}/webapps" />
<property name="connector">
<bean class="org.apache.catalina.connector.Connector">
<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11NioProtocol" />
<property name="port"><value>${rtmpt.port}</value></property>
<property name="enableLookups"><value>false</value></property>
</bean>
</property>
<property name="connectionProperties">
<map>
<entry key="maxKeepAliveRequests" value="${rtmpt.max_keep_alive_requests}"/>
<entry key="useExecutor" value="true"/>
<entry key="maxThreads" value="${rtmpt.max_threads}"/>
<entry key="acceptorThreadCount" value="${rtmpt.acceptor_thread_count}"/>
<entry key="processorCache" value="${rtmpt.processor_cache}"/>
</map>
</property>
<property name="host">
<bean class="org.apache.catalina.core.StandardHost">
<property name="name" value="${rtmpt.host}" />
<property name="unpackWARs" value="false" />
<property name="autoDeploy" value="false" />
<property name="xmlValidation" value="false" />
<property name="xmlNamespaceAware" value="false" />
</bean>
</property>
</bean>
Quelle: conf/red5-core.xml
In der Datei conf/red5.properties
lassen sich die http, rtmp und rtmpt einstellen:
# Socket policy
policy.host=0.0.0.0
policy.port=843
# HTTP
http.host=127.0.0.1
http.port=5080
https.port=5443
http.URIEncoding=UTF-8
http.max_keep_alive_requests=-1
http.max_threads=20
http.acceptor_thread_count=10
http.processor_cache=20
# RTMP
rtmp.host=127.0.0.1
rtmp.port=1935
rtmp.io_threads=16
rtmp.send_buffer_size=65536
rtmp.receive_buffer_size=65536
rtmp.ping_interval=1000
# RTMPT
rtmpt.host=0.0.0.0
rtmpt.port=8088
rtmpt.ping_interval=5000
rtmpt.max_inactivity=60000
rtmpt.max_handshake_time=5000
rtmpt.max_keep_alive_requests=-1
rtmpt.max_threads=20
Danke im Voraus.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 311746
Url: https://administrator.de/contentid/311746
Ausgedruckt am: 19.11.2024 um 09:11 Uhr