ammar1798-server.xml
unknown
plain_text
4 years ago
10 kB
17
Indexable
<?xml version="1.0" encoding="UTF-8"?> <Server version="8"> <Name>OvenMediaEngine</Name> <!-- Host type (origin/edge) --> <Type>origin</Type> <!-- Specify IP address to bind (* means all IPs) --> <IP>*</IP> <PrivacyProtection>false</PrivacyProtection> <!-- To get the public IP address(mapped address of stun) of the local server. This is useful when OME cannot obtain a public IP from an interface, such as AWS or docker environment. If this is successful, you can use ${PublicIP} in your settings. --> <StunServer>stun.l.google.com:19302</StunServer> <!-- Settings for the ports to bind --> <Bind> <!-- Enable this configuration if you want to use API Server --> <Managers> <API> <Port>8081</Port> <TLSPort>8082</TLSPort> <WorkerCount>1</WorkerCount> </API> </Managers> <Providers> <!-- Pull providers --> <RTSPC> <WorkerCount>1</WorkerCount> </RTSPC> <OVT> <WorkerCount>1</WorkerCount> </OVT> <!-- Push providers --> <RTMP> <Port>1935</Port> <WorkerCount>1</WorkerCount> </RTMP> <SRT> <Port>9999</Port> <WorkerCount>1</WorkerCount> </SRT> <MPEGTS> <!-- Listen on port 4000~4005 (<Port>4000-4004,4005/udp</Port>) This is just a demonstration to show that you can configure the port in several ways --> <Port>4000/udp</Port> </MPEGTS> <WebRTC> <Signalling> <Port>3333</Port> <!-- If you want to use TLS, specify the TLS port --> <TLSPort>3334</TLSPort> <WorkerCount>1</WorkerCount> </Signalling> <IceCandidates> <!-- If you want to stream WebRTC over TCP, specify IP:Port for TURN server. This uses the TURN protocol, which delivers the stream from the built-in TURN server to the player's TURN client over TCP. For detailed information, refer https://airensoft.gitbook.io/ovenmediaengine/streaming/webrtc-publishing#webrtc-over-tcp --> <TcpRelay>*:3478</TcpRelay> <!-- TcpForce is an option to force the use of TCP rather than UDP in WebRTC streaming. (You can omit ?transport=tcp accordingly.) If <TcpRelay> is not set, playback may fail. --> <TcpForce>true</TcpForce> <IceCandidate>*:10000/udp</IceCandidate> <TcpRelayWorkerCount>1</TcpRelayWorkerCount> </IceCandidates> </WebRTC> </Providers> <Publishers> <OVT> <Port>9000</Port> <WorkerCount>1</WorkerCount> </OVT> <HLS> <Port>90</Port> <!-- If you want to use TLS, specify the TLS port --> <!-- <TLSPort>8443</TLSPort> --> <WorkerCount>1</WorkerCount> </HLS> <DASH> <Port>90</Port> <!-- If you want to use TLS, specify the TLS port --> <!-- <TLSPort>8443</TLSPort> --> <WorkerCount>1</WorkerCount> </DASH> <WebRTC> <Signalling> <Port>3333</Port> <!-- If you want to use TLS, specify the TLS port --> <TLSPort>3334</TLSPort> <WorkerCount>1</WorkerCount> </Signalling> <IceCandidates> <!-- If you want to stream WebRTC over TCP, specify IP:Port for TURN server. This uses the TURN protocol, which delivers the stream from the built-in TURN server to the player's TURN client over TCP. For detailed information, refer https://airensoft.gitbook.io/ovenmediaengine/streaming/webrtc-publishing#webrtc-over-tcp --> <TcpRelay>*:3478</TcpRelay> <!-- TcpForce is an option to force the use of TCP rather than UDP in WebRTC streaming. (You can omit ?transport=tcp accordingly.) If <TcpRelay> is not set, playback may fail. --> <TcpForce>true</TcpForce> <IceCandidate>*:10000/udp</IceCandidate> <TcpRelayWorkerCount>1</TcpRelayWorkerCount> </IceCandidates> </WebRTC> </Publishers> </Bind> <!-- P2P works only in WebRTC --> <!-- <P2P> <MaxClientPeersPerHostPeer>2</MaxClientPeersPerHostPeer> </P2P> --> <!-- Enable this configuration if you want to use API Server <AccessToken> is a token for authentication, and when you invoke the API, you must put "Basic base64encode(<AccessToken>)" in the "Authorization" header of HTTP request. For example, if you set <AccessToken> to "ome-access-token", you must set "Basic b21lLWFjY2Vzcy10b2tlbg==" in the "Authorization" header. --> <Managers> <Host> <Names> <Name>oven.domain.com</Name> </Names> <TLS> <CertPath>/etc/letsencrypt/live/domain.com/fullchain.pem</CertPath> <KeyPath>/etc/letsencrypt/live/domain.com/privkey.pem</KeyPath> <ChainCertPath>/etc/letsencrypt/live/domain.com/fullchain.pem</ChainCertPath> </TLS> </Host> <API> <AccessToken>key123</AccessToken> </API> </Managers> <VirtualHosts> <!-- You can use wildcard like this to include multiple XMLs --> <VirtualHost include="VHost*.xml" /> <VirtualHost> <Name>default</Name> <!--Distribution is a value that can be used when grouping the same vhost distributed across multiple servers. This value is output to the events log, so you can use it to aggregate statistics. --> <Distribution>ovenmediaengine.com</Distribution> <!-- Settings for multi ip/domain and TLS --> <Host> <Names> <!-- Host names <Name>stream1.airensoft.com</Name> <Name>stream2.airensoft.com</Name> <Name>*.sub.airensoft.com</Name> <Name>192.168.0.1</Name> --> <Name>oven.domain.com</Name> </Names> <TLS> <CertPath>/etc/letsencrypt/live/domain.com/fullchain.pem</CertPath> <KeyPath>/etc/letsencrypt/live/domain.com/privkey.pem</KeyPath> <ChainCertPath>/etc/letsencrypt/live/domain.com/fullchain.pem</ChainCertPath> </TLS> </Host> <!-- Refer https://airensoft.gitbook.io/ovenmediaengine/signedpolicy <SignedPolicy> <PolicyQueryKeyName>policy</PolicyQueryKeyName> <SignatureQueryKeyName>signature</SignatureQueryKeyName> <SecretKey>aKq#1kj</SecretKey> <Enables> <Providers>rtmp,webrtc,srt</Providers> <Publishers>webrtc,hls,dash,lldash</Publishers> </Enables> </SignedPolicy> --> <!-- <AdmissionWebhooks> <TargetUrl></TargetUrl> <SecretKey></SecretKey> <Timeout>3000</Timeout> <Enables> <Providers>rtmp,webrtc,srt</Providers> <Publishers>webrtc,hls,dash,lldash</Publishers> </Enables> </AdmissionWebhooks> --> <!-- <Origins> <Properties> <NoInputFailoverTimeout>3000</NoInputFailoverTimeout> <UnusedStreamDeletionTimeout>60000</UnusedStreamDeletionTimeout> </Properties> <Origin> <Location>/app/stream</Location> <Pass> <Scheme>ovt</Scheme> <Urls><Url>origin.com:9000/app/stream_720p</Url></Urls> </Pass> </Origin> <Origin> <Location>/app/</Location> <Pass> <Scheme>ovt</Scheme> <Urls><Url>origin.com:9000/app/</Url></Urls> </Pass> </Origin> <Origin> <Location>/edge/</Location> <Pass> <Scheme>ovt</Scheme> <Urls><Url>origin.com:9000/app/</Url></Urls> </Pass> </Origin> </Origins> --> <!-- Settings for applications --> <Applications> <Application> <Name>app</Name> <!-- Application type (live/vod) --> <Type>live</Type> <OutputProfiles> <!-- Enable this configuration if you want to hardware acceleration using GPU --> <HardwareAcceleration>false</HardwareAcceleration> <OutputProfile> <Name>bypass_stream</Name> <OutputStreamName>${OriginStreamName}</OutputStreamName> <Encodes> <Audio> <Bypass>true</Bypass> </Audio> <Video> <Bypass>true</Bypass> </Video> <Audio> <Codec>opus</Codec> <Bitrate>128000</Bitrate> <Samplerate>48000</Samplerate> <Channel>2</Channel> </Audio> <!-- <Video> <Codec>vp8</Codec> <Bitrate>1024000</Bitrate> <Framerate>30</Framerate> <Width>1280</Width> <Height>720</Height> <Preset>faster</Preset> </Video> --> </Encodes> </OutputProfile> </OutputProfiles> <Providers> <OVT /> <WebRTC /> <RTMP /> <SRT /> <MPEGTS> <StreamMap> <!-- Set the stream name of the client connected to the port to "stream_${Port}" For example, if a client connets to port 4000, OME creates a "stream_4000" stream <Stream> <Name>stream_${Port}</Name> <Port>4000,4001-4004</Port> </Stream> <Stream> <Name>stream_4005</Name> <Port>4005</Port> </Stream> --> <Stream> <Name>stream_${Port}</Name> <Port>4000</Port> </Stream> </StreamMap> </MPEGTS> <RTSPPull /> <WebRTC> <Timeout>30000</Timeout> </WebRTC> </Providers> <Publishers> <AppWorkerCount>1</AppWorkerCount> <StreamWorkerCount>8</StreamWorkerCount> <OVT /> <WebRTC> <Timeout>30000</Timeout> <Rtx>false</Rtx> <Ulpfec>false</Ulpfec> <JitterBuffer>false</JitterBuffer> </WebRTC> <HLS> <SegmentDuration>5</SegmentDuration> <SegmentCount>3</SegmentCount> <CrossDomains> <Url>*</Url> </CrossDomains> </HLS> <DASH> <SegmentDuration>5</SegmentDuration> <SegmentCount>3</SegmentCount> <CrossDomains> <Url>*</Url> </CrossDomains> <!-- Enable DASH player to obtain UTCTiming from OME using /time?iso&ms API --> <UTCTiming> <Scheme>urn:mpeg:dash:utc:http-xsdate:2014</Scheme> <Value>/time?iso&ms</Value> </UTCTiming> </DASH> <LLDASH> <SegmentDuration>5</SegmentDuration> <CrossDomains> <Url>*</Url> </CrossDomains> <!-- Use default options for UTCTiming - scheme: urn:mpeg:dash:utc:http-xsdate:2014 - value: /time?iso&ms --> <UTCTiming /> </LLDASH> </Publishers> </Application> </Applications> </VirtualHost> </VirtualHosts> </Server>
Editor is loading...