Wowza Community

Failing to live broadcast H.265/HEVC ffmpeg streams

Greetings

We’ve been using Wowza Streaming Engine for a while to broadcast keyframe-aligned streams using HLS adaptive streaming. These streams are created by an ffmpeg process at a separate host, encoding in H.264 and AAC. As our target players are now capable of decoding HEVC/H.265 streams, we intend now to migrate to this codec.

We are capable of generating such H.265 streams from ffmpeg, sending them to Wowza over RTSP, and they correctly appear as incoming streams with the desired bitrate. This is the ffmpeg command we use to send one test stream:

ffmpeg -i "udp://X.X.X.X:XXX" -filter_complex "yadif=0:-1:0,scale=1280:720" -c:v libx265 -vb 1050000 -maxrate 1050000 -bufsize 1050000 -tune zerolatency -preset veryfast -r 25 -x265-params "keyint=25:no-scenecut" -acodec libfdk_aac -ab 96000 -strict experimental -f rtsp -muxdelay 0.1 rtsp://USER:PASS@[WOWZA_IP]:1935/testh265/eventh265

However, we are failing to access these streams on Wowza using VideoLAN, neither by HLS nor RTSP:

  • When using HLS, a new connection is briefly opend, but there’s no output bandwidth consumed. We h- ve tried both 1sec and 10sec segments.

  • When using RTSP, a very low bandwidth output stream is stablished, far from the expected bitrate, and there’s no signal at VLC.

We are able to access H.265 streams by HLS when using the H.265 Wowza Transcoder from an original H.264 stream. But this is not our objective, as we want the encoding to take place in a previous stage. We want Wowza to just reencapsulate our H.265 content and distribute by HLS.

We have also tried to use an encoding template, with no real encoding, as it uses the “Pass-through” encoding option. It didn’t do the trick.

We are using the latest version of Wowza Streaming Engine (4.4.1)

  1. Does the H.265 ffmpeg encoded streams need any concrete profile or parameter to ease the later encapsulation at Wowza?

  2. Is RTSP the right protocol to send the H.265 streams to Wowza, considering RTMP doesn’t seem to provide such functionality?

  3. Would any Cupertino encapsulation configuration at Wowza make this work?

Thanks in advance

1 Like

Hi

I have similar issues.

On wowza 4.5.0, I am unable to play the video (hevc) but the audio (aac) is played with ffmpeg as rtsp publisher. But I tested only on wowza mpeg-dash test player (shaka).

I did not test with vlc.

best

Hello,

ffmpeg can transcode with udp (unicast) protocol.

ffmpeg -re -i “udp://x.x.x.x?fifo_size=3840000&overrun_nonfatal=1” -filter:v “movie=~/logo.png,scale=60:30[watermark];[in][watermark] overlay=W-w-70:H-h-40,scale=1280:720,yadif=0:-1:0” -acodec aac -b:a 96000 -strict -2 -threads 0 -codec:v libx265 -x265-params “profile=main10:crf=30:keyint=25:weightp=0:no-scenecut:fixed_gop=1” -b:v 1050000 -minrate 1050000 -maxrate 1050000 -bufsize 1050000 -tune zerolatency -preset medium -r 25 -metadata encoder=“HEVC LiveTV Encoder” -metadata channel=“mychannel” -aspect 16:9 -mbd rd -trellis 2 -cmp 2 -subcmp 2 -y -async 1 -f mpegts -muxdelay 0.1 udp://IP:port

Visit my site see more: http://www.thuannguyen.net

Hello,

Please make sure your version of VLC is new to ensure support for HEVC ingest. The Wowza Test Player does not currently support this format. The following article describes how to enable the Wowza Transcoder with the HEVC/H.265 format and playback using DivX Player or VLC:

How to stream using HEVC/H.265 transcoding

Best regards,

Andrew