Fix recording of Stripchat models

This commit is contained in:
0xb00bface 2023-04-08 13:19:58 +02:00
parent 2ceec9ce94
commit fb8222d655
2 changed files with 20 additions and 0 deletions

View File

@ -334,6 +334,14 @@ public abstract class AbstractHlsDownload extends AbstractDownload {
List<TrackData> tracks = mediaPlaylist.getTracks();
for (TrackData trackData : tracks) {
if (trackData.hasMapInfo()) {
var mapInfoUri = trackData.getMapInfo().getUri();
if (!mapInfoUri.startsWith("http")) {
URL context = new URL(segmentPlaylistUrl);
mapInfoUri = new URL(context, mapInfoUri).toExternalForm();
}
lsp.segments.add(new Segment(mapInfoUri, Math.max(0, trackData.getTrackInfo().duration)));
}
String uri = trackData.getUri();
if (!uri.startsWith("http")) {
URL context = new URL(segmentPlaylistUrl);

View File

@ -7,7 +7,10 @@ import com.iheartradio.m3u8.data.PlaylistData;
import ctbrec.AbstractModel;
import ctbrec.Config;
import ctbrec.io.HttpException;
import ctbrec.recorder.download.Download;
import ctbrec.recorder.download.StreamSource;
import ctbrec.recorder.download.hls.HlsdlDownload;
import ctbrec.recorder.download.hls.MergedFfmpegHlsDownload;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
@ -259,4 +262,13 @@ public class StripchatModel extends AbstractModel {
}
}
}
@Override
public Download createDownload() {
if (Config.getInstance().getSettings().useHlsdl) {
return new HlsdlDownload();
} else {
return new MergedFfmpegHlsDownload(getSite().getHttpClient());
}
}
}