pucaleco 3 Posted June 29, 2025 Posted June 29, 2025 I know some of these things have been mentioned before and I hope I'm not breaking any hard rules, but I've seen the topics stalled in their corresponding thread since 2023, and this approach might be different..., maybe? I'll try to keep it ordered in what I think would be (at least for me) the most impactuf to the less impactful. Subtitles are far from consistent (not Emby's fault), and the less popular the movie/serie, the tougher it gets to obtain a perfectly... sometimes not even decently synced subs file. So: 1) Subtitle offset memory: Why?: it's very very common that there's a slight mismatch betwen the start of the subtitles and the end and when you need to stop and continue watching something because of... life, it's really annoying to have to do it again (guessing the right setting) 2) Manual number input in subtitle offset: Why?: scroller is fine for small numbers, heck, even for large numbers if you do it once... but what if the series you're watching doesn't have a single subtitle correctly synced because all of your files are slightly offset by a similar time? (and no, editing manually in the srt files beats the purpose of automating and having a nice GUI in my media server) 3) Different names for each subtitle file downloaded: Why?: Sometimes to get the correct subs time I've downloaded 5+ subs file through Emby, then I end up with several "(Eng)" subs many because the best effort Emby does to match file and subs doesn't always work.times with the exact same name. 4) Selecting and Deleting subs from GUI's subtitle screen Why?: I like my interfaces/file management to be clean, and 'cause all of the above 5) File upload SRT from Web GUI Why?: ok, this is an outlier case but, I've manually downloaded subs or even used Speech-to-Text apps to generate subs when what I find online is pure trash (or again, when Emby simply doesn't find the file on it's own for any reason). Yes, I could log onto my NFS media share and manually search the folder, upload the file... so: convenience? 6) Develop Feature 5 in a way that's "plug-in compatible" (ok, this is a stretch, but planning for the future is never bad). Why?: Speech-to-Text systems are more and more common each day. If some people already have a decent system hosting my Emby, we might be able to run a STT app that actually infers each SRT file to perfection from our Library when needed. i.e.: OpenAI Whisper, and mounting a script with the user's selected transcription options shouldn't be that hard. (I'm not offering a plugin hehe, unfortunately I'm no programmer) And since I'm no freeloader, even though I purchased a "lifetime" license for my Emby, I would absolutely consider chipping in to support these specific improvements, and if approached, maybe there would be other willing members that have asked for these features in the past in order to obtain enough resources. Something like a kickstarter for accelerating development. 1
visproduction 315 Posted June 29, 2025 Posted June 29, 2025 (edited) 15 hours ago, pucaleco said: 1) Subtitle offset memory: This would need to be added per user, because different playback hardware and software user setups can possibly have different subtitle delays. 15 hours ago, pucaleco said: 2) Manual number input in subtitle offset: Beta Emby subtitles pop-up window sync goes to plus or minus 120 seconds. If you use the left or right arrow keys, you can go up or down 100ms. Clicking in an exact value that works takes 3 to 4 keystrokes? (Negative would require the extra minus sign.) Isn't it less work to try one arrow key for + or - 100ms and see if that helps? I am referring to the total number of keystrokes. I would say that finding, say -500 ms to be correct, you have to either click the left arrow key five times, pausing to check, if the sync is better. If you enter in a number, to get to -500ms, you might try -100, -200, -300, -400, -500. That's 20 keystrokes to do the same test vs. 5 keystrokes using the left arrow key. Why do you want digital input? Could you guess -500ms just by looking? Also, a 24fps film can only be off 1 frame at a time. Each frame is about 42 ms, not 100 ms. So, an exact sync, per frame for 24fps would run, plus or minus: 42ms, 84ms, 125ms, 167ms, 208ms, 250ms, 292ms, 333ms, 375ms, 420ms, 458ms, 500ms. For example, if you test at 400ms and then 500ms, you are jumping a little more than 2 frames in the media, not one. Media running at 23.976 fps. (41.708 ms per frame). Media running at 29.97 (33.367 ms per frame) and 30 fps (33.333 ms per frame). Perhaps a nice update would be to check the fps rate and then offer an adjustment that matches 1 frame at a time instead of steps of 100ms, which doesn't match any exact audio sync problem. It is possible to see the difference of being off by one frame, but this is at a level that usually only sound engineers would notice. If for some reason the audio AV amp, TV audio routing or other hardware delivering the audio to larger speakers has some delay, then that value could be any number. Usually if audio is running through an AV amp, the amp has audio delay settings, as well. 15 hours ago, pucaleco said: 3) Different names for each subtitle file downloaded: Downloading a file usually gives you the option to name it whatever you like. If there is some plugin that automatically saves the original name, then perhaps a save as option would be a solution for this. When I grab subtitles from another source, I am always prompted to name the file. Do the 5 downloads not get different file names. Most OS will auto add a (1), (2) to the end of any file that gets downloaded to a folder where another file already has that name. Are you just not seeing the complete file name in the pull down menu option? Can you go to the folder and rename the downloaded subtitles to whatever you like to avoid this? I am not sure what exactly the problem is here. 15 hours ago, pucaleco said: 4) Selecting and Deleting subs from GUI's subtitle screen This would seem to be a request for an extra interface for admin to manage subtitles files from the Emby GUI. It's much faster to do that directly in the folder. Any user interface would have to prompt with a "Are you sure" open and a Yes or No button. Deleting files cannot really be automated with one click. It's too dangerous. Doing it in the actual folder is so much easier. Wanting a user interface to do this task seems superfluous. Maybe just learn how to open the folder and do it there. 15 hours ago, pucaleco said: 5) File upload SRT from Web GUI Why?: ok, this is an outlier case but, I've manually downloaded subs or even used Speech-to-Text apps to generate subs when what I find online is pure trash (or again, when Emby simply doesn't find the file on it's own for any reason). Yes, I could log onto my NFS media share and manually search the folder, upload the file... so: convenience? Again, sort of the same issue as #4. It's easier and safer to do this directly in a folder, copy past is literally click drag on either Apple, Window or even Linux, if you set it up. Making a user interface would again require a confirmation pop-up to be safe. You would end up doing more clicks than just handling it with the folders directly. This is admin only, so it's not like your users need a GUI to do this, because they don't understand, nor have access to server folder. The admin, can just do it with the folders directly. 15 hours ago, pucaleco said: 6) Develop Feature 5 in a way that's "plug-in compatible" (ok, this is a stretch, but planning for the future is never bad). Why?: Speech-to-Text systems are more and more common each day. If some people already have a decent system hosting my Emby, we might be able to run a STT app that actually infers each SRT file to perfection from our Library when needed. i.e.: OpenAI Whisper, and mounting a script with the user's selected transcription options shouldn't be that hard. (I'm not offering a plugin hehe, unfortunately I'm no programmer) It's doubtful this can easily be done at the server level or as a plugin. So, speech to text should be a 3rd party service. There are online sites that offer this. I believe you upload content and they do it. Since this is admin only, why not find an app that does this and can run on your OS and just use that. Getting it to work inside Emby seems to just be asking for bug issues. It's an entirely different type of media conversion. Just use 3rd party that works and whoever offers it will also offer updates. Problem solved. A very handy site to adjust subtitles by shifting all the times up or down: https://subtitletools.com/subtitle-sync-shifter A very advanced subtitle editor that has a bit of a learning curve, but allows exact adjustments. https://aegisub.org/downloads/ Working on getting a subtitle to match everywhere correctly for a 2 hour media can easily take an entire day's work. Edited June 29, 2025 by visproduction
Luke 42077 Posted June 29, 2025 Posted June 29, 2025 Hi, there are already multiple places in which you can delete subtitles, right?
pucaleco 3 Posted July 1, 2025 Author Posted July 1, 2025 Thanks for your thorough response @visproduction This may be a "just me" situation but to add my context: > I mainly use a Tablet (iPad) or a TV to consume my Emby media, when on a TV I would prefer to not need a keyboard (use CEC form HDMI to control things), and many TV remotes do add some latency to the input key or cap the speed of repetition of a key, so slower "clicking" of options, but I still get a nice keypad number on the remote. > I host Emby for my brother, zero technical knowledge, and not a power user, who's 2 devices actually connect remotely to my Emby (VPN to keep my network from having other ports open) > I run Emby Server as a docker instance in my HomeServer Returning to the topics 1) On 6/29/2025 at 12:32 PM, visproduction said: This would need to be added per user, because different playback hardware and software user setups can possibly have different subtitle delays. Yes, I agree, a subtitle offset memory per user, just as it can store playback position per user. 2) On 6/29/2025 at 12:32 PM, visproduction said: Beta Emby subtitles pop-up window sync goes to plus or minus 120 seconds. If you use the left or right arrow keys, you can go up or down 100ms. Clicking in an exact value that works takes 3 to 4 keystrokes? (Negative would require the extra minus sign.) Isn't it less work to try one arrow key for + or - 100ms and see if that helps? I am referring to the total number of keystrokes. I would say that finding, say -500 ms to be correct, you have to either click the left arrow key five times, pausing to check, if the sync is better. If you enter in a number, to get to -500ms, you might try -100, -200, -300, -400, -500. That's 20 keystrokes to do the same test vs. 5 keystrokes using the left arrow key. Why do you want digital input? Could you guess -500ms just by looking? Also, a 24fps film can only be off 1 frame at a time. Each frame is about 42 ms, not 100 ms. So, an exact sync, per frame for 24fps would run, plus or minus: 42ms, 84ms, 125ms, 167ms, 208ms, 250ms, 292ms, 333ms, 375ms, 420ms, 458ms, 500ms. For example, if you test at 400ms and then 500ms, you are jumping a little more than 2 frames in the media, not one. Media running at 23.976 fps. (41.708 ms per frame). Media running at 29.97 (33.367 ms per frame) and 30 fps (33.333 ms per frame). Perhaps a nice update would be to check the fps rate and then offer an adjustment that matches 1 frame at a time instead of steps of 100ms, which doesn't match any exact audio sync problem. It is possible to see the difference of being off by one frame, but this is at a level that usually only sound engineers would notice. I assumed that asking Emby to determine the correct framerate based on the video would be a lot more work and testing for the devs. than just having a box I can select and type/key-input the desired number. Having uneven jumps in scrolling could also confuse a basic user when increasing/decreasing the time of the subs. Jumping from 0 to ... lets say, 20 seconds using the arrow key from a TV remote is awful. The tablet is more hit / miss thing, faster with the slider but as you are pointing out, no fractions smaller than 100ms so no perfect syncing and making the arrows go lower than 100ms would add pain to someone that wants to jump to 20 seconds... (again, assuming no keyboard is involved). 3) and 4) On 6/29/2025 at 12:32 PM, visproduction said: Downloading a file usually gives you the option to name it whatever you like. If there is some plugin that automatically saves the original name, then perhaps a save as option would be a solution for this. When I grab subtitles from another source, I am always prompted to name the file. Do the 5 downloads not get different file names. Most OS will auto add a (1), (2) to the end of any file that gets downloaded to a folder where another file already has that name. Are you just not seeing the complete file name in the pull down menu option? Can you go to the folder and rename the downloaded subtitles to whatever you like to avoid this? I am not sure what exactly the problem is here. I have OpenSubtitles plugin set up. No, it does not ask me for the name of the subtitles and in the Subtitle menu sometimes I end up with a repeated name for the subtitle or with just an "(SRT)", no language indicated. Real scenario, we had some family visiting and their kids didn't speak English, so we wanted Spanish subtitles. There was a sync issue so we ended up downloading additional subtitles, and they all ended up having the exact same display name in the subtitle menu, nothing to differentiate them. I'm attaching a screenshot. If my brother, or other users end up downloading extra subtitles for any reason, I wouldn't want to do cleanup after them entering my NAS and searching for the files, comparing, etc...each time they do. I much rather prefer to be able to "allow/disallow" subtitle renaming/deletion on this menu. Emby does not pull the actual filename of the subtitle, I'm not even expecting Emby to be able to change the filename. And yes, a "confirm" box after the change wold be ideal, again, for those users that have the permission. 5) As I said, outlier case but: From my iPad I'm on a IoT VLAN and so is my brother, we don't see the NAS from there. Also, just cleanliness of the process. iPad or PC, if Emby is already handling my subtitle management most of the time, why do I have to browse folders to get to upload a subtitle? I would prefer a more integrated experience, and Emby already knows where to put the file. This also would allow any other user with the right permissions (i.e., my brother) to upload a subtitle even if they don't have direct access to the NAS. Obviously I would restrict the filetype even if that's not a perfect security measure, but the permissions per user plus the filetype restriction might be sufficient. Not so far removed from also being able to upload individual movies directly from the GUI, but I don't want to deviate too much from the subtitle theme. 6) ..., same as 5, this point is a total stretch and I would not expect Emby to have VTT service within it. I was thinking on a way to connect it to a different external tool, and maybe self hosted (the idea of the plugin would be just to connect, or send the command to the external tool), the tool could get from Emby 2 things, the File path and the requested language. The plugin could send a command to the external tool (Docker instance of Whisper to keep things clean and separate) with the selected parameter (language) and the file's known path. If nothing else, Emby would automatically pick up the new subtitle after the next library scan. Whisper is a nice and simple tool to implement that can even be triggered through command line. Again, this is way past the other 5 ideas, but more and more self-hosted AI TTS and STT modules are out there (i.e, HomeAssitant integrations), so, it may be something to have on the radar. ...respectfully and hoping not to be a nag hehehe 1 1
visproduction 315 Posted July 1, 2025 Posted July 1, 2025 Pucal, Working from a tablet or TV is indeed different. The left / right arrow helps with the slider where 1 arrow click is 100ms. If you don't have the arrow keys, then the slider is over sensitive. Shift subs by Frames or ms This can be found by quick math. 1000 / 24 = 41.667ms = 1 frame. If the media is 29.97, then 1000 / 29.97 = 33.367ms = 1 frame. The video changes on each frame. Moving the subs by 100ms can overshoot the sync you want with the video. Steps of 100ms will never be exact. Subs are not audio, so you don't notice as much, but why have values that don't match the video? There is no point. I think a slider or digital input by + - frames is nicer. Also much easier to input with keystrokes. 24fps make subs appear 3 frames earlier: -3 (two keystrokes) -125 (four keystrokes and you have to look up the value.) If you imagine that you may try several settings to see which is best, then you are using two to three times more keystrokes with ms versus frames. If you try 10 settings, then you click 40 to 60 more keystrokes using ms and have to look up every value. Not so nice.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now