switch (mode) {
case "Streaming":
- correct = this.handler is HTTPTranscodeHandler ||
+ correct = (!(this.handler is HTTPPlaylistHandler)) && (
+ (this.handler is HTTPTranscodeHandler ||
((this.object as MediaItem).streamable () &&
this.subtitle == null &&
- this.thumbnail == null);
+ this.thumbnail == null)));
break;
case "Interactive":
- correct = this.handler is HTTPIdentityHandler &&
+ correct = (this.handler is HTTPIdentityHandler &&
((!(this.object as MediaItem).is_live_stream () &&
!(this.object as MediaItem).streamable ()) ||
(this.subtitle != null ||
- this.thumbnail != null));
+ this.thumbnail != null))) ||
+ this.handler is HTTPPlaylistHandler;
break;
}
protocol_info.protocol = protocol;
protocol_info.dlna_flags = DLNAFlags.DLNA_V15 |
DLNAFlags.CONNECTION_STALL |
- DLNAFlags.BACKGROUND_TRANSFER_MODE;
+ DLNAFlags.BACKGROUND_TRANSFER_MODE |
+ DLNAFlags.INTERACTIVE_TRANSFER_MODE;
res.protocol_info = protocol_info;
return res;