weX and weav with scrox (weX dependency)

Audio editors, music players, video players, burning software, etc.
Message
Author
mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

weX and weav with scrox (weX dependency)

#1 Post by mcewanw »

Newer version 0.8.18 version of main wex dotpet attached (fixes the pulse audio doc issue described below).

ERROR IN weX program documentation/tooltips:
For pulseaudio use:

On weX setup gui, entry box "audiosystem" should set to "alsa" (without the quotes), and entry box "audiodevice" should be set to "pulse" (rather than plughw:0.0 or whatever). The new combined wexweavscrox version I have released for tinycore/dCore as an sce, has that documentation error fixed, and can be found here: http://murga-linux.com/puppy/viewtopic. ... 639#946639
---------------------------------------------------

SomeOfMyOtherPrograms:
Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_dotpet Pfetch WIAKAPPS Pcreole DebianDog_MintPup_DevContributions
----------------------------------------------------------------------------------------------------

weX is a gtkdialog-based audio, video, webcam, and X11 screencast recorder, which provides and substantially improves upon all of the previous functionality of both the earlier Precord (for audio) and pAVrecord (for audio, video, webcam and X11 screencast recording). Its recording quality is equal or similar to that of SSR but can additionally include embedded webcam stream and does not require qt libs on your system.

NOTE WELL: If you have no webcam connected on your computer, remember to untick the webcam stream checkbox in weX or weX will fail to create a video. Webcam is currently selected by default (will be left unchecked in next version).

Please find weX, along with scrox and weav, for various distributions, attached to the foot of this post.

If you are trying to install weX onto a different distribution than provided for below, please take note of the information in the following link:

http://www.murga-linux.com/puppy/viewto ... 510#948510

NEW Mar23, 2017: fredx181 has put together a small utility called gifenc for converting videos to animated gif. It is a modification of the original code from http://blog.pkh.me/p/21-high-quality-gi ... fmpeg.html
You can find the gifenc utility at the link below including a mini-howto in which Fred explains how to use the weX-provided external utilities provision to add a button for gifenc to the weX gui. Pressing the resultant button will make an animated gif copy of any weX-created video or screencast just created (without erasing the orignal video):

http://www.murga-linux.com/puppy/viewto ... 724#948724

A simple weX setup window animation/illustration created by fredx181 using gifenc can be seen here:

http://www.murga-linux.com/puppy/viewto ... 563#948563
--------------------------------------------------------

Added 13 Sept 2016: static ffmpeg build by Fredx181 (of DebianDog) and portable app version of weX including that ffmpeg compilation (wex-portable). Believe it or not wex-portable even worked perfectly for me in old Puppy Slacko 5.3.3 (including embedded webcam, great video quality, and perfectly in sync audio and video). Also worked perfectly in my quick test on XenialDog and XenialPup. Since worked so well on old Puppy Slacko 5.3.3, I expect wex-portable should work great on many Pups (oldish and new), and Fred's static ffmpeg build should be a good old Pup update (and better than the ffmpeg in new Pups too IMO):

http://www.murga-linux.com/puppy/viewto ... 202#923202 with Fred's notes on that here:

http://www.murga-linux.com/puppy/viewto ... 436#923436

Added 12 Sept 2016: Find scrox 32bit version for older systems, such as DebianDog Wheezy (for older GLIBC) in this post here: http://murga-linux.com/puppy/viewtopic. ... 997#922997

For simple instructions on how to install wex,weav, and scrox for Puppy systems follow the link below for older Pup Slacko 5.6 example. Most things should be the same except you shouldn't do the last part (i.e. don't change the default audio_in.plug or video_in.plug from those provided by default).

NOTE: I've now also tried weX, weav, scrox on an older Pup (Slacko 5.6), which has an older ffmpeg so needs modified /root/wex/plugins/audio_in.plug and video_in.plug. I've now therefore written a short howto install to an older ffmpeg system like Slacko 5.6. The howto given via the link below also explains how to get the giblib and imlib2 dependencies needed by scrox, which may be applicable to many Pups. (NOTE WELL however that you should NOT CHANGE audio_in.plug and video_in.plug if you are using a more recent ffmpeg on a more recent Pup like XenialPup or XenialDog or FatDog):

http://www.murga-linux.com/puppy/viewto ... 081#922081

FatDog (and similar) version: Uploaded new version of weX for where ffmpeg is generating two or more child processes (such as happens with FatDog64-710beta on my machine).

For full weX functionality, you need to install weX, either the 32 or 64 bit version of scrox (depending on your system), and weav. If you don't already have them on your system, you also need suitable versions of imlib2 and giblib1 for scrox (see installation requirements further below).

weX uses scrox to select windows (with or without border) or fullscreen or mouse-selectable rectangular capture area. (Works great capturing youtube or similar streaming videos, actually, via Alsa MIX for audio rather than MIC input and X11 screencast for video, though of course it is generally better to simply download such videos directly via say Firefox video download extensions).

Please temporarily find attached both deb files and dotpets for weX, weav and scrox (32bit and 64bit versions of scrox), but please note the extra library files you may also need as dependencies for scrox as described in INSTALLATION REQUIREMENTS below. I'm only publishing these files temporarily on Puppy forum so grab them now if you want to test. Later I'll be moving them to my personal website, but can't guarantee when they will be available again. I don't intend making many if any mods to the main programs, other than any important bugfixes, but for many cases can support weX via its plugin facility (and weav, via its commandline combobox list).

INSTALLATION REQUIREMENTS/DEPENDENCIES:

You need to have libimlib2 and giblib1 on your system. Use your package manager to install these if you don't have them. For XenialDog/DebianDog (assuming they don't already have them) it is simply a matter of:

Code: Select all

apt-get update
apt-get install libimlib2
apt-get install giblib1
For usage instructions, press the Info (Help
Attachments
wex-0.8.18.pet
(34.5 KiB) Downloaded 183 times
wex-0.8.17FATDOG.pet
This one worked for me in FatDog710b where ffmpeg had child threads
(34.75 KiB) Downloaded 398 times
weav_9.1.0_i386.deb.tar
weav av post-processor deb (remove dummy tar)
(13.33 KiB) Downloaded 405 times
wex_0.8.17_i386.deb.tar
weX AV and X11 recorder deb (remove dummy tar)
(32.2 KiB) Downloaded 399 times
wex-0.8.17.pet
weX AV and X11 recorder dotpet
(34.75 KiB) Downloaded 500 times
weav-9.1.0.pet
weav av post-processor dotpet
(13.9 KiB) Downloaded 463 times
scrox_0.8-17_amd64.deb.tar
64bit version of scrox deb (remove dummy tar)
(12.41 KiB) Downloaded 397 times
scrox_0.8-17_i386.deb.tar
32bit version of scrox deb (remove dummy tar)
(12.87 KiB) Downloaded 413 times
scrox-0.8.17_64bit.pet
64bit version of scrox dotpet
(13.72 KiB) Downloaded 508 times
scrox-0.8.17_32bit.pet
32bit version of scrox dotpet
(14.25 KiB) Downloaded 438 times
Last edited by mcewanw on Mon 05 Nov 2018, 23:24, edited 38 times in total.

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#2 Post by mcewanw »

FatDog64-710 ffmpeg creates two processes (probably multithreading), which meant STOP button wasn't ending the capture with main weX dotpet above. I have thus uploaded a version of weX specially for that version of FatDog (the only FatDog I have tested) - but should be used for any ffmpeg that similarly starts up additional child processes during record (at this date versions of XenialPup and XenialDog/DebianDog should use the main weX dotpet).


The dotpets seem to install fine, but as I said, weX currently works best in XenialDog since it has some webcam issues when used with Puppy XenialPup32 (which otherwise works not too bad).

William
Last edited by mcewanw on Wed 31 Aug 2016, 21:44, edited 1 time in total.
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#3 Post by mcewanw »

reserved for notes about weX configuration and use
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#4 Post by mcewanw »

reserved for weX configuration help
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#5 Post by mcewanw »

One more reserved post in case I need it for something to do with weX, weav or scrox.
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#6 Post by mcewanw »

Okay, the temporary problem/fail in installation of the deb packages is because I share /usr/local/share/pixmaps/wex icons with both wex and weav, so once one of these is installed Fred's (EDIT) right-click install deb utility won't allow the other to install on XenialDog. I have temporary used the following install deb from commandline workaround:

Code: Select all

dpkg -i --force-overwrite weav__9.1.0_i386.deb
Or do the same for weX if you installed weav first. Hopefully Fred will come back to me with a better proper solution since I really do want both programs to be able to share common icons. Anyway, I'm becoming desperate for my long break...

William
Last edited by mcewanw on Fri 19 Aug 2016, 08:05, edited 2 times in total.
github mcewanw

Pelo

This morning, i have just seen you provide a new tool.

#7 Post by Pelo »

pAVrecord used yesterday for this tutoriel 'ISObooter' ISOs on USB, multiboot.
. The difficulty was too set quality and where to screencast.
This morning, i have just seen you provide a new tool. I will test it for my next tutos.
Last edited by Pelo on Sat 20 Aug 2016, 03:51, edited 1 time in total.

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#8 Post by mcewanw »

mcewanw wrote:Okay, the temporary problem/fail in installation of the deb packages is because I share /usr/local/share/pixmaps/wex icons with both wex and weav
...
Hopefully Fred will come back to me with a better proper solution

William
Okay, Fred (DebianDog fredx181) provided the Debian control line fix, so I've uploaded new deb packages for wex and weav so should install fine now without needing to use any dpkg 'tricks'.

William
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#9 Post by mcewanw »

Despite definitely taking a break from programming/computing very shortly, I am contemplating trying to code a YAD version of weX/weav or less likely, Bacon, if can't get interface the way I like it in YAD, but don't wait... it may never happen. Just try these gtkdialog versions to see if they are any use for anyone and report back if they are - at least if you would like public versions of weX, weav and scrox maintained and made available.

But don't worry about feedback otherwise, I won't be offended! In the past BarryK used to sometimes adopt little forum-created gtkdialog apps for Puppy distributions but nowadays I think apps would need submitted to woofCE team for consideration if someone wanted an app available by default. I have no such ambitions, and later Puppies have moved towards bigger apps now, like SSR, anyway. And the much smaller distribution, Slitaz, has all but given up on gtkdialog scripts I think - yad being the current favourite there for small util GUIs (and they wouldn't include ffmpeg by default anyway).

Hence I suspect these new gtkdialog-based apps of mine are only of use to me, and probably not so much use to me now either, since I'm slowing down on computer use best I can. Possibly more chance scrox is useful?

William
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#10 Post by mcewanw »

News: Uploaded new version of weX for where ffmpeg is generating two or more child processes (such as happens with FatDog64-710beta on my machine).

Other weX version should be used otherwise...

William
github mcewanw

step
Posts: 1349
Joined: Fri 04 May 2012, 11:20

#11 Post by step »

Hi, I did some limited testing on Fatdog64-710 for wex-0.8.17FATDOG.pet, weav-9.1.0.pet and scrox-0.8.17_64bit.pet.
I converted all three pets to Fatdog64 txt packages using the right-click rox entry. For scrox I installed giblib-1.2.4-x86_64-1.txz from http://smokey01.com/fd700/packages/. All went well.
I grabbed rectangular areas of video+webcam, and video only, output as x264 mkv files using the default frames rate, etc. Then I looked at weav, and I like all the possibilities that you have in there, and the sort of "tutorial" feeling from it - there's a lot that I can learn by using your software!
The wex user interface is a bit too crammed for me, perhaps you could change some of the radio buttons to drop-down selectors to give the GUI some room. GUI set aside, the functionality that wex provides is very rich - this should be an excellent screencap program, thank you!
One thing I noticed running scrox -p -s is that the output filename is printed to stdout with % special variables unexpanded, while they are expanded in the actual output file name. I think scrox should print the expanded filename to stdout, otherwise it's of little use for shell scripting.
In vcoder_user2.plug I noticed word 'the' repeated: "...ffmpeg arguments to the exactly the same variables as here..."
Thanks again for this excellent combo program!
[url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Fatdog64-810[/url]|[url=http://goo.gl/hqZtiB]+Packages[/url]|[url=http://goo.gl/6dbEzT]Kodi[/url]|[url=http://goo.gl/JQC4Vz]gtkmenuplus[/url]

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#12 Post by mcewanw »

Thanks step,

I'll look into what you came across especially the unexpanded scrox variables - I was in a hurry to get onto using that in weX so didn't look over if it was easy to expand the filenames or not - just taking a break now and longer one soon so may be a while.

The gui preference has always been a point of difference - I tend to prefer the radioboxes myself though I realise some find that too cluttered. The matter was actually first raised with the earliest Precord when I wrote it in 2008. Certainly does take up a bit more gui space, but I like to see all choice/chosen options at a glance rather than having to mouse around the gui dropping down combobox lists - matter of taste I guess and no doubt combobox approach makes a program a bit first-time friendlier.

External app mhwaveedit works better with weX if mplayer is installed since it needs that to automatically open mp3, ogg or whatever audio track inside the video, but that's a small matter if user doesn't have an interest in editing the audio track with mhwaveedit.

Thanks again, glad you find the combination of programs potentially useful.

William
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#13 Post by mcewanw »

step wrote: One thing I noticed running scrox -p -s is that the output filename is printed to stdout with % special variables unexpanded, while they are expanded in the actual output file name. I think scrox should print the expanded filename to stdout, otherwise it's of little use for shell scripting.
Hi again step,

For a moment I thought I had output the wrong variable by mistake! However, that is not the case. The output filename you mention actually can only be output in unexpanded form because the purpose of the related --xcap option of scrotx is to start up an external program BEFORE the screenshot file is processed (i.e. full filename is not available at that time in original scrot since that filename expansion is later done by the actual screenshot creation imlib program - which is an inherent part of the original scrot program design).

I remember now hesitating to bother outputting the unexpanded filename at that point therefore, but decided there was no harm in doing so, since it might still be useful on rare occasion (since external program could expand it, in some way, for some purpose or other). However, the program already contains an output that starts up an external app AFTER the screenshot is taken (--exec) and for that case the expanded filename IS passed out to the external app (though nothing is printed out to stdout itself at that time - that's also a design decision/implementation in the original scrot code).

As far as its use for shell-scripting, scrox, contains all the same, untouched, shell-scripting functionality as the original scrot program with the addition of the screen coordinate output functionality - the stdout pre-screenshot processing unexpanded filename may not be of much if any additional use, but I'll leave it in just in case and since it's harmless.

EDIT: I should mention that if you were using scrox in a script to find the coordinates for capture area you would probably want to add option -n:

Code: Select all

scrox -n -p -s
The -n turns off screenshot capture, so the stdout unexpanded output filename is irrelevant in that case and should just be ignored.

EDIT2: I should mention, that the scrox stdout filename is primarily included for non-datestamp filename use, since any specified filename is echoed to stdout exactly and also passed to external program as argument if -x option used. For example, per Example 2 given in scrox --help:

Code: Select all

scrox -s -p -d 5 -x /usr/bin/programA 'filename.jpg'
the exact filename (in above example: filename.jpg) is passed as an argument to program or script /usr/bin/programA.

William
github mcewanw

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#14 Post by fredx181 »

Hi William,

Finally took the time to test wex briefly (only default mkv output for now) on DebianDog Jessie.

First made full-screen screencast while playing a video with gtk-youtube-viewer (through mpv)
Recording audio through stereo-mix
Turned out very well, uploaded on google-drive:
https://googledrive.com/host/0ByBgCDlZZ ... y-full.mkv

Then tried (doing as above, playing same video and recording sound also) using the 'Area' option and it gives too fast video motion? and stuttering audio:
https://googledrive.com/host/0ByBgCDlZZ ... y-area.mkv

Then again did a screencast with 'Area' while only audio playing (with gnome-mplayer) and it's ok:
https://googledrive.com/host/0ByBgCDlZZ ... -audio.mkv

Maybe it's too much to ask making a screencast while playing a video, but anyway full-screen works well.

Very advanced program, indeed as Step says, a lot to learn and discover!

Will test more later (and reply (although very late) on your posts in the DD64 and Xenialdog threads).
Still having sort of timeout, but began little by little to work on a rebuild of Debian-Jessie openbox_xfce version (which is still my favorite 'Dog').

Fred

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#15 Post by mcewanw »

fredx181 wrote: Then tried (doing as above, playing same video and recording sound also) using the 'Area' option and it gives too fast video motion? and stuttering audio:
https://googledrive.com/host/0ByBgCDlZZ ... y-area.mkv
Thanks Fred.

Good testing and interesting results. Looks like it couldn't keep up on your machine with the Area option etc. What were you using? There is a parameter that could be adjusted to maybe make it okay again: increase the -thread_queue_size (on the relevant audio plugin I think). Not sure since works fine on my Intel Core II duo 2.1GHz 2GB RAM machine - I have little doubt slower machines will run into frame dropping/sync issues of course.

On my computer, I have no issues even when using Area to record a playing Youtube video - comes out great.

William
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#16 Post by mcewanw »

Hi again Fred,

weX comes with 30 as frame rate by default, which is quite high. Along with changing -thread_queue_size params using a lower frame rate might allow your machine to keep up with playing video on Area select mode. You should also make sure cropped isn't checked since you want the WxH to both be divisible by 16 for best encoder performance whereas cropped mode only forces divisible by 2.

William
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#17 Post by mcewanw »

Fred,

I forgot to say in my posts to you above, you can try different -thread_queue_size param by editing plugin audio_in.plug for audio (and less likely to matter maybe, video_in.plug for Xcap video stream, where ffmpegVideoIn0 variable is for X11grab stream, In1 is for webcam).

As an alternative, maybe using video encoder user1 (by default uses veryfast vcodec preset) or user2 (most likely one since by default uses ultrafast vcodec preset with crf 28, which is a bit lower quality but okay in my tests) would keep up better (the supplied default uses superfast preset).

William
Last edited by mcewanw on Mon 05 Sep 2016, 23:49, edited 2 times in total.

step
Posts: 1349
Joined: Fri 04 May 2012, 11:20

#18 Post by step »

Hi William, thanks for explaining the reasoning about the unexpanded file name. Since -x does expand it, it's easy to pass the name to a downstream script, so nothing is lost.
[url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Fatdog64-810[/url]|[url=http://goo.gl/hqZtiB]+Packages[/url]|[url=http://goo.gl/6dbEzT]Kodi[/url]|[url=http://goo.gl/JQC4Vz]gtkmenuplus[/url]

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

Installing weX onto older Pup such as Slacko 5.6

#19 Post by mcewanw »

I've been trying to get pAVrecord working better for user greengeek on his older Pup - Slacko 5.6 installation. In the process, I also tried weX on that system and have it going very well on my machine despite Slacko 5.6 using a now pretty old ffmpeg, which doesn't recognise a lot of the newer options.

Here then is how to install weX on Slacko 5.6:

1. Install the following dotpets from the first post of this thread (be careful not to choose the wrong versions, but of course, use the latest if these have since been upgraded...):

wex-0.8.17.pet
weav-9.1.0.pet
scrox-0.8-17_32bit.pet

2. Start up Puppy Package Manager and search for giblib (which, along with its dependencies, is needed by scrox above). Note that you need to 'Search all repositories'. You should find file giblib-1.2.4 from slackware-14.0-salix, which proved to be enough for scrox needs in weX at least.

Choose to install that file, giblib-1.2.4 but use PPM method 'Examine dependencies' (i.e. press that button) because you should also fetch the associated imlib2 dependencies (i.e. once Imlib2 details also shown press: button "Download and install selected packages"). NOTE that I had a bit trouble getting PPM to fetch both giblib and the Imlib2 dependencies. I'm not sure why, but I managed in the end...

3. For older ffmpeg ONLY (as used in Slacko 5.6) you will need to also swap the default audio_in.plug and video_in.plug plugin files provided in weX installation (in /root/.wex/plugins/) by the following modified versions attached. DO NOT MAKE THE FOLLOWING CHANGE IF YOU ARE USING NEWER OS WITH NEWER FFMPEG!

However, to make this change you need to run weX for a second so the folder /root/.wex is generated for the first time. Then close weX and download the following two plugins to /root/.wex/plugins/ directory (REMEMBER, ONLY DO THIS FOR OLDER FFMPEG Pups such as Slacko 5.6).

That's it, weX should now be working reasonably well in Slacko 5.6 (though will depend if your computer has good enough specs - this was tested on machine with Core II Duo 2.1 MHz cpu with 2GB RAM).

William

EDIT: Please note that my advice would still be that it would be better to install a newer ffmpeg on your system, for better performance (including embedded webcam capability) and not have to use these modified plugins.
Attachments
video_in.plug.tar
Remove dummy .tar and place in /root/.wex/plugins folder
For older Pups with older ffmpegs ONLY
(1.86 KiB) Downloaded 262 times
audio_in.plug.tar
Remove dummy .tar and place in /root/.wex/plugins folder
For older Pups with older ffmpegs ONLY
(1.3 KiB) Downloaded 262 times
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

#20 Post by mcewanw »

fredx181 wrote: Then again did a screencast with 'Area' while only audio playing (with gnome-mplayer) and it's ok:
https://googledrive.com/host/0ByBgCDlZZ ... -audio.mkv
...
Fred
Hey, that one gave me a problem cos I'm now over-relaxed to the point of being hypnotised by that audio track you recorded!!! :-)

William
github mcewanw

Post Reply