<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Bluish Coder: tinyvid</title>
 <link href="http://bluishcoder.co.nz/tag/tinyvid/atom.xml" rel="self"/>
 <link href="http://bluishcoder.co.nz/"/>
 <updated>2020-07-10T16:25:05+12:00</updated>
 <id>http://bluishcoder.co.nz/</id>
 <author>
   <name>Bluishcoder</name>
   <email>admin@bluishcoder.co.nz</email>
 </author>

 
 <entry>
   <title>A Short Introduction to Bitcoin - A Peer to Peer Cryptocurrency</title>
   <link href="http://bluishcoder.co.nz/2010/10/10/a-short-introduction-to-bitcoin.html"/>
   <updated>2010-10-10T22:00:00+13:00</updated>
   <id>http://bluishcoder.co.nz/2010/10/10/a-short-introduction-to-bitcoin</id>
   <content type="html">&lt;p&gt;I recently added the ability to donate to &lt;a href=&quot;http://tinyvid.tv&quot;&gt;TinyVid&lt;/a&gt; using &lt;a href=&quot;http://www.bitcoin.org&quot;&gt;bitcoins&lt;/a&gt;. The &lt;a href=&quot;http://www.bitcoin.org&quot;&gt;bitcoin website&lt;/a&gt; describes bitcoin as &#39;a peer-to-peer network based digital currency&#39;.&lt;/p&gt;

&lt;p&gt;Bitcoins are a &#39;virtual&#39; currency. There are no physical coins involved. It&#39;s very similar to virtual currency in online games where people outside the game trade it for physical money.&lt;/p&gt;

&lt;p&gt;The endpoints of a bitcoin transaction are known as an &#39;address&#39;. When you want to send bitcoins to another person you ask them for an address and instruct your bitcoin client to send a number of coins there. When you want to receive bitcoins you generate an address using the client and pass the address on to the other party.&lt;/p&gt;

&lt;p&gt;The process by which transactions are handled via the peer-to-peer network are described at the &lt;a href=&quot;http://www.bitcoin.org&quot;&gt;bitcoin website&lt;/a&gt;. There is also a good high level overview in this &lt;a href=&quot;https://web.archive.org/web/20101015232306/http://www.bitcoinblogger.com/2010/09/bitcoin-electronic-currency-future-of.html&quot;&gt;Bitcoin Electronic Currency&lt;/a&gt; article.&lt;/p&gt;

&lt;p&gt;To get started with bitcoins, download the client or build from the source, available at the &lt;a href=&quot;http://www.bitcoin.org/&quot;&gt;bitcoin website&lt;/a&gt;. Once running it will connect to the bitcoin network and proceed to download the existing blocks. This can take a few minutes as there&#39;s about 84,000 of them. Once that&#39;s done you can send and receive bitcoins.&lt;/p&gt;

&lt;p&gt;You can receive some free bitcoins for testing from the &lt;a href=&quot;https://web.archive.org/web/20100911135321/http://freebitcoins.appspot.com/&quot;&gt;bitcoin faucet&lt;/a&gt;. You&#39;ll need to create an address to receive the coins. From the bitcoin client choose &#39;New&#39; to create an new receiving address. You can optionally give it a label so you can refer to it by name. Copy that new address to the clipboard and paste it into the facet website. When you click &#39;Get Some&#39; you will receive a small number of coins.&lt;/p&gt;

&lt;p&gt;The received coins will appear in the bitcoin client GUI almost immediately. The initial state will display as &#39;unconfirmed/0&#39;. As more bitcoin nodes pick up the transaction the number will increase until eventually it says &#39;confirmed&#39;. At this point you can use the coins with confidence. You can actually transfer and spend the coins while they are &#39;unconfirmed&#39; but all transactions using them will also stay unconfirmed until the original one is confirmed.&lt;/p&gt;

&lt;p&gt;If you want to send those coins elsewhere all you need to do is click &#39;Send Coins&#39; in the client. Paste in a receiving address and an amount and click &#39;Send&#39;.&lt;/p&gt;

&lt;p&gt;How do you get coins in the first place? You need to find a merchant that&#39;s willing to trade you coins for something. Here are some merchants that will trade coins for cash or credit card payments:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;bitcoinexchange.com (service no longer active). Buy and sell bitcoins using Euros via SMS/Phonepayment or bank transfer.&lt;/li&gt;
&lt;li&gt;bitcoin4cash.com (service no longer active). This service offers bitcoins for cash sent through the mail. They also offer a service to pay for bitcoins via bank wire (iservice no longer active).&lt;/li&gt;
&lt;li&gt;bitcoin2cash.com (service no longer active). Another service offering bitcoins for cash sent through the mail.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Online markets exist for trading bitcoins to and from various currencies. The most popular of these is probably mtgox.com (service no longer active). You deposit bitcoins or USD and can then buy and sell coins. You can withdraw USD or bitcoins. Currently bitcoins are trading at about 11 bitcoins per USD.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://bitcoinwatch.com/&quot;&gt;Bitcoin Watch&lt;/a&gt; has a list of the markets and the current exchange rates. It also has information on the state of the bitcoin network.&lt;/p&gt;

&lt;p&gt;Bitcoins can be used in a number of places. Some I know about are listed below and the bitcoin trade (iservice no longer active) page lists more:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cashcow Online Roulette (service no longer active). A roulette game written in Flash that uses bitcoins. Sign on with any credentials, deposit some coins, and once they&#39;re confirmed you can play roulette with them. This is a good example of how the sending and receiving of bitcoins can work.&lt;/li&gt;
&lt;li&gt;Bidding Pond (service no longer active). An online auction site that uses bitcoins.&lt;/li&gt;
&lt;li&gt;Minesweeper (service no longer active). A facebook app that uses bitcoins.&lt;/li&gt;
&lt;li&gt;Bitcoin Sportsbook (service no longer active). Bet on sports events.&lt;/li&gt;
&lt;li&gt;Qugelmatic Bookstore (service no longer active). Buy books through the 13th largest bookstore on eBay using bitcoins.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://cryptonz.org/&quot;&gt;Auckland Bitcoin ATM&lt;/a&gt; - a bitcoin ATM available in Auckland, New Zealand.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Adding the ability to a website to send and receive payments using bitcoin is easy. The bitcoin client can run a JSON-RPC server that provides &lt;a href=&quot;https://www.bitcoin.org/wiki/doku.php?id=api&quot;&gt;a full featured API&lt;/a&gt;. There are bindings for a number of different languages. I wrote and contributed a &lt;a href=&quot;http://docs.factorcode.org/content/vocab-bitcoin.client.html&quot;&gt;Factor bitcoin API&lt;/a&gt; recently. This is what I use on the &lt;a href=&quot;http://tinyvid.tv/feedback&quot;&gt;tinyvid donation page&lt;/a&gt; to display the payment address and the current donation balance.&lt;/p&gt;

&lt;p&gt;To receive via bitcoin you don&#39;t need to have the client running all the time. You can run the client, generate an address, publish that address to receive money and then close the client. At a later date you can run the client and it will catch up with the current state of the network and any money sent to your address will then be available.&lt;/p&gt;

&lt;p&gt;You can even avoid running a bitcoin client completely. MyBitcoin (service no longer active) is a service that essentially runs one for you. You can create receiving addresses, send money, etc all from the website. They also provide a shopping cart interface to integrate payments into a website.&lt;/p&gt;

&lt;p&gt;I&#39;m interested in the approach of using bitcoin as a way to do micro-transactions and ease online payments and donations. I&#39;ll see how it works out on TinyVid and follow up at a future time with results.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Reading Ogg files with JavaScript</title>
   <link href="http://bluishcoder.co.nz/2009/06/05/reading-ogg-files-with-javascript.html"/>
   <updated>2009-06-05T15:09:00+12:00</updated>
   <id>http://bluishcoder.co.nz/2009/06/05/reading-ogg-files-with-javascript</id>
   <content type="html">&lt;p&gt;On &lt;a href=&quot;http://tinyvid.tv&quot;&gt;tinyvid.tv&lt;/a&gt; I do quite a bit of server side reading of Ogg files to get things like duration and bitrate information when serving information about the media. I wondered if it would be possible to do this sort of thing using JavaScript running in the browser.&lt;/p&gt;

&lt;p&gt;The format of the Ogg container is defined in &lt;a href=&quot;http://www.ietf.org/rfc/rfc3533.txt&quot;&gt;RFC 3533&lt;/a&gt;. The difficulty comes in reading binary data from JavaScript. The &lt;a href=&quot;https://developer.mozilla.org/en/XMLHttpRequest&quot;&gt;XMLHttpRequest&lt;/a&gt; object can be used to retrieve data via a URL from JavaScript in a page but processing the binary data in the Ogg file is problematic. The response returned by XMLHttpRequest assumes text or XML (in Firefox at least).&lt;/p&gt;

&lt;p&gt;One way of handling binary data is described in &lt;a href=&quot;https://developer.mozilla.org/En/Using_XMLHttpRequest#Handling_binary_data&quot;&gt;this Mozilla Developer article&lt;/a&gt;. Trying this method out works in Firefox and I can download and read the data in the Ogg file.&lt;/p&gt;

&lt;p&gt;Ideally I don&#39;t want to download the entire file. It might be a large video. I thought by handling the &#39;progress&#39; event or ready state 3 (data received) I&#39;d be able to look at the data currently retrieved. This does work but on each call to the &#39;responseText&#39; attribute in these events Firefox copies its internal copy of the downloaded data into a JavaScript array. Doing this every time a portion of the file is downloaded results in major memory use and slow downs proving impractical for even small files.&lt;/p&gt;

&lt;p&gt;I think the only reliable way to process the file in chunks is to use byte range requests and do multiple requests. Is there a more reliable way to do binary file reading via JavaScript using XMLHttpRequest? I&#39;d like to be able to process the file in chunks using an &lt;a href=&quot;http://okmij.org/ftp/Streams.html#random-bin-IO&quot;&gt;Iteratee&lt;/a&gt; style approach.&lt;/p&gt;

&lt;p&gt;I put up a rough quick demo of loading the first 100Kb of a video and displaying information from each Ogg packet. This probably works in Firefox only due to the workaround needed to read binary data. Click on the &#39;Go&#39; button in the &lt;a href=&quot;http://www.double.co.nz/video_test/oggparse.html&quot;&gt;demo page&lt;/a&gt;. This will load &lt;a href=&quot;http://www.double.co.nz/video_test/transformers320.ogg&quot;&gt;transformers320.ogg&lt;/a&gt; and display the contents of the first Ogg physical page.&lt;/p&gt;

&lt;p&gt;I decode the header packets for Theora and Vorbis. So the first page shown will show it is for a Theora stream with a given size and framerate. Clicking &#39;Next&#39; will move on to the Next page. This is a Vorbis header with the rate and channel information. Clicking &#39;Next&#39; again gets the comment header for the Theora stream. The demo reads the comments and displays them. The same for the Vorbis comment records. As you &#39;Next&#39; through the file it displays the meaning of the granulepos for each page. It shows whether the Theora data is for a keyframe, what time position it is, etc.&lt;/p&gt;

&lt;p&gt;Something like this could be used to read metadata from Ogg files, read subtitle information, show duration, etc. More interesting would be to implement a Theora and/or Vorbis decoder in JavaScript and see how it performs.&lt;/p&gt;

&lt;p&gt;The main issues with doing this from JavaScript seem to be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Handling binary data using XMLHttpRequest in a cross browser manner&lt;/li&gt;
&lt;li&gt;Processing the file in chunks so the entire file does not need to be kept in memory&lt;/li&gt;
&lt;li&gt;Files need to be hosted on the same domain as the page. &lt;a href=&quot;http://tinyvid.tv&quot;&gt;tinyvid.tv&lt;/a&gt; adds the W3C Access Control headers so they can be accessed cross domain but it also hosts some files on Amazon S3 where these headers can&#39;t be added. As a result even tinyvid itself can&#39;t use XMLHttpRequest to read these files.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Third Party Comment Engines</title>
   <link href="http://bluishcoder.co.nz/2009/05/16/third-party-comment-engines.html"/>
   <updated>2009-05-16T19:24:00+12:00</updated>
   <id>http://bluishcoder.co.nz/2009/05/16/third-party-comment-engines</id>
   <content type="html">&lt;p&gt;I&#39;ve been playing around with different commenting engines on &lt;a href=&quot;http://tinyvid.tv/&quot;&gt;tinyvid&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Currently I use &lt;a href=&quot;http://intensedebate.com/&quot;&gt;Intense Debate&lt;/a&gt;. An example of a video using this comment system is &lt;a href=&quot;http://tinyvid.tv/show/yka5q2v7221y&quot;&gt;here&lt;/a&gt;. I like this service a lot. You can sign on with &lt;a href=&quot;http://openid.net/&quot;&gt;OpenId&lt;/a&gt;, the moderation tools are good and it seems to be generally reliable.&lt;/p&gt;

&lt;p&gt;Intense Debate has support for plugins that anyone can write. Potentially I could write a video plugin that allowed embedding &amp;lt;video&gt; into comments for example.&lt;/p&gt;

&lt;p&gt;But it does have some issues. Sometimes comments don&#39;t seem to appear in the right order. I&#39;ll get an email that a comment was left, visit the page, and it&#39;s nowhere. Somehow it gets buried amongst other older comments. This started happening when I switched the ordering of the comments to have the most recent comment at the top.&lt;/p&gt;

&lt;p&gt;Sometimes, depending on the content of your comment, the engine gets confused and the comment is scrambled. This seems to happen if I edit a comment that has a URL in it. It converts the URL to an HTML &amp;lt;a href/&gt; and when editing and saving seems to reconvert, or do some weirdness with it. I&#39;ve lost comments through this. Long comments can get silently truncated or trashed.&lt;/p&gt;

&lt;p&gt;I set up tinyvid so I can easily add different comment engines and switch them on and off for individual videos for testing. I recently tried &lt;a href=&quot;http://js-kit.com/&quot;&gt;js-kit&lt;/a&gt;. An example of video with js-kit comments for testing is &lt;a href=&quot;http://tinyvid.tv/show/1odneot3p3d2a&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I like js-kit too. I&#39;m using their &#39;rating&#39; widget and that seems to work nicely. The comments are ok too. You can sign in with OpenId. But there is some weirdness there. If I sign in using OpenId, leave a comment, then revisit the page later, then the comments don&#39;t appear. I have to delete the js-kit cookie to have them appear again.&lt;/p&gt;

&lt;p&gt;There is a limit to the size of the comments, similar in size to Intense Debate&#39;s, of 3,000 characters. I suspect this limit isn&#39;t a problem in practice however.&lt;/p&gt;

&lt;p&gt;There&#39;s a lot to like about js-kit, apart from the OpenId issue, but I need to try it out a bit more to see what other issues it has.&lt;/p&gt;

&lt;p&gt;The last one I tried was &lt;a href=&quot;http://disqus.com/home/&quot;&gt;Disqus&lt;/a&gt;. Example &lt;a href=&quot;http://tinyvid.tv/show/2pmbfowazuyds&quot;&gt;here&lt;/a&gt;. The Disqus site lets you register using OpenId. However you can&#39;t login to leave a comment using OpenId. You must login using a Disqus Id that gets assigned to you when you&#39;ve registered.&lt;/p&gt;

&lt;p&gt;When I registered using OpenId, then tried to login to leave a comment it requested a password. I had to go back to the Disqus site, change my profile to add a password. This seems sub-optimal since the point of me using OpenId is to avoid multiple passwords and accounts.&lt;/p&gt;

&lt;p&gt;Disqus requires anonymous posters to leave a valid email address. I couldn&#39;t find a way to turn this option off. I&#39;m sure this will just result in people leaving bogus email addresses.&lt;/p&gt;

&lt;p&gt;One step of the Disqus setup requires adding a script block to the page that does document.write. This won&#39;t work on XHTML sites. And I dislike document.write usage in general. Thankfully this step appears optional. It&#39;s for converting marked up items in the page to a comment count.&lt;/p&gt;

&lt;p&gt;After leaving a comment Disqus does a full page refresh. This unfortunately results in the video on the page restarting and reloading.&lt;/p&gt;

&lt;p&gt;Apart from those issues Disqus seemed quite nice. Simple to set up and configurable.&lt;/p&gt;

&lt;p&gt;So the end result is I&#39;m not sure which is best. I&#39;ll play around with them for a bit more and get feedback. Are there any other&#39;s worth trying?&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Another tinyvid.tv update</title>
   <link href="http://bluishcoder.co.nz/2009/04/10/another-tinyvidtv-update.html"/>
   <updated>2009-04-10T04:05:00+12:00</updated>
   <id>http://bluishcoder.co.nz/2009/04/10/another-tinyvidtv-update</id>
   <content type="html">&lt;p&gt;I&#39;ve made some more changes and fixes to &lt;a href=&quot;http://tinyvid.tv/&quot;&gt;tinyvid.tv&lt;/a&gt; since my &lt;a href=&quot;http://bluishcoder.co.nz/2009/03/tinyvidtv-updates.html&quot;&gt;last update&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I&#39;ve updated to the latest &lt;a href=&quot;http://factorcode.org/&quot;&gt;Factor&lt;/a&gt; version, picking up some bug fixes and improvements to the libraries that I use.&lt;/p&gt;

&lt;p&gt;The look and feel of the site has a new logo and banner thanks to &lt;a href=&quot;http://www.tapper-ware.net/&quot;&gt;Hans Schmucker&lt;/a&gt;. There have been some great contributions and bug reports in the &lt;a href=&quot;http://tinyvid.tv/feedback&quot;&gt;feedback&lt;/a&gt; part of the site from Hans and others.&lt;/p&gt;

&lt;p&gt;Support for converting &lt;a href=&quot;http://www.dailymotion.com/&quot;&gt;Daily Motion&lt;/a&gt; videos is now in place. This gives three sites that can be converted from now. The other two being &lt;a href=&quot;http://youtube.com/&quot;&gt;YouTube&lt;/a&gt; and &lt;a href=&quot;http://vimeo.com/&quot;&gt;Vimeo&lt;/a&gt;. In all cases it tries to convert the highest quality video available from the site.&lt;/p&gt;

&lt;p&gt;A number of bugs in the &lt;a href=&quot;http://tinyvid.tv/upload&quot;&gt;file uploads&lt;/a&gt; have been fixed. There still are a few annoyances in this area, mainly to do with not very good error reporting when an upload fails. I&#39;m still playing around with this area.&lt;/p&gt;

&lt;p&gt;Previously logging in was done with &lt;a href=&quot;http://bluishcoder.co.nz/2009/02/testing-facebook-connect-locally.html&quot;&gt;Facebook Connect&lt;/a&gt;. Now I&#39;ve added support for &lt;a href=&quot;http://openid.net/&quot;&gt;Open ID&lt;/a&gt; as well as Facebook and others.&lt;/p&gt;

&lt;p&gt;This support was easily added using the great service from &lt;a href=&quot;https://rpxnow.com/&quot;&gt;RPX Now&lt;/a&gt;. I implemented server support in &lt;a href=&quot;http://factorcode.org/&quot;&gt;Factor&lt;/a&gt; very easily and it gives a nice authentication login interface. If you don&#39;t want to associate an existing account with your tinyvid.tv videos you can use a service like &lt;a href=&quot;http://myopenid.com/&quot;&gt;myopenid.com&lt;/a&gt; to get an Open ID login and use that to authenticate with tinyvid.&lt;/p&gt;

&lt;p&gt;I&#39;m trialing the &lt;a href=&quot;http://bluishcoder.co.nz/2009/03/replacing-controls-using-bookmarklet.html&quot;&gt;bookmarklet written by Hans Schmucker&lt;/a&gt; as the main player on the site. It provides visibility of the controls outside the video area so you can always see them without obscuring the video, has a volume control, and allows resizing the video. If you want to try the browser&#39;s standard controls you can click on the &#39;download&#39; link on the video page to do that. I may switch between this player and the native controls based on feedback or if problems are found.&lt;/p&gt;

&lt;p&gt;I added an &#39;embed snippet&#39; on the video page so you can copy/paste it into your own pages to have the video embedded.&lt;/p&gt;

&lt;p&gt;If you have any ideas for things to add or improve let me know.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Replacing video controls using a bookmarklet</title>
   <link href="http://bluishcoder.co.nz/2009/03/17/replacing-controls-using-bookmarklet.html"/>
   <updated>2009-03-17T11:31:00+13:00</updated>
   <id>http://bluishcoder.co.nz/2009/03/17/replacing-controls-using-bookmarklet</id>
   <content type="html">&lt;p&gt;Update: Chris Blizzard has a neat &lt;a href=&quot;http://www.0xdeadbeef.com/weblog/?p=1173&quot;&gt;screencast&lt;/a&gt; showing the bookmarklet and player replacement in action.&lt;/p&gt;

&lt;p&gt;There&#39;s been some interesting demo&#39;s of &amp;lt;video&amp;gt; usage and manipulation discussed in the &lt;a href=&quot;http://tinyvid.tv/feedback&quot;&gt;TinyVid Feedback&lt;/a&gt; comments section.&lt;/p&gt;

&lt;p&gt;One user, &lt;a href=&quot;http://www.intensedebate.com/people/hansschmucker&quot;&gt;hansschmucker&lt;/a&gt;, has done some nice demonstrations of what &amp;lt;video&amp;gt; can offer.&lt;/p&gt;

&lt;p&gt;For example, &lt;a href=&quot;http://www.tapper-ware.net/devel/js/JS.TinyVidPlayer/v002/bookmarklet/index.html&quot;&gt;this bookmarklet&lt;/a&gt; can take a &lt;a href=&quot;http://tinyvid.tv/&quot;&gt;TinyVid&lt;/a&gt; video and replace the player using the built in controls with one written in JavaScript provided by the bookmarklet. The new interface includes seeking, play, pause and volume control. It looks very nice.&lt;/p&gt;

&lt;p&gt;To use the bookmarket, visit the &lt;a href=&quot;http://www.tapper-ware.net/devel/js/JS.TinyVidPlayer/v002/bookmarklet/index.html&quot;&gt;bookmarklet page&lt;/a&gt;, click on the button that appears there and bookmark the resulting page. Next visit a &lt;a href=&quot;http://media.tinyvid.tv/yka5q2v7221y.ogg&quot;&gt;TinyVid video&lt;/a&gt; and visit the bookmarklet. The built in player will be replaced by the new one. This will also work on many pages that use video using the built in controls, for example &lt;a href=&quot;http://transparencycamp.org/videos/&quot;&gt;this transparency camp video&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This example show&#39;s it&#39;s possible for users to create and customize their own video players and use it on sites of their choice which is pretty nice.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.intensedebate.com/people/hansschmucker&quot;&gt;hansschmucker&lt;/a&gt; also provided some demo&#39;s of using &amp;lt;video&amp;gt; with &amp;lt;canvas&amp;gt; that allow you to view a video in 3D using red/cyan glasses. I&#39;ve copied his comment from the feedback page below:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Using VIDEO as data source for 3D&lt;/p&gt;

&lt;p&gt;I just wrote a little demo to demonstrate how powerful VIDEO elements can be
as data source: This little script (it&#39;s 20 lines for god&#39;s sake) uses a
video (which was also produced via JS by the way, thanks to Radiohead&#39;s
choice of using simple CSV for the data, the power of Canvas and a bit of
base64 decoding) to offset pixels in a randomly generated noise map, saving
the original map as red and the altered image as red/blue.&lt;/p&gt;

&lt;p&gt;You just have to get out your red/cyan glasses and you&#39;ll be able to enjoy
the video in 3D. Lots more could be done with proper optimization (in fact,
the whole thing may be done as a set of SVG filters) and just a little more
attention to detail (random noise is possibly the worst thing you can use for
a map), but it&#39;s still amazing how easily you can create something amazong
with VIDEO.
...
Two more variants: &lt;a href=&quot;http://www.tapper-ware.net/devel/js/JS.StereoVideo/index3.xhtml&quot;&gt;uses a prerendered noise (looks much
better)&lt;/a&gt;
and &lt;a href=&quot;http://www.tapper-ware.net/devel/js/JS.StereoVideo/index2.xhtml&quot;&gt; warps the source image
itself&lt;/a&gt;
which probably makes most sense here.&lt;/p&gt;&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>tinyvid.tv updates</title>
   <link href="http://bluishcoder.co.nz/2009/03/07/tinyvidtv-updates.html"/>
   <updated>2009-03-07T15:35:00+13:00</updated>
   <id>http://bluishcoder.co.nz/2009/03/07/tinyvidtv-updates</id>
   <content type="html">&lt;p&gt;I did some minor tweaks to &lt;a href=&quot;http://tinyvid.tv/&quot;&gt;tinyvid.tv&lt;/a&gt; recently. I added the ability to add comments to video pages, and add &lt;a href=&quot;http://tinyvid.tv/feedback&quot;&gt;feedback on the site&lt;/a&gt;. This uses &lt;a href=&quot;http://intensedebate.com/&quot;&gt;Intense Debate&lt;/a&gt;, a third party commenting engine.&lt;/p&gt;

&lt;p&gt;On the video front I added a page to return a &lt;a href=&quot;http://tinyvid.tv/random&quot;&gt;random video&lt;/a&gt; from those available. The video pages themselves show the duration, download progress and current playback position if the browser supports the relevant events. These should work in the latest Firefox nightlies, maybe with the exception of &#39;download progress&#39;. The latter works well with the patch from &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=464376&quot;&gt;bug 464376&lt;/a&gt; applied. That bug should be resolved soon - it just needs tests written and handle the case of local files (those not served over HTTP).&lt;/p&gt;

&lt;p&gt;File uploads are not yet supported. For uploads I imagine I will need to work out a way of moderating/screening the uploaded videos. Even without this functionality the site still has almost 200 videos available for testing the HTML 5 &amp;lt;video&amp;gt; element.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>User Authentication - OpenID and Facebook</title>
   <link href="http://bluishcoder.co.nz/2009/02/27/user-authentication-openid-and-facebook.html"/>
   <updated>2009-02-27T13:30:00+13:00</updated>
   <id>http://bluishcoder.co.nz/2009/02/27/user-authentication-openid-and-facebook</id>
   <content type="html">&lt;p&gt;I&#39;m still looking at the different options for &lt;a href=&quot;http://tinyvid.tv/&quot;&gt;tinyid&lt;/a&gt; to handle registration and authentication of users. My recent change added logging in using your Facebook account using &lt;a href=&quot;http://developers.facebook.com/connect.php&quot;&gt;Facebook Connect&lt;/a&gt;. Another option I&#39;m considering is &lt;a href=&quot;http://openid.net/&quot;&gt;OpenID&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There&#39;s a good blog post comparing the &lt;a href=&quot;http://www.sociallipstick.com/2008/11/21/an-open-stack-glossary-for-facebook-developers/&quot;&gt;Facebook vs the OpenID stack&lt;/a&gt;. The same weblog has a post on using &lt;a href=&quot;http://www.sociallipstick.com/2009/02/04/how-to-accept-openid-in-a-popup-without-leaving-the-page/&quot;&gt;OpenID in a popup&lt;/a&gt; without leaving the page, similar to how Facebook Connect does its magic. You can see a &lt;a href=&quot;http://openid-demo.appspot.com/&quot;&gt;demo of this concept in action&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 
</feed>
