nova-video-player / aos-AVP

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

[Bug]: auto select external subtitle #1162

Open mitz1 opened 6 months ago

mitz1 commented 6 months ago

@courville want to report that something went wrong and after [v6.2.63 release] they don't even load tvshow-s01e01.fr.srt nor a tvshow-s01e01.srt but an English one. I reverted to a [v6.2.63 release] . ( Tested with v6.2.64 release and v6.2.65 ) This is my previous comment: Now I understand the logic that the program first looks for built-in subtitles for the language we have chosen by default. In your case French. After not finding it, it chooses external subtitles tvshow-s01e01.fr.srt. But it would be nice (and I think more logical) if it can't find the tvshow-s01e01.fr.srt file, then look for tvshow-s01e01.srt.

Originally posted by @mitz1 in https://github.com/nova-video-player/aos-AVP/issues/897#issuecomment-1987106470

nonelocker commented 6 months ago

And there are malfunction that is auto selection of internal subtitles after 6.2.60. (6.2.59 is good well)

mitz1 commented 5 months ago

In fact, I've tested both this version and v6.2.63 quite extensively and it turns out that they work equally well for me and in most cases catch external subtitles even with the same names without using the .fr.srt advice from @courville (with very few exceptions). And in fact, it is best to rename the subtitles to fr.srt on his advice so that there are no surprises. After version 6.2.63 the versions are a disaster and maybe on my big mouth. It's strange that I had a problem with this version earlier, but this time I found and deleted a .db file in the root I think (I think the name was files.db, but I'm not sure, and I don't know if it has anything to do with this app) and deleting before each test all hidden files with the extension . xml (which turns out to remember last selected subtitles - even wrong ones from newer versions). Also clear Nova video player cache and data before each test. As I said before, it will be for the best that the program first looks for built-in subtitles for the language we have chosen by default and if it can't find them to choose external subtitles tvshow-s01e01.fr.srt. But it would be nice (and I think more logical) if it can't find the tvshow-s01e01.fr.srt file, then look for tvshow-s01e01.srt. The worst thing is that the latest version v6.2.67 release is updated in google play and I will have to stop the automatic updates I hope that in future versions the people working on this nice project will solve the problems. #897

mitz1 commented 4 months ago

I stay with version 6.2.63. Tested v6.2.73 release

courville commented 4 months ago

@mitz1, when I have video.mkv and video.srt, video.en.srt, video.fr.srt and I select preferred language french on nova, it does pick correctly the external sub if there is no french sub in the mkv. Please let me know if it is the case for you (changing the language to yours of course).

HosePL commented 4 months ago

And there are malfunction that is auto selection of internal subtitles after 6.2.60. (6.2.59 is good well)

Same here.

It doesn't matter how external subtitle file is named, player always choose english internal subtitles, despite polish ones in settings.

If there is no external subtitle file, the player always choose embedded english subtitles even if there are other embed subtitles in preferred / configured language.

Reinstalled the app, cleared cache, nothing helps. The same issue on Sony's Google TV and Sharp's Android TV.

courville commented 4 months ago

@HosePL, thanks for the feedback. I have located an error in my code indeed.

courville commented 4 months ago

@mitz1 and @HosePL please try https://github.com/nova-video-player/aos-AVP/releases/tag/v6.2.75 if this is any better on your side.

HosePL commented 4 months ago

Just tested 6.2.75 and it works correct with both embed and external subtitles. Thanks @courville.

HosePL commented 4 months ago

@courville I'm afraid there is still some issue. My subtitles language is set to polish. Nova choosed correctly polish from embed or external (xxx-pl.srt) subtitles, but displays english subtitles. To get right subtitles I have to change subtitle language manualy to any other language and change it back to polish. IMG_0663

courville commented 4 months ago

@HosePL is this with latest release 6.2.76 (I have refactored the overall logic to simplify and avoid code duplication)?

Do you confirm that this is with a video that has only internal subtitles or you have a mix (important to reproduce)?

HosePL commented 4 months ago

@courville I didn't notice you released new version two hours ago. In 6.2.76 the issue I mentioned above is fixed, but now Nova again choose first embed subtitles instead of external (xxx-PL.srt) as default, also majority of videos which have polish embeded subtitles shows first subtitle and not polish.

courville commented 4 months ago

@HosePL, regarding your remark about selecting the first embedded subtitles, do you mean it selects the polish embedded subtitle over the polish external one? This, I believe, I have not changed. However if it selects another language instead, this is a bug. Please confirm.

EDIT: no need to reply, I can reproduce

courville commented 4 months ago

@HosePL please try https://github.com/nova-video-player/aos-AVP/releases/tag/v6.2.77

HosePL commented 4 months ago

@courville Just tested 6.2.77, after update I've cleared cache, program data of the app on TV and configured everything from scratch. I also deleted *.resume files on my SMB server.

Results:

I also noticed that external language name on the list is "polski" and sometimes "Polski" (first capital letter).

courville commented 4 months ago

Thanks for the feedback.

  • embeded (no polish) and external (xxx-PL.srt) - external detected properly (on the list), but displayed first embed

I just tested this very case tvshow-s01e01.mkv (3 internal subs en, fr, fr forced) with tvshow-s01e01-PL.mkv as external sub. With preferred displayed sub language Polish, on my side it displays correctly the subtitle.

What is the language (default locale) you use on your device?

HosePL commented 4 months ago

What is the language (default locale) you use on your device?

Polish

HosePL commented 4 months ago

@courville I've made some more tests this morning and here what I found:

Exact the same movie and subtitle files with different file names. Embeded: english, japanese, romanian External: polish

John.Wick.Chapter.4.2023.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10+.H.265-CMRG.mkv John.Wick.Chapter.4.2023.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10+.H.265-CMRG-PL.srt

John Wick 4.mkv John Wick 4-PL.srt

I believe you can easly reproduce this fault and fix it.