05-07-2014 06:12 PM
hello,
after install Xillinux on ZedBoard, i want to run MJPEG decoder on this paltform
1- i can't found a source code of MJPEG ( serial and paralell version ), just i found MJPEG Streamer ( i try to run it on Zedboard, because i saw other user, have succefully this example )
2- have any one, idea or tried to run one thread of MJPEG ( parallel version ), using the PS and PL ( FPGA )
in other way, there is any dicumentation abut affecting thread to processor ( ARM in this case ), or to PL ?
thank you for your help
05-08-2014 01:16 PM
05-08-2014 06:46 AM
update :
i readed all this discussion, really it's so nice to found people like you, answer on question, and try to foudn solution for people like us :)
i have a project : run MJPEG on ZedBoard ( i use Xillinux ( based on Ubuntu 12.04) as an OS with SMP )
i have the code source of MJPEg in 2 version ( serial and parallel )
1- have idea how, can i run or affect the .c fite to run just on the first CPU ( no problem CPU0 or CPU1), just i need to run this application on single CPU
2- the second version of MJPEG is parrelel, have you any idea, or previous example, where can we affect or run one thread on the PL , ( i didn't found any documentation about this )
also, i readed some other post similare to my question, one of its on this link
the following picture, show activities of the PS ( 2 ARM )
thank you
05-08-2014 07:03 AM
05-08-2014 08:58 AM
hello,
thank you for your response
1- for the affinity, i found this post on forum, they talk about FreeOS, in my case i have Xillinux ( ubuntu), it's possible de make this manipulation on OS like ubuntu ?
2- " convert", i don't think it's convert, i watcha demo from Avnet on ZedBoard, they try the OpenCv on Zynq, and they make a migration of some fonctionnality to PL ( check the follow video )
thank you
05-08-2014 10:48 AM
05-08-2014 12:00 PM
hello,
thank you for your time to response,
no problem for OpenCv, just i try to run it on ZedBoard,
for the use of a single processor, it's a recommandation of my responsible, i also, use Xillinux as an OS, after this step, i try th afinity method
but i still can't found the source code of MJPEG or JPEG compatible for ARM architutre ( i found this but it's only for x86, i meet a problem in build, because it's for x86 )
05-08-2014 01:16 PM
05-09-2014 06:39 PM
hello
thank you , it's work, i get the source code of the last version of jpeg ( encoder and decoder )
i run it on ZYNQ and it's work :)
i begin to write a script to run djpeg on one CPU , usign the affinity proce
for the MJPEG, i think it's the same code, juste in the place of picture input, i will use a video file, ( because jpeg compatible with mpeg extenssion video file, or i will try to add some line code to accept video format as an input
BUT, i retur to my board, ( i delete the folder whitch cantain the extrct files ), i try tar -xvf jpegsrc.v9a.tar.gz ( again ), next i try make, make install, ./configure , but no positive result :( , i can't found a reason , ( in the begin, it's work fine, with djpeg and cjpeg executable file, even i try some example ,and it's work
please, can you check this problem
thank you
05-10-2014 05:43 AM
05-10-2014 06:48 AM
hello rfs613,
thank you so much, you are really a super contributor ;)
for me you are a general in Embedded Force Army :)
have a nice day
05-10-2014 04:30 PM
hello,
i try to use the taskset, but it's so dificult, because i can't get the PID of a task whitch isn't created yet :( , so i try other method, i just disactivate the second CPU :)
check this method ( so simple )
05-11-2014 07:21 AM
05-11-2014 09:05 AM
hello,
i tried to run ,
taskset -p 03 ./djpeg outfile sourcefile
but i get error :
taskset : failed to parse pid : ' sourcefile ' ,
i think taskset, can't support an execution command
thank you
05-11-2014 09:10 AM
If you tell it to work with a PID, it requires a PID... Leave out the '-p'.
05-11-2014 09:13 AM
05-11-2014 10:32 AM
hello
same thing, i try your suggestion
05-12-2014 05:42 PM
hello,
any suggestion, about taskset , please can you check my last screenshut
i can't found the correct syntax of taskset, ( i tried taskset -help ) , but i can't found how can i runa command on cpu1
thank you
05-12-2014 06:26 PM
05-12-2014 06:29 PM
05-13-2014 05:45 AM
hello,
it's work, thank you :)
taskset 0x02 ./djpeg -outfile ./path/outputfile ./path/inputfile ( this command work on terminal ) :)
but when i tried to use this command into script ( script.sh ) , i tried to run this command inti for ( loop ), for 50 loop ( as an example ) , i discovred that both of CPU, execute together this traitement, whitch mean ( taskset don't relly affect or force the traitment on signle processor, check the folowing picture (, look to CPU1 and CPU2 activities ), even when i use a simple commad without script ( i saw that 2 CPU run in the same time), bu to make sure if really those CPU work together , i use a script to run 50 repeated command
the JPEG decoder still 20 seconds to run the decode of 50 image in JPG format
thank you
05-13-2014 05:30 PM
09-08-2017 03:00 AM
Excuse me guys, this thread seems to be MJPEG related right? I also have a related question. Recently, I got a video of MJPEG from someone else and it was from a cam i think. I could not open it with our common players like Windows Media Player and VLC. Then, I find a converter in the article "http://www.videoconverterfactory.com/tips/mjpeg-converter.html". But here are the questions. I want to convert it to MP4, but I do not know how I can set the parameters. There are bit rate, resolution and frame rate. I want to know whether the higher bit rate and resolution I set, the better output it will be? What is the difference between bit rate and resolution? I cannot figure it out by googling. Another question is should I choose MPEG4 or H264 as the output format, which one is better?