The magazine of the Melbourne PC User Group

Create and Set Up Your Own Podcast
Roger Brown
 
 

"It's easy", says Roger Brown and it is — once you become familiar with the key steps and work your way through each of them

This article assumes the reader is familiar with creating a Web page, writing HTML code to display material on that page, uploading material and maintaining the Web page.

Quick Start Summary
  1. Create one or more MP3 audio files using a sound editor such as Audacity. Upload these to your Web space and note the URL and file size of each.
  2. With these details and using the code in this article as a guide, write an XML file for your podcast. Upload the XML file to your Web space and note its URL
  3. Enter the URL into your podcast software to test your podcast.
  4. (Optional) Using the code in this article as a guide, create an XSL style sheet. The code in this article will need minimal change. Upload the XSL file to your Web space. If desired, also upload an HTML style sheet (see m.css).
  5. Amend your XML file to refer to the XSL style sheet as described on Page 14. Upload this new copy of the file. Viewing the XML file in your browser should now produce a nicely formatted output with MP3 links.

Perhaps because of the runaway success of the Apple Ipod, podcasting has become one of the current buzzwords of the Internet. But what is a podcast? And did you know that anyone can have a podcast attached to their Web site with no need for expensive software or server facilities — just the thing for family newscasting, to add that personal touch to your club or organisation Web site or simply to indulge any personal passion or interest, among many other possible uses.

This article will explain what a podcast involves and how you can join the fun.

The Definition

There are a number of slightly differing definitions of this term — and its meaning will probably change over time — but at present the generally accepted definition is:

"a method of publishing files to the Internet, allowing users to subscribe to a feed and receive new files automatically by subscription, usually at no cost. It first became popular in late 2004, used largely for audio files." (Wikipedia)

For example, I may wish to subscribe to the BBC "From our own Correspondent" series — an excellent radio series which is updated weekly.

By entering a specific URL into a podcasting program such as Juice (formerly named IPodder) http://juicereceiver.sourcefbrge.net/ I will see the details of all available episodes (usually called a feed) and if I wish the audio files will be automatically downloaded. The software can periodically check for further updates, and can be set to automatically download them. See Figure 1.

While dedicated software in currently needed to access podcast feeds, in future this will be done using your Web browser. Opera has for some time included a podcast reader; Internet Explorer 7 and Firefox 2 both plan to include podcast reading facilities.

Your Own Podcast — How Is It Done?

Actually it's quite simple, and it can be done with software that you already have or that you can obtain at no cost. There are three main components involved:

  1. The audio content — normally in MP3 format. (essential)

  2. An .XML file — the podcast software reads this file to display the feed — essential if you want a true podcast rather than merely downloadable audio content. Refer to "Creating the XML File".

  3. An .XSL file — a file that enables details of the feed to be displayed in a Web browser. The XSL file is optional — but adds a professional and user friendly touch. Refer to "Creating the XSL File".

1. The Audio Content

The simplest way to create an audio file, one that will be suitable for many purposes, is by direct recording via a microphone attached to the computer. These are not expensive though when purchasing it may be wise to avoid the very cheapest.

Windows XP already has a simple sound recorder and while it is not suitable for podcasting (it has no editing facilities and can save only in wave format), it can be useful for microphone set up and testing. Microphone level adjustment is set using the Windows mixer volume control.

Once your microphone is set up and working it's time to install a more versatile sound recorder/editor. A good choice and free is Audacity —obtainable from http://audacity.sourceforge.net/. Like many good programs Audacity is cross-platform and works well in Windows or Linux. Recording is essentially similar to the Windows Sound Recorder but it has some comprehensive editing facilities to help you correct or enhance your efforts. See Figure 2.

Audacity can export to MP3, the format needed for podcasting, but there are two things to note:

  1. Audacity does not include the library file needed to encode the MP3 — it requires that to be on your system already. You will be prompted for its location. In Windows that will most likely be LAME_ENC.DLL and if necessary a quick Google search will enable you to download a copy.

  2. At this point you need to consider how much Web storage space you have available. The default encoding rate in Audacity of 128 kbit/s means that a simple speech recording would take up about 1 Megabyte per minute of recording time. That will quickly cause a problem if you only use an ISP's hosting facilities (eg. Melb PC) and consequently you have only 10 or 20 Megabytes total space available.

    However altering the encoding rate to a lower value could reduce the space requirement to as little as 125 Kb per minute (16 kbit/s encoding rate) — and for a simple speech file the audio quality would still be perfectly clear. The encoding rate is set in the Audacity properties window. (Menu Edit' Properties) as shown in Figure 3.
If your requirements are more complex than a simple mono speech file, you will probably need to use an external recording device with some capacity to transfer the results to your computer. For example. the organ music files and podcast on my Web site http://rogerbrown.no-ip.org are produced using a Sony mini-disk recorder and stereo microphone and then are imported to Audacity for editing and conversion to MP3.

At this point you could simply use standard HTML to enable users to download your audio file but, strictly speaking, that would not be a podcast.

2. Creating the XML File

Now it's time to write the file that the podcast software will read in order to display details of our "feed". This file is written in XML which is a mark-up language similar to HTML. Whereas HTML is more appropriate for documents, XML is designed purely for the storage of data. You can read more about XML at http://www.w3schools.com/xml/.To get things going quickly I've used a Web-based podcast generator that you will find at http://www.tdscripts.com/webrnaster_utilities/podcast-generator.php. Enter your essential data into this online resource and it produces code as in Listing 1 version A.

In Listing 1 version A, there is one manual adjustment to the generated code, the line <guid> http://members.westnet.com.au/robrown/a.mp3 </guid> has been added. The reasons for that will become apparent.

You can see that the podcast generator lays out the code in a structured format — details of the feed are contained within the <channel> </channel> tags and nested within that structure are details of the first individual item (named "Something rather odd") within <item> </item> tags.

Save that code as "podcast.xml" and upload it together with a short organ clip from my PC to some spare space on my WestNet personal Web space. And at this point I now have a functional podcast. Copying the URL of the XML file into podcast software shows the feed is now readable
Now I want to add a second episode —1 have another small organ clip lying around. All 1 need to do is to add a further item section to my XML file — the file then becomes as per Listing 1 version B.

I save that version and upload it — the second episode is now available online. Note that with a podcast you add the latest episode first. Therefore as you can see in Listing 1 version B below, the new piece titled "Revolt and revolution" appears "above" instead of below the first item.

Why Do We Need an XSL file?

If you attempt to display the XML file as it is now, in a Web browser, you would get only meaningless text or XML source-code. That's because XML code is not intended for viewing in a Web browser and it contains no information whatsoever that might tell the browser how it should be displayed.

However, if you examine the XML pages produced by organisations like BBC or (in some instances) your local ABC, you will see that opening the XML page produces a nicely formatted screen giving details of the feed and instructions such as how to subscribe. For example see: <http://downloads.bhc.co.uk/rmhttp/downloadtrial/radio4/fromourowncorrespondent/rss.xml.

That's where the XSL (eXtensible Stylesheet Language) file comes in. This special XML stylesheet converts the XML code to HTML code that your browser can easily read. You can read more about what can be done with XSL at http://www.w3schools.com/xml/xml_xsLasp.

If we wish to use the XSL stylesheet, to enable our XML page to be viewed in a Web browser, we simply insert the following line of code into the XML code — making it the second line of our XML code.

      ?xml-stylesheet type="text/xs1" href="podcast.xsl"?

This line of code tells the Web browser to display the XML code according to whatever instructions it finds in a file named "podcast.xsl".

So, the final version of the XML, "podcast.xml" file is as you see it in Listing 1 version C opposite, with the above line inserted.

3. Creating the XSL File

Listing 2 (opposite) is the code for a simple generic stylesheet which creates a page display of our feed. Listing 2 shows the plain code without any comments. The same code with explanatory comments added begins over on page 16.

Upload this file as "podcast.xsl" and our "podcast.xml" file will display nicely in any recent Web browser.

As you can see from the interpolated comments in the code above, you can use this style sheet with very little alteration for your own feed. That's because, far as possible, with XSL code you avoid "hard coding" — all details are taken from the XML file.

Of course you may prefer to adapt and create your code from one or more of the many good examples to be found out there on the Internet.
Some browsers now being developed (Internet Explorer V.7 and Firefox V.2) may include their own internal style sheet for reading any XML pages that include podcasts.

And with that, our test podcast is very much complete. You can test it for yourself at http://members.westnet.com.au/robrown/podcast.xml.

At the time of writing, Melbourne PC User Group is in the process of forming a podcasting Special Interest Group (SIG) which will no doubt explore many of these matters in months and years to come.

Podcasting is an excellent way of adding that personal touch to your Web site — and needs no special facilities other than a little free Web space.

Further Reading

This article has covered only the basics of podcasting. On the Web there is available a substantial amount of additional material that will provide readers with greater detail of the techniques and issues involved.

A very brief sample of this material includes:

http://radio.about.com/od/podcastin1/a/aa030805a_2.httm  provides a basic tutorial which expands upon some of the matters in this article.

http://rss.scripting.com/ provides an online validation service for your xml file.

http://en.wikipedia.org/wiki/Podcasting provides a good overview of podcasting

http://www.w3schools.com/xml/ provides an excellent starting point for gaining an understanding of all aspects of XML and XSL.

Reprinted from the September 2006 issue of PC Update, the magazine of Melbourne PC User Group, Australia

[ About Melbourne PC User Group ]