Dec 06, 2009

QPlayList

 N900 のデフォルトのメディアプレイヤーのプレイリスト管理が、N8x0 の頃にさらに輪をかけて変というかわかりづらいというかバグってる?って状況なので、プレイリスト (.m3u) ファイルを作成するアプリを書いてみた。N8x0 用のやつを、むかーし見かけた気がするんだが...

m3u の中身は、まぁ基本的にファイル名を羅列すればいいので、コマンドラインから find で作るという手もある。 というか現時点では、それにほぼ近いことしかしてない ^^; まぁ Qt でアプリを書くのが目的なので、細かいことはどうでもいいのだ。

 ということで、まずアプリを起動すると、デフォルトのディレクトリ ~/MyDocs/Music フォルダの中身を調べて、mp3 と m4a ファイルをリストアップする。なんでそんなとこがデフォルトフォルダかというと、 自分がそこに音楽ファイルをぶちまけてるからであって、特に深い意味はない。それとファイル形式もたまたまその2種類しか N900 に入れてなかったから、まぁとりあえずってことでその2種類だけサポートした。

Screenshot-20091206-072946検索対象となるディレクトリはメニューから変更する。スクリーンキャプチャは ~/MyDocs/Music 以下のフォルダを表示してる。この時点ではいくつかのファイルが Music 以下に直接ぶちまかってて、それ以外に2つフォルダがある。

Screenshot-20091206-073003このうち の1つを選択したのが次のスクリーンキャプチャのやつ。 最終的にはこのフォルダをクリックして選ぶ。クリックするとダイアログが閉じる。別途 New ってボタンがあって、 実にまぎらわしい GUI なんだが、Qt の QFileDialog::getExistingDirectory ってのを普通にコールしただけなので、何かオプショとか設定すれば、New ボタンとったりとかできるんじゃないかな? 知ってる方、教えてくらさい。

Screenshot-20091206-073019 フォルダを選択すると元の画面に戻って、 そのフォルダにあるファイルを調べてリストアップする。本当はファイルを1つずつチェックして、 タイトルとアーティスト名とか時間とか表示したかったんだが面倒なのでファイル名を表示した。なので各アイテムの下段、 ほんとはアーティスト名が表示されるとことが unknown になってる。そんな表示にするくらいなら消せばいいじゃん? って話も無きにしもあらずだが...

Screenshot-20091206-073126 あと将来的には複数選択して、それのみプレイリストとして保存するってするつもりだが、 現時点では全部を対象にプレイリスト保存してる。まぁとりあえず Save Playlist ボタンを押すと別画面が表示されるのでプレイリスト名を入力して Save ボタンをスト、対象としてるディレクトリに .m3u ファイルを保存する。

Screenshot-20091206-073154 ここまでがこのアプリの作業。次はデフォルトのメディアプレイヤーを起動して、 Music を選択。メニューで Playlists を選択すると、 メディアプレイヤーが勝手に見つけてきたプレイリストの一覧を表示する。先程保存したプレイリストは Imported ってカテゴリにあって、多分一番下にあるはず。逆順にしてくれると嬉しいんだが...

Screenshot-20091206-073205 あとはこのプレイリストを選択して、Shuffle songs を押すか、 どれか適当な曲を選択すれば再生が始まる。

プレイリストは CD などからリッピングした際に、例えば Winamp なんかは勝手に作ってくれるので、 わざわざ作る必要もないわけだが、自分の場合いろんな曲を Music フォルダにぶちまけてるので、 そこでいくつか曲を選択してプレイリストを作成できると、その日の気分によって聴く曲(プレイリスト) を選択できて便利かなーって思ったんだがどうだろう?

ちなみに N900 の Qt パッケージは今 4.5.3 と 4.6 と2種類あって、後者はまだ Extras-devel にあるプレビュー版。それで試すとリストビューで複数選択はできるが Finger Scroll が変、というかできない。4.5.3 の方は、今現在出てるやつでサポート終了って言ってるけど複数選択ができないというバグがある。ということで、 またいまいちなモノを作ってしまったようだ...


Related Info.

    No related items.

Comments

No comments yet

Add Comments

※下記の単語・フレーズはコメントで使用できません。大文字・小文字は同一視します。
poker, backgammon, tramadol, casino, insurance, loans

OpenID を使ってログインすることができます。

Identity URL:

Trackbacks

トラックバック
このエントリにトラックバックはありません
このトラックバックURLを使ってこの記事にトラックバックを送ることができます。 もしあなたのブログがトラックバック送信に対応していない場合にはこちらのフォームからトラックバックを送信することができます。.
visitor stats