summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2016-10-13 19:40:40 +0200
committerRémi Verschelde <rverschelde@gmail.com>2016-10-15 11:50:41 +0200
commitcfcc8a20e862b758c32bd3f152186e6df0591a24 (patch)
treee9cf6ebad67c17ae60b8beb4d1468cbc94dbb982
parentda09c6131bcdace7e8e62c3dabc62890e9564c97 (diff)
theora: Move to a module and split thirdparty lib
Same rationale as the previous commits.
-rw-r--r--SConstruct10
-rw-r--r--drivers/SCsub2
-rw-r--r--drivers/register_driver_types.cpp22
-rw-r--r--drivers/theora/SCsub65
-rw-r--r--drivers/theora/theora.exp55
-rw-r--r--modules/theora/SCsub81
-rw-r--r--modules/theora/config.py6
-rw-r--r--modules/theora/register_types.cpp45
-rw-r--r--modules/theora/register_types.h30
-rw-r--r--modules/theora/video_stream_theora.cpp (renamed from drivers/theora/video_stream_theora.cpp)9
-rw-r--r--modules/theora/video_stream_theora.h (renamed from drivers/theora/video_stream_theora.h)17
-rw-r--r--modules/theora/yuv2rgb.h (renamed from drivers/theora/yuv2rgb.h)0
-rw-r--r--platform/bb10/detect.py3
-rw-r--r--platform/javascript/detect.py2
-rw-r--r--platform/x11/detect.py17
-rw-r--r--thirdparty/README.md13
-rw-r--r--thirdparty/libtheora/COPYING (renamed from drivers/theora/COPYING)0
-rw-r--r--thirdparty/libtheora/LICENSE (renamed from drivers/theora/LICENSE)0
-rw-r--r--thirdparty/libtheora/analyze.c (renamed from drivers/theora/analyze.c)0
-rw-r--r--thirdparty/libtheora/apiwrapper.c (renamed from drivers/theora/apiwrapper.c)0
-rw-r--r--thirdparty/libtheora/apiwrapper.h (renamed from drivers/theora/apiwrapper.h)0
-rw-r--r--thirdparty/libtheora/bitpack.c (renamed from drivers/theora/bitpack.c)0
-rw-r--r--thirdparty/libtheora/bitpack.h (renamed from drivers/theora/bitpack.h)0
-rw-r--r--thirdparty/libtheora/cpu.c (renamed from drivers/theora/cpu.c)0
-rw-r--r--thirdparty/libtheora/cpu.h (renamed from drivers/theora/cpu.h)0
-rw-r--r--thirdparty/libtheora/dct.h (renamed from drivers/theora/dct.h)0
-rw-r--r--thirdparty/libtheora/decapiwrapper.c (renamed from drivers/theora/decapiwrapper.c)0
-rw-r--r--thirdparty/libtheora/decinfo.c (renamed from drivers/theora/decinfo.c)0
-rw-r--r--thirdparty/libtheora/decint.h (renamed from drivers/theora/decint.h)0
-rw-r--r--thirdparty/libtheora/decode.c (renamed from drivers/theora/decode.c)0
-rw-r--r--thirdparty/libtheora/dequant.c (renamed from drivers/theora/dequant.c)0
-rw-r--r--thirdparty/libtheora/dequant.h (renamed from drivers/theora/dequant.h)0
-rw-r--r--thirdparty/libtheora/encapiwrapper.c (renamed from drivers/theora/encapiwrapper.c)0
-rw-r--r--thirdparty/libtheora/encfrag.c (renamed from drivers/theora/encfrag.c)0
-rw-r--r--thirdparty/libtheora/encinfo.c (renamed from drivers/theora/encinfo.c)0
-rw-r--r--thirdparty/libtheora/encint.h (renamed from drivers/theora/encint.h)0
-rw-r--r--thirdparty/libtheora/encode.c (renamed from drivers/theora/encode.c)0
-rw-r--r--thirdparty/libtheora/encoder_disabled.c (renamed from drivers/theora/encoder_disabled.c)0
-rw-r--r--thirdparty/libtheora/enquant.c (renamed from drivers/theora/enquant.c)0
-rw-r--r--thirdparty/libtheora/enquant.h (renamed from drivers/theora/enquant.h)0
-rw-r--r--thirdparty/libtheora/fdct.c (renamed from drivers/theora/fdct.c)0
-rw-r--r--thirdparty/libtheora/fragment.c (renamed from drivers/theora/fragment.c)0
-rw-r--r--thirdparty/libtheora/huffdec.c (renamed from drivers/theora/huffdec.c)0
-rw-r--r--thirdparty/libtheora/huffdec.h (renamed from drivers/theora/huffdec.h)0
-rw-r--r--thirdparty/libtheora/huffenc.c (renamed from drivers/theora/huffenc.c)0
-rw-r--r--thirdparty/libtheora/huffenc.h (renamed from drivers/theora/huffenc.h)0
-rw-r--r--thirdparty/libtheora/huffman.h (renamed from drivers/theora/huffman.h)0
-rw-r--r--thirdparty/libtheora/idct.c (renamed from drivers/theora/idct.c)0
-rw-r--r--thirdparty/libtheora/info.c (renamed from drivers/theora/info.c)0
-rw-r--r--thirdparty/libtheora/internal.c (renamed from drivers/theora/internal.c)0
-rw-r--r--thirdparty/libtheora/internal.h (renamed from drivers/theora/internal.h)0
-rw-r--r--thirdparty/libtheora/mathops.c (renamed from drivers/theora/mathops.c)0
-rw-r--r--thirdparty/libtheora/mathops.h (renamed from drivers/theora/mathops.h)0
-rw-r--r--thirdparty/libtheora/mcenc.c (renamed from drivers/theora/mcenc.c)0
-rw-r--r--thirdparty/libtheora/modedec.h (renamed from drivers/theora/modedec.h)0
-rw-r--r--thirdparty/libtheora/ocintrin.h (renamed from drivers/theora/ocintrin.h)0
-rw-r--r--thirdparty/libtheora/quant.c (renamed from drivers/theora/quant.c)0
-rw-r--r--thirdparty/libtheora/quant.h (renamed from drivers/theora/quant.h)0
-rw-r--r--thirdparty/libtheora/rate.c (renamed from drivers/theora/rate.c)0
-rw-r--r--thirdparty/libtheora/state.c (renamed from drivers/theora/state.c)0
-rw-r--r--thirdparty/libtheora/theora/codec.h (renamed from drivers/theora/codec.h)0
-rw-r--r--thirdparty/libtheora/theora/theora.h (renamed from drivers/theora/theora.h)0
-rw-r--r--thirdparty/libtheora/theora/theoradec.h (renamed from drivers/theora/theoradec.h)0
-rw-r--r--thirdparty/libtheora/theora/theoraenc.h (renamed from drivers/theora/theoraenc.h)0
-rw-r--r--thirdparty/libtheora/tokenize.c (renamed from drivers/theora/tokenize.c)0
-rw-r--r--thirdparty/libtheora/x86/mmxencfrag.c (renamed from drivers/theora/x86/mmxencfrag.c)0
-rw-r--r--thirdparty/libtheora/x86/mmxfdct.c (renamed from drivers/theora/x86/mmxfdct.c)0
-rw-r--r--thirdparty/libtheora/x86/mmxfrag.c (renamed from drivers/theora/x86/mmxfrag.c)0
-rw-r--r--thirdparty/libtheora/x86/mmxfrag.h (renamed from drivers/theora/x86/mmxfrag.h)0
-rw-r--r--thirdparty/libtheora/x86/mmxidct.c (renamed from drivers/theora/x86/mmxidct.c)0
-rw-r--r--thirdparty/libtheora/x86/mmxloop.h (renamed from drivers/theora/x86/mmxloop.h)0
-rw-r--r--thirdparty/libtheora/x86/mmxstate.c (renamed from drivers/theora/x86/mmxstate.c)0
-rw-r--r--thirdparty/libtheora/x86/sse2fdct.c (renamed from drivers/theora/x86/sse2fdct.c)0
-rw-r--r--thirdparty/libtheora/x86/x86enc.c (renamed from drivers/theora/x86/x86enc.c)0
-rw-r--r--thirdparty/libtheora/x86/x86enc.h (renamed from drivers/theora/x86/x86enc.h)0
-rw-r--r--thirdparty/libtheora/x86/x86int.h (renamed from drivers/theora/x86/x86int.h)0
-rw-r--r--thirdparty/libtheora/x86/x86state.c (renamed from drivers/theora/x86/x86state.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxencfrag.c (renamed from drivers/theora/x86_vc/mmxencfrag.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxfdct.c (renamed from drivers/theora/x86_vc/mmxfdct.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxfrag.c (renamed from drivers/theora/x86_vc/mmxfrag.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxfrag.h (renamed from drivers/theora/x86_vc/mmxfrag.h)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxidct.c (renamed from drivers/theora/x86_vc/mmxidct.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxloop.h (renamed from drivers/theora/x86_vc/mmxloop.h)0
-rw-r--r--thirdparty/libtheora/x86_vc/mmxstate.c (renamed from drivers/theora/x86_vc/mmxstate.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/x86enc.c (renamed from drivers/theora/x86_vc/x86enc.c)0
-rw-r--r--thirdparty/libtheora/x86_vc/x86enc.h (renamed from drivers/theora/x86_vc/x86enc.h)0
-rw-r--r--thirdparty/libtheora/x86_vc/x86int.h (renamed from drivers/theora/x86_vc/x86int.h)0
-rw-r--r--thirdparty/libtheora/x86_vc/x86state.c (renamed from drivers/theora/x86_vc/x86state.c)0
88 files changed, 199 insertions, 178 deletions
diff --git a/SConstruct b/SConstruct
index e52e224de7..4ed3845f97 100644
--- a/SConstruct
+++ b/SConstruct
@@ -121,11 +121,10 @@ opts.Add('tools','Build Tools (Including Editor): (yes/no)','yes')
opts.Add('gdscript','Build GDSCript support: (yes/no)','yes')
opts.Add('libogg','Ogg library for ogg container support (system/builtin)','builtin')
opts.Add('libvorbis','Ogg Vorbis library for vorbis support (system/builtin)','builtin')
+opts.Add('libtheora','Theora library for theora module (system/builtin)','builtin')
opts.Add('opus','Opus and opusfile library for Opus format support: (system/builtin)','builtin')
opts.Add('minizip','Build Minizip Archive Support: (yes/no)','yes')
opts.Add('squish','Squish BC Texture Compression in editor (yes/no)','yes')
-opts.Add('theora','Theora Video (yes/no)','yes')
-opts.Add('theoralib','Theora Video (yes/no)','no')
opts.Add('freetype','Freetype support in editor','builtin')
opts.Add('xml','XML Save/Load support (yes/no)','yes')
opts.Add('libpng','libpng library for image loader support (system/builtin)','builtin')
@@ -331,13 +330,6 @@ if selected_platform in platform_list:
if (env_base['squish']=='yes'):
env.Append(CPPFLAGS=['-DSQUISH_ENABLED']);
-
- if (env['theora']=='yes'):
- env['theoralib']='yes'
- env.Append(CPPFLAGS=['-DTHEORA_ENABLED']);
- if (env['theoralib']=='yes'):
- env.Append(CPPFLAGS=['-DTHEORALIB_ENABLED']);
-
if (env['tools']=='yes'):
env.Append(CPPFLAGS=['-DTOOLS_ENABLED'])
if (env['disable_3d']=='yes'):
diff --git a/drivers/SCsub b/drivers/SCsub
index 4ce95c7970..8b7ec80dcd 100644
--- a/drivers/SCsub
+++ b/drivers/SCsub
@@ -24,8 +24,6 @@ SConscript("chibi/SCsub");
if (env["tools"]=="yes"):
SConscript("convex_decomp/SCsub");
-if (env["theoralib"]=="yes"):
- SConscript("theora/SCsub");
if (env['musepack']=='yes'):
SConscript("mpc/SCsub");
if (env["squish"]=="yes" and env["tools"]=="yes"):
diff --git a/drivers/register_driver_types.cpp b/drivers/register_driver_types.cpp
index 8aead0e2fc..6d48d94d44 100644
--- a/drivers/register_driver_types.cpp
+++ b/drivers/register_driver_types.cpp
@@ -28,6 +28,7 @@
/*************************************************************************/
#include "register_driver_types.h"
+#include "core/math/geometry.h"
#include "png/image_loader_png.h"
#include "png/resource_saver_png.h"
#include "chibi/event_stream_chibi.h"
@@ -45,11 +46,6 @@
#include "platform/windows/export/export.h"
#endif
-#ifdef THEORA_ENABLED
-#include "theora/video_stream_theora.h"
-#endif
-
-
#include "drivers/nrex/regex.h"
#ifdef MUSEPACK_ENABLED
@@ -59,10 +55,6 @@
static ImageLoaderPNG *image_loader_png=NULL;
static ResourceSaverPNG *resource_saver_png=NULL;
-#ifdef THEORA_ENABLED
-static ResourceFormatLoaderVideoStreamTheora* theora_stream_loader = NULL;
-#endif
-
#ifdef MUSEPACK_ENABLED
static ResourceFormatLoaderAudioStreamMPC * mpc_stream_loader=NULL;
#endif
@@ -103,13 +95,6 @@ void register_driver_types() {
#endif
-#ifdef THEORA_ENABLED
- theora_stream_loader = memnew( ResourceFormatLoaderVideoStreamTheora );
- ResourceLoader::add_resource_format_loader(theora_stream_loader);
- ObjectTypeDB::register_type<VideoStreamTheora>();
-#endif
-
-
#ifdef TOOLS_ENABLED
#ifdef SQUISH_ENABLED
@@ -123,11 +108,6 @@ void register_driver_types() {
void unregister_driver_types() {
-#ifdef THEORA_ENABLED
- memdelete (theora_stream_loader);
-#endif
-
-
#ifdef MUSEPACK_ENABLED
memdelete (mpc_stream_loader);
diff --git a/drivers/theora/SCsub b/drivers/theora/SCsub
deleted file mode 100644
index 94477d2827..0000000000
--- a/drivers/theora/SCsub
+++ /dev/null
@@ -1,65 +0,0 @@
-Import('env')
-
-sources = [
- #"theora/analyze.c",
- #"theora/apiwrapper.c",
- "theora/bitpack.c",
- "theora/cpu.c",
- #"theora/decapiwrapper.c",
- "theora/decinfo.c",
- "theora/decode.c",
- "theora/dequant.c",
- #"theora/encapiwrapper.c",
- #"theora/encfrag.c",
- #"theora/encinfo.c",
- #"theora/encode.c",
- #"theora/encoder_disabled.c",
- #"theora/enquant.c",
- #"theora/fdct.c",
- "theora/fragment.c",
- "theora/huffdec.c",
- #"theora/huffenc.c",
- "theora/idct.c",
- "theora/info.c",
- "theora/internal.c",
- #"theora/mathops.c",
- #"theora/mcenc.c",
- "theora/quant.c",
- #"theora/rate.c",
- "theora/state.c",
- #"theora/tokenize.c",
- "theora/video_stream_theora.cpp",
-]
-
-sources_x86 = [
- #"theora/x86/mmxencfrag.c",
- #"theora/x86/mmxfdct.c",
- "theora/x86/mmxfrag.c",
- "theora/x86/mmxidct.c",
- "theora/x86/mmxstate.c",
- #"theora/x86/sse2fdct.c",
- #"theora/x86/x86enc.c",
- "theora/x86/x86state.c",
-]
-
-sources_x86_vc = [
- #"theora/x86_vc/mmxencfrag.c",
- #"theora/x86_vc/mmxfdct.c",
- "theora/x86_vc/mmxfrag.c",
- "theora/x86_vc/mmxidct.c",
- "theora/x86_vc/mmxstate.c",
- #"theora/x86_vc/x86enc.c",
- "theora/x86_vc/x86state.c",
-]
-
-env.drivers_sources += sources
-
-if (env["x86_opt_gcc"]):
- env.drivers_sources += sources_x86
-
-if (env["x86_opt_vc"]):
- env.drivers_sources += sources_x86_vc
-
-if (env["x86_opt_gcc"] or env["x86_opt_vc"]):
- Import('env_drivers')
- env_drivers.Append(CCFLAGS=["-DOC_X86_ASM"])
diff --git a/drivers/theora/theora.exp b/drivers/theora/theora.exp
deleted file mode 100644
index b4e0225f1e..0000000000
--- a/drivers/theora/theora.exp
+++ /dev/null
@@ -1,55 +0,0 @@
-# export list for libtheora
-_theora_version_string
-_theora_version_number
-_theora_encode_init
-_theora_encode_YUVin
-_theora_encode_packetout
-_theora_encode_header
-_theora_encode_comment
-_theora_encode_tables
-_theora_decode_header
-_theora_decode_init
-_theora_decode_packetin
-_theora_decode_YUVout
-_theora_control
-_theora_packet_isheader
-_theora_packet_iskeyframe
-_theora_granule_shift
-_theora_granule_frame
-_theora_granule_time
-_theora_info_init
-_theora_info_clear
-_theora_clear
-_theora_comment_init
-_theora_comment_add
-_theora_comment_add_tag
-_theora_comment_query
-_theora_comment_query_count
-_theora_comment_clear
-_th_version_string
-_th_version_number
-_th_decode_headerin
-_th_decode_alloc
-_th_setup_free
-_th_decode_ctl
-_th_decode_packetin
-_th_decode_ycbcr_out
-_th_decode_free
-_th_packet_isheader
-_th_packet_iskeyframe
-_th_granule_frame
-_th_granule_time
-_th_info_init
-_th_info_clear
-_th_comment_init
-_th_comment_add
-_th_comment_add_tag
-_th_comment_query
-_th_comment_query_count
-_th_comment_clear
-_th_encode_alloc
-_th_encode_ctl
-_th_encode_flushheader
-_th_encode_packetout
-_th_encode_ycbcr_in
-_th_encode_free
diff --git a/modules/theora/SCsub b/modules/theora/SCsub
new file mode 100644
index 0000000000..cdb78e955e
--- /dev/null
+++ b/modules/theora/SCsub
@@ -0,0 +1,81 @@
+Import('env')
+Import('env_modules')
+
+env_theora = env_modules.Clone()
+
+# Thirdparty source files
+if (env["libtheora"] != "system"): # builtin
+ thirdparty_dir = "#thirdparty/libtheora/"
+ thirdparty_sources = [
+ "analyze.c",
+ "apiwrapper.c",
+ "bitpack.c",
+ "cpu.c",
+ "decapiwrapper.c",
+ "decinfo.c",
+ "decode.c",
+ "dequant.c",
+ "encapiwrapper.c",
+ "encfrag.c",
+ "encinfo.c",
+ "encode.c",
+ "encoder_disabled.c",
+ "enquant.c",
+ "fdct.c",
+ "fragment.c",
+ "huffdec.c",
+ "huffenc.c",
+ "idct.c",
+ "info.c",
+ "internal.c",
+ "mathops.c",
+ "mcenc.c",
+ "quant.c",
+ "rate.c",
+ "state.c",
+ "tokenize.c",
+ ]
+
+ thirdparty_sources_x86 = [
+ "x86/mmxencfrag.c",
+ "x86/mmxfdct.c",
+ "x86/mmxfrag.c",
+ "x86/mmxidct.c",
+ "x86/mmxstate.c",
+ "x86/sse2fdct.c",
+ "x86/x86enc.c",
+ "x86/x86state.c",
+ ]
+
+ thirdparty_sources_x86_vc = [
+ "x86_vc/mmxencfrag.c",
+ "x86_vc/mmxfdct.c",
+ "x86_vc/mmxfrag.c",
+ "x86_vc/mmxidct.c",
+ "x86_vc/mmxstate.c",
+ "x86_vc/x86enc.c",
+ "x86_vc/x86state.c",
+ ]
+
+ if (env["x86_opt_gcc"]):
+ thirdparty_sources += thirdparty_sources_x86
+
+ if (env["x86_opt_vc"]):
+ thirdparty_sources += thirdparty_sources_x86_vc
+
+ if (env["x86_opt_gcc"] or env["x86_opt_vc"]):
+ env_theora.Append(CCFLAGS = ["-DOC_X86_ASM"])
+
+ thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+
+ env_theora.add_source_files(env.modules_sources, thirdparty_sources)
+ env_theora.Append(CPPPATH = [thirdparty_dir])
+
+ # also requires libogg and libvorbis
+ if (env["libogg"] != "system"): # builtin
+ env_theora.Append(CPPPATH = ["#thirdparty/libogg"])
+ if (env["libvorbis"] != "system"): # builtin
+ env_theora.Append(CPPPATH = ["#thirdparty/libvorbis"])
+
+# Godot source files
+env_theora.add_source_files(env.modules_sources, "*.cpp")
diff --git a/modules/theora/config.py b/modules/theora/config.py
new file mode 100644
index 0000000000..368e97e152
--- /dev/null
+++ b/modules/theora/config.py
@@ -0,0 +1,6 @@
+
+def can_build(platform):
+ return True
+
+def configure(env):
+ pass
diff --git a/modules/theora/register_types.cpp b/modules/theora/register_types.cpp
new file mode 100644
index 0000000000..282b59b0ec
--- /dev/null
+++ b/modules/theora/register_types.cpp
@@ -0,0 +1,45 @@
+/*************************************************************************/
+/* register_types.cpp */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* http://www.godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */
+/* */
+/* Permission is hereby granted, free of charge, to any person obtaining */
+/* a copy of this software and associated documentation files (the */
+/* "Software"), to deal in the Software without restriction, including */
+/* without limitation the rights to use, copy, modify, merge, publish, */
+/* distribute, sublicense, and/or sell copies of the Software, and to */
+/* permit persons to whom the Software is furnished to do so, subject to */
+/* the following conditions: */
+/* */
+/* The above copyright notice and this permission notice shall be */
+/* included in all copies or substantial portions of the Software. */
+/* */
+/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
+/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
+/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
+/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
+/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
+/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
+/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
+/*************************************************************************/
+#include "register_types.h"
+
+#include "video_stream_theora.h"
+
+static ResourceFormatLoaderVideoStreamTheora* theora_stream_loader = NULL;
+
+void register_theora_types() {
+
+ theora_stream_loader = memnew( ResourceFormatLoaderVideoStreamTheora );
+ ResourceLoader::add_resource_format_loader(theora_stream_loader);
+ ObjectTypeDB::register_type<VideoStreamTheora>();
+}
+
+void unregister_theora_types() {
+
+ memdelete( theora_stream_loader );
+}
diff --git a/modules/theora/register_types.h b/modules/theora/register_types.h
new file mode 100644
index 0000000000..18bdbf0c4c
--- /dev/null
+++ b/modules/theora/register_types.h
@@ -0,0 +1,30 @@
+/*************************************************************************/
+/* register_types.h */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* http://www.godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */
+/* */
+/* Permission is hereby granted, free of charge, to any person obtaining */
+/* a copy of this software and associated documentation files (the */
+/* "Software"), to deal in the Software without restriction, including */
+/* without limitation the rights to use, copy, modify, merge, publish, */
+/* distribute, sublicense, and/or sell copies of the Software, and to */
+/* permit persons to whom the Software is furnished to do so, subject to */
+/* the following conditions: */
+/* */
+/* The above copyright notice and this permission notice shall be */
+/* included in all copies or substantial portions of the Software. */
+/* */
+/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
+/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
+/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
+/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
+/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
+/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
+/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
+/*************************************************************************/
+void register_theora_types();
+void unregister_theora_types();
diff --git a/drivers/theora/video_stream_theora.cpp b/modules/theora/video_stream_theora.cpp
index 1f3832ec16..3ddfee3a1d 100644
--- a/drivers/theora/video_stream_theora.cpp
+++ b/modules/theora/video_stream_theora.cpp
@@ -26,13 +26,11 @@
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/*************************************************************************/
-#ifdef THEORA_ENABLED
-
#include "video_stream_theora.h"
+
+#include "globals.h"
#include "os/os.h"
#include "yuv2rgb.h"
-#include "globals.h"
-
int VideoStreamPlaybackTheora:: buffer_data() {
@@ -940,6 +938,3 @@ String ResourceFormatLoaderVideoStreamTheora::get_resource_type(const String &p_
return "VideoStreamTheora";
return "";
}
-
-#endif
-
diff --git a/drivers/theora/video_stream_theora.h b/modules/theora/video_stream_theora.h
index 5484815844..04a5c56ee5 100644
--- a/drivers/theora/video_stream_theora.h
+++ b/modules/theora/video_stream_theora.h
@@ -29,16 +29,15 @@
#ifndef VIDEO_STREAM_THEORA_H
#define VIDEO_STREAM_THEORA_H
-#ifdef THEORA_ENABLED
-
-#include "theora/theoradec.h"
-#include "vorbis/codec.h"
-#include "os/file_access.h"
-#include "ring_buffer.h"
#include "io/resource_loader.h"
-#include "scene/resources/video_stream.h"
+#include "os/file_access.h"
#include "os/thread.h"
#include "os/semaphore.h"
+#include "ring_buffer.h"
+#include "scene/resources/video_stream.h"
+
+#include <theora/theoradec.h>
+#include <vorbis/codec.h>
//#define THEORA_USE_THREAD_STREAMING
@@ -197,8 +196,4 @@ public:
};
-
-
-#endif
-
#endif
diff --git a/drivers/theora/yuv2rgb.h b/modules/theora/yuv2rgb.h
index 59101bd057..59101bd057 100644
--- a/drivers/theora/yuv2rgb.h
+++ b/modules/theora/yuv2rgb.h
diff --git a/platform/bb10/detect.py b/platform/bb10/detect.py
index 2860b7f090..5aa68b36dc 100644
--- a/platform/bb10/detect.py
+++ b/platform/bb10/detect.py
@@ -33,8 +33,7 @@ def get_flags():
return [
('tools', 'no'),
- ('theora', 'no'),
-
+ ('module_theora_enabled', 'no'),
]
def configure(env):
diff --git a/platform/javascript/detect.py b/platform/javascript/detect.py
index f80c3b4915..fce680b002 100644
--- a/platform/javascript/detect.py
+++ b/platform/javascript/detect.py
@@ -26,10 +26,10 @@ def get_flags():
return [
('tools', 'no'),
- ('theora', 'no'),
('musepack', 'no'),
('squish', 'no'),
('etc1', 'no'),
+ ('module_theora_enabled', 'no'),
]
diff --git a/platform/x11/detect.py b/platform/x11/detect.py
index 98c2d1e8fd..7c22bd97ff 100644
--- a/platform/x11/detect.py
+++ b/platform/x11/detect.py
@@ -73,7 +73,6 @@ def get_flags():
("openssl", "system"),
('freetype','yes'), # use system freetype
('libpng', 'system'),
- #("theora","no"),
]
@@ -155,16 +154,24 @@ def configure(env):
if (env["enet"] == "system"):
env.ParseConfig('pkg-config libenet --cflags --libs')
- if (env["libogg"] == "system"):
- env.ParseConfig('pkg-config ogg --cflags --libs')
+ # Sound and video libraries
+ # Keep the order as it triggers chained dependencies (ogg needed by others, etc.)
+
+ if (env["libtheora"] == "system"):
+ env["libogg"] = "system" # Needed to link against system libtheora
+ env["libvorbis"] = "system" # Needed to link against system libtheora
+ env.ParseConfig('pkg-config theora theoradec --cflags --libs')
if (env["libvorbis"] == "system"):
env["libogg"] = "system" # Needed to link against system libvorbis
- env.ParseConfig('pkg-config vorbis vorbisfile ogg --cflags --libs')
+ env.ParseConfig('pkg-config vorbis vorbisfile --cflags --libs')
if (env["opus"] == "system"):
env["libogg"] = "system" # Needed to link against system opus
- env.ParseConfig('pkg-config opus opusfile ogg --cflags --libs')
+ env.ParseConfig('pkg-config opus opusfile --cflags --libs')
+
+ if (env["libogg"] == "system"):
+ env.ParseConfig('pkg-config ogg --cflags --libs')
env.Append(CPPFLAGS=['-DOPENGL_ENABLED'])
diff --git a/thirdparty/README.md b/thirdparty/README.md
index a8c2c7df95..a567eb177d 100644
--- a/thirdparty/README.md
+++ b/thirdparty/README.md
@@ -132,3 +132,16 @@ Files extracted from upstream source:
Files extracted from upstream source:
- all of them: rg_etc1.{cpp,h}
+
+
+## theora
+
+- Upstream: https://www.theora.org
+- Version: 1.1.1
+- License: BSD-3-Clause
+
+Files extracted from upstream source:
+
+- all .c, .h in lib/
+- all .h files in include/theora/ as theora/
+- COPYING and LICENSE
diff --git a/drivers/theora/COPYING b/thirdparty/libtheora/COPYING
index c8ccce4ffb..c8ccce4ffb 100644
--- a/drivers/theora/COPYING
+++ b/thirdparty/libtheora/COPYING
diff --git a/drivers/theora/LICENSE b/thirdparty/libtheora/LICENSE
index 5e5ec08469..5e5ec08469 100644
--- a/drivers/theora/LICENSE
+++ b/thirdparty/libtheora/LICENSE
diff --git a/drivers/theora/analyze.c b/thirdparty/libtheora/analyze.c
index af01b60dff..af01b60dff 100644
--- a/drivers/theora/analyze.c
+++ b/thirdparty/libtheora/analyze.c
diff --git a/drivers/theora/apiwrapper.c b/thirdparty/libtheora/apiwrapper.c
index dc959b8d13..dc959b8d13 100644
--- a/drivers/theora/apiwrapper.c
+++ b/thirdparty/libtheora/apiwrapper.c
diff --git a/drivers/theora/apiwrapper.h b/thirdparty/libtheora/apiwrapper.h
index 93454d7bda..93454d7bda 100644
--- a/drivers/theora/apiwrapper.h
+++ b/thirdparty/libtheora/apiwrapper.h
diff --git a/drivers/theora/bitpack.c b/thirdparty/libtheora/bitpack.c
index 8195003bad..8195003bad 100644
--- a/drivers/theora/bitpack.c
+++ b/thirdparty/libtheora/bitpack.c
diff --git a/drivers/theora/bitpack.h b/thirdparty/libtheora/bitpack.h
index a020a292f5..a020a292f5 100644
--- a/drivers/theora/bitpack.h
+++ b/thirdparty/libtheora/bitpack.h
diff --git a/drivers/theora/cpu.c b/thirdparty/libtheora/cpu.c
index a863aad7f3..a863aad7f3 100644
--- a/drivers/theora/cpu.c
+++ b/thirdparty/libtheora/cpu.c
diff --git a/drivers/theora/cpu.h b/thirdparty/libtheora/cpu.h
index a43c957a39..a43c957a39 100644
--- a/drivers/theora/cpu.h
+++ b/thirdparty/libtheora/cpu.h
diff --git a/drivers/theora/dct.h b/thirdparty/libtheora/dct.h
index 24ba6f111a..24ba6f111a 100644
--- a/drivers/theora/dct.h
+++ b/thirdparty/libtheora/dct.h
diff --git a/drivers/theora/decapiwrapper.c b/thirdparty/libtheora/decapiwrapper.c
index 12ea475d17..12ea475d17 100644
--- a/drivers/theora/decapiwrapper.c
+++ b/thirdparty/libtheora/decapiwrapper.c
diff --git a/drivers/theora/decinfo.c b/thirdparty/libtheora/decinfo.c
index 845eb1361c..845eb1361c 100644
--- a/drivers/theora/decinfo.c
+++ b/thirdparty/libtheora/decinfo.c
diff --git a/drivers/theora/decint.h b/thirdparty/libtheora/decint.h
index 261b67631a..261b67631a 100644
--- a/drivers/theora/decint.h
+++ b/thirdparty/libtheora/decint.h
diff --git a/drivers/theora/decode.c b/thirdparty/libtheora/decode.c
index 7be66463d8..7be66463d8 100644
--- a/drivers/theora/decode.c
+++ b/thirdparty/libtheora/decode.c
diff --git a/drivers/theora/dequant.c b/thirdparty/libtheora/dequant.c
index e554872d4e..e554872d4e 100644
--- a/drivers/theora/dequant.c
+++ b/thirdparty/libtheora/dequant.c
diff --git a/drivers/theora/dequant.h b/thirdparty/libtheora/dequant.h
index ef25838e35..ef25838e35 100644
--- a/drivers/theora/dequant.h
+++ b/thirdparty/libtheora/dequant.h
diff --git a/drivers/theora/encapiwrapper.c b/thirdparty/libtheora/encapiwrapper.c
index 874f12442d..874f12442d 100644
--- a/drivers/theora/encapiwrapper.c
+++ b/thirdparty/libtheora/encapiwrapper.c
diff --git a/drivers/theora/encfrag.c b/thirdparty/libtheora/encfrag.c
index bb814c8e4a..bb814c8e4a 100644
--- a/drivers/theora/encfrag.c
+++ b/thirdparty/libtheora/encfrag.c
diff --git a/drivers/theora/encinfo.c b/thirdparty/libtheora/encinfo.c
index 83be1dae72..83be1dae72 100644
--- a/drivers/theora/encinfo.c
+++ b/thirdparty/libtheora/encinfo.c
diff --git a/drivers/theora/encint.h b/thirdparty/libtheora/encint.h
index 97897d5a04..97897d5a04 100644
--- a/drivers/theora/encint.h
+++ b/thirdparty/libtheora/encint.h
diff --git a/drivers/theora/encode.c b/thirdparty/libtheora/encode.c
index 0c5ea6a172..0c5ea6a172 100644
--- a/drivers/theora/encode.c
+++ b/thirdparty/libtheora/encode.c
diff --git a/drivers/theora/encoder_disabled.c b/thirdparty/libtheora/encoder_disabled.c
index 0cbf6645ac..0cbf6645ac 100644
--- a/drivers/theora/encoder_disabled.c
+++ b/thirdparty/libtheora/encoder_disabled.c
diff --git a/drivers/theora/enquant.c b/thirdparty/libtheora/enquant.c
index 3372fed221..3372fed221 100644
--- a/drivers/theora/enquant.c
+++ b/thirdparty/libtheora/enquant.c
diff --git a/drivers/theora/enquant.h b/thirdparty/libtheora/enquant.h
index d62df10d1a..d62df10d1a 100644
--- a/drivers/theora/enquant.h
+++ b/thirdparty/libtheora/enquant.h
diff --git a/drivers/theora/fdct.c b/thirdparty/libtheora/fdct.c
index dc3a66f245..dc3a66f245 100644
--- a/drivers/theora/fdct.c
+++ b/thirdparty/libtheora/fdct.c
diff --git a/drivers/theora/fragment.c b/thirdparty/libtheora/fragment.c
index 15372e9d9f..15372e9d9f 100644
--- a/drivers/theora/fragment.c
+++ b/thirdparty/libtheora/fragment.c
diff --git a/drivers/theora/huffdec.c b/thirdparty/libtheora/huffdec.c
index 8cf27f0341..8cf27f0341 100644
--- a/drivers/theora/huffdec.c
+++ b/thirdparty/libtheora/huffdec.c
diff --git a/drivers/theora/huffdec.h b/thirdparty/libtheora/huffdec.h
index d7ffa0e99b..d7ffa0e99b 100644
--- a/drivers/theora/huffdec.h
+++ b/thirdparty/libtheora/huffdec.h
diff --git a/drivers/theora/huffenc.c b/thirdparty/libtheora/huffenc.c
index bf624e0523..bf624e0523 100644
--- a/drivers/theora/huffenc.c
+++ b/thirdparty/libtheora/huffenc.c
diff --git a/drivers/theora/huffenc.h b/thirdparty/libtheora/huffenc.h
index c5a3956f1f..c5a3956f1f 100644
--- a/drivers/theora/huffenc.h
+++ b/thirdparty/libtheora/huffenc.h
diff --git a/drivers/theora/huffman.h b/thirdparty/libtheora/huffman.h
index 36cf7572e5..36cf7572e5 100644
--- a/drivers/theora/huffman.h
+++ b/thirdparty/libtheora/huffman.h
diff --git a/drivers/theora/idct.c b/thirdparty/libtheora/idct.c
index 0e68ac7658..0e68ac7658 100644
--- a/drivers/theora/idct.c
+++ b/thirdparty/libtheora/idct.c
diff --git a/drivers/theora/info.c b/thirdparty/libtheora/info.c
index 6b9762978b..6b9762978b 100644
--- a/drivers/theora/info.c
+++ b/thirdparty/libtheora/info.c
diff --git a/drivers/theora/internal.c b/thirdparty/libtheora/internal.c
index 0fe4f63e72..0fe4f63e72 100644
--- a/drivers/theora/internal.c
+++ b/thirdparty/libtheora/internal.c
diff --git a/drivers/theora/internal.h b/thirdparty/libtheora/internal.h
index d81263e13e..d81263e13e 100644
--- a/drivers/theora/internal.h
+++ b/thirdparty/libtheora/internal.h
diff --git a/drivers/theora/mathops.c b/thirdparty/libtheora/mathops.c
index d3fb909194..d3fb909194 100644
--- a/drivers/theora/mathops.c
+++ b/thirdparty/libtheora/mathops.c
diff --git a/drivers/theora/mathops.h b/thirdparty/libtheora/mathops.h
index efbc5377b0..efbc5377b0 100644
--- a/drivers/theora/mathops.h
+++ b/thirdparty/libtheora/mathops.h
diff --git a/drivers/theora/mcenc.c b/thirdparty/libtheora/mcenc.c
index 797e81f4f9..797e81f4f9 100644
--- a/drivers/theora/mcenc.c
+++ b/thirdparty/libtheora/mcenc.c
diff --git a/drivers/theora/modedec.h b/thirdparty/libtheora/modedec.h
index ea12c64afd..ea12c64afd 100644
--- a/drivers/theora/modedec.h
+++ b/thirdparty/libtheora/modedec.h
diff --git a/drivers/theora/ocintrin.h b/thirdparty/libtheora/ocintrin.h
index d49ebb2159..d49ebb2159 100644
--- a/drivers/theora/ocintrin.h
+++ b/thirdparty/libtheora/ocintrin.h
diff --git a/drivers/theora/quant.c b/thirdparty/libtheora/quant.c
index 8359f5abea..8359f5abea 100644
--- a/drivers/theora/quant.c
+++ b/thirdparty/libtheora/quant.c
diff --git a/drivers/theora/quant.h b/thirdparty/libtheora/quant.h
index 49ce13a65c..49ce13a65c 100644
--- a/drivers/theora/quant.h
+++ b/thirdparty/libtheora/quant.h
diff --git a/drivers/theora/rate.c b/thirdparty/libtheora/rate.c
index 4f43bb2e5f..4f43bb2e5f 100644
--- a/drivers/theora/rate.c
+++ b/thirdparty/libtheora/rate.c
diff --git a/drivers/theora/state.c b/thirdparty/libtheora/state.c
index 42ed33a9a3..42ed33a9a3 100644
--- a/drivers/theora/state.c
+++ b/thirdparty/libtheora/state.c
diff --git a/drivers/theora/codec.h b/thirdparty/libtheora/theora/codec.h
index 5c2669630c..5c2669630c 100644
--- a/drivers/theora/codec.h
+++ b/thirdparty/libtheora/theora/codec.h
diff --git a/drivers/theora/theora.h b/thirdparty/libtheora/theora/theora.h
index af6eb6f380..af6eb6f380 100644
--- a/drivers/theora/theora.h
+++ b/thirdparty/libtheora/theora/theora.h
diff --git a/drivers/theora/theoradec.h b/thirdparty/libtheora/theora/theoradec.h
index b20f0e3a64..b20f0e3a64 100644
--- a/drivers/theora/theoradec.h
+++ b/thirdparty/libtheora/theora/theoradec.h
diff --git a/drivers/theora/theoraenc.h b/thirdparty/libtheora/theora/theoraenc.h
index fdf2ab21e2..fdf2ab21e2 100644
--- a/drivers/theora/theoraenc.h
+++ b/thirdparty/libtheora/theora/theoraenc.h
diff --git a/drivers/theora/tokenize.c b/thirdparty/libtheora/tokenize.c
index 60574c3594..60574c3594 100644
--- a/drivers/theora/tokenize.c
+++ b/thirdparty/libtheora/tokenize.c
diff --git a/drivers/theora/x86/mmxencfrag.c b/thirdparty/libtheora/x86/mmxencfrag.c
index c79ff01fcc..c79ff01fcc 100644
--- a/drivers/theora/x86/mmxencfrag.c
+++ b/thirdparty/libtheora/x86/mmxencfrag.c
diff --git a/drivers/theora/x86/mmxfdct.c b/thirdparty/libtheora/x86/mmxfdct.c
index 211875255e..211875255e 100644
--- a/drivers/theora/x86/mmxfdct.c
+++ b/thirdparty/libtheora/x86/mmxfdct.c
diff --git a/drivers/theora/x86/mmxfrag.c b/thirdparty/libtheora/x86/mmxfrag.c
index 2c732939c3..2c732939c3 100644
--- a/drivers/theora/x86/mmxfrag.c
+++ b/thirdparty/libtheora/x86/mmxfrag.c
diff --git a/drivers/theora/x86/mmxfrag.h b/thirdparty/libtheora/x86/mmxfrag.h
index a398427629..a398427629 100644
--- a/drivers/theora/x86/mmxfrag.h
+++ b/thirdparty/libtheora/x86/mmxfrag.h
diff --git a/drivers/theora/x86/mmxidct.c b/thirdparty/libtheora/x86/mmxidct.c
index 76424e6364..76424e6364 100644
--- a/drivers/theora/x86/mmxidct.c
+++ b/thirdparty/libtheora/x86/mmxidct.c
diff --git a/drivers/theora/x86/mmxloop.h b/thirdparty/libtheora/x86/mmxloop.h
index 2e870c795d..2e870c795d 100644
--- a/drivers/theora/x86/mmxloop.h
+++ b/thirdparty/libtheora/x86/mmxloop.h
diff --git a/drivers/theora/x86/mmxstate.c b/thirdparty/libtheora/x86/mmxstate.c
index 808b0a789b..808b0a789b 100644
--- a/drivers/theora/x86/mmxstate.c
+++ b/thirdparty/libtheora/x86/mmxstate.c
diff --git a/drivers/theora/x86/sse2fdct.c b/thirdparty/libtheora/x86/sse2fdct.c
index 86c17d68b1..86c17d68b1 100644
--- a/drivers/theora/x86/sse2fdct.c
+++ b/thirdparty/libtheora/x86/sse2fdct.c
diff --git a/drivers/theora/x86/x86enc.c b/thirdparty/libtheora/x86/x86enc.c
index 43b7be3ea3..43b7be3ea3 100644
--- a/drivers/theora/x86/x86enc.c
+++ b/thirdparty/libtheora/x86/x86enc.c
diff --git a/drivers/theora/x86/x86enc.h b/thirdparty/libtheora/x86/x86enc.h
index 06c3908bcd..06c3908bcd 100644
--- a/drivers/theora/x86/x86enc.h
+++ b/thirdparty/libtheora/x86/x86enc.h
diff --git a/drivers/theora/x86/x86int.h b/thirdparty/libtheora/x86/x86int.h
index ede724f5aa..ede724f5aa 100644
--- a/drivers/theora/x86/x86int.h
+++ b/thirdparty/libtheora/x86/x86int.h
diff --git a/drivers/theora/x86/x86state.c b/thirdparty/libtheora/x86/x86state.c
index a786bec284..a786bec284 100644
--- a/drivers/theora/x86/x86state.c
+++ b/thirdparty/libtheora/x86/x86state.c
diff --git a/drivers/theora/x86_vc/mmxencfrag.c b/thirdparty/libtheora/x86_vc/mmxencfrag.c
index ac9dacf377..ac9dacf377 100644
--- a/drivers/theora/x86_vc/mmxencfrag.c
+++ b/thirdparty/libtheora/x86_vc/mmxencfrag.c
diff --git a/drivers/theora/x86_vc/mmxfdct.c b/thirdparty/libtheora/x86_vc/mmxfdct.c
index dcf17c9fa7..dcf17c9fa7 100644
--- a/drivers/theora/x86_vc/mmxfdct.c
+++ b/thirdparty/libtheora/x86_vc/mmxfdct.c
diff --git a/drivers/theora/x86_vc/mmxfrag.c b/thirdparty/libtheora/x86_vc/mmxfrag.c
index 4eb2084dc6..4eb2084dc6 100644
--- a/drivers/theora/x86_vc/mmxfrag.c
+++ b/thirdparty/libtheora/x86_vc/mmxfrag.c
diff --git a/drivers/theora/x86_vc/mmxfrag.h b/thirdparty/libtheora/x86_vc/mmxfrag.h
index 45ee93e777..45ee93e777 100644
--- a/drivers/theora/x86_vc/mmxfrag.h
+++ b/thirdparty/libtheora/x86_vc/mmxfrag.h
diff --git a/drivers/theora/x86_vc/mmxidct.c b/thirdparty/libtheora/x86_vc/mmxidct.c
index 8f5ff6803c..8f5ff6803c 100644
--- a/drivers/theora/x86_vc/mmxidct.c
+++ b/thirdparty/libtheora/x86_vc/mmxidct.c
diff --git a/drivers/theora/x86_vc/mmxloop.h b/thirdparty/libtheora/x86_vc/mmxloop.h
index 2561fca2ae..2561fca2ae 100644
--- a/drivers/theora/x86_vc/mmxloop.h
+++ b/thirdparty/libtheora/x86_vc/mmxloop.h
diff --git a/drivers/theora/x86_vc/mmxstate.c b/thirdparty/libtheora/x86_vc/mmxstate.c
index 73bd1981cf..73bd1981cf 100644
--- a/drivers/theora/x86_vc/mmxstate.c
+++ b/thirdparty/libtheora/x86_vc/mmxstate.c
diff --git a/drivers/theora/x86_vc/x86enc.c b/thirdparty/libtheora/x86_vc/x86enc.c
index e1960e1f0b..e1960e1f0b 100644
--- a/drivers/theora/x86_vc/x86enc.c
+++ b/thirdparty/libtheora/x86_vc/x86enc.c
diff --git a/drivers/theora/x86_vc/x86enc.h b/thirdparty/libtheora/x86_vc/x86enc.h
index 581484641f..581484641f 100644
--- a/drivers/theora/x86_vc/x86enc.h
+++ b/thirdparty/libtheora/x86_vc/x86enc.h
diff --git a/drivers/theora/x86_vc/x86int.h b/thirdparty/libtheora/x86_vc/x86int.h
index 4cca485311..4cca485311 100644
--- a/drivers/theora/x86_vc/x86int.h
+++ b/thirdparty/libtheora/x86_vc/x86int.h
diff --git a/drivers/theora/x86_vc/x86state.c b/thirdparty/libtheora/x86_vc/x86state.c
index a786bec284..a786bec284 100644
--- a/drivers/theora/x86_vc/x86state.c
+++ b/thirdparty/libtheora/x86_vc/x86state.c