Mobile App Issues: Crashing on video playback and Media refresh issue post deletion from mobile #4995

Closed
opened 2026-02-05 11:03:20 +03:00 by OVERLORD · 28 comments
Owner

Originally created by @schizovivek on GitHub (Dec 21, 2024).

The bug

So there are two issues I'm currently observing. Have two phones; S22+ and LG v30. The issues are persistent on both phones.

What I'm currently doing is backing up the pics from our phones into immich. Once I do that I move the backed up files into another folder on my NAS thereby deleting it from the phone.

First Issue:
App crashes on playing a video not on the phone.
If I play any video that's no longer on the phone the app just straight up crashes. No error no nothing. Just closes.

Second Issue:
Thumbnails don't refresh for media moved out of phone.
Once I've moved all the media out of the phone (post backup) the app just shows blurred out images for all the media that's been deleted. On clicking the actual image doesn't seem to load.
The only way I found to resolve this was to sign out and sign back in. That's the only time the data seems to refresh on the app. I tried a pull down to refresh and that did nothing.

image

The OS that Immich Server is running on

Ubuntu 23.04

Version of Immich Server

v1.123.0

Version of Immich Mobile App

v1.123.0 build.172

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

Doesn't seem related

Your .env content

Doesn't seem related

Reproduction steps

  1. Backup data from phone to server
  2. Delete data on the phone
  3. Re-launch Immich
  4. Check if the images are being shown (that were deleted from the phone)
  5. Sign out and sign back in
  6. Now try to launch a video that is only on the server

Relevant log output

No response

Additional information

No response

Originally created by @schizovivek on GitHub (Dec 21, 2024). ### The bug So there are two issues I'm currently observing. Have two phones; S22+ and LG v30. The issues are persistent on both phones. What I'm currently doing is backing up the pics from our phones into immich. Once I do that I move the backed up files into another folder on my NAS thereby deleting it from the phone. First Issue: App crashes on playing a video not on the phone. If I play any video that's no longer on the phone the app just straight up crashes. No error no nothing. Just closes. Second Issue: Thumbnails don't refresh for media moved out of phone. Once I've moved all the media out of the phone (post backup) the app just shows blurred out images for all the media that's been deleted. On clicking the actual image doesn't seem to load. The only way I found to resolve this was to sign out and sign back in. That's the only time the data seems to refresh on the app. I tried a pull down to refresh and that did nothing. ![image](https://github.com/user-attachments/assets/27450cf5-7168-43d8-b966-42fd44c6cd36) ### The OS that Immich Server is running on Ubuntu 23.04 ### Version of Immich Server v1.123.0 ### Version of Immich Mobile App v1.123.0 build.172 ### Platform with the issue - [ ] Server - [ ] Web - [X] Mobile ### Your docker-compose.yml content ```YAML Doesn't seem related ``` ### Your .env content ```Shell Doesn't seem related ``` ### Reproduction steps 1. Backup data from phone to server 2. Delete data on the phone 3. Re-launch Immich 4. Check if the images are being shown (that were deleted from the phone) 5. Sign out and sign back in 6. Now try to launch a video that is only on the server ### Relevant log output _No response_ ### Additional information _No response_
Author
Owner

@schizovivek commented on GitHub (Dec 21, 2024):

Just realized something. The App crashes even if I swipe into a video from an image.

@schizovivek commented on GitHub (Dec 21, 2024): Just realized something. The App crashes even if I swipe into a video from an image.
Author
Owner

@alextran1502 commented on GitHub (Dec 21, 2024):

How did you remove the media from the phone? is it through the file explorer or the native photos app?

@alextran1502 commented on GitHub (Dec 21, 2024): How did you remove the media from the phone? is it through the file explorer or the native photos app?
Author
Owner

@schizovivek commented on GitHub (Dec 21, 2024):

Yeh. Used the file explorer .. X-plore to be precise

@schizovivek commented on GitHub (Dec 21, 2024): Yeh. Used the file explorer .. X-plore to be precise
Author
Owner

@alextran1502 commented on GitHub (Dec 21, 2024):

That is probably why the app does not get notified why files are deleted

@alextran1502 commented on GitHub (Dec 21, 2024): That is probably why the app does not get notified why files are deleted
Author
Owner

@schizovivek commented on GitHub (Dec 21, 2024):

Just wondering. Is there a better way to refresh the cache other than signing out and signing back in?

The first issue is a bit more concerning for me. We have a lot of videos and app crashing makes the app basically unusable. I have a feeling this issue is not recent and has been an issue since the version with the rendering issue.

@schizovivek commented on GitHub (Dec 21, 2024): Just wondering. Is there a better way to refresh the cache other than signing out and signing back in? The first issue is a bit more concerning for me. We have a lot of videos and app crashing makes the app basically unusable. I have a feeling this issue is not recent and has been an issue since the version with the rendering issue.
Author
Owner

@alextran1502 commented on GitHub (Dec 21, 2024):

@schizovivek it was not designed with that action in mind so we will have to look at the implementation on how to clear the cache that way

@alextran1502 commented on GitHub (Dec 21, 2024): @schizovivek it was not designed with that action in mind so we will have to look at the implementation on how to clear the cache that way
Author
Owner

@schizovivek commented on GitHub (Dec 21, 2024):

The caching isn't the biggest concern honestly. For the app crashing on the video is there something I can provide that could help debug the issue?

@schizovivek commented on GitHub (Dec 21, 2024): The caching isn't the biggest concern honestly. For the app crashing on the video is there something I can provide that could help debug the issue?
Author
Owner

@alextran1502 commented on GitHub (Dec 21, 2024):

@schizovivek Yes, the video as well as your video transcoding settings

@alextran1502 commented on GitHub (Dec 21, 2024): @schizovivek Yes, the video as well as your video transcoding settings
Author
Owner

@schizovivek commented on GitHub (Dec 21, 2024):

Haven't changed any of the default settings.
The video issue is with any video. I'm just attaching here a video that I was sent and that I uploaded to immich.

Note:
These same videos cause no issues when already present on the mobile device. They only cause an issue when they have to load from the server.
Another side note; on the same devices the videos play seamlessly when played via the browser. I use Firefox on my LG while on the S22+ we use Chrome.

Transcoding settings
image

Video:
https://github.com/user-attachments/assets/97137939-6c2d-4079-afde-94456be01d60

@schizovivek commented on GitHub (Dec 21, 2024): Haven't changed any of the default settings. The video issue is with any video. I'm just attaching here a video that I was sent and that I uploaded to immich. **Note:** These same videos cause no issues when already present on the mobile device. They only cause an issue when they have to load from the server. Another side note; on the same devices the videos play seamlessly when played via the browser. I use Firefox on my LG while on the S22+ we use Chrome. **Transcoding settings** ![image](https://github.com/user-attachments/assets/1cbb63a5-22d8-4b17-9ce0-68d9d2dfa5c1) **Video:** https://github.com/user-attachments/assets/97137939-6c2d-4079-afde-94456be01d60
Author
Owner

@alextran1502 commented on GitHub (Dec 22, 2024):

Hmm, settings looks fine, do you see any button to reset to default on the bottom of the transcoding settings section?

FWIW, I uploaded the video to my instance and it was playing fine as a remote asset on both Pixel 8 and Samsung S23

Does it crash on the APK you installed? And which method did you use to install the latest version, is it from the Play Store?

@alextran1502 commented on GitHub (Dec 22, 2024): Hmm, settings looks fine, do you see any button to reset to default on the bottom of the transcoding settings section? FWIW, I uploaded the video to my instance and it was playing fine as a remote asset on both Pixel 8 and Samsung S23 Does it crash on the APK you installed? And which method did you use to install the latest version, is it from the Play Store?
Author
Owner

@schizovivek commented on GitHub (Dec 22, 2024):

Just did the following

  1. Reset the transcoding settings
  2. Ran the transcoding job
  3. On my LG cleared the App cache and data
  4. Added the URLs again
  5. Logged in
  6. Launched the same video
  7. Crash

These are the logs I see in my immich docker server

ESC[32m[Nest] 17  - ESC[39m12/19/2024, 10:43:33 PM ESC[32m    LOGESC[39m ESC[33m[Api:RouterExplorer]ESC[39m ESC[32mMapped {/api/assets/statistics, GET} routeESC[39m
[Nest] 7  - 12/20/2024, 12:00:00 AM   ERROR [Microservices:JobService] Unable to run job handler (thumbnailGeneration/generate-thumbnails): Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string
[Nest] 7  - 12/20/2024, 12:00:00 AM   ERROR [Microservices:JobService] Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string
    at Sharp.toBuffer (/usr/src/app/node_modules/sharp/lib/output.js:163:17)
    at MediaRepository.decodeImage (/usr/src/app/dist/repositories/media.repository.js:57:68)
    at MediaService.generateImageThumbnails (/usr/src/app/dist/services/media.service.js:161:63)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async MediaService.handleGenerateThumbnails (/usr/src/app/dist/services/media.service.js:111:25)
    at async JobService.onJobStart (/usr/src/app/dist/services/job.service.js:148:28)
    at async EventRepository.onEvent (/usr/src/app/dist/repositories/event.repository.js:134:13)
    at async Worker.processJob (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:394:28)
    at async Worker.retryIfFailed (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:581:24)
[Nest] 7  - 12/20/2024, 12:00:00 AM   ERROR [Microservices:JobService] Object:
{
  "id": "07fbf4cd-718b-40d9-8474-7cee66a0f155"
}

[Nest] 17  - 12/20/2024, 1:29:58 AM   ERROR [Api:DatabaseService~ws13zg9j] Database disconnected: error: terminating connection due to administrator command
(node:7) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
(node:17) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
(node:7) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
[Nest] 7  - 12/21/2024, 12:00:00 AM   ERROR [Microservices:JobService] Unable to run job handler (thumbnailGeneration/generate-thumbnails): Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string
[Nest] 7  - 12/21/2024, 12:00:00 AM   ERROR [Microservices:JobService] Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string
    at Sharp.toBuffer (/usr/src/app/node_modules/sharp/lib/output.js:163:17)
    at MediaRepository.decodeImage (/usr/src/app/dist/repositories/media.repository.js:57:68)
    at MediaService.generateImageThumbnails (/usr/src/app/dist/services/media.service.js:161:63)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async MediaService.handleGenerateThumbnails (/usr/src/app/dist/services/media.service.js:111:25)
    at async JobService.onJobStart (/usr/src/app/dist/services/job.service.js:148:28)
    at async EventRepository.onEvent (/usr/src/app/dist/repositories/event.repository.js:134:13)
    at async Worker.processJob (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:394:28)
    at async Worker.retryIfFailed (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:581:24)
[Nest] 7  - 12/21/2024, 12:00:00 AM   ERROR [Microservices:JobService] Object:
{
  "id": "07fbf4cd-718b-40d9-8474-7cee66a0f155"
}

[Nest] 17  - 12/21/2024, 11:03:31 AM   ERROR [Api:StreamableFile] Premature close
Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close
    at ServerResponse.<anonymous> (node:internal/streams/pipeline:415:29)
    at ServerResponse.emit (node:events:536:35)
    at emitCloseNT (node:_http_server:1033:10)
    at Socket.onServerResponseClose (node:_http_server:284:5)
    at Socket.emit (node:events:536:35)
    at TCP.<anonymous> (node:net:350:12)
    at TCP.callbackTrampoline (node:internal/async_hooks:130:17)
[Nest] 17  - 12/21/2024, 11:03:41 AM   ERROR [Api:StreamableFile] Premature close
Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close
    at ServerResponse.<anonymous> (node:internal/streams/pipeline:415:29)
    at ServerResponse.emit (node:events:536:35)
    at emitCloseNT (node:_http_server:1033:10)
    at Socket.onServerResponseClose (node:_http_server:284:5)
    at Socket.emit (node:events:536:35)
    at TCP.<anonymous> (node:net:350:12)
    at TCP.callbackTrampoline (node:internal/async_hooks:130:17)
[Nest] 17  - 12/21/2024, 11:03:59 AM   ERROR [Api:StreamableFile] Premature close
Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close
    at ServerResponse.<anonymous> (node:internal/streams/pipeline:415:29)
    at ServerResponse.emit (node:events:536:35)
    at emitCloseNT (node:_http_server:1033:10)
    at Socket.onServerResponseClose (node:_http_server:284:5)
    at Socket.emit (node:events:536:35)
    at TCP.<anonymous> (node:net:350:12)
    at TCP.callbackTrampoline (node:internal/async_hooks:130:17)
@schizovivek commented on GitHub (Dec 22, 2024): Just did the following 1. Reset the transcoding settings 2. Ran the transcoding job 3. On my LG cleared the App cache and data 4. Added the URLs again 5. Logged in 6. Launched the same video 7. Crash These are the logs I see in my immich docker server ```logs ESC[32m[Nest] 17 - ESC[39m12/19/2024, 10:43:33 PM ESC[32m LOGESC[39m ESC[33m[Api:RouterExplorer]ESC[39m ESC[32mMapped {/api/assets/statistics, GET} routeESC[39m [Nest] 7 - 12/20/2024, 12:00:00 AM ERROR [Microservices:JobService] Unable to run job handler (thumbnailGeneration/generate-thumbnails): Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string [Nest] 7 - 12/20/2024, 12:00:00 AM ERROR [Microservices:JobService] Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string at Sharp.toBuffer (/usr/src/app/node_modules/sharp/lib/output.js:163:17) at MediaRepository.decodeImage (/usr/src/app/dist/repositories/media.repository.js:57:68) at MediaService.generateImageThumbnails (/usr/src/app/dist/services/media.service.js:161:63) at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async MediaService.handleGenerateThumbnails (/usr/src/app/dist/services/media.service.js:111:25) at async JobService.onJobStart (/usr/src/app/dist/services/job.service.js:148:28) at async EventRepository.onEvent (/usr/src/app/dist/repositories/event.repository.js:134:13) at async Worker.processJob (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:394:28) at async Worker.retryIfFailed (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:581:24) [Nest] 7 - 12/20/2024, 12:00:00 AM ERROR [Microservices:JobService] Object: { "id": "07fbf4cd-718b-40d9-8474-7cee66a0f155" } [Nest] 17 - 12/20/2024, 1:29:58 AM ERROR [Api:DatabaseService~ws13zg9j] Database disconnected: error: terminating connection due to administrator command (node:7) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead. (Use `node --trace-deprecation ...` to show where the warning was created) (node:17) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead. (Use `node --trace-deprecation ...` to show where the warning was created) (node:7) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead. (Use `node --trace-deprecation ...` to show where the warning was created) [Nest] 7 - 12/21/2024, 12:00:00 AM ERROR [Microservices:JobService] Unable to run job handler (thumbnailGeneration/generate-thumbnails): Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string [Nest] 7 - 12/21/2024, 12:00:00 AM ERROR [Microservices:JobService] Error: VipsJpeg: Message codes are not supported, error message is in msg_parm.s string at Sharp.toBuffer (/usr/src/app/node_modules/sharp/lib/output.js:163:17) at MediaRepository.decodeImage (/usr/src/app/dist/repositories/media.repository.js:57:68) at MediaService.generateImageThumbnails (/usr/src/app/dist/services/media.service.js:161:63) at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async MediaService.handleGenerateThumbnails (/usr/src/app/dist/services/media.service.js:111:25) at async JobService.onJobStart (/usr/src/app/dist/services/job.service.js:148:28) at async EventRepository.onEvent (/usr/src/app/dist/repositories/event.repository.js:134:13) at async Worker.processJob (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:394:28) at async Worker.retryIfFailed (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:581:24) [Nest] 7 - 12/21/2024, 12:00:00 AM ERROR [Microservices:JobService] Object: { "id": "07fbf4cd-718b-40d9-8474-7cee66a0f155" } [Nest] 17 - 12/21/2024, 11:03:31 AM ERROR [Api:StreamableFile] Premature close Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close at ServerResponse.<anonymous> (node:internal/streams/pipeline:415:29) at ServerResponse.emit (node:events:536:35) at emitCloseNT (node:_http_server:1033:10) at Socket.onServerResponseClose (node:_http_server:284:5) at Socket.emit (node:events:536:35) at TCP.<anonymous> (node:net:350:12) at TCP.callbackTrampoline (node:internal/async_hooks:130:17) [Nest] 17 - 12/21/2024, 11:03:41 AM ERROR [Api:StreamableFile] Premature close Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close at ServerResponse.<anonymous> (node:internal/streams/pipeline:415:29) at ServerResponse.emit (node:events:536:35) at emitCloseNT (node:_http_server:1033:10) at Socket.onServerResponseClose (node:_http_server:284:5) at Socket.emit (node:events:536:35) at TCP.<anonymous> (node:net:350:12) at TCP.callbackTrampoline (node:internal/async_hooks:130:17) [Nest] 17 - 12/21/2024, 11:03:59 AM ERROR [Api:StreamableFile] Premature close Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close at ServerResponse.<anonymous> (node:internal/streams/pipeline:415:29) at ServerResponse.emit (node:events:536:35) at emitCloseNT (node:_http_server:1033:10) at Socket.onServerResponseClose (node:_http_server:284:5) at Socket.emit (node:events:536:35) at TCP.<anonymous> (node:net:350:12) at TCP.callbackTrampoline (node:internal/async_hooks:130:17) ```
Author
Owner

@schizovivek commented on GitHub (Dec 22, 2024):

Looks like they're older logs. Don't see anything in the most recent logs
This is all I see

[Nest] 17  - 12/21/2024, 9:19:00 PM     LOG [Api:EventRepository] Websocket Connect:    UN7MrEPsd1a0x6SVAACF
[Nest] 17  - 12/21/2024, 9:19:10 PM     LOG [Api:EventRepository] Websocket Disconnect: VWFYEzP3x2YJ9CzTAACD
[Nest] 17  - 12/21/2024, 9:19:13 PM     LOG [Api:EventRepository] Websocket Connect:    KlnwZRFVsCnQMaUGAACH
[Nest] 17  - 12/21/2024, 9:19:19 PM     LOG [Api:EventRepository] Websocket Disconnect: KlnwZRFVsCnQMaUGAACH
[Nest] 17  - 12/21/2024, 9:19:22 PM     LOG [Api:EventRepository] Websocket Connect:    wR_A1RTiEXPG7OAIAACJ
[Nest] 17  - 12/21/2024, 9:21:13 PM     LOG [Api:EventRepository] Websocket Disconnect: wR_A1RTiEXPG7OAIAACJ
[Nest] 17  - 12/21/2024, 9:21:16 PM     LOG [Api:EventRepository] Websocket Connect:    b9hEuKeSuJ4_Fsn7AACL
[Nest] 17  - 12/21/2024, 9:21:23 PM     LOG [Api:EventRepository] Websocket Connect:    H7dNyrxERulMry_AAACN
[Nest] 17  - 12/21/2024, 9:21:25 PM     LOG [Api:EventRepository] Websocket Disconnect: UN7MrEPsd1a0x6SVAACF
[Nest] 17  - 12/21/2024, 9:21:29 PM     LOG [Api:EventRepository] Websocket Disconnect: H7dNyrxERulMry_AAACN
[Nest] 17  - 12/21/2024, 9:21:31 PM     LOG [Api:EventRepository] Websocket Connect:    GKinTga4kg3o3OKvAACP
[Nest] 17  - 12/21/2024, 9:21:56 PM     LOG [Api:EventRepository] Websocket Disconnect: GKinTga4kg3o3OKvAACP
[Nest] 17  - 12/21/2024, 9:22:44 PM     LOG [Api:EventRepository] Websocket Connect:    vRKNVhSFrGv3G7aWAACR
[Nest] 17  - 12/21/2024, 9:22:57 PM     LOG [Api:EventRepository] Websocket Disconnect: vRKNVhSFrGv3G7aWAACR
[Nest] 17  - 12/21/2024, 9:24:54 PM     LOG [Api:EventRepository] Websocket Connect:    3ChN8WPo_Ev5m3M3AACT
[Nest] 17  - 12/21/2024, 9:25:28 PM     LOG [Api:EventRepository] Websocket Disconnect: 3ChN8WPo_Ev5m3M3AACT
@schizovivek commented on GitHub (Dec 22, 2024): Looks like they're older logs. Don't see anything in the most recent logs This is all I see ``` [Nest] 17 - 12/21/2024, 9:19:00 PM LOG [Api:EventRepository] Websocket Connect: UN7MrEPsd1a0x6SVAACF [Nest] 17 - 12/21/2024, 9:19:10 PM LOG [Api:EventRepository] Websocket Disconnect: VWFYEzP3x2YJ9CzTAACD [Nest] 17 - 12/21/2024, 9:19:13 PM LOG [Api:EventRepository] Websocket Connect: KlnwZRFVsCnQMaUGAACH [Nest] 17 - 12/21/2024, 9:19:19 PM LOG [Api:EventRepository] Websocket Disconnect: KlnwZRFVsCnQMaUGAACH [Nest] 17 - 12/21/2024, 9:19:22 PM LOG [Api:EventRepository] Websocket Connect: wR_A1RTiEXPG7OAIAACJ [Nest] 17 - 12/21/2024, 9:21:13 PM LOG [Api:EventRepository] Websocket Disconnect: wR_A1RTiEXPG7OAIAACJ [Nest] 17 - 12/21/2024, 9:21:16 PM LOG [Api:EventRepository] Websocket Connect: b9hEuKeSuJ4_Fsn7AACL [Nest] 17 - 12/21/2024, 9:21:23 PM LOG [Api:EventRepository] Websocket Connect: H7dNyrxERulMry_AAACN [Nest] 17 - 12/21/2024, 9:21:25 PM LOG [Api:EventRepository] Websocket Disconnect: UN7MrEPsd1a0x6SVAACF [Nest] 17 - 12/21/2024, 9:21:29 PM LOG [Api:EventRepository] Websocket Disconnect: H7dNyrxERulMry_AAACN [Nest] 17 - 12/21/2024, 9:21:31 PM LOG [Api:EventRepository] Websocket Connect: GKinTga4kg3o3OKvAACP [Nest] 17 - 12/21/2024, 9:21:56 PM LOG [Api:EventRepository] Websocket Disconnect: GKinTga4kg3o3OKvAACP [Nest] 17 - 12/21/2024, 9:22:44 PM LOG [Api:EventRepository] Websocket Connect: vRKNVhSFrGv3G7aWAACR [Nest] 17 - 12/21/2024, 9:22:57 PM LOG [Api:EventRepository] Websocket Disconnect: vRKNVhSFrGv3G7aWAACR [Nest] 17 - 12/21/2024, 9:24:54 PM LOG [Api:EventRepository] Websocket Connect: 3ChN8WPo_Ev5m3M3AACT [Nest] 17 - 12/21/2024, 9:25:28 PM LOG [Api:EventRepository] Websocket Disconnect: 3ChN8WPo_Ev5m3M3AACT ```
Author
Owner

@alextran1502 commented on GitHub (Dec 22, 2024):

How did you install Immich on your instance?

@alextran1502 commented on GitHub (Dec 22, 2024): How did you install Immich on your instance?
Author
Owner

@schizovivek commented on GitHub (Dec 22, 2024):

docker compose

.env file

# THESE TWO VARIABLES COME FROM ANOTHER ENV FILE
HOST_USER=<my user>
HOST_GROUP=<same as above>

# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

# The location where your uploaded files are stored
UPLOAD_LOCATION=/mnt/pool/personal/memories
EXTERNAL_LIBRARY=/mnt/pool/personal/memories_non_immich
# The location where your database files are stored
DB_DATA_LOCATION=/home/<my user>/.config/dockerapps/immich/db

# To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
TZ=Europe/London

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=v1.123.0

# Connection secret for postgres. You should change it to a random password
# Please use only the characters `A-Za-z0-9`, without special characters or spaces
DB_PASSWORD=<my pwd>

# The values below this line do not need to be changed
###################################################################################
DB_HOSTNAME=db
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

REDIS_HOSTNAME=redis

MODEL_CACHE=/home/<my user>/.config/dockerapps/immich/model-cache

# Config variable
#IMMICH_CONFIG_FILE=immich.json

compose.yaml

#
# WARNING: Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
#
# The compose file on main may not be compatible with the latest release.
#

name: immich

services:
  server:
    # container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    volumes:
      # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      # - ${EXTERNAL_LIBRARY}:${EXTERNAL_LIBRARY}:ro
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    environment:
      user: ${HOST_USER}:${HOST_GROUP}
    ports:
      - 9006:2283
    depends_on:
      - redis
      - db
    restart: unless-stopped
    healthcheck:
      disable: false

  ml:
    # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
    # Example tag: ${IMMICH_VERSION:-release}-cuda
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    #   file: hwaccel.ml.yml
    #   service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    volumes:
      - ${MODEL_CACHE}:/cache
    env_file:
      - .env
    environment:
      user: ${HOST_USER}:${HOST_GROUP}
    restart: unless-stopped
    healthcheck:
      disable: false

  redis:
    image: docker.io/redis:6.2-alpine@sha256:eaba718fecd1196d88533de7ba49bf903ad33664a92debb24660a922ecd9cac8
    environment:
      user: ${HOST_USER}:${HOST_GROUP}
    healthcheck:
      test: redis-cli ping || exit 1
    restart: unless-stopped

  db:
    image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    # env_file:
    #   - .env
    environment:
      user: ${HOST_USER}:${HOST_GROUP}
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
    volumes:
      # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
    restart: unless-stopped
    healthcheck:
      test: >-
        pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1;
        Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align
        --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')";
        echo "checksum failure count is $$Chksum";
        [ "$$Chksum" = '0' ] || exit 1
      interval: 5m
      start_interval: 30s
      start_period: 5m
    command: >-
      postgres
      -c shared_preload_libraries=vectors.so
      -c 'search_path="$$user", public, vectors'
      -c logging_collector=on
      -c max_wal_size=2GB
      -c shared_buffers=512MB
      -c wal_compression=on
@schizovivek commented on GitHub (Dec 22, 2024): docker compose .env file ```yaml # THESE TWO VARIABLES COME FROM ANOTHER ENV FILE HOST_USER=<my user> HOST_GROUP=<same as above> # You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables # The location where your uploaded files are stored UPLOAD_LOCATION=/mnt/pool/personal/memories EXTERNAL_LIBRARY=/mnt/pool/personal/memories_non_immich # The location where your database files are stored DB_DATA_LOCATION=/home/<my user>/.config/dockerapps/immich/db # To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List TZ=Europe/London # The Immich version to use. You can pin this to a specific version like "v1.71.0" IMMICH_VERSION=v1.123.0 # Connection secret for postgres. You should change it to a random password # Please use only the characters `A-Za-z0-9`, without special characters or spaces DB_PASSWORD=<my pwd> # The values below this line do not need to be changed ################################################################################### DB_HOSTNAME=db DB_USERNAME=postgres DB_DATABASE_NAME=immich REDIS_HOSTNAME=redis MODEL_CACHE=/home/<my user>/.config/dockerapps/immich/model-cache # Config variable #IMMICH_CONFIG_FILE=immich.json ``` compose.yaml ```yaml # # WARNING: Make sure to use the docker-compose.yml of the current release: # # https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml # # The compose file on main may not be compatible with the latest release. # name: immich services: server: # container_name: immich_server image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} volumes: # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file - ${UPLOAD_LOCATION}:/usr/src/app/upload # - ${EXTERNAL_LIBRARY}:${EXTERNAL_LIBRARY}:ro - /etc/localtime:/etc/localtime:ro env_file: - .env environment: user: ${HOST_USER}:${HOST_GROUP} ports: - 9006:2283 depends_on: - redis - db restart: unless-stopped healthcheck: disable: false ml: # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag. # Example tag: ${IMMICH_VERSION:-release}-cuda image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration # file: hwaccel.ml.yml # service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable volumes: - ${MODEL_CACHE}:/cache env_file: - .env environment: user: ${HOST_USER}:${HOST_GROUP} restart: unless-stopped healthcheck: disable: false redis: image: docker.io/redis:6.2-alpine@sha256:eaba718fecd1196d88533de7ba49bf903ad33664a92debb24660a922ecd9cac8 environment: user: ${HOST_USER}:${HOST_GROUP} healthcheck: test: redis-cli ping || exit 1 restart: unless-stopped db: image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0 # env_file: # - .env environment: user: ${HOST_USER}:${HOST_GROUP} POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: '--data-checksums' volumes: # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file - ${DB_DATA_LOCATION}:/var/lib/postgresql/data restart: unless-stopped healthcheck: test: >- pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1; Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is $$Chksum"; [ "$$Chksum" = '0' ] || exit 1 interval: 5m start_interval: 30s start_period: 5m command: >- postgres -c shared_preload_libraries=vectors.so -c 'search_path="$$user", public, vectors' -c logging_collector=on -c max_wal_size=2GB -c shared_buffers=512MB -c wal_compression=on ```
Author
Owner

@alextran1502 commented on GitHub (Dec 22, 2024):

Do you mind trying to create a test instance with the stock docker-compose and .env file, then try uploading the video and see if it works? If it is, then some custom setup in your instance might have been causing the issue.

@alextran1502 commented on GitHub (Dec 22, 2024): Do you mind trying to create a test instance with the stock docker-compose and .env file, then try uploading the video and see if it works? If it is, then some custom setup in your instance might have been causing the issue.
Author
Owner

@schizovivek commented on GitHub (Dec 22, 2024):

Think I've found the issue. It seems to be happening since i'm using a local certificate for https (caddy). I just connected to my server using http and it worked

my https server: https://immich.machine-name.local
my http server: http://tailscale-server-name:9006

How I found out. I just tried to pull the adb logs using adb logcat and saw an error pop up when I launched the video. This is the error.

I hope the below is useful and my assumptions are correct :-D

12-21 21:50:50.881   725   924 D SDM     : DisplayBase::BuildLayerStackStats: LayerStack layer_count: 3, app_layer_count: 2, gpu_target_index: 2, display type: 0
12-21 21:50:50.883   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:50.913   815  1661 V AudioFlinger_Threads: releaseWakeLock_l() AudioOut_D
12-21 21:50:50.913   815  1661 V AudioFlinger_Threads: thread 0xe9883280 type 0 TID 1661 going to sleep
12-21 21:50:50.916   815  1663 V AudioFlinger_Threads: releaseWakeLock_l() AudioOut_15
12-21 21:50:50.916   815  1663 V AudioFlinger_Threads: thread 0xe9583980 type 0 TID 1663 going to sleep
12-21 21:50:50.921   815  1665 V AudioFlinger_Threads: releaseWakeLock_l() AudioOut_1D
12-21 21:50:50.922   815  1665 V AudioFlinger_Threads: thread 0xe9403680 type 0 TID 1665 going to sleep
12-21 21:50:51.093  1103  1366 D BandwidthController: [LG DATA] No such appUid in naughtyAppUids: 10353
12-21 21:50:51.094  1103  1366 D DnsProxyListener: App 10353 is allowed to send DNS. af=0 protocol=0
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: Playback error
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:   j0.C: Source error
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at j0.w0.L(Unknown Source:16)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at j0.w0.handleMessage(Unknown Source:322)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at android.os.Handler.dispatchMessage(Handler.java:102)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at android.os.Looper.loop(Looper.java:205)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at android.os.HandlerThread.run(HandlerThread.java:65)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:   Caused by: h0.q: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at h0.l.j(Unknown Source:268)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at h0.w.j(Unknown Source:12)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at q0.U$b.a(Unknown Source:25)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at t0.k$d.run(Unknown Source:45)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at java.lang.Thread.run(Thread.java:764)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:   Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:229)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:192)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:149)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:89)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:26)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at h0.l.y(Unknown Source:148)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at h0.l.x(Unknown Source:51)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at h0.l.j(Unknown Source:12)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       ... 6 more
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:   Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:646)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:605)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:495)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:418)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:339)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:88)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:208)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.ConscryptFileDescriptorSocket.verifyCertificateChain(ConscryptFileDescriptorSocket.java:404)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.NativeSsl.doHandshake(NativeSsl.java:375)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:224)
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       ... 21 more
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:   Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal:       ... 33 more
12-21 21:50:51.204   725   924 D SDM     : DisplayBase::BuildLayerStackStats: LayerStack layer_count: 3, app_layer_count: 2, gpu_target_index: 2, display type: 0
12-21 21:50:51.204   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:51.210 13653 13653 D AndroidRuntime: Shutting down VM
12-21 21:50:51.213 13653 13653 E AndroidRuntime: FATAL EXCEPTION: main
12-21 21:50:51.213 13653 13653 E AndroidRuntime: Process: app.alextran.immich, PID: 13653
12-21 21:50:51.213 13653 13653 E AndroidRuntime: java.lang.ClassCastException: h0.q cannot be cast to java.lang.Error
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at E5.b.k0(Unknown Source:35)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.i0.C1(Unknown Source:2)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.i0.c0(Unknown Source:0)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.g0.b(Unknown Source:4)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at f0.n$c.a(Unknown Source:17)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at f0.n.h(Unknown Source:16)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at f0.n.a(Unknown Source:0)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at f0.m.run(Unknown Source:6)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at f0.n.f(Unknown Source:67)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.i0.f2(Unknown Source:422)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.i0.n1(Unknown Source:192)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.i0.s1(Unknown Source:0)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.i0.m0(Unknown Source:0)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at j0.Y.run(Unknown Source:4)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:873)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:205)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6991)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
12-21 21:50:51.213 13653 13653 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:884)
12-21 21:50:51.228  1770  3860 W ActivityManager:   Force finishing activity app.alextran.immich/.MainActivity
12-21 21:50:51.232  1770  3860 D ActivityManager: setVisibility false ActivityRecord{a85be69 u0 app.alextran.immich/.MainActivity t17018 f}
12-21 21:50:51.236  1770  3860 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity}
12-21 21:50:51.237  1770  1868 I SystemUI[Framework]: ==> disableLocked() userId=0, what=0x0, token=android.os.Binder@e317345, pkg=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity}, whichFlag=1, bar=com.android.internal.statusbar.IStatusBar$Stub$Proxy@d24ff44
12-21 21:50:51.237  1770  1868 I SystemUI[Framework]: StatusBar disabled: mDisabled1=0x0 mDisabled2=0x0
12-21 21:50:51.237  1770  1868 I SystemUI[Framework]:   mDisableRecords.size=1
12-21 21:50:51.237  1770  1868 I SystemUI[Framework]:   [0] userId=0 what1=0x0 what2=0x0 pkg=null token=android.os.BinderProxy@d24da42
12-21 21:50:51.242  1770  1867 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
12-21 21:50:51.257  3968  9492 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1032 android.content.ContextWrapper.sendBroadcast:444 com.lge.mlt.providers.LDBSmartCareTrigger.sendMsgSmartCare:33 com.lge.mlt.providers.LDBMainLogProvider.insert:275 android.content.ContentProvider$Transport.insert:268
12-21 21:50:51.262  1770  3447 W ActivityManager: Sending non-protected broadcast com.lge.mlt.action.smartcare.event from system 3968:com.lge.mlt/1000 pkg com.lge.mlt
12-21 21:50:51.262 13653 13653 I Process : Sending signal. PID: 13653 SIG: 9
12-21 21:50:51.288  1770  1869 I ActivityManager: Start proc 13819:com.lge.ia.task.smartcare/1000 for broadcast com.lge.ia.task.smartcare/.SmartCareIntentReceiver
12-21 21:50:51.356  1770  2484 W InputDispatcher: channel 'd020ac app.alextran.immich/app.alextran.immich.MainActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
12-21 21:50:51.356  1770  2484 E InputDispatcher: channel 'd020ac app.alextran.immich/app.alextran.immich.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
12-21 21:50:51.357 13819 13819 E .task.smartcar: Not starting debugger since process cannot load the jdwp agent.
12-21 21:50:51.389   815  1428 V AudioFlinger: 13653 died, releasing its sessions
12-21 21:50:51.390   815  1428 V AudioFlinger:  pid 3488 @ 0
12-21 21:50:51.390   815  1428 V AudioFlinger:  pid 32352 @ 1
12-21 21:50:51.392  1770  3861 D DisplayManagerService: Display listener for pid 13653 died.
12-21 21:50:51.392  1770  3863 I WindowManager: WIN DEATH: Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity}
12-21 21:50:51.393  1770  1870 W libprocessgroup: kill(-13653, 9) failed: No such process
12-21 21:50:51.394  1770  3846 I ActivityManager: Process app.alextran.immich (pid 13653) has died: vis  +99TOP
12-21 21:50:51.396  1022  1022 I Zygote  : Process 13653 exited due to signal (9)
12-21 21:50:51.396  1770  3863 W InputDispatcher: Attempted to unregister already unregistered input channel 'd020ac app.alextran.immich/app.alextran.immich.MainActivity (server)'
12-21 21:50:51.400  1770  3863 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity EXITING}
12-21 21:50:51.405  1770  1870 W libprocessgroup: kill(-13653, 9) failed: No such process
12-21 21:50:51.405  1770  1870 I libprocessgroup: Successfully killed process cgroup uid 10353 pid 13653 in 12ms
12-21 21:50:51.406  1770  3863 D InputDispatcher: Focus left window: Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity}
12-21 21:50:51.406  1770  3863 D InputDispatcher: Window went away: Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity}
12-21 21:50:51.406   820   820 I SurfaceFlinger: Removed BufferLayer(0x7528e8a000) SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#1 (1079 x 1943)
12-21 21:50:51.407   820   820 I SurfaceFlinger: Removed BlurLayer(0x7528e8d000) Background for -SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#1 (1079 x 1943)
12-21 21:50:51.410   820   820 I SurfaceFlinger: Removed BufferLayer(0x7528ef4000) SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#0 (1080 x 2160)
12-21 21:50:51.410   820   820 I SurfaceFlinger: Removed BlurLayer(0x7528ef7000) Background for -SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#0 (1080 x 2160)
12-21 21:50:51.405  1770  3863 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity EXITING}
12-21 21:50:51.411  1770  2451 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity EXITING}
12-21 21:50:51.412   725   924 D SDM     : DisplayBase::BuildLayerStackStats: LayerStack layer_count: 2, app_layer_count: 1, gpu_target_index: 1, display type: 0
12-21 21:50:51.413   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:51.424   820   820 I SurfaceFlinger: Removed BufferLayer(0x7528ec7000) app.alextran.immich/app.alextran.immich.MainActivity@13653#0 (1080 x 2160)
12-21 21:50:51.426   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:51.427   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:51.427   820   820 E HWComposer: presentAndGetReleaseFences: present failed for display 0: NotValidated (7)
12-21 21:50:51.440   820   820 I SurfaceFlinger: Removed ContainerLayer(0x752696c000) d020ac app.alextran.immich/app.alextran.immich.MainActivity#0 (5760 x 5760)
12-21 21:50:51.440   820   820 I SurfaceFlinger: Removed ContainerLayer(0x7528f7a000) Task=17018#0 (5760 x 5760)
12-21 21:50:51.440   820   820 I SurfaceFlinger: Removed ContainerLayer(0x7528f7d000) AppWindowToken{9b4598f token=Token{92c40ee ActivityRecord{a85be69 u0 app.alextran.immich/.MainActivity t17018}}}#0 (5760 x 5760)
12-21 21:50:51.442   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:51.442   725   924 I SDM     : HWInfo::GetFirstDisplayInterfaceType: First display is internal display
12-21 21:50:51.442   820   820 E HWComposer: presentAndGetReleaseFences: present failed for display 0: NotValidated (7)
12-21 21:50:51.450  1770  3846 D ActivityManager: setVisibility true ActivityRecord{3f56812 u0 com.teslacoilsw.launcher/.NovaLauncher t16862}
12-21 21:50:51.456   771   771 W PHHandler: [PH] hint not found.
12-21 21:50:51.453  1770  3846 D ActivityManager: setVisibility true ActivityRecord{3f56812 u0 com.teslacoilsw.launcher/.NovaLauncher t16862}
12-21 21:50:51.456  2838  2910 D AutoGameModeMonitor: Display : 0  Package : u0 com.teslacoilsw.launcher  PrevPackage : u0 app.alextran.immich
@schizovivek commented on GitHub (Dec 22, 2024): Think I've found the issue. It seems to be happening since i'm using a local certificate for https (caddy). I just connected to my server using http and it worked my https server: https://immich.machine-name.local my http server: http://tailscale-server-name:9006 How I found out. I just tried to pull the adb logs using `adb logcat` and saw an error pop up when I launched the video. This is the error. I hope the below is useful and my assumptions are correct :-D ```log 12-21 21:50:50.881 725 924 D SDM : DisplayBase::BuildLayerStackStats: LayerStack layer_count: 3, app_layer_count: 2, gpu_target_index: 2, display type: 0 12-21 21:50:50.883 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:50.913 815 1661 V AudioFlinger_Threads: releaseWakeLock_l() AudioOut_D 12-21 21:50:50.913 815 1661 V AudioFlinger_Threads: thread 0xe9883280 type 0 TID 1661 going to sleep 12-21 21:50:50.916 815 1663 V AudioFlinger_Threads: releaseWakeLock_l() AudioOut_15 12-21 21:50:50.916 815 1663 V AudioFlinger_Threads: thread 0xe9583980 type 0 TID 1663 going to sleep 12-21 21:50:50.921 815 1665 V AudioFlinger_Threads: releaseWakeLock_l() AudioOut_1D 12-21 21:50:50.922 815 1665 V AudioFlinger_Threads: thread 0xe9403680 type 0 TID 1665 going to sleep 12-21 21:50:51.093 1103 1366 D BandwidthController: [LG DATA] No such appUid in naughtyAppUids: 10353 12-21 21:50:51.094 1103 1366 D DnsProxyListener: App 10353 is allowed to send DNS. af=0 protocol=0 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: Playback error 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: j0.C: Source error 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at j0.w0.L(Unknown Source:16) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at j0.w0.handleMessage(Unknown Source:322) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at android.os.Handler.dispatchMessage(Handler.java:102) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at android.os.Looper.loop(Looper.java:205) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at android.os.HandlerThread.run(HandlerThread.java:65) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: Caused by: h0.q: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at h0.l.j(Unknown Source:268) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at h0.w.j(Unknown Source:12) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at q0.U$b.a(Unknown Source:25) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at t0.k$d.run(Unknown Source:45) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at java.lang.Thread.run(Thread.java:764) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:229) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:192) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:149) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:89) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:26) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at h0.l.y(Unknown Source:148) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at h0.l.x(Unknown Source:51) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at h0.l.j(Unknown Source:12) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: ... 6 more 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:646) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:605) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:495) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:418) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:339) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:88) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:208) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.verifyCertificateChain(ConscryptFileDescriptorSocket.java:404) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.NativeSsl.doHandshake(NativeSsl.java:375) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:224) 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: ... 21 more 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 12-21 21:50:51.154 13653 13807 E ExoPlayerImplInternal: ... 33 more 12-21 21:50:51.204 725 924 D SDM : DisplayBase::BuildLayerStackStats: LayerStack layer_count: 3, app_layer_count: 2, gpu_target_index: 2, display type: 0 12-21 21:50:51.204 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:51.210 13653 13653 D AndroidRuntime: Shutting down VM 12-21 21:50:51.213 13653 13653 E AndroidRuntime: FATAL EXCEPTION: main 12-21 21:50:51.213 13653 13653 E AndroidRuntime: Process: app.alextran.immich, PID: 13653 12-21 21:50:51.213 13653 13653 E AndroidRuntime: java.lang.ClassCastException: h0.q cannot be cast to java.lang.Error 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at E5.b.k0(Unknown Source:35) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.i0.C1(Unknown Source:2) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.i0.c0(Unknown Source:0) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.g0.b(Unknown Source:4) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at f0.n$c.a(Unknown Source:17) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at f0.n.h(Unknown Source:16) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at f0.n.a(Unknown Source:0) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at f0.m.run(Unknown Source:6) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at f0.n.f(Unknown Source:67) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.i0.f2(Unknown Source:422) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.i0.n1(Unknown Source:192) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.i0.s1(Unknown Source:0) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.i0.m0(Unknown Source:0) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at j0.Y.run(Unknown Source:4) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:873) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at android.os.Looper.loop(Looper.java:205) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6991) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 12-21 21:50:51.213 13653 13653 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:884) 12-21 21:50:51.228 1770 3860 W ActivityManager: Force finishing activity app.alextran.immich/.MainActivity 12-21 21:50:51.232 1770 3860 D ActivityManager: setVisibility false ActivityRecord{a85be69 u0 app.alextran.immich/.MainActivity t17018 f} 12-21 21:50:51.236 1770 3860 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity} 12-21 21:50:51.237 1770 1868 I SystemUI[Framework]: ==> disableLocked() userId=0, what=0x0, token=android.os.Binder@e317345, pkg=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity}, whichFlag=1, bar=com.android.internal.statusbar.IStatusBar$Stub$Proxy@d24ff44 12-21 21:50:51.237 1770 1868 I SystemUI[Framework]: StatusBar disabled: mDisabled1=0x0 mDisabled2=0x0 12-21 21:50:51.237 1770 1868 I SystemUI[Framework]: mDisableRecords.size=1 12-21 21:50:51.237 1770 1868 I SystemUI[Framework]: [0] userId=0 what1=0x0 what2=0x0 pkg=null token=android.os.BinderProxy@d24da42 12-21 21:50:51.242 1770 1867 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver 12-21 21:50:51.257 3968 9492 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1032 android.content.ContextWrapper.sendBroadcast:444 com.lge.mlt.providers.LDBSmartCareTrigger.sendMsgSmartCare:33 com.lge.mlt.providers.LDBMainLogProvider.insert:275 android.content.ContentProvider$Transport.insert:268 12-21 21:50:51.262 1770 3447 W ActivityManager: Sending non-protected broadcast com.lge.mlt.action.smartcare.event from system 3968:com.lge.mlt/1000 pkg com.lge.mlt 12-21 21:50:51.262 13653 13653 I Process : Sending signal. PID: 13653 SIG: 9 12-21 21:50:51.288 1770 1869 I ActivityManager: Start proc 13819:com.lge.ia.task.smartcare/1000 for broadcast com.lge.ia.task.smartcare/.SmartCareIntentReceiver 12-21 21:50:51.356 1770 2484 W InputDispatcher: channel 'd020ac app.alextran.immich/app.alextran.immich.MainActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9 12-21 21:50:51.356 1770 2484 E InputDispatcher: channel 'd020ac app.alextran.immich/app.alextran.immich.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed! 12-21 21:50:51.357 13819 13819 E .task.smartcar: Not starting debugger since process cannot load the jdwp agent. 12-21 21:50:51.389 815 1428 V AudioFlinger: 13653 died, releasing its sessions 12-21 21:50:51.390 815 1428 V AudioFlinger: pid 3488 @ 0 12-21 21:50:51.390 815 1428 V AudioFlinger: pid 32352 @ 1 12-21 21:50:51.392 1770 3861 D DisplayManagerService: Display listener for pid 13653 died. 12-21 21:50:51.392 1770 3863 I WindowManager: WIN DEATH: Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity} 12-21 21:50:51.393 1770 1870 W libprocessgroup: kill(-13653, 9) failed: No such process 12-21 21:50:51.394 1770 3846 I ActivityManager: Process app.alextran.immich (pid 13653) has died: vis +99TOP 12-21 21:50:51.396 1022 1022 I Zygote : Process 13653 exited due to signal (9) 12-21 21:50:51.396 1770 3863 W InputDispatcher: Attempted to unregister already unregistered input channel 'd020ac app.alextran.immich/app.alextran.immich.MainActivity (server)' 12-21 21:50:51.400 1770 3863 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity EXITING} 12-21 21:50:51.405 1770 1870 W libprocessgroup: kill(-13653, 9) failed: No such process 12-21 21:50:51.405 1770 1870 I libprocessgroup: Successfully killed process cgroup uid 10353 pid 13653 in 12ms 12-21 21:50:51.406 1770 3863 D InputDispatcher: Focus left window: Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity} 12-21 21:50:51.406 1770 3863 D InputDispatcher: Window went away: Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity} 12-21 21:50:51.406 820 820 I SurfaceFlinger: Removed BufferLayer(0x7528e8a000) SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#1 (1079 x 1943) 12-21 21:50:51.407 820 820 I SurfaceFlinger: Removed BlurLayer(0x7528e8d000) Background for -SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#1 (1079 x 1943) 12-21 21:50:51.410 820 820 I SurfaceFlinger: Removed BufferLayer(0x7528ef4000) SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#0 (1080 x 2160) 12-21 21:50:51.410 820 820 I SurfaceFlinger: Removed BlurLayer(0x7528ef7000) Background for -SurfaceView - app.alextran.immich/app.alextran.immich.MainActivity@13653#0 (1080 x 2160) 12-21 21:50:51.405 1770 3863 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity EXITING} 12-21 21:50:51.411 1770 2451 D WindowManager: FocusedWindow set Immersive Mode, win=Window{d020ac u0 app.alextran.immich/app.alextran.immich.MainActivity EXITING} 12-21 21:50:51.412 725 924 D SDM : DisplayBase::BuildLayerStackStats: LayerStack layer_count: 2, app_layer_count: 1, gpu_target_index: 1, display type: 0 12-21 21:50:51.413 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:51.424 820 820 I SurfaceFlinger: Removed BufferLayer(0x7528ec7000) app.alextran.immich/app.alextran.immich.MainActivity@13653#0 (1080 x 2160) 12-21 21:50:51.426 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:51.427 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:51.427 820 820 E HWComposer: presentAndGetReleaseFences: present failed for display 0: NotValidated (7) 12-21 21:50:51.440 820 820 I SurfaceFlinger: Removed ContainerLayer(0x752696c000) d020ac app.alextran.immich/app.alextran.immich.MainActivity#0 (5760 x 5760) 12-21 21:50:51.440 820 820 I SurfaceFlinger: Removed ContainerLayer(0x7528f7a000) Task=17018#0 (5760 x 5760) 12-21 21:50:51.440 820 820 I SurfaceFlinger: Removed ContainerLayer(0x7528f7d000) AppWindowToken{9b4598f token=Token{92c40ee ActivityRecord{a85be69 u0 app.alextran.immich/.MainActivity t17018}}}#0 (5760 x 5760) 12-21 21:50:51.442 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:51.442 725 924 I SDM : HWInfo::GetFirstDisplayInterfaceType: First display is internal display 12-21 21:50:51.442 820 820 E HWComposer: presentAndGetReleaseFences: present failed for display 0: NotValidated (7) 12-21 21:50:51.450 1770 3846 D ActivityManager: setVisibility true ActivityRecord{3f56812 u0 com.teslacoilsw.launcher/.NovaLauncher t16862} 12-21 21:50:51.456 771 771 W PHHandler: [PH] hint not found. 12-21 21:50:51.453 1770 3846 D ActivityManager: setVisibility true ActivityRecord{3f56812 u0 com.teslacoilsw.launcher/.NovaLauncher t16862} 12-21 21:50:51.456 2838 2910 D AutoGameModeMonitor: Display : 0 Package : u0 com.teslacoilsw.launcher PrevPackage : u0 app.alextran.immich ```
Author
Owner

@schizovivek commented on GitHub (Dec 22, 2024):

I have the 'Allow self-signed SSL certificates' checkbox enabled in my app. Without which I cannot login using https

@schizovivek commented on GitHub (Dec 22, 2024): I have the 'Allow self-signed SSL certificates' checkbox enabled in my app. Without which I cannot login using https
Author
Owner

@hzxa21 commented on GitHub (Dec 24, 2024):

I have the exact video and live photo playback issue. I am also using self signed cert.

@hzxa21 commented on GitHub (Dec 24, 2024): I have the exact video and live photo playback issue. I am also using self signed cert.
Author
Owner

@schizovivek commented on GitHub (Dec 25, 2024):

I have the exact video and live photo playback issue. I am also using self signed cert.

Phew.. Glad i'm not the only one.

@schizovivek commented on GitHub (Dec 25, 2024): > I have the exact video and live photo playback issue. I am also using self signed cert. Phew.. Glad i'm not the only one.
Author
Owner

@GitMastic commented on GitHub (Dec 25, 2024):

I confirm exact same issue when using a self-signed certificate. Issue disappears when using HTTP or a public SSL certificate.

On Samsung S21. I was not able to log the problem but the app just closes immediately.

Issue is easy to replicate, use a self signed certificate, allow self signed but do not provide a certificate file (didn't test providing one)

@GitMastic commented on GitHub (Dec 25, 2024): I confirm exact same issue when using a self-signed certificate. Issue disappears when using HTTP or a public SSL certificate. On Samsung S21. I was not able to log the problem but the app just closes immediately. Issue is easy to replicate, use a self signed certificate, allow self signed but do not provide a certificate file (didn't test providing one)
Author
Owner

@matsicking commented on GitHub (Dec 25, 2024):

Here is my app log from Nothing Phone 1:

type: crash
osVersion: Nothing/voltage_Spacewar/Spacewar:15/AP3A.241105.008/eng.nobody:userdebug/release-keys
package: app.alextran.immich:2172
process: app.alextran.immich
processUptime: 13788 + 50 ms
installer: dev.imranr.obtainium

java.lang.ClassCastException: v0.c cannot be cast to java.lang.Error
	at E5.b.k0(Unknown Source:35)
	at j0.i0.C1(Unknown Source:2)
	at j0.i0.c0(Unknown Source:0)
	at j0.g0.b(Unknown Source:4)
	at f0.n$c.a(Unknown Source:17)
	at f0.n.h(Unknown Source:16)
	at f0.n.a(Unknown Source:0)
	at f0.m.run(Unknown Source:6)
	at f0.n.f(Unknown Source:67)
	at j0.i0.f2(Unknown Source:422)
	at j0.i0.n1(Unknown Source:192)
	at j0.i0.s1(Unknown Source:0)
	at j0.i0.m0(Unknown Source:0)
	at j0.Y.run(Unknown Source:4)
	at android.os.Handler.handleCallback(Handler.java:959)
	at android.os.Handler.dispatchMessage(Handler.java:100)
	at android.os.Looper.loopOnce(Looper.java:232)
	at android.os.Looper.loop(Looper.java:317)
	at android.app.ActivityThread.main(ActivityThread.java:8732)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:585)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:886)

Hope that helps somehow!

@matsicking commented on GitHub (Dec 25, 2024): Here is my app log from Nothing Phone 1: ``` type: crash osVersion: Nothing/voltage_Spacewar/Spacewar:15/AP3A.241105.008/eng.nobody:userdebug/release-keys package: app.alextran.immich:2172 process: app.alextran.immich processUptime: 13788 + 50 ms installer: dev.imranr.obtainium java.lang.ClassCastException: v0.c cannot be cast to java.lang.Error at E5.b.k0(Unknown Source:35) at j0.i0.C1(Unknown Source:2) at j0.i0.c0(Unknown Source:0) at j0.g0.b(Unknown Source:4) at f0.n$c.a(Unknown Source:17) at f0.n.h(Unknown Source:16) at f0.n.a(Unknown Source:0) at f0.m.run(Unknown Source:6) at f0.n.f(Unknown Source:67) at j0.i0.f2(Unknown Source:422) at j0.i0.n1(Unknown Source:192) at j0.i0.s1(Unknown Source:0) at j0.i0.m0(Unknown Source:0) at j0.Y.run(Unknown Source:4) at android.os.Handler.handleCallback(Handler.java:959) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loopOnce(Looper.java:232) at android.os.Looper.loop(Looper.java:317) at android.app.ActivityThread.main(ActivityThread.java:8732) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:585) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:886) ``` Hope that helps somehow!
Author
Owner

@nonewbie commented on GitHub (Dec 25, 2024):

the same .looks like https with ssl problem,but app not support websocket ssl,Hope it can be supported quickly @alextran1502

@nonewbie commented on GitHub (Dec 25, 2024): the same .looks like https with ssl problem,but app not support websocket ssl,Hope it can be supported quickly @alextran1502
Author
Owner

@alextran1502 commented on GitHub (Dec 25, 2024):

@nonewbie This only affect users who use self sign cert.

@alextran1502 commented on GitHub (Dec 25, 2024): @nonewbie This only affect users who use self sign cert.
Author
Owner

@nonewbie commented on GitHub (Dec 25, 2024):

@nonewbie This only affect users who use self sign cert.

sorry i was wrong. i used self signed cert too

@nonewbie commented on GitHub (Dec 25, 2024): > @nonewbie This only affect users who use self sign cert. sorry i was wrong. i used self signed cert too
Author
Owner

@APTX commented on GitHub (Dec 27, 2024):

I also get the a when trying to play video:

12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: Playback error
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:   j0.C: Source error
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at j0.w0.L(Unknown Source:16)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at j0.w0.handleMessage(Unknown Source:322)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at android.os.Handler.dispatchMessage(Handler.java:102)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at android.os.Looper.loopOnce(Looper.java:226)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at android.os.Looper.loop(Looper.java:339)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at android.os.HandlerThread.run(HandlerThread.java:67)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:   Caused by: h0.s: Response code: 400
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at h0.l.j(Unknown Source:260)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at h0.w.j(Unknown Source:12)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at q0.U$b.a(Unknown Source:25)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at t0.k$d.run(Unknown Source:45)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal:       at java.lang.Thread.run(Thread.java:1012)
12-27 11:07:57.479 26117 26117 D AndroidRuntime: Shutting down VM
12-27 11:07:57.480 26117 26117 E AndroidRuntime: FATAL EXCEPTION: main
12-27 11:07:57.480 26117 26117 E AndroidRuntime: Process: app.alextran.immich, PID: 26117
12-27 11:07:57.480 26117 26117 E AndroidRuntime: java.lang.ClassCastException: h0.s cannot be cast to java.lang.Error
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at E5.b.k0(Unknown Source:35)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.i0.C1(Unknown Source:2)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.i0.c0(Unknown Source:0)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.g0.b(Unknown Source:4)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at f0.n$c.a(Unknown Source:17)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at f0.n.h(Unknown Source:16)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at f0.n.a(Unknown Source:0)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at f0.m.run(Unknown Source:6)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at f0.n.f(Unknown Source:67)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.i0.f2(Unknown Source:422)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.i0.n1(Unknown Source:192)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.i0.s1(Unknown Source:0)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.i0.m0(Unknown Source:0)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at j0.Y.run(Unknown Source:4)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:938)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at android.os.Looper.loopOnce(Looper.java:226)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:339)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:7991)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
12-27 11:07:57.480 26117 26117 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1009)
12-27 11:07:57.484  1770  2588 W ActivityTaskManager:   Force finishing activity app.alextran.immich/.MainActivity

I am using a client certificate. This should be very similar to the self-signed cases. Really the error message makes it look like the crash is caused by a video playback error (which is caused by the player having some network issue).

@APTX commented on GitHub (Dec 27, 2024): I also get the a when trying to play video: ``` 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: Playback error 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: j0.C: Source error 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at j0.w0.L(Unknown Source:16) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at j0.w0.handleMessage(Unknown Source:322) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at android.os.Handler.dispatchMessage(Handler.java:102) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at android.os.Looper.loopOnce(Looper.java:226) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at android.os.Looper.loop(Looper.java:339) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at android.os.HandlerThread.run(HandlerThread.java:67) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: Caused by: h0.s: Response code: 400 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at h0.l.j(Unknown Source:260) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at h0.w.j(Unknown Source:12) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at q0.U$b.a(Unknown Source:25) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at t0.k$d.run(Unknown Source:45) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644) 12-27 11:07:57.476 26117 26363 E ExoPlayerImplInternal: at java.lang.Thread.run(Thread.java:1012) 12-27 11:07:57.479 26117 26117 D AndroidRuntime: Shutting down VM 12-27 11:07:57.480 26117 26117 E AndroidRuntime: FATAL EXCEPTION: main 12-27 11:07:57.480 26117 26117 E AndroidRuntime: Process: app.alextran.immich, PID: 26117 12-27 11:07:57.480 26117 26117 E AndroidRuntime: java.lang.ClassCastException: h0.s cannot be cast to java.lang.Error 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at E5.b.k0(Unknown Source:35) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.i0.C1(Unknown Source:2) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.i0.c0(Unknown Source:0) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.g0.b(Unknown Source:4) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at f0.n$c.a(Unknown Source:17) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at f0.n.h(Unknown Source:16) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at f0.n.a(Unknown Source:0) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at f0.m.run(Unknown Source:6) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at f0.n.f(Unknown Source:67) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.i0.f2(Unknown Source:422) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.i0.n1(Unknown Source:192) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.i0.s1(Unknown Source:0) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.i0.m0(Unknown Source:0) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at j0.Y.run(Unknown Source:4) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:938) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:226) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at android.os.Looper.loop(Looper.java:339) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7991) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) 12-27 11:07:57.480 26117 26117 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1009) 12-27 11:07:57.484 1770 2588 W ActivityTaskManager: Force finishing activity app.alextran.immich/.MainActivity ``` I am using a client certificate. This should be very similar to the self-signed cases. Really the error message makes it look like the crash is caused by a video playback error (which is caused by the player having some network issue).
Author
Owner

@mmomjian commented on GitHub (Jan 10, 2025):

#15230

@mmomjian commented on GitHub (Jan 10, 2025): #15230
Author
Owner

@rovo89 commented on GitHub (Jan 10, 2025):

@mmomjian Requesting you reopen at least this (or a similar) issue. Regardless of the priority for making things work nicely with those "experimental" network setups, the app should never crash. Even if the screen would just stay black as it was with the old video player, that's a lot better than crashing. I could imagine that even with standard setups, edge cases like a temporary connection loss might not be caught properly.

@rovo89 commented on GitHub (Jan 10, 2025): @mmomjian Requesting you reopen at least this (or a similar) issue. Regardless of the priority for making things work nicely with those "experimental" network setups, the app should never crash. Even if the screen would just stay black as it was with the old video player, that's a lot better than crashing. I could imagine that even with standard setups, edge cases like a temporary connection loss might not be caught properly.
Author
Owner

@bo0tzz commented on GitHub (Jan 10, 2025):

We've decided to consolidate all issues like this into the linked meta issue for now.

@bo0tzz commented on GitHub (Jan 10, 2025): We've decided to consolidate all issues like this into the linked meta issue for now.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#4995