Page 1 of 1

For WDL, Puppy, and more: wex audio/webcam/screencast recorder

Posted: Sat Jul 25, 2020 12:16 pm
by wiak

ALSO AVAILABLE FOR WEEDOGLINUX AND FOR DEBIANDOGS

I haven't made a dotpet for a longtime, but I noticed peebee's LxPupSc (32bit version at least) came with pavrecord, which is pretty old now and not particularly good at screencast recording.

So please find attached, dotpet for latest wex that I've tested in LxPupSc 32bit distro. Should also work on BionicPup32, and BionicPup64, and probably (untested) on LxPupSc64 (if you have trouble just let me know; it can be made to work in any such recent distro easily enough...).

EDIT: sorry, it was actually BionicPup32 I successfully tested it on. Have since successfully tested in LxPupSc64 (had to use Package Manager NG to fetch the dependency giblib-1.2.4-x86_64_3salix though since Puppy Package Manager couldn't find it). I will also definitely work in BionicPup64 and I'll try LxPupSc32 later and report back, though I'm pretty sure will work fine there too.

Note that this is latest 0.8.19 version of wex, which is the same one used in WeeDogLinux Arch64, but this Puppy version is set up to use alsa 'plughw:0,0' by default rather than 'pulse' audio. Change that plughw:0,0 if your underlying audio hardware uses something else...

NOTE WELL: you also need to install the attached scrox (32bit version if for a 32bit distro or 64bit version if for 64bit distro) and scrox has dependency giblib1, which you'll need to install from Puppy Package Manager; I did put giblib1 (and libimlib2) as a dependency in the dotpet petspecs but for some reason PPM doesn't auto-fetch giblib1.

Also, pause control is really just there for audio recording (doesn't really work with screencasts and sometimes doesn't work even with audio so in practice I avoid using pause in case it causes issues...).

Finally, note that scrox is a special fork of screenshot program 'scrot' so can also be used for simple screenshots (exactly as scrot), but note that scrox has extra capability required by wex (scrot does not output cursor X/Y positions, which wex needs and scrox does provide).

Aside from scrox (and giblib1), wex itself just depends on bash,gtkdialog3 and ffmpeg, so works out of the box on most recent Pups (and can be made to work on older ones with some config tweaks).

EDIT: Probably worth mentioning that wex works great with fredx181's gifenc-sel program. If that is also installed, wex automatically puts a button in its big window for calling that up and automatically then turning any recorded video or screencast into an animated gif. Also works great with mhwaveedit (wex has a button to call up mhwaveedit, when it is installed, so the recorded audio auto-shows up inside the mhwaveedit window).

wiak


Re: wex audio/webcam/screencast recorder

Posted: Sat Jul 25, 2020 2:07 pm
by mikewalsh
@ Will:-

If you remember, I said I'd make a new all-in-one when you published the next 'upgrade' on WeX?

So; spill! What's the difference between 0.8.18 and 0.8.19? Any earth-shattering changes I should be aware of? :)


Mike. ;)

Re: wex audio/webcam/screencast recorder

Posted: Sun Jul 26, 2020 9:31 am
by wiak
mikewalsh wrote: Sat Jul 25, 2020 2:07 pmIf you remember, I said I'd make a new all-in-one when you published the next 'upgrade' on WeX?

So; spill! What's the difference between 0.8.18 and 0.8.19? Any earth-shattering changes I should be aware of? :)
Newer pups do not need any 'portable version' Mike, simple as that really. The ffmpeg provided in newer Pups (including BionicPup32 and 64, and LxPupSc32 and 64 and probably any other LxPup of recent vintage already contain a new enough ffmpeg. Making a portable version for any new Pup would simply be an unnecessary waste of space.

The difference between 0.8.18 and 0.8.19 isn't much at all. I have moved the config scripts into /usr/local/etc for various reasons to do with Arch Linux (WeeDogLinux version) and I've also made the program a bit more robust should any of its config files get overwritten by accident. That's all. Is it worth then making a revised 0.8.19 'portable version for older Pups, containing an up-to-date ffmpeg and so on? I'd advise against it if the old portable version works for such distros, just stick with it (though you can of course make a new portable for older distros if you wish - wex is liberal MIT open-source licensed...).

Note, dotpet attached to first post now tested as working fine in BionicPup32, BionicPup64 and LxPupSc64. I'm pretty sure will work out of the box (with scrox and giblib dependency installed) in LxPupSc32 as well - all of these have perfectly modern enough ffmpeg. The tiny giblib library is available from Puppy package manager so would not be good to install that in a portable pet anyway - get it straight via official package manager!

wiak

Re: wex audio/webcam/screencast recorder

Posted: Sun Jul 26, 2020 10:39 pm
by wiak
So finally tested wex on LxPupSc32 (32bit version) as well, and worked perfectly (just remember to also install 32bit scrox and giblib (from Puppy Package Manager).

So the version of wex attached to the first post has now been tested to work well on all of BionicPup32, BionicPup64, LxPupSc32, and LxPupSc64. The only doubtful feature is the 'pause' control, which is really only for use when recording audio only (i.e. in wex config there are three checkboxes: one for audio, one for video (webcam), and one for X11 (screencast), so pause often works perfectly when only audio is checked (works fine on my machine). However, I don't guarantee pause button ever works and tend to avoid its use myself - some processors have tons of cores and wex fails to pause all of them sometimes...

LxPupSc distros already contain precord, which is always useful, and also old pavrecord (which I should update one day soon). For almost all purposes, however, wex is much better than pavrecord, except... pause works quite well with pavrecord, so it is good to have that too for these odd occasions where pause video and sound matters (pausing audio and video at same time is not easy to program unfortunately because ffmpeg doesn't have an internal pause signal and buffers everything... pavrecord gets round that to some extent by recording audio and sound separately and then merging them at the end. wex does everything in one go and hence pause audio+video proves impossible without actual C code access to ffmpeg - being able to pause is the only advantage Simple Screen Recorder SSR has over wex IMO, and wex has several other advantages over SSR including not needing huge Qt libs - wex is tiny, and wex allows embedded webcam in screencasts whereas SSR cannot do that - quality of wex and SSR is much the same).

Side note: I am very impressed with LxPupSc (both 32bit and 64bit versions). Admittedly I am a fan of openbox (compared to JWM, despite admiring the even lower, but almost irrelevant IMO, resource usage of JWM), also I 'always' put Lxterminal and Lxtask on my systems (also low resource-usage and very functional) so LxPupSc distro is great for me out of the box. Easily the best Puppy distro I've played with for a long time - so beautifully polished. And they come with pcmanfm as well as Rox. I REALLY like these Pups!!!

wex has a liberal MIT license so you are free to use it anywhere and in any way you like subject to that extremely liberal license (which is far less restricting than GPL so compatible with it anyway).

I really hate when program creators refuse to provide a license with their code (making them copyright that creator only) since their programs, like wex, benefits from the work of others, script/program creators who do not provide proper open-source license are not giving back to the community properly when only allowing their code to be used and viewed - equally important is the right to copy, modify, fork, redistribute and so on that an open-source license allows - that freedom is prevented by those who only make their code copyright to themselves and that utterly possessive practice should be fought against so that all developers and users can benefit from proper open-source license allowances. It is not as if these 'copyright' non-license providing program/script authors do not benefit from the properly shared/open-source-licensed work of other programmers and copy their code or code snippets, so their non-properly-licensed works becomes a form of theft rather than sharing.

Having said that, we do use some proprietry programs - that tends to be necessary 'sometimes' but at least such programs make it clear that their programs are proprietry (whether or not the source is visible) rather than misleading users by pretending a piece of work is a free open-source contribution (which it isn't if no license provided to give such copy, modify, fork, redistribute etc permissions). Such hidden practices need to be stamped out on this forum and banned.

It's funny how some people on here are so quick to fight against the likes of systemd (which is properly open-source by the way) but turn a blind eye to blatant non-open-source script contributions. Fine about systemd, if you don't like it, but we really need to make a stand against pretend open-source contributions that are nothing of the sort!

wiak

Re: wex audio/webcam/screencast recorder

Posted: Mon Jul 27, 2020 5:22 am
by greengeek
wiak wrote: Sun Jul 26, 2020 10:39 pm ... but we really need to make a stand against pretend open-source contributions that are nothing of the sort!
wiak
Definitely worth a thread on it's own i'd say. I have no idea about such matters and would bet that most puppians who contribute remasters, scripts or GTK Utilities would have little idea of how to handle licensing.

Re: wex audio/webcam/screencast recorder

Posted: Mon Jul 27, 2020 6:46 am
by wiak
greengeek wrote: Mon Jul 27, 2020 5:22 am
wiak wrote: Sun Jul 26, 2020 10:39 pm ... but we really need to make a stand against pretend open-source contributions that are nothing of the sort!
wiak
Definitely worth a thread on it's own i'd say. I have no idea about such matters and would bet that most puppians who contribute remasters, scripts or GTK Utilities would have little idea of how to handle licensing.
No, the authors I refer to are experienced scripters and know very well that they are omitting open-source license.

Re: wex audio/webcam/screencast recorder

Posted: Thu Mar 18, 2021 12:26 pm
by rockedge

@wiak why we have a "catch all" License clause here on the forum I believe. Post code on the forum it will be covered. Does this need some adjustments to fit the role?
licenses

I have both weX and scrox going on several machines with various operating systems. Use it often. Considering adding it to my WeeDog-Void desktops as standard issue.