nova-video-player / aos-AVP

NOVA opeN sOurce Video plAyer: main repository to build them all
Apache License 2.0
3.13k stars 188 forks source link

v5.15.11 No SMB connection due to timeout on wrong IP #398

Closed JJD2K closed 3 years ago

JJD2K commented 3 years ago

v5.15.11 - does not see network with or without smb v2 enabled.

courville commented 3 years ago

Can you please provide more details (or remind me) on your network network setup:

Thank you,

JJD2K commented 3 years ago

Hello

  1. It is a Win 7 share - no password. I think I switched something to SMB 1 in win settings for past Android applications to work properly. Note that I am using a no passwords acces EVERYONE account.
  2. Sony TV
  3. Completely missing ANY network. Network is browseable through old ES File explorer instance.
  4. Initially I could see the shows and movies listed - just nothing was playing. Now the entire app after several restarts of the app and tv is empty. Just like clean installation.
courville commented 3 years ago

Thanks for the feedback: I tested a lot of SMB servers including windows ones but not win7. This is normal that the whole list of video scraped disappears because it is hidden by nova (it is still there): it is simply marked as hidden when detected not available (a bug in your case). Thus you confirm that no network share is displayed in the smb section under nova. I can provide a rollback apk to install manually to get you back on track until I figure it out.

JJD2K commented 3 years ago

Hello That would be very nice thank you! If you want me to test something let me know before switching back. I have not removed the non-functional version yet.

courville commented 3 years ago

Here it is: https://drive.google.com/file/d/1zyF_AEreUmeuITA3xW_MnZgELJ_UfMA2/view?usp=sharing I will try to reproduce on my side if I can lay my hands on an antique win7.

courville commented 3 years ago

Before installing new version, if you could just take some adb logs when performing discovery, this could help. Thx

JJD2K commented 3 years ago

Could you please provide me the command for the log - I forgot it. Maybe add it sticky somewhere.

P.S. Win 7 is much more reliable than newer Win 8 and Win 10. Latest updates to Win 10 always cause incredible problems.

courville commented 3 years ago

The command is adb logcat --pid=$(adb shell pidof -s org.courville.nova) cf. https://github.com/nova-video-player/aos-AVP/wiki/Debugging Before you need to adb connect to your sony TV.

JJD2K commented 3 years ago

Hello I sent you the log to your email. Those commands do not work in Windows command line - I think you can not nest the ADB commands like in linux: the "adb shell pidof -s org.courville.nova" part.

mschumacher69 commented 3 years ago

I have a Windows 7 PC and a Sony TV, let me check if SMB is working on the latest version.

mschumacher69 commented 3 years ago

Works fine here, using guest share, no password.

JJD2K commented 3 years ago

@courville SMB is working on the version that you sent, but it is a strange version thta has choppy video playback like the one before you fixed the SOUND sync that was causing the stutter issues in the past. Maybe it is version 6 - still no version info in UI - I can not check.

JJD2K commented 3 years ago

My recents list is also lost...maybe I should delete all and go to the previous release?

courville commented 3 years ago

@courville SMB is working on the version that you sent, but it is a strange version thta has choppy video playback like the one before you fixed the SOUND sync that was causing the stutter issues in the past. Maybe it is version 6 - still no version info in UI - I can not check.

Just to be clear: I assume we are talking about the version that I sent in the link. This version is based on the v4.x branch thus without any change with jcifs-ng and movieCollections.

courville commented 3 years ago

Works fine here, using guest share, no password.

On your side you confirm that with a Sony TV and the latest version (v5.x.y) of the app including jcifs-ng and a win7 SMB share without password it works? /me confused now

JJD2K commented 3 years ago

Hello I do not understand why you are confused.

  1. LATEST VERSION from google play store does not work - the log that I sent
  2. The version that you sent me works.
  3. Please remove my log - I sent it by email - I do not want my logs published online.
courville commented 3 years ago

Hello I do not understand why you are confused.

  1. LATEST VERSION from google play store does not work - the log that I sent
  2. The version that you sent me works.
  3. Please remove my log - I sent it by email - I do not want my logs published online.

Logs deleted though it does not help tracking the real issue: github is about code. To avoid confusion perhaps it would be easier not to use two different users to comment: I thus assume @mschumacher69 = @JJD2K

courville commented 3 years ago

One test that would be nice is to re-enabled SMB2 support on win7 and check if it works any better.

JJD2K commented 3 years ago

Hello NO I do not know that guy. @mschumacher69 != @JJD2K @mschumacher69 <> @JJD2K

JJD2K commented 3 years ago

I tested further the version that you sent, with heavy files that I keep for test and it seems ok. The stutter is only on very heavy scenes so maybe it reaches the maximum of the CPU - 4K scenes with multiple moving particles. So I confirm again.

  1. The version that I downloaded via the Playstore update - does not see network.
  2. The version that you sent me works.
mschumacher69 commented 3 years ago

@courville we're 2 different users, we're not the same user.

Yes I confirm that on my side, with a Sony TV and the latest version (5.15.11) of the app (not sure about jcifs-ng though, how do I check that?) and a win7 SMB share without password, it works fine.

I also checked in nova's settings and smb v2 is enabled.

JJD2K commented 3 years ago

I now looked at the LOG and it seems WRONG: The IP of the PC is not: 192.168.25.1 The correct ip is 192.168.1.2

courville commented 3 years ago

Hello NO I do not know that guy. @mschumacher69 != @JJD2K @mschumacher69 <> @JJD2K

OK thus based on this and that I was replying to @mschumacher69 who states that he has smb working with latest nova version using a win7 network shares, I think it warrants some more investigations.

JJD2K commented 3 years ago

Look towards IP - the IP of the computer in the LOG is WRONG. I do not have a 192.168.25.* subnet at all.

Also it seems both SMB1 and SMB2 are enabled:

PS C:\Program Files\PowerShell\6.0.0-alpha.18> sc.exe qc lanmanworkstation [SC] QueryServiceConfig SUCCESS

SERVICE_NAME: lanmanworkstation TYPE : 20 WIN32_SHARE_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : C:\Windows\System32\svchost.exe -k NetworkService LOAD_ORDER_GROUP : NetworkProvider TAG : 0 DISPLAY_NAME : Workstation DEPENDENCIES : Bowser : MRxSmb10 : MRxSmb20 : NSI SERVICE_START_NAME : NT AUTHORITY\NetworkService

dhlavaty commented 3 years ago

Same problem here: AndroidTV (version 9) on TCL 55C815. Nova Video Player 5.15.11-20201128.1642 QNAP NAS TS-410 with fw. version 4.2.6

SMB does not work / cannot connect with "Timeout" error message after a long time.

Also tried other Android apps on same TV (VLC, KODI, ...) and they work.

courville commented 3 years ago

@dhlavaty could you please try with SMBv2 enabled/disabled in settings? Do you have SMBv2 enabled on your QNAP? If you can get some logs too this would help.

courville commented 3 years ago

Look towards IP - the IP of the computer in the LOG is WRONG. I do not have a 192.168.25.* subnet at all.

@JJD2K good finding, thanks for highlighting this.

dhlavaty commented 3 years ago

@dhlavaty could you please try with SMBv2 enabled/disabled in settings?

Tried both settings.

Do you have SMBv2 enabled on your QNAP?

There is no such settings on NAS. There is "Allow only NTLMSSP authentication" only. And I've also tried both on and off settings.

If you can get some logs too this would help.

Sorry, I don't have resources to get logs. :-(

JJD2K commented 3 years ago

@courville I tried both with v2 enabled and disabled befor going back to the version that you sent. I also restarted the application and TV two times. The incorrect IP: 192.168.25.1 seems to be a good starting point. If the lib is scanning an incorrect subnet it defnitely will not find any shares.

courville commented 3 years ago

The incorrect IP: 192.168.25.1 seems to be a good starting point. If the lib is scanning an incorrect subnet it defnitely will not find any shares.

@JJD2K I am wondering how the 192.168.25.1 was discovered. Was it a previous shortcut already stored or you are browsing and selecting the share that has been discovered by the SMB scanning?

Can you please disclose your local network subnet and if you have special setup (if your carrier (operator) has anything in .25).

JJD2K commented 3 years ago

@courville 192.168.25.1 NEVER existed on my network. I tried to access the previously listed shared folders befor they completely disapperared from NOVA. I also tried to access the PC itself.

192.168.1.255 is the LOCAL network - external IP has nothing to do with it.

192.168.1.1 is the router 192.168.1.2 is Win7 PC 129.168.1.252 is the TV

If @dhlavaty has issues too I guess there is something wrong in that new lib or in the way you initialize/use it.

courville commented 3 years ago

@courville 192.168.25.1 NEVER existed on my network. I tried to access the previously listed shared folders befor they completely disapperared from NOVA. I also tried to access the PC itself.

192.168.1.255 is the LOCAL network - external IP has nothing to do with it.

192.168.1.1 is the router 192.168.1.2 is Win7 PC 129.168.1.252 is the TV

If @dhlavaty has issues too I guess there is something wrong in that new lib or in the way you initialize/use it.

thanks for the feedback. Note that all 192.168.x.x addresses are private networks. The issue is clearly in the new jcifs-ng lib. Now the question is how does it get 192.168.25.1 instead of 192.168.1.2. Let me please ask you to walk me through how you get to the issue. 1) you go in the network shares: you have both the network shortcuts and the SMB discovery process 2) do you click on the old network shortcut or on the SMB discovered host when you trigger the timeout (with wrong IP address)?

Based on the fact that it happens to two users, I am considering to roll back to v4 version (sigh). I would like if you are ok to send new debug apk to try to find out what is nok since you are able to reproduce and not me with all the various hardwares I have. Each time I will send an apk for test, I will also propose a rollback apk for you to safely go back to operational state.

JJD2K commented 3 years ago

Hello @courville I thikn I entered the old shares - they were listed. I am not 100% sure though. I also entered the COMPUTER - it was listed too. All were displaying timeout after some time.

I am willing to help - you fixed lots of stuff that I reported...though some still open ;) Send me the debug and rollback apks...I will provide the logs.

courville commented 3 years ago

Send me the debug and rollback apks...I will provide the logs.

Thank you!

John-Wy commented 3 years ago

I am also having the same time out problem. This started 3 days ago. I am using an amazon fire tv stick. I have noted the new version of nova is not working, and on another fire tv that still hasn't gotten the update, it is working. The server is a windows server 2016 with smb 1,2,3 enabled. I have tried disabling the new smb2 checkbox with no help. This media player has worked wonderfully until Monday night.

courville commented 3 years ago

For those having timeout issues with new release, roll back release is being propagated on Google Play and Amazon and you can find corresponding apk here: https://github.com/nova-video-player/aos-AVP/releases/tag/v4.49.12

courville commented 3 years ago

Log of the issue is the following:

D ListingFragment: onCreateView SmbListingFragment
D ListingFragment: startListing smb://SERVER/smbShare/
D JcifListingEngine: JcifListingThread: listFiles for: smb://SERVER/smbShare/
E JcifListingEngine: JcifListingThread: SmbException
E JcifListingEngine: jcifs.smb.SmbException: Failed to connect: SERVER<20>/xxx.xxx.xxx.xxx
E JcifListingEngine:    at jcifs.smb.SmbTransportImpl.ensureConnected(SourceFile:689)
E JcifListingEngine:    at jcifs.smb.SmbTransportPoolImpl.getSmbTransport(SourceFile:217)
E JcifListingEngine:    at jcifs.smb.SmbTransportPoolImpl.getSmbTransport(SourceFile:48)
E JcifListingEngine:    at jcifs.smb.SmbTreeConnection.connectHost(SourceFile:565)
E JcifListingEngine:    at jcifs.smb.SmbTreeConnection.connectHost(SourceFile:489)
E JcifListingEngine:    at jcifs.smb.SmbTreeConnection.connect(SourceFile:465)
E JcifListingEngine:    at jcifs.smb.SmbTreeConnection.connectWrapException(SourceFile:426)
E JcifListingEngine:    at jcifs.smb.SmbFile.ensureTreeConnected(SourceFile:558)
E JcifListingEngine:    at jcifs.smb.SmbEnumerationUtil.doEnum(SourceFile:221)
E JcifListingEngine:    at jcifs.smb.SmbEnumerationUtil.listFiles(SourceFile:279)
E JcifListingEngine:    at jcifs.smb.SmbFile.listFiles(SourceFile:1280)
E JcifListingEngine:    at com.archos.filecorelibrary.jcifs.JcifListingEngine$JcifListingThread.run(SourceFile:109)
E JcifListingEngine: Caused by: jcifs.util.transport.ConnectionTimeoutException: Connection timeout
E JcifListingEngine:    at jcifs.util.transport.Transport.connect(SourceFile:596)
E JcifListingEngine:    at jcifs.smb.SmbTransportImpl.ensureConnected(SourceFile:686)
E JcifListingEngine:    ... 11 more

Note that the fail to connect happens with SERVER<20>/xxx.xxx.xxx.xxx and xxx.xxx.xxx.xxx is not an IP belonging to the subnet used.

mschumacher69 commented 3 years ago

I wonder why this issue is not affecting me? 🤔

courville commented 3 years ago

I wonder why this issue is not affecting me? 🤔

@mschumacher69 the beta has been live for 2 months with 2k users and I am using it everyday without an issue. This is thus not systematic. But, I wonder why too.

dhlavaty commented 3 years ago

Installed Nova Video Player 4.49.12-20201202.1839 - was offered as an update on Google Play store. But the same "Timeout" problem still persist.

EDIT: My bad. I'm so sorry. Version 4.49.12-20201202.1839 works. Please ignore this.

(AndroidTV (version 9) on TCL 55C815, Nova Video Player 4.49.12-20201202.1839, QNAP NAS TS-410 with fw. version 4.2.6)

courville commented 3 years ago

@JJD2K could you please check this v5 apk https://drive.google.com/file/d/1ie4bF7fSirMqYPbu8H-Ylw1jCatrnYxr/view?usp=sharing that has logs on the samba udp/tcp discovery process and send me the adb logcat output? The rollback v4 apk is this one: https://drive.google.com/file/d/1_Wd6a57bJS2vK9zpaj1ELKtzyVhCe9RU/view?usp=sharing This should tell us if the issue is that nova discovery injects wrong IP or if the issue is part of jcifs-ng library itself.

JJD2K commented 3 years ago

@courville I sent you the new log - same incorrect IP is listed. Rollback version is working perfectly.

courville commented 3 years ago

@courville I sent you the new log - same incorrect IP is listed. Rollback version is working perfectly.

Thank you very much for the logs. What is seen is that your correct win7 PC is detected by nova discovery:

SambaDiscovery: onShareFound WORKGROUP "SERVER" smb://192.168.1.2/

But jcifs-ng is using for some reason indeed the wrong address:

E JcifListingEngine: jcifs.smb.SmbException: Failed to connect: SERVER<20>/192.168.25.1

If this is not too much to ask, I would like to propose another apk to test (and the rollback version). The purpose would be to check if the issue does not come from an impact of the change we did in the resolver order compared to default one.

courville commented 3 years ago

@JJD2K ok I have updated the two former links with new apk for some more testing if you can bear it:

adb logcat would be nice. This version reverts to default jcifs-ng resolver in case there are side effects changing it.

JJD2K commented 3 years ago

@courville I guess that is - the new version is working Both with SMB1 and SMB2 option. I sent you the new log.

P.S first test I did is with v2,3 enabled, second test is with disabled v2,3 option.

courville commented 3 years ago

@courville I guess that is - the new version is working Both with SMB1 and SMB2 option. I sent you the new log.

P.S first test I did is with v2,3 enabled, second test is with disabled v2,3 option.

This is a real good news. Thank you for your help in testing and debugging the issue and the really appreciated quick feedback loop. I will thus push a new release soon to all with the fix I sent. There is really something strange with jcifs-ng resolver when you deviate from default resolver order.

JJD2K commented 3 years ago

@courville I am glad to help. As I noted I am thankful that you did fix a lot of performance issues that I reported in the past.

Just to note I did test the performance of this new jcifs and it seems to be on par with the previous implementation. I mean that the heavy test files seem to be playing as before.

John-Wy commented 3 years ago

I am also having the same time out problem. This started 3 days ago. I am using an amazon fire tv stick. I have noted the new version of nova is not working, and on another fire tv that still hasn't gotten the update, it is working. The server is a windows server 2016 with smb 1,2,3 enabled. I have tried disabling the new smb2 checkbox with no help. This media player has worked wonderfully until Monday night.

The 4.49 released today that replaced 5.15 has fixed the smb issue.

courville commented 3 years ago

OK rolling out now 5.15.13 for everyone containing the found fix for this issue. Let's try to get SMBv2 support out. Thanks all for the comments and support.

courville commented 3 years ago

FTR https://github.com/AgNO3/jcifs-ng/issues/258