Talk:List of codecs

From Wikipedia, the free encyclopedia

Contents

[edit] Forbidden Technologies codecs

I removed FORlive and FORtune from the list because this looked like a blatant product advertisement. This is not the first time the issue of Forbidden Technologies advertising on Wikipedia has come up. See Wikipedia:Articles_for_deletion/FORscene.

Appearances are not all that they seem though. Forbidden's 1,000,000 hits per month on the FORlive demo page do not come from Wikipedia. The product Forbidden sells is now is almost exclusively FORscene, which now has its own editing codec (not discussed or even mentioned in the codec list). FORscene was my first article on joining WP ("Be bold", it says!). The nominiator has since said "I've just seen too many people trying to spam the place with advertising. Just after I submitted ForScene for AfD, I noticed that this was probably not the case here. I might not even have nominated it, had I known then what I know now." (see User_talk:Stephen_B_Streater). The notorious Rouge Admin User:JzG offererd to bring it to Deletion Review following discussions on Wikipedia_talk:Notability_(software). Even the deleting admin offered to rewrite the article in a more WP friendly style, as the topic was notable (see User_talk:Stephen_B_Streater). So this deletion was more to do with my inexperience of WP procedures at the time than the significance of the FORscene product itself, which clearly meets both the current and proposed notability guidelines. Stephen B Streater 09:06, 22 May 2006 (UTC)

When I click on the FORlive link I see an ad for streaming video software that says nothing about codecs whatsoever. And when I click on the FORtune link I get a page that doesn't even mention FORtune at all. Thus this information is unverifiable, unrelated to the subject matter of the article, and a blatant product advertisement.

I have replaced the FORlive link with a more interesting one. During the day, this gives full frame rate video, with lower frame rate at night. I hope this will help you here.
It's just a product demo, it doesn't tell me anything informative. For example, when I click on Theora, I'd expect an article about the codec, not Fluendo's Java demo (although that is mentioned in the article). -- Mcoder 08:17, 1 June 2006 (UTC)
Well, it isn't an article, it's an example. If you would like to write an article, I can give you the relevant references to, for example, historical press releases and patents. Stephen B Streater 10:32, 1 June 2006 (UTC)

I looked for independant confirmation that these codecs exist and found none. Neither was listed at multimedia.cx, hydrogenaudio, or doom9. The only thing I found with a search engine were links to Forbidden Technologies press releases. See WP:Notability.

The FORlive codec was shipped with FORscene until January this year, and FORtune is the audio codec in FORscene. There are dozens of articles about FORscene. The latest customer for FORtune was the British Army, who bought it as part of our FORscene mobile offer. So by avoiding advertising FORscene, and listing the underlying technologies here as FORlive and FORtune, you are finding it hard to find press coverage. We could list them as FORscene version 1 video and FORscene audio, and then you would be able to choose from dozens of press articles.
Note that I haven't objected to FORscene being listed in List of video editing software. I think there's enough written about this for it to be notable. But what exactly would an article on FORtune say? "FORtune is an audio codec by Forbidden Technologies, which they don't even mention on their web site." Not a real informative article. Compare that to articles like Windows Media Audio or Apple Lossless which actually tell me something. Note that RealAudio, for example, isn't on this list, but the codecs (listed in the RealAudio article) are. WMA is on the list because that refers to WMA standard codec; WMA lossless has a separate entry. FLV isn't on the list, but H.263, VP6, etc are. (Those are the codecs flv actually uses.) -- Mcoder 08:17, 1 June 2006 (UTC)
You are right that FORtune almost nothing published about it, though it is mentioned on the Forbidden website. It has much less about it than FORscene (which includes FORtune). It's an example of a Java audio codec. The interesting thing about it is that it is written in Java and plays back on most platforms (eg Windows, Mac, Linux) without requiring installation, though it does require installation on mobile phones. So in this respect it is a different category to the other codecs listed. The list definition doesn't define interesting compression algorithms as the only criterion to determine qualification for entry - so I suppose my claim is that codecs can be notable because of their implementation. I wouldn't object strongly if you see the list as exclusively bitstream-related though, and wouldn't revert a considered removal edit. See below about FORscene if you are more concerned with published information. Stephen B Streater 10:55, 1 June 2006 (UTC)
I'm working on a prototype FORscene article here. I have started to include some information about the video and audio codecs used in FORscene. This could also mention the video codec used in FORlive, which is now deprecated in FORscene, and also FORtune. In fact, I'd welcome any constructive comments and edits prior to deletion review. I am keen to err on the side of too much information rather than too little, as it is easier for me to add content and find references and for other editors to trim it than vice versa. Stephen B Streater 10:55, 1 June 2006 (UTC)
That looks pretty good. You might want to trim the See Also list a bit, since things like Java and web application are already linked in the article text. I was a little confused by the upload section, since you list 3 operating systems separately, and I was under the impression that this is done with java and a web browser and is basically the same on each platform. Also the server section is confusing - do you sell servers or only usage of your servers? -- Mcoder 13:30, 1 June 2006 (UTC)
I've made some improvements. Thanks for your suggestions. Stephen B Streater 07:29, 2 June 2006 (UTC)
Copied to proposed article talk page. Stephen B Streater 17:50, 9 June 2006 (UTC)

Below is Stephen B Streater's description of FORlive and FORtune. I have to ask why this is here instead of on forbidden.co.uk? This could be the start of an article, but would need some independant sources (see WP:Cite, Wikipedia:Verifiability, Wikipedia:No original research) --Mcoder 00:29, 22 May 2006 (UTC)

The reason it is here is because you asked for some more information. As for the website, company websites do not generally explain how their codecs work - this information is in the patents. The website lists some features of the codecs here. Forbidden's main products are FORscene and Clesh, which have their own video codecs (not mentioned in the list). The codecs are packaged into other products, and the press in the industries Forbidden sells to are not that interested in the names of the codec technology used.
For me, and I suspect for many others reading this list, FORlive and FORtune are the only codecs listed which actually work on an out-of-the-box Mac, PC and Linux machine - truly cross platform codecs. I suspect that this is a major factor in the codecs being listed unchallenged up until now. It would be ironic if the only codecs which almost everyone can actually see in action were removed for some imagined commercial reason.
There's nothing wrong with it being commercial. There are articles on Windows Media Video, RealVideo, and many other commercial products. It's certainly not necessary for the articles to explain in detail how the codecs work (although there may be references to technical documents which do). Mostly people want to know things like what software is it compatible with, how does the quality and bitrate compare to other codecs, does it support CBR or VBR, and maybe a little bit of the history (eg is FORlive related to EIDOS ESCAPE/RPL?) FORtune is listed alongside codecs like MP3, Vorbis and AAC but I really have no idea if they're even comparable. -- Mcoder 08:17, 1 June 2006 (UTC)
This would all be good to put in an article. Perhaps the FORscene article (prototype here) will be the best place to add in this information. This link in this list could then go to the relevant section of the FORscene article. Does this sound like a sensible course of action? If so, I merely ask for patience as I am only just starting to ask for input on the new FORscene article, and still have some references to add. Stephen B Streater 11:01, 1 June 2006 (UTC)
Yes, I think the history part explains the Eidos connection pretty well. You've actually got quite a lot of references. -- Mcoder 13:30, 1 June 2006 (UTC)
If you would like to write a WP:NPOV article, FORscene or Clesh would be a good place to start. Articles on these subjects could include FORlive, FORtune and the latest FORscene/Clesh codecs. I can dig out some of the patent numbers if you are interested, or you could look at the Java player itself. And there are many press articles and features to get information from.

PS Given the number of people who have seen FORlive from this page and not proposed deletion, I'd prefer at least one other person to express an opinion before we establish a consensus to delete. Does this seem reasonable? Stephen B Streater 09:06, 22 May 2006 (UTC)

[edit] FORlive

Someone asked for some details of FORlive, so I've written some down below. Stephen B Streater 22:30, 20 May 2006 (UTC)

[edit] Overview

FORlive is a real time video codec. It is designed to compress live video for playback on remote computers, near-live, over the web - without requiring any software upgrades on the watching PCs or the web server. The real time player runs on typical PCs and Macs at up to 384x288 pixels, 25 fps for PAL, or 320x240 pixels, 30fps for NTSC.

FORlive was launched at IBC in September 2004 by Forbidden Technologies plc. It is notable for being the first widely viewed live streaming Java player, with the example page below alone receiving around 1,000,000 hits per month since 2004.

[edit] Implementation

All fetches are simple HTTP requests, so the video can be served from a standard webserver. The player is implemented in Java to ensure that Windows, MacOS and Linux computers can play back the latest version of the player without installation. Although not all computers have Java installed, for several years it has been installed as standard by major manufacturers, and the latest versions have been available as free downloads from Sun. The datarate is set at compression time and three simultaneous bitstreams are produced: "modem", "midband" and "broadband" - the average datarates and image sizes are set on the compression machines, which run Debian Linux. The "modem" and "midband" bitstreams are dynamically interchangeable by the player, which senses the datarate as it reads in files and adjusts the fetches to accommodate available bandwidth.

The compressor is easy to install: it can be plugged into a camera, the mains electricity and an ethernet port connected to the internet, and then automatically uploads live video to a webserver where it can be viewed from almost any computer in the world with internet access.

[edit] Codec details

The requirements for a real time software compressor / Java player combination covering a wide range of bandwidths and player CPU speeds place some contraints on the computational complexity available to the codec. It operates on the YUV levels directly, and does not use transforms such as DCT or wavelets, to ensure computational efficiency. The compression has two stages - a filter stage to remove noise from the source data (particularly required for cheap cameras with composite outputs) followed by a data compression / bitstream output stage.

The image is split into 2x2 blocks, and each block is treated as a single unit. Uniform blocks are encoded at 6 bits Y, and bilinearly interpolated to 8bpp on playback to give a smooth result. Non-uniform blocks are quantised and encoded using 5bpp. Colour is compressed as UV components, also quantised, but unlike Y values, these are quantised in a non-linear way to reflect the human visual system.

Apart form an initial key frame at the start of each block, only deltas are encoded.

2x2 block deltas are effectively Huffman encoded, though significant improvements over a naïve Huffman encoding are achieved by, instead of using one static Huffman table, using thousands of Huffman tables to allow the most relevant one to be chosen when each codeword is encoded/decoded, and re-evaluating the Huffman tables thousands of times per second. To allow this rapid dynamic reappraisal of the data environment, exact Huffman tables are not used, but close approximations are used instead.

The FORlive codec is covered by several patents in the UK, US, Japan and Europe.

[edit] Example of FORlive in action

You can see an example of the FORlive codec here. This demo runs off a $100 PAL composite security camera, and has been running round the clock since 2004, except for brief intermissions for upgrades. As of May 2006, the current version has run non-stop for 14205010 seconds (see Java console) ie 164 days.

Stephen B Streater 22:30, 20 May 2006 (UTC)

[edit] FORtune

Someone asked for some details of FORtune, so I've written some down below. Stephen B Streater 22:36, 20 May 2006 (UTC)

[edit] Overview

FORtune is a real time audio codec. It is designed to compress live audio for playback on remote computers, near-live, over the web - without requiring any software upgrades on the watching PCs or the web server. The audio datarate can be varied from 8kb/s to 80kb/s per channel.

[edit] Implementation

All fetches are simple HTTP requests, so the audio can be served from a standard webserver. The player is implemented in Java to ensure that Windows, MacOS and Linux computers can play back the latest version of the player without installation. FORtune can be run in conjunction with FORlive, where the video and the audio play back in sync.

[edit] Example of FORtune in action

You can see an example of the FORtune audio codec here.

Codec details to follow. Stephen B Streater 22:36, 20 May 2006 (UTC)

[edit] Some codec details

The FORtune audio codec splits the audio into sections of around 10ms. These are then converted into frequency space and quantised. The FORtune codec takes into account how loud the sound is at any point to give a constant signal:noise ratio. The audio is compressed using a similar dynamic Huffman-like compression to the FORlive video, to take into account the type of sound at any point.

The player can play back on integer only CPUs such as the ARM widely used in mobile phones. A freely downloaded mobile phone application, FORmobile[1] (currently being used by the British Army [2]), is available for playing back video/audio using an integer-only ARM implementation of the audio player (and an integer-only video player).

If the audio is being played in conjunction with video, for example with the FORlive streaming video codec or the FORscene[3] video editing codec, it is seamlessly resynched every frame to ensure the video and audio can play over any period of time without slipping out of sync.

The Java implementation of the FORtune audio codec takes a few percent of the available CPU time on typical PCs, and is negligible compared with the CPU taken to play full frame rate video on the same machine. Stephen B Streater 15:10, 21 May 2006 (UTC)

[edit] Reliable sources

FORscene has its own article now, and I'm wondering what sort of places count as reliable sources for codec information. There's quite a lot which could be said. FORscene has two codecs, Blackbird and Impala, for video and audio (see above) but the trade publications in FORscene's market are more interested in workflow in the professional post-production industry than in technical details of compression. What publications do the other codecs draw from? Stephen B Streater 09:12, 19 June 2006 (UTC)

Some sources I've used or seen used are:
Standards documents are often the authoritative source by definition, and source code is inherently verifiable in that you can compile it and test it. So I tend to cite these for factual accuracy even though they can be difficult to understand. Patents can be cited, especially if the company makes a claim regarding patents, however I tend to avoid them for technical content since people will claim all sorts of things in patents which they never actually use. Press releases are good for historical context, but sometimes you have to read between the lines, because companies will say things which are misleading (such as the realvideo/clearvideo situation). Independant testing is very important, but this does tend to inspire controversy. I think hydrogenaudio's methodology is fair, but you can never please everybody. You do have to be careful though since some companies (such as Microsoft) are infamous for paying for "independent tests" that only show the results they want shown. Some companies outright lie (such as Nero's claim of "CD quality stereo at 48 kb/s" and other nonsense.) So in general I'm very skeptical of press releases, except to confirm that a certain product was announced on a certain date. If you can get first-hand statements from the people directly involved (on blogs, mailing lists) that's generally pretty good. --Mcoder 10:43, 20 June 2006 (UTC)