Начало › Форум › Видео › Конвертирование видео › правильно вычислить рассинхрон аудио/видео
В этой теме 25 ответов, 2 участника, последнее обновление Rodegast 8 года/лет, 4 мес. назад.
-
АвторСообщения
-
31.01.2011 в 12:26 #742
[dvd]дорожка видео mpg2 — 4790640ms
дорожка звука ac3 — 4789760mc[/dvd]При этом, если смотреть такой оригинал, то рассинхрона не наблюдается.
Если видео пережать в h264 поток и засунуть в матрешку, то наблюдается рассинхрон. Тупо ставить audiodelay 880 ms не получится. Звук наоборот чуточку начнет отставать. То бишь дорожку аудио нужно срезать в начале и вполне возможно, что и в конце, а может! быть в конце и не срезать а делать стретчинг остатка оконцовки, а может быть начала)))))))
>Как правильно проанализировать материал<, что бы затем сделать правильный обрез/стретчинг звука в mkvmerge.
Кто-нибудь занимался темой?
31.01.2011 в 17:45 #886Чем кодируешь?
01.02.2011 в 01:15 #887x264
вероятней всего, в потоке видео изначальном есть некие «черные кадры», которые кодер обошел.
Кодировал по статье «Полезность многопроходного сжатия»
01.02.2011 в 19:32 #893Звук как кодируется? Покажи всю команду.
03.02.2011 в 00:17 #894звук вообще не кодируется, а лишь изымается.
time mplayer dvd://»${dvdn}» -dvd-device $ss -aid 128 -dumpaudio -dumpfile audio-ru2.ac3
03.02.2011 в 12:29 #895MeGUI.. странно. безошибочно все сам делает. Настраивается момент компрессии и все. То есть, никаких сдвигов звука.
gdindex>avisynth>mpeg2/ac3>x264>сборка в mkv средствами, встроенными в megui.03.02.2011 в 17:10 #897Здесь нет ничего странного
» title=»Wink» />
Если копировать звук, а не кодируйте его то будет работать не правильно встроенный в mencoder механизм автосинхронизации, именно из-за этого у вас был рассинхрон и пропуск кадров.
04.02.2011 в 09:11 #898А, если я не хочу кодировать звук. Зафига кодировать звук, если это экономия лишь всего-навсего 100 метров. Тем более, что все это дело mkv спокойно всасывает в свой конейнер.
Кстати. Если пережать звук в faac, то он начинает проигрываться в 2 раза быстрее. Что-то, похожее не на ускоренноеx2 воспроизведение.
mkfifo audiodump.wav;
(time faac -q 80 audiodump.wav -w -o audio-ru6.mp4 & mplayer -quiet -vc 0 -vo null -ao pcm:fast -dvd-device $ss dvd://»${dvdn}» -channels 6 -aid 128);04.02.2011 в 18:01 #899> А, если я не хочу кодировать звук.
Тогда моешь поймать рассинхрон, а можешь и не поймать это как повезёт.
> Если пережать звук в faac, то он начинает проигрываться в 2 раза быстрее
На вашем DVD 6 каналов? И не нужно изымать звук подобным образом! Кодируйте всё сразу mencoder-ом.
08.02.2011 в 10:43 #905[quote:3b26s646][b:3b26s646]Rodegast написал:[/b:3b26s646]
образом! Кодируйте всё сразу mencoder-ом.[/quote:3b26s646]дык, он в avi собирает. зачем оно мне.
потом пересобирать в матрешку. так, я снова могу поймать рассинхрон.08.02.2011 в 16:08 #911Мультиплексировать в матрёшку он тоже умеет
» title=»Smile» />
-of lavf -lavfopts format=matroska
08.02.2011 в 17:53 #913да, но
1. подергивания несколько кадров назад/несколько кадров вперед+1 при проигрывании такого файла, потом.2. меняется соотношение сторон с какой-то радости. Если добабвлять, скажем, -vf scale «нужное:соотношение», то толку тоже ноль. smaplayer показыват потом нормально все (правда, все с той же дерготней), а mplayer наоборот — дерготни кадров взад вперед нет, но соотношение чуть ли не 5:4, когда видео есть 720:576.
3. титры забиваются в поток видео, а не отдельным моментом. речь не про титры «рядом с файлом» отдельным файлом. о\то бишь, понадобится -nosub Опция и затем отдельное выдергивание титров и снова mkvtoolnix.
?
08.02.2011 в 20:17 #916> подергивания несколько кадров
Покажи полностью команду которой кодируешь.
> меняется соотношение сторон с какой-то радости
Явно задай аспект. К примеру: -aspect 16/9
С титрами проблема.
» title=»Sad» /> Но я не думаю что mkvtoolnix вызовет рассинхрон.
08.02.2011 в 21:41 #918[code:16p1pqhl]dvdn=2
sss="/srv/movies/005/";
mencoder dvd://$dvdn -dvd-device $sss -o out -ovc x264 -x264encopts crf=16.0:keyint=750:keyint_min=25:bframes=16:b_adapt=2:b_pyramid=normal:ref=16:rc_lookahead=250:aq_mode=1:partitions=all:direct=auto:weightp=2:me=umh:merange=32:subme=10:trellis=2:nofast_pskip:nodct_decimate:threads=auto:psnr:ssim -oac faac -faacopts br=256:mpeg=4:object=2 -channels 2 -srate 48000 -ofps 25 -of lavf -lavfopts format=matroska -vf scale=720:576 -ss 600 -endpos 30;
[/code:16p1pqhl][i:16p1pqhl]Явно задай аспект. К примеру: -aspect 16/9[/i:16p1pqhl]
Если при воспроизведении люди будут задавать аспект, то я пас на счет такого кодирования.
Если при кодировании, то это бестолку задавать. делал.аспект нужно вбивать именно для опции «format=matroska», а не глобально.
Голая опция «format=matroska» чудеса чудит.Из мана:
FFmpeg libavformat muxers (-lavfopts) (also see -of lavf)
delay=<value>
Currently only meaningful for MPEG[12]: Maximum allowed distance, in seconds, between the reference timer of the
output stream (SCR) and the decoding timestamp (DTS) for any stream present (demux to decode delay). Default is
0.7 (as mandated by the standards defined by MPEG). Higher values require larger buffers and must not be used.format=<container_format>
..
matroska
..muxrate=<rate>
Nominal bitrate of the multiplex, in bits per second; currently it is meaningful only for MPEG[12]. Sometimes
raising it is necessary in order to avoid «buffer underflows».o=<key>=<value>[,<key>=<value>[,…]]
Pass AVOptions to libavformat muxer. Note, a patch to make the o= unneeded and pass all unknown options through
the AVOption system is welcome. A full list of AVOptions can be found in the FFmpeg manual. Note that some op‐
tions may conflict with MEncoder options.
..Про аспект ни слова.
Но, на выходе:
[code:16p1pqhl]
mediainfo out
General
Complete name : out
Format : Matroska
File size : 9.66 MiB
Duration : 30s 40ms
Overall bit rate : 2 698 Kbps
Writing application : Lavf52.84.0
Writing library : Lavf52.84.0Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Codec ID : V_MPEG4/ISO/AVC
Duration : 30s 40ms
Width : 720 pixels
Height : 576 pixels
Display aspect ratio : 5:4
Frame rate : 25.000 fps
Standard : PAL
Language : EnglishAudio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format version : Version 4
Codec ID : A_AAC
Duration : 30s 40ms
Channel(s) : 2 channels
Sampling rate : 16.0 KHz
Video delay : -40ms
Language : English[/code:16p1pqhl]да еще и рывки.
Ты точно уверен, что это вменяемый метод кодирования.
Зачем же тогда пол инета советует многоприемные подходы.Ну и без отдельных субтитров, внутри mkv — это тоже не дело, согласись.
09.02.2011 в 18:39 #922Не используйте вместе с -x264encopts параметры которых нет в мане. Если вы хотите задействовать новые возможности х264 делайте так: -ovc x264 x264enc и далее строка с параметрами.
> аспект нужно вбивать именно для опции «format=matroska», а не глобально.
Нет. Туда автоматически записывается «глобальный» аспект.
>Ты точно уверен, что это вменяемый метод кодирования.
Конечно.
> Зачем же тогда пол инета советует многоприемные подходы.
Многопроходное кодирование чуть-чуть сильнее сжимает чем однопроходное. Использовать его стоит если тебе надо уложиться в определённый размер, во всех других случаях нет не какого смысла его использовать.
-
АвторСообщения
Для ответа в этой теме необходимо авторизоваться.