chef 3810 Posted August 26, 2021 Posted August 26, 2021 And @Sammy I think I know what happened in your log. Do you have rogue ffmpeg processes in your task manager, just sitting there at 0%?
Sammy 790 Posted August 26, 2021 Posted August 26, 2021 29 minutes ago, chef said: Whoa! Check out what happens to the IntroSkip plugin schedule task data, when the library Manager decides to take control and scan the library, adding real episodes and removing virtual (upcoming) episodes. So the Library Manager stops watching the folder that contains the series Archer, this is also a series we are about to scan for title sequences.... So they are both running at the same time (this is a complete inadvertently...) Next we start to scan the series which has just been ignored by the library manager, guess what happens? No episode index number! We can finger print the file okay, but we won't know it's index. Long story short, it's probably easiest to check for the library manager running it's task... what ever task that is... and we'll stop and wait. Seems like an insignificant issue... but, we do use the index number in the title sequence task. If it is NULL in the database, we might run into trouble, and it would take a while to figure out just what happened. Kind of lucky it happened now actually. You lost me.. Sorta. At any rate, not having these two tasks run simultaneously is probably a good idea. Once the initial run is done I think the incremental runs are not so long so collisions are rare most of the time. 1
Sammy 790 Posted August 26, 2021 Posted August 26, 2021 10 minutes ago, chef said: And @Sammy I think I know what happened in your log. Do you have rogue ffmpeg processes in your task manager, just sitting there at 0%? I checked just now and no ffmpeg process is running currently. Another thing comes to mind. What happens if MCEBuddy is using ffmpeg when IntroSkip is doing it's deal?
chef 3810 Posted August 26, 2021 Posted August 26, 2021 15 minutes ago, Sammy said: I checked just now and no ffmpeg process is running currently. Another thing comes to mind. What happens if MCEBuddy is using ffmpeg when IntroSkip is doing it's deal? It shouldn't matter. I have almost finished testing this task. I want to make sure everything actually good, so it is fixed. Whatever has happened, it is strange. I'm wondering if it could be the duration calculator. But we'll find out soon enough. 1
chef 3810 Posted August 26, 2021 Posted August 26, 2021 7 hours ago, Micael456 said: Sorry chef, my c# knowledge is far too basic here- I came up through uni with Java and Perl mainly. My google-fu is still on point though, don't know if you've come across this stackoverflow post? It's using JPEGs instead of audio, but I imagine it's the same underlying structure to get from ffmpeg to c#. https://stackoverflow.com/questions/19634749/can-i-use-ffmpeg-to-output-jpegs-to-a-memory-stream-instead-of-a-file It comes with some example c# code which may as well be greek to me lol, but might make sense to you? https://github.com/nmaier/simpleDLNA/blob/060d602fd1606b0c18fea19eed6ed7f1ff12684c/thumbs/VideoThumbnailLoader.cs Yes many thanks! I did read that, and actually it has allowed us to capture the stream. However, the ffmpeg process hangs, and the stream buffer is all wrong.
Micael456 45 Posted August 26, 2021 Posted August 26, 2021 54 minutes ago, chef said: Yes many thanks! I did read that, and actually it has allowed us to capture the stream. However, the ffmpeg process hangs, and the stream buffer is all wrong. That sounds like the issue this person came across here actually. The remarks section they refer to: https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.processstartinfo.redirectstandardoutput?redirectedfrom=MSDN&view=net-5.0#remarks Quote The following example shows how to read from a redirected stream and wait for the child process to exit. The example avoids a deadlock condition by calling p.StandardOutput.ReadToEnd before p.WaitForExit. A deadlock condition can result if the parent process calls p.WaitForExit before p.StandardOutput.ReadToEnd and the child process writes enough text to fill the redirected stream. The parent process would wait indefinitely for the child process to exit. The child process would wait indefinitely for the parent to read from the full StandardOutput stream. 1
STR8 74 Posted August 26, 2021 Posted August 26, 2021 Still have a long way to go but it's looking good so far 1
chef 3810 Posted August 26, 2021 Posted August 26, 2021 (edited) @samuelqwe your episode selection idea is just bangin' em out! LOL! Every 4 seconds at least 2 are found! So good! There are a couple times where episode 1 is scanned and is recurring to find episodes.. . not exactly sure why... Yet.. Plus, this is only at max parallel of 2. Edited August 26, 2021 by chef 2
rbjtech 5284 Posted August 27, 2021 Posted August 27, 2021 15 hours ago, STR8 said: Still have a long way to go but it's looking good so far Yea GoT Season 1 is troublesome. GoT Intro is ~1min 50 secs - not 31 seconds .. The issue is Ep1 has an immediate 'HBO', a 7 min content, then the GoT Intro. All others Eps have (maybe a recap) + the HBO, then the GoT Intro. Thus - I would actually expect it to show 'false' for s01e01 - and this is correct, because it's not the same intro as all the others. The only way I have managed to get GoT (Season 1) appearing properly - is to insert the full Intro (HBO+Intro) into Episode 1 - THEN I get the correct detection. Of course this was just testing a theory - but now we can edit the results - for GoT s01e01 - we can simply edit the details. 1
Sammy 790 Posted August 27, 2021 Posted August 27, 2021 18 hours ago, chef said: It shouldn't matter. I have almost finished testing this task. I want to make sure everything actually good, so it is fixed. Whatever has happened, it is strange. I'm wondering if it could be the duration calculator. But we'll find out soon enough. I am anxiously awaiting the next version to test! 1
chef 3810 Posted August 27, 2021 Posted August 27, 2021 (edited) 1 hour ago, rbjtech said: Yea GoT Season 1 is troublesome. GoT Intro is ~1min 50 secs - not 31 seconds .. The issue is Ep1 has an immediate 'HBO', a 7 min content, then the GoT Intro. All others Eps have (maybe a recap) + the HBO, then the GoT Intro. Thus - I would actually expect it to show 'false' for s01e01 - and this is correct, because it's not the same intro as all the others. The only way I have managed to get GoT (Season 1) appearing properly - is to insert the full Intro (HBO+Intro) into Episode 1 - THEN I get the correct detection. Of course this was just testing a theory - but now we can edit the results - for GoT s01e01 - we can simply edit the details. Speaking of the new edit feature. Where you able to edit it, refresh the page, and have the data stick? The db changes that happened also allowed the edited (confirmed) entries to be ignored during the tasks. Edited August 27, 2021 by chef
chef 3810 Posted August 27, 2021 Posted August 27, 2021 (edited) 19 minutes ago, Sammy said: I am anxiously awaiting the next version to test! I'm going to check my results this morning. Make sure they re not broken. BRB Sammy! Edited August 27, 2021 by chef 1
rbjtech 5284 Posted August 27, 2021 Posted August 27, 2021 17 minutes ago, chef said: Speaking of the new edit feature. Where you able to edit it, refresh the page, and have the data stick? So a couple of updates - a) Latest Windows Emby Beta (4.7.0.8) now includes the chromeprint ffmpeg version 4.4.0-emby_2021_08_23 - Installed during the beta update. b) Editing the values directly works ok - after using the 'tick' to confirm the change but there are few odd behaviours that possibly need sorting out down the line. It allows setting a 'true' to a 'false' but keeps timings - not sure if this would cause any grief down the line ? ie a false should set them both to 0 ? Setting a 'false' to a 'true' turns it green (good), but setting a 'true' to a 'false' does not turn it black. Maybe put the editable values in boxes as its not obvious how you edit items other then clicking on them.. A 'tick' box is used to save, again not ideal - maybe rename it to 'save' or something - or a short header advising this. 'true' / 'false' should probably have a dropdown selection box only - as currently you have to over type it. (it doesn't save anything other than t/f though, I tried.. ) Fingerprinting and detection all working very well for me using v1.0.2.2 Thanks ! 1
chef 3810 Posted August 27, 2021 Posted August 27, 2021 (edited) 1 hour ago, rbjtech said: So a couple of updates - a) Latest Windows Emby Beta (4.7.0.8) now includes the chromeprint ffmpeg version 4.4.0-emby_2021_08_23 - Installed during the beta update. b) Editing the values directly works ok - after using the 'tick' to confirm the change but there are few odd behaviours that possibly need sorting out down the line. It allows setting a 'true' to a 'false' but keeps timings - not sure if this would cause any grief down the line ? ie a false should set them both to 0 ? Setting a 'false' to a 'true' turns it green (good), but setting a 'true' to a 'false' does not turn it black. Maybe put the editable values in boxes as its not obvious how you edit items other then clicking on them.. A 'tick' box is used to save, again not ideal - maybe rename it to 'save' or something - or a short header advising this. 'true' / 'false' should probably have a dropdown selection box only - as currently you have to over type it. (it doesn't save anything other than t/f though, I tried.. ) Fingerprinting and detection all working very well for me using v1.0.2.2 Thanks ! @rbjtech Great News! Thank you! There are several UI adjustments that need to be corrected today. I'll make sure those are added! If chromaprint is added, it won't be long before it will be simple for lots of people to try this out. That means, it had better work the best it can, or else it'll lose traction. I updated the version numbers in the project file to keep track again of what changed. There is a private Github repo with the code as well. Not that I didn't want to share, but there were other parties snooping around the code...LOL! If it actually works well enough for implementation, Emby should be first... before Team Purple. ------ @Sammy I haven't had issues with this. I was able to fingerprint, and collect title sequence data. IntroSkip_v2.0.2.3.zip Edited August 27, 2021 by chef 1
rbjtech 5284 Posted August 27, 2021 Posted August 27, 2021 5 minutes ago, chef said: If it actually works well enough for implementation, Emby should be first... before Team Purple. Hopefully I'll have time to test over the weekend running as a Beta instance on my main system. Up until now I've been using my own PC with media local on the SSD, the old HDD was saturated with more than 1 FP session as you know. My main system has about 30K episodes - all local DAS but multiple disks - but it's only a Gen 1 i5 cpu - so is going to struggle (I think) with the detection .. I'll let you know ! 1
chef 3810 Posted August 27, 2021 Posted August 27, 2021 @rbjtech Boolean is now set with select box. 1
BillOatman 596 Posted August 27, 2021 Posted August 27, 2021 (edited) Great to see such amazing progress!! Edited August 27, 2021 by BillOatman 1
chef 3810 Posted August 27, 2021 Posted August 27, 2021 1 minute ago, BillOatman said: Great to see such amazing process!! The man the legend! Thanks Bill!
chef 3810 Posted August 27, 2021 Posted August 27, 2021 Saved buttons are now actual submit buttons. 2
chef 3810 Posted August 27, 2021 Posted August 27, 2021 Looks like it seems very important to keep the title sequence threshold above 10 in order to get a lot of results. I think the value should be hard coded, so it doesn't cause issues.
rbjtech 5284 Posted August 27, 2021 Posted August 27, 2021 (edited) 43 minutes ago, chef said: Looks like it seems very important to keep the title sequence threshold above 10 in order to get a lot of results. I think the value should be hard coded, so it doesn't cause issues. You've been busy @chef ! Amazing progress on the GUI items .. looking much more polished now. Yea, on the detection threshold - I would set it as a minimum value in the config XML - but not accessible/changeable from the GUI. That way, if people do want to 'play' then they can edit the config files themselves (and restart emby) and if they are doing that, they probably know what they are doing .. maybe.. Edited August 27, 2021 by rbjtech 1
chef 3810 Posted August 27, 2021 Posted August 27, 2021 1 hour ago, rbjtech said: You've been busy @chef ! Amazing progress on the GUI items .. looking much more polished now. Yea, on the detection threshold - I would set it as a minimum value in the config XML - but not accessible/changeable from the GUI. That way, if people do want to 'play' then they can edit the config files themselves (and restart emby) and if they are doing that, they probably know what they are doing .. maybe.. Yes good idea. I'll leave it in the xml perfect!
Sammy 790 Posted August 27, 2021 Posted August 27, 2021 7 hours ago, chef said: I haven't had issues with this. I was able to fingerprint, and collect title sequence data. IntroSkip_v2.0.2.3.zip I've had this running for a while now. I'll report back later my results in a few hours. 1
Weevillo 30 Posted August 27, 2021 Posted August 27, 2021 12 minutes ago, Sammy said: I've had this running for a while now. I'll report back later my results in a few hours. I only just found out about this project, is it usable at the current state and if so where would the dll file go?
Recommended Posts