I have read from many sources that BANDWIDTH is a required attribute, supposedly to be an upper bound of the actual bitrate of the video, while also allowing for "container overhead."
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,RESOLUTION=480x270,CODECS="avc1.42001e,mp4a.40.2",BANDWIDTH=663000
test110_600_.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,RESOLUTION=640x360,CODECS="avc1.4d001f,mp4a.40.2",BANDWIDTH=1088000
test110_1m.m3u8
How is this BANDWIDTH=663000 and BANDWIDTH=1088000 determined? Or rather, how should it be determined? Test runs with the Amazon Elastic Transcoder give seemingly wild results, especially when using videos of short duration; with Amazon's services I have created playlists where the bitrate of the video rose above the BANDWIDTH specified in the m3u8 file.