summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVittorio Giovara <vittorio.giovara@gmail.com>2015-03-11 20:43:59 +0000
committerVittorio Giovara <vittorio.giovara@gmail.com>2015-03-13 19:48:07 +0000
commit5a0e953c2465be9d449d5f523c3d3e2b886910b2 (patch)
tree6151a1ed76d62e26d9e67e1828b0a25aa00afc6d
parent117b432748ca87de4cd0f09d9b1495545e264733 (diff)
mjpeg: Mark decoder family as thread safe
No global variables are used and the VLC tables are allocated without static elements. This will allow using a JPEG decoding context within other decoders.
-rw-r--r--libavcodec/jpeglsdec.c2
-rw-r--r--libavcodec/mjpegbdec.c2
-rw-r--r--libavcodec/mjpegdec.c2
-rw-r--r--libavcodec/mxpegdec.c1
-rw-r--r--libavcodec/sp5xdec.c3
5 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/jpeglsdec.c b/libavcodec/jpeglsdec.c
index df72ca338f..9f7735ecec 100644
--- a/libavcodec/jpeglsdec.c
+++ b/libavcodec/jpeglsdec.c
@@ -28,6 +28,7 @@
#include "avcodec.h"
#include "get_bits.h"
#include "golomb.h"
+#include "internal.h"
#include "mathops.h"
#include "mjpeg.h"
#include "mjpegdec.h"
@@ -396,4 +397,5 @@ AVCodec ff_jpegls_decoder = {
.close = ff_mjpeg_decode_end,
.decode = ff_mjpeg_decode_frame,
.capabilities = CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};
diff --git a/libavcodec/mjpegbdec.c b/libavcodec/mjpegbdec.c
index 66cf2d43ce..ef1df9c08d 100644
--- a/libavcodec/mjpegbdec.c
+++ b/libavcodec/mjpegbdec.c
@@ -27,6 +27,7 @@
#include <inttypes.h>
#include "avcodec.h"
+#include "internal.h"
#include "mjpeg.h"
#include "mjpegdec.h"
@@ -161,4 +162,5 @@ AVCodec ff_mjpegb_decoder = {
.close = ff_mjpeg_decode_end,
.decode = mjpegb_decode_frame,
.capabilities = CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};
diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
index 3ef9e82aea..82cee48354 100644
--- a/libavcodec/mjpegdec.c
+++ b/libavcodec/mjpegdec.c
@@ -1723,6 +1723,7 @@ AVCodec ff_mjpeg_decoder = {
.decode = ff_mjpeg_decode_frame,
.capabilities = CODEC_CAP_DR1,
.priv_class = &mjpegdec_class,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};
AVCodec ff_thp_decoder = {
@@ -1735,4 +1736,5 @@ AVCodec ff_thp_decoder = {
.close = ff_mjpeg_decode_end,
.decode = ff_mjpeg_decode_frame,
.capabilities = CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};
diff --git a/libavcodec/mxpegdec.c b/libavcodec/mxpegdec.c
index bfaae34b76..46536981e4 100644
--- a/libavcodec/mxpegdec.c
+++ b/libavcodec/mxpegdec.c
@@ -346,4 +346,5 @@ AVCodec ff_mxpeg_decoder = {
.close = mxpeg_decode_end,
.decode = mxpeg_decode_frame,
.capabilities = CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};
diff --git a/libavcodec/sp5xdec.c b/libavcodec/sp5xdec.c
index ca6b9fd6f0..08bdbc097c 100644
--- a/libavcodec/sp5xdec.c
+++ b/libavcodec/sp5xdec.c
@@ -25,6 +25,7 @@
*/
#include "avcodec.h"
+#include "internal.h"
#include "mjpeg.h"
#include "mjpegdec.h"
#include "sp5x.h"
@@ -103,6 +104,7 @@ AVCodec ff_sp5x_decoder = {
.close = ff_mjpeg_decode_end,
.decode = sp5x_decode_frame,
.capabilities = CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};
AVCodec ff_amv_decoder = {
@@ -114,4 +116,5 @@ AVCodec ff_amv_decoder = {
.init = ff_mjpeg_decode_init,
.close = ff_mjpeg_decode_end,
.decode = sp5x_decode_frame,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
};