[libav-tools] Converting video format when audio is out of sync

Derrell Lipman derrell.lipman at unwireduniverse.com
Wed Apr 22 15:43:01 CEST 2015

Thanks, Sampsa. It's telling me that the -filter_complex option doesn't
exist. I thought maybe the underscore was supposed to be a space, and
"complex" was the filter name, but there's no filter called "complex".
(I've attached the output of avconv -filters at the end of this message.)

My video isn't just slightly out of sync, though, as it sounds like you're
imagining. There's no relationship between the sound and the video; they're
no where near each other, when played with anything other than avplay.


Output of avconv -filters for my version of avconv:

anull            Pass the source unchanged to the output.
anullsrc         Null audio source, never return audio frames.
anullsink        Do absolutely nothing with the input audio.
copy             Copy the input video unchanged to the output.
crop             Crop the input video to width:height:x:y.
drawbox          Draw a colored box on the input video.
fade             Fade in/out input video
fieldorder       Set the field order.
fifo             Buffer input images and send them when they are requested.
format           Convert the input video to one of the specified pixel
gradfun          Debands video quickly using gradients.
hflip            Horizontally flip the input video.
lut              Compute and apply a lookup table to the RGB/YUV input
lutrgb           Compute and apply a lookup table to the RGB input video.
lutyuv           Compute and apply a lookup table to the YUV input video.
negate           Negate input video.
noformat         Force libavfilter not to use any of the specified pixel
formats for the input to the next filter.
null             Pass the source unchanged to the output.
overlay          Overlay a video source on top of the input.
pad              Pad input image to width:height[:x:y[:color]] (default x
and y: 0, default color: black).
pixdesctest      Test pixel format definitions.
scale            Scale the input video to width:height size and/or convert
the image format.
select           Select frames to pass in output.
setdar           Set the frame display aspect ratio.
setpts           Set PTS for the output video frame.
setsar           Set the pixel sample aspect ratio.
settb            Set timebase for the output link.
showinfo         Show textual information for each video frame.
slicify          Pass the images of input video on to next video filter as
multiple slices.
split            Pass on the input to two outputs.
transpose        Transpose input video.
unsharp          Sharpen or blur the input video.
vflip            Flip the input video vertically.
color            Provide an uniformly colored input, syntax is:
movie            Read from a movie source.
nullsrc          Null video source, never return images.
rgbtestsrc       Generate RGB test pattern.
testsrc          Generate test pattern.
nullsink         Do absolutely nothing with the input video.
buffer           Buffer video frames, and make them accessible to the

On Wed, Apr 22, 2015 at 2:30 AM Sampsa Riikonen <sampsa.riikonen at iki.fi>

>  Hi,
> Could the out-of-sync result from dropping out corrupt frames?  ..
> To re-encode the video, you could try .. (substituting ffmpeg with avconv
> below should work..):
> ffmpeg -i input.mkv -filter_complex "[0:v] fps=25" output.mkv
> .. I think that should enforce fixed frame rate and fix the corrupt frames.
> Regards,
> Sampsa
> On 21.04.2015 17:08, Derrell Lipman wrote:
> I have a .mkv file that plays properly using avplay 0.8.17 from Ubuntu
> (with no specified command-line options), but plays with video/audio out of
> sync when using any other program I've tried. I have been unsuccessful at
> finding avconv options that will convert this file to .mp4 with proper
> video/audio sync. *What are the avconv options that are equivalent to the
> defaults of avplay?*
>  The file is an hour-long video, so it would be useful, for testing, to
> use the -t option to convert only the first N seconds of the video, but
> that option seems to have no effect.
>  Your help will be greatly appreciated! Following is the output of
> avprobe on my .mkv file.
>  avprobe version 0.8.17, Copyright (c) 2007-2014 the Libav developers
>   built on Apr 21 2015 09:23:53 with gcc 4.6.3
> [matroska,webm @ 0x2450760] Estimating duration from bitrate, this may be
> inaccurate
> Input #0, matroska,webm, from '/tmp/11-00-02.mkv':
>   Metadata:
>     ENCODER         : Lavf55.33.101
>   Duration: 01:13:40.08, start: 0.000000, bitrate: 64 kb/s
>     Stream #0.0: Video: h264 (Baseline), yuvj420p, 1920x1080, PAR 1:1 DAR
> 16:9, 60 fps, 19.92 tbr, 1k tbn, 60 tbc (default)
>     Stream #0.1: Audio: pcm_mulaw, 8000 Hz, 1 channels, s16, 64 kb/s
> (default)
>  Thank you very much,
>  Derrell
> _______________________________________________
> libav-tools mailing listlibav-tools at libav.orghttps://lists.libav.org/mailman/listinfo/libav-tools
>  _______________________________________________
> libav-tools mailing list
> libav-tools at libav.org
> https://lists.libav.org/mailman/listinfo/libav-tools
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.libav.org/pipermail/libav-tools/attachments/20150422/db83b8e8/attachment.html>

More information about the libav-tools mailing list