Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Mon 25 Jul 2016, 18:12
All times are UTC - 4
 Forum index » Advanced Topics » Additional Software (PETs, n' stuff) » Multimedia
sneak preview of ddogxcap
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 1 [12 Posts]  
Author Message
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Fri 22 Jul 2016, 09:32    Post subject:  sneak preview of ddogxcap
Subject description: with guest appearance of the scrotx (fork of scrot)
 

Sneak preview Youtube video of debiandog screencast application, ddogxcap in action. Hope I've uploaded the video successfully and that the link to it works okay:

https://youtu.be/D4vzoAl-p5c

William

_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork
Back to top
View user's profile Send private message Visit poster's website 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Fri 22 Jul 2016, 09:32    Post subject:  

reserved for details following any public release
_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork

Last edited by mcewanw on Fri 22 Jul 2016, 10:06; edited 1 time in total
Back to top
View user's profile Send private message Visit poster's website 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Fri 22 Jul 2016, 09:33    Post subject:  

reserved for details
_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork
Back to top
View user's profile Send private message Visit poster's website 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Fri 22 Jul 2016, 09:33    Post subject:  

reserved for details
_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork
Back to top
View user's profile Send private message Visit poster's website 
smokey01


Joined: 30 Dec 2006
Posts: 2300
Location: South Australia

PostPosted: Fri 22 Jul 2016, 18:09    Post subject:  

Looks great. I really like the video overlay. Looking foward to taking it for a spin. Simple, clean and functional.
Good job.

_________________
Puppy Software <-> Distros <-> Puppy Linux Tips
Back to top
View user's profile Send private message Visit poster's website 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Fri 22 Jul 2016, 18:15    Post subject:  

http://www.murga-linux.com/puppy/viewtopic.php?p=914329#914329

fredx181 wrote:
Hi William,

So that's you on a ship presenting your screencast program.. very original :)

If you could save Toni from the sharks, first give him a little rest of course, but then the next day punish him for his misbehavior by letting him scrub the deck :wink:
(but I might be referring at the wrong Toni..., excuse me then for misunderstanding,, punish me, I will climb the mast!)

Looking forward to test your program, please give some explanation how you configure the program to show yourself in the bottom right corner.
(although I don't have a webcam at this moment I (and maybe others) like to know how to do it)

Fred


Hi Fred,

Yes, I was referring to Toni (aka saintless) and yourself using him as an excuse to sneak out of the far below deck developers' boiler room - though you may actually just have been throwing up over the side of the ship of course, or sneaking up for a Martini with your friend Pelo.

As for the webcam embedded in the uploaded video - that's just an extra video stream which the underlying ffmpeg/avconv program combines with the Xgrab if you select it to do so. If you look near the bottom of the video you should see three checkboxes: one for audio, one for X11grab video and one for webcam - you just click whichever you wish included. You can change the size of the webcam image to as full or tiny as you wish (there is an input box for webcam image width in pixels). The whole video can be scaled to half or lower resolution of course (another input box).

As with Precord/pAVrecord all settings are persistent for next use, so the small gui is all that is needed for general use (once it is configured to the users' liking - though the default settings should just work fine on computers with suitable specs anyway. Might not perform so well on computers with lower specs than my test machine, which is nine years old, and has 2GHz Intel Core-II duo processor and 2GB RAM. I didn't use cpufreq-set to put my computer into 'performance' mode - but that may be help - mine was just left in ondemand mode throughout the capture).

Assuming the computer has ffmpeg or avconv included, ddogxcap can therefore also pretty much replace Precord for simply recording audio streams: mp3, ogg or m4a (being aac encoded) and replaces pAVrecord for simple webcam video recording. Of course, ddogxcap (like pAVrecord before it) derives from Precord code anyway (though Precord was written to not need ffmpeg for mp3 files - Precord uses arecord | lame for that).

The fork of scrotx, by the way, includes the pretty-much untouched functionality of original scrot. So on my XenialDog system I have scrot replaced by scrotx (much the same binary size) and have a symlink called scrot pointing to scrotx.

ddogxcap can be run as a commandline app too, by the way (once earlier configured via main configure gui). That allows it to be autostarted in, for example, the background via say 'chron' (or via Pschedule, which is Puppy gui frontend for chron). It also includes a simple plugin facility so user can create, for example, their own video encoder part of the main ffmpeg/avconv command. One other reason I made it controllable from commandline is that I want to experiment with a 'motion capture' plugin I haven't yet written - though I may not bother with that since want to enjoy sunbathing on the deck beside the 'cruise-ship' bar...)

As for any release date - I'm in no hurry - still polishing up things (plenty of other screencast apps out there nowadays anyway). I'll maybe release it, as a welcome gift, once and if Toni climbs back on board to scrub the decks, which Pelo deserves to help him with. Mind you, ddogxcap won't work on what appears to be Toni's next debian-live-based offering since he is cutting out all the gtkdialog/yad crap - but he has a good idea, since doing so will make a nice clear core and the other stuff can be added in again later should it be wanted.

But anyway, perhaps the screencast app being developed on FatDog will be better, in which case I'll just leave Pelo to use that or SSR QT app instead.

William

_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork
Back to top
View user's profile Send private message Visit poster's website 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Fri 22 Jul 2016, 22:12    Post subject: Works fine in XenialPup but TahrPup ffmpeg a bit old
Subject description: using ddogxcap plugin system (simple example)
 

Just reporting that I have now tried ddogxcap on XenialPup too and it worked fine on that system, without any alterations whatsoever. I normally use it on XenialDog, on which I developed the program (XenialDog, which is a true Ubuntu-live compatible system, should not to be confused with XenialPup, which is a woof-CE Puppy). XenialPup has ffmpeg version 2.8.6.

I also quickly tried ddogxcap on TahrPup64, but the ffmpeg version 2.7 provided there is too old to allow option asyncts. However, I was able to get it basically working with that old ffmpeg simply by creating ddogxcap plugin file ~/.ddogxcap/audio_in.plug. That audio_in.plug is simply a txt file containing the following code:

Code:
   ffmpegFilter_Complex0=""
   ffmpegAudioIn0="-f $audiosystem -ac $channels_arecord -ar 44100 -i $plughw"


alternatively, for my system, I could simply use the following audio_in.plug instead:

Code:
   ffmpegFilter_Complex0=""
   ffmpegAudioIn0="-f alsa -ac 2 -ar 44100 -i plughw:0,0"


That's a good example of how plugins work in ddogxcap and how they could be easily implemented in other developers scripts. I find that the biggest problem with ffmpeg/avconv frontends is the moving target situation of older ffmpeg versions or ffmpeg/avconv compiles that have different encoders (especially for aac audio) enabled, but this simple ddogxcap plugin mechanism allows for easy mods without, most of the time, having to change the main ddogxcap program itself.

It is similarly a simple job to use, for example, a different video encoder to that provided in ddogxcap by default (via a similarly created vcodec_user1.plug or vcodec_user2.plug). They are just simple txt files to be put into ~/.ddogxcap containing simple ffmpeg command snippets like the above usually.

In this audio_in.plug case I simply did not include any reference to asyncts in the ffmpegFilter_Complex0 string. The above plugin code simply overrides the default code for that section in ddogxcap itself. Note that any such plugin files are all copied into /tmp storage during actual use, so are effectively being read from RAM (assuming /tmp is tmpfs in RAM, as is the case I believe in Puppy and also in DebianDog series).

I should add, that without that newer option 'asyncts' the audio and video streams do not synchronize (at least on my old machine), so I wouldn't say default ffmpeg in TahrPup is greatly usuable from that point of view (though of course, you can simply record the Xvideo stream and add audio later with a different program).

However, audio only stream recording does work well in TahrPup (with or without that audio_in.plug). Best nevertheless, would be to install a newer version of ffmpeg or libav (avconv) for TahrPup, though I prefer to avoid the issues altogether by using XenialPup or XenialDog (which has a suitable newer libav/ffmpeg squashfs available) or similar member of DebianDog family.

William

_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork
Back to top
View user's profile Send private message Visit poster's website 
fredx181

Joined: 11 Dec 2013
Posts: 1670
Location: holland

PostPosted: Sat 23 Jul 2016, 04:26    Post subject:  

William wrote:
Yes, I was referring to Toni (aka saintless) and yourself using him as an excuse to sneak out of the far below deck developers' boiler room


Ah, I'm in the movie too! Didn't catch that at first (adjusted my sound to low), anyway, thanks for having me! Cool

Thanks for the further info about your program.

Fred

_________________
Dog Linux website
Back to top
View user's profile Send private message 
step

Joined: 04 May 2012
Posts: 667

PostPosted: Sat 23 Jul 2016, 04:56    Post subject:  

It looks very complete, and quite polished already. I'm looking forward to a public release if you decide so. I will test it on Fatdog64. Thanks.
_________________
Fatdog64-702|+Packages|Findnrun|+forum|OpenMediaVault
Back to top
View user's profile Send private message 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Sat 23 Jul 2016, 07:10    Post subject:  

step wrote:
It looks very complete, and quite polished already. I'm looking forward to a public release if you decide so. I will test it on Fatdog64. Thanks.


Hi step,

I'm quite happy with it, but it's not perfect in terms of my own wishes (more wishes than needs!). I wish I could tap into the ffmpeg code itself to better implement pause functionality - simple STOP/CONT/TSTP ffmpeg process works well enough with audio but not well with video or mixed audio/video. I haven't any more sophisticated method as yet (and probably won't) but I'm still thinking about it. SSR program manages pause control very well, but that's 'easier' for SSR to do since able to more precisely control ffmpeg process threads since SSR is using C++. Otherwise I'm reasonably happy in terms of ease of use and performance.

It is possible (maybe?) I could write a small C utility, simply to better effect pause functionality, and use that as a go-between from my ddogxcap shell script, but far from trivial to implement that since I'd have to study ffmpeg code itself first, and I'm not convinced I want to spend so much effort now for that one single matter! Also, I wouldn't be surprised if ffmpeg (and avconv) didn't itself finally provide a good accessible pause mechanism - perhaps it already does(?) - though I don't think so. I certainly don't want to spend days trying and then a new ffmpeg comes out that provides the function anyway! So I guess ddogxcap will have to remain with that imperfection. The alternative of cutting up the recording into sections (each time there is a pause) and joining them back together again at the end is painful to me, so I doubt I will bother doing that either.

What would work for me would be to have a utility that removed parts of the output audio/video file based on gaps with silence in them (since the audio track pauses fine). Hoped to find such a utility via googling but haven't come across one as yet - the alternative is manual editing via something like Avidemux or Openshot, but would love it to be automatic and without using a large extra media-processing app. I do still have some job control options to examine though I'm not convinced that will work because of video stream buffers and timestamp issues - but maybe I'll get lucky.

William

_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork

Last edited by mcewanw on Sat 23 Jul 2016, 08:34; edited 2 times in total
Back to top
View user's profile Send private message Visit poster's website 
rufwoof


Joined: 24 Feb 2014
Posts: 1406
Location: UK

PostPosted: Sat 23 Jul 2016, 07:31    Post subject:  

Mic's certainly do pick up on the PC whirring noise (or was that the sound of the ships engines Smile). A trick I learned from one of Sneeky's vids was to use Audacity to clean up the sound track. Amplify or attenuate if too quiet/loud, and there's a noise filter where you can highlight/select a quiet bit of track (when you're not speaking) and apply that as a filter to the entire track i.e. exclude PC fan noise (in the case of the fan speeding up however as per your vid, I guess you'd have to apply noise filters for two different background noise samples). Openshot is good for editing the vid, especially if you add in Blender and full blown inkscape (the puppy cut down version doesn't work properly with Openshot) as they they enable you to add in the likes of animated 3D titles, scrolling titles etc.
Back to top
View user's profile Send private message 
mcewanw

Joined: 16 Aug 2007
Posts: 2839
Location: New Zealand

PostPosted: Sat 23 Jul 2016, 08:30    Post subject:  

Yes, av processing is always a good extra, but not building that into the capture app itself. The mic used in the test was the laptop internal so picks up every whir indeed! Simply using an external mic usually works reasonably well.

William

_________________
SomeOfMyWork: pAVrecord Precord Premote DoMyFile DoMyCommand fokSyfEyeR xhippo-mod flite_hts_pet Pfetch WIAKAPPS Pcreole DebMintDogDevWork
Back to top
View user's profile Send private message Visit poster's website 
Display posts from previous:   Sort by:   
Page 1 of 1 [12 Posts]  
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Advanced Topics » Additional Software (PETs, n' stuff) » Multimedia
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1056s ][ Queries: 11 (0.0064s) ][ GZIP on ]