<br>Между строк</br>

Строчки

FreeBSD 8.0

Звуковая карта. Микшер.

Настройки микшера для записи это второе устройство-микшер:
mixer -f /dev/mixer1

Вот настройки для моего ноута и внешнего микрофона, при которых работает скайп.

%mixer
Mixer vol      is currently set to  90:90
Mixer pcm      is currently set to 100:100
Mixer mix      is currently set to   0:0
Mixer rec      is currently set to  90:90
Mixer igain    is currently set to   0:0
Mixer ogain    is currently set to   0:0
Mixer monitor  is currently set to  90:90
Recording source: monitor
%mixer -f /dev/mixer1
Mixer mic      is currently set to   0:0
Mixer mix      is currently set to  90:90
Mixer rec      is currently set to   0:0
Recording source: mix

FreeBSD 7.1

Сломали fwcontrol, я недолго думая скопировал /usr/sbin/fwcontrol с сервера, на котором 6.2, по-хорошему надо бы пересобрать, но лень.

FreeBSD 6.0

LANG

export LANG=ru_RU.KOI8-R

CD

Подготовить любой аудио-файл для записи на музыкальный CD
mplayer -af resample=44100:0:0 -ao pcm filename.ext
результат записывается в файл audiodump.wav, если преобразуемый файл уже на 44 kHz, то mplayer свалится, тогда надо просто конвертить в pcm (это надо делать даже если расширение уже wav, так как это расширение совсем не значит что он row):
mplayer -ao pcm filename.mp3

Прожечь подготовленные аудио-треки на диск, его можно будет проигрывать в лазерном проигрывателе, не поддерживающем mp3.
burncd -f /dev/acd1 audio 01.wav 02.wav 03.wav 04.wav 05.wav 06.wav 07.wav fixate
Треков понятно столько сколько надо, лишь бы влезли. У меня два cd-устройства, писалка — второе. Если писать на первом устройстве, то соответствено /dev/acd0.

Сделать iso-файл для записи CD с данными. Складываю все нужное в отдельный каталог, потом захожу в него и говорю:
mkisofs -o ../disk.iso .
Но это хорошо, если файлы 8.3 и без русских букв.
Диск с русскими буквами и длинными именами пишу так:
mkisofs -iso-level 4 -o ../disk.iso .
Если диск, надо будет монтировать под винду, то так:
mkisofs -iso-level 4 -output-charset cp866 -o ../disk.iso .
А вот как сделать диск, с русскими буквами, который будет хорошо монтироваться и там и там?

Перед созданием iso-файла хорошо посмотреть, влезут ли файлы на диск, мегабайты, которые пишут на дисках вроде честные, поэтому так:
du -d 0 -h .

Сделать iso-файл из CD.dd if=/dev/acd0 of=disk.iso bs=1m
диск монтировать не обязательно.

Записать iso-файл на CD.
burncd -f /dev/acd1 data disk.iso fixate

Подмонтировать CD-диск.
mount -t cd9660 /dev/acd0 /cdrom
Можно добавить в /etc/fstab строчку
/dev/acd0 /cdrom cd9660 ro,noauto 0 0
и монтировать по-простому.
mount /cdrom
А во FreeBSD 4.11 устройство называется /dev/acd0c

Подмонтировать iso-файл.
mdconfig -a -t vnode -f disk.iso
Эта команда вернет имя получившегося устройства — пусть md0, тогда монтирую его:
mount -t cd9660 /dev/md0 /cdrom
Отмотировать в обратном порядке:
umount /cdrom
mdconfig -d -u md0
А во FreeBSD 4.11 монтировать по-другому:
vnconfig -c -v /dev/vn0 disk.iso
mount -t cd9660 -o ro /dev/vn0 /cdrom
И отмонтировать:
umount /cdrom
vnconfig -u vn0c

DVD

У меня burncd работает только c DVD+RW. Еще она умеет портить DVD+R и DVD-R.

Отформатировать диск DVD+RW
burncd format dvd+rw
у меня эта команда выполняется очень долго… когда ламопчка перестает мигать, можно нажать Ctrl-C.

Записать iso-файл на DVD+RW
burncd dvdrw disk.iso

На диск влазит 4700372992 байт.

Загадочные форматы звуковых файлов

*.amr
amrdecoder filename.amr - | lame -r -s 8 -m mo -x --decode - filename.wav
можно и в mp3, но и так запись в amr файлах очень плохая…
amrdecoder filename.amr - | lame -r -s 8 -m mo -x - filename.mp3

scp -r with symlink

scpr source destination — для того чтобы сделать scp -r не разыменовывающий симлики использую скрипт scpr.
— нет так не хорошо, а как сделать чтобы такое быстро работало, в другой раз запишу.

Быстрое копирование каталога

tar czf - data | ssh www.rekub.net "cd /home/rekub && cat|tar zxf -"
быстро копирует каталог data на машину www.rekub.net в каталог /home/rekub

Правильное копирование каталога с симлинками надо на основе этого думать.

Видео

mencoder filename.ext -ovc xvid -oac copy -xvidencopts bitrate=1200 -o good.avi
Сконвертировать фильм, чтобы смотреть на моем телевизоре и DVD-плеере.

mencoder filename.ext -ovc xvid -oac copy -xvidencopts cartoon:bitrate=1200 -o good.avi
Сконвертировать мультфильм, чтобы смотреть на моем телевизоре и DVD-плеере.

-oac mp3lame … вместо … -oac copy … если есть проблемы со звуком. Или … -oac pcm …, хотя вряд ли на моем телевизоре потери качества звука из-за mp3 могут быть заметны.

Еще пример с видео

Есть широкоформатный мультфильм source.mkv со звуковой дорожкой на непонятном языке и ненужными субтитрами, звуковая дорожка двухканальная: стерео, которое тоже не нужно, так как телевизор у меня простенький. Есть отдельный source.wav, с переводом (моно). Звук надо наложить, а не заменить. Звуковые дорожки, к счастью, с одинаковой частотой дискретизации.

mplayer source.mkv -af channels=1:2:0:0:1:0 -ao pcm:file=1.wav -vo null
извлекаем звуковую дорожку из mkv, попутно объединяя стерео в моно, как сделать тоже самое быстро я не понял.
mplayer source.wav -ss 1.5 -ao pcm:fast:file=2.wav
убираем отставание перевода от фильма на полторы секунды.
sox -m 1.wav 2.wav -o 3.wav
как наложить два звуковых файла с помощью mplayer я не понял, так что использовал sox.
mencoder -ovc xvid -xvidencopts cartoon:bitrate=1200 -nosound -nosub -vf expand=:::::4/3,scale=640:480 -o 1.avi source.mkv
Перекодирую видео под свой старенький телевизор и DVD-плеер и выкидываю ненужную звуковую дорожку и субтитры.
mencoder -ovc copy -oac mp3lame -audiofile 3.wav -o result.avi 1.avi
А вот подклеивать новую звуковую дорожку той же командой не получилось (не работает), так что пришлось сделать это отдельной командой.

Видео с ssa-субтитрами

Написано, что последняя (на 28.02.11) версия mencoder'а работает с ssa-субтитрами, но что-то не похоже. Выход: идти через mplayer, но при этом надо много место на диске.
mplayer -ass -nosound -sid 0 -ass-force-style PlayResX=400 -vo yuv4mpeg -vf expand=:::24::4/3,scale=640:480 source.mkv
Повторюсь, сложность в том, что mencoder плохо работает с такими субтитрами.
mkvextract tracks source.mkv 2:1.wav
Нужная звуковая дорожка во втором треке.
mencoder -oac mp3lame -ovc xvid -xvidencopts cartoon:bitrate=1200 -audiofile 1.wav -af channels=1:2:0:0:1:0 stream.yuv -o result.avi
Наконец, можно все объединить, попутно выкинув ненужное мне стерео.

mplayer -nosound -ass -ass-force-style PlayResY=210,MarginL=30,MarginR=30 -vf expand=:::42::4/3,scale=640:480 -vo yuv4mpeg source.mkv
Это вариант главного шага с большими субтитрами и улучшенными краями.

Видео с srt-субтитрами

С такими субтитрами mencoder умеет работать, так что все проще:
mencoder -sub source.srt -vf expand=:::30::4/3 -subwidth 85 -subpos 97 -ovc xvid -xvidencopts bitrate=1000 -oac mp3lame -af channels=1:2:0:0:1:0 -o result.avi source.avi

Видео и два прохода.

Все эти преобразования с -ovc xvid можеть быть лучше делать в два прохода. Делается это так:
-xvidencopts pass=1:-o /dev/null
При этом пишется файлик divx2pass.log, а потом его надо использовать, второй проход:
-xvidencopts pass=2:-o result.avi

Back Up

dd if=/dev/ada1 ibs=1548288 obs=1024 | gzip -2 > 20120422.bak
С помощью такой команды можно сохранить образ целого диска. Важные условия, позволяющие сделать это быстро: естественно, количество байт на диске кратно ibs, которое, в свою очередь, кратно obs. При этом, большое ibs заметно увеличивает скорость копирования, небольшое obs и уровень сжатия, подобраны так, чтобы gzip не захлёбывался: в отчёте dd не было частично записанных out-блоков, и gzip не упирался в 100% процессора. захлебывался (в отчете dd не

← все выпуски


© Сергей Рекубратский, 2006—2012