Re: Seperating Multiple processes




 
Some follow up on this. If you are starting a separate process to run your transcoding you need to use an 
async version of your run_cmd(). Otherwise the program will wait until the function returns and bind up the 
main glib thread if the function takes a while. This might be the easiest way to do this but may not give you 
very good control of the running process or processes. If you want to have more control of the transcoding 
work you can run the work in a thread pool within your program. This is more difficult to put together. In 
Perl there is a reference I found here

http://www.perlmonks.org/?node_id=735923

I don't have experience mixing Glib with Perl threads. Mostly work in C so it is a little different than 
using Perl. 

How are you working with your video files? The GStreamer library has a lot of audio/video functionality that 
is accessible from the command line or in code. I have been testing some code playing sounds with several 
different methods from the command line to a thread pool. It is in C but the ideas are going to be the same 
as in Perl. The gstreamer_test1.c has some basic glib spawn from the command line type functions and 
gstreamer_test2.c is putting together a pool of sounds to play all at once. Command line easy, thread pools 
hard. 

https://github.com/cecashon/OrderedSetVelociRaptor/tree/master/Misc/Sound

Hope it is of some help.

Eric


 

 





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]