diff --git a/mobile/lib/main.dart b/mobile/lib/main.dart index 922eac8308..c15038503a 100644 --- a/mobile/lib/main.dart +++ b/mobile/lib/main.dart @@ -267,7 +267,7 @@ Future _init(bool isBackground, {String via = ''}) async { }); } _logger.info("PushService/HomeWidget done $tlog"); - VideoPreviewServie.instance.init(preferences); + VideoPreviewService.instance.init(preferences); unawaited(SemanticSearchService.instance.init()); unawaited(MLService.instance.init()); await PersonService.init( @@ -298,7 +298,7 @@ void logLocalSettings() { ); _logger.info("Gallery grid size: ${localSettings.getPhotoGridSize()}"); _logger.info( - "Video streaming is enalbed: ${VideoPreviewServie.instance.isVideoStreamingEnabled}", + "Video streaming is enalbed: ${VideoPreviewService.instance.isVideoStreamingEnabled}", ); } diff --git a/mobile/lib/services/machine_learning/ml_service.dart b/mobile/lib/services/machine_learning/ml_service.dart index 905468af00..42561d234d 100644 --- a/mobile/lib/services/machine_learning/ml_service.dart +++ b/mobile/lib/services/machine_learning/ml_service.dart @@ -165,7 +165,7 @@ class MLService { } finally { _isRunningML = false; computeController.releaseCompute(ml: true); - VideoPreviewServie.instance.queueFiles(); + VideoPreviewService.instance.queueFiles(); } } diff --git a/mobile/lib/services/sync/remote_sync_service.dart b/mobile/lib/services/sync/remote_sync_service.dart index b494d59a96..53b5f01610 100644 --- a/mobile/lib/services/sync/remote_sync_service.dart +++ b/mobile/lib/services/sync/remote_sync_service.dart @@ -129,7 +129,7 @@ class RemoteSyncService { fileDataService.syncFDStatus().then((_) { if (!flagService.hasGrantedMLConsent) { - VideoPreviewServie.instance + VideoPreviewService.instance .queueFiles(); // if ML is enabled the MLService will queue when ML is done } }).ignore(); diff --git a/mobile/lib/services/video_preview_service.dart b/mobile/lib/services/video_preview_service.dart index ad8aeb1b6c..e1b5cac06e 100644 --- a/mobile/lib/services/video_preview_service.dart +++ b/mobile/lib/services/video_preview_service.dart @@ -41,8 +41,8 @@ import "package:shared_preferences/shared_preferences.dart"; const _maxRetryCount = 3; -class VideoPreviewServie { - final _logger = Logger("VideoPreviewServie"); +class VideoPreviewService { + final _logger = Logger("VideoPreviewService"); final LinkedHashMap _items = LinkedHashMap(); LinkedHashMap fileQueue = LinkedHashMap(); final int _maxPreviewSizeLimitForCache = 50 * 1024 * 1024; // 50 MB @@ -50,17 +50,19 @@ class VideoPreviewServie { bool _hasQueuedFile = false; - VideoPreviewServie._privateConstructor(); + VideoPreviewService._privateConstructor(); - static final VideoPreviewServie instance = - VideoPreviewServie._privateConstructor(); + static final VideoPreviewService instance = + VideoPreviewService._privateConstructor(); final cacheManager = DefaultCacheManager(); final videoCacheManager = VideoCacheManager.instance; int uploadingFileId = -1; - final _dio = NetworkClient.instance.enteDio; + final _enteDio = NetworkClient.instance.enteDio; + final _nonEnteDio = NetworkClient.instance.getDio(); + final CollectionsService collectionsService = CollectionsService.instance; void init(SharedPreferences prefs) { _prefs = prefs; @@ -464,7 +466,7 @@ class VideoPreviewServie { }, encryptionKey, ); - final _ = await _dio.put( + final _ = await _enteDio.put( "/files/video-data", data: { "fileID": file.uploadedFileID!, @@ -483,7 +485,7 @@ class VideoPreviewServie { Future<(String, int)> _uploadPreviewVideo(EnteFile file, File preview) async { _logger.info("Pushing preview for $file"); try { - final response = await _dio.get( + final response = await _enteDio.get( "/files/data/preview-upload-url", queryParameters: { "fileID": file.uploadedFileID!, @@ -493,7 +495,7 @@ class VideoPreviewServie { final uploadURL = response.data["url"]; final String objectID = response.data["objectID"]; final objectSize = preview.lengthSync(); - final _ = await _dio.put( + final _ = await _enteDio.put( uploadURL, data: preview.openRead(), options: Options( @@ -635,20 +637,20 @@ class VideoPreviewServie { Future> _getPlaylistData(EnteFile file) async { late Response response; - if (CollectionsService.instance.isSharedPublicLink(file.collectionID!)) { - response = await NetworkClient.instance.getDio().get( - "${Configuration.instance.getHttpEndpoint()}/public-collection/files/data/fetch/", - queryParameters: { - "fileID": file.uploadedFileID, - "type": "vid_preview", - }, - options: Options( - headers: CollectionsService.instance - .publicCollectionHeaders(file.collectionID!), - ), - ); + if (collectionsService.isSharedPublicLink(file.collectionID!)) { + response = await _nonEnteDio.get( + "${Configuration.instance.getHttpEndpoint()}/public-collection/files/data/fetch/", + queryParameters: { + "fileID": file.uploadedFileID, + "type": "vid_preview", + }, + options: Options( + headers: + collectionsService.publicCollectionHeaders(file.collectionID!), + ), + ); } else { - response = await _dio.get( + response = await _enteDio.get( "/files/data/fetch/", queryParameters: { "fileID": file.uploadedFileID, @@ -689,23 +691,22 @@ class VideoPreviewServie { Future<(String, String)> _getPreviewUrl(EnteFile file) async { try { late String url; - if (CollectionsService.instance.isSharedPublicLink(file.collectionID!)) { - final response = await NetworkClient.instance.getDio().get( - "${Configuration.instance.getHttpEndpoint()}/public-collection/files/data/preview", - queryParameters: { - "fileID": file.uploadedFileID, - "type": file.fileType == FileType.video - ? "vid_preview" - : "img_preview", - }, - options: Options( - headers: CollectionsService.instance - .publicCollectionHeaders(file.collectionID!), - ), - ); + if (collectionsService.isSharedPublicLink(file.collectionID!)) { + final response = await _nonEnteDio.get( + "${Configuration.instance.getHttpEndpoint()}/public-collection/files/data/preview", + queryParameters: { + "fileID": file.uploadedFileID, + "type": + file.fileType == FileType.video ? "vid_preview" : "img_preview", + }, + options: Options( + headers: + collectionsService.publicCollectionHeaders(file.collectionID!), + ), + ); url = (response.data["url"] as String); } else { - final response = await _dio.get( + final response = await _enteDio.get( "/files/data/preview", queryParameters: { "fileID": file.uploadedFileID, diff --git a/mobile/lib/ui/settings/advanced_settings_screen.dart b/mobile/lib/ui/settings/advanced_settings_screen.dart index 2f1ade4a9d..d1b9ccfbd1 100644 --- a/mobile/lib/ui/settings/advanced_settings_screen.dart +++ b/mobile/lib/ui/settings/advanced_settings_screen.dart @@ -139,13 +139,13 @@ class AdvancedSettingsScreen extends StatelessWidget { singleBorderRadius: 8, alignCaptionedTextToLeft: true, trailingWidget: ToggleSwitchWidget( - value: () => VideoPreviewServie + value: () => VideoPreviewService .instance.isVideoStreamingEnabled, onChanged: () async { - final isEnabled = VideoPreviewServie + final isEnabled = VideoPreviewService .instance.isVideoStreamingEnabled; - await VideoPreviewServie.instance + await VideoPreviewService.instance .setIsVideoStreamingEnabled(!isEnabled); }, ), diff --git a/mobile/lib/ui/viewer/file/file_app_bar.dart b/mobile/lib/ui/viewer/file/file_app_bar.dart index 07607c3c44..c3159dc8b9 100644 --- a/mobile/lib/ui/viewer/file/file_app_bar.dart +++ b/mobile/lib/ui/viewer/file/file_app_bar.dart @@ -379,7 +379,7 @@ class FileAppBarState extends State { await _onTapGuestView(); } else if (value == 99) { try { - await VideoPreviewServie.instance.chunkAndUploadVideo( + await VideoPreviewService.instance.chunkAndUploadVideo( context, widget.file, ); diff --git a/mobile/lib/ui/viewer/file/video_widget.dart b/mobile/lib/ui/viewer/file/video_widget.dart index 58628bf808..60fc59ee52 100644 --- a/mobile/lib/ui/viewer/file/video_widget.dart +++ b/mobile/lib/ui/viewer/file/video_widget.dart @@ -77,7 +77,7 @@ class _VideoWidgetState extends State { Future _checkForPreview() async { if (!widget.file.isOwner) { final bool isStreamable = - await VideoPreviewServie.instance.isSharedFileStreamble(widget.file); + await VideoPreviewService.instance.isSharedFileStreamble(widget.file); if (!isStreamable && mounted) { isPreviewLoadable = false; setState(() {}); @@ -87,7 +87,7 @@ class _VideoWidgetState extends State { return; } widget.playbackCallback?.call(false); - final data = await VideoPreviewServie.instance + final data = await VideoPreviewService.instance .getPlaylist(widget.file) .onError((error, stackTrace) { if (!mounted) return; diff --git a/mobile/lib/ui/viewer/file_details/preview_properties_item_widget.dart b/mobile/lib/ui/viewer/file_details/preview_properties_item_widget.dart index e368721bfa..81fa413975 100644 --- a/mobile/lib/ui/viewer/file_details/preview_properties_item_widget.dart +++ b/mobile/lib/ui/viewer/file_details/preview_properties_item_widget.dart @@ -44,7 +44,7 @@ class _PreviewPropertiesItemWidgetState final textStyle = getEnteTextTheme(context).miniMuted; final subSectionWidgets = []; - final data = await VideoPreviewServie.instance + final data = await VideoPreviewService.instance .getPlaylist(widget.file) .onError((error, stackTrace) { if (!mounted) return;