diff --git a/.cproject b/.cproject new file mode 100644 index 0000000000000000000000000000000000000000..4229ae84471be582ab06613c2ec5a4ad295e75db --- /dev/null +++ b/.cproject @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?> + +<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> + <storageModule moduleId="org.eclipse.cdt.core.settings"> + <cconfiguration id="0.176448098"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.176448098" moduleId="org.eclipse.cdt.core.settings" name="Default"> + <externalSettings/> + <extensions> + <extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactName="${ProjName}" buildProperties="" description="" id="0.176448098" name="Default" parent="org.eclipse.cdt.build.core.prefbase.cfg"> + <folderInfo id="0.176448098." name="/" resourcePath=""> + <toolChain id="cdt.managedbuild.toolchain.gnu.macosx.base.802562619" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.base"> + <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.MachO64" id="cdt.managedbuild.target.gnu.platform.macosx.base.1721041331" name="Debug Platform" osList="macosx" superClass="cdt.managedbuild.target.gnu.platform.macosx.base"/> + <builder arguments="CFLAGS="-g -m32"" command="make" id="cdt.managedbuild.target.gnu.builder.macosx.base.1320688577" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.base"/> + <tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.base.1446088335" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.base"> + <inputType id="cdt.managedbuild.tool.macosx.c.linker.input.217465506" superClass="cdt.managedbuild.tool.macosx.c.linker.input"> + <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> + <additionalInput kind="additionalinput" paths="$(LIBS)"/> + </inputType> + </tool> + <tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.base.1558105738" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.base"/> + <tool id="cdt.managedbuild.tool.gnu.assembler.macosx.base.421975554" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.base"> + <inputType id="cdt.managedbuild.tool.gnu.assembler.input.360567039" superClass="cdt.managedbuild.tool.gnu.assembler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.1639679087" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/> + <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.base.1401593352" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.base"/> + <tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.base.1973640523" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.base"> + <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1596178168" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/> + </tool> + </toolChain> + </folderInfo> + <sourceEntries> + <entry excluding="src/audiofilters|src/videofilters|src/base" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> + <entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="src/audiofilters"/> + <entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="src/base"/> + <entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="src/videofilters"/> + </sourceEntries> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <project id="mediastreamer2.null.349728529" name="mediastreamer2"/> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"> + <buildTargets> + <target name="all" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder"> + <buildCommand>make</buildCommand> + <buildArguments/> + <buildTarget>all</buildTarget> + <stopOnError>true</stopOnError> + <useDefaultCommand>true</useDefaultCommand> + <runAllBuilders>true</runAllBuilders> + </target> + </buildTargets> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> + <storageModule moduleId="refreshScope" versionNumber="2"> + <configuration configurationName="Default"> + <resource resourceType="PROJECT" workspacePath="/mediastreamer2"/> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> + <storageModule moduleId="scannerConfiguration"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> + <scannerConfigBuildInfo instanceId="0.176448098"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> + </scannerConfigBuildInfo> + <scannerConfigBuildInfo instanceId="0.176448098;0.176448098.;cdt.managedbuild.tool.gnu.c.compiler.macosx.base.1973640523;cdt.managedbuild.tool.gnu.c.compiler.input.1596178168"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> + </scannerConfigBuildInfo> + </storageModule> +</cproject> diff --git a/.project b/.project new file mode 100644 index 0000000000000000000000000000000000000000..47b9ef834ab8151f6a33c2007874d061dedf95f5 --- /dev/null +++ b/.project @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>mediastreamer2</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <triggers>clean,full,incremental,</triggers> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> + <triggers>full,incremental,</triggers> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> + </natures> +</projectDescription> diff --git a/src/videofilters/pixconv.c b/src/videofilters/pixconv.c index 1dafa245f922e9807ef9d841c663cdb2827c16b2..6ca147dcfa2fe8c037fb5ff971d33dc77ce24e26 100644 --- a/src/videofilters/pixconv.c +++ b/src/videofilters/pixconv.c @@ -33,6 +33,7 @@ typedef struct PixConvState{ MSVideoSize size; MSPixFmt in_fmt; MSPixFmt out_fmt; + size_t number_of_allocated_yuv_buf; }PixConvState; static void pixconv_init(MSFilter *f){ @@ -43,6 +44,7 @@ static void pixconv_init(MSFilter *f){ s->in_fmt=MS_YUV420P; s->out_fmt=MS_YUV420P; s->scaler=NULL; + s->number_of_allocated_yuv_buf=0; f->data=s; } @@ -53,6 +55,8 @@ static void pixconv_uninit(MSFilter *f){ s->scaler=NULL; } if (s->yuv_msg!=NULL) freemsg(s->yuv_msg); + if (s->number_of_allocated_yuv_buf>1) + ms_warning("Pixconf allocated [%lu] yuv buff",s->number_of_allocated_yuv_buf); ms_free(s); } @@ -63,12 +67,14 @@ static mblk_t * pixconv_alloc_mblk(PixConvState *s){ return dupmsg(s->yuv_msg); }else{ /*the last msg is still referenced by somebody else*/ - ms_message("Somebody still retaining yuv buffer (ref=%i)",ref); + /*ms_message("Somebody still retaining yuv buffer (ref=%i)",ref); + * seems to be the default situation at least on macosx, removing traces*/ freemsg(s->yuv_msg); s->yuv_msg=NULL; } } s->yuv_msg=ms_yuv_buf_alloc(&s->outbuf,s->size.width,s->size.height); + s->number_of_allocated_yuv_buf++; return dupmsg(s->yuv_msg); } diff --git a/src/videofilters/qtcapture.m b/src/videofilters/qtcapture.m index fa59b346d89a519fcb637c96311acbcc90ca79c3..010d3a798c34aecc14d882bc58ce08f298156677 100644 --- a/src/videofilters/qtcapture.m +++ b/src/videofilters/qtcapture.m @@ -57,7 +57,7 @@ static MSPixFmt ostype_to_pix_fmt(OSType pixelFormat, bool printFmtName){ if (printFmtName) ms_message("FORMAT = MS_RGB24"); return MS_RGB24; default: - if (printFmtName) ms_message("Format unknown: %i", (UInt32) pixelFormat); + if (printFmtName) ms_message("Format unknown: %ui", (unsigned int) pixelFormat); return MS_PIX_FMT_UNKNOWN; } }