video
Вебкамера через mplayer
Моя Logitech камера запустилась сразу
$ mplayer tv://С параметрами по умолчанию которые можно менять
$ mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480Смотрим видео в терминале
Можно посмотреть видео без Х, прямо в терминале.
Терминалом называеться тут, Ctrl+Alt+F1...F6
Установка ATI Catalyst 8.5 в Ubuntu 8.04
Пошаговая инструкция по установке драйвера для ATI видео карточки.
конвертирование видео для просмотра на мобильных устройствах
Пока еду на работу смотрю видео на телефоне. А чтобы упростить задачу конвертирования нормального видео в формат который без проблем показывается на мобильном устройстве использую следующий простенький скриптег.
#!/bin/bash in=$1 out=${in%.*}.m.avi echo $in "==>" $out info=$(mplayer -identify $in -ao null -vo null -frames 0) width=$(echo $info | sed -n "s/.*ID_VIDEO_WIDTH=\([0-9]*\).*/\1/p") height=$(echo $info | sed -n "s/.*ID_VIDEO_HEIGHT=\([0-9]*\).*/\1/p") aspect=$(echo "scale=4 ; $width / $height" | bc) echo "width="$width ", height="$height ", aspect="$aspect nwidth=320 nheight=$(echo "$nwidth / $aspect / 2 * 2" | bc ) echo "nwidth="$nwidth ", nheight="$nheight ffmpeg -y -i $in -vcodec libxvid -s ${nwidth}x${nheight} -r 25 \ -acodec libmp3lame -ac 2 -ar 44100 \ -threads 3 -bf 2 -umv -4mv -me full -g 250 $out
Я обозвал этот скрипт avi4mobile.sh и вызываю следующим образом
$ avi4mobile.sh video.aviпри этом создается файл video.m.avi (m - в смысле мобильный)
при конвертировании сохраняется отношение ширина/высота.
Линки в тему на сайте:
Как разрезать видео на фрагменты нужного размера
Имеем: Большой видео-файл
Требуется: Разделить его на несколько частей, каждая из которых будет полноценным видео-файлом.
Зачем: Например, что бы записать по частям на вышедшие из моды CD-R балванки или слить частями на rapidshare или в другое место, где имеется ограничение на размер расшариваемых файлов.
Допустим, собираемся поделить файл 300.avi на два файла на границе 10MB.
- Время и номер фрейма для точки, в которой будем резать, определить можно вот так:
% mencoder -ovc copy -oac copy -endpos 10mb -o /dev/null 300.avi ... Video stream: 1880.602 kbit/s (235075 B/s) size: 8678976 bytes 36.920 secs 923 frames - Теперь имеем всю необходимую информацию, и воспользовавшись вот этим советом, создаем два файла:
- первый:
% mencoder 300.avi -endpos 36.920 -o 300_PART1.avi -oac copy -ovc copy - второй:
% mencoder 300.avi -ss 36.920 -o 300_PART2.avi -oac copy -ovc copy
- первый:
- А теперь (если будет необходимо) в обратную сторону, соединяем:
% mencoder -oac copy -ovc copy -o 300.avi 300_PART1.avi 300_PART2.avi
Готово!
P.S. не сильно разбираюсь в различных видео-форматах и кодеках. Возможно, что не с любым файлом данный пример получится.
Как вырезать фрагмент видео в командной строке
Вырезает из файла PinguinMST1.avi фрагмент видео начиная с 3-й минуты 54 секунд по 6-ю 11 секунды.
Результатом будет файл pinguin.avi закодированный видеокодеком mpeg4.
$ mencoder PinguinMST1.avi -ss 3:54 -endpos 6:11 -o pinguin.avi -oac copy -ovc lavc -lavcopts vcodec=mpeg4Хронометраж можно узнать просмотрев видео в mplayer включив отсчет времени клавишей o.
Демо-видео использования плагина tSkeleton в vim
Видео, любезно предоставленное Вадимом, демонстрирует впечатляющие возможности плагина tSkeleton в vim для программирования на C++. Понятное дело что его можно использовать не только для этого Ж:-)
О том как установить и настроить tSkeleton, читайте в блоге Вадима.
Линки в тему:
Как скачать видео с YouTube из командной строки
На самом деле существует немало скриптов что бы скачать видео с YouTube в командной строке. Лично я пользуюсь youtube-dl, главным образом потому что он есть в репозитории Debian Ж:-)
# sudo apt-get install youtube-dl # youtube-dl http://www.youtube.com/watch\?v\=FOnBFfhGvf4 Retrieving video webpage... done. Extracting URL "t" parameter... done. Requesting video file... done.Video data found at http://chi-v171.chi.youtube.com/get_video?video_id=FOnBFfhGvf4 Retrieving video data: 100.0% ( 20.58M of 20.58M) at 151.27k/s ETA 00:00 done. Video data saved to FOnBFfhGvf4.flv
Опцией -o можно указать имя файла под которым сохранить видео.
Если указана опция -l то имя файла будет создано из заголовка видео.
Если указана опция -t то имя файла будет создано из заголовка видео, но из него будут оставлены только английские буквы и пробелы заменены на знак '_'.
wmv в avi
Скачал видео в формате wmv и хочу перевести его в avi:
$ mencoder infile.wmv -ofps 23.976 -ovc lavc -oac copy -o outfile.aviИзвлекаем аудио из видео файла
$ mplayer -dumpaudio -dumpfile tol-osen.mp3 -audio-demuxer 17 TOL_-_Osen.mpg
MPlayer dev-SVN-rUNKNOWN-4.1.3 (C) 2000-2007 MPlayer Team
CPU: Intel(R) Core(TM)2 CPU T5600 @ 1.83GHz (Family: 6, Model: 15, Stepping: 6)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
Can't open joystick device /dev/input/js0: No such file or directory
Can't init input joystick
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.
Playing TOL_-_Osen.mpg.
MPEG-PS file format detected.
Core dumped ;)
Exiting... (End of file)
$UPT:
перекодировать таки в mp3 после того как звуковая дорожка была извлечена:
$ ffmpeg -i ~/tol-osen.mp3 -acodec libmp3lame ~/tol-osen2.mp3Создание видео с экрана
Для создания видео интерактивного урока очень удобно использовать программу xvidcap.
Можно указать область экрана которую нужно записывать. Так же одновременно пишется звук.
Для Debian достаточно прописать в /etc/apt/sources.list
deb http://www.debian-multimedia.org etch main deb http://www.debian-multimedia.org sid main deb http://www.debian-multimedia.org experimental main
и
$ apt-get update $ apt-get install xvidcap
Пример о том как установить xvidcap на Debian (3.6M)
http://core.org.ua/tmp/test-0000.mpeg
Видео о том как записывался пример выше Ж:-) (5.4M)
http://core.org.ua/tmp/howto-make-screen-capture.mpeg
Mencoder сильно теряет кадры
При захвате даже в raw с видеовхода карты AVerMedia TVPhone98 сильно терялись кадры, mencoder сыпал кучу сообщений Skipped frame!. Естественно захваченное видео получалось с подергиваниями. Избавиться от этого помогла опция -noskip (найдена в мане к mencoder). Т.е. команда для захвата выглядит так:
$ mencoder -endpos 03:05:00 tv:// -tv fps=25:driver=v4l:device=/dev/video0:width=576:height=448:input=1:norm=PAL -noskip -ovc nuv -oac pcm -o /mnt/WD/test.aviПроверено на RH 9, ядро 2.4.20-8, проверено на mencoder версий 1.0pre4-1.0pre7.


