Output HLS Manifest file contains NEITHER Master nor Stream Playlist tags

0

Hello,

I've successfully configured the MediaLive channel to output incoming stream to the S3 bucket in HLS format.
And from time to time, the "main" manifest is missing its master tags (#EXT-X-STREAM-INF), even though other playlist manifests, to which the main one should point, are present and contain he correct data.

Example:

_stream.m3u8_
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
_stream_1.m3u8_
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:10.00000,
stream_1_00001.ts
#EXTINF:6.00000,
stream_1_00002.ts
#EXT-X-ENDLIST

I was not able to find out what is the cause of this strange behaviour and would be really grateful for any help.

Best regards.

ibrcko
질문됨 4년 전416회 조회
5개 답변
0

Hi Ibrcko,

This usually indicates the pipeline has paused. One reason this might occur is that the input has been lost, and the InputLossAction is set to PAUSE_OUTPUT. One of the things MediaLive does when pausing outputs is removes their renditions from the parent manifest.

Try changing InputLossAction to EMIT_OUTPUT and see if that changes the behavior.

Regards,
Steve

AWS
Steve_W
답변함 4년 전
0

Hi Steve,

Thank you for your response.

After I have changed InputLossAction to EMIT_OUTPUT, the problem mentioned does not occur anymore.

The reason why InputLossAction has been set to PAUSE_OUTPUT in the first place is to stop MediaLive from outputting if there is no input video detected.
How would one achieve the described behavior if InputLossAction option is out of the question?

Best regards.

ibrcko
답변함 4년 전
0

In this case you have a couple of options.

  1. Leave the InputLossAction configured to EMIT_OUTPUT and use the Cloudwatch Events emitted by MediaLive to detect when an input goes away. These events correspond to the alerts seen in the MediaLive console and could be used as the basis for taking action (like stopping the channel).

  2. Change InputLossAction back to PAUSE_OUTPUT, and create a static version of the main manifest by copying it to a different name. Direct your players to the static version of the manifest instead of the dynamically created one from the channel. Note that part of the default behavior of pausing the output includes deleting the rendition manifests, so this may not achieve your goal either.

Regards,
Steve

AWS
Steve_W
답변함 4년 전
0

Thank you, that advice is really helpful.

I have configured events and targets for MediaLive alerts.

Now I'm trying to figure out how to distinct alerts:
There is no input data - is it because input data has never been detected, or because it is lost.

How can I distinct these two virtually equal states/alerts?

ibrcko
답변함 4년 전
0

Hi ibrcko,

There is one message that occurs at channel start that does not happen when a source goes away once the channel is already running, the message text is "Initial Probe is Taking Longer Than Expected"

That should allow you to differentiate between no signal at start versus signal going away later.

Regards,
Steve

AWS
Steve_W
답변함 4년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠