Opened 17 years ago

Closed 15 years ago

#828 closed defect (invalid)

Streaming VC-1 video not working

Reported by: mplayer@… Owned by: mans@…
Priority: normal Component: demuxer
Version: HEAD Severity: normal
Keywords: MPlayer Cc:
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

I'm attempting to stream an evo file from my own application to mplayer using the ffvc1 codec. However this does not work. There's a lot of info being outputted, but no video. When writing the file to disk first and then playing it from disk works fine, so only streaming it is a problem.
I've also tried it using a simple cat, but results are the same. When doing the same with for example an avi file, the problem does not occur. This has let me to believe to problem is located in the ffvc1 decoder.

I've pasted the output of the working playback and the streamed output below. I've updated the from SVN last night (May 20th) to make sure the code is up to date.


Playing without stream/pipe:

$ mplayer -vc ffvc1 output/UNILOGO.EVO
MPlayer dev-SVN-r23348-4.1.2 (C) 2000-2007 MPlayer Team
CPU: AMD Athlon(tm) 64 Processor 3800+ (Family: 15, Model: 47, Stepping: 2)
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE SSE2

Playing output/UNILOGO.EVO.
MPEG-PS file format detected.
Searching for VC1 sequence header... found
VIDEO: VC-1 1920x1080, 29.970 fps, header len: 33
==========================================================================
Forced video codec: ffvc1
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffvc1] vfm: ffmpeg (FFmpeg M$ WVC1)
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform

Too many video packets in the buffer: (4096 in 8274359 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
A52 sync failed
ADecoder init failed :(
ADecoder init failed :(
Requested audio codec family [ac3] (afm=libac3) not available.
Enable it at compilation.
Opening audio decoder: [hwac3] AC3/DTS pass-through S/PDIF
No accelerated IMDCT transform found

Too many video packets in the buffer: (4096 in 8274359 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
AC3/DTS sync failed
ADecoder init failed :(
ADecoder init failed :(
Cannot find codec for audio format 0x2000.
Read DOCS/HTML/en/codecs.html!
Audio: no sound
Starting playback...
VDec: vo config request - 1920 x 1080 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [xv] 1920x1080 => 1920x1080 Planar YV12
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
V: 23.8 712/712 132% 13% 0.0% 0 0

Exiting... (End of file)

Using fifo and opening that fifo with mplayer OR using cat:

$ cat output/UNILOGO.EVO | mplayer -vc ffvc1 -
MPlayer dev-SVN-r23348-4.1.2 (C) 2000-2007 MPlayer Team
CPU: AMD Athlon(tm) 64 Processor 3800+ (Family: 15, Model: 47, Stepping: 2)
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE SSE2

Playing -.
Reading from stdin...
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Win32 LoadLibrary failed to load: avisynth.dll, /usr/local/lib/codecs/avisynth.dll, /usr/lib/win32/avisynth.dll, /usr/local/lib/win32/avisynth.dll
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
Cannot seek backward in linear streams!
Seek failed
MPEG-PS file format detected.
MPEG: FATAL: EOF while searching for sequence header.
Video: Cannot read properties.
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
a52: CRC check failed!
Using MMX optimized resampler
AUDIO: 32000 Hz, 2 ch, s16le, 32.0 kbit/3.12% (ratio: 4000->128000)
Selected audio codec: [a52] afm: liba52 (AC3-liba52)
==========================================================================
[AO OSS] audio_setup: Can't open audio device /dev/dsp: No such file or directory
[AO_ALSA] alsa-lib: confmisc.c:670:(snd_func_card_driver) cannot find card '0'
[AO_ALSA] alsa-lib: conf.c:3500:(_snd_config_evaluate) function snd_func_card_driver returned error: No such device
[AO_ALSA] alsa-lib: confmisc.c:391:(snd_func_concat) error evaluating strings
[AO_ALSA] alsa-lib: conf.c:3500:(_snd_config_evaluate) function snd_func_concat returned error: No such device
[AO_ALSA] alsa-lib: confmisc.c:1070:(snd_func_refer) error evaluating name
[AO_ALSA] alsa-lib: conf.c:3500:(_snd_config_evaluate) function snd_func_refer returned error: No such device
[AO_ALSA] alsa-lib: conf.c:3968:(snd_config_expand) Evaluate error: No such device
[AO_ALSA] alsa-lib: pcm.c:2143:(snd_pcm_open_noupdate) Unknown PCM default
[AO_ALSA] Playback open error: No such device
mcop warning: user defined signal handler found for SIG_PIPE, overriding
[AO ARTS] Connected to sound server.
[AO ARTS] Stream opened.
[AO ARTS] buffer size: 20480
[AO ARTS] buffer size: 2048
AO: [arts] 32000Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed! unknown) ??,?%
a52: error at resampling
a52: CRC check failed!
a52: error at resampling
a52: CRC check failed!
a52: error at resampling
A: 29.8 (29.8) of 0.0 (unknown) ??,?%

Exiting... (End of file)

Change History (6)

comment:1 by mplayer@…, 17 years ago

For the record, it does work fine with evo files containing mpeg12 video. It only affects evo files containing ffvc1 video.

Additional identify information:


Doesn't work when streaming

Playing output/UNILOGO.EVO.
ID_VIDEO_ID=85
ID_AUDIO_ID=192
MPEG-PS file format detected.
Searching for VC1 sequence header... found
VIDEO: VC-1 1920x1080, 29.970 fps, header len: 33
ID_FILENAME=output/UNILOGO.EVO
ID_DEMUXER=mpegps
ID_VIDEO_FORMAT=WVC1
ID_VIDEO_BITRATE=0
ID_VIDEO_WIDTH=1920
ID_VIDEO_HEIGHT=1080
ID_VIDEO_FPS=29.970
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=8192
ID_AUDIO_BITRATE=0
ID_AUDIO_RATE=0
ID_AUDIO_NCH=0
ID_LENGTH=28.39
==========================================================================
Forced video codec: ffvc1
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffvc1] vfm: ffmpeg (FFmpeg M$ WVC1)
==========================================================================
ID_VIDEO_CODEC=ffvc1


Plays fine when streamed

Playing output/ANATOMY.EVO.
ID_VIDEO_ID=0
ID_AUDIO_ID=192
MPEG-PS file format detected.
VIDEO: MPEG2 720x480 (aspect 2) 29.970 fps 9800.0 kbps (1225.0 kbyte/s)
ID_FILENAME=output/ANATOMY.EVO
ID_DEMUXER=mpegps
ID_VIDEO_FORMAT=0x10000002
ID_VIDEO_BITRATE=9800000
ID_VIDEO_WIDTH=720
ID_VIDEO_HEIGHT=480
ID_VIDEO_FPS=29.970
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=8192
ID_AUDIO_BITRATE=0
ID_AUDIO_RATE=0
ID_AUDIO_NCH=0
ID_LENGTH=38.34
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 480 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [libmpeg2] MPEG 1/2 Video decoder libmpeg2-v0.4.0b
Selected video codec: [mpeg12] vfm: libmpeg2 (MPEG-1 or 2 (libmpeg2))
==========================================================================
ID_VIDEO_CODEC=mpeg12

comment:2 by mplayer@…, 17 years ago

Summary: Streaming evo using ffvc1 codec not workingStreaming VC-1 video not working

comment:3 by reimar, 17 years ago

Cc: Reimar.Doeffinger@… added
Component: libavcodecdemuxer
Keywords: MPlayer added; FFmpeg removed
product: FFmpegMPlayer
Version: unspecifiedHEAD

Uh, why did you set "Product" to FFmpeg? I can't see you using ffmpeg anywhere. And try -demuxer lavf and -demuxer mpegps (or whatever it is called).

comment:4 by mplayer@…, 17 years ago

Severity: blockernormal

My appologies, I assumed this was related to ffmpeg, not mplayer.

Applying the -demuxed options plays the videostream in both cases. However, when using lavf it produces a lot of messages during the entire playback, which in turn slows back playback due to additional CPU usage. mpegps doesn't do this and seems to be the best option right now. Output for both is attached below.
Btw, shouldn't this work without explicitly passing the -demuxer option?

In any case it allows me to continue testing my application. Thank you.


Using -demuxer lavf

$ mplayer -demuxer lavf -vc ffvc1 hdpipe
MPlayer dev-SVN-r23348-4.1.2 (C) 2000-2007 MPlayer Team
CPU: AMD Athlon(tm) 64 Processor 3800+ (Family: 15, Model: 47, Stepping: 2)
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE SSE2

Playing hdpipe.
libavformat file format detected.
Cannot seek backward in linear streams!
Seek failed
[lavf] Video stream found, -vid 0
[lavf] Audio stream found, -aid 1
VIDEO: [WVC1] 1920x1080 0bpp 29.970 fps 0.0 kbps ( 0.0 kbyte/s)
==========================================================================
Forced video codec: ffvc1
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffvc1] vfm: ffmpeg (FFmpeg M$ WVC1)
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
a52: CRC check failed!
Using MMX optimized resampler
AUDIO: 32000 Hz, 2 ch, s16le, 32.0 kbit/3.12% (ratio: 4000->128000)
Selected audio codec: [a52] afm: liba52 (AC3-liba52)
==========================================================================
[AO OSS] audio_setup: Can't open audio device /dev/dsp: No such file or directory
[AO_ALSA] alsa-lib: confmisc.c:670:(snd_func_card_driver) cannot find card '0'
[AO_ALSA] alsa-lib: conf.c:3500:(_snd_config_evaluate) function snd_func_card_driver returned error: No such device
[AO_ALSA] alsa-lib: confmisc.c:391:(snd_func_concat) error evaluating strings
[AO_ALSA] alsa-lib: conf.c:3500:(_snd_config_evaluate) function snd_func_concat returned error: No such device
[AO_ALSA] alsa-lib: confmisc.c:1070:(snd_func_refer) error evaluating name
[AO_ALSA] alsa-lib: conf.c:3500:(_snd_config_evaluate) function snd_func_refer returned error: No such device
[AO_ALSA] alsa-lib: conf.c:3968:(snd_config_expand) Evaluate error: No such device
[AO_ALSA] alsa-lib: pcm.c:2143:(snd_pcm_open_noupdate) Unknown PCM default
[AO_ALSA] Playback open error: No such device
mcop warning: user defined signal handler found for SIG_PIPE, overriding
[AO ARTS] Connected to sound server.
[AO ARTS] Stream opened.
[AO ARTS] buffer size: 20480
[AO ARTS] buffer size: 2048
AO: [arts] 32000Hz 2ch s16le (2 bytes per sample)
Starting playback...
a52: error at resampling
A: 6.2 V: 0.0 A-V: 6.136 ct: 0.000 1/ 1 ??% ??% ??,?% 0 0
Too many video packets in the buffer: (145 in 8463570 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
VDec: vo config request - 1920 x 1080 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [xv] 1920x1080 => 1920x1080 Planar YV12
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
a52: error at resampling6.260 ct: 0.003 2/ 2 ??% ??% ??,?% 0 0
A: 6.3 V: 0.0 A-V: 6.261 ct: 0.007 3/ 3 ??% ??% ??,?% 0 0
Too many video packets in the buffer: (143 in 8462003 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
A: 6.3 V: 0.0 A-V: 6.261 ct: 0.010 4/ 4 ??% ??% ??,?% 0 0
Too many video packets in the buffer: (142 in 8461998 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
A: 6.3 V: 0.0 A-V: 6.261 ct: 0.013 5/ 5 ??% ??% ??,?% 0 0
Too many video packets in the buffer: (141 in 8460436 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

... and so on


Using -demuxer mpegps

$ mplayer -demuxer mpegps -vc ffvc1 hdpipe
MPlayer dev-SVN-r23348-4.1.2 (C) 2000-2007 MPlayer Team
CPU: AMD Athlon(tm) 64 Processor 3800+ (Family: 15, Model: 47, Stepping: 2)
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE SSE2

Playing hdpipe.
Cannot seek backward in linear streams!
Seek failed
MPEG-PS file format detected.
Searching for VC1 sequence header... found
VIDEO: VC-1 1920x1080, 29.970 fps, header len: 33
==========================================================================
Forced video codec: ffvc1
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffvc1] vfm: ffmpeg (FFmpeg M$ WVC1)
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform

Too many video packets in the buffer: (4096 in 8274359 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
A52 sync failed
ADecoder init failed :(
ADecoder init failed :(
Requested audio codec family [ac3] (afm=libac3) not available.
Enable it at compilation.
Opening audio decoder: [hwac3] AC3/DTS pass-through S/PDIF
No accelerated IMDCT transform found

Too many video packets in the buffer: (4096 in 8274359 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
AC3/DTS sync failed
ADecoder init failed :(
ADecoder init failed :(
Cannot find codec for audio format 0x2000.
Read DOCS/HTML/en/codecs.html!
Audio: no sound
Starting playback...
VDec: vo config request - 1920 x 1080 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [xv] 1920x1080 => 1920x1080 Planar YV12
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
V: 3.3 100/100 76% 12% 0.0% 0 0
Exiting... (Quit)

comment:5 by compn, 16 years ago

Cc: Reimar.Doeffinger@… removed

could you try latest svn and see if the bug is still there?

lots of evo fixes since may.

comment:6 by compn, 15 years ago

Resolution: invalid
Status: newclosed

no response
no sample
using random program to send random data to mplayer

bug > closed

Note: See TracTickets for help on using tickets.