xmlns : XML-namespace

XML namespaces, tagged xmlns, are used for providing uniquely named elements and attributes in an XML document. An XML instance may contain element or attribute names from more than one XML vocabulary. If each vocabulary is given a namespace, the ambiguity between identically named elements or attributes can be resolved.

A namespace name is a uniform resource identifier (URI) and describes a resource under the control of the author or organisation defining the vocabulary, such as a URL for the author’s Web server. It is however not required to use the URI to retrieve informations. The URI is treated as a string and describes the namespace to human readers. Despite the absence of any formal relationship of the URI with the HTTP protocol, the use of an URL form is common.

It’s not required that a document is available at the named address, but one convention adopted by developers is to place a Resource Directory Description Language (RDDL) document at the location of the URI.

The default namespace is declared as :

<html xmlns="http://www.w3.org/1999/xhtml">

The Facebook namespace is declared as :

<html xmlns:fb="http://ogp.me/ns/fb#">

To use both namespaces in one document, the declarations are combined :

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#">

Further informations about namespaces are available at the following links :

Google Web Toolkit, Google Doctype, Closure Tools

Closure Logo

Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications. GWT is open source and used by thousands of developers around the world.

Google Doctype is an open encyclopedia and reference library.

The Google Closure Tools help developers to build rich web applications with JavaScript that is both powerful and efficient. The Closure tools include:

  • The Closure Compiler compiles JavaScript into compact, optimized and high-performance code
  • The Closure Library is a broad, well-tested, modular, server-agnostic and cross-browser JavaScript library.
  • The Closure Templates are a client- and server-side templating system that helps developers to dynamically build reusable HTML and UI elements.
  • The Closure Stylesheets is an extension to CSS that adds variables, functions, conditionals, and mixins to standard CSS.
  • The Closure Linter ensures that all JavaScript code follows the guidelines in the Google JavaScript Style Guide.
  • The Closure Inspector is an extension to Firebug, the Firefox debugger extension.

The Google Closure Website provides FAQ’s, a Blog and other resources about Closure tools. The Google Doodle “Happy Holidays 2011”, created by software engineer Nathan Naze, is based on Closure.

reCAPTCHA

reCAPTCHA is a free CAPTCHA service provided by Google that helps to digitize books, newspapers and old time radio shows.

To archive human knowledge and to make information more accessible to the world, multiple projects are currently digitizing physical books that were written before the computer age. The book pages are being photographically scanned, and then transformed into text using “Optical Character Recognition” (OCR). One problem is that OCR is not perfect.

reCAPTCHA improves the process of digitizing books by sending words that cannot be read by computers to the Web in the form of CAPTCHAs for humans to decipher.
Each new word that cannot be read correctly by OCR is given to a user in conjunction with another word for which the answer is already known. The user is then asked to read both words. If they solve the one for which the answer is known, the system assumes their answer is correct for the new one. The system then gives the new image to a number of other people to determine, with higher confidence, whether the original answer was correct.

The technical backround of this technique has been published in a paper in the Science Magazine, Vol 321, 12 September 2008.

Opera Mini Simulator and Opera Dragonfly

Last update : August 30, 2012

Opera Mini 4.2 Simulator

Opera Mini 6.5 Simulator

Opera Software ASA gives developers tools needed to build and test HTML content for different devices on their PC’s.

Opera Mobile Emulator is the desktop version of Opera’s smart phone browser. The Opera Mobile Emulator renders pages as close as you can get to how it would look on a real phone. It can be paired with Opera Dragonfly, a great tool to develop and debug web applications.

The Opera Mini Simulator is the online version of Opera’s Mobile Emulator. It can be accessed from any Java-enabled Web browser, or downloaded and run independently. Two versions were available in the past : Opera Mini 4.2,the world’s most popular mobile Web browser, and Opera Mini 6.5. Today Opera Mini 7, the newest version of this browser, is online. All versions are powered by MicroEmulator, a pure Java implementation of Java 2 Micro Edition in Java 2 Standard Edition licensed under LGPL.

Opera is also available as desktop browser for Windows, Mac and Linux, for tablets and for TV sets.

The Opera TV Emulator gives developers the tools needed to build and test HTML5  content for TVs on their PCs, which will emulate the target device’s environment with no need for physical access to the TV, set-top box or Blu-ray player. The Opera TV Emulator offers a direct, easy way to develop, test and debug and can serve as a reference implementation.

OperaDriver and OperaWatir are toolkits used for automating interactions with web browsers. OperaDriver and OperaWatir allow you to drive the Opera browser and emulate user behavior.

Europeana : think culture

Europeana Logo

Europeana was launched in 2008, with the goal of making Europe’s cultural and scientific heritage accessible to the public. The project is funded by the European Commission. It is based in the National Library of the Netherlands, the Koninklijke Bibliotheek. Over 180 heritage and knowledge organisations and IT experts across Europe support Europeana regarding technical and usability issues. Europeana builds on the experience of The European Library, which is a service of the Conference of European National Librarians.

The Europeana website provides efficient tools for searching, FAQ’s, Help’s, a ThoughtLab, a Blog, Newsletters and a personal space My Europeana to save your favourite items and searches, and to add tags. The content is available in most eurpean languages.

An associated project to Europeana is the Public Domain Calculator.

Polaroid Z340 Instant Digital Camera

Polaroid Z340 Instant Digital Camera

Since the launch of the Polaroid Land Camera in 1948, the first instant camera, people around the world have enjoyed the magic of Polaroid instant photography. Today Polaroid announced the Z340 Instant Digital Camera,  a full-function 14.0 megapixel digital camera with an integrated ZINK® printer. The Polaroid Z340 camera delivers the same instant experience that is synonymous with the Polaroid brand: a simple, quick and easy way to capture, print, share and create with snapshots from our lives.

The Z340 camera produces vibrant photos with the patented ZINK Paper®, an advanced composite material with cyan, yellow, and magenta dye crystals embedded inside. Before printing, the embedded dye crystals are clear, so the ZINK Paper looks like regular white photo paper.

The Polaroid Z340 camera is available for $299.99 US$. The price for thirty sheets of Polaroid ZINK 3×4” Paper is 19.99 US$.

WordPress WPtouch Pro Plugin

Last update : May 22, 2013
WPtouch is a free WordPress plugin that automatically transforms a WordPress website for mobile devices. The admin panel allows you to customize many aspects of the mobile theme appearance and allows visitors to switch between the mobile view and the site’s regular theme. The latest version of the plugin is 1.9.6.3, updated May 3, 2013. WPtouch is a trademark of BraveNewCode Inc., a small Canadian company established in 2008 by Duane Storey and Dale Mugford.

WPtouch pro is the enhanced version of the WordPress Plugin. I subscribed to the “old” pro version in December 29, 2010 for the current website. The latest version of this old plugin is 2.8.2, support will continue until July 5th, 2013. On May 22, 2013 I purchased a license for the new WPtouch pro 3 plugin for my family website blog.

WPtouch Pro includes a unique feature called Developer Mode. When Developer mode is enabled WPtouch Pro will load on ALL browsers. You can enable Developer Mode for your Mobile theme or your iPad theme via the menu General > Tools and Debug.

 

CBR and VBR in mp4 H264 video files

CBR versus VBR in video encoding

When referring to codecs, CBR (constant bitrate) encoding means that the rate at which a codec’s output data should be consumed is constant. As opposed to constant bitrate, VBR (variable bitrate) vary the amount of output data per time segment. VBR allows you to set a maximum and minimum bitrate. The advantages of VBR are that it produces a better quality-to-space ratio compared to a CBR file of the same data. The bits available are used more flexibly to encode the sound or video data more accurately, with fewer bits used in less demanding passages and more bits used in difficult-to-encode passages.

The disadvantages are that it takes more time to encode, as the process is more complex. VBR may  pose problems when streaming over a  web connection since it is the maximum bit rate that matters, not the average.

The generally accepted best practice is to use CBR when producing for streaming delivery, and VBR when producing for progressive download.

 

MPEG-4 containers : mp4, m4a, m4p, m4v

Last update : September 16, 2013

To play H264 encoded movies, the encoded video and audio files must be packaged in a specific type of container following the MPEG-4 Part 12 specification. Stream packaging, also known as muxing, is the procedure to combine multiple elements that enable control of the distribution delivery process into a single multiplexed media file.

The most common container for H264 encoded videos is specified by MPEG-4 Part 14 (standard ISO 14496-14) and has the file extension mp4. This format, often called MP4 container,  is based on the quicktime format mov. Audio-only MPEG-4 files have a m4a extension, or m4p when they are encrypted.

Apple introduced the extension m4v for it’s iTunes applications. It’s very close to .mp4, some differences are the optional Apple’s DRM copyright protection, and the treatment of AC3 (Dolby Digital) audio which is not standardized for MP4 container

The following command line tools are available to create and modify MP4 files by combining (multiplexing) previously encoded video or audio tracks, as well as subtitles, chapter information and meta data.

  • AtomicParsley : lightweight program for reading, parsing and setting metadata into MPEG-4 files
  • MP4Creator : tool from Cisco’s mpeg4ip suite that combines video, audio, text and other media to create MPEG-4 streams.

GUI’s for both programs are also available. Atomicparsleygui is a GUI for AtomicParsley, MP4Muxer is a GUI for MP4Creator. All these programs have not been updated during the last four years. A better choice for MPEG-4 tools today is FFmpeg and MP4Box.

More informations about the MPEG-4 containers are listed hereafter :

Indexing (MOOV atom) in H264 video files

Last update : July 8, 2013

MOOV atom

QTIndexSwapper 2 (to move MOOV atom)

When a streaming mp4 H264 video file won’t play immediately in a Flash video player, the reason could be a quicktime (QT) Index problem. This index is called MOOV atom. The moov atom, also referred to as the movie atom, defines the timescale, duration, display characteristics of the movie, as well as subatoms containing information for each track in the movie.

Often the moov atom is located at the end of the video file and the Flash player needs to load the entire file to read this information. The solution is simple: Move the moov atom from the end of the file to the beginning. Renaun Erickson, Developer Evangelist for Adobe Systems Inc., created a simple tool called QTIndexSwapper 2 (version 2.3.8) to do this job. This AIR application can be downloaded from his blog. Another tool to move the moov atom is MP4 FastStart (version 1.0.0). A tool with a similar name qt-faststart is available for ffmpeg :

qt-faststart old.mp4 new.mp4

Because the moov atom uses absolute file sizes in its format, putting at the beginning of the file before the entire file has been created isn’t possible. The only way to move it to the beginning is to generate the entire file with the moov atom at the end, and then re-process the entire file to move it to the beginning. This is done by Handbrake. If you use this tool to convert videos, the moov atom is set correctly if you select “web optimized”.

To see if the moov atom is at the beginning of a video, you can open the file in a text editor and look for “moov” string in the raw output:

^@^@^@ ftypisom^@^@^B^@isomiso2avc1mp41^@^Eï moov^@^@^@lmvhd

More informations about atoms in mp4 files are available at the following links :