2014/02/25

用 lame 批次將 .wav 轉成 .mp3

在 Ubuntu 底下,批次將 .wav 轉成 .mp3 的方法如下:

先安裝轉檔工具:

sudo apt-get install lame

再執行 lame 將 .wav 檔一個一個轉成 .mp3:

ls *.wav | sed -e 's/\.wav//' | xargs -i -n 1 lame -h -b 128 "{}.wav" "{}.mp3"

2014/02/19

刪除 PDF 檔的旁註和重點標示

拿到一份 PDF 檔,用功的前人在上面又是底線又是螢光筆的重點畫得滿滿多是,看得眼花撩亂。終於找到一個方法,可將這些 annotation 清理的乾乾淨淨:

sed -i -e 's:/Annots\[[^]]\+\]::g' FILENAME.PDF
上述指令看來很玄,簡單說就是將文件中 "/Annots[....]" 的資料片段都給刪了。

若你不想全部刪,或者只想一個個刪,在 Ubuntu 上可以找一個 pdfedit。開啟檔案後,點「樹」的「頁面」可列出每一頁,每頁的「註釋」就是插入的這些重點標示。

參考資料

2013/10/01

Eclipse 的 Workspace 該怎麼用

剛開始用 Eclipse 開發 Android Apps。在學習過程中,一直有一個疑問:workspace 該怎麼用?一個 app 一個 workspace?還是一個 workspace 通吃大部分的 app?這兩種策略又有何差異?

以下這邊文章解答了我部份的疑問 (簡單說,用一個 workspace 通吃大部分的 apps):
還有其他考量嗎?繼續研究當中,有心得再來更新。

2013/09/16

將多張 JPEG 圖形檔合成一個多頁文檔

想將多張 JPEG 圖形檔合成一個多頁文檔?沒問題,但你要先知道 JPEG 格式目前沒有多頁模式。所以要轉成支援多頁的格式,譬如 .PDF 或 .TIFF。

Ubuntu 上似乎預設就有此功能:
convert file1.jpg file2.jpg file3.jpg output.pdf
此功能是包含在 imagemagick 套件上,若沒有上述 convert 程式,可以自己安裝此套件:
sudo apt-get install imagemagick
據說 Windows 和 MacOS 平台上也都有此程式。

2013/08/31

在 Ubuntu 使用 USB RS232 轉接線

現在的 PC 或 NB 已經很少看到 RS232 接口了。但有些時候,如開發 embedded system 時,還是很需要 serial console。此時就需要 USB RS232 轉接線。

在 Ubuntu 上使用 USB RS232 轉接線很簡單。首先,插入 USB RS232 轉接線後馬上執行以下命令查出 device name:
$ dmesg | grep tty
[ 7842.193255] usb 2-2: pl2303 converter now attached to ttyUSB0
如上述範例的  device name 的是 ttyUSB0。一般來說,你可能會沒有足夠的權限:
$ ls -l /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 0  8月 31 10:33 /dev/ttyUSB0
像上述範例,你如果不是 root,就要把自己加入 dialout 那個 group (修改 /etc/group)。然後就可用自己喜好的 terminal emulator 開始上工了。

以下是其他一些可能會需要的診斷工具,僅供參考:
  • 查看連接上的 USB 裝置的資訊:lsusblsusb -v
  • 查查裝置剛插入時有什麼狀況發生:tail /var/log/syslog

2013/08/02

在 Ubuntu 上將 YouTube 的 MV 轉成 MP3 檔

先聲明,以下這方法不是最簡單的,只是個人喜好的步驟 (其實,有網站提供此服務)。

首先,先在 Firefox 安裝可下載 YouTube 影片的 Add-on,譬如:1-Click YouTube Video Download。將喜歡的 MV 轉成 MP4 檔。

然後,執行以下指令:
avconv -i input.mp4 -f mp3 -vn output.mp3
若不能成功,可能是缺少 mp3 codec,用以下方法安裝:
sudo apt-get install libavcodec-extra-53
不習慣 avconv (亦即之前的 ffmpeg) 命令列的,可以安裝 winff 來用 GUI。

參考資料:


2013/07/24

Android/Eclipse 上 Java 的 Tab 處理

Android 的 Code Style Guidelines 明確規定縮排是用四個空白,而且強調 We never use tabs。既然最權威的原創者有明確的規定,我們開發 Android Apps 時,若沒有特別的理由,建議也比照辦理。

有趣的是,Eclipse 的預設跟此規定恰好相反:用相當於四個空白寬度的 tab 來縮排。改變此設定的方法如下:
  • Window > Preferences > Java > Code Style > Formatter > New
  • Java Conventions [built-in] 當樣板,新增一個 Android Style profile
  • 修改此 profile,將 Tab policy 改成 Spaces only,Tab size 設成 4
有了上面的設定,用 eclipse 開發 android app 時,縮排用 tab 就會自動變成四個空白。我建議再做以下設定,讓 eclipse 明確顯示 space、tab 和 newline 等字元,以便精準掌握「空白」是不是你所想要的那種「空白」:
  • Window > Preferences > General > Editors > Text Editors > Show whtiespace characters