[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
今更シリーズの第3!弾、さて今回は往年の組み込み用 CPU、日立 H8/300 用の GCC などは如何でしょうか。ルネサスさん、なんと一部品番については 2020 年代中頃辺りまで供給するつもりらしいです。
秋月でもまだまだ扱いがあるあたり、根強い需要があるのか、それとも余程在庫が残ってるのか…
妙な邪推はさておき、x86 な Windows で動作する最新(本稿執筆時)の H8/300 用ビルド済み
を公開しておきます。
MSYS2 32bit 環境下でビルドしてありますが、利用に MSYS2 や他のライブラリの類のインストールは必要ありません。詳しくは同梱の readme.txt とかを見て下さい。
gcc-8.3.0_h8300-hitachi-elf_Windows.7z (SHA-1: 22a9f12535959354877ecac1e77fb94c3108653b)
同梱の Windows インストーラー(*.msi) を使えば直ちにインストールできます。確認とか全く聞いてこない手抜き仕様なので注意。
アンインストールも Windows インストーラーなので簡単。
もう平成も終わろうというのに、今さら玄箱(初代)に Debian Jessie (archive) を debootstrap
して linux-4.4.229 を添えてみました。
# /etc/fstab proc /proc proc defaults 0 0 /dev/sda3 / ext4 defaults,noatime 0 1 /dev/sda1 /boot ext2 defaults,noatime 0 2 /dev/sda2 swap swap defaults 0 0これは玄箱(初代)本来の割り方ではなく、他所の野良 linux 化でよくされていた割り方とも微妙に違うので、U-Boot 変数の設定とかを引き写してくる際には注意
kuroboxHD
kuroboxHD.local
)、および ssh が有効root
へログイン可能、パスワードは kuroboxHD
apt-get
して下さいsudo apt-get install \ libpcre3-dev libssl-dev \ libasound2-dev libfontconfig1-dev librtmp-dev libx264-dev libsdl2-dev
./configure \ --conf-path=/etc/nginx/nginx.conf \ --error-log-path=/var/log/nginx/error.log \ --pid-path=/var/run/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --http-log-path=/var/log/nginx/access.log \ --http-client-body-temp-path=/var/cache/nginx/body \ --http-proxy-temp-path=/var/cache/nginx/proxy \ --http-fastcgi-temp-path=/var/cache/nginx/fastcgi \ --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \ --http-scgi-temp-path=/var/cache/nginx/scgi_temp \ --with-http_ssl_module \ --add-module=../nginx-rtmp-module
./configure \ --prefix=/usr/local/ffmpeg \ --enable-gpl \ --enable-version3 \ --enable-fontconfig \ --enable-libfreetype \ --enable-librtmp \ --enable-libx264 \ --enable-mmal \ --enable-omx-rpi \ --extra-libs=-ldlかつてはラジーパイ実機でFFmpegビルドとか重すぎ(苦笑)だったらしいのだが今は昔。make -j4とかすればどんどん捗る(要強制冷却)。
[Unit] Description=The NGINX HTTP and reverse proxy server After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/var/run/nginx.pid ExecStartPre=/usr/local/nginx/sbin/nginx -t ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true Nice=-10 [Install] WantedBy=multi-user.target
# worker_processes 1; user root staff; events { worker_connections 128; } rtmp { server { listen 1935; chunk_size 16384; buflen 1000ms; exec_kill_signal term; allow publish 127.0.0.0/8; allow publish 192.168.0.0/16; deny publish all; allow play 127.0.0.0/8; allow play 192.168.0.0/16; deny play all; application webcam { live on; exec_pull /usr/local/webcamhelper/nginx_rtmp_exec_pull_wrapper '$app' '$name'; } } }
#!/bin/bash FFMPEG=/usr/local/ffmpeg/bin/ffmpeg on_TERM(){ pkill -TERM -P $$ } trap 'on_TERM' TERM STEM=$(dirname $0)/rtmp DEVICE=$(readlink -f $(cat "$STEM.$1.$2.device")) $STEM.$1.$2.init $DEVICE $FFMPEG -hide_banner $(cat $STEM.$1.$2.ffmpeg_arg0) -i $DEVICE $(cat $STEM.$1.$2.ffmpeg_arg1) -f flv "rtmp://localhost:1935/$1/$2" & wait
/dev/v4l/by-id/*rtmp.{$app}.{$name}.init という名前で最初の接続の際)に呼ばれるシェルスクリプト(主にカメラ初期化用)を、
#!/bin/bash uvcdynctrl -d $1 -s Brightness * uvcdynctrl -d $1 -s Contrast * ...rtmp.{$app}.{$name}.ffmpeg_arg0 / rtmp.{$app}.{$name}.ffmpeg_arg1 という名前でFFMpegに渡すパラメータを書いておく。
-loglevel error -fflags nobuffer -rtbufsize *M -f v4l2 -video_size *x* -input_format rawvideo -framerate *
-filter_complex hqdn3d=3,drawtext=text=%{localtime}:fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Bold.ttf:fontsize=32:fontcolor=white@1.0:shadowcolor=black@0.8:shadowx=3:shadowy=3:x=(w-text_w)/2:y=16,fps=* -c:v h264_omx -b:v *M -g * -zerocopy 1{$app} は上記の例だと webcam に、{$name} はわかりやすい名称や番号とかにする。あとアスタリスクになっているところは実際の機材や環境に合わせて適当に。
IoTが立派なバズワードへと成り下が…いや成長し、イギリスの名物料理がニシンパイやうなきパイではなく木苺パイとなってから早数年、主記憶1GBにGHz越えクワッドコア・おまけにWi-Fiと青歯もつけてお値段なんと\5k! Don't miss it!(通販番組並みの感想) というわけで(何がだ)、秋葉でRaspberry Pi 3 Model B (もちろん安い方w)や他諸々を買ってくる。
えっESP-WROOM-02はどうしたって? 今は元気にIPリモコンリレー装置として活躍中ですが何か。あと今更LLMNRレスポンダ公式化っておせーよ(苦笑) ラジーパイ絡みもあって結局Bonjour入れたしな。
閑話休題。余ってた8GBマイクロSDカードに公式からダウンロードしたRaspbianを頭からベタ書きしてラジーパイに食わせる。軟弱なんでもちろんGUIが使える方を。んでそれからやったことを適当に列挙。
sudo apt-get --purge install tightvncserver xrdpあと日本語キーボードがまともになるように先人の知恵を丸パクリ(苦笑)
cd /etc/xrdp/ sudo wget http://w.vmeta.jp/temp/km-0411.ini sudo ln -s km-0411.ini km-e0010411.ini sudo ln -s km-0411.ini km-e0200411.ini sudo ln -s km-0411.ini km-e0210411.ini
sudo dphys-swapfile swapoff
sudo apt-get --purge autoremove \ bluej \ chromium-browser \ claws-mail \ debian-reference-en \ dillo \ dphys-swapfile \ epiphany-browser \ geany-common \ greenfoot \ libraspberrypi-doc \ libreoffice-common \ libreoffice-core \ minecraft-pi \ netsurf-common \ nodered \ python-pygame \ python3-pygame \ realvnc-vnc-viewer \ scratch \ sonic-pi \ triggerhappy \ wolfram-engine \ xpdfこれで随分と軽くなって4GB以内に余裕で収まる。
sudo bash -c "echo dtparam=act_led_trigger=heartbeat >> /boot/config.txt"
まあこんなところかな。何だか大した内容でもないのに長くなったので今回はここまで。
カレンダー
フリーエリア
最新コメント
最新記事
プロフィール
ブログ内検索
最古記事
P R