Getting "Mpeg Layer 1 Not Supported" messages with Mpeg Layer 3 recordings. Huh?

#1
Getting "Mpeg Layer 1 Not Supported" messages with Mpeg Layer 3 recordings. Huh?

I've got this long h.264 mp4 clip that's got audio that's not that great for certain portions. I've got this audio file in mp3 which is a lot better. So I figured I'd chop the mp4 file up into pieces belonging to two categories: sections where the audio was fine and sections where the mp3 audio was superior. Specifically I wound up with the mp4 file chopped up into seven pieces. Pieces 1, 3, 5 and 7 have good audio. Pieces 2, 4 and 6 have inferior audio so I wanted to replace that audio with the mp3 audio. My plan was to remux 2, 4 and 6 with the good audio. Once done, I would then pull the whole collection of seven files into VRD, add them to a joiner list, render the joiner list and end up with a clean file where those sections of audio that were O.K. would be unchanged and those sections with problem audio would now have the pristine mp3 audio.

At first, I tried muxing Pieces 2, 4 and 6's video with the mp3 file in Tools, Elementary Stream Multiplexer. I pulled in Piece 2 of the mp4 on the video side and the mp3 for Piece 2 on the audio side --

-- and got the message "Can not mux files."

So I then tried muxing the two in tsMuxer. The mux sounded fine and was in proper audio sync, but the video became degraded, looking choppy and discontinuous, almost as if about half of the video frames, every other one, had been deleted.

So I then tried muxing the two in XMedia Recode. The mux went perfect, the video looked fine, the audio was in sync, and it looked like I was in business.

I pulled the file I created in XMedia Recode into VRD and it played fine, and the media data looked fine. Great, I thought, I'm in business.

As a test, I then added that XMedia Recode file to a Joiner List and then rendered the Joiner List.

And got another surprise: VRD informed me that the audio would be recoded. Why??!!

I eventually figured out that, for whatever reason, VRD refuses to accept mp4 files with mp3 audio. So it automatically recodes the audio track as a wav file.

Uh-uh; no way. I'm not hogging gigabits of space for a totally unnecessary conversion of my mp3 file into a wav file; ain't happening.

So I figured out a Plan B. I did some experimentation and discovered that VRD is perfectly O.K. with h.264 video with mp3 audio, as long as it's a ts file. So I redid my muxing in XMedia Recode into a ts format instead of an mp4 format. I then pulled one of those XMR ts files into VRD, and confirmed that VRD would accept it as is, and would not try to recode the audio.

O.K., great, that takes care of my muxed files for Piece 2. Now I'll do the same with Pieces 4 and 6.

My source for the MP3 audio was one long file. So I was chopping up that mp3 file to match Pieces 2, 4 and 6. As I described above, Piece 2 finally settled into place once I had the mux in ts format. So I chopped up two more pieces of my mp3 file, for Pieces 4 and 6. I then muxed Pieces 4 and 6 as ts files in XMedia Recode.

So, at this point, I figure I'm all set.

So I proceeded to pull into VRD the newly muxed ts file for Piece 4.

And VRD gave me the message "MPEG audio Layer 1 is not supported."

HUH???!!!

The bottom line is that the pieces I've been chopping up from the one long mp3 audio file is doing this to me intermittently, and I have no idea why. The mp3 piece I chopped off for Piece 2, and which I muxed to Piece 2 in XMR, seemed to present no problems, as the muxed XMR ts file went fine into VRD, no fuss, no muss. But the mp3 chunk I broke off for Piece 4, once it was muxed to Piece 4 as a ts file in XMR, seemed to hate VRD; VRD wanted no part of it.

You ask "how do I know that it is the mp3 file which is causing this bogus MPEG Layer 1 message?" Simple; if I mux ANY of the pieces to the mp3 chunk for Piece 2, all is well. So what was the difference in the mp3 chunk for Piece 2 versus the mp3 chunk for Piece 4?

DARNED IF I KNOW!!

So I've now spent the last eighteen hours redoing mp3 chunk after mp3 chunk; it seriously seems to be random; sometimes the mp3 chunk I make, which I then mux to a piece from the mp4 file, and which then gets combined during XMR muxing into a ts file, pulls in fine into VRD; sometimes I get this #$%^&*#$%^& MPEG Layer 1 message. And I have not even the vaguest frigging clue why it's working with some mp3 chunks and not others.

No matter how many times I try, so far I've always come up empty with the mp3 chunk for Piece 4. So I'm sitting here with two of my three mp4 pieces successfully fixed with the good mp3 file. And there's this one chunk, Piece 4, for which I cannot make an mp3 chunk that VRD will like to save my life.

WTF??!!

Help, help, help.

Thank you.
 
#3
Well, since the whole point of VideoReDo is that it accomplishes editing tasks while not taking material down a generation, the MP2 solution won't work for me, since I need to preserve original generation on the audio. Which means that I will have to convert it to a non-lossy codec. Wav files take up a horrible amount of space. Is there any other non-lossy codec, like FLAC or APE, which VRD can handle? Thanks.
 

Dan203

Senior Developer
Staff member
#4
Not currently no. WAV is the only lossless format we support. I plan on adding FLAC and maybe MP3 to the next major release but we're probably 6 months out from that right now.

That being said since your final output is H.264 you could use AAC instead. If you use a really high bitrate for AAC, like 384, you wont notice any difference and the result will still be way smaller then WAV. (48KHz WAV is 1536Kbps)
 
#5
Your suggestion makes a lot of sense and, if it were for me, that's exactly what I would do. But the client is very specific: no generation loss for the mp3 audio sections. So I figured out a different way to do it. I built one continuous audio track in an audio editor, taking the mp3 sections as is without reprocessing, and reprocessing the good sections of audio from the video as the same flavor of mp3 (the good sections of audio from the original video are not as critical as the poorer sections, which absolutely have to come from the mp3 source). Then I took that single long audio track that I built and muxed it, using XMedia Recode, with the original mp4 video replacing the old audio track.

In other words, in the end I wasn't able to use VRD at all. Yes, my solution was a bit cumbersome and time-consuming, but I didn't really have a choice. I very much look forward to your adding mp3, or at least Flac, to the next release! Thanks again for getting back to me.
 
Top