/hydrus/ - Hydrus Network

Hydrus Bunker

Posting mode: Reply

Check to confirm you're not a robot
Drawing x size canvas

Remember to follow the rules

Max file size: 350.00 MB

Max files: 5

Max message length: 4096

Manage Board | Moderate Thread

Return | Catalog | Bottom

Expand All Images

Version 380 Anonymous Board owner 01/16/2020 (Thu) 03:55:50 Id: eadd11 [Preview] No. 489
https://youtube.com/watch?v=U35sSPJI_Bs [Embed]
zip: https://github.com/hydrusnetwork/hydrus/releases/download/v380/Hydrus.Network.380.-.Windows.-.Extract.only.zip
exe: https://github.com/hydrusnetwork/hydrus/releases/download/v380/Hydrus.Network.380.-.Windows.-.Installer.exe
app: https://github.com/hydrusnetwork/hydrus/releases/download/v380/Hydrus.Network.380.-.macOS.-.App.dmg
tar.gz: https://github.com/hydrusnetwork/hydrus/releases/download/v380/Hydrus.Network.380.-.Linux.-.Executable.tar.gz
tar.gz: https://github.com/hydrusnetwork/hydrus/archive/v380.tar.gz

I had a couple of difficult weeks, with illness and other IRL problems getting in the way, but I got some hopefully pretty neat work done. A new fast video and audio player is available for advanced users to test, and there are a bunch of fixes and ui improvements as well.

A user just notified me that the Duplicates page has crazy layout! I apologise. Nothing is broken, it is just sizing wrong, and part of a longer fight I am having to convert my old wx layout code to Qt. I know exactly what happened here, and I will have it fixed for 381. If you discover more UI like this (the system predicate panels have a bit of it), please let me know.

Anonymous Board owner 01/16/2020 (Thu) 03:56:19 Id: eadd11 [Preview] No.490 del

This is just for advanced users this week. It is a basic prototype that is not ready for real use. I will improve a bit before turning it on for everyone, hopefully next week.

MPV is a good free video player. One of the core benefits of moving hydrus to Qt was the potential of being able to neatly embed it into the media viewer. I am happy to report that these past two weeks have been successful, and it looks like hydrus is finally getting hardware-accelerated video playback and full native audio support!

If you are using the windows build in advanced mode, please check out the big ugly filetypes list under options->media. Under all the video and audio filetypes, you can now set 'show using mpv' as a show action. Please forgive how large this list has grown--before I turn mpv on for everyone, I am going to rework this list so you have the option to just say 'for all video: xxxxxx', rather than always having every single filetype.

Once you have it set, it should load video almost exactly the same as my native renderer, with the scanbar below for navigation. Audio files will show as a (for-now fixed-size) black box or album art. Be warned: there are no volume/mute controls yet! I have set it at 70% volume for now. MPV has an optional and configurable on-screen display, but for technical reasons I had to stick with my custom controls.

I know what features I need to add, so the feedback I am most interested in this week is in where mpv breaks. If it doesn't work for you, or if it fails to load a file, or it has bad performance, or it sizes wrong, or you get a crash after closing the media viewer, anything like that, please let me know. Performance in my tests has been excellent--rendering 4k 60fps no problem as long as you have any sort of branded GPU. I have had some audio jitter on some unusually encoded videos and some crashes (which I think I have fixed).

One annoying thing is mpv requires a hefty 57MB dll, making the already bloated hydrus download even bigger. One user suggested perhaps putting out two releases--a 'core', and an 'update', which wouldn't have the big stuff. I am still thinking about it--while I like the overall idea, the hydrus build is held together with duct tape, and having a small non-functional release will increase complexity and inevitably cause ugly syncing difficulties whenever the big stuff does need to be updated.

Users running from source will need libmpv and python-mpv to enable this. I haven't pinned down the most convenient and functional way to do this for Linux and macOS yet, so we'll have to figure this out over the coming weeks and get it into the help. Any knowledgeable feedback here would be great.

For the near future of mpv, I would like to: figure out the technical side of including mpv in the Linux and macOS builds; write volume/mute UI and shortcuts; add global volume/mute management; test mpv with gifs and apngs; explore custom shaders and configuration files; and generally polish the whole thing.

Anonymous Board owner 01/16/2020 (Thu) 03:57:03 Id: eadd11 [Preview] No.491 del
quality of life

The tag right-click menu has had a significant overhaul. More commonly used actions are moved up, less common down. Tags with siblings now provide all siblings under the 'copy' menu! System search predicates have better copy and search-action support (like 'exclude' system:archive, which will actually add 'system:inbox').

Right-clicking on the thumbnail grid's 'whitespace' no longer does a 'deselect all' action, so you can now easily right-click in an empty area and go remove->selected!

Across the program, all filetypes are now referred to with human language. Instead of 'image/jpg', it is now just 'jpeg'. Instead of 'application/x-7z-compressed', it is now just '7z'. Please let me know where it looks bad, and if you would like to edit these labels.

The 'new page chooser' dialog now dismisses itself if you click off it! So, if you accidentally middle-click in some page tab whitespace and it annoyingly pops up, just left-click, and it will go away. Also, this dialog now catches enter/return key, and will hit the 'first' button (if you imagine the nine possible button locations as a number pad, starting at top-left). Hitting enter twice will typically open a new 'my files' search page.

A user surprised me recently by asking where to find the 'pause video' shortcut--I hadn't realised there wasn't one! Now this is fixed: 'pause_media' and 'pause_play_media' are added to the 'media_viewer' shortcut set, and 'pause_play_slideshow' is added to 'media_viewer_browser' set. Previously, the slideshow pause/play was hardcoded to space bar--this is now gone, so if you used this, you'll want to set it up yourself.

the rest

I have added simple support for RealVideo, RealAudio, and TrueAudio files. These are some formats, so if you come across some variable bitrate rmvb file or something that doesn't work, please send it in and I will have a look. MPV couldn't handle a couple of my test .rm files' audio tracks, but the .ttas seemed great.

Ever since the CloudFlare-8chan break, I have been telling myself to figure out some new downloader objects for the bunkers everyone scattered to. This job kept being put off, long enough that 8kun came back(!), but I managed to fit in some time in this morning and got 8kun and vch.moe support added for today's release. 8kun was obviously easy to convert from the old 8chan parser, and vch's engine provides an API very similar to 4chan that I was able to duplicate and modify for. I had a proper look at julay, smuglo.li, and endchan, but these use their own API formats (or no API at all), so I will have to write new parsers, which will take longer. I really would like to get them done for 381--please remind me if it looks like this job has slipped away again.

Anonymous Board owner 01/16/2020 (Thu) 03:58:57 Id: eadd11 [Preview] No.492 del
full list

- basic mpv support is added. it comes with the windows build this week, and is a prototype meant for initial testing. the library is optional. users who run from source will want 'python-mpv' added via pip and libmpv available on their PATH, more details in running_from_source help
- took an qt-mpv example kindly provided by a user, updated it to work with the hydrus environment, and integrated it into the client as a new choosable view type under audio/video filetypes under options->media for advanced users
- reworked how the 'start paused' and 'start with embed button' media viewer options work under options->media. these are now separate checkboxes, not combined with the underlying 'show action'. existing embed/paused show actions should be converted automatically to the correct new values
- unfortunately, due to some python/qt/libmpv wrapper mouse interaction issues, mpv's 'on screen controller' overlay is not available
- for now, left click pause/plays the mpv window, just like the native mpv window.
- preview/next frame shortcuts should work for the mpv window when playing video
- no volume/mute controls yet, these will come in the coming weeks, including global mute settings
- updated media show and sizing code to account for mpv widgets
- reworked my animation scanbar to talk to mpv, and for my mpv window to talk back to it
- improved the animation scanbar to be more flexible when frame position and num_frames are not available, both in displaying info and calculating scanbar seek clicks
- mpv api version added to help->about
- .
- new downloader objects:
- thanks to a user, updated the 'pixiv artist page' url class to a new object that covers more situations. the defunct 'pixiv artist gallery page' url class is removed
- added 8kun and vch.moe download support. I got started on julay, smug, and endchan, but they were a little more tricky and I couldn't finish them in time--fingers crossed, next week
- .
- menu quality of life:
- a right-click on thumbnail whitespace will now not send a 'deselect all' event! feel free to right-click in empty space to do an easy remove->selected
- remorked the tag menu layout to move less frequently used actions down:
- - moved the discard/require/permit/exclude search predicate actions down
- - moved 'open in a new page' below select and copy
- - moved copy above select
- and some misc menu layout improvement on this menu
- fixed some labelling with the discard/require/permit/exclude verbs on negated tags
- right-clicking on system search predicates now shows the 'copy' menu correctly
- system predicates that offer easy inverse versions (like inbox/archive) should now offer the 'exclude' verb
- when right-clicking on a single tag that has siblings, its siblings and those siblings' subtags will now be listed in the copy menu!
- copying 'all' tags from a list menu, with or without counts, will now always copy them in the list order
- across the program, all menu 'labels' (menu text items that do not have a submenu and have no associated action, like 'imported 3 years 7 months ago') will now copy their text to the clipboard. let's see how it goes
- .
- other ui quality of life:
- across the program's UI, filetypes are now referred to with simpler terms rather than technical mimetypes. instead of 'image/jpg', it is now typically just 'jpeg'
- the 'remove selected' buttons on the gallery and watcher pages are now smaller trash icon buttons
- the new page chooser will now auto-dismiss if it loses focus--so if you accidentally launch it with a middle-/double-click somewhere, just click again and it'll go away
- hitting enter or return on the new page chooser now picks the 'first' button, scanning from the top-left. hitting enter twice now typically opens a new 'my files' search page
- added pause_media and pause_play_media shortcuts to the media_viewer shortcut set. new clients will start with space keypress performing pause_play_media
- added pause_play_slideshow shortcut to the media_viewer_browser shortcut set. this shortcut is no longer hardcoded by space keypress

Anonymous Board owner 01/16/2020 (Thu) 04:01:16 Id: eadd11 [Preview] No.493 del
- the six default shortcut sets now have a small description text on their edit panels
- the options->media edit panels now enable/disable widgets better based on current media/preview action
- added a checkbox to _options->gui pages_ to set whether middle-clicking a tag in the media viewer or a child tag manager to open a tag search page will switch to the main gui. default is false
- mr bones now reports total files, total filesize, and average filesize
- mr bones now loads your fate asynchronously
- .
- the rest:
- added tentative and simple realvideo (.rm) and realaudio (.ra) support--seems to work ok, but some weirder variable bit rate formats may not, and I have collapsed the various different extensions just down to .rm or .ra
- added trueaudio (.tta) audio support
- fixed a bug from the recent search optimisations where a bare inbox search would not cross-reference with the file domain (so some trash could show up in a simple inbox/'my files' query)
- fixed an issue with searching for known urls by url class where the class was for a third-or-higher-level domain and was not set to match subdomains (this hit 4chan file urls for a few users)
- fixed the issue with 'open externally' button panel not clearing their backgrounds properly
- fixed some of the new unusual stretchy layouts in the options dialog
- removed overhead from subscriptions' 'separate' operation, which should stop super CPU hang when trying to split a subscription with hundreds of thousands of urls
- fixed an issue where the advanced file delete dialog would not show the simple 'permanent delete' option when launched from the media viewer's right-click menu
- fixed the select/remove actions for local/remote
- fixed 'set_media_focus' from manage tags to correctly activate the underlying media viewer as well as set focus
- stopped the 'file lookup script' status control from resizing so wide when it fetches a url
- fixed a rare mouse wheel event handling bug in the media viewer
- reduced db overhead of the 'loading x/y' results generation routine. this _may_ help some users who had very slow media result loading
- cleaned up how the server reports a bootup-action error such as 'cannot shut down server since it is not running'--this is now a simple statement to console, not a full error with trace
- improved client shutdown when a system session shutdown call arrives at the same time as a user shutdown request--the core shutdown routine should now only occur once
- fixed an issue with thumbnail presentation on collections that have their contents deleted during the thumbnail generation call
- misc wx->Qt layout conversion improvements
- updated the github readme to reflect some new links and so on
- misc code cleanup

next week

I pushed it a bit hard this week, so I am going to try to take it easy. Hopefully I will be able to get some volume/mute controls going for mpv and then launch it for all users, including on the Linux and macOS builds. Assuming there are no catastrophic problems this week, I will be overwriting user settings to move all 'show as normal' video and audio options to 'show with mpv'. Then these new imageboard parsers and some more Qt cleanup work.

Anonymous 01/16/2020 (Thu) 04:49:22 Id: 9b25f2 [Preview] No.494 del
this is a good update so far, but the only thing i dont like about it is that every other time i open up the client i get constant 'MPV is not available!' errors every time i try to open up a video in the viewer that's set to view with mpv. i have no clue why this could be. could i at least get a reason why it wouldnt be available?

Anonymous 01/16/2020 (Thu) 04:58:25 Id: 9b25f2 [Preview] No.495 del
update: figured out the problem. when i launch the app from my autohotkey script mpv doesnt work, but when i launch it from the exe in the folder it works fine. not sure why this would be

Anonymous Board owner 01/18/2020 (Sat) 19:14:28 Id: eadd11 [Preview] No.496 del
Thank you for this report. Here is a test build that should fix that problem:


Let me know how it goes.

Anonymous 01/19/2020 (Sun) 05:35:03 Id: 922eb3 [Preview] No.497 del
>The tag right-click menu has had a significant overhaul.
Is there plans for more user-friendly tag management? I'm really struggling. Ideally I want to right click on a tag and be able to delete it across all files. Or select multiple tags and hide/delete them. Regex or wildcard siblings, for instance the relationship clothing:* -> clothes:\1 and cloths:* -> clothes:\1 While I respect the moderators of the public tag repo, it's a mess.

Anonymous 01/20/2020 (Mon) 21:57:52 Id: 502072 [Preview] No.498 del
just tested as its own thing, it works, it may just be the way I have sound set up on my go to players, but something sounded lacking in that... im not really able to tell if its just the volume... but regardless it worked.

now some thoughts.

beyond a way to global mute sound, user set sound, some normalization so you don't have something that goes from 10% and the next shoots to 100%, these are generally short clips and this would be an issue with long videos but the constant need to re adjust is a potential issue, possibly a user set level where you set what you want sound to play at an it normalizes to that sound rather then a normal volume level, I don't know

aside from the audio aspect

a way to play the videos faster, like a hotkey or possibly buttons underneath it that plays at 2/5/10x rewinds at 1x/2x/5x/10x and a toggle to play things at .75/.50/.25/.1
I say buttons because it would be nice to click one and while I have the most held down it goes that fast, we use to have a vcr where you could scrub the video while it was playing with an analog control, the media I used to test included, reminded me of that, if possibly a slider that you push one way or the other for playing video... I doubt the slider is possible, but a while held button probably is. this wouldn't be the most useful thing gifs or sub minute long videos in webm from 4chan that last 1 second up to nearly 5 minutes from the same thread, it would be nice to speed these up to scrub them at faster speeds.
also if playing faster, rewind, slower would still play audio, may not be the most useful for rewind and slower, but some things could be fun.

Release Tomorrow! Anonymous Board owner 01/22/2020 (Wed) 06:27:50 Id: 2c5441 [Preview] No.499 del
I had a good week with a couple of challenges. The MPV work was difficult, so I could not get nearly as much done as I wanted. I have a basic smooth version working for all Windows users however, and some very simple volume controls. Also a bunch of bug fixes and a significant overhaul of how filetypes are selected and managed in the client.

The release should be as normal tomorrow.

I am way behind on my messages--I apologise for the delay.

Release Tomorrow! Anonymous Board owner 01/25/2020 (Sat) 20:34:53 Id: 4e6ae8 [Preview] No.508 del
I would always like to improve tag workflow and power, but it is quite complicated data to handle, so some things are more tricky and time-consuming to add than others. If you haven't seen it yet, a bunch of advanced (albeit with even more debug-tier UI) tag operations are available under services->tag migration. You can delete all instances of a tag there, for instance.

Since time is so expensive for this sort of work, if you have a play with that, I would be interested in knowing what your top priority was to make simpler and easier to use. Is right-click->tag->delete from all files something you would use quite often, or would it be ok to keep it a bit more buried (even if, say, I made the way you set up tag migration for simple tags a bit more user-friendly)?

Anonymous Board owner 01/25/2020 (Sat) 20:37:51 Id: 4e6ae8 [Preview] No.509 del
Thank you for your feedback! I have copied it to my mpv todo. I don't know if normalisation is possible, but if there is a neat handle for it, I will definitely expose it. Changing playback speed sounds fun, I'll see if I can do it.

If you are interested, here is their master help file, with all the levers I can pull. It is such a full-featured player, that sometimes half the battle here is just finding the right keyword to use:


Anonymous 01/26/2020 (Sun) 17:32:57 Id: 922eb3 [Preview] No.510 del
>Since time is so expensive for this sort of work, if you have a play with that, I would be interested in knowing what your top priority was to make simpler and easier to use. Is right-click->tag->delete from all files something you would use quite often, or would it be ok to keep it a bit more buried (even if, say, I made the way you set up tag migration for simple tags a bit more user-friendly)?
After getting used to hydrus, I realized what I suggested was in the wrong direction, so probably forget that. I'd like to be able to navigate to a master list of tags and manage them, instead of having to search for system:inbox||system:archive, and selecting everything -> manage tags. is there a way to do that? I realized the manage tag menu is perfect for what I want to do, but I'll lag out with 100k+ files trying to do that. Importing all public tag siblings into my local repo, and then hard replacing all tags with their siblings seemed to work well. My siblings menu is really slow though with 90,000 entries, it's one of the reasons I suggested regex/wildcard siblings. It would drop that 90,000 to a more manageable 5000, I'd bet. There's like a billion siblings just for converting underscored tags, for example.

>albeit with even more debug-tier UI
One way to make tag migration much safer and useful is just to have a limited test run to before committing changes. Another would be to merge the tag migration screen with the tag manager so you can edit all tags on all files without having to load all the files first.

One example of what I want to do is get rid of all the filename mistakes people do when first importing files. A UI quirk of the import screen is that beginners aren't aware you need to type in 'filename' into the input box. So they just tick the checkbox to import filenames, import filenames into the global namespace, and later end up committing those changes to the pub repo. It'd probably be a good idea to fill in that input box with 'filename' by default to stop that. Fixing this is painful because there's no regex support to delete 01_2342_1333 or migrated them under the filename: namespace.

Anonymous Board owner 01/28/2020 (Tue) 18:35:52 Id: dee88c [Preview] No.514 del
Thanks. 'Migrate tags' is the best tool for large tag jobs right now. I expect to add hard-replace siblings to it at some point.

As you have seen, manage tags just doesn't scale well at more than a thousand or so files.

I like the idea of prepping the filename box with 'filename', thanks!

Anonymous 01/28/2020 (Tue) 18:52:47 Id: 922eb3 [Preview] No.515 del
>I like the idea of prepping the filename box with 'filename', thanks!
I would go one step further and lock the user from changing the namespace, and remove the input box only leaving the checkmark. There's no reason for having filenames under anything other than the filename namespace.

Top | Return | Catalog | Post a reply