<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Soul Of Free Loop &#187; XBMC</title>
	<atom:link href="https://zohead.com/archives/tag/xbmc/feed" rel="self" type="application/rss+xml" />
	<link>https://zohead.com</link>
	<description>Uranus Zhou&#039;s Blog</description>
	<lastBuildDate>Sat, 19 Jul 2025 15:42:46 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.8</generator>
	<item>
		<title>PPTV XBMC视频插件更新-v1.2.9</title>
		<link>https://zohead.com/archives/pptv-xbmc-v1-2-9/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-v1-2-9/#comments</comments>
		<pubDate>Wed, 20 Jan 2016 15:47:21 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[FLVCD]]></category>
		<category><![CDATA[m3u8]]></category>
		<category><![CDATA[PPTV]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1146</guid>
		<description><![CDATA[先预告下这有可能是我对 PPTV XBMC 视频插件做的最后一次修改更新了，之前最近一次的更新还是 2014 年 12 月份修改的，中间这一年时间我已经很少使用 XBMC 媒体中心播放视频了，因为之前用的是一代树莓派搭的 XBMC 媒体中心，在 2015 年买了 Android 迷你 TV 棒之后由于可以直接安装各种 TV 版和 HD 版的 Android 视频 App 使用起来明显方便了很多，这样就差不多让树莓派在那吃灰了 -_-#。 前几天收到某网友发的邮件说 PPTV 插件不能用了，我花了一天时间调试修改了原来的 1.2.8 版本 PPTV XBMC 插件（顺便复习下 Python ^_ [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>先预告下这有可能是我对 PPTV XBMC 视频插件做的最后一次修改更新了，之前最近一次的更新还是 2014 年 12 月份修改的，中间这一年时间我已经很少使用 XBMC 媒体中心播放视频了，因为之前用的是一代树莓派搭的 XBMC 媒体中心，在 2015 年买了 Android 迷你 TV 棒之后由于可以直接安装各种 TV 版和 HD 版的 Android 视频 App 使用起来明显方便了很多，这样就差不多让树莓派在那吃灰了 -_-#。</p>
<p>前几天收到某网友发的邮件说 PPTV 插件不能用了，我花了一天时间调试修改了原来的 1.2.8 版本 PPTV XBMC 插件（顺便复习下 Python ^_^），并在昨天更新到了 1.2.9 版本，主要改动如下：</p>
<ul>
<li>解决 PPTV 网站改版后搜索功能不能返回结果的问题；</li>
<li>解决得到全国电视台列表时可能出错导致 XBMC 提示脚本错误问题；</li>
<li>解决无法得到 Flash 方式分段 mp4 视频地址的问题；</li>
<li>由于 PPTV 将 m3u8 回放视频限制为 10 分钟（PPTV 的 iPad、Android 等手机网页版播放视频同样有 10 分钟的限制），默认禁用 iPad 流媒体视频播放模式。</li>
</ul>
<p>我的 PPTV XBMC 视频插件项目地址：</p>
<p><a href="https://github.com/zohead/pptv4xbmc">https://github.com/zohead/pptv4xbmc</a></p>
<p>PPTV 插件现在也已经直接合并到 <a href="https://github.com/taxigps/xbmc-addons-chinese">XBMC Chinese Add-ons</a> 仓库中的，如果你的 XBMC 中已经安装了 XBMC Chinese Add-ons 插件仓库那应该是能自动收到此视频插件更新的哦。</p>
<p>1.2.8 版本不能得到 Flash 方式分段 mp4 视频地址的原因是 <a href="http://www.flvcd.com/">FLVCD</a> 网站的客户端获取视频播放 key 的方式做了修改，加了一个比较简单的凯撒加密验证，做了对应的修改之后就可以正确获取播放的 key 了。</p>
<blockquote>
<p><strong>提示</strong></p>
<p>查看 FLVCD 的网页源代码还可以看到其凯撒加密的代码看起来是有一处明显的错误哦，不过为了插件能正常工作只能按照 FLVCD 的处理方式来修改了。</p>
</blockquote>
<p>我在此插件的修改更新过程中还是明显感觉到在 PPTV 官方没有开放 API 的情况下写 XBMC 插件是一件比较麻烦和没意思的事情，PPTV 网站或者未公开的接口做了修改之后插件就很可能不能用了，另外 PPTV 现在也比较恶心的和土豆网学习开始限制手机、平板等移动设备网页版在线视频的长度，而且国内的视频网站大抵都是如此做了各种限制，没有 YouTube 那样相对比较开放的心态。</p>
<p>现有中文插件库里面的插件普遍由于上面列出的类似种种原因工作方式都比较低效，如果像 FLVCD 那样用反编译等方式实现自动解析地址也需要随时跟着视频网站的修改做对应更新（而且 FLVCD 还只实现了视频地址解析，视频列表、搜索、分类之类的都是没有的）感觉也是挺麻烦的，这样国内的 XBMC 用户最直接的感觉就是这些视频插件经常不能正常工作。</p>
<p>因此考虑在现有 Android 等电视盒子的生态环境已经非常完善，同时各种影视聚合软件的使用体验已经完全超过 XBMC 目前的视频插件的情况下，我基本不会再对 PPTV XBMC 插件做太多修改了，后面如果 PPTV 网站或者接口有大的修改导致插件不能使用的话也不太会去更新了，估计只有碰到一些小的变动时才会做对应修改。</p>
<p>如果有其他开发者愿意加入或接手这个 XBMC 插件的开发也是非常欢迎的哦，最后还是祝大家玩的开心。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-v1-2-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PPTV XBMC视频插件更新-v1.2.8</title>
		<link>https://zohead.com/archives/pptv-xbmc-v1-2-8/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-v1-2-8/#comments</comments>
		<pubDate>Sat, 13 Dec 2014 16:20:56 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[PPTV]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[xbmc-addons-chinese]]></category>
		<category><![CDATA[插件]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=830</guid>
		<description><![CDATA[最近有网友反映之前更新的 1.2.6 版本 PPTV XBMC 插件存在问题，无法正常使用了，因此这两天花了点时间修改把插件更新到 1.2.8 版本了，主要更新记录如下： 解决直播视频地址不正确导致电视台直播节目无法正常问题的问题； 解决由于 PPTV 网站变动导致无法获取视频类别列表的问题； 解决由于 PPTV 网站变动导致无法获取视频节目列表的问题； 使用新的方法获取视频列表页码信息； 解决无法获取 m3u8 视频播放地址的问题； 解决 flvcd 网站接口变化导致无法获取 flash 视频地址的问题。 新版本已经更新到我的 GitHub 项目主页： https://github.com/ [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>最近有网友反映之前更新的 1.2.6 版本 PPTV XBMC 插件存在问题，无法正常使用了，因此这两天花了点时间修改把插件更新到 1.2.8 版本了，主要更新记录如下：</p>
<ul>
<li>
<div>解决直播视频地址不正确导致电视台直播节目无法正常问题的问题；</div>
</li>
<li>解决由于 PPTV 网站变动导致无法获取视频类别列表的问题；</li>
<li>解决由于 PPTV 网站变动导致无法获取视频节目列表的问题；</li>
<li>使用新的方法获取视频列表页码信息；</li>
<li>解决无法获取 m3u8 视频播放地址的问题；</li>
<li>解决 flvcd 网站接口变化导致无法获取 flash 视频地址的问题。</li>
</ul>
<p>新版本已经更新到我的 GitHub 项目主页：</p>
<p><a href="https://github.com/zohead/pptv4xbmc" target="_blank">https://github.com/zohead/pptv4xbmc</a></p>
<p>建议直接使用 XBMC 中文插件库的方式安装，这样可以支持直接在线更新插件。xbmc-addons-chinese 项目中的代码也已经同步更新，XBMC 中文插件库可以从 [<a href="https://github.com/taxigps/xbmc-addons-chinese/raw/master/repo/repository.xbmc-addons-chinese/repository.xbmc-addons-chinese-1.2.0.zip" target="_blank">这里</a>] 下载安装。</p>
<p>由于 PPTV 网站经常变动，插件更新有时候可能跟不上进度，插件实际使用中有任何问题欢迎与我联系，玩的开心 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-v1-2-8/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Raspberry Pi上观看Sopcast视频</title>
		<link>https://zohead.com/archives/raspberry-pi-sopcast/</link>
		<comments>https://zohead.com/archives/raspberry-pi-sopcast/#comments</comments>
		<pubDate>Thu, 02 Jan 2014 07:58:03 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[树莓派]]></category>
		<category><![CDATA[QEMU]]></category>
		<category><![CDATA[Sopcast]]></category>
		<category><![CDATA[sp-sc-auth]]></category>
		<category><![CDATA[XSopcast]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[虚拟机]]></category>
		<category><![CDATA[视频]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=652</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/raspberry-pi-sopcast/ Sopcast 是一种国外比较受欢迎的 P2P 流媒体直播软件，可以运行在 Windows、Linux、Android 等平台，近日想在 Raspberry Pi 树莓派板子上看 Sopcast 直播视频看球赛，经过搜索之后终于找到一种曲线解决的办法。 目前树莓派上的 Android 还基本处于不能用的阶段，Raspberry Pi 由于是 ARM 架构的嵌入式板子，也无法运行 x86 版本的 Sopcast Linux 客户端程序，因此只能另想办法。 这里就要 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/raspberry-pi-sopcast/" target="_blank">https://zohead.com/archives/raspberry-pi-sopcast/</a></p>
<p>Sopcast 是一种国外比较受欢迎的 P2P 流媒体直播软件，可以运行在 Windows、Linux、Android 等平台，近日想在 Raspberry Pi 树莓派板子上看 Sopcast 直播视频看球赛，经过搜索之后终于找到一种曲线解决的办法。</p>
<p>目前树莓派上的 Android 还基本处于不能用的阶段，Raspberry Pi 由于是 ARM 架构的嵌入式板子，也无法运行 x86 版本的 Sopcast Linux 客户端程序，因此只能另想办法。</p>
<p>这里就要用到 QEMU 这个著名的虚拟机的 user mode 用户模式了，而通常使用的虚拟机都是 system mode 系统模式。通过使用 QEMU 的用户模式，可以在当前的系统环境下直接模拟运行其它架构下的程序，因此想到在 Raspberry Pi 当前的 armhf 环境下使用 qemu-i386 在用户模式下运行 x86 架构下的 Sopcast Linux 客户端程序。</p>
<p>有关 QEMU 用户模式的介绍请参考这里：</p>
<p><a href="http://wiki.debian.org/QemuUserEmulation" target="_blank">http://wiki.debian.org/QemuUserEmulation</a></p>
<p>你如果有兴趣的话可以自己下载 QEMU 的源代码并在 Raspberry Pi 下编译，这里为了省事我就直接用网上已经编译好的了，可以从我共享的微云网盘里下载：</p>
<p><a href="http://share.weiyun.com/cfeea0d9b415d625309d1bb420a4150b" target="_blank">http://share.weiyun.com/cfeea0d9b415d625309d1bb420a4150b</a></p>
<p>解压拷贝到 Raspberry Pi 系统中，假设为 <strong>/home/sopcast</strong> 目录中，其中有 sp-sc-auth 这个 x86 系统下的 Sopcast Linux 客户端程序，然后在 /usr/bin 目录下产生一个名为 sp-sc-auth 的脚本文件，内容如下（路径请自行修改）：</p>
<pre class="brush: bash; title: ; notranslate">
#!/bin/sh
cd /home/sopcast
exec ./qemu-i386 lib/ld-linux.so.2 --library-path lib ./sp-sc-auth $@
</pre>
<p>此脚本中使用 exec 的目的是方便后面的 Xsopcast XBMC 插件在停止播放节目时可以正常结束掉 sp-sc-auth 进程（保持进程 PID 不变这样 XBMC 系统可以跟踪）。</p>
<p>然后在 Raspberry Pi 系统中运行 sp-sc-auth 命令测试是否可以正常连接 Sopcast 服务器并打开节目，这里以 CCTV-13 频道地址为例：</p>
<p><strong>sp-sc-auth sop://124.232.150.188:3912/9767 9000 9001</strong></p>
<p>稍微片刻，如果连接正常的话就会不断产生数据输出。</p>
<p>下面就是使用的问题了，你如果想在 Raspberry Pi 的 X 界面下使用的话，可以安装 Linux 下的 Sopcast Player 软件来播放，这是一个 X 环境下的 Sopcast 的前端 GUI 界面：</p>
<p><a href="http://code.google.com/p/sopcast-player/" target="_blank">http://code.google.com/p/sopcast-player/</a></p>
<p>如果你是和我一样用的 XBian 之类的 XBMC 多媒体系统，那可以直接安装 XSopcast 这一 XBMC 插件，让这个插件自动来运行 sp-sc-auth 客户端程序，有关此插件的介绍请参考这里：</p>
<p><a href="http://forum.xbmc.org/showthread.php?tid=129996" target="_blank">http://forum.xbmc.org/showthread.php?tid=129996</a></p>
<p>安装好此插件之后，首先安装上面的步骤将 <strong>sp-sc-auth</strong> 脚本放到 /usr/bin 目录下，然后再进入 XBMC 系统的 视频 - 扩展插件 - XSopcast，就可以看到 SopCast 节目列表了，点击一个节目就可以观看了。如果没有做 sp-sc-auth 脚本操作，第一次启动 XSopCast 插件的时候，插件会自动从网络下载 sp-sc-auth 程序，但下载的 Linux 客户端程序是 x86 版本不能运行的。</p>
<p>细心的朋友如果在播放的时候在 Raspberry Pi Linux 后台运行 ps ax 命令就可以看到 qemu-i386 启动的 sp-sc-auth 进程了，停止播放直播视频时此进程就会自动被结束掉。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/raspberry-pi-sopcast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PPTV XBMC视频插件更新-v1.2.0</title>
		<link>https://zohead.com/archives/pptv-xbmc-plugin-v1-2-0/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-plugin-v1-2-0/#comments</comments>
		<pubDate>Sun, 03 Nov 2013 16:35:54 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[PPTV]]></category>
		<category><![CDATA[xbmc-addons-chinese]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[点播]]></category>
		<category><![CDATA[视频]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=606</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/pptv-xbmc-plugin-v1-2-0/ 6月份更新 PPTV 的 XBMC 视频插件到 1.1.9 版本之后一直没有再更新，最近发现 PPTV 网站已经有了非常大的修改，造成 PPTV 的 XBMC 视频插件无法正常工作，包括获取视频类别列表、视频列表、视频播放在内的众多功能都运行错误。因此，这两天花了点时间更新了 PPTV 插件，现仍然支持 PPTV 上的点播和直播视频。 1.2.0 版本主要更新内容如下： 针对 PPTV 网站的主要改动解决插件无法正常工作的问题； 解决无法获取视频类别列表的 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/pptv-xbmc-plugin-v1-2-0/" target="_blank">https://zohead.com/archives/pptv-xbmc-plugin-v1-2-0/</a></p>
<p>6月份更新 PPTV 的 XBMC 视频插件到 1.1.9 版本之后一直没有再更新，最近发现 PPTV 网站已经有了非常大的修改，造成 PPTV 的 XBMC 视频插件无法正常工作，包括获取视频类别列表、视频列表、视频播放在内的众多功能都运行错误。因此，这两天花了点时间更新了 PPTV 插件，现仍然支持 PPTV 上的点播和直播视频。</p>
<p>1.2.0 版本主要更新内容如下：</p>
<ul>
<li>针对 PPTV 网站的主要改动解决插件无法正常工作的问题；</li>
<li>解决无法获取视频类别列表的问题；</li>
<li>解决无法获取视频列表的问题；</li>
<li>解决无法获取连续剧等剧集列表的问题；</li>
<li>解决无法正确获取 Flash 和 iPad m3u8 视频地址的问题；</li>
<li>视频类别列表中增加所有直播节目列表；</li>
<li>按照不同区域列表获取所有直播电视台节目列表；</li>
<li>使用 PPTV 新 API 获取体育直播、游戏直播、财经直播节目单；</li>
<li>正确获取体育直播、游戏直播、财经直播等特殊节目的视频地址。</li>
</ul>
<p>由于 PPTV 的直播电视台是按区域划分的，因此获取列表时需要重复多次请求，可能等待时间会稍微有点长，由于暂时没有直接获取整个列表的方法，就只能先这么办了。此插件使用时如果有任何问题，请提出指正。</p>
<p>与之前的版本类似，PPTV XBMC 视频插件默认使用 m3u8 格式播放直播和点播视频，这样视频显示出来只有一个小节，没有切换时的缓冲问题；如果您使用的 XBMC 系统播放 m3u8 视频存在问题请在选项中关闭 “使用iPad m3u8流媒体视频” 选项。</p>
<p>安装 PPTV XBMC 视频插件之前需先安装 xbmc-addons-chinese 中文扩展库支持：</p>
<p><a href="http://code.google.com/p/xbmc-addons-chinese/downloads/list" target="_blank">http://code.google.com/p/xbmc-addons-chinese/downloads/list</a></p>
<p>通过 XBMC 中文插件库安装的朋友可以直接在线更新升级到 1.2.0 版本，也可以通过下载下面的安装包进行安装：</p>
<p><a href="http://miseal.googlecode.com/files/plugin.video.pptv-v1.2.0.zip" target="_blank">http://miseal.googlecode.com/files/plugin.video.pptv-v1.2.0.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-plugin-v1-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PPTV XBMC视频插件更新-v1.1.9</title>
		<link>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-9/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-9/#comments</comments>
		<pubDate>Thu, 13 Jun 2013 15:48:06 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[PPTV]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[视频]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=434</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/pptv-xbmc-plugin-v1-1-9/ 上次更新了 PPTV XBMC 视频插件 1.1.8 版本之后，最近在 原动力社区 上看到有网友反映直播视频有问题（报告播放失败）。经过简单调试之后，发现 PPTV 的 m3u8 直播视频地址在原来的基于上增加了视频类型的后缀，修改代码测试通过后，已解决直播视频播放的问题。 另外还是需要继续说明的是：PPTV XBMC 视频插件默认使用 m3u8 格式播放直播和点播视频，这样视频显示出来只有一个小节，没有切换时的缓冲问题；如果 XBMC 系统播放 m3u8 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/pptv-xbmc-plugin-v1-1-9/" target="_blank">https://zohead.com/archives/pptv-xbmc-plugin-v1-1-9/</a></p>
<p>上次更新了 PPTV XBMC 视频插件 1.1.8 版本之后，最近在 <a href="http://bbs.htpc1.com/thread-259452-1-1.html" target="_blank">原动力社区</a> 上看到有网友反映直播视频有问题（报告播放失败）。经过简单调试之后，发现 PPTV 的 m3u8 直播视频地址在原来的基于上增加了视频类型的后缀，修改代码测试通过后，已解决直播视频播放的问题。</p>
<p>另外还是需要继续说明的是：PPTV XBMC 视频插件默认使用 m3u8 格式播放直播和点播视频，这样视频显示出来只有一个小节，没有切换时的缓冲问题；如果 XBMC 系统播放 m3u8 视频存在问题请在选项中关闭 “使用iPad m3u8流媒体视频” 选项。</p>
<p>通过 XBMC 中文插件库安装的朋友可以直接在线更新升级到 1.1.9 版本，也可以通过下载下面的安装包进行安装：</p>
<p><a href="http://miseal.googlecode.com/files/plugin.video.pptv-v1.1.9.zip" target="_blank">http://miseal.googlecode.com/files/plugin.video.pptv-v1.1.9.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PPTV XBMC视频插件更新-v1.1.8</title>
		<link>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-8/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-8/#comments</comments>
		<pubDate>Thu, 09 May 2013 12:56:08 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[m3u8]]></category>
		<category><![CDATA[PPTV]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[视频]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=422</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/pptv-xbmc-plugin-v1-1-8/ 去年写了一个 XBMC 媒体中心系统上的 PPTV 视频插件（参考 [这里]），自从去年快 11 月份更新之后就再没有管过。今天无意到 htpc XBMC 论坛（参考 [这里]）逛了下，发现有不少网友跟帖反映插件已经无法正常播放视频，故考虑可能的话更新下 PPTV 视频插件。 比较意外的是我发现 XBMC 中文插件库中我所提交的 PPTV 视频插件的最后版本号为 1.1.3 版本，但有网友 cmeng 已经做了一些改动，将插件的版本更新为了 1.1.7 版 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/pptv-xbmc-plugin-v1-1-8/" target="_blank">https://zohead.com/archives/pptv-xbmc-plugin-v1-1-8/</a></p>
<p>去年写了一个 XBMC 媒体中心系统上的 PPTV 视频插件（参考 [<a href="https://zohead.com/archives/pptv-xbmc-plugin/" target="_blank">这里</a>]），自从去年快 11 月份更新之后就再没有管过。今天无意到 htpc XBMC 论坛（参考 [<a href="http://bbs.htpc1.com/thread-259452-1-1.html" target="_blank">这里</a>]）逛了下，发现有不少网友跟帖反映插件已经无法正常播放视频，故考虑可能的话更新下 PPTV 视频插件。</p>
<p>比较意外的是我发现 XBMC 中文插件库中我所提交的 PPTV 视频插件的最后版本号为 1.1.3 版本，但有网友 cmeng 已经做了一些改动，将插件的版本更新为了 1.1.7 版本，而且增加了 Windows 上才有的 PPAP 加速进程选项（更新的插件描述中也有错误，写成了 PPSAP）。由于我写这个免费 XBMC 视频插件是目的就是为了实现平台无关的 PPTV 视频播放，因此打算在新版本中去掉 PPAP 的选项，并且统一解决目前 1.1.3 版本中的问题。</p>
<p>由于 PPTV 网站内容更改，原先通过硕鼠得到视频地址的方法无法起作用，由于 PPTV 官方没有提供可用的 API 给我们调用，而且硕鼠现在提交 PPTV 视频播放页面地址后无法直接得到视频地址，必须通过硕鼠的客户端下载视频。在此情况下，经过研究硕鼠的获取视频和下载流程，终于通过多步的请求操作得到真实 PPTV 视频地址的方法。有兴趣的网友请参考代码库中的得到视频地址的 Python 代码。</p>
<p>由于 1.1.4 ~ 1.1.7 版本并不是我自己更新（网友 cmeng 所更新），因此新的版本考虑已经安装的网友自动更新的需要，只能将版本号直接改成 1.1.8 了。另外 PPTV 视频插件仍然会尽量保证平台无关性，以使本插件可在绝大多数 XBMC 系统中运行。</p>
<p>1.1.8 版本的主要更新记录为：</p>
<ul>
<li>移除 cmeng 提交的 1.1.4 ~ 1.1.7 版本中的平台相关的 PPSAP 加速选项；</li>
<li>解决搜索视频无法正常工作的问题；</li>
<li>解决搜索视频没有包含完整搜索结果的问题；</li>
<li>解决无法得到 PPTV 视频地址的问题；</li>
<li>解决无法得到 iPad m3u8 流媒体视频地址的问题；</li>
<li>为 iPad m3u8 流媒体视频单独增加设置开关，这样 iPad 视频也可以选择清晰度；</li>
<li>iPad m3u8 流媒体视频需要 XBMC 播放器能支持 m3u8 播放，选项默认开启，如果无法正常播放，可以在设置界面中关闭 iPad m3u8 流媒体视频选项；</li>
<li>在插件信息中增加源代码地址、论坛帖子地址、本人邮箱、本人博客等信息，方便出现问题时联系。</li>
</ul>
<p>有关单独增加的 iPad m3u8 流媒体视频选项，可以看下面的截图：</p>
<p><a href="http://zohead.com/wp-content/uploads/pptv-xbmc-m3u8-option.jpg"><img class="alignnone" title="PPTV XBMC插件 - iPad m3u8 视频选项" src="http://zohead.com/wp-content/uploads/pptv-xbmc-m3u8-option.jpg" alt="PPTV XBMC插件 - iPad m3u8 视频选项" width="640" height="360" /></a></p>
<p>不同于之前的版本，1.1.8 中可以单独设置是否使用 iPad m3u8 流媒体视频，默认为开启。如果 XBMC 播放器能够正常播放的话，也建议默认开启。</p>
<p>下面就是开启 iPad m3u8 流媒体视频的好处：</p>
<p><a href="http://zohead.com/wp-content/uploads/pptv-xbmc-m3u8-video.jpg"><img class="alignnone" title="PPTV XBMC插件 - iPad m3u8 视频" src="http://zohead.com/wp-content/uploads/pptv-xbmc-m3u8-video.jpg" alt="PPTV XBMC插件 - iPad m3u8 视频" width="640" height="360" /></a></p>
<p>从上面视频播放画面的截图可以看出，iPad m3u8 流媒体视频就是一个完整的视频（从上图中可以看出视频只有 1 节，而且右下角显示的时长为 1 个小时 41 分钟），这样播放时就不会出现切换视频时的缓冲情况，相当于真正的无缝播放整个影片。</p>
<p>而如果没有开启 iPad m3u8 流媒体视频，则整个影片很可能会按 3 - 10 分钟不等的小片段进行划分，这样播放时就需要隔几分钟缓存一次，有点影响观看体验。据我了解，目前 XBMC 中文插件库中的优酷等视频插件都存在这个问题，因此如果你的 XBMC 播放器能正常播放 iPad m3u8 流媒体视频的话，强烈建议不要关闭它。</p>
<p>最后是 1.1.8 版本 PPTV XBMC 视频插件的下载地址：</p>
<p><a href="http://miseal.googlecode.com/files/plugin.video.pptv-v1.1.8.zip" target="_blank">http://miseal.googlecode.com/files/plugin.video.pptv-v1.1.8.zip</a></p>
<p>如果您已经通过 XBMC 中文插件库安装了 PPTV 视频插件，可以直接通过 XBMC 系统进行在线更新。</p>
<p>对源代码有兴趣进行修改的网友请移步 GitHub 上的版本库：</p>
<p><a href="https://github.com/zohead/pptv4xbmc" target="_blank">https://github.com/zohead/pptv4xbmc</a></p>
<p>插件使用中有任何问题和建议，欢迎与我联系，玩的开心 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PPTV XBMC视频插件更新-v1.1.2</title>
		<link>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-2/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-2/#comments</comments>
		<pubDate>Tue, 30 Oct 2012 13:43:21 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[工具]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[m3u8]]></category>
		<category><![CDATA[PPTV]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[视频]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=332</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/pptv-xbmc-plugin-v1-1-2/ 之前利用闲余时间写了个 PPTV 的 XBMC 多媒体中心系统的视频插件 v1.0 版本（请参考 [这里]），在 htpc XBMC 论坛上公布之外，经过几百个论坛网友下载使用之后，也发现一些问题，经过修正和增强之后更新了 1.1.2 版本的新 PPTV 视频插件。 更新内容如下： 由于 Python 2.5 以下版本不支持三目运算符，为兼容 Xbox XBMC 等老的 Python 环境，将 if else 三目运算符改换为普通的方式； 解决 PPTV  [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/pptv-xbmc-plugin-v1-1-2/" target="_blank">https://zohead.com/archives/pptv-xbmc-plugin-v1-1-2/</a></p>
<p>之前利用闲余时间写了个 PPTV 的 XBMC 多媒体中心系统的视频插件 v1.0 版本（请参考 [<a href="https://zohead.com/archives/pptv-xbmc-plugin/" target="_blank">这里</a>]），在 htpc XBMC 论坛上公布之外，经过几百个论坛网友下载使用之后，也发现一些问题，经过修正和增强之后更新了 1.1.2 版本的新 PPTV 视频插件。</p>
<p>更新内容如下：</p>
<ul>
<li>由于 Python 2.5 以下版本不支持三目运算符，为兼容 Xbox XBMC 等老的 Python 环境，将 if else 三目运算符改换为普通的方式；</li>
<li>解决 PPTV 直播电视节目单获取错误的问题；</li>
<li>如果某个 PPTV 直播节目没有节目单，不能直接得到播放页面地址，则尝试通过搜索的方式得到播放页面地址；</li>
<li>引入 XBMC Chinese Keyboard 插件，为本插件增加根据关键字搜索 PPTV 视频的功能；</li>
<li>如果搜索到的视频不是由 PPTV 提供（例如：优酷、土豆之类），则在播放时给出提示；</li>
<li>播放 PPTV VIP 视频时提示用户无法播放 VIP 视频；</li>
<li>解决某些连续剧集节目（例如某些动漫剧场版全集）无法得到视频列表的问题。</li>
</ul>
<p>针对某些网友提出的选择播放到开始缓冲间有点延时的问题，由于需要从 PPTV 未公开的 API 中获取真实视频地址，暂时没有什么好的办法解决。另外 PPTV 直播视频仍然使用的是 m3u8 格式的 HTTP live stream，需要 XBMC 系统能正常播放这种流媒体视频。</p>
<p>最后放出 1.1.2 版本 PPTV XBMC 视频插件下载地址：</p>
<p><a href="http://github.com/downloads/zohead/pptv4xbmc/plugin.video.pptv-v1.1.2.zip" target="_blank">http://github.com/downloads/zohead/pptv4xbmc/plugin.video.pptv-v1.1.2.zip</a></p>
<p>使用此插件过程中有任何问题欢迎指正哦 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-plugin-v1-1-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>发布PPTV XBMC视频插件v1.0</title>
		<link>https://zohead.com/archives/pptv-xbmc-plugin/</link>
		<comments>https://zohead.com/archives/pptv-xbmc-plugin/#comments</comments>
		<pubDate>Tue, 23 Oct 2012 15:05:36 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[树莓派]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Beautiful Soup]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[m3u]]></category>
		<category><![CDATA[m3u8]]></category>
		<category><![CDATA[Parsedom]]></category>
		<category><![CDATA[PPTV]]></category>
		<category><![CDATA[扩展]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[视频]]></category>
		<category><![CDATA[跨平台]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=325</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/pptv-xbmc-plugin/ 最近认识一位朋友想要在 XBMC 多媒体中心软件（http://www.xbmc.org/）上观看 PPTV（http://www.pptv.com/） 视频网站上的视频，看到有 Windows 上的 XBMC PPTV 插件，但都没法在我的 Raspberry Pi 微型电脑板上（板子虽小也支持播放 1080p 高清视频哦）运行，于是想着自己写个能够跨平台的 PPTV 视频的 XBMC 插件，顺便也拿这个练练 Python，HOHO。 既然要跨平台，那首先考虑必须全部 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/pptv-xbmc-plugin/" target="_blank">https://zohead.com/archives/pptv-xbmc-plugin/</a></p>
<p>最近认识一位朋友想要在 XBMC 多媒体中心软件（<a href="http://www.xbmc.org/" target="_blank">http://www.xbmc.org/</a>）上观看 PPTV（<a href="http://www.pptv.com/" target="_blank">http://www.pptv.com/</a>） 视频网站上的视频，看到有 Windows 上的 XBMC PPTV 插件，但都没法在我的 Raspberry Pi 微型电脑板上（板子虽小也支持播放 1080p 高清视频哦）运行，于是想着自己写个能够跨平台的 PPTV 视频的 XBMC 插件，顺便也拿这个练练 Python，HOHO。</p>
<p>既然要跨平台，那首先考虑必须全部用 XBMC 自带的 Python 脚本实现，不能调用 Windows 上 DLL 之类的鬼玩意，而且 Raspberry Pi 的 armhf 系统上也几乎不可能有 PPTV 的动态库可以用的。</p>
<p><strong>基本原理：</strong></p>
<p>通过 Python 插件发送 HTTP 请求时伪装成 iPad 客户端从 PPTV 网站上获取频道列表、视频列表、查询视频，并得到视频的实际 m3u 和 m3u8 地址。后来发现此方法得到的 m3u 和 m3u8 视频地址在 Raspberry Pi 系统中播放有问题，而且不太好直接解决。没办法，咱拿起 Wireshark 抓包神器，终于发现了 PPTV 未公开的 API 方法（其实 PPTV 一直从未公开，哈哈）得到网页 Flash 方式播放的视频地址。不过其中有个视频 key 的问题，没什么太好办法在 Python 中直接得到。最终想到通过 [<a href="http://www.flvcd.com/" target="_blank">硕鼠</a>] 网站解决，硕鼠网站得到的 PPTV 视频地址明显有问题，但有个可用之处就是他能通过 Flash 得到 PPTV 的视频 key，那就省点事从硕鼠得到视频 key，从 PPTV 未公开 API 构造视频链接和分段信息（用过 Python 自带的 json 库），最终得到真实的视频地址。</p>
<p>有关 XBMC 的插件编写详细请参考这些链接：</p>
<p><a href="http://wiki.xbmc.org/index.php?title=HOW-TO:Write_plugins_for_XBMC" target="_blank">http://wiki.xbmc.org/index.php?title=HOW-TO:Write_plugins_for_XBMC</a><br />
<a href="http://wiki.xbmc.org/index.php?title=Python_development" target="_blank">http://wiki.xbmc.org/index.php?title=Python_development</a><br />
<a href="http://wiki.xbmc.org/index.php?title=Add-on_development" target="_blank">http://wiki.xbmc.org/index.php?title=Add-on_development</a></p>
<p>其中遇到的一个问题就是 HTML 的解析问题，刚开始使用的是比较成熟好用的一个 Python 插件：<a href="http://www.crummy.com/software/BeautifulSoup/" target="_blank">Beautiful Soup</a>。这个插件的最大优势就是对不标准的 HTML 的容错性做的非常好，而且各种查找 HTML DOM 结构的函数也很强大。那就按照 Beautiful Soup 的要求解析 PPTV 的 HTML DOM，结果顺利取得，不久就发现一个问题，在 Raspberry Pi 这种比较弱的嵌入式板子上，下载 HTML 倒挺快，通过 Beautiful Soup 解析查找 HTML DOM 竟然要用去 15 秒左右的时间，这完全无法忍受，可以寻找替代品。</p>
<p>最终在 XBMC 的论坛里发现了比较好的 HTML parser 替代品：<a href="http://wiki.xbmc.org/index.php?title=Add-on:Parsedom_for_xbmc_plugins" target="_blank">Parsedom XBMC Add-on</a>。这是直接包含在 XBMC 库中的一个简单的 HTML DOM 解析扩展，import 之，下载 HTML 然后按照 class、按照 id 解析 HTML 的速度都在 1-2 秒之间，非常满意。后来使用中又发现 Parsedom 中存在的一些问题，查找原因并修正之后无伤大雅，想到干脆去掉 Parsedom 中一些我用不到的代码，直接集成到我的 py 文件中使用 ^_^。</p>
<p>略加奋战，终于在 XBMC 界面上能正常显示了，能显示频道列表了，也能进入频道显示视频列表，结果播放时发现悲剧了，iPad 的 m3u 被 XBMC 自己给分段解析然后尝试播放了，造成文件路径不对无法播放。后来使用手工修改路径的方式，尽管能播放，但造成的“效果”就是每 5-6 秒钟就需要切换一下视频，这对于 Raspberry Pi 这种暂时无法调用外部播放器的系统来说简直没法用。</p>
<p><strong>PPTV 视频 XBMC 插件 1.0 版本功能：</strong></p>
<ol>
<li>支持 www.pptv.com 上基本所有直播和点播视频；</li>
<li>支持在插件设置中选择视频质量（与实际 PPTV 视频片源对应），暂时支持：标清、高清、超清、蓝光、iPad 超清；</li>
<li>支持按影片类型、时间、更新时间、热度等条件选择过滤视频，并且所有过滤条件全部实时从 PPTV 网站获取，插件中不保存分类；</li>
<li>视频列表支持翻页处理（具体每个连续剧的集数列表没有翻页，默认全部列出来，主要感觉 1-40 集这种列表还弄分页没什么必要）；</li>
<li>不依赖任何 PPTV 的 Windows 程序和库，理论上可以在任何 XBMC 系统上使用</li>
</ol>
<p>由于 XBMC 不能原生支持中文输入等原因，暂时未支持视频搜索功能，后续将会改进。</p>
<p><strong>备注：</strong></p>
<p>本插件默认的视频质量为高清格式，需要超清或蓝光格式的在插件设置界面中进行修改即可。iPad 超清视频和直播视频分别是特殊的 m3u 和 m3u8 格式（指向 mp4 视频），需要XBMC 系统能正常播放 PPTV m3u 和 m3u8 视频（Windows 下的 XBMC 系统应该可以配置使用外部播放器来支持，不过偶懒得安装木有测试过）。</p>
<p><strong>声明：</strong></p>
<p>此插件只是从 PPTV 网站获取视频内容，所有视频版权均与此网站有关，本插件一概不负责。另外由于 PPTV 网站将来会有变化，我不保证能马上修复并解决可能出现的问题，因为说不定 PPTV 就完全把未公开的 API 给禁用了。</p>
<p>插件介绍的截图：</p>
<p><a href="http://zohead.com/wp-content/uploads/pptv-xbmc-intro.jpg" target="_blank"><img class="alignnone" title="PPTV视频XBMC插件-介绍" src="http://zohead.com/wp-content/uploads/pptv-xbmc-intro.jpg" alt="PPTV视频XBMC插件-介绍" width="683" height="384" /></a></p>
<p>插件设置界面：</p>
<p><a href="http://zohead.com/wp-content/uploads/pptv-xbmc-settings.jpg" target="_blank"><img class="alignnone" title="PPTV视频XBMC插件-设置" src="http://zohead.com/wp-content/uploads/pptv-xbmc-settings.jpg" alt="PPTV视频XBMC插件-设置" width="683" height="384" /></a></p>
<p>视频列表界面：</p>
<p><a href="http://zohead.com/wp-content/uploads/pptv-xbmc-video-list.jpg" target="_blank"><img class="alignnone" title="PPTV视频XBMC插件-视频列表" src="http://zohead.com/wp-content/uploads/pptv-xbmc-video-list.jpg" alt="PPTV视频XBMC插件-视频列表" width="683" height="384" /></a></p>
<p>具体视频播放界面（放的正是 《麦兜》 哈 ^_^）：</p>
<p><a href="http://zohead.com/wp-content/uploads/pptv-xbmc-video-play.jpg" target="_blank"><img class="alignnone" title="PPTV视频XBMC插件-播放界面" src="http://zohead.com/wp-content/uploads/pptv-xbmc-video-play.jpg" alt="PPTV视频XBMC插件-播放界面" width="683" height="384" /></a></p>
<p>本 XBMC 插件的 github 源代码库地址：</p>
<p><a href="https://github.com/zohead/pptv4xbmc" target="_blank">https://github.com/zohead/pptv4xbmc</a></p>
<p>下载 PPTV 视频 XBMC 插件：</p>
<p><a href="http://github.com/downloads/zohead/pptv4xbmc/plugin.video.pptv-v1.0.zip" target="_blank">http://github.com/downloads/zohead/pptv4xbmc/plugin.video.pptv-v1.0.zip</a></p>
<p>下载之后拷贝到 XBMC 系统，然后到 XBMC 系统设置中选择压缩包安装即可。我正在申请将此款插件加入 XBMC 的中文插件库，顺利的话安装此插件将会更加简单，并且在以后修改时可以直接在线更新。</p>
<p>各位在使用 PPTV 视频 XBMC 插件中如果发现任何问题，欢迎提出指正哦，另外有问题时最好能描述清楚，能附上看的是哪个视频或者哪个频道下面的话更好。 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/pptv-xbmc-plugin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>有关Raspberry Pi 32位framebuffer的问题</title>
		<link>https://zohead.com/archives/raspberry-pi-32bit-fb-color/</link>
		<comments>https://zohead.com/archives/raspberry-pi-32bit-fb-color/#comments</comments>
		<pubDate>Wed, 17 Oct 2012 14:55:03 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[技术]]></category>
		<category><![CDATA[树莓派]]></category>
		<category><![CDATA[16位]]></category>
		<category><![CDATA[32位]]></category>
		<category><![CDATA[fbpdf]]></category>
		<category><![CDATA[framebuffer]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[颜色]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=321</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/raspberry-pi-32bit-fb-color/ 之前写过一篇 Raspberry Pi（以下简称 RPI） 下使用 fbpdf 即 framebuffer 模式下的 PDF 阅读器的文章（详情请点击 [这里]），文中提到需要修改 config.txt 开启 RPI 的 32 位 framebuffer 支持，但需要注意的是 RPI 的 32 位 framebuffer 并不是真正的 32 位的，其实只有 20120615 种颜色，而且实际上还需要忽略 alpha 位，这在使用 fbpdf 软件看 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/raspberry-pi-32bit-fb-color/" target="_blank">https://zohead.com/archives/raspberry-pi-32bit-fb-color/</a></p>
<p>之前写过一篇 Raspberry Pi（以下简称 RPI） 下使用 fbpdf 即 framebuffer 模式下的 PDF 阅读器的文章（详情请点击 [<a href="https://zohead.com/archives/raspberry-pi-fbpdf/" target="_blank">这里</a>]），文中提到需要修改 config.txt 开启 RPI 的 32 位 framebuffer 支持，但需要注意的是 RPI 的 32 位 framebuffer 并不是真正的 32 位的，其实只有 20120615 种颜色，而且实际上还需要忽略 alpha 位，这在使用 fbpdf 软件看 PDF 时似乎没有太大的问题。</p>
<p>但今天用看图的软件看一张 32 位的桌面截图时，有点傻眼了，效果如下：</p>
<p><a href="http://zohead.com/wp-content/uploads/raspberry-pi-32bit-fb-color-error.jpg" target="_blank"><img class="alignnone" title="Raspberry Pi 32位framebuffer颜色错误" src="http://zohead.com/wp-content/uploads/raspberry-pi-32bit-fb-color-error.jpg" alt="Raspberry Pi 32位framebuffer颜色错误" width="492" height="276" /></a></p>
<p>大家也能看出来，其实这就是 Windows 7 默认的浅蓝色桌面壁纸图片，但实际的显示颜色完全不对了，而去掉 config.txt 中的 32 位 framebuffer 支持则没问题。</p>
<p>另外据 RPI 上 XBMC 媒体中心软件 Raspbmc 的开发人员介绍，32 位的 framebuffer 下 XBMC 软件也会存在问题，由此看来 RPI 默认将 framebuffer 的颜色深度设置为 16 位是有其道理的。</p>
<p>上面的 fbpdf 文章中的 fbpdf 程序已经更新为 16 位 framebuffer 的版本，如果对此有不同见解的欢迎提出指正哦。 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/raspberry-pi-32bit-fb-color/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>修改XBMC LiveStreams Python插件以支持中文</title>
		<link>https://zohead.com/archives/xbmc-livestreams-cn-patch/</link>
		<comments>https://zohead.com/archives/xbmc-livestreams-cn-patch/#comments</comments>
		<pubDate>Mon, 03 Sep 2012 18:49:07 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[工具]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[树莓派]]></category>
		<category><![CDATA[HTPC]]></category>
		<category><![CDATA[LiveStreams]]></category>
		<category><![CDATA[Openelec]]></category>
		<category><![CDATA[Raspbmc]]></category>
		<category><![CDATA[XBian]]></category>
		<category><![CDATA[XBMC]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[插件]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=299</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/xbmc-livestreams-cn-patch/ 最近在闲时捣鼓下 Raspberry Pi 微型电脑板上的开源 XBMC 应用准备看看 HTPC 媒体中心的效果，发现 Raspberry Pi 在安装了 XBian 系统之后可以比较好的实现 XBMC 的基本功能，虽然由于 Raspberry Pi 没有购买一些视频格式的软件解码授权而导致 WMV 或者 MMS 之类的格式无法播放，但对于常用的一些 H264 的高清视频已经足以应付，接上网线之后看高清在线视频点播和直播的效果都还可以。 有关 Rasp [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/xbmc-livestreams-cn-patch/" target="_blank">https://zohead.com/archives/xbmc-livestreams-cn-patch/</a></p>
<p>最近在闲时捣鼓下 Raspberry Pi 微型电脑板上的开源 XBMC 应用准备看看 HTPC 媒体中心的效果，发现 Raspberry Pi 在安装了 XBian 系统之后可以比较好的实现 XBMC 的基本功能，虽然由于 Raspberry Pi 没有购买一些视频格式的软件解码授权而导致 WMV 或者 MMS 之类的格式无法播放，但对于常用的一些 H264 的高清视频已经足以应付，接上网线之后看高清在线视频点播和直播的效果都还可以。</p>
<p>有关 Raspberry Pi 请参考 [<a href="https://zohead.com/archives/raspberry-pi-start/" target="_blank">之前</a>] 的文章，有关 XBian 之一专门为 Raspberry Pi 优化的 XBMC 系统可以访问其官网：<a href="http://xbian.org/" target="_blank">http://xbian.org/</a>。</p>
<p>注：Raspberry Pi 上除了 XBian 之外，还有 <a href="http://www.raspbmc.com/" target="_blank">Raspbmc</a>、<a href="http://openelec.tv/" target="_blank">Openelec</a> 等其它合适的 XBMC 系统可供选择的。而且这些都是基于标准 XBMC 程序修改的，标准插件之类的基本可以通用。</p>
<p>前两天找到一个不错的在线电视直播的 XBMC 插件：LiveStreams，此插件可以由用户自己修改 XML 配置文件增加在线直播的地址，根据实际硬件配置不同，可支持 MMS、RTSP、RTMP 等各种不同的流媒体协议。有关 LiveStreams 的介绍和配置请参考这些链接（特别第二个链接中有详细的截图介绍）：</p>
<p><a href="http://forum.xbmc.org/showthread.php?tid=97116" target="_blank">http://forum.xbmc.org/showthread.php?tid=97116</a><br />
<a href="http://www.xbmchub.com/blog/2012/04/26/adding-custom-xml-files-to-the-live-streams-addon/" target="_blank">http://www.xbmchub.com/blog/2012/04/26/adding-custom-xml-files-to-the-live-streams-addon/</a></p>
<p>最新版本的 LiveStreams 插件可以到这里下载：<a href="http://code.google.com/p/divingmules-repo/" target="_blank">http://code.google.com/p/divingmules-repo/</a>。</p>
<p>在实际使用过程中发现由于 LiveStreams 由于是老外写的，不由自主的就碰到对中文的支持问题，如果添加的 XML 配置文件中节目名称或者节目目录名称包含中文，XBMC 系统中LiveStreams 插件将不能正常工作，直接会出现脚本错误。</p>
<p>简单看了下 LiveStreams 插件的代码，是用 Python 写的，凭着一些简单的 Python 基础，然后集合 Python 的 logging 模块来调试，终于发现 LiveStreams 插件对中文支持不佳的原因，作者在使用 BeautifulSoup（参考 [<a href="http://www.crummy.com/software/BeautifulSoup/" target="_blank">这里</a>]） 这一个非常知名的 HTML/XML 等解析的库时未考虑非英文环境下的问题，简单做了下修改之后，中文的直播节目和目录名称都可以正常显示了。</p>
<p>顺便再简单说明一下 LiveStreams XML 配置文件嵌套节目目录的方式，这是一个实例 XML 节目配置文件：</p>
<pre class="brush: xml; title: channels.xml; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;
&lt;channels&gt;
	&lt;channel&gt;
		&lt;name&gt;Channel 1&lt;/name&gt;
		&lt;thumbnail&gt;http://xxx/chn1.png&lt;/thumbnail&gt;
		&lt;items&gt;
			&lt;item&gt;
				&lt;title&gt;TV1&lt;/title&gt;
				&lt;link&gt;mms://xxx.xxx.xxx.xxx/cctv1&lt;/link&gt;
				&lt;thumbnail&gt;http://xxx/cctv1.jpg&lt;/thumbnail&gt;
			&lt;/item&gt;
			&lt;item&gt;
				&lt;title&gt;TV2&lt;/title&gt;
				&lt;link&gt;mms://xxx.xxx.xxx.xxx/cctv2&lt;/link&gt;
				&lt;thumbnail&gt;http://xxx/cctv2.jpg&lt;/thumbnail&gt;
			&lt;/item&gt;
		&lt;/items&gt;
	&lt;/channel&gt;

	&lt;channel&gt;
		&lt;name&gt;Channel 2&lt;/name&gt;
		&lt;thumbnail&gt;http://xxx/chn2.png&lt;/thumbnail&gt;
		&lt;subchannels&gt;
			&lt;subchannel&gt;
				&lt;name&gt;Sub 1&lt;/name&gt;
				&lt;thumbnail&gt;http://xxx/sub1.png&lt;/thumbnail&gt;
				&lt;subitems&gt;
					&lt;subitem&gt;
						&lt;title&gt;Sub TV1&lt;/title&gt;
						&lt;link&gt;mms://xxx.xxx.xxx.xxx/subtv1&lt;/link&gt;
						&lt;thumbnail&gt;http://xxx/subtv1.jpg&lt;/thumbnail&gt;
					&lt;/subitem&gt;
					&lt;subitem&gt;
						&lt;title&gt;Sub TV2&lt;/title&gt;
						&lt;link&gt;mms://xxx.xxx.xxx.xxx/subtv2&lt;/link&gt;
						&lt;thumbnail&gt;http://xxx/subtv2.jpg&lt;/thumbnail&gt;
					&lt;/subitem&gt;
				&lt;/subitems&gt;
			&lt;/subchannel&gt;
		&lt;/subchannels&gt;
	&lt;/channel&gt;
&lt;/channels&gt;
</pre>
<p>第一个节目目录 Channel 1 下面没有子目录，只有 TV1 和 TV2 这两个节目，因此 XML 层次是 <strong>channel/items/item</strong>。第二个节目目录 Channel 2 下有名为 Sub1 的子目录，Sub1 下又有 Sub TV1 和 Sub TV2 两个节目，这种的 XML 层次则是：<strong>channel/subchannels/subchannel/subitems/subitem</strong>。</p>
<p>需要注意的是 LiveStreams 的 XML 配置文件必须以 UTF-8 编码格式保存，否则非英文字符将无法正常显示。另外由于 XML 本身格式的原因，XML 内容中的这些字符需要转换（全部为纯英文字符，包括结束的分号）：</p>
<p><strong><span style="color: #ff0000;">&amp;</span></strong> 转换为 <strong><span style="color: #ff0000;">&amp;amp;</span></strong><br />
<strong><span style="color: #ff0000;">&lt;</span></strong> 转换为 <strong><span style="color: #ff0000;">&amp;lt;</span></strong><br />
<strong><span style="color: #ff0000;">&gt;</span></strong> 转换为 <strong><span style="color: #ff0000;">&amp;gt;</span></strong><br />
<strong><span style="color: #ff0000;">'</span></strong> 转换为 <strong><span style="color: #ff0000;">&amp;apos;</span></strong><br />
<strong><span style="color: #ff0000;">"</span></strong> 转换为 <strong><span style="color: #ff0000;">&amp;quot;</span></strong></p>
<p>最后附上我修改过的最新 LiveStreams 1.0.6 版本 XBMC 插件的下载地址：</p>
<p><a href="http://miseal.googlecode.com/files/plugin.video.live.streams-1.0.6.zip" target="_blank">http://miseal.googlecode.com/files/plugin.video.live.streams-1.0.6.zip</a></p>
<p>由于这插件只是随便修改的，有任何问题欢迎指正哦。 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/xbmc-livestreams-cn-patch/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
