Home > hacking > gmediaserver + iphone

gmediaserver + iphone

一直在linux下面工作,总是懒得切回xp去同步iphone中的内容。自从上次越狱失败后,iphone上东西基本没再装什么东西,平时只是用来听听豆瓣电台,看看瑞士法郎的汇率。其实一开始挺迷豆瓣电台的,不用自己找歌,打开就听。不过有时候感觉豆瓣电台也总是调不到我喜爱的频段上,还是希望听一会儿自己电脑里的歌。

可惜针对移动性设计的x61在多媒体方面太弱,而且笔记本通常放在书房里,此外家里当时也没搞什么多媒体的基础设施。想要在做饭或者吃饭时个听歌除了用iphone播豆瓣电台,其它的解决方案都有些麻烦:

  1. 把x61拿到客厅
  2. 接上音箱
  3. 启动程序
  4. 选择播放列表
  5. play

在整上几次后基本就没兴致了。

经历了长久的郁闷之后,昨天突然想到iphone应该有支持媒体点播的app。果然应了我的那句话,itunes里没有你下不到的app,只有你想不想到想的app。我在appstore里找到了MLPlayer lite(好像没看到收费版的,不过这个已经够用了)。另外,除了MLPlayer还有个叫remote X的app,但是好像只支持windows media player。有了app,还缺少的就是一个服务器,MLPlayer支持UPnP协议,网址上列出了一堆服务器Linux上的,Mac上的,当然还有windows上的。

我没有仔细研究,直接找了个GNU的gmediaserver,虽然Ubuntu 9.10库里面可以直接安装,但用iphone连上后只能看到目录。用v4选项,看到gmediaserver无法识别mp3文件类型。google之,是libmagic的问题,说是修改flag就可以,但是mailarchive被墙了(silly government)。不过应该不是什么大问题,直接下载gnu网上的源码,编译顺利通过(谢天谢地没有什么可怕的依赖性),启动服务器问题依旧。直接把src/metedata.c文件打开加了句printf,发现了问题,好像是目前gmediaserver的解析的字符串和libmagic的不一样,小改一下后重新编译搞定。不过还是有些mp3文件识别不了,好像是由于这些文件中没有mp3关于rate, layer, frequency的信息。libmagic的magic_file只返回“application/octet-stream”结果。dirty hack一下,当返回结果是“application/octet-stream”并且文件头三个字符是"ID3"我就认为是个mp3文件。

ha,现在可以开个服务器在家里用iphone浏览电脑上的照片,播放自己喜爱的音乐了。

其它信息:

  • 编译gmediaserver需要库里的libmagic-dev和libupnp-dev包

have fun, guys and gals, hacking is addictive

Advertisements
Categories: hacking
  1. Da
    July 14, 2010 at 7:39 pm

    好好学习,早点毕业,嘿嘿,一天到晚就折腾这些啊

  2. Fisher
    July 15, 2010 at 12:38 am

    在西安拿iphone很拉风吧

  3. Junyan
    July 15, 2010 at 9:12 am

    我基本在家放着,国内没啥服务可用,不能查车,地图也不准,基本是个用来装样的东西。

  4. 晓辉
    July 15, 2010 at 9:48 pm

    嘿嘿 看你推荐 立即装了一个豆瓣电台还有什么好玩的可以在不越狱的情况下用啊

  5. @yzyhb
    April 1, 2011 at 6:35 pm

    跟我一样爱折腾,可是没iPhone

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: