diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2004-02-13 17:54:10 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2004-02-13 17:54:10 +0000 |
commit | 9c3d33d67f2260d5ddc888e8ea380c3913e38a72 (patch) | |
tree | 46c82202d3f7c2964f7cace9e1131e97ada124bb /tests/regression.sh | |
parent | 7984082a08cf2119da3433c245b72a91020b879d (diff) | |
download | ffmpeg-9c3d33d67f2260d5ddc888e8ea380c3913e38a72.tar.gz |
multithreaded/SMP motion estimation
multithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263
all pthread specific code is in pthread.c
to try it, run configure --enable-pthreads and ffmpeg ... -threads <num>
the internal thread API is a simple AVCodecContext.execute() callback which executes a given function pointer with different arguments and returns after finishing all, that way no mutexes or other thread-mess is needed outside pthread.c
Originally committed as revision 2772 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'tests/regression.sh')
-rwxr-xr-x | tests/regression.sh | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/tests/regression.sh b/tests/regression.sh index d7883136e9..69e8a849cb 100755 --- a/tests/regression.sh +++ b/tests/regression.sh @@ -33,6 +33,7 @@ elif [ "$1" = "libavtest" ] ; then else do_mpeg=y do_mpeg2=y + do_mpeg2thread=y do_msmpeg4v2=y do_msmpeg4=y do_wmv1=y @@ -51,6 +52,7 @@ else do_adpcm_ms=y do_rc=y do_mpeg4adv=y + do_mpeg4thread=y do_mpeg4nr=y do_mpeg1b=y do_asv1=y @@ -149,6 +151,16 @@ do_ffmpeg $raw_dst -y -i $file -f rawvideo $raw_dst fi ################################### +if [ -n "$do_mpeg2thread" ] ; then +# mpeg2 encoding interlaced +file=${outfile}mpeg2thread.mpg +do_ffmpeg $file -y -qscale 10 -f pgmyuv -i $raw_src -vcodec mpeg2video -f mpeg1video -bf 2 -ildct -ilme -threads 2 $file + +# mpeg2 decoding +do_ffmpeg $raw_dst -y -i $file -f rawvideo $raw_dst +fi + +################################### if [ -n "$do_msmpeg4v2" ] ; then # msmpeg4 encoding file=${outfile}msmpeg4v2.avi @@ -249,6 +261,16 @@ do_ffmpeg $raw_dst -y -i $file -f rawvideo $raw_dst fi ################################### +if [ -n "$do_mpeg4thread" ] ; then +# mpeg4 +file=${outfile}mpeg4-thread.avi +do_ffmpeg $file -y -b 500 -4mv -hq -part -ps 200 -aic -trell -bf 2 -f pgmyuv -i $raw_src -an -vcodec mpeg4 -threads 2 $file + +# mpeg4 decoding +do_ffmpeg $raw_dst -y -i $file -f rawvideo $raw_dst +fi + +################################### if [ -n "$do_error" ] ; then # damaged mpeg4 file=${outfile}error-mpeg4-adv.avi @@ -261,7 +283,7 @@ fi ################################### if [ -n "$do_mpeg4nr" ] ; then # noise reduction -file=${outfile}error-mpeg4-nr.avi +file=${outfile}mpeg4-nr.avi do_ffmpeg $file -y -qscale 8 -4mv -mbd 2 -nr 200 -f pgmyuv -i $raw_src -an -vcodec mpeg4 $file # mpeg4 decoding |