2013年12月19日木曜日

  

Xperia Z(10.3.1.B.0.256)のPCアップデート

以前はOTAアップデートのみだった10.3.1.B.0.256へのアップデートがPCで出来るようになった。
Android4.2.2にアップデートされており、新しいWalkmanアプリ等が使えるようになっている。

(1)SUS / PC Companionで10.3.1.B.0.256にアップデートする。
(2)[blob_fs]フォルダ内のファイルを別の場所にコピーする。
(3)FlashToolを使い、10.3.1.B.0.256のftfファイルを作成し、ftfファイルが焼けることを確認する。
(4)1ClickRootキットでRoot化
(5)CWM(CWM6-cDM_v2.5)を入れて、バックアップを取る。


参考URI
【Z】PCでアップデートが可能になった!ftfファイルをつくろう!!
【How-To】一から始めるXPERIAカスタム(2)ftfファイルを作る(2013年版)

C:\Program Files (x86)\Sony Mobile\Update Service\db\13740270\blob_fs
中身を空にする。
sony mobileのUpdate Serviceを起動。そのまま手順に沿って端末をアップデートさせる。
blob_fs内のファイルを用いてflashtoolでftfファイルを作成する。

bundleCreationではpartition-image.sinとsimlock.taをリストから除外するらしいが、
今回はsimlock.taが見当たらないのでpartition-image.sinだけ除外してみる。

android 4.2は端末情報のビルドを5回タップしないと開発者オプションが出てこない。
開発者オプションからUSBデバックをONにする。

最新のrootキットのrootkitXperia_20131207.zipにはadbが含まれていない。
【SONY Walkman NW-ZX1】ワンクリックroot取得
ここでのやり取りでキューブキューブ氏がadbの同梱を止めたためだ。

以前のrootキット(具体的に言うとEasyRootingToolkit_XPEIRAZ_SO-02E_v102)に
同梱されているfilesフォルダの中にadbが含まれているので、
システムドライブの適当な場所に展開して、PATHを通せば、
AndroidSDKを無理にインストールしなくてもいけた。

root化とCWM導入までは成功。flashtoolで初期化も成功した。

10.3.1.B.0.256には対応したcubemod無いみたい。

2013年10月10日木曜日

  

lossyWAVを使用してのWalkmanでギャップレス再生

X-アプリのAtracやMedia Goで取り込んだmp3/aacは、
機種によってWalkmanでギャップレス再生できそうな事は分かった。
しかし、これはLameでいう所の--nogapオプション相当の機能で、
曲の長さがオリジナルと異なってしまうエンコード方法である。
オリジナルと一緒の長さを保ったままファイルを作成しようとすると、
可逆圧縮しか道は無さそうである。

通常のアルバムはLAMEでmp3にエンコードを行い、liveや、
NonstopMixのCDはflacでエンコードするのがいいのかなと思う。

だが、flacはファイルサイズがでかいのでWalkmanに入る曲が少なくなってしまう。
そこで、lossyWavでflacファイルを作ることによって、
不可逆圧縮でWalkmanでギャップレス再生できるファイルを作成してみた。

lossyWavとは何か?
lossyWavは、波形を最適化することによって、可逆圧縮をしたときに
ファイルサイズを少なくできるプログラム。
当然、波形をいじくるので可逆圧縮ではなくなる。
Wavファイルのサイズが小さくなるわけではない、あくまでもこの後に
可逆圧縮をかけることが必要。

用意するファイル
lossyWav 1.3.0
Flaccl 0.3
fpFlac (Open CL対応のグラボを持っていない場合)


Foobar2000のコンバート設定では--stdoutで2つのプログラムの橋渡しが可能らしい。
そこで、lossyWavとflacclを組み合わせて、LossyFlacを作ってみる。
LossyWavとFlacclを適切な場所に設置し、パスを通しておく。

コマンドラインオプション(lossyWav+Flaccl)
/d /c lossyWAV - -q X --silent --stdout|CUETools.FLACCL.cmd --quiet -b 512 -8 --verify  --cpu-threads 1 - -o %d
(スレッド数を増やすとエラーが出たのであえてスレッド数は1にしてある)

コマンドラインオプション(lossyWav+fpFlac)
/d /c lossyWAV - -q X --silent --stdout|fpFLAC -b 512 --threads 12 -f %s %d -V -8
(スレッド数は手持ちのパソコンの物に変更する。)

lossyWavの-q <X>オプションは
I , E , H , S , C , P , X
←高音質   高圧縮→
Xを指定するとflacファイルのビットレートが320kbpsぐらいになる。

Flaccl/fpFlacの方は-bオプションで512を指定してやる必要があるっぽい。

一応、出来上がったファイル名の末にlossyを付けることにした。

出来上がったファイルをNW-F807に転送して聞いてみた所、
ギャップレス再生される事を確認した。
今後、容量不足になった時にはLossyFlacを利用していこうと思う。

2013年10月9日水曜日

  

Media Go 2.5a のギャップレスエンコードを調べてみた。

Media Goがバージョンアップして2.5aになったらしい。
バージョンアップ内容にmp3のギャップレスエンコードがあったので、
どのような実装方式なのか調べてみた。

夏に買ったS2TB RecordingのHardcore United Tokyoが
ノンストップミックスだったのでエンコードを試してみる事にした。

結果
NOTittleFLACLAME MP3Media Go
01intro1:13.9461:13.9461:14.031
02Tranny Stream3:09.7733:09.7733:09.988
03Skorpion EVO2:36.2802:36.2802:36.264
04Look up in the Sky3:20.9333:20.9333:20.933
05Shout2:34.8802:34.8802:34.880
06See It Coming3:09.7603:09.7603:09.779
07The Haunted!3:05.5863:05.5863:05.573
08Odessey3:00.0003:00.0003:00.009
09As One feat. Yukacco [RoughSketch Remix]3:16.7603:16.7603:16.754
10KILLER MACHINE4:50.2403:54.3863:54.396
11Soul Of Noise4:50.2404:50.2404:50.194
12Oyasumi [TANUKI vs. Dil Remix]4:05.6004:05.6004:05.603
13Protorusion3:20.9063:20.9063:20.907
14Magic Rave Night4:05.5864:05.5864:05.603
15Are You Ready [DJ SHIMAMURA Remix]4:41.8534:41.8534:41.808
16Starlit Sky4:26.2804:26.2804:26.344

54:5254:5254:53

LAMEで取り込んだ曲もMedia Goで取り込んだ曲もFoobar2000では、
mp3_accurate_length = yesとなっていてギャップレス再生は出来た。
しかし、 Media Goで取り込んだ方はパディング等の情報が表示されなかった。

Flacで取り込んだ曲と、lameを使って作成した曲は長さが一致しているが、
Media Goで取り込んだ曲は長さが違う結果となった。
これはMedia Goが--nogapオプションでmp3をエンコードしていると見て間違いなさそうだ。
現状では、Media Goで不可逆圧縮を利用すると曲の長さが改変されてしまう。
Atrac時代から、なぜこの仕様を引きずっているのか理解に苦しむ。
mp3エンコードでVBRが選べないのもこの仕様によるのだと思う。
個人的に、mp3の優れている所はLAMEを使ったVBRエンコードだと思っているので、
Media GoでのMP3のCBRエンコードはあまり意味がないように思う。
曲間情報を正しく保ったままWalkmanでギャップレス再生しようとすると、
Media Goで可逆圧縮形式を使うしか道は無さそうである。

2013年10月3日木曜日

  

PeercastでのFLV(H.264)視聴をまとめてみた

PeercastStationを導入する。

PecaFlowPlayerを導入する。
PecaFlowplayerフォルダ内のflowplayerをpeercaststationのフォルダ
C:\Program Files (x86)\PeerCastStation-1.5.3\htmlにコピー
その他のファイルはC:\Program Files (x86)\PecaFlowplayerと配置する。

pcyplite同梱のpcfp
pcfpはpcypliteに同梱されていますがpcyp2等でも利用ができました。
pcypLiteフォルダ内のpcfpをpcypのフォルダにコピーします。

PeerCastAirPlayer
pcap内のpcap.airをダブルクリックでインストール、同時視聴は4つまでだが、
同梱のinstal.regをレジストリ登録すると5つ以上見えるらしい。

pcypの設定
pcyp等のYP取得するTypeに『flv|』を追加する。
pcypliteには再生するメディアタイプによって再生するプレーヤーを選べますが、
pcypには無いので、ツールのコマンドよりプレーヤーを追加します。
とりあえずどちらもコマンドに"<stream/>" "<channelname/>" "<type/>"
等を追加すればよいみたい。
pcyp2への登録例
メニュータイトルコマンド
pcfpC:\Program Files (x86)\pcyp\pcfp\pcfp.exe  "<stream/>" "<channelname/>" "<type/>"
PecaFlowplayerC:\Program Files (x86)\PecaFlowplayer\pecaflowplayer.exe "<stream/>" "<channelname/>" "<type/>"
pcapC:\Program Files (x86)\pcap\pcap.exe "<stream/>" "<channelname/>" "<direct/>"
チャンネルリストより右クリック→ツールでプレーヤーを選んで視聴ができる。


PecaFlowPlayer
iniファイルに再生時の音量を記述することができる。
拡大縮小のアスペクト比が固定されている
フルスクリーン表示ができる。

pcfp
アスペクト比が固定されていない。
フルスクリーン表示が出来ない。(Windowのメニューバー、ダブルクリックで拡大は可能)

PeerCastAirPlayer(pcap)
Adobe Airを使用したFLVプレーヤーらしい。
ハードウェアデコードに対応していてCPU負荷を軽減できるらしい。









  

fpFLACを使った高速エンコード

Core i 7 3612QMのノートPCでは、flacclで変換速度が思ったほど伸びなかった。そこでOpenCLベースではなくて、通常のエンコーダを使って見ることにした。

flake
本家のエンコーダよりも高速化されているバイナリらしい。
flacclの-verifyオプションで使用されていたりするが、あくまでもテスト段階らしい。

fpFLAC
マルチスレッド処理のエンコーダということで
fpFLACを試して見ることにした。
(※エンコードするにあたって、64bitアプリケーション環境が必要です。)


可逆圧縮は、コンバータ設定にあるBit depthのHighest BPS mode supportedを16に設定する。
(ビットパーフェクトに出力するため)

EAC向けコマンドラインオプション
/c fpFLAC--threads 8 -f %s %d -V -8
圧縮率は本家と同じ-8にしてverifyをかけるために-Vオプションを付けた。
サイレントモードはどうも無いっぽいのでそのまま。

Core i 7 3612QMのノートPCで54分のCDが15秒ほどでエンコードできた。
GeForceやRadeonを搭載していないノートPCでは、
fpFLACの方が高速でエンコード出来ることが分かった。


※2017-08-11 fpFLACの配布元URLが変更になっていたので修正
  

testtest

連動test

2013年9月26日木曜日

  

LAMEでmp3エンコード

LAME 3.99.5 32bit/64bit
公式ソースからビルドされたバイナリ。

AltiVec/SSE Optimized LAME Encoder
AltiVec/SSEを使って高速化したエンコーダらしい。

LAME 64bitにパスを通すとEACがエラーで起動しなくなる。
EAC本体は32bitなのだがLAME 64bitのパスが通っていると
その機能を内包した状態で起動しようとするからである。

foobar2000は本体は32bitで動いているが
コンソールアプリには純粋にコマンドラインを投げるだけなので
64bitエンコーダが利用できた。

LAMEの強みはLAMEタグによるギャップレスエンコードと
VBRの最適化にあると思うので-Vオプションを使うことにした。
-V 0 ~ -V9
←高音質 低音質→

EAC
-S --noreplaygain -V 0 -h %s %d
foobar2000



Encoder file:任意LAMEを置いたディレクトリを選ぶ
Extension:mp3
Prameters:-S --noreplaygain -V 0 -h - %d
Format is:lossy
Highest BPS mode supported:24
Encoder name:MP3 (tmkk-LAME)分かり易い名称。
Bitrate (kbps):245VBR(V0)オプションなので、245ぐらい。
Settings:V0VBR V0オプションを使用するので。

  

flacclを使った高速flacエンコード

Flaccl
flacclはGPUの持つGPGPU機能をOpenCLで動かすエンコーダ
OpenCLに対応したグラボを用意すれば動作する。
CPUを利用したエンコーダとは速さが違う気がする。
上のHPからDLできるのはflaccl 0.3だが、
CUETools_2.1.4の中にはflaccl 0.4が含まれている。(違いはよくわからん)

可逆圧縮は、コンバータ設定にあるBit depthのHighest BPS mode supportedを16に設定する。
(ビットパーフェクトに出力するため)

エンコードオプション
-0 ~ -11
←高速低圧縮 低速度高圧縮→
本家flacは-8までなのでとりあえず-8にしてる
--cpu-threads X
Xの場所にCPUのスレッド数を入力する。
--opencl-type X
通常は設定の必要はないが、intelのIvy Bridgeでエンコードする時は
CPUと指定してやる必要があった。

EACやfoobar2000で設定してやると、
うちはCore i 7 980Xと560 TIなので、
/c CUETools.FLACCL.cmd --quiet -8 --verify  --cpu-threads 12  %s -o %d
ってな設定で450倍~500倍の速度が出た。

Core i 7 3612QMのノートでは
/c CUETools.FLACCL.cmd --quiet -8 --opencl-type CPU --verify  --cpu-threads 8  %s -o %d
で一応動いたが速度はあまり出ず7倍程度だった。

2013年9月25日水曜日

  

FLACについて調べてみた

 Walkman等がFLACに対応してきた影響で、SONY本家が提供している変換ソフト
Media Goなどもエンコードに対応しているらしい。
しかしせっかくD&Dに対応したのに、変換ソフトをインストールするのはナンセンスだと思う。
(インストールする時に変なコーデックが入るという話も聞く。)
エンコードもどうせシングルスレッドで、時間もかかるだろうし面白くない。
flacファイルは可逆圧縮でタグも使え、画像の埋め込みなどにも対応していて
PCでの管理がしやすい。その反面、エンコードにそれなりの時間を有する。
そこでフロントエンドとコマンドラインプログラムを調べてみたことをまとめておく。

FLAC v.1.3.0
公式のコンソールプログラム
2Gを超すwavファイルからの変換に対応している。
シングルスレッドプログラムなので変換に要する時間が長い。

fpFLAC
1.2.1をベースにマルチスレッド処理が加わったコンソールプログラム。
64bitのOSとCPUの対応が必要。
マルチコアCPU環境でエンコードの高速化を期待できる。

FLACCL
グラフィックボードのGPGPU機能を利用してエンコードを行うコンソールプログラム
専用のハードウェアとドライバ(OpenCL)が必要(GeForce,Radeon等)
環境さえ整えばおそらく最速でエンコードができる。

hello World!