Покуражимся ( Courage блог)

  • чтобы не забылось - как сделать в системе дебиан маленькой
    системы для chroot
    предположим такую систему хотим в /opt/chroot


    Исходный код
    # debootstrap etch /opt/chroot


    etch - версия дебиан (можно и sarge)
    ------------------------
    спасибо free-x


    чтобы не потерялось
    s-video коннектор на сс1(3 линка на 3 моих поста как я это делал)
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    и раскопал старый адрес с моей сборкой вдр из асус баребона
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.



    xтобы не забылось и не потерялось - линки которые я нарыл пытаясь дать челу
    линк на вопрос "что почитать о спутниковом тв" - что где и как


    геостационарная орбита
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    история развития космического тв
    30 лет назад на геостационарной орбите засветилась первая советская "РАДУГА"
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    сайт НПО ПМ
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    История развития спутникового ТВ
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    много всякого на сайте GS
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    в частности даже такое Таблица MAC-адресов
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    кое что по основам спутникового тв
    ОСОБЕННОСТИ НАЦИОНАЛЬНОГО DVB
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Обзор современных стандартов телевидения.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Технические основы цифрового спутникового вещания
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Как увидеть «цифру»?
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.



    Статья 1: Все что нужно знать о спутниковом телевидении и оборудовании. Кратко и доступно.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    УСТАНОВКА и НАСТРОЙКА СПУТНИКОВОЙ АНТЕННЫ
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    sat tv юмор
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    отсюда
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.

  • ( очередное огромное спасибо free-x )


    в network.c
    это фраза которая появляется в меню настроек плагинов
    была на немецком заменяем для единообразия на английскую
    static const char *DESCRIPTION = "Netzwerksetup";
    на
    static const char *DESCRIPTION = "Networksetup";


    как я понял для того чтобы в настройках плагина было
    переведенное имя а не на одном языке нужно следущее изменение
    virtual const char *Description(void) { return DESCRIPTION; }
    на
    virtual const char *Description(void) { return tr(DESCRIPTION); }


    и уже в файле локализации i18n.c создается блок


  • svdrp - встроенная в вдр фича позволяющая управлять вдр через телнет/
    через порт 2001 (по умолчанию)

    Исходный код
    # telnet localhost 2001


    изменить адрес svdrp можно запустив vdr с опцией -p

    Исходный код
    # /vdr/vdr -h
    ...............
      -p PORT,  --port=PORT    use PORT for SVDRP (default: 2001)
                               0 turns off SVDRP


    например

    Исходный код
    # vdr -p 2002


    список разрешенных для присоединения таким образом
    клиентов задается в svdrphosts.conf


    инфо об этой фиче на немецком
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    и на русском
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    а здесь я позволил себе дать оригинальные help-сообщения по командам
    на английском с разбивкой на группы команд


    /


    ============== Channels ==============================================


    LSTC [ <number> | <name> ]
    List channels. Without option, all channels are listed. Otherwise
    only the given channel is listed. If a name is given, all channels
    containing the given string as part of their name are listed.



    CHAN [ + | - | <number> | <name> | <id> ]
    Switch channel up, down or to the given channel number, name or id.
    Without option (or after successfully switching to the channel)
    it returns the current channel number and name.


    DELC <number>
    Delete channel.



    MODC <number> <settings>
    Modify a channel. Settings must be in the same format as returned
    by the LSTC command.


    MOVC <number> <to>
    Move a channel to a new position.


    NEWC <settings>
    Create a new channel. Settings must be in the same format as returned
    by the LSTC command.


    ============= EPG =========================================================


    CLRE
    Clear the entire EPG list.


    LSTE [ <channel> ] [ now | next | at <time> ]
    List EPG data. Without any parameters all data of all channels is
    listed. If a channel is given (either by number or by channel ID),
    only data for that channel is listed. 'now', 'next', or 'at <time>'
    restricts the returned data to present events, following events, or
    events at the given time (which must be in time_t form).


    PUTE
    Put data into the EPG list. The data entered has to strictly follow the
    format defined in vdr(5) for the 'epg.data' file. A '.' on a line
    by itself terminates the input and starts processing of the data (all
    entered data is buffered until the terminating '.' is seen).


    SCAN
    Forces an EPG scan. If this is a single DVB device system, the scan
    will be done on the primary device unless it is currently recording.


    ==================== recordings ===========================================


    LSTR [ <number> ]
    List recordings. Without option, all recordings are listed. Otherwise
    the information for the given recording is listed.


    DELR <number>
    Delete the recording with the given number. Before a recording can be
    deleted, an LSTR command must have been executed in order to retrieve
    the recording numbers. The numbers don't change during subsequent DELR
    commands. CAUTION: THERE IS NO CONFIRMATION PROMPT WHEN DELETING A
    RECORDING - BE SURE YOU KNOW WHAT YOU ARE DOING!


    EDIT <number>
    Edit the recording with the given number. Before a recording can be
    edited, an LSTR command must have been executed in order to retrieve
    the recording numbers.


    PLAY <number> [ begin | <position> ]
    Play the recording with the given number. Before a recording can be
    played, an LSTR command must have been executed in order to retrieve
    the recording numbers.
    The keyword 'begin' plays the recording from its very beginning, while
    a <position> (given as hh:mm:ss[.ff] or framenumber) starts at that
    position. If neither 'begin' nor a <position> are given, replay is resumed
    at the position where any previous replay was stopped, or from the beginning
    by default. To control or stop the replay session, use the usual remote
    control keypresses via the HITK command.


    ================= Timers ========================================================


    LSTT [ <number> ] [ id ]
    List timers. Without option, all timers are listed. Otherwise
    only the given timer is listed. If the keyword 'id' is given, the
    channels will be listed with their unique channel ids instead of
    their numbers.


    NEWT <settings>
    Create a new timer. Settings must be in the same format as returned
    by the LSTT command. It is an error if a timer with the same channel,
    day, start and stop time already exists.


    MODT <number> on | off | <settings>
    Modify a timer. Settings must be in the same format as returned
    by the LSTT command. The special keywords 'on' and 'off' can be
    used to easily activate or deactivate a timer.


    MOVT <number> <to>
    Move a timer to a new position.


    NEXT [ abs | rel ]
    Show the next timer event. If no option is given, the output will be
    in human readable form. With option 'abs' the absolute time of the next
    event will be given as the number of seconds since the epoch (time_t
    format), while with option 'rel' the relative time will be given as the
    number of seconds from now until the event. If the absolute time given
    is smaller than the current time, or if the relative time is less than
    zero, this means that the timer is currently recording and has started
    at the given time. The first value in the resulting line is the number
    of the timer.


    UPDT <settings>
    Updates a timer. Settings must be in the same format as returned
    by the LSTT command. If a timer with the same channel, day, start
    and stop time does not yet exists, it will be created.


    DELT <number>
    Delete timer.


    ==================== Various ================================================


    GRAB <filename> [ <quality> [ <sizex> <sizey> ] ]
    Grab the current frame and save it to the given file. Images can
    be stored as JPEG or PNM, depending on the given file name extension.
    The quality of the grabbed image can be in the range 0..100, where 100
    (the default) means "best" (only applies to JPEG). The size parameters
    define the size of the resulting image (default is full screen).
    If the file name is just an extension (.jpg, .jpeg or .pnm) the image
    data will be sent to the SVDRP connection encoded in base64. The same
    happens if '-' (a minus sign) is given as file name, in which case the
    image format defaults to JPEG.


    примечание 1
    для того чтобы это сработало vdr должен быть запушен с опцией -g

    Исходный код
    debian:/# /vdr/vdr -h
    .....
      -g DIR,   --grab=DIR     write images from the SVDRP command GRAB into the
                               given DIR; DIR must be the full path name of an
                               existing directory, without any "..", double '/'
                               or symlinks (default: none, same as -g-)


    например

    Исходный код
    # vdr -g /tmp


    примечание 2
    грабится все что есть на экране - и картинка и OSD (если он в этот момент есть
    на экране


    HITK [ <key> ]
    Hit the given remote control key. Without option a list of all
    valid key names is given.


    MESG <message>
    Displays the given message on the OSD. The message will be queued
    and displayed whenever this is suitable.


    PLUG <name> [ help | main ] [ <command> [ <options> ]]
    Send a command to a plugin.
    The PLUG command without any parameters lists all plugins.
    If only a name is given, all commands known to that plugin are listed.
    If a command is given (optionally followed by parameters), that command
    is sent to the plugin, and the result will be displayed.
    The keyword 'help' lists all the SVDRP commands known to the named plugin.
    If 'help' is followed by a command, the detailed help for that command is
    given. The keyword 'main' initiates a call to the main menu function of the
    given plugin.


    example

    Исходный код
    plug femon open
    900 Opening femon plugin
    plug femon quit
    900 Closing femon plugin


    STAT disk
    Return information about disk usage (total, free, percent).


    например

    Исходный код
    stat disk
    250 33213MB 9707MB 70%



    VOLU [ <number> | + | - | mute ]
    Set the audio volume to the given number (which is limited to the range
    0...255). If the special options '+' or '-' are given, the volume will
    be turned up or down, respectively. The option 'mute' will toggle the
    audio muting. If no option is given, the current audio volume level will
    be returned.


    QUIT
    Exit vdr (SVDRP).
    You can also hit Ctrl-D to exit.

  • Если конечно не в атлантике (посередине), должно быть +.
    GMT+1 = berlin +3=Moscow


  • Главное это + не -. =)

    Цитата

    Со слов пользователя free-x
    как насчет поправки на летнее время? ;)
    сейчас Берлин +2, Москва +4

  • у меня глюки?

    Исходный код
    Fri Aug 25 14:57:56 MSD 2006
    debian:/# export TZ=GMT+0MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 14:58:14 MST 2006
    debian:/# export TZ=GMT+3MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 11:58:50 MST 2006
    debian:/# export TZ=GMT-3MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 17:59:01 MST 2006


    "-" у меня - смещение времени в большую сторону !!! т.е. go EAST ))))))))

  • Сознавайся ты на янки стороне ? ;)


    MST - Mountain Standard Time


    Цитата

    Со слов пользователя Courage
    у меня глюки?

    Исходный код
    Fri Aug 25 14:57:56 MSD 2006
    debian:/# export TZ=GMT+0MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 14:58:14 MST 2006
    debian:/# export TZ=GMT+3MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 11:58:50 MST 2006
    debian:/# export TZ=GMT-3MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 17:59:01 MST 2006


    "-" у меня - смещение времени в большую сторону !!! т.е. go EAST ))))))))

    Сообщение было отредактировано 2 раз, последнее редактирование пользователем trantor ().

  • да вместо MST я вписывал все что угодно - что CET что MSD - влияет только
    на отображение в date /////////////
    debian:/# export TZ=GMT-3MST,M3.5.0/2,M10.5.0/3
    debian:/# date
    Fri Aug 25 17:59:01 MST 2006 - на сдвиг времени не влияет --- а я на этой
    стороне ))))) питерские мы ))))))


    ну хоть режьте меня - вот выдержка с
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    01:37:42 GMT-4
    там же рядышком есть и таблицы для регионов с стандартными названиями зон
    и времени в них - европа Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.

    Исходный код
    RU  	Russian Federation 	 Europe/Moscow 	 Sat-26-Aug-2006 	 01:34:47 	 MSD  	Moscow+00 - west Russia


    01:34:47 MSD Moscow


    как говорили карцев и ильчинко --- ты не сидоров кассир --- сличайте-сличаьте )))

  • Всё правильно, путаница из-за использования GMT вместо UTC ( последнее правильнее) так как к UTC именно добавляются часы чтобы получить локальное время, а в случае с GMT от локального времени отнимают часы чтобы получить GMT.
    Инфа тут:
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    конкретно:

    Цитата

    Before 1920, all ships kept local apparent time on the high seas by setting their clocks at night or at the morning sight so that, given the ship's speed and direction, it would be 12 o'clock when the Sun crossed the ship's meridian (12 o'clock = local apparent noon). During 1917, at the Anglo-French Conference on Time-keeping at Sea, it was recommended that all ships, both military and civilian, should adopt hourly standard time zones on the high seas. A ship within the territorial waters of any nation would use that nation's standard time. The captain was permitted to change his ship's clocks at a time of his choice following his ship's entry into another time zone—he often chose midnight. These zones were adopted by all major fleets between 1920 and 1925 but not by many independent merchant ships until World War II.


    Time on a ship's clocks and in a ship's log had to be stated along with a "zone description", which was the number of hours to be added to zone time to obtain GMT, hence zero in the Greenwich time zone, with negative numbers from 1 to 12 for time zones to the east and positive numbers from +1 to +12 to the west (hours, minutes, and seconds for nations without an hourly offset). These signs are opposite to those given below because ships must obtain GMT from zone time, not zone time from GMT.


    З.Ы. Воистину - век живи век учись..............

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем trantor ().

  • "ниточное" описание моей попытки заменить кернел в дебиан этч


    собрал новый кернел для р4 - закинул старый конфиг из /boot в папку
    с исходными - make menuconfig - тип процессора - р4 и поддержку smp
    (все это для поддержки hyperthreading)


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    make bzImage modules modules_install install


    исправил grub menu list - добавил блок - старые записи оставил
    тоже - чтобы можно было грузится в старый кернел

    Исходный код
    title Debian GNU/Linux, kernel 2.6.15.1 P4
            root (hd0,4)
            kernel /boot/vmlinuz-2.6.15.1 root=/dev/hda5 ro
            initrd /boot/initrd.img-2.6.15-1-486


    но - при загрузке плюется - не найден modules.dep -по трезвому
    размышлению понял что initrd.img-2.6.15-1-486 не с теми драйверами


    чтож - попробуем собрать initrd с новыми драйверами


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.

    Исходный код
    # mkdir temp ; cd temp
    # cp /boot/initrd-2.6.14.2.img initrd-2.6.14.2.img.gz
    # gunzip initrd-2.6.14.2.img.gz
    # cpio -i --make-directories < initrd-2.6.14.2.img


    в деьиан инитРД оказалось собран как раз cpio


    (названия инит рд у меня другие - исправил конечно ---
    в результате появилась загрузочное деревце - заменил
    в нем все старые драйверы которые в него входили на новые -
    помучался конечно немного....


    дальше надо собрать дерево в образ



    Исходный код
    # dd if=/dev/zero of=/tmp/ramdisk.img bs=1024 count=4000
    # /sbin/mke2fs -F -m 0 -b 1024 /tmp/ramdisk.img 4000 
    # mount /tmp/ramdisk.img /mnt/initrd -t ext2 -o loop=/dev/loop0 
    ioctl: LOOP_SET_FD: Device or resource busy


    на этом пока остановился - что ему надо не знаю --- осталось
    в-общем пустяк - собрать все -


    Исходный код
    # Finish up...
    umount /mnt/initrd
    gzip -9 /tmp/ramdisk.img
    cp /tmp/ramdisk.img.gz /boot/ramdisk.img.gz


    и попробовать подсунуть новому кернелу и
    новый initrd

  • если/dev/loop0 чем то занят - есть еще 7 штук лупов )))
    размер несжатого образа рамдиска а около 11000 посему


    Исходный код
    # dd if=/dev/zero of=/tmp/ramdisk.img bs=1024 count=12000 
    # /sbin/mke2fs -F -m 0 -b 1024 /tmp/ramdisk.img 12000
    # mount /tmp/ramdisk.img /mnt/initrd -t ext2 -o loop=/dev/loop1


    при следущей перезагрузке этих /dev/loop0 1 не оказалось -
    во всяком варианте луп есть /dev/loop/0

    Исходный код
    # mount /tmp/ramdisk.img /mnt/initrd -t ext2 -o loop=/dev/loop/0


    бросил деревце с новыми драйверами в /mnt/initrd
    упаковал образ

    Исходный код
    # umount /mnt/initrd
    # gzip -9 /tmp/ramdisk.img


    перенес ramdisk.img.gz в /boot и назвал его для единобезобразия
    initrd.img-2.6.15.1
    заодно из /tmp попрятал его - может пригодится


    исправил grub


    title Debian GNU/Linux, kernel 2.6.15.1 P4
    root (hd0,4)
    kernel /boot/vmlinuz-2.6.15.1 root=/dev/hda5 ro
    initrd /boot/initrd.img-2.6.15.1


    и .... ramdisk imcompleate wright
    это уже хужее .... что на сей раз ему надо?

  • в-общем конечно в дебиан можно просто установить пакет с другим кернел-имиджем


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    скажем тот что я пытался на который я пытался заменить в своей системе

    Исходный код
    Package: linux-image-2.6.15-1-686-smp (2.6.15-8)
    Linux kernel 2.6.15 image on PPro/Celeron/PII/PIII/P4 SMP machines
    
    
    This package provides the binary image and pre-built loadable modules for Linux kernel 
    2.6.15 on multi-processor Pentium Pro/Celeron/Pentium II/Pentium III/Pentium 4 machines.
    
    
    This packages is produced using an updated kernel packaging system and replaces 
    older kernel-image packages


    но это как то....


    в догонку еще несколько линков - если ничего не помогает - читай инструкцию )))
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    Исходный код
    Debian has its own method of recompiling the kernel and related modules. 
    
    
    Since it is a moving target, kernel compilation is a difficult subject that may confuse even 
    the most admired developer:
    Be careful and always rely on the /usr/share/doc/kernel-package/README.gz by 
    Manoj and Kent.


    правда у меня по этому адресу - пусто - так что - будем искать )))


    оказывается есть еще такой инструмент в дебиан

    Исходный код
    f you use initrd, make sure to read mkinitrd(8) and mkinitrd.conf(5).


    так что буду читать )))

  • сбылась мечта идиота

    Исходный код
    Initializing CPU#0
    .................
    CPU: Physical Processor ID: 0
    ..............
    Initializing CPU#1
    ................
    CPU: Physical Processor ID: 0
    Total of 2 processors activated


    это гипертрединг процессор - с "как-бы" двумя процессорами
    жаль что не CoreDuo2 - там их на самом деле 2


    как получилось?
    как всегда вначале я упираюсь в самый сложный вариант
    - создание кернела + запуск inird
    - потом вспоминаю что можно автоматом установить типа
    apt-get install linux-image-2.6.15-1-686-smp (2.6.15-8)
    - и наконец есть шикарный вариант - просто пересобрать
    кернел но с модулями ide контролера не подгружаемыми
    а встроенными в кернел -

    Исходный код
    make clean
    make bzImage modules modules_install install


    что я и сделал - потом чуть отредактил менюлист для груб
    перезагрузка ........ и он взял и загрузился )))


    а может потом и сделаю ваще ревизию config для сборки кернела - нафига
    мне все это разнообразие - надо только повнимательней посмотреть-
    что кернел грузит и подгружает при работе --- то что грузит при запуске -
    можно и встроить в него .... но это все потом )))


    а с initrd разобраться бы не мешало - просто для интереса )))

  • asus баребон pundit с чипсетом sis - попытки выжать максимум скорости


    процессор Р4 2400 шина 800 512 кэш с HT (northwood)- но из-за того что в материнке нет 800
    работает на 533 как Р4 1600 - найти сейчас процессор Р4 northwood на 533 мегагерца
    невозможно- а прескоты и целероны Д на эту ревизию мб не становятся


    тесты состояли в перегонке видео mencoder c параметрами
    -lavcopts vcodec=mpeg2video:mbd=2 -vf scale=960:540



    =================== Р4 неразогнаный =======================================
    кернел 686 без smp загруженный и установленный как деб пакет без smp
    Pos: 8.0s 202f ( 0%) 11.24fps Trem: 57min 240mb A-V:0.040 [1038:256]


    кернел самособранный 686 с smp и включенным в биос гипертрединг
    Pos: 8.0s 202f ( 0%) 8.43fps Trem: 76min 240mb A-V:0.040 [1038:256]


    кернел самособранный 686 с smp и вЫключенным в биос гипертрединг
    Pos: 2.8s 72f ( 0%) 8.14fps Trem: 81min 355mb A-V:0.040 [1586:256]


    кернел оригинальный после установки 2.6.15-1-486
    Pos: 2.8s 72f ( 0%) 10.27fps Trem: 64min 355mb A-V:0.040 [1586:256]


    ==================== гоним Р4 ============================================
    можно погнать проц - множитель фиксирован - 12 тактовая на моем борту
    номинальная 133 - можно догнать до 155/39 мегагерц и установив вручную
    тактовую для памяти 232 (по всем тестам такой разгон является стабильным)
    c сохранением тайминга памяти 2.5-3-3-7


    686 без smp
    Pos: 8.0s 202f ( 0%) 11.77fps Trem: 54min 240mb A-V:0.040 [1038:256]
    еще полкадра выиграл - всего то (((


    при увеличении тактовой частоты проца если оставить тактовую памяти на авто
    то можно догнать тактовую проца только до 1828/152 (при 155 вылезают ошибки памяти)
    Pos: 8.0s 202f ( 0%) 13.09fps Trem: 49min 240mb A-V:0.040 [1038:256]


    это самый быстрый вариант для этого процессора на этой плате
    жаль она не поддерживает 200 мгц на шине процессора и 200 на память


    загрузка проца при просмотре сhannel1 russia и включенном на всю катушку
    деинтелейсинге - около 80 %


    ======================= целерон =======================================
    - теперь меняю на
    целерон 2400/100 128 cache и 2 эксперимента (кернел оставляю самый быстрый
    686 без smp
    - на номинальной частоте 2400/100
    Pos: 8.0s 202f ( 0%) 11.02fps Trem: 58min 240mb A-V:0.040 [1038:256]
    т.е. целик 2400/100/128 примерно равен P4 1600/133/512


    - целерон 2400 разогнанный по максимальной стабильной частоте - 2999/119 мгц
    Pos: 8.0s 202f ( 0%) 13.59fps Trem: 47min 240mb A-V:0.040 [1038:256]
    нагрев через 10 минут до стабильных 54 градусов


    - целерон 2400 разогнанный по максимальной стабильной частоте
    с небольшим запасом - на 120 процентов стабильности - 2808/117 мгц
    Pos: 8.0s 202f ( 0%) 13.35fps Trem: 48min 240mb A-V:0.040 [1038:256]
    нагрузка на проц при просмотре в кофейне с включенным на всю катушку деинтерлейсинге
    около 90 процентов - а у разогнанного Р4 примерно теже 80-90 на том же канале


    теперь выигрыша Cel 2808/117/128MB по сравнению с Р4 1828/152/512МБ
    вообще нет при кодировке видео - но так как целик выделяет намного
    больше тепла наверно остановлюсь на Р4 - он вообще холодный как лед
    через 10 минут 100 % нагрузки проц нагрелся до 49 градусов и дальше
    расти не хотел


    хм -возвращаюсь к hyperthreding поставил через apt-get install linux/// 686-smp и
    Pos: 8.0s 202f ( 0%) 13.22fps Trem: 48min 240mb A-V:0.040 [1038:256]
    выигрыша по скорости никакого но при этом вижу как распределяется нагрузка
    на виртуальные процессоры и вижу что второй то не очень и нагружен -
    на mencoder он практически не работает
    возможно что требуется какая нибудь оптимизация или подбор программ
    для получения выигрыша от использования гипертрединга


    ----------------- вывод -------------------
    - из двух имеющихся в наличии процессоров Целерон 2400/bus100/cache128
    (overclocked 2808/bus117) P4 1600/bus133/cache512 Northwood (overclocked 1828/bus152)
    имеют примерно равную производительность - но выбор за Р4 как более холодном
    и имеющим гипертрединг


    - устанавливайте в дебиан кернелы через apt-get install ))))


    - из всех кернелов молодое поколение выбирает 2.6.15-1-686 + libc-686


    - гипертрединг не ухудшает ситуацию - а значит вполне возможно использовать и
    2.6.15-1-686-smp

  • ffmpeg
    сборка ffmpeg


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    в какой то директории

    Исходный код
    # svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
    # ./configure
    # make
    # make install


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


    Исходный код
    # ./ffmpeg -i sum.avi -vcodec mpeg2video  -b 5000 -acodec copy -s 640x480  /tmp/vcd.mpg


    -s 704x576 = -s 4cif = размер выходного кадра
    -s cif = 352x288


    -b 5000 = битрейт


    -acodec copy = аудио не перекодируется


    -i sum.avi = название входного файла


    /tmp/vcd.mpg = название выходного файла
    !!! внимание!!! от расширения файла зависит контейнер
    в который будет упакованы аудио и видео
    при расширении .mpg и кодеках h263p mpeg4 видео не воспроизводится
    только если расширение будет .avi
    а вот mpeg2video может быть упакован как в ави так и в мпег контейнер


    -vcodec mpeg2video = название видеокодека
    интерес представляют (полный перечень # ffmpeg -formats )
    h263p
    mpeg1video
    mpeg2video
    mpeg4


    и аудио кодеки
    mp2
    mp3


    и -target (ffmpeg -i infile -target dvd outfile )

    # dv DV video format
    # Stream #0.0: Video: dvvideo, yuv420p, 720x576, q=2-31, 200 kb/s, 25.00 fps(c)
    # Stream #0.1: Audio: pcm_s16le, 48000 Hz, stereo, 1536 kb/s


    # dvd MPEG2 PS format (DVD VOB)
    # Stream #0.0: Video: mpeg2video, yuv420p, 720x576, q=2-31, 6000 kb/s, 25.00 fps(c)
    # Stream #0.1: Audio: ac3, 48000 Hz, stereo, 448 kb/s


    # vcd MPEG1 System format (VCD)
    # Stream #0.0: Video: mpeg1video, yuv420p, 352x288, q=2-31, 1150 kb/s, 25.00 fps(c)
    # Stream #0.1: Audio: mp2, 44100 Hz, stereo, 224 kb/s



    # svcd MPEG2 PS format (VOB)
    # Stream #0.0: Video: mpeg2video, yuv420p, 480x576, q=2-31, 2040 kb/s, 25.00 fps(c)
    # Stream #0.1: Audio: mp2, 44100 Hz, stereo, 224 kb/s


    могут быть полезны опции
    -an Disable audio recording.
    -vn Disable video recording

  • Исходный код
    # ./ffmpeg -i sum.avi -vcodec mpeg2video  -b 5000 -acodec copy -s 4cif  /tmp/vcd.mpg


    600 фреймов в минуту - значит скорость оцифровки примерно 10 fps


    mencoder с теми же параметрами


    Исходный код
    /usr/bin/mencoder ./sum.avi \
        -ovc lavc \
        -oac copy \
        -lavcopts vcodec=mpeg2video:vbitrate=5000 -vf scale=704:576 \
        -o /tmp/out.avi


    развивает примерно 12,8 fps


    побеждает mencoder

  • рескалирование hdtv записей


    хотите увидеть при использовании ff-карты на экране tv hdtv картинку?
    правда это не настоящая хдтв картинка (аппаратная часть ff карты
    не поддерживает разрешения больше 720х576 - а также различные комбинации
    720, 704, 640, 512, 480, 352 - для горизонтального разрешения и
    288,576 для PAL или 240,480 для NTSC - для верптикального)
    и не в реальном масштабе времени а через запись и перекодировку
    записи в нужный формат


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    1. Записываем например euro1080 hd5

    Исходный код
    Euro1080 HD-5;Euro1080:12111:HC34:S36.0E:26500:311:312=eng:0:0:310:94:50:0


    2. перекодируем в mpeg2 720,576 c aspect ratio 16/9
    - звук не перекодируем

    Исходный код
    #! /bin/bash
    
    
    /usr/bin/mencoder ./001.vdr \
        -ovc lavc \
        -oac copy \
        -lavcopts vcodec=mpeg2video:vbitrate=15000:aspect=16/9  \
        -vop scale -zoom -xy 720,576 \
        -o ./out.mpg


    3. воспроизводим
    - вывод видео на фф карту ao mpegpes -vo mpegpes
    - скалирование по горизонтали поручаем аппаратной части
    ff карты - фильтру dvbscale=720
    прим. НЕ пытайтесь скормить dvbscale на вод разрешение больше 720 -
    он этого не понимает! если на вход дать картинку скажем 800х400 он на
    выход и отправит 800 ! только если на вход меньше 720 - тогда сработает

    - scale=-1:0,expand=-1:576 - такая запись нужна чтобы этот файл воспроизводился
    на экране с сохранением аспект ратио 16.9


    Исходный код
    # mplayer -ao mpegpes -vo mpegpes -vf dvbscale=720,scale=-1:0,expand=-1:576:-1:-1:1 out.mpg


    добавив в scale=-1:440 можно подобрать вертикальный размер картинки - т.е.
    подобрать аспект рэйтио по своей душе - 440 мне на экране моего телика смотрится лучше всего
    правильнее конечно 720х404 (собственно так и выводится по умолчанию) - но 440 мне больше нравится



    Исходный код
    # mplayer -ao mpegpes -vo mpegpes -vf dvbscale=720,scale=-1:440,expand=-1:576:-1:-1:1 out.mpg


    такое дополнительное скалирование добавляет нагрузки на процессор - но можно сразу
    перекодировать файл в такое "неправильное" разрешение


    Исходный код
    #! /bin/bash
    
    
    /usr/bin/mencoder ./001.vdr \
        -ovc lavc \
        -oac copy \
        -lavcopts vcodec=mpeg2video:vbitrate=15000  \
        -vf scale=720:440 \
        -o ./out.mpg


    и прокручивать его без скалирования по вертикали


    Исходный код
    # mplayer -ao mpegpes -vo mpegpes -vf dvbscale=720,scale=-1:0,expand=-1:576:-1:-1:1 out.mpg


    а если записать так


    Исходный код
    # mplayer -ao mpegpes -vo mpegpes -vf dvbscale=720,scale=-1:576 out.mpg


    то воспризводится будет растянутым по вертикали на весь экран


    наверно может и возможно прямое воспроизведение с рескалированием записи hdtv
    но аппаратное скалирование не работает с хдтв разрешением 1920 (((
    и приходится скалирование поручать программному скалированию - а для
    програмного скалирования в реальном масштабе времени надо по всей видимости не
    менее 3 ГГц процессор - на моей 1.8 гига платформе идут затыки


    Исходный код
    # mplayer -ao mpegpes -vo mpegpes -vf scale=720:440,expand=-1:576:-1:-1:1 001.vdr


    хотел было попробовать мпег4 так же но вдр не хочет писать luxe tv на 13 град -
    LUXE TV HD;EUTELSAT:11241:vC34:S13.0E:27500:33:36=fra,37=fra:0:0:13809:318:200:0
    "запись начата" и вдр падает ((((

  • - возникла конкретная задача просто - трансфер файлов по БТ между линукс и мобилой


    в двух словах


    1. втыкаем усб-бт-донгл


    2. учим линукс БТ
    самый развитый проект BlueZ
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    читаем там


    The kernel modules of BlueZ are included in the Linux 2.4 and 2.6 kernel series.


    уже здорово! кернел включает модули БТ - кстати это было видно в сообщениях кернела -


    Исходный код
    # dmesg 
    /////////////////////
    usb 2-1.2: new full speed USB device using ohci_hcd and address 6
    Bluetooth: Core ver 2.8
    NET: Registered protocol family 31
    Bluetooth: HCI device and connection manager initialized
    Bluetooth: HCI socket layer initialized
    Bluetooth: HCI USB driver ver 2.9
    usbcore: registered new driver hci_usb


    далее читаем - неплохо все расписано - правда слегка устарело
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
    Short HowTo - Bluetooth file transfer between KDE 3.2 in Slackware Linux 9.1 and SonyEricsson P900


    необходимые юзерские проги hciconfig hcid sdpd hcitool входят в пакеты
    # bluez-libs-3.7.tar.gz
    # bluez-utils-3.7.tar.gz
    с сайта BlueZ или ........ !!!! в деб-пакеты для деб этч
    bluetooth bluez-utils и значит достаточно


    Исходный код
    # apt-get install bluetooth


    я конечно этого не знал и собрал пакеты с сайта BlueZ -
    в-общем конечно и они работают но устанавливать лучше через
    деб-пакеты


    3. далее ставим т.н. графический Bluetooth Framework - для КДЕ это
    kdebluetooth


    вообще конечно вначале надо было посмотреть - а что для блютус
    есть в дебиан

    Исходный код
    # apt-cache search bluetooth


    но меня сбило с толку сообщение на сайте BlueZ что пакеты деб
    есть только для нестабильной версии дебиан


    в-общем - доставляем Bluetooth Framework

    Исходный код
    # apt-get install kdebluetooth


    и все - в меню кде в разделе программ для интернета появляется 3
    проги - kbluetoothd kbtobexclient kbtserialchat
    запускаем kbluetoothd и в трее видим значок БТ
    кроме этого в файловых менеджерах в меню правой кнопки в разделе
    Actions появляется пункт послать на блютус )))))))
    открывается bluetooth OBEX Object Push client (kbtobexclient)
    - прога назначена только для одного - посылки файла на бт девайс - умеет
    найти бт девайс сама (девайс должен быть открыт для обнаружения)
    выбрать файл и послать ))))


    если потом его закрыть - он спрашивает - загружать ли себя любимого с
    стартом машины - и видимо при этом или при установке bluetooth
    прописывается в автозагрузке и требуемые для работы БТ демоны
    /usr/sbin/hcid
    /usr/sbin/sdpd


    конфиги для бт в /etc/bluetooth


    теперь немного непоняток


    во-первых невозможность иногда определить и спарить девайсы снаружи
    - скажем с мобилы если хочешь на линукс комп послать файл - то он не
    находится --- выход найден


    # hciconfig hci0 piscan




    почему то опция ISCAN исчезает через некоторое время - видимо тайм оут есть
    хотя вроде обнаружение всегда включено на линукс машине


    и второе - это сообщение


    Исходный код
    You may replace bluez's pin helper program with kbluepin; it is located in /usr/lib/kdebluetooth now.


    с удовольствием это бы сделал но не знаю что и куда надо заменить


    несколько пользяшек из прог связанных с бт
    ciptool hciattach hciconfig hcisecfilter hcitool l2ping ppporc sdptool


    Исходный код
    # hcitool scan
    Scanning ...
            00:12:62:31:CF:17       Nokia 6260


    Исходный код
    # hciconfig hci0 piscan


    Исходный код
    # sdptool browse
    Inquiring ...
    Browsing 00:12:62:31:CF:17 ...
    /////// выдает список всех сервисов на внешнем бт девайсе ////



    и хелпы для этих основных прог