[Work Notes] Generating Makefile with Autotools and Makefile.am

Quick reference for generating a Makefile using the Autotools workflow: # autoscan . // Scan the folder to generate configure.scan # cp configure.scan configure.ac // Copy configure.scan to configure.ac # vi configure.ac // Edit configure.ac // Add: AM_INIT_AUTOMAKE(hello,1.0) // This is the required marco for automake # aclocal // Execute aclocal to generate aclocal.m4 # autoconf // Execute autoconf to generate configure # autoheader # automake --add-missing // Run automake # touch NEWS; touch README; touch AUTHORS; touch ChangeLog // Create required documents # automake --add-missing // Run automake again # ./configure // Execute configure to generate Makefile # make // Execute make Following these steps provides a good template to modify the related files for my specific target project.

March 19, 2013 · 1 min · 120 words · ChenFu Kuo

[Work Notes] GStreamer: Migrating from 0.10.x to 1.0.x in OpenWrt

I start to move the gstreamer version from 0.10.x to 1.0.x in openwrt. Two purpose, one is to get much more familiar with the gstreamer applications and plugins development, another one is to assist my colleagues for next schedule. Just make a quick note here. Official gstreamer packages version I use is 1.0.5: gstreamer core → Modify Makefile and patch, compile ok. gst-plugins-base → Modify Makefile and patch, compile ok. gst-plugins-good → Modify Makefile and patch, compile ok. gst-plugins-ugly → To be check if required. gst-plugins-bad → Modify Makefile and patch, compile ok. gst-libav → To be check if required. Proprietary plugins: ...

March 18, 2013 · 2 min · 260 words · ChenFu Kuo

[Work Notes] SIP Test of FreeSwitch by FSClient

In previous articles, I tried to build the pjsip package, but it’s hard to verify that the package works correctly without a solid understanding of SIP. So I decided to get more familiar with how SIP works by setting up a switch. There are two popular choices: Asterisk and FreeSwitch. I chose FreeSwitch because pre-compiled binaries for Windows 7 are already available. http://wiki.freeswitch.org/wiki/Installation_Guide After installation, remember to allow the application through the firewall. Since this is just for testing, I ran FreeSwitch with the default configuration. ...

March 13, 2013 · 1 min · 205 words · ChenFu Kuo

[Work Notes] PJSIP on Ubuntu

Before trying to make the pjsip work on my embedded device, I build the related libraries on PC as the reference. My environment is based Ubuntu 10.04. See the following guide. http://trac.pjsip.org/repos/wiki/Getting-Started/Autoconf The notes of packages building: ALSA and OpenSSL libraries are optional and I do not install for first. SDL: download version 2.0 and do ./configure, make; make install to install. Add sudo if encountering privilege problems. FFMPEG: reference the official FFMPEG documentation at https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide. Follow the guide to build yasm, x264 and ffmpeg. The ffmpeg version (0.10.6) and building process follow the pjsip guide. ...

March 12, 2013 · 2 min · 271 words · ChenFu Kuo

[Work Notes] PJSIP Package Build in OpenWrt

There is a default pjsip package in the openwrt but it links to the extension package of ltq-tapi and oss. What I need first is the package without extra packages. So I try to create the libraries using the latest version 2.1 for the experiment. First, the Makefile of the package: include $(TOPDIR)/rules.mk PKG_NAME:=pjsip2 PKG_VERSION:=2.1 PKG_RELEASE:=0 PKG_SOURCE:=pjproject-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.pjsip.org/release/$(PKG_VERSION)/ PKG_MD5SUM:=310eb63638dac93095f6a1fc8ee1f578 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_BUILD_DIR:=$(BUILD_DIR)/pjproject-$(PKG_VERSION).$(PKG_RELEASE) include $(INCLUDE_DIR)/package.mk define Package/pjsip2 SECTION:=lib CATEGORY:=Libraries URL:=http://www.pjsip.org/ MAINTAINER:=John Crispin <[email protected]> TITLE:=pjsip2 DEPENDS:=+libuuid endef CONFIGURE_ARGS += \ --disable-floating-point \ --disable-g711-codec \ --disable-l16-codec \ --disable-g722-codec \ --disable-g7221-codec \ --disable-gsm-codec \ --disable-ilbc-coder \ --disable-libsamplerate \ --disable-ipp \ --disable-ssl \ --disable-oss \ --disable-sound define Build/Configure (cd $(PKG_BUILD_DIR); autoconf aconfigure.ac > aconfigure) $(call Build/Configure/Default) endef define Build/Compile CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \ CXXFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS) -lc $(LIBGCC_S) -lm" \ $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/pjsip2 $(CP) $(PKG_INSTALL_DIR)/usr $(1)/usr/pjsip2 endef $(eval $(call BuildPackage,pjsip2)) We encounter the following problem: ...

March 12, 2013 · 2 min · 260 words · ChenFu Kuo

[Industry Observation] Evernote Was Hacked

I’ve already change my tool from the notepad++ or Microsoft’s word to Evernote to make a quick note for several months. It’s quite simple to use and the data can be synchronize to cloud and I could access my notes through network everywhere anytime. There is a news that Samsung’s refrigerator built in Evernote for food management and Samsung show this device in the CES show. The story at this moment, I think Evernote make his products go into a new era. However, the morning sun never lasts a day. Evernote was hacked and the customers information were possibly stolen last week. ...

March 7, 2013 · 2 min · 216 words · ChenFu Kuo

[Industry Observation] Smartvue Cloud Architecture

There is a company that we discuss recently because of their elegant embedded NVR device. I just talk about the private cloud and public cloud roles in the surveillance system in previous article. http://frankuo.blogspot.tw/2013/02/pure-public-or-hybrid-cloud-for.html Smartvue’s product architecture is a case of the hybrid cloud. Let’s see the whole system they define. We can take S9 server as the private cloud server for local storage and playback. If we remove this part, the total system become a pure public cloud type. Although the pure cloud system is simpler, there are still some limitations at this moment. Smartvue let the high resolution video to be stored on the local server and high or low resolution video can optionally be put on the secure cloud. The reason is obvious that the network environment of LAN is still much clean and fast than WAN and all high resolution video can be saved totally without any loss. ...

March 3, 2013 · 1 min · 173 words · ChenFu Kuo

[Tech Insights] Firefox OS - Liberate the App Stores

I saw a news on TV today that about Firefox OS for mobile phone and it got my curiosity. So I go Mozilla’s web site to see what’s that about. See the link: http://www.mozilla.org/en-US/firefox/partners/# The first page have the overview of the Firefox OS. The point to me is following picture. Some of telecommunication operators and device manufacturer get involved in the Firefox OS. It shows that the operators and manufacturer want to liberate the apps stores from the providers like Apple, Google. ...

February 28, 2013 · 1 min · 188 words · ChenFu Kuo

[Work Notes] Liberated Networking Technology

Our company updated the homepage to a brand new look. There is the word “Liberated” used to describe the new networking technology we implemented. According to the dictionary, I’m most likely aligned with the description “free from traditional social restraints” — because we are trying to make fundamental changes in every domain we enter. It’s an interesting journey. Although it’s not 100% correct, I still want to record what I saw. I plotted the company’s product map based on personal observation from the webpage: ...

February 27, 2013 · 1 min · 124 words · ChenFu Kuo

Liberated networking technology

Our company update the home page to a brand new picture. There is a name ‘Liberated’ to describe the new networking technology we implemented. According to the dictionary, I’m most likely the description “free from traditional social restraints” because we are trying to make the fundamental change in different area that we enter. It’s an interesting journey to me. Although it’s not 100% correct, I still want to record what I saw here. I plot the company’s product map simply by personal thinking as follow from the webpage.

February 27, 2013 · 1 min · 88 words · ChenFu Kuo