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
415 stars 32 forks source link

FTP support #137

Closed jmlugones closed 3 months ago

jmlugones commented 3 months ago

Most modems have FTP/SFTP support, and one or two USB ports to connect a USB drive or external hard drive. It would be more convenient to store photos and videos to use in AerialViews than Samba that requires a computer always on. It would be a good update to add FTP support in Samba/Share section.

theothernt commented 3 months ago

Unfortunately, FTP is not suitable for streaming video so I don't think it makes a good option.

Some modern routers from ASUS do have Samba and USB storage support. Also, if your router is supported by a 3rd party firmware such as OpenWRT, you can add the Samba support package yourself. A Raspberry Pi is another option, it uses very little power and can be powered by the USB port on most routers.

Finally, Samba is more of an advanced feature for most people. I would normally recommend the use of USB storage first, although a USB hub might be required for some Android TV devices.

jmlugones commented 3 months ago

Hello. I use SMB to transfer between Windows and Android. I didn't know that modems have support for this. I have a Nokia modem. I have an external hard drive connected to it, and I use it to play movies and series that are not on streaming services. I watch it from the televisions at home with VLC. You can also use UPnP but you have to restart the modem every time you add or remove content. I had an old Raspberry with a UPnP server and was annoyed by this. Anyway it's not a request, just ideas for future versions. Another idea could be to support sites like YouTube, Vimeo, DailyMotion, etc.

theothernt commented 3 months ago

I had an old Raspberry with a UPnP server and was annoyed by this.

With a Pi, you could use Samba for both 1) movies + TV and 2) screensaver videos. You can also enable anonymous access so no username + password is needed when browsing with VLC, for example. I have a tutorial for this, if you like?

Another idea could be to support sites like YouTube, Vimeo, DailyMotion, etc.

I hope to add something like this in future. The problem is that most/all video sites don't allow you to stream their videos directly. So if I do add the feature, I won't mention the video sites by name... you'll have to guess 😅

jmlugones commented 3 months ago

I thought that YouTube allowed it, since I have seen several apps that allow you to play videos with their link such as VLC, Snaptube, Adguard, etc. Maybe adding the YouTube Premium username and password to remove advertising. I'll try SMB with Raspberry.

theothernt commented 3 months ago

I thought that YouTube allowed it, since I have seen several apps that allow you to play videos with their link such as VLC, Snaptube, Adguard, etc.

Last time I checked, if you want to use videos officially from YouTube then you have to display ads, etc which most people won't want. VLC has its own method of access videos or streams directly, I may use a method like that as I'd like to give user the option to a) link directly to a video or b) a playlist of videos - much easier for a user to update.

I'll try SMB with Raspberry.

I just setup a new Raspberry Pi to test everything out. I would recommend the following guide with some changes...

https://pimylifeup.com/raspberry-pi-samba/

  1. Change the share to...
[video]
path = /home/pi/shared
browsable = yes
writeable = yes
public = yes
force user = root
force group = root
create mask = 0777
directory mask = 0777

This makes the share readable/writeable to anyone. So it's easy to access anywhere (PC, Mac, Android TV etc)

  1. I would recommend commenting out the [print$] block as I'm guess you are not sharing printers from the Pi
  2. I created folders inside /home/pi/shared such as Aerial, Shows, and Movies

I tested accessing the above folders on PC, Mac, VLC and Aerial Views on Android TV - and all worked with no issues, except Aerial Views which requires SMB to be set to v2 only for anonymous access to work properly.

jmlugones commented 3 months ago

It would be great to be able to use the VLC method to play YouTube videos. There are many "relaxation videos" uploaded on YouTube that could be a screen saver. Thanks for the Raspberry information, I'll try it. SMBv1 has been disabled by default in Windows for several years. For some reason there is little support for SMBv2 on Android, less alone SMBv3.

theothernt commented 3 months ago

Thanks for the Raspberry information, I'll try it. SMBv1 has been disabled by default in Windows for several years. For some reason there is little support for SMBv2 on Android, less alone SMBv3.

Yeah, typically SMB support is v2 or v3 nowadays. I use a Samba library written by someone else, it only supports v2 and v3, so it should be possible if the developer has time.