1 |
lu_zero 07/09/19 07:32:22 |
2 |
|
3 |
Modified: blender-2.44-swscale.patch |
4 |
Added: digest-blender-2.44-r1 |
5 |
Log: |
6 |
complete the fix for ffmpeg |
7 |
(Portage version: 2.1.3.9) |
8 |
|
9 |
Revision Changes Path |
10 |
1.2 media-gfx/blender/files/blender-2.44-swscale.patch |
11 |
|
12 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-gfx/blender/files/blender-2.44-swscale.patch?rev=1.2&view=markup |
13 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-gfx/blender/files/blender-2.44-swscale.patch?rev=1.2&content-type=text/plain |
14 |
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-gfx/blender/files/blender-2.44-swscale.patch?r1=1.1&r2=1.2 |
15 |
|
16 |
Index: blender-2.44-swscale.patch |
17 |
=================================================================== |
18 |
RCS file: /var/cvsroot/gentoo-x86/media-gfx/blender/files/blender-2.44-swscale.patch,v |
19 |
retrieving revision 1.1 |
20 |
retrieving revision 1.2 |
21 |
diff -u -r1.1 -r1.2 |
22 |
--- blender-2.44-swscale.patch 7 Aug 2007 23:31:21 -0000 1.1 |
23 |
+++ blender-2.44-swscale.patch 19 Sep 2007 07:32:21 -0000 1.2 |
24 |
@@ -1,7 +1,20 @@ |
25 |
-Index: writeffmpeg.c |
26 |
-=================================================================== |
27 |
---- blender.orig/source/blender/blenkernel/intern/writeffmpeg.c (revision 11354) |
28 |
-+++ blender/source/blender/blenkernel/intern/writeffmpeg.c (working copy) |
29 |
+diff --git a/trunk/blender/config/linux2-config.py b/trunk/blender/config/linux2-config.py |
30 |
+index edc7f26..bd323e4 100644 |
31 |
+--- a/trunk/blender/config/linux2-config.py |
32 |
++++ b/trunk/blender/config/linux2-config.py |
33 |
+@@ -119,7 +119,7 @@ WITH_BF_FFMPEG = 'false' # -DWITH_FFMPEG |
34 |
+ BF_FFMPEG = '/usr' |
35 |
+ BF_FFMPEG_INC = '${BF_FFMPEG}/include' |
36 |
+ BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib' |
37 |
+-BF_FFMPEG_LIB = 'avformat avcodec avutil' |
38 |
++BF_FFMPEG_LIB = 'avformat avcodec avutil swscale' |
39 |
+ |
40 |
+ # Mesa Libs should go here if your using them as well.... |
41 |
+ WITH_BF_STATICOPENGL = 'false' |
42 |
+diff --git a/trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c b/trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c |
43 |
+index 703f280..8576f59 100644 |
44 |
+--- a/trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c |
45 |
++++ b/trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c |
46 |
@@ -32,6 +32,7 @@ |
47 |
#include <ffmpeg/avformat.h> |
48 |
#include <ffmpeg/avcodec.h> |
49 |
@@ -10,7 +23,7 @@ |
50 |
|
51 |
#if LIBAVFORMAT_VERSION_INT < (49 << 16) |
52 |
#define FFMPEG_OLD_FRAME_RATE 1 |
53 |
-@@ -258,6 +259,7 @@ |
54 |
+@@ -258,6 +259,7 @@ static void write_video_frame(AVFrame* frame) |
55 |
static AVFrame* generate_video_frame(uint8_t* pixels) |
56 |
{ |
57 |
uint8_t* rendered_frame; |
58 |
@@ -18,7 +31,7 @@ |
59 |
|
60 |
AVCodecContext* c = get_codec_from_stream(video_stream); |
61 |
int width = c->width; |
62 |
-@@ -317,8 +319,18 @@ |
63 |
+@@ -317,8 +319,18 @@ static AVFrame* generate_video_frame(uint8_t* pixels) |
64 |
} |
65 |
|
66 |
if (c->pix_fmt != PIX_FMT_RGBA32) { |
67 |
@@ -39,3 +52,62 @@ |
68 |
delete_picture(rgb_frame); |
69 |
} |
70 |
return current_frame; |
71 |
+diff --git a/trunk/blender/source/blender/imbuf/intern/anim.c b/trunk/blender/source/blender/imbuf/intern/anim.c |
72 |
+index 5b185a4..5cdb651 100644 |
73 |
+--- a/trunk/blender/source/blender/imbuf/intern/anim.c |
74 |
++++ b/trunk/blender/source/blender/imbuf/intern/anim.c |
75 |
+@@ -89,6 +89,7 @@ |
76 |
+ #include <ffmpeg/avformat.h> |
77 |
+ #include <ffmpeg/avcodec.h> |
78 |
+ #include <ffmpeg/rational.h> |
79 |
++#include <ffmpeg/swscale.h> |
80 |
+ |
81 |
+ #if LIBAVFORMAT_VERSION_INT < (49 << 16) |
82 |
+ #define FFMPEG_OLD_FRAME_RATE 1 |
83 |
+@@ -619,6 +620,7 @@ static ImBuf * ffmpeg_fetchibuf(struct anim * anim, int position) { |
84 |
+ AVPacket packet; |
85 |
+ int64_t pts_to_search = 0; |
86 |
+ int pos_found = 1; |
87 |
++ static struct SwsContext *img_convert_ctx; |
88 |
+ |
89 |
+ if (anim == 0) return (0); |
90 |
+ |
91 |
+@@ -706,12 +708,32 @@ static ImBuf * ffmpeg_fetchibuf(struct anim * anim, int position) { |
92 |
+ unsigned char * p =(unsigned char*) ibuf->rect; |
93 |
+ unsigned char * e = p + anim->x * anim->y * 4; |
94 |
+ |
95 |
+- img_convert((AVPicture *)anim->pFrameRGB, |
96 |
+- PIX_FMT_RGBA32, |
97 |
+- (AVPicture*)anim->pFrame, |
98 |
+- anim->pCodecCtx->pix_fmt, |
99 |
+- anim->pCodecCtx->width, |
100 |
+- anim->pCodecCtx->height); |
101 |
++// img_convert((AVPicture *)anim->pFrameRGB, |
102 |
++// PIX_FMT_RGBA32, |
103 |
++// (AVPicture*)anim->pFrame, |
104 |
++// anim->pCodecCtx->pix_fmt, |
105 |
++// anim->pCodecCtx->width, |
106 |
++// anim->pCodecCtx->height); |
107 |
++ if (img_convert_ctx == NULL) { |
108 |
++ img_convert_ctx = sws_getContext( |
109 |
++ anim->pCodecCtx->width, |
110 |
++ anim->pCodecCtx->height, |
111 |
++ PIX_FMT_RGBA32, |
112 |
++ anim->pCodecCtx->width, |
113 |
++ anim->pCodecCtx->height, |
114 |
++ anim->pCodecCtx->pix_fmt, |
115 |
++ SWS_BICUBIC, |
116 |
++ NULL, NULL, NULL); |
117 |
++ } |
118 |
++ sws_scale(img_convert_ctx, |
119 |
++ anim->pFrame->data, |
120 |
++ anim->pFrame->linesize, |
121 |
++ 0, |
122 |
++ anim->pCodecCtx->height, |
123 |
++ anim->pFrameRGB->data, |
124 |
++ anim->pFrameRGB->linesize); |
125 |
++ |
126 |
++ |
127 |
+ IMB_flipy(ibuf); |
128 |
+ if (G.order == L_ENDIAN) { |
129 |
+ /* BGRA -> RGBA */ |
130 |
|
131 |
|
132 |
|
133 |
1.1 media-gfx/blender/files/digest-blender-2.44-r1 |
134 |
|
135 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-gfx/blender/files/digest-blender-2.44-r1?rev=1.1&view=markup |
136 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-gfx/blender/files/digest-blender-2.44-r1?rev=1.1&content-type=text/plain |
137 |
|
138 |
Index: digest-blender-2.44-r1 |
139 |
=================================================================== |
140 |
MD5 7ac841f6feb27e9d7fb6d77cf137be12 blender-2.44.tar.gz 14362667 |
141 |
RMD160 65e96e03258263a7759bdff5a6d14fc65d13a816 blender-2.44.tar.gz 14362667 |
142 |
SHA256 8fa5a46ea65d2a8b87fd1368d5984dfa0a41bdc3cfe24c776e069a4fe40102d1 blender-2.44.tar.gz 14362667 |
143 |
|
144 |
|
145 |
|
146 |
-- |
147 |
gentoo-commits@g.o mailing list |