streamdetails.loudness = loudness
if not streamdetails.duration:
streamdetails.duration = queue_item.duration
+ # make sure that ffmpeg handles mpeg dash streams directly
+ if (
+ streamdetails.content_type == ContentType.MPEG_DASH
+ and streamdetails.data
+ and streamdetails.data.startswith("http")
+ ):
+ streamdetails.direct = streamdetails.data
# set streamdetails as attribute on the media_item
# this way the app knows what content is playing
queue_item.streamdetails = streamdetails
PCM_S32LE = "s32le" # PCM signed 32-bit little-endian
PCM_F32LE = "f32le" # PCM 32-bit floating-point little-endian
PCM_F64LE = "f64le" # PCM 64-bit floating-point little-endian
+ MPEG_DASH = "dash"
UNKNOWN = "?"
@classmethod
tempstr = tempstr.split("&")[0]
tempstr = tempstr.split(";")[0]
tempstr = tempstr.replace("mp4", "m4a")
+ tempstr = tempstr.replace("mpd", "dash")
try:
return cls(tempstr)
except ValueError: