Ticket #58 (closed defect: fixed)
sp5x playback regression
| Reported by: | ami_stuff | Owned by: | michael |
|---|---|---|---|
| Priority: | important | Component: | FFplay |
| Version: | git | Keywords: | crash abort |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | yes | |
| Analyzed by developer: | no |
Description
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?
Change History
comment:1 Changed 2 years ago by cehoyos
- Priority changed from normal to important
- Status changed from new to open
- Version changed from unspecified to git
- Reproduced by developer set
comment:2 Changed 2 years ago by ami_stuff
another problematic 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
comment:3 Changed 2 years ago by ami_stuff
http://samples.multimedia.cx/amv/test2.amv
C:\>ffplay "C:\test2.amv"
FFplay version git-N-29181-ga304071, Copyright (c) 2003-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
[avi @ 01D5D4F0] scale/rate is 0/0 which is invalid. (This file has been generat
ed by broken software.)
Last message repeated 1 times
Input #0, avi, from 'C:\test2.amv':
Duration: 00:00:00.00, start: 0.000000, bitrate: -2147483 kb/s
Stream #0.0: Video: amv, yuvj420p, 96x64, 8 tbr, 8 tbn, 8 tbc
Stream #0.1: Audio: adpcm_ima_amv, 22050 Hz, 1 channels, s16, 352 kb/s
[ffsink @ 01D623F0] auto-inserting filter 'auto-inserted scaler 0' between the f
ilter 'src' and the filter 'out'
[scale @ 01D6FDD0] w:96 h:64 fmt:yuvj420p -> w:96 h:64 fmt:yuv420p flags:0x4
Assertion codec->flags & 0x4000 failed at /home/kyle/software/ffmpeg/source/ffmp
eg/ffplay.c:1575
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
comment:4 Changed 2 years ago by ami_stuff
http://samples.multimedia.cx/real/VC-RV10/dannie-56.rm
C:\>ffmpeg -i "C:\dannie-56.rm"
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
Input #0, rm, from 'C:\dannie-56.rm':
Metadata:
title : Dannie VS. Ginger
author : Catfight Productions
copyright : Catfight Productions 1997
comment :
Duration: 00:00:19.15, start: 0.000000, bitrate: 98 kb/s
Stream #0.0: Audio: ac3, 8000 Hz, mono, s16, 12 kb/s
Stream #0.1: Video: rv10, yuv420p, 320x240, 22 kb/s, 24 tbr, 1k tbn, 24 tbc
At least one output file must be specified
comment:5 Changed 2 years ago by cehoyos
- Status changed from open to closed
- Resolution set to fixed
Fixed by Michael in 89f903b3d5ec38c9c5d90fba7e626fa0eda61a32.



Not reproducible with --disable-avfilter.