Opened 14 years ago

Closed 14 years ago

#89 closed defect (fixed)

ffplay - crash with svq3 codec

Reported by: ami_stuff Owned by:
Priority: normal Component: undetermined
Version: git Keywords: ffplay
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

file uploaded to incoming as "ticket58.mov"

C:\>ffmpeg -i C:\ticket58.mov
FFmpeg version git-N-29181-ga304071, Copyright (c) 2000-2011 the FFmpeg develope
rs
  built on Apr 18 2011 21:24:03 with gcc 4.5.2
  configuration: --enable-gpl --enable-version3 --enable-runtime-cpudetect --ena
ble-memalign-hack --enable-avisynth --enable-bzlib --enable-frei0r --enable-libo
pencore-amrnb --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --
enable-libmp3lame --enable-libopenjpeg --enable-librtmp --enable-libschroedinger
 --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enabl
e-libx264 --enable-libxavs --enable-libxvid --enable-zlib --cross-prefix=i686-w6
4-mingw32- --target-os=mingw32 --arch=x86_32 --extra-cflags=-I/home/kyle/softwar
e/ffmpeg/external-libraries/win32/include --extra-ldflags=-L/home/kyle/software/
ffmpeg/external-libraries/win32/lib --pkg-config=pkg-config
  libavutil    50. 40. 1 / 50. 40. 1
  libavcodec   52.120. 0 / 52.120. 0
  libavformat  52.108. 0 / 52.108. 0
  libavdevice  52.  4. 0 / 52.  4. 0
  libavfilter   1. 79. 0 /  1. 79. 0
  libswscale    0. 13. 0 /  0. 13. 0

Seems stream 1 codec frame rate differs from container frame rate: 30000.00 (300
00/1) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\ticket58.mov':
  Metadata:
    creation_time   : 2004-06-14 12:15:14
  Duration: 00:00:58.88, start: 0.000000, bitrate: 498 kb/s
    Stream #0.0(eng): Audio: qdm2, 44100 Hz, 2 channels, s16, 40 kb/s
    Metadata:
      creation_time   : 2004-06-14 12:15:14
    Stream #0.1(eng): Video: svq3, yuvj420p, 320x240, 457 kb/s, 29.77 fps, 29.97
 tbr, 30k tbn, 30k tbc
    Metadata:
      creation_time   : 2004-06-14 12:15:14
At least one output file must be specified

I belive the crash is related to this patch:

--- 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;

Change History (2)

comment:1 by Carl Eugen Hoyos, 14 years ago

Keywords: ffplay added
Reproduced by developer: set
Status: newopen
Version: unspecifiedgit

The crash is reproducible.

comment:2 by Michael Niedermayer, 14 years ago

Resolution: fixed
Status: openclosed

Should be fixed

Note: See TracTickets for help on using tickets.