theothernt / AerialViews

A screensaver for Android TV devices including Nvidia Shield, Fire TV, and Chromecast with Google TV. Inspired by Apple TV's video screensaver.
GNU General Public License v3.0
418 stars 32 forks source link

4K HDR videos not playing from SMB share #128

Closed EndorEwoksFC closed 1 month ago

EndorEwoksFC commented 6 months ago

What were you trying to do... Play local files from my SMB share.

And what actually happened (ie. describe the bug)... I connected successfully and upon clicking "Test connection settings" I get: Videos found: 17 Videos with unsupported file extensions: 0 Videos selected for playback: 17

When clicking Test Screensavers Settings I get either Loading indefinitely or a flicker of a video plays then just blackness. The videos I'm trying to play are 4K HDR and are confirmed they can play just fine through VLC on this same Nvidia Shield Pro. I also have no issue playing the Apple videos with Dolby Vision.

What kind of device do you have? (eg. Nvidia Shield, Sony TV, etc)... Nvidia Shield Pro 2019

feerlessleadr commented 1 month ago

Thanks - I first tried a whole bunch of 4k pictures in a separate folder, and that worked without issue. Here is a log of that in case you need it:

https://paste.ubuntu.com/p/c2kcJZGjRn/

I then tried all of the smb dialects one by one, but they all just produced a black screen. Here are the logs for each:

aerialviews-3.0.txt aerialviews-3.1.1.txt aerialviews-2.0.2.txt aerialviews-2.1.txt aerialviews-3.0.2.txt

feerlessleadr commented 1 month ago

So I was thinking about what you said regarding perhaps the issue is on the W10 side. I created a samba share on my ubuntu server within proxmox, and I uploaded 1 video into the folder. I added that folder to the Aerials app and it was able to show that 1 video was available to play. When I hit test screensaver settings though, I still only got a black screen. Here is the log of that: aerialviews-ubuntu.txt

theothernt commented 1 month ago

So I was thinking about what you said regarding perhaps the issue is on the W10 side. I created a samba share on my ubuntu server within proxmox, and I uploaded 1 video into the folder. I added that folder to the Aerials app and it was able to show that 1 video was available to play. When I hit test screensaver settings though, I still only got a black screen.

Thanks for all the testing so far. I've created a new build... (link removed)

The only difference in this build is a change to logging so that your SMB details will be masked eg. Playing: - smb://:@****/video/aerial/test/img/Tokyo tower.jpg

Also, the command is now adb logcat -d | findstr 'aerialviews' > aerialviews.txt. That should capture a lot more messages.

One other thing to try. I'm assuming you're playing 4K videos, either SDR or HDR. Can you download one of the H.264 videos and try that?

feerlessleadr commented 1 month ago

Thanks - I tried the 4k videos with the new build and have a black screen. Here is the updated log: (link removed)

I also downloaded a 1080p video and changed the build to point to that smb folder, but also get a black screen:

(link removed)

theothernt commented 1 month ago

Thanks - I tried the 4k videos with the new build and have a black screen. Here is the updated log: (link removed)

I also downloaded a 1080p video and changed the build to point to that smb folder, but also get a black screen:

(link removed)

Thanks for that. It seems the logs are still missing a few details, so can you try the following command...

adb logcat -d > aerialviews.txt

Ideally, I'm looking for the word 'exception' in the logs.

feerlessleadr commented 1 month ago

Sure - see attached for the full log. This is where I set the screensaver to point to an SMB share on my ubnutu server in a VM on proxmox. The video I am trying to play is the 1080p H.264 Seals file from the Apple videos.

I only get a black screen when trying to test the settings.

(link removed)

theothernt commented 1 month ago

Sure - see attached for the full log. This is where I set the screensaver to point to an SMB share on my ubnutu server in a VM on proxmox. The video I am trying to play is the 1080p H.264 Seals file from the Apple videos.

I only get a black screen when trying to test the settings.

Thanks again for all the logs. The error appears to be with authentication (STATUS_LOGON_FAILURE) but there can be a number of causes.

Basic things to check are...

  1. Are you using a hostname or IP address - I've had issues with hostnames
  2. I would try a simple username + password (no spaces or special characters) to rule that out

If changing the password to something simple like 'password1234' fixes the issue then I have an idea what the bug is.

feerlessleadr commented 1 month ago

Thanks - for point 1, I'm using IP address. For point 2, my password has both spaces and special characters, so I will try a simple password and report back.

::EDIT:: @theothernt Success! with a test user & simple password, I was able to get the local files to play over SMB.

theothernt commented 1 month ago

@theothernt Success! with a test user & simple password, I was able to get the local files to play over SMB.

Great to hear!

The bug relates to how 'spaces' are handled. I thought I'd fixed this ages ago but apparently not.

I'll have a fix in the next release but a password without spaces should also work 😅

Apologies that took so long to figure out!

feerlessleadr commented 1 month ago

No worries! I'll wait until the next release and will confirm if all is working as intended.