[FFmpeg-trac] #4485(undetermined:new): Rewrapping (codec copy) no longer work as expected.

FFmpeg trac at avcodec.org
Tue Apr 14 15:48:35 CEST 2015


#4485: Rewrapping (codec copy) no longer work as expected.
-------------------------------------+-------------------------------------
             Reporter:  dfavor       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug: Rewrapping use to produce playable videos, now videos
 are jittery. Last working version I have notes about was around
 ffmpeg-2.3.2 ish.

 I'm trying to accomplish this - lossless rewrap of an .mts file to .mp4,
 where video stream is copied + audio stream is converted from AC3 to AAC.

 Same jittery playback behavior occurs in latest Movist + Quicktime Player.

 Both VLC + ffplay seem to work for some clips + fail for others.

 Background.

 1) PTS data is missing from .mts footage.
 https://trac.ffmpeg.org/ticket/974 covers this problem. This ticket
 mentioned here as it may relate to the problem in this ticket.

 Adding -fflags +genpts has no effect, before the input file seems to have
 no effect.

 The following messages are still reported with or without -fflags +genpts,
 which seems to be related to the problem I'll detail now.

 [mp4 @ 0x7feea3831000] Codec for stream 0 does not use global headers but
 container format requires global headers
 [mp4 @ 0x7feea3831000] Codec for stream 1 does not use global headers but
 container format requires global headers
 [mp4 @ 0x7feea3831000] track 1: codec frame size is not set

 2) I'll list several permutations under how to reproduce the error in this
 ticket.

 http://DavidFavor.com/ffmpeg-bug-rewrap contains the following:

 1) clip.mts - 60 sec starting footage, which was produced from original
 footage via...

 ffmpeg -i infile.mts -c:v copy -c:a copy -t 60 clip.mts

 2) clip.$codec.mp4 + associated log files for each run.

 There are four examples - copy + fdk + faac + aac. All these fail

 3) Expected results should have been smooth playing video, independent of
 whatever audio codec is used for transcoding audio to aac.

 4) List of example runs... bad means jittery video...

 okay: ffmpeg -y -i clip.mts -c:v copy -c:a copy clip.copy.mp4 >
 clip.copy.mp4.log 2>&1

 bad: ffmpeg -y -i clip.mts -strict experimental -c:v copy -c:a aac
 clip.aac.mp4  > clip.aac.mp4.log 2>&1

 bad: ffmpeg -y -i clip.mts -c:v copy -c:a libfaac clip.faac.mp4 >
 clip.faac.mp4.log 2>&1

 bad: ffmpeg -y -i clip.mts -c:v copy -c:a libfdk_aac clip.fdk.mp4 >
 clip.fdk.mp4.log 2>&1

 All this said, seems any audio operations, whether copy or transcode,
 should have no effect on video stream. Since container settings - fps +
 tbr + tbc - are the same on all output files.

 What really occurs is any audio transcode produces jittery video.

 Using various interjections of -copyts different places in command line
 seems to have no effect either.

 Also, looking at this data, if there is another way to create a lossless
 video conversion from .mts to .mp4 (even if this requires using bitstream
 filters producing intermediate .ts files), that's fine, if someone can
 provide an example.

 Every approach I try, even the bitstream filter w/.ts intermediates, seems
 to fail.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/4485>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list