shithub: openh264

Download patch

ref: ad209c2d148afd826032cefdfcb2925df548f096
parent: bf9a78085eabddbfe7ec9b975245fb96a26a9f7e
author: Martin Storsjö <martin@martin.st>
date: Sat Feb 8 14:43:13 EST 2014

Move declarations of functions in expand_picture.asm into a header in common

--- a/codec/build/win32/dec/WelsDecCore.vcproj
+++ b/codec/build/win32/dec/WelsDecCore.vcproj
@@ -778,6 +778,10 @@
 					>
 				</File>
 				<File
+					RelativePath="..\..\..\common\expand_picture_common.h"
+					>
+				</File>
+				<File
 					RelativePath="..\..\..\decoder\core\inc\fmo.h"
 					>
 				</File>
--- a/codec/build/win32/enc/WelsEncCore.vcproj
+++ b/codec/build/win32/enc/WelsEncCore.vcproj
@@ -1485,6 +1485,10 @@
 				>
 			</File>
 			<File
+				RelativePath="..\..\..\common\expand_picture_common.h"
+				>
+			</File>
+			<File
 				RelativePath="..\..\..\encoder\core\inc\extern.h"
 				>
 			</File>
--- /dev/null
+++ b/codec/common/expand_picture_common.h
@@ -1,0 +1,68 @@
+/*!
+ * \copy
+ *     Copyright (c)  2009-2013, Cisco Systems
+ *     All rights reserved.
+ *
+ *     Redistribution and use in source and binary forms, with or without
+ *     modification, are permitted provided that the following conditions
+ *     are met:
+ *
+ *        * Redistributions of source code must retain the above copyright
+ *          notice, this list of conditions and the following disclaimer.
+ *
+ *        * Redistributions in binary form must reproduce the above copyright
+ *          notice, this list of conditions and the following disclaimer in
+ *          the documentation and/or other materials provided with the
+ *          distribution.
+ *
+ *     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *     "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *     LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ *     FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ *     COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ *     INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ *     BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ *     LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ *     CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ *     LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ *     ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ *     POSSIBILITY OF SUCH DAMAGE.
+ *
+ *
+ * \file		expand_pic.h
+ *
+ * \brief		Interface for expanding reconstructed picture to be used for reference
+ *
+ * \date		06/08/2009
+ *************************************************************************************
+ */
+
+#ifndef EXPAND_PICTURE_COMMON_H
+#define EXPAND_PICTURE_COMMON_H
+
+#include "typedefs.h"
+
+#if defined(__cplusplus)
+extern "C" {
+#endif//__cplusplus
+
+#if defined(X86_ASM)
+void ExpandPictureLuma_sse2 (uint8_t* pDst,
+                             const int32_t kiStride,
+                             const int32_t kiPicW,
+                             const int32_t kiPicH);
+void ExpandPictureChromaAlign_sse2 (uint8_t* pDst,
+                                    const int32_t kiStride,
+                                    const int32_t kiPicW,
+                                    const int32_t kiPicH);
+void ExpandPictureChromaUnalign_sse2 (uint8_t* pDst,
+                                      const int32_t kiStride,
+                                      const int32_t kiPicW,
+                                      const int32_t kiPicH);
+#endif//X86_ASM
+
+#if defined(__cplusplus)
+}
+#endif//__cplusplus
+
+#endif
--- a/codec/decoder/core/inc/expand_pic.h
+++ b/codec/decoder/core/inc/expand_pic.h
@@ -43,35 +43,13 @@
 #include "decoder_context.h"
 #include "picture.h"
 
+#include "expand_picture_common.h"
+
 namespace WelsDec {
 
 void_t ExpandReferencingPicture (PPicture pPic, PExpandPictureFunc pExpandPictureLuma,
                                  PExpandPictureFunc pExpandPictureChroma[2]);
 
-#if defined(__cplusplus)
-extern "C" {
-#endif//__cplusplus
-
-#if defined(X86_ASM)
-void_t ExpandPictureLuma_sse2 (uint8_t* pDst,
-                               const int32_t kiStride,
-                               const int32_t kiPicWidth,
-                               const int32_t kiPicHeight);
-void_t ExpandPictureChromaAlign_sse2 (uint8_t* pDst,
-                                      const int32_t kiStride,
-                                      const int32_t kiPicWidth,
-                                      const int32_t kiPicHeight);
-void_t ExpandPictureChromaUnalign_sse2 (uint8_t* pDst,
-                                        const int32_t kiStride,
-                                        const int32_t kiPicWidth,
-                                        const int32_t kiPicHeight);
-#endif//X86_ASM
-
-#if defined(__cplusplus)
-}
-#endif//__cplusplus
-
-//
 void_t InitExpandPictureFunc (SExpandPicFunc* pExpandPicFunc, const uint32_t kuiCpuFlags);
 
 } // namespace WelsDec
--- a/codec/encoder/core/inc/expand_pic.h
+++ b/codec/encoder/core/inc/expand_pic.h
@@ -43,33 +43,12 @@
 #include "typedefs.h"
 #include "picture.h"
 
+#include "expand_picture_common.h"
+
 namespace WelsSVCEnc {
 typedef void (*PExpandPictureFunc) (uint8_t* pDst, const int32_t kiStride, const int32_t kiPicW, const int32_t kiPicH);
 
 void ExpandReferencingPicture (SPicture* pPic, PExpandPictureFunc pExpLuma, PExpandPictureFunc pExpChrom[2]);
-
-#if defined(__cplusplus)
-extern "C" {
-#endif//__cplusplus
-
-#if defined(X86_ASM)
-void ExpandPictureLuma_sse2 (uint8_t* pDst,
-                             const int32_t kiStride,
-                             const int32_t kiPicW,
-                             const int32_t kiPicH);
-void ExpandPictureChromaAlign_sse2 (uint8_t* pDst,
-                                    const int32_t kiStride,
-                                    const int32_t kiPicW,
-                                    const int32_t kiPicH);
-void ExpandPictureChromaUnalign_sse2 (uint8_t* pDst,
-                                      const int32_t kiStride,
-                                      const int32_t kiPicW,
-                                      const int32_t kiPicH);
-#endif//X86_ASM
-
-#if defined(__cplusplus)
-}
-#endif//__cplusplus
 
 void InitExpandPictureFunc (void* pL, const uint32_t kuiCPUFlags);
 }