[FFmpeg-trac] #58(FFplay:new): sp5x playback regression

FFmpeg trac at avcodec.org
Wed Apr 13 00:44:01 CEST 2011


#58: sp5x playback regression
--------------------------+---------------------
  Reporter:  ami_stuff    |      Owner:  michael
      Type:  defect       |     Status:  new
  Priority:  normal       |  Component:  FFplay
   Version:  unspecified  |   Keywords:
Blocked By:               |   Blocking:
Reproduced:  0            |   Analyzed:  0
--------------------------+---------------------
 seems like regression because of this patch (more precise line
 "av_assert0(codec->flags & CODEC_FLAG_EMU_EDGE);"):

 --- a/ffplay.c
 +++ b/ffplay.c
 @@ -31,6 +31,7 @@
  #include "libavutil/imgutils.h"
  #include "libavutil/parseutils.h"
  #include "libavutil/samplefmt.h"
 +#include "libavutil/avassert.h"
  #include "libavformat/avformat.h"
  #include "libavdevice/avdevice.h"
  #include "libswscale/swscale.h"
 @@ -1582,6 +1583,8 @@ static int input_get_buffer(AVCodecContext *codec,
 AVFrame *pic)
      int i, w, h, stride[4];
      unsigned edge;

 +    av_assert0(codec->flags & CODEC_FLAG_EMU_EDGE);
 +
      if (codec->codec->capabilities & CODEC_CAP_NEG_LINESIZES)
          perms |= AV_PERM_NEG_LINESIZES;

 @@ -1664,8 +1667,8 @@ static int input_init(AVFilterContext *ctx, const
 char *args, void *opaque)
      codec    = priv->is->video_st->codec;
      codec->opaque = ctx;
      if((codec->codec->capabilities & CODEC_CAP_DR1)
 -       && codec->codec_id != CODEC_ID_SVQ1 //chroma alignment from lavfi
 is insufficient
      ) {
 +        codec->flags |= CODEC_FLAG_EMU_EDGE;
          priv->use_dr1 = 1;
          codec->get_buffer     = input_get_buffer;
          codec->release_buffer = input_release_buffer;


 http://samples.mplayerhq.hu/V-codecs/SP5x/sunplus_32bit_codec/img_0020.avi


 C:\>ffplay C:\img_0020.avi
 FFplay version git-N-28948-g9d4cb45, Copyright (c) 2003-2011 the FFmpeg
 develope
 rs
   built on Apr  8 2011 16:57:22 with gcc 4.5.2
   configuration: --enable-gpl --enable-version3 --enable-runtime-cpudetect
 --ena
 ble-memalign-hack --arch=i686 --target-os=mingw32 --cross-
 prefix=i686-w64-mingw3
 2- --enable-avisynth --enable-bzlib --enable-frei0r --enable-libopencore-
 amrnb -
 -enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-
 libmp3la
 me --enable-libopenjpeg --enable-librtmp --enable-libschroedinger
 --enable-libsp
 eex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264
 --ena
 ble-libxavs --enable-libxvid --enable-zlib --extra-
 cflags=-I/home/kyle/software/
 ffmpeg/external-libs/32-bit/include --extra-
 ldflags=-L/home/kyle/software/ffmpeg
 /external-libs/32-bit/lib --pkg-config=pkg-config
   libavutil    50. 40. 1 / 50. 40. 1
   libavcodec   52.117. 0 / 52.117. 0
   libavformat  52.106. 0 / 52.106. 0
   libavdevice  52.  4. 0 / 52.  4. 0
   libavfilter   1. 77. 1 /  1. 77. 1
   libswscale    0. 13. 0 /  0. 13. 0
 Input #0, avi, from 'C:\img_0020.avi':
   Duration: 00:00:10.26, start: 0.000000, bitrate: 311 kb/s
     Stream #0.0: Video: sp5x, yuvj420p, 320x240, 15 tbr, 15 tbn, 15 tbc
 [ffsink @ 01EB2480] auto-inserting filter 'auto-inserted scaler 0' between
 the f
 ilter 'src' and the filter 'out'
 [scale @ 01EB2700] w:320 h:240 fmt:yuvj420p -> w:320 h:240 fmt:yuv420p
 flags:0x4

 Assertion codec->flags & 0x4000 failed at
 /home/kyle/software/ffmpeg/source/ffmp
 eg/ffplay.c:1586

 This application has requested the Runtime to terminate it in an unusual
 way.
 Please contact the application's support team for more information.




 btw. this codec seems to be jpeg, so maybe supported max_lowres should be
 lowered to 3 too?

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/58>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list