Грамотный кодинг видео в Linux

Вопросы, приемы и проблемы обработки видео

Модератор: Модераторы разделов

Аватара пользователя
Nerr
Сообщения: 65

Re: Грамотный кодинг видео в Linux

Сообщение Nerr »

Так и употреблял, сначала перекодировал dvd вобы в x.264 .mkv avidemux'ом, звук естественно расходится
потом попробовал mkvmerge -o goodsync.mkv -y 23456:0,77346/77340 мойфайл.mkv
не помогло
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

Что-то мне подсказывает, что вместо значений 23456:0,77346/77340 надо было подставить свои :D
Спасибо сказали:
Аватара пользователя
Nerr
Сообщения: 65

Re: Грамотный кодинг видео в Linux

Сообщение Nerr »

А откуда их взять, простите? :unsure:
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

zxxxc писал(а):
04.05.2008 22:00
А откуда их взять, простите? :unsure:

А что в моей цитате над командой написано? :)

1, Если рассинхронизация равномерная в начале и в конце, определяем её значение в mplayer.

2. Определяем номер аудио потока - смотрим вывод mplayer'а, например:
[mkv] Track ID 1: video (V_MS/VFW/FOURCC), -vid 0
[mkv] Track ID 2: audio (A_MPEG/L3), -aid 0, -alang und

3. mkvmerge -o goodsync.mkv -y 2:200 outofsync.mkv, где 2 - номер аудио потока, 200 - значение в миллисекундах полученное в mplayer.

4. Если синхронизация нормальная в начале файла, но нарушается к концу, то определяем величину рассинхронизации в конце файла.

5. mkvmerge -o goodsync.mkv -y 2:0,77346/77340 outofsync.mkv, где 2 - номер аудио потока,
вместо 77346/77340 нужно вычислить:
(задержка_в_секундах * FPS + длинна_видео_в_кадрах) / длинна_видео_в_кадрах
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

У меня, вроде, получилось. Сейчас попробую на остальных файлах.
zxxxc писал(а):
04.05.2008 19:35
Так и употреблял, сначала перекодировал dvd вобы в x.264 .mkv

Я бы так не рекомендовал делать. Avidemux косячит если сразу в mkv делать. Лучше сначала в mp4 перекодировать видео и в ac3/ogg/mp3/etc аудио дорожку. Потом в mkvmerge уже делать мультиплексацию.
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

У меня проблемный файл есть. Ошибка при открытие файла в avidemux следующего плана Index is not up to date. Пробовал с *idx опциями mencoder играться. Не помогло. При открытии файла непосредственно в avidemux программа предлагает мне перестроить фреймы You should use Tool->Rebuild frame. Do it now ?. Я соглашаюсь, процедура занимает какое-то время, но результата не даёт.

Что посоветуете?
Спасибо сказали:
Аватара пользователя
sspphheerraa
Сообщения: 1375
ОС: Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение sspphheerraa »

Может сам файл битый? покажи вывод mplayer'а с опцией -v
Sspphheerraa
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

CnupT
Avidemux должен создать файл my.mpg.idx в той же директории, что и исходный файл. Происходит ли это?
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

MAA писал(а):
11.05.2008 21:58
Может сам файл битый? покажи вывод mplayer'а с опцией -v

Код:

[cnupt@linux ~/video/rip/nge]$ mplayer -v film.vob MPlayer 1.0rc2-4.2.3 © 2000-2007 MPlayer Team CPU: AMD Athlon™ 64 Processor 3000+ (Family: 15, Model: 4, Stepping: 8) CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1 Compiled with runtime CPU detection. get_path('codecs.conf') -> '/home/cnupt/.mplayer/codecs.conf' Reading /home/cnupt/.mplayer/codecs.conf: Can't open '/home/cnupt/.mplayer/codecs.conf': No such file or directory Reading /etc/mplayer/codecs.conf: 115 audio & 237 video codecs Configuration: --prefix=/usr --enable-gui --disable-arts --enable-x11 --enable-runtime-cpudetection --confdir=/etc/mplayer --disable-nas --enable-gl --enable-tv-v4l1 --enable-tv-v4l2 --enable-largefiles --disable-liblzo --disable-speex --disable-openal --disable-fribidi --disable-libdv --disable-musepack --language=all --disable-dvdnav --disable-esd --disable-mga --with-extraincdir=/usr/lib/live-media CommandLine: '-v' 'film.vob' init_freetype get_path('font/font.desc') -> '/home/cnupt/.mplayer/font/font.desc' font: can't open file: /home/cnupt/.mplayer/font/font.desc font: can't open file: /usr/share/mplayer/font/font.desc Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay get_path('fonts') -> '/home/cnupt/.mplayer/fonts' Using nanosleep() timing get_path('input.conf') -> '/home/cnupt/.mplayer/input.conf' Can't open input config file /home/cnupt/.mplayer/input.conf: No such file or directory Parsing input config file /etc/mplayer/input.conf Input config file /etc/mplayer/input.conf parsed: 81 binds Setting up LIRC support... mplayer: could not connect to socket mplayer: No such file or directory Failed to open LIRC support. You will not be able to use your remote control. get_path('film.vob.conf') -> '/home/cnupt/.mplayer/film.vob.conf' Playing film.vob. get_path('sub/') -> '/home/cnupt/.mplayer/sub/' [file] File size is 7845961728 bytes STREAM: [file] film.vob STREAM: Description: File STREAM: Author: Albeu STREAM: Comment: based on the code from ??? (probably Arpi) LAVF_check: MPEG PS format Checking for YUV4MPEG2 ASF_check: not ASF guid! Checking for NuppelVideo Checking for REAL Checking for SMJPEG Searching demuxer type for filename film.vob ext: .vob Trying demuxer 2 based on filename extension system stream synced at 0xD (13)! ==> Found video stream: 0 ==> Found audio stream: 128 ==> Found audio stream: 129 MPEG-PS file format detected. Searching for sequence header... OK! VIDEO: MPEG2 720x480 (aspect 2) 29.970 fps 9800.0 kbps (1225.0 kbyte/s) [V] filefmt:2 fourcc:0x10000002 size:720x480 fps:29.97 ftime:=0.0334 get_path('sub/') -> '/home/cnupt/.mplayer/sub/' X11 opening display: :0.0 vo: X11 color mask: FFFFFF (R:FF0000 G:FF00 B:FF) vo: X11 running at 1024x768 with depth 24 and 32 bpp (":0.0" => local display) [x11] Detected wm supports NetWM. [x11] Detected wm supports FULLSCREEN state. [x11] Detected wm supports ABOVE state. [x11] Detected wm supports BELOW state. [x11] Current fstype setting honours FULLSCREEN ABOVE BELOW X atoms Disabling DPMS DPMSDisable stat: 1 [xv common] Drawing no colorkey. [xv common] Maximum source image dimensions: 2046x2046 ========================================================================== Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough VDec: vo config request - 720 x 480 (preferred colorspace: Mpeg PES) Trying filter chain: vo Could not find matching colorspace - retrying with -vf scale... Opening video filter: [scale] SwScale params: -1 x -1 (-1=no scaling) Trying filter chain: scale vo The selected video_out device is incompatible with this codec. Try appending the scale filter to your filter list, e.g. -vf spp,scale instead of -vf spp. VDecoder init failed :( Opening video decoder: [libmpeg2] MPEG 1/2 Video decoder libmpeg2-v0.4.0b Selected video codec: [mpeg12] vfm: libmpeg2 (MPEG-1 or 2 (libmpeg2)) ========================================================================== ========================================================================== Opening audio decoder: [liba52] AC3 decoding with liba52 dec_audio: Allocating 3840 bytes for input buffer. dec_audio: Allocating 6144 + 65536 = 71680 bytes for output buffer. Using SSE optimized IMDCT transform AC3: 5.1 (3f+2r+lfe) 48000 Hz 384.0 kbit/s A52 flags before a52_frame: 0x2A A52 flags after a52_frame: 0xA Using MMX optimized resampler AUDIO: 48000 Hz, 2 ch, s16le, 384.0 kbit/25.00% (ratio: 48000->192000) Selected audio codec: [a52] afm: liba52 (AC3-liba52) ========================================================================== Building audio filter chain for 48000Hz/2ch/s16le -> 0Hz/0ch/??... [libaf] Adding filter dummy [dummy] Was reinitialized: 48000Hz/2ch/s16le [dummy] Was reinitialized: 48000Hz/2ch/s16le ao2: 48000 Hz 2 chans s16le audio_setup: using '/dev/dsp' dsp device audio_setup: using '/dev/mixer' mixer device audio_setup: using 'pcm' mixer device audio_setup: sample format: s16le (requested: s16le) audio_setup: using 2 channels (requested: 2) audio_setup: using 48000 Hz samplerate (requested: 48000) audio_setup: frags: 64/64 (1024 bytes/frag) free: 65536 AO: [oss] 48000Hz 2ch s16le (2 bytes per sample) AO: Description: OSS/ioctl audio output AO: Author: A'rpi Building audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/2ch/s16le... [dummy] Was reinitialized: 48000Hz/2ch/s16le [dummy] Was reinitialized: 48000Hz/2ch/s16le Starting playback... VDec: vo config request - 720 x 480 (preferred colorspace: Planar YV12) Trying filter chain: vo VDec: using Planar YV12 as output csp (no 0) Movie-Aspect is 1.33:1 - prescaling to correct movie aspect. VO Config (720x480->720x540,flags=4,'MPlayer',0x32315659) VO: [xv] 720x480 => 720x540 Planar YV12 [zoom] VO: Description: X11/Xv VO: Author: Gerd Knorr <kraxel@goldbach.in-berlin.de> and others Xvideo image format: 0x32595559 (YUY2) packed Xvideo image format: 0x32315659 (YV12) planar Xvideo image format: 0x59565955 (UYVY) packed Xvideo image format: 0x30323449 (I420) planar using Xvideo port 226 for hw scaling [xv] dx: 0 dy: 0 dw: 720 dh: 540 *** [vo] Allocating mp_image_t, 720x480x12bpp YUV planar, 518400 bytes [xv] dx: 1 dy: 18 dw: 720 dh: 539 *** [vo] Allocating mp_image_t, 720x480x12bpp YUV planar, 518400 bytes get_path('subfont.ttf') -> '/home/cnupt/.mplayer/subfont.ttf'% 0 0 Unicode font: 4865 glyphs. *** [vo] Allocating (slices) mp_image_t, 720x480x12bpp YUV planar, 518400 bytes A: 0.6 V: 0.6 A-V: 0.005 ct: 0.023 12/ 10 ??% ??% ??,?% 0 0 demux_mpg: 24000/1001fps progressive NTSC content detected, switching framerate. Uninit audio filters... 0.023 ct: 0.075 60/ 57 7% 3% 1.1% 0 0 [libaf] Removing filter dummy Uninit audio: liba52 Uninit video: libmpeg2 Successfully enabled DPMS vo: uninit ... Exiting... (Quit)

kreator писал(а):
12.05.2008 01:27
Avidemux должен создать файл my.mpg.idx в той же директории, что и исходный файл. Происходит ли это?

Конечно. После того как открыть файл он его создаёт. Сразу после этого процесса ругается Index is not up to date.
Спасибо сказали:
Аватара пользователя
sspphheerraa
Сообщения: 1375
ОС: Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение sspphheerraa »

Как я вижу файл - MPEG PS с форматом картинки NTSC (30fps). И mplayer, похоже играет его нормально. Может avidemux2 не нравится fps? Можно попробовать сделать банальный перемукс, т.е. что-то типа такого:
mencoder film.mpg -o film-remuxed.mpg -ovc copy -oac copy -of mpeg
или
ffmpeg -i film.mpg -vcodec copy -acodec copy film-remuxed.mpg


ps А что собственно с файлом сделать надо? рипануть?
Sspphheerraa
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

MAA писал(а):
12.05.2008 22:14
И mplayer, похоже играет его нормально.

Играет да. При перемотке заметны небольшие лаги, но общей картины это не портит.
MAA писал(а):
12.05.2008 22:14
Может avidemux2 не нравится fps?

У меня несколько файлов с одного диска и этим же fps. С остальными проблем нет.
MAA писал(а):
12.05.2008 22:14
Можно попробовать сделать банальный перемукс

Сейчас попробую.
MAA писал(а):
12.05.2008 22:14
ps А что собственно с файлом сделать надо? рипануть?

Как бы да и как бы желательно в avidemux.
Спасибо сказали:
Аватара пользователя
Tverskoy
Сообщения: 460
Статус: Мандривопоклонник
ОС: Mandriva 2011 x86_64
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение Tverskoy »

Подскажите как исправить синхронизацию звука с помощью mencoder.
Спасибо сказали:
Аватара пользователя
sspphheerraa
Сообщения: 1375
ОС: Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение sspphheerraa »

minder писал(а):
28.08.2007 23:21
2 MAA,
По поводу упаковки в mp4 - все равно ругается, но файл создает нормальный (во всяком случае mkvmerge видео из него выдирает).
Код
$ mp4creator -create=compressed-video.264 -rate=25 compressed-video.mp4
Error decoding sei message
$

Ну это он и у меня выдавал

mp4creator можно выкинуть из цепочки кодинга :)
На выходе mencoder'а задаем "-of rawvideo -o file.x264". mkvmerge уже понимает H.264-ES формат на входе (у меня версия 2.1.0).
Sspphheerraa
Спасибо сказали:
Аватара пользователя
mixrin
Сообщения: 155
ОС: gentoo ~amd64

Re: Грамотный кодинг видео в Linux

Сообщение mixrin »

Работу mencoder'а можно остановить/поставить на паузу? Рипаю диск, в 4 прохода (x264), довольно долго, причем замечено что он похоже записывает промежуточные результаты в divx2pass.log.temp. Рипаю скриптом из консоли, безгуя.
proud paludis user.
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Грамотный кодинг видео в Linux

Сообщение Rootlexx »

mixrin писал(а):
27.07.2008 12:06
Работу mencoder'а можно остановить/поставить на паузу?

Посылка сигнала SIGSTOP должна помочь. Возобновлять — SIGCONT.
Спасибо сказали:
Аватара пользователя
sspphheerraa
Сообщения: 1375
ОС: Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение sspphheerraa »

mixrin писал(а):
27.07.2008 12:06
Рипаю диск, в 4 прохода (x264), довольно долго

А какая выгода от 4х проходов? (просто интересно)
Sspphheerraa
Спасибо сказали:
Se9a
Сообщения: 67
ОС: openSUSE 11

Re: Грамотный кодинг видео в Linux

Сообщение Se9a »

В avidemux звук прерывается с высокой частотой, получается пулеметный треск. В чем может быть проблема?
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

Se9a писал(а):
10.08.2008 15:02
В avidemux звук прерывается с высокой частотой, получается пулеметный треск. В чем может быть проблема?

При воспроизведении в самом avidemux или в выходном файле? Какая версия avidemux'a?
Спасибо сказали:
Аватара пользователя
zerkms
Сообщения: 155
ОС: Gentoo, Windows 7 Home Premium
Контактная информация:

Re: Грамотный кодинг видео в Linux

Сообщение zerkms »

господа, а как узнать, какими аудио- и видеокодеками сжат файл?
Спасибо сказали:
Аватара пользователя
Red Gremlin
Сообщения: 505
Статус: самоучка
ОС: Rosa 2016 Fresh

Re: Грамотный кодинг видео в Linux

Сообщение Red Gremlin »

mplayer -v movie.avi
"В мире есть случайность, есть предопределенность и есть то, что ты планируешь совершить."
Спасибо сказали:
Аватара пользователя
Dimon93rus
Сообщения: 428
Статус: Kernel Killer

Re: Грамотный кодинг видео в Linux

Сообщение Dimon93rus »

Всем здрасте.
Есть .mkv файл размером в 8 Гб,
видео: H.264 (1920x1080).
аудио: 4 дорожки и все (помоему) в AC3
Мне нужно из него сделать dvd-video, чтобы его мог воспроизвести старенький двд-плеер.
Желательно, чтобы осталась одна аудио дорожка в исходном качестве и уменьшить размер видео.
Можете привести пример действий которые мне нужно совершить, особенно по уменьшению видео?
Спасибо.
Ubuntu Server 10.04 x86, Calculate Linux 11.6 x86
Спасибо сказали:
Аватара пользователя
sspphheerraa
Сообщения: 1375
ОС: Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение sspphheerraa »

DeVeDe утила тебе в помощь. Как раз ужмет и запишет в размер DVD.
На сколько я знаю она не принимает русскоименные файлы.
Sspphheerraa
Спасибо сказали:
Аватара пользователя
Dimon93rus
Сообщения: 428
Статус: Kernel Killer

Re: Грамотный кодинг видео в Linux

Сообщение Dimon93rus »

Спасибо обязательно попробую, но хотелось бы ещё узнать с точки зрения mencoder'а
Ubuntu Server 10.04 x86, Calculate Linux 11.6 x86
Спасибо сказали:
Аватара пользователя
Dimon93rus
Сообщения: 428
Статус: Kernel Killer

Re: Грамотный кодинг видео в Linux

Сообщение Dimon93rus »

Спасибо
Ubuntu Server 10.04 x86, Calculate Linux 11.6 x86
Спасибо сказали:
Аватара пользователя
Doka
Сообщения: 715
Статус: ASIC Design Engineer
ОС: RHEL4

Re: Грамотный кодинг видео в Linux

Сообщение Doka »

использую для захвата с ДВД такую нагугленную строку:

Код: Выделить всё

#PAL(europe)
mencoder INPUT -ofps 25 -ovc xvid -oac mp3lame -lameopts abr:br=128 -srate 48000  -vf scale -zoom -xy 720 -xvidencopts fixed_quant=4  -o OUTPUT


в результате получаю файл, с таким же черезстрочным видео, что конечно совсем не устраивает..
есть ли в mencoder опция, задающая склеивание полукадров в прогрессивное видео (я такой не нашёл) или необходима какая-то сторонняя приблуда??
Never stop thinking..................................................................
Спасибо сказали:
Аватара пользователя
romuil
Сообщения: 2095
Статус: Ромунцель
ОС: ALTLinux Sisyphus

Re: Грамотный кодинг видео в Linux

Сообщение romuil »

Скорее что надо деинтерлейс делать уже при воспроизведении.
Иначе никак.
Спасибо сказали:
Аватара пользователя
Red Gremlin
Сообщения: 505
Статус: самоучка
ОС: Rosa 2016 Fresh

Re: Грамотный кодинг видео в Linux

Сообщение Red Gremlin »

"В мире есть случайность, есть предопределенность и есть то, что ты планируешь совершить."
Спасибо сказали:
Аватара пользователя
Doka
Сообщения: 715
Статус: ASIC Design Engineer
ОС: RHEL4

Re: Грамотный кодинг видео в Linux

Сообщение Doka »

Red Gremlin
выражаю благодарность за ссылку. RTFMнул чуток =)
буду кодировать как есть, а плейерами убирать расчёску (просто в VLC он почему-то оказался выкл, а не avtodetect)
Never stop thinking..................................................................
Спасибо сказали:
Ответить