Использование VIM

VIM минимум

  • :e file — открытие существующего или создание нового файла;
  • :w [file] — сохранение буфера в «свой» или новый файл. :w! — невзирая на защиту записи ;
  • <Ctrl-G> — дать полную информацию об открытом файле и положении курсора в его буфере;
  • :q — закрытие окна (для последнего окна — выход из редактора). :q! — невзирая на наличие несохранённых буферов;
  • :!command — выполнить внешнюю команду;
  • :bn — переключиться на следующий буфер;
  • <Ctrl-W>s — разделить окно пополам по горизонтали, <Ctrl-W>v — по вертикали;
  • <Ctrl-W>w — перейти в следующее окно;
  • d — удалить символ с помещением в регистр обмена, dd — строку;
  • y — копировать в регистр обмена символ, , yy — строку;
  • [p, ]p — вставить из регистра после или перед курсором;
  • :r file — вставить содержимое файла;
  • /string — искать string (строка или регулярное выражение) от курсора и ниже;
  • ?string — искать string выше от курсора;
  • n или N — продолжить поиск ниже или выше по тексту;
  • %s/string_old/string_new — замена во всём буфере;
  • * — найти следующее вхождение слова под курсором, # — предыдущее;
  • % — найти ответную скобку;
  • . — повторить последнюю операцию;
  • [n]G — перейти на строку n, в отсутствие n — в конец файла;
  • ) или ( следующее или предыдущее предложение, для }/{ — параграф, для ]]/Почему — VIM?

http://linuxgeeks.ru/vi.htm


Linux и кодирование mp3-файлов. Библиотека Lame.

Достаточно информации даёт простой вывод помощи по команде

$ lame --help
LAME 32bits version 3.97 (http://www.mp3dev.org/)

usage: lame [options] <infile> [outfile]

    <infile> and/or <outfile> can be "-", which means stdin/stdout.

RECOMMENDED:
    lame -V2 input.wav output.mp3

OPTIONS:
    -b bitrate      set the bitrate, default 128 kbps
    -h              higher quality, but a little slower.  Recommended.
    -f              fast mode (lower quality)
    -V n            quality setting for VBR.  default n=4
                    0=high quality,bigger files. 9=smaller files
    --preset type   type must be "medium", "standard", "extreme", "insane",
                    or a value for an average desired bitrate and depending
                    on the value specified, appropriate quality settings will
                    be used.
                    "--preset help" gives more info on these

    --longhelp      full list of options

То есть приемлемого для среднего уха результата можно добиться так:

$lame -V2 входной_файл.wav выходной_файл.mp3

или так

$lame -b 320 -bitwidth 24 входной_файл.wav выходной_файл.mp3

где

  • -b 320 — битрэйт
  • -bitwidth 24 — разрядность отсчета

Ссылки по теме


Linux и кодирование видео. Mencoder и кодеки. Установка и использование.

Что такое MEncoder

MEncoder — свободный кодировщик видео. Поддерживает большинство существующих аудиовидеокодеков и контейнеров. Является частью проекта MPlayer. К нему есть удобный GUI kmenc15

Установка

К сожалению, из за проблем с лицензиями, на данный момент не входит в официальный дистрибутив Debian. Для его установки приходится использовать дополнительные репозитарии, подключить которые можно прописав в /etc/apt/sources.list строчку

deb http://www.debian-multimedia.org etch main

А потом стандартно $apt-get install mencoder

Тут правда есть некоторые детали 1)

Перекодирование видео с наложением своего аудиотрека

Для этого используются тледующие параметры командной строки

  • -V — болтливый режим;
  • -alang — выбор языка
  • -oac — выбор кодека для звуковой дорожки
  • -audiofile — выбор аудиофайла для имплантации в видео
  • -ovc — fixme
  • -lavcopts — опции видеопотока
  • -vf — fixme
  • -o — определяем выходной файл.

Итак, для того, чтобы получить видеофайл 1.mpg, наложить на него звук из аудиофайла 1.wav и закодировать в mpeg4 с битрэйтом 2048 и разрешением 1024×768 и сохранить в 2.avi нужно набрать:

$mencoder -V -alang ru -oac lavc -audiofile 1.wav -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2048:v4mv:mbd=2:trell -noskip -mc 0 -vf scale=1024:768 -o 2.avi 1.mpg

Сборка видео из набора кадров в графических файлах

В Каталоге, где собраны кадры-файлы запускаем следующую команду(последовательность кадров совпадает с по)

mencoder "mf://*.jpg" -vf scale=640:-11 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vbitrate=2000 -ffourcc MP43 -fps 24 -o "output.avi"
  • mf://*.jpg — указывается маска файлов-кадров
  • scale=640:-11 — указываются разрешение итогового видео (640-ширина, -11 сохранение пропорций)
  • fps количество кадров в секунду

Так же можно подключить звуковую дорожку с помощью параметра -audiofile

Объединение нескольких видеофайлов разного формата в один

Чисто практическая задача. Сегодня возникла. Есть множество коротких видео, снятых на камеру, на фотоаппарат, на мобильник. Все онилежат в /home/user/videos. Требуется объединить всё это в один видеофайл с заданным расширением.

$mencoder -V -alang ru -oac lavc -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2048:v4mv:mbd=2:trell -vf scale=1024:768 -o 2.avi /home/users/videos/*

Есть и недостатки. Представляете как будет выглядеть видео, снятое на мобильник, и потом растянутое до 1024×768

Обрезка видеофайла(выделение фрагмента определённой длины, начиная с заданной позиции) в формате flv.

mencoder -V -alang ru -oac lavc -ovc lavc -lavcopts vcodec=flv:v4mv:mbd=2:trell -ss 5 -frames 2400 -o output_file.flv input_file.flv
  • -ss 5 — пропустить с начала 5 секунд
  • -frames 2400 — выделить фрагмент в 2400 кадров
  • vcodec=flv:v4mv:mbd=2:trell — указание кодека выходного файла(параметры устанавливаются по умолчанию как у входного)

Покадровая нарезка видео-файла.

mplayer input_file.wmv -vo jpeg:quality=95:outdir=frames
  • *input_file.wmv* обрабатываемый видео-файл *
  • -vo — выбор видео-драйвера
  • jpeg — выводить кадры в формате JPEG
  • quality=95 — качество JPEG — 95
  • outdir=frames — писать кадры в каталог /frames/

Извлечение определённой главы с DVD.

mencoder -dvd-device /dev/cdrw3 -V -alang ru -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2048:v4mv:mbd=2:trell -o chapter40.avi dvd://1-1 -chapter 40-40

Обращаю внимание, что если не указать диапазон через тире, в chapter40.avi будут извлечены все главы, начиная с 40-й

Поворот, обрезка и масштабирование видео.

Дано:

Видеофайл, продолжительностью около 10 секунд, размером картинки 480×272

Требуется:

— Повернуть его по часовой стрелке на 90гр, получив картинку 272×480 — Обрезать сверху и снизу полоски по 272×139, чтобы получилась картинка 272×202 — Масштабировать до 640×480.

mencoder -vf rotate=1,crop=272:202:0:139,scale=640:480 -oac pcm -ovc lavc -lavcopts vcodec=msmpeg4:vbitrate=2000 -o output.avi IMG_0301.MOV
  • *-vf* — опция, показывающая, что далее будет список видеофильтров через запятую (применяются последовательно)
  • *rotate=1* — перевернуть на 90 гр. по часовой (доступны и другие углы, согласно man mplayer 0 — Поворот на 90 градусов по часовой стрелке и отражение, 1-Поворот на 90 градусов по часовой стрелке, 2 — Поворот на 90 градусов против часовой стрелки, 3- Поворот на 90 градусов против часовой стрелки и отражение)
  • *crop=272:202:0:139* — отображать из исходноговидео прямоугольник 272×202, начиная с точки (0,139)
  • *scale=640:480* — масштабировать до разрешения 640×480

Перекодирование в кодек XVID.

mencoder -V -alang ru -oac copy -ovc xvid -xvidencopts bitrate=2048 -o 104_klen.avi 004_klen.avi

Перекодирование файлов с одного «фотоаппарата».

mencoder -V -alang eng -oac pcm -lavcopts acodec=pcm_s8 -ovc lavc -lavcopts vcodec=flv:trell:vbitrate=1024 -vf scale=600:-11 -noskip -mc 0 -o 2012.02.12_volley_training_small_02.flv 2012.02.12_voley_training_02.mov

Перекодирование видео для просмотра на видеоплейере LG

mencoder -V -alang ru -oac pcm -ovc lavc -lavcopts vcodec=mpeg4:trell:vbitrate=512 -ffourcc divx -noskip -mc 0 -o gadnii_ya.player.mp4 gadkii_ya.mp4

Ссылки по теме