[FFmpeg-cvslog] Merge remote-tracking branch 'ffmpeg-mt/master'

Michael Niedermayer git at videolan.org
Wed Mar 30 03:02:48 CEST 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed Mar 30 02:58:38 2011 +0200| [55ce3c67bb25cd44889f2143ce9fd7dac3ab4a9d] | committer: Michael Niedermayer

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 at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=55ce3c67bb25cd44889f2143ce9fd7dac3ab4a9d
---

 libavcodec/mdec.c   |    2 +-
 libavformat/id3v1.c |    2 +-
 mt-work/todo.txt    |   10 +++++++---
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c
index b28ac26..ba06641 100644
--- a/libavcodec/mdec.c
+++ b/libavcodec/mdec.c
@@ -246,7 +246,7 @@ static av_cold int decode_init_thread_copy(AVCodecContext *avctx){
     avctx->coded_frame= p;
     a->avctx= avctx;
 
-    p->qscale_table= av_mallocz( p->qstride * a->mb_height);
+    p->qscale_table= av_mallocz(a->mb_width);
 
     return 0;
 }
diff --git a/libavformat/id3v1.c b/libavformat/id3v1.c
index 4f9b584..365c3e0 100644
--- a/libavformat/id3v1.c
+++ b/libavformat/id3v1.c
@@ -227,7 +227,7 @@ void ff_id3v1_read(AVFormatContext *s)
 {
     int ret;
     uint8_t buf[ID3v1_TAG_SIZE];
-    int64_t filesize, position = url_ftell(s->pb);
+    int64_t filesize, position = avio_tell(s->pb);
 
     if (!url_is_streamed(s->pb)) {
         /* XXX: change that */
diff --git a/mt-work/todo.txt b/mt-work/todo.txt
index a27f181..013853e 100644
--- a/mt-work/todo.txt
+++ b/mt-work/todo.txt
@@ -2,7 +2,7 @@ Todo
 
 -- For other people
 - Multithread vp8 or vc1.
-- Multithread an intra codec like mjpeg.
+- Multithread an intra codec like mjpeg (trivial).
 - Fix mpeg1 (see below).
 - Try the first three items under Optimization.
 - Fix h264 (see below).
@@ -14,6 +14,8 @@ General critical:
 - Error resilience has to run before ff_report_frame_progress()
 is called. Otherwise there will be race conditions. (This might already
 work.) In general testing error paths should be done more.
+- 'make fate THREADS=2' doesn't pass. Most failures are due to
+bugs in vsync in ffmpeg.c, which are currently obscuring real failures.
 
 h264:
 - Files split at the wrong NAL unit don't (and can't)
@@ -39,7 +41,7 @@ with threads on. Currently disabled for this reason.
 -- Prove correct
 
 - decode_update_progress() in h264.c
-h264_race_checking branch has some work on h264,
+race_checking branch has some work on h264,
 but not that function. It might be worth putting
 the branch under #ifdef DEBUG in mainline, but
 the code would have to be cleaner.
@@ -48,9 +50,11 @@ the code would have to be cleaner.
 
 -- Optimization
 
+- Merge h264 decode_update_progress() with loop_filter().
+Add CODEC_CAP_DRAW_HORIZ_BAND as a side effect.
 - EMU_EDGE is always set for h264 PAFF+MT
 because draw_edges() writes into the other field's
-thread's pixels.
+thread's pixels. Needs an option to skip T/B fields.
 - Check update_thread_context() functions and make
 sure they only copy what they need to.
 - Try some more optimization of the "ref < 48; ref++"



More information about the ffmpeg-cvslog mailing list