[MX Player] PillarsZhang:
[Fixed] [Bug] SMB shows "Can't play this link" if the passport has an "@" char

Update：It happens when the account or passport has an "@" char.

When I use the built-in SMB service of Windows 10 2004 to share files, MX Player can view the file directory normally, but when I open any video file, I get the error "Can't play this link".

But in the CX file manager, I can normally transfer files and play videos, so I think the problem should be the MX Player.

This is part of the crawled log:

05-31 13:13:16.622 21170 21170 V MX.Screen: onStart (com.mxtech.videoplayer.pro.ActivityScreen@f78ca34): video-uri=smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4
05-31 13:13:16.623 21170 21170 I GAPolicy_GAv4: suppress screen: Playback
05-31 13:13:16.624 21170 21170 V MX.DeviceUtils: Brightness for com.android.internal.policy.MiuiPhoneWindow@f15af20: -1.0 --> 0.7742498
05-31 13:13:16.625 21170 21170 V MX.Screen: onResume (com.mxtech.videoplayer.pro.ActivityScreen@f78ca34): uri=smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4
05-31 13:13:16.631 21170 21170 V MX.Screen: screen---refreshNotchLayout----------1
05-31 13:13:16.654 21170 21170 D MX.Screen: === Enter surfaceCreated. holder=android.view.SurfaceView$4@10949e4 _surfaceHolderCreated=null_surfaceView=android.view.SurfaceView{fd01e4d V.E...... ......ID 0,0-1080,2340 #7f0a0403 app:id/surfaceView}
05-31 13:13:16.654 21170 21170 D MX.Screen: === Leave surfaceCreated.
05-31 13:13:16.660 21170 21170 V MX.PlayService: onCreate
05-31 13:13:16.716 21170 21170 V MX.Screen: screen---refreshNotchLayout---------0
05-31 13:13:16.720 21170 21170 D MX.Player.Builtin: Calibrating 0ms
05-31 13:13:16.734 21170 21170 W VideoCapabilities: Unsupported mime image/vnd.android.heic
05-31 13:13:16.736 21170 21170 W VideoCapabilities: Unsupported mime video/divx
05-31 13:13:16.736 21170 21170 W VideoCapabilities: Unsupported mime video/divx4
05-31 13:13:16.737 21170 21170 W VideoCapabilities: Unrecognized profile/level 0/3 for video/mpeg2
05-31 13:13:16.737 21170 21170 W VideoCapabilities: Unrecognized profile/level 0/3 for video/mpeg2
05-31 13:13:16.737 21170 21170 W VideoCapabilities: Unsupported mime video/x-ms-wmv
05-31 13:13:16.752 21170 21170 E *MX.jni/CodecInfo: No matching codec for `video/divx`
05-31 13:13:16.752 21170 21170 E *MX.jni/CodecInfo: No matching codec for `video/divx4`
05-31 13:13:16.752 21170 21170 E *MX.jni/CodecInfo: No matching codec for `video/av01`
05-31 13:13:16.762 21170 21170 I MX.Player.Joint: Creating a joint player. [1]=r20@5461 [2]=com.mxtech.media.FFPlayer@ddfab86
05-31 13:13:16.762 21170 21170 W MediaPlayer: Use of stream types is deprecated for operations other than volume control
05-31 13:13:16.762 21170 21170 W MediaPlayer: See the documentation of setAudioStreamType() for what to use instead with android.media.AudioAttributes to qualify your playback use case
05-31 13:13:16.766 21170 21170 I MX.Player.Joint: Preparing [2]
05-31 13:13:16.766 21170 21170 D MX.Player.FF: PrepareAsync()
05-31 13:13:16.767 21170 21170 D MX.Screen: Set fullscreen = false
05-31 13:13:16.843 21170 21360 E *MX.FFmpeg: wait_for_reply failed. Session setup failed with (0xc000006d) STATUS_LOGON_FAILURE
05-31 13:13:16.869 21170 21360 E *MX.FFFormat: Failed to open 'smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4'. status=-111
05-31 13:13:16.869 21170 21360 E *MX.FFReader: AVException caught. error=-111
05-31 13:13:16.870 21170 21170 E MX.Player.FF: Error (1,-111)
05-31 13:13:16.870 21170 21170 E MX.Player.Joint: [2] error: what=1 extra=-111
05-31 13:13:16.870 21170 21170 V MX.Player.FF: === Begin closing soft player
05-31 13:13:16.870 21170 21170 V MX.Player.FF: === End closing soft player
05-31 13:13:16.870 21170 21170 I MX.Player.Joint: Preparing [1]
05-31 13:13:16.870 21170 21170 D MX.Player.Builtin: PrepareAsync()
05-31 13:13:16.871 21170 21170 W MediaPlayer: Couldn't open smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4
05-31 13:13:16.871 21170 21170 W MediaPlayer: java.io.FileNotFoundException: No content provider: smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1688)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1518)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1435)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.media.MediaPlayer.attemptDataSource(MediaPlayer.java:1159)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1117)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1155)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at r20.u(BuiltinPlayer.java:12)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at x20.G(JointPlayer.java:5)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at x20$f.b(JointPlayer.java:20)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at com.mxtech.media.FFPlayer.handleMessage(FFPlayer.java:33)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.os.Handler.dispatchMessage(Handler.java:103)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.os.Looper.loop(Looper.java:224)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at android.app.ActivityThread.main(ActivityThread.java:7520)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at java.lang.reflect.Method.invoke(Native Method)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
05-31 13:13:16.871 21170 21170 W MediaPlayer:	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
05-31 13:13:16.884 21170 21189 E MediaPlayerNative: error (1, -2147483648)
05-31 13:13:16.884 21170 21170 E MediaPlayer: Error (1,-2147483648)
05-31 13:13:16.885 21170 21170 E MX.Player.Joint: [1] error: what=1 extra=-2147483648
05-31 13:13:16.885 21170 21170 W MX.Screen: i0$a@17afa12
05-31 13:13:18.195 21170 21231 D OpenGLRenderer: endAllActiveAnimators on 0x74bb917100 (RippleDrawable) with handle 0x745ab22f20
05-31 13:13:18.207 21170 21170 V MX.Screen: Activity result: Result is not returned because 'return_result' extra was not set.
05-31 13:13:18.223 21170 21170 V MX.Screen: onPause (com.mxtech.videoplayer.pro.ActivityScreen@f78ca34): uri=smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4
05-31 13:13:18.755 21170 21170 D MX.Screen: === Enter surfaceDestroyed. holder=android.view.SurfaceView$4@10949e4 _surfaceHolderCreated=android.view.SurfaceView$4@10949e4_surfaceView=android.view.SurfaceView{fd01e4d V.E...... ........ 0,0-1080,2340 #7f0a0403 app:id/surfaceView}
05-31 13:13:18.756 21170 21170 D MX.Screen: === Leave surfaceDestroyed.
05-31 13:13:18.786 21170 21170 V MX.Screen: onStop (com.mxtech.videoplayer.pro.ActivityScreen@f78ca34): uri=smb://192.168.2.131/SanDisk_SSD_SMB/example.mp4
05-31 13:13:18.796 21170 21170 V MX.Screen: onDestroy (com.mxtech.videoplayer.pro.ActivityScreen@f78ca34) - isFinishing() = true
05-31 13:13:18.797 21170 21170 V MX.Player.Builtin: === Begin closing built-in player
05-31 13:13:18.797 21170 21170 V MediaPlayer: resetDrmState: mDrmInfo=null mDrmProvisioningThread=null mPrepareDrmInProgress=false mActiveDrmScheme=false
05-31 13:13:18.797 21170 21170 V MediaPlayer: cleanDrmObj: mDrmObj=null mDrmSessionId=null
05-31 13:13:18.823 21170 21170 V MX.Player.Builtin: === End closing built-in player