[MEncoder-users] How to get ".mp3" audio rather than "mp4a" audio?

Sheppard, Mark Mark.Sheppard at disney.com
Mon Nov 15 12:55:17 CET 2010


Hi,

I'm maintaining a system which converts videos into a format for playing back via a Flash player.  The videos it generates should use a .mp4 container with H.264 video and .mp3 audio inside.  It was working, but then I upgraded the software on the server, including mencoder.  It's now using 2:1.0~rc4~try1.dsfg1-1ubuntu1+medibuntu1 from http://www.medibuntu.org/.

Since the upgrade the videos produced are silent when played in the flash player, but work fine when played in VLC.  Looking at the video with mp4dump (from http://mpeg4ip.sourceforge.net/documentation/encoding.htm) the files produced before the upgrade have this:

     type stbl
      type stsd
       version = 0 (0x00)
       flags = 0 (0x000000)
       entryCount = 1 (0x00000001)
       type .mp3
        data = <28 bytes> 
        00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 
        00 02 00 10 00 00 00 00 ac 44 00 00 
      type stts

but after the upgrade have this:

     type stbl
      type stsd
       version = 0 (0x00)
       flags = 0 (0x000000)
       entryCount = 1 (0x00000001)
       type mp4a
        reserved1 = <6 bytes> 00 00 00 00 00 00 
        dataReferenceIndex = 1 (0x0001)
        soundVersion = 0 (0x0000)
        reserved2 = <6 bytes> 00 00 00 00 00 00 
        channels = 2 (0x0002)
        sampleSize = 16 (0x0010)
        packetSize = 0 (0x0000)
        timeScale = 44100 (0x0000ac44)
        reserved3 = <2 bytes> 00 00 
        type esds
         version = 0 (0x00)
         flags = 0 (0x000000)
         ESID = 2 (0x0002)
         streamDependenceFlag = 0 (0x0) <1 bits>
         URLFlag = 0 (0x0) <1 bits>
         OCRstreamFlag = 0 (0x0) <1 bits>
         streamPriority = 0 (0x00) <5 bits>
         decConfigDescr
          objectTypeId = 107 (0x6b)
          streamType = 5 (0x05) <6 bits>
          upStream = 0 (0x0) <1 bits>
          reserved = 1 (0x1) <1 bits>
          bufferSizeDB = 0 (0x000000) <24 bits>
          maxBitrate = 128000 (0x0001f400)
          avgBitrate = 0 (0x00000000)
          decSpecificInfo
           info = <12 bytes> 01 00 02 00 00 00 80 04 01 00 00 00 
          profileLevelIndicationIndexDescr
         slConfigDescr
          predefined = 2 (0x02)
         ipiPtr
         ipIds
         ipmpDescrPtr
         langDescr
         qosDescr
         regDescr
         extDescr
      type stts

So it looks like the audio produced is now mp4a rather than .mp3.  I've been trying to work out how to force the old behaviour of producing .mp3 audio, but I've not had any success.  The mencoder man page does mention the "-fafmttag 0x55", but that didn't help :-(.  Does anyone know what I need to put on the command line to get .mp3?

Thanks,
Mark.



More information about the MEncoder-users mailing list