I have tried to add a plunging to the "libtheora-1.0beta2" (network
bandwidth measuring component was added) and Got it success for some far<br><br>now the problem is when it is added the encoding process get extremely slow (around 20 seconds delay). <br>
<br>I think that the problem is with my modified Makefile (some flag may have missed). <br><br>the following is my modified Makefile.am which is in the &quot;libtheora-1.0beta2/lib&quot; directory.<br><br>******************************<div id="1flp" class="ArwC7c ckChnd">
*********************************************************<br>
<br><span style="color: rgb(0, 102, 0);">DEFS &nbsp;&nbsp;&nbsp; = -DLINUX -DRETSIGTYPE=void -DHAVE_SIGACTION=1</span><br style="color: rgb(0, 102, 0);"><span style="color: rgb(0, 102, 0);">LIBS &nbsp;&nbsp;&nbsp; = -lpthread </span><br style="color: rgb(0, 102, 0);">

<span style="color: rgb(0, 102, 0);">INCS &nbsp;&nbsp;&nbsp; = -I. </span><br><br><br>INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/lib/dec -I$(top_srcdir)/lib/enc<br><br>EXTRA_DIST = \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32/dct_decode_mmx.c \<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32/dsp_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32/dsp_mmxext.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32/recon_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32/fdct_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32/idct_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_64/dsp_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_64/dsp_mmxext.c \<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_64/recon_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_64/fdct_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_64/idct_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32_vs/dsp_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32_vs/fdct_mmx.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/x86_32_vs/recon_mmx.c \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/dct_encode.c \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/encode.c \<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enc/encoder_toplevel.c<br><br>lib_LTLIBRARIES = <a href="http://libtheora.la/" target="_blank">libtheora.la</a><br><br>if THEORA_DISABLE_ENCODE<br>encoder_sources = \<br>&nbsp;&nbsp;&nbsp; enc/encoder_disabled.c<br>
else<br>
encoder_sources = \<br>&nbsp;&nbsp;&nbsp; enc/dct_encode.c \<br>&nbsp;&nbsp;&nbsp; enc/encode.c \<br>&nbsp;&nbsp;&nbsp; enc/encoder_huffman.c \<br>&nbsp;&nbsp;&nbsp; enc/encoder_idct.c \<br>&nbsp;&nbsp;&nbsp; enc/encoder_toplevel.c \<br><span style="color: rgb(0, 102, 0);">&nbsp;&nbsp;&nbsp; ../net/nbs_client.c \</span><br style="color: rgb(0, 102, 0);">

<span style="color: rgb(0, 102, 0);">&nbsp;&nbsp;&nbsp; ../net/nbs_setsignal.c \</span><br>&nbsp;&nbsp;&nbsp; enc/encoder_quant.c \<br>&nbsp;&nbsp;&nbsp; enc/blockmap.c \<br>&nbsp;&nbsp;&nbsp; enc/common.c \<br>&nbsp;&nbsp;&nbsp; enc/dct.c \<br>&nbsp;&nbsp;&nbsp; enc/dct_decode.c \<br>&nbsp;&nbsp;&nbsp; enc/frarray.c \<br>&nbsp;&nbsp;&nbsp; enc/frinit.c \<br>

&nbsp;&nbsp;&nbsp; enc/mcomp.c \<br>&nbsp;&nbsp;&nbsp; enc/misc_common.c \<br>&nbsp;&nbsp;&nbsp; enc/pb.c \<br>&nbsp;&nbsp;&nbsp; enc/pp.c \<br>&nbsp;&nbsp;&nbsp; enc/reconstruct.c \<br>&nbsp;&nbsp;&nbsp; enc/scan.c \<br>&nbsp;&nbsp;&nbsp; enc/dsp.c<br>&nbsp;&nbsp;&nbsp; <br>if CPU_x86_64<br>enc_arch_dir = enc/x86_64<br>encoder_arch_sources= \<br>

&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/dct_decode_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/dsp_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/dsp_mmxext.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/recon_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/idct_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/fdct_mmx.c<br>

else<br>if CPU_x86_32<br>enc_arch_dir = enc/x86_32<br>encoder_arch_sources= \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/dct_decode_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/dsp_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/dsp_mmxext.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/recon_mmx.c \<br>

&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/idct_mmx.c \<br>&nbsp;&nbsp;&nbsp; $(enc_arch_dir)/fdct_mmx.c<br>endif<br>endif<br><br>endif<br><br>decoder_sources = \<br>&nbsp;&nbsp;&nbsp; dec/apiwrapper.c \<br>&nbsp;&nbsp;&nbsp; dec/decapiwrapper.c \<br>&nbsp;&nbsp;&nbsp; dec/decinfo.c \<br>&nbsp;&nbsp;&nbsp; dec/decode.c \<br>

&nbsp;&nbsp;&nbsp; dec/dequant.c \<br>&nbsp;&nbsp;&nbsp; dec/fragment.c \<br>&nbsp;&nbsp;&nbsp; dec/huffdec.c \<br>&nbsp;&nbsp;&nbsp; dec/idct.c \<br>&nbsp;&nbsp;&nbsp; dec/info.c \<br>&nbsp;&nbsp;&nbsp; dec/internal.c \<br>&nbsp;&nbsp;&nbsp; dec/quant.c \<br>&nbsp;&nbsp;&nbsp; dec/state.c<br><br>if CPU_x86_64<br>decoder_x86_sources = \<br>

&nbsp;&nbsp;&nbsp; dec/x86/mmxidct.c \<br>&nbsp;&nbsp;&nbsp; dec/x86/mmxfrag.c \<br>&nbsp;&nbsp;&nbsp; dec/x86/mmxstate.c \<br>&nbsp;&nbsp;&nbsp; dec/x86/x86state.c<br>else<br>if CPU_x86_32<br>decoder_x86_sources = \<br>&nbsp;&nbsp;&nbsp; dec/x86/mmxidct.c \<br>&nbsp;&nbsp;&nbsp; dec/x86/mmxfrag.c \<br>&nbsp;&nbsp;&nbsp; dec/x86/mmxstate.c \<br>

&nbsp;&nbsp;&nbsp; dec/x86/x86state.c<br>endif<br>endif<br><br>libtheora_la_SOURCES = \<br>&nbsp; cpu.c \<br>&nbsp;&nbsp;&nbsp; $(decoder_x86_sources) \<br>&nbsp;&nbsp;&nbsp; $(decoder_sources) \<br>&nbsp;&nbsp;&nbsp; $(encoder_arch_sources) \<br>&nbsp;&nbsp;&nbsp; $(encoder_sources) \<br>&nbsp; Version_script<br>

<br>noinst_HEADERS = \<br>&nbsp;&nbsp;&nbsp; cpu.h \<br>&nbsp;&nbsp;&nbsp; internal.h \<br>&nbsp;&nbsp;&nbsp; enc/block_inline.h \<br>&nbsp;&nbsp;&nbsp; enc/codec_internal.h \<br>&nbsp;&nbsp;&nbsp; enc/encoder_lookup.h \<br>&nbsp;&nbsp;&nbsp; enc/encoder_huffman.h \<br>&nbsp;&nbsp;&nbsp; enc/hufftables.h \<br>&nbsp;&nbsp;&nbsp; enc/pp.h \<br>

&nbsp;&nbsp;&nbsp; enc/quant_lookup.h \<br>&nbsp;&nbsp;&nbsp; enc/toplevel_lookup.h \<br>&nbsp;&nbsp;&nbsp; enc/dsp.h \<br>&nbsp;&nbsp;&nbsp; dec/apiwrapper.h \<br>&nbsp;&nbsp;&nbsp; dec/dct.h \<br>&nbsp;&nbsp;&nbsp; dec/decint.h \<br>&nbsp;&nbsp;&nbsp; dec/dequant.h \<br>&nbsp;&nbsp;&nbsp; dec/enquant.h \<br>&nbsp;&nbsp;&nbsp; dec/huffdec.h \<br>&nbsp;&nbsp;&nbsp; dec/huffman.h \<br>

&nbsp;&nbsp;&nbsp; dec/idct.h \<br>&nbsp;&nbsp;&nbsp; dec/ocintrin.h \<br>&nbsp;&nbsp;&nbsp; dec/quant.h \<br>&nbsp;&nbsp;&nbsp; dec/x86/x86int.h<br>&nbsp;&nbsp;&nbsp; <br><span style="color: rgb(0, 102, 0);">CFLAGS = -g -Wall $(DEFS) $(INCS)</span><br><br><br>libtheora_la_CFLAGS = $(OGG_CFLAGS)<br>

libtheora_la_LDFLAGS = -version-info @TH_LIB_CURRENT@:@TH_LIB_REVISION@:@TH_LIB_AGE@ @THEORA_LDFLAGS@<br>libtheora_la_LIBADD = $(OGG_LIBS) <span style="color: rgb(0, 102, 0);">$(LIBS)</span><br><br>debug:<br>&nbsp;&nbsp;&nbsp; $(MAKE) all CFLAGS=&quot;@DEBUG@&quot; LDFLAGS=&quot;-lefence&quot;<br>

<br>profile:<br>&nbsp;&nbsp;&nbsp; $(MAKE) all CFLAGS=&quot;@PROFILE@&quot;<br><br>***************************************************************************************<br><br>the green color lines are newly added or modified by me.<br>
<br>As a solution I used gcc optimization options also (<span style="color: rgb(0, 102, 0);">CFLAGS = -<span style="color: rgb(255, 0, 0);">O2</span> -Wall $(DEFS) $(INCS)</span>) <br>In this case I got some problelmes with not working some threads as I expected.<br>
<br>I think there is a way to chage this makefile to work properly but unfortunately I have not do it.<br>
<br>please can anyone help me to find what the wrong with me.<br><br>if
the information provided with this mail is not enough to decide what is
the error, please inform me what are the additional things should I
provides. <br clear="all">
</div><br clear="all"><br>-- <br>Regards,<br>R. P. Janaka