Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note

Since an RTMP stream is sent from an encoder to Phenix via RTMP, the encoder must be set up to send its output to Phenix. This means that, while the Phenix Customer Portal can be used to obtain information such as the stream key, the Portal’s publishing tab cannot be used to publish RTMP to the Phenix platform.

The examples shown below include optional “tags” for completeness.

Encoder Configuration for RTMP Ingest

...

ffmpeg -re -f lavfi -i testsrc=size=1280x720:rate=30 -f lavfi -i aevalsrc="0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)" -pix_fmt yuv420p -vcodec libx264 -profile:v baseline -deblock 1:0 -bitrate 500k -tune zerolatency -x264opts keyint=30 -acodec aac -ar 48000 -ac 2 -b:a 128k -f flv rtmp://ingest.phenixrts.com:80/ingest/96characterStreamKey;capabilities=hd,multi-bitrate,mpegts-unicast-ingest;tags=my-awesome-stream-id,MyAppId

Where : 96characterStreamKey is the stream key to be used when publishing. This can be found in the Customer Portal under the Properties tab for a Channel or Room.

...

MyAppId is your application ID

To measure latency, add a timestamp overlay:

ffmpeg -re -f lavfi -i testsrc=size=1280x720:rate=30 -f lavfi -i aevalsrc="0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)" -pix_fmt yuv420p -vf "drawtext=text='timestamp: %{pts \: hms}': x=20: y=20: fontsize=72:fontcolor=white@0.9: box=1: boxcolor=black@0.6" -vcodec libx264 -profile:v baseline -deblock 1:0 -bitrate 500k -tune zerolatency -x264opts keyint=30 -acodec aac -ar 48000 -ac 2 -b:a 128k -f flv rtmp://ingest.phenixrts.com:80/ingest/96characterStreamKey;capabilities=hd,multi-bitrate,mpegts-unicast-ingest;tags=my-awesome-stream-id,MyAppId

Where:

Note

On MacOS and Linux, you may need to add quotation marks around the second argument in order to not lose information after the semicolon:
"rtmp://ingest.phenixrts.com:80/ingest/96characterStreamKey;capabilities=hd,multi-bitrate,mpegts-unicast-ingest;tags=my-awesome-stream-id"

Where 96characterStreamKey is the stream key to be used when publishing. This can be found in the Customer Portal under the Properties tab for a Channel or Room.

...

MyAppId is your application ID

...

API Usage

For details on API usage, please refer to https://phenixrts.com/docs/api/?http#rtmp-ingest . To take advantage of Real-time RTMP, you must include the mpegts-unicast-ingest capability.

...

rtmp://ingest.phenixrts.com:80/ingest/96characterStreamKey;capabilities=hd,multi-bitrate,mpegts-multicast-ingest;tags=my-awesome-stream-id,MyAppId

Where : 96characterStreamKey is the stream key to be used when publishing. This can be found in the Customer Portal under the Properties tab for a Channel or Room.

...