作者: Leic

  • setup git repository mirror

    ## Create empty repository on server

    cd /repo
    GIT_DIR=avxsynth.git git init
    cd avxsynth.git
    git –bare update-server-info
    cp hooks/post-update.sample hooks/post-update

    ## Clone origin repo on workstation
    git clone –mirror https://github.com/avxsynth/avxsynth.git

    ## Setup push URL to the new repo
    git remote set-url –push origin ssh://git.zhenglei.net/repo/avxsynth.git

    ##Push back to the new repo
    git fetch origin
    git push –mirror

  • GMediaRender

    http://gmrender.nongnu.org/

    Introduction

    GMediaRender is a UPnP™ media renderer for POSIX®-compliant systems, such as GNU/Linux® or UNIX®. It implements the server component that provides UPnP controllers a means to render media content (audio, video and images) from a UPnP media server.

  • Debian Wheezy: Audio with 2nd Sound Card

    # Check sound card
    aplay -l

    • # Config 2nd sound card for aplay, add .asoundrc file under home directory
      nano ~/.asoundrc
      defaults.pcm.card 1
      defaults.pcm.device 0
      defaults.ctl.card 1
    • defaults.timer.card 1

    # Config 2nd sound card for mpd, update /etc/mpd.conf
    nano /etc/mpd.conf
    audio_output {
    type “alsa”
    name “My ALSA Device”
    — device “hw:0,0” # optional
    ++ device “hw:1,0”
    format “44100:16:2” # optional
    mixer_device “default”
    mixer_control “PCM”
    mixer_index “0”
    }

  • Debian Wheezy: install ncmpcpp, Ncurses Based MPD Client

    # Install ncmpcpp client
    apt-get install ncmpcpp

    # Update config of ncmpcpp
    nano ~/.ncmpcpp/config
    mpd_host = “192.168.127.72”
    #
    mpd_port = “6600”
    #
    mpd_music_dir = “/share/mpd/music/”
    #
    mpd_connection_timeout = “5”
    #
    mpd_crossfade_time = “3”
    #
    ##### music visualizer #####
    ##
    ## Note: In order to make music visualizer work you’ll
    ## need to use mpd fifo output, whose format parameter
    ## has to be set to 44100:16:1. Example configuration:
    ## (it has to be put into mpd.conf)
    ##
    ##audio_output {
    ## type “fifo”
    ## name “My FIFO”
    ## path “/tmp/mpd.fifo”
    ## format “44100:16:1”
    ##}
    ##
    #
    visualizer_fifo_path = “/tmp/mpd.fifo”
    #
    ##
    ## Note: Below parameter is needed for ncmpcpp
    ## to determine which output provides data for
    ## visualizer and thus allow syncing between
    ## visualization and sound as currently there
    ## are some problems with it.
    ##
    #
    visualizer_output_name = “My FIFO”
    #
    ##
    ## Note: To enable spectrum frequency visualization
    ## you need to compile ncmpcpp with fftw3 support.
    ##
    #
    visualizer_type = “spectrum” (spectrum/wave)
    #
    ##### system encoding #####
    ##
    ## ncmpcpp should detect your charset encoding
    ## but if it failed to do so, you can specify
    ## charset encoding you are using here.
    ##
    ## Note: You can see whether your ncmpcpp build
    ## supports charset detection by checking output
    ## of `ncmpcpp –version`.
    ##
    ## Note: Since MPD uses utf8 by default, setting
    ## this option makes sense only if your encoding
    ## is different.
    ##
    #
    #system_encoding = “”
    #
    ##### delays #####
    #
    ## delay after playlist highlighting will be disabled (0 = don’t disable)
    #
    playlist_disable_highlight_delay = “5”
    #
    ## defines how long various messages are supposed to be visible
    #
    message_delay_time = “4”
    #
    ##### song format #####
    ##
    ## for song format you can use:
    ##
    ## %l – length
    ## %f – filename
    ## %D – directory
    ## %a – artist
    ## %t – title
    ## %b – album
    ## %y – year
    ## %n – track number (01/12 -> 01)
    ## %N – full track info (01/12 -> 01/12)
    ## %g – genre
    ## %c – composer
    ## %p – performer
    ## %d – disc
    ## %C – comment
    ## $R – begin right alignment
    ##
    ## you can also put them in { } and then it will be displayed
    ## only if all requested values are available and/or define alternate
    ## value with { }|{ } eg. {%a – %t}|{%f}
    ##
    ## Note: Format that is similar to “%a – %t” (i.e. without any additional
    ## braces) is equal to “{%a – %t}”, so if one of the tags is missing,
    ## you’ll get nothing.
    ##
    ## text can also have different color than the main window has,
    ## eg. if you want length to be green, write $3%l$9
    ##
    ## available values:
    ##
    ## – 0 – default window color (discards all other colors)
    ## – 1 – black
    ## – 2 – red
    ## – 3 – green
    ## – 4 – yellow
    ## – 5 – blue
    ## – 6 – magenta
    ## – 7 – cyan
    ## – 8 – white
    ## – 9 – end of current color
    ##
    ## Note: colors can be nested.
    ##
    #
    song_list_format = “{%a – }{%t}|{$8%f$9}$R{$3(%l)$9}”
    #
    song_status_format = “{{%a{ \”%b\”{ (%y)}} – }{%t}}|{%f}”
    #
    song_library_format = “{%n – }{%t}|{%f}”
    #
    tag_editor_album_format = “{(%y) }%b”
    #
    ##
    ## Note: Below variables are for alternative version of user’s interface.
    ## Their syntax supports all tags and colors listed above plus some extra
    ## markers used for text attributes. They are followed by character ‘$’.
    ## After that you can put:
    ##
    ## – b – bold text
    ## – u – underline text
    ## – r – reverse colors
    ## – a – use alternative character set
    ##
    ## If you don’t want to use an attribute anymore, just put it again, but
    ## this time insert character ‘/’ between ‘$’ and attribute character,
    ## e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag or filename
    ## with reversed colors.
    ##
    #
    #alternative_header_first_line_format = “$b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b”
    #
    #alternative_header_second_line_format = “{{$4$b%a$/b$9}{ – $7%b$9}{ ($4%y$9)}}|{%D}”
    #
    ##
    ## Note: Below variables also supports
    ## text attributes listed above.
    ##
    #
    now_playing_prefix = “$b”
    #
    #now_playing_suffix = “$/b”
    #
    #browser_playlist_prefix = “$2playlist$9 ”
    #
    #selected_item_prefix = “$6”
    #
    #selected_item_suffix = “$9”
    #
    ## colors are not supported for below variable
    #
    #song_window_title_format = “{%a – }{%t}|{%f}”
    #
    ##### columns settings #####
    ##
    ## syntax of song columns list format is “column column etc.”
    ##
    ## – syntax for each column is:
    ##
    ## (width of column)[column’s color]{displayed tag}
    ##
    ## Note: Width is by default in %, if you want a column to
    ## have fixed size, add ‘f’ after the value, e.g. (10)[white]{a}
    ## will be the column that take 10% of screen (so the real column’s
    ## width will depend on actual screen size), whereas (10f)[white]{a}
    ## will take 10 terminal cells, no matter how wide the screen is.
    ##
    ## – color is optional (if you want the default one, type [])
    ##
    ## Note: You can give a column additional attributes by putting appropriate
    ## character after displayed tag character. Available attributes are:
    ##
    ## – r – column will be right aligned
    ## – E – if tag is empty, empty tag marker won’t be displayed
    ##
    ## E.g. {lr} will give you right aligned column of lengths.
    ##
    #
    song_columns_list_format = “(7f)[green]{l} (25)[cyan]{a} (40)[]{t} (30)[red]{b}”
    #
    ##### various settings #####
    #
    ##
    ## Note: Custom command that will be executed each
    ## time song changes. Useful for notifications etc.
    ##
    ## Attention: It doesn’t support song format anymore.
    ## Use `ncmpcpp –now-playing SONG_FORMAT` instead.
    ##
    #execute_on_song_change = “”
    #
    #playlist_show_remaining_time = “no”
    #
    playlist_display_mode = “columns” (classic/columns)
    #
    browser_display_mode = “classic” (classic/columns)
    #
    #search_engine_display_mode = “classic” (classic/columns)
    #
    #incremental_seeking = “yes”
    #
    #seek_time = “1”
    #
    #autocenter_mode = “no”
    #
    #centered_cursor = “no”
    #
    #progressbar_look = “=>”
    #
    #default_place_to_search_in = “database” (database/playlist)
    #
    user_interface = “classic” (classic/alternative)
    #
    #media_library_left_column = “a” (possible values: a,y,g,c,p, legend above)
    #
    default_find_mode = “wrapped” (wrapped/normal)
    #
    default_space_mode = “add” (add/select)
    #
    #default_tag_editor_left_col = “albums” (albums/dirs)
    #
    #default_tag_editor_pattern = “%n – %t”
    #
    header_visibility = “no”
    #
    statusbar_visibility = “no”
    #
    #header_text_scrolling = “yes”
    #
    #fancy_scrolling = “yes”
    #
    cyclic_scrolling = “no”
    #
    #lines_scrolled = “2”
    #
    follow_now_playing_lyrics = “no”
    #
    #ncmpc_like_songs_adding = “no” (enabled – add/remove, disabled – always add)
    #
    show_hidden_files_in_local_browser = “no”
    #
    #display_screens_numbers_on_start = “yes”
    #
    #jump_to_now_playing_song_at_start = “yes”
    #
    #ask_before_clearing_main_playlist = “no”
    #
    clock_display_seconds = “no”
    #
    #display_bitrate = “no”
    #
    #display_remaining_time = “no”
    #
    #regular_expressions = “basic” (basic/extended)
    #
    ##
    ## Note: If below is enabled, ncmpcpp will ignore leading
    ## “The” word while sorting items in browser, tags in
    ## media library, etc.
    ##
    #ignore_leading_the = “no”
    #
    #block_search_constraints_change_if_items_found = “yes”
    #
    #mouse_support = “yes”
    #
    #mouse_list_scroll_whole_page = “yes”
    #
    #empty_tag_marker = “”
    #
    #tag_editor_extended_numeration = “no”
    #
    #enable_window_title = “yes”
    #
    ##
    ## Note: These triggers will allow you to phisically remove
    ## files and directories from your hdd in using ncmpcpp’s
    ## browser screen.
    ##
    #
    allow_physical_files_deletion = “no”
    #
    allow_physical_directories_deletion = “no”
    #
    ##### lyrics support #####
    ##
    ## supported lyrics databases:
    ##
    ## – 1 – lyricsplugin.com
    ##
    #
    #lyrics_database = “1”
    #
    #external_editor = “”
    #
    #use_console_editor = “no” (set to yes, if your editor is console app)
    #
    ##### colors definitions #####
    #
    colors_enabled = “yes”
    #
    #empty_tag_color = “cyan”
    #
    #header_window_color = “default”
    #
    #volume_color = “default”
    #
    #state_line_color = “default”
    #
    #state_flags_color = “default”
    #
    #main_window_color = “yellow”
    #
    #color1 = “white”
    #
    #color2 = “green”
    #
    #main_window_highlight_color = “yellow”
    #
    #progressbar_color = “default”
    #
    #statusbar_color = “default”
    #
    #alternative_ui_separator_color = “black”
    #
    #active_column_color = “red”
    #
    #window_border_color = “green”
    #
    #active_window_border = “red”
    #

  • Debian Wheezy: Play music with mpd/mpc

    # Install mpd ( music play daemon )
    apt-get install mpd

    # Stop mpd service
    /etc/init.d/mpd stop

    # Update config of mpd
    nano /etc/mpd.conf
    music_directory = “/share/mpd/music”
    playlist_directory = “/share/mpd/playlists”
    db_file = “/share/mpd/tag_cache”
    log_file = “/share/mpd/mpd.log”
    pid_file = “/share/mpd/mpd”
    state_file = “/share/mpd/state”
    sticker_file = “/share/mpd/sticker.sql”
    user = “mpd”
    bind_to_address = “localhost”
    bind_to_address = “192.168.127.72”
    port = “6600”
    log_level = “default”
    follow_outside_symlink = “yes”

    # Install mpc ( music play client )
    apt-get install mpc

    # Launch mpd service
    /etc/init.d/mpt start

    # Update mpd DB
    mpc update

    # Create playlist to include all song
    mpc ls|mpc add

    # check mpd status
    mpc status

    # Check volume
    mpc volume

    # Start local Play
    mpc play

    # Start remote play
    mpc -h 192.168.127.27 play

    # Play next
    mpc next

    # Stop Play
    mpc stop

    # Mpd clients
    http://mpd.wikia.com/wiki/Clients

  • Debian Wheezy: Sound Card Config

    #Search audio device

    lspci -v |grep -i audio

     

    #Install alsa

    apt-get install alsa-base

     

    # Check audio

    modinfo soundcore

    modinfo snd

    modinfo snd-hda-intel

    modinfo snd-pcm-oss

    modinfo snd-mixer-oss

    alsamixer

     

    # Test Audio

    cd /usr/share/sounds/alsa

    aplay -vv Rear_Center.wav

     

     

  • Debian Wheezy: Setup RTL8192 USB wifi adaptor

    apt-get clear

    apt-get update

    apt-get install wireless-tools

    apt-get install wpasupplicant

    lsusb|grep -i wlan

    apt-cache search -i RTL8188CU

    apt-get install firmware-realtek

    dmesg|grep -i rtl

    iwlist scanning

    iwlist wlan0 scan|more

    nano /etc/network/interface

    auto wlan0
    iface wlan0 inet dhcp
            wpa-ssid               ‘my ssid’
            wpa-key-mgmt     WPA_PSK
            wpa-group            TKIP CCMP
            wpa-psk               ‘my password’

    /etc/init.d/networking restart

    ifconfig wlan0

  • Debian Wheezy: server setup/configuration

    # Change default Language:
    dpkg-reconfigure locales

    # Change font size of tty:
    setfont /usr/share/consolefonts/Lat15-Terminus24x12.psf.gz

    # Change default font size for all tty:
    nano /etc/default/console-setup
    –FONTFACE=”Fixed”
    –FONTSIZE=”8×16″
    ++FONTFACE=”LAT15-Terminus”
    ++FONTSIZE=”24×12″

    /etc/init.d/console-setup restart

    # Update /etc/apt/source.list

    # wheezy
    deb http://debian.ustc.edu.cn/debian/ wheezy main
    deb-src http://debian.ustc.edu.cn/debian/ wheezy main

    deb http://debian.ustc.edu.cn/debian/ wheezy non-free
    deb-src http://debian.ustc.edu.cn/debian/ wheezy non-free

    deb http://debian.ustc.edu.cn/debian/ wheezy contrib
    deb-src http://debian.ustc.edu.cn/debian/ wheezy contrib

    # security
    deb http://security.debian.org/ wheezy/updates main
    deb-src http://security.debian.org/ wheezy/updates main

    # updates
    deb http://debian.ustc.edu.cn/debian/ wheezy-updates main
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-updates main

    deb http://debian.ustc.edu.cn/debian/ wheezy-updates non-free
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-updates non-free

    deb http://debian.ustc.edu.cn/debian/ wheezy-updates contrib
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-updates contrib

    # proposed updates
    deb http://debian.ustc.edu.cn/debian/ wheezy-proposed-updates main
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-proposed-updates main

    deb http://debian.ustc.edu.cn/debian/ wheezy-proposed-updates non-free
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-proposed-updates non-free

    deb http://debian.ustc.edu.cn/debian/ wheezy-proposed-updates contrib
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-proposed-updates contrib

    # backports
    deb http://debian.ustc.edu.cn/debian/ wheezy-backports main
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-backports main

    deb http://debian.ustc.edu.cn/debian/ wheezy-backports non-free
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-backports non-free

    deb http://debian.ustc.edu.cn/debian/ wheezy-backports contrib
    deb-src http://debian.ustc.edu.cn/debian/ wheezy-backports contrib

     

    # Install mouse daemon

    apt-get install gpm

     

  • Install NAS4Free on USB

    Download embedded image from sourceforge
    http://www.nas4free.org/downloads.html

    Copy to SD/USB device, /dev/sde
    gunzip -c NAS4Free-x86-embedded-9.1.0.1.761.img|dd of=/dev/sde bs=16k

    sudo sync

  • Check shared library depends under android platform

    source build/envsetup.sh
    lunch full-eng

    arm-linux-androideabi-readelf -d out/target/product/generic/system/bin/fsck_msdos