Browse code

Merge remote-tracking branch 'ffmpeg-mt/master'

* ffmpeg-mt/master:
Update todo. More items appeared...
Fix mdec
Duplicate: id3v1: change filesize to int64_t.
Duplicate: id3v1: Seek back to old position after reading.

Conflicts:
libavcodec/mpegvideo.c
libavcodec/snow.c
libavformat/id3v1.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

Michael Niedermayer authored on 2011/03/30 09:58:38
Showing 3 changed files
... ...
@@ -246,7 +246,7 @@ static av_cold int decode_init_thread_copy(AVCodecContext *avctx){
246 246
     avctx->coded_frame= p;
247 247
     a->avctx= avctx;
248 248
 
249
-    p->qscale_table= av_mallocz( p->qstride * a->mb_height);
249
+    p->qscale_table= av_mallocz(a->mb_width);
250 250
 
251 251
     return 0;
252 252
 }
... ...
@@ -227,7 +227,7 @@ void ff_id3v1_read(AVFormatContext *s)
227 227
 {
228 228
     int ret;
229 229
     uint8_t buf[ID3v1_TAG_SIZE];
230
-    int64_t filesize, position = url_ftell(s->pb);
230
+    int64_t filesize, position = avio_tell(s->pb);
231 231
 
232 232
     if (!url_is_streamed(s->pb)) {
233 233
         /* XXX: change that */
... ...
@@ -2,7 +2,7 @@ Todo
2 2
 
3 3
 -- For other people
4 4
 - Multithread vp8 or vc1.
5
-- Multithread an intra codec like mjpeg.
5
+- Multithread an intra codec like mjpeg (trivial).
6 6
 - Fix mpeg1 (see below).
7 7
 - Try the first three items under Optimization.
8 8
 - Fix h264 (see below).
... ...
@@ -14,6 +14,8 @@ General critical:
14 14
 - Error resilience has to run before ff_report_frame_progress()
15 15
 is called. Otherwise there will be race conditions. (This might already
16 16
 work.) In general testing error paths should be done more.
17
+- 'make fate THREADS=2' doesn't pass. Most failures are due to
18
+bugs in vsync in ffmpeg.c, which are currently obscuring real failures.
17 19
 
18 20
 h264:
19 21
 - Files split at the wrong NAL unit don't (and can't)
... ...
@@ -39,7 +41,7 @@ with threads on. Currently disabled for this reason.
39 39
 -- Prove correct
40 40
 
41 41
 - decode_update_progress() in h264.c
42
-h264_race_checking branch has some work on h264,
42
+race_checking branch has some work on h264,
43 43
 but not that function. It might be worth putting
44 44
 the branch under #ifdef DEBUG in mainline, but
45 45
 the code would have to be cleaner.
... ...
@@ -48,9 +50,11 @@ the code would have to be cleaner.
48 48
 
49 49
 -- Optimization
50 50
 
51
+- Merge h264 decode_update_progress() with loop_filter().
52
+Add CODEC_CAP_DRAW_HORIZ_BAND as a side effect.
51 53
 - EMU_EDGE is always set for h264 PAFF+MT
52 54
 because draw_edges() writes into the other field's
53
-thread's pixels.
55
+thread's pixels. Needs an option to skip T/B fields.
54 56
 - Check update_thread_context() functions and make
55 57
 sure they only copy what they need to.
56 58
 - Try some more optimization of the "ref < 48; ref++"