[libav-bugs] [Bug 287] New: When using avconv and -movflags parameters to created a fragmented mp4, the mp4 muxer is unable to parse the parameters

bugzilla-daemon at aruru.libav.org bugzilla-daemon at aruru.libav.org
Thu May 10 15:40:58 CEST 2012


https://bugzilla.libav.org/show_bug.cgi?id=287

           Summary: When using avconv and -movflags parameters to created
                    a fragmented mp4, the mp4 muxer is unable to parse the
                    parameters
           Product: Libav
           Version: 0.8
          Platform: IA64
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: utilities
        AssignedTo: bugzilla at libav.org
        ReportedBy: scrubb at techgamers.com


I am trying to convert mythtv recorded mpg (mpeg2) files into streamable mp4
files. 

I read on avconv docs that "The mov/mp4/ismv muxer supports fragmentation."
which can put a "fake" mov atom at the start of the file and then puts a new
one at each keyframe throughout the file so the video can be streamed while it
is being transcoded or if the conversion is interrupted.

I believe I have followed the avconv instructions
(http://libav.org/avconv.html#MOV_002fMP4_002fISMV) on how to convert a file,
but continue to get errors that indicate the encoder does not understand the
parameters. Below is my command, and the error output it generates. I have
exhausted google and myself searching for answers and have come up blank so any
help would be greatly appreciated.

System running ubuntu 12.04x64 with avconv version 0.8.1-4:0.8.1-0ubuntu1.

Command:
avconv -v 9 -loglevel 99 -i 1081_20111227200000.mpg -f mp4 -movflags
frag_keyframe+empty_moov -c:v libx264 -c:a copy output.mp4


Below is the complete verbose output.  What seems to be of issue is the lines
that say:
[mp4 muxer @ 0x2c972e0] [Eval @ 0x7fffb5128430] Undefined constant or missing
'(' in 'frag_keyframe'
[mp4 muxer @ 0x2c972e0] Unable to parse option value "frag_keyframe+empty_moov"
[mp4 muxer @ 0x2c972e0] Error setting option movflags to value
frag_keyframe+empty_moov.

Output:

avconv version 0.8.1-4:0.8.1-0ubuntu1, Copyright (c) 2000-2011 the Libav
developers
  built on Mar 22 2012 05:09:06 with gcc 4.6.3
  configuration: --extra-version='4:0.8.1-0ubuntu1' --arch=amd64 --prefix=/usr
--libdir=/usr/lib/x86_64-linux-gnu --enable-vdpau --enable-bzlib
--enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora
--enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx
--enable-runtime-cpudetect --enable-libfreetype --enable-vaapi --enable-gpl
--enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394
--shlibdir=/usr/lib/x86_64-linux-gnu --enable-shared --disable-static
  avutil      configuration: --extra-version='4:0.8.1ubuntu1' --arch=amd64
--prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --enable-vdpau --enable-bzlib
--enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora
--enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx
--enable-runtime-cpudetect --enable-libfreetype --enable-vaapi
--enable-libopenjpeg --enable-gpl --enable-postproc --enable-swscale
--enable-x11grab --enable-libdirac --enable-libmp3lame --enable-librtmp
--enable-libx264 --enable-libxvid --enable-libvo-aacenc --enable-version3
--enable-libvo-amrwbenc --enable-version3 --enable-libdc1394
--shlibdir=/usr/lib/x86_64-linux-gnu --enable-shared --disable-static
  avcodec     configuration: --extra-version='4:0.8.1ubuntu1' --arch=amd64
--prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --enable-vdpau --enable-bzlib
--enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora
--enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx
--enable-runtime-cpudetect --enable-libfreetype --enable-vaapi
--enable-libopenjpeg --enable-gpl --enable-postproc --enable-swscale
--enable-x11grab --enable-libdirac --enable-libmp3lame --enable-librtmp
--enable-libx264 --enable-libxvid --enable-libvo-aacenc --enable-version3
--enable-libvo-amrwbenc --enable-version3 --enable-libdc1394
--shlibdir=/usr/lib/x86_64-linux-gnu --enable-shared --disable-static
  libavutil    51. 22. 1 / 51. 22. 1
  libavcodec   53. 35. 0 / 53. 35. 0
  libavformat  53. 21. 0 / 53. 21. 0
  libavdevice  53.  2. 0 / 53.  2. 0
  libavfilter   2. 15. 0 /  2. 15. 0
  libswscale    2.  1. 0 /  2.  1. 0
  libpostproc  52.  0. 0 / 52.  0. 0
[mpegts @ 0x13749c0] Probed with size=2048 and score=100
[mpegts @ 0x13749c0] stream=0 stream_type=2 pid=800 prog_reg_desc=
[mpegts @ 0x13749c0] stream=1 stream_type=81 pid=801 prog_reg_desc=
[mpeg2video @ 0x1379ee0] err{or,}_recognition separate: 1; 1
[mpeg2video @ 0x1379ee0] err{or,}_recognition combined: 1; 1
[ac3 @ 0x137bf40] err{or,}_recognition separate: 1; 1
[ac3 @ 0x137bf40] err{or,}_recognition combined: 1; 1
[ac3 @ 0x137bf40] Unsupported bit depth: 0
[mpegts @ 0x13749c0] Continuity check failed for pid 49 expected 5 got 9
[mpeg2video @ 0x1379ee0] Unsupported bit depth: 0
[mpegts @ 0x13749c0] Continuity check failed for pid 0 expected 8 got 10
[mpegts @ 0x13749c0] Probe buffer size limit 5000000 reached
[mpegts @ 0x13749c0] PES packet size mismatch
Input #0, mpegts, from '1081_20111227200000.mpg':
  Duration: 00:59:53.17, start: 83496.830467, bitrate: 15507 kb/s
  Program 1
    Stream #0.0[0x800], 80, 1/90000: Video: mpeg2video (Main), yuv420p,
1920x1080 [PAR 1:1 DAR 16:9], 1001/60000, 20000 kb/s, 29.97 fps, 29.97 tbr, 90k
tbn, 59.94 tbc
    Stream #0.1[0x801](eng), 85, 1/90000: Audio: ac3, 48000 Hz, 5.1, s16, 384
kb/s
[buffer @ 0x137c6e0] w:1920 h:1080 pixfmt:yuv420p
[libx264 @ 0x137aa60] err{or,}_recognition separate: 1; 1
[libx264 @ 0x137aa60] err{or,}_recognition combined: 1; 1
[libx264 @ 0x137aa60] using mv_range_thread = 88
[libx264 @ 0x137aa60] using SAR=1/1
[libx264 @ 0x137aa60] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle
SSE4.2
[libx264 @ 0x137aa60] profile Main, level 4.0
[libx264 @ 0x137aa60] 264 - core 120 r2151 a3f4407 - H.264/MPEG-4 AVC codec -
Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=1 ref=3
deblock=1:0:0 analyse=0x1:0x111 me=hex subme=7 psy=1 psy_rd=1.00:0.00
mixed_ref=0 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11
fast_pskip=1 chroma_qp_offset=-2 threads=6 sliced_threads=0 nr=0 decimate=1
interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=0
b_adapt=1 b_bias=0 direct=1 weightb=0 open_gop=1 weightp=2 keyint=250
keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1
crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.25 aq=1:1.00
[mpeg2video @ 0x1379ee0] err{or,}_recognition separate: 1; 1
[mpeg2video @ 0x1379ee0] err{or,}_recognition combined: 1; 1
[mpeg2video @ 0x1379ee0] detected 4 logical cores
[mp4 muxer @ 0x2c972e0] [Eval @ 0x7fffb5128430] Undefined constant or missing
'(' in 'frag_keyframe'
[mp4 muxer @ 0x2c972e0] Unable to parse option value "frag_keyframe+empty_moov"
[mp4 muxer @ 0x2c972e0] Error setting option movflags to value
frag_keyframe+empty_moov.
Output #0, mp4, to 'output.mp4':
    Stream #0.0, 0, 1/90000: Video: libx264, yuv420p, 1920x1080 [PAR 1:1 DAR
16:9], 1001/30000, q=-1--1, 90k tbn, 29.97 tbc
    Stream #0.1(eng), 0, 1/90000: Audio: ac3, 48000 Hz, 5.1, 384 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video -> libx264)
  Stream #0:1 -> #0:1 (copy)
Could not write header for output file #0 (incorrect codec parameters ?)

-- 
Configure bugmail: https://bugzilla.libav.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the libav-bugs mailing list