#109 "Muxer frame buffer cannot allocate memory!" when using vfw

svn
closed-fixed
MEncoder (43)
5
2014-08-25
2010-11-07
Thomas
No

the newer builds of mencoder do not work when trying to encode to VP62 using -ovc vfw. they generate error messages for each frame saying "Muxer frame buffer cannot allocate memory!". the resulting file is 0 bytes. earlier builds work (tested with r28126)

example command line:

mencoder input.mp4 -vf softskip,flip,harddup -ovc vfw -xvfwopts codec=vp6vfw.dll:compdata=firstpass.mcf -oac mp3lame -lameopts abr:br=128 -af resample=44100 -noskip -mc 0 -of lavf -fps 24000/1001 -ofps 24000/1001 -o output.flv

output:

MEncoder Sherpya-SVN-r32492-4.2.5 (C) 2000-2010 MPlayer Team
success: format: 0 data: 0x0 - 0xea810e
libavformat file format detected.
[mov,mp4,m4a,3gp,3g2,mj2 @ 01deff40] max_analyze_duration reached
[lavf] stream 0: audio (aac), -aid 0, -alang und
[lavf] stream 1: video (h264), -vid 0
VIDEO: [H264] 800x336 24bpp 23.976 fps 1014.2 kbps (123.8 kbyte/s)
[V] filefmt:44 fourcc:0x34363248 size:800x336 fps:23.976 ftime:=0.0417
Input fps will be interpreted as 23.976 instead.
==========================================================================
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
AUDIO: 44100 Hz, 2 ch, s16le, 124.9 kbit/8.85% (ratio: 15615->176400)
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
** MUXER_LAVF *****************************************************************
REMEMBER: MEncoder's libavformat muxing is presently broken and can generate
INCORRECT files in the presence of B-frames. Moreover, due to bugs MPlayer
will play these INCORRECT files as if nothing were wrong!
*******************************************************************************
OK, exit.
Loading codec DLL: 'vp6vfw.dll'
Loaded DLL driver vp6vfw.dll at 10000000
HIC: 1daf910
568 - 568 - 568
Compressor type: 63646976
Compressor subtype: 32365056
Compressor flags: 40, version 65536, ICM version: 260
Flags:
Compressor data 2160 bytes
ICSetState ret: 2056
ICCompressGetFormatSize ret: 40
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
Opening video filter: [harddup]
Opening video filter: [flip]
Opening video filter: [softskip]
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
MP3 audio selected.
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
Opening video filter: [flip]
Movie-Aspect is 2.38:1 - prescaling to correct movie aspect.
[swscaler @ 0114e074]using unscaled yuv420p -> bgr24 special converter
Opening video filter: [expand]
Expand: -1 x -1, -1 ; -1, osd: 0, aspect: 0.000000, round: 1
Starting compression:
Input format:
biSize 40
biWidth 800
biHeight 336
biPlanes 1
biBitCount 24
biCompression 0x0 ('')
biSizeImage 806400
Output format:
biSize 40
biWidth 800
biHeight 336
biPlanes 1
biBitCount 24
biCompression 0x32365056 ('VP62')
biSizeImage 541696
Output format after query/begin:
biSize 40
biWidth 800
biHeight 336
biPlanes 1
biBitCount 24
biCompression 0x32365056 ('VP62')
biSizeImage 541696
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 1f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 2f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 3f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 4f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 5f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 6f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
{snipp}
Pos: 0.0s 2287f (92%) 16.02fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 2288f (92%) 16.03fps Trem: 0min 0mb A-V:0.000 [0:0]
Muxer frame buffer cannot allocate memory!
Pos: 0.0s 2289f (92%) 16.03fps Trem: 0min 0mb A-V:0.000 [0:0]

Too many audio packets in the buffer: (4096 in 1504670 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.

Flushing video frames.
Writing index...
Writing header...

Discussion

  • Gianluigi Tiesi

    Gianluigi Tiesi - 2013-02-20
    • Status: open --> closed-out-of-date
     
    • Thomas

      Thomas - 2013-03-10

      this bug is unfortunately still present in the latest builds of mencoder. to reproduce, use

      mencoder.exe test.mov -ovc vfw -xvfwopts codec=vp6vfw.dll:compdata=dialog -of lavf -lavfopts format=flv -nosound -o NUL

      and select "Two Pass - First Pass" from the dialog.

      edit: builds from https://code.google.com/p/mplayer-for-windows/ do not show this problem

       
      Last edit: Thomas 2013-03-10
  • Gianluigi Tiesi

    Gianluigi Tiesi - 2013-03-11
    • status: closed-out-of-date --> open
    • milestone: --> svn
     
  • Gianluigi Tiesi

    Gianluigi Tiesi - 2013-03-15
    • status: open --> closed-fixed
     
  • Gianluigi Tiesi

    Gianluigi Tiesi - 2013-03-15

    alternative allocator was causing this problem, I've disabled the patch I think it would be better to fix the alignment problems in mplayer rather than workarounding

     
  • Thomas

    Thomas - 2013-03-15

    awesome, thanks for the fix!

     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks