A stream recorder is a computer program used to save data streams to a file. This type of program is most often used to save audio or video streaming media. The process is sometimes referred to as destreaming.
Approaches
There are different approaches that are used by the software to make the recording, depending on which stage of the process one taps into. In order, they are:
In some cases, it is possible to download the stream as a file, by going to the right address. Simplest is if the stream is served by simply requesting it, just as web pages are, as in an HTTP GET request: this will directly copy the encoded, streamed file. In this case, one simply needs to determine the URL, and then download that, either by pasting it into one's web browser, or via a specialized download manager. Notable implementations of this approach include:
Adblock Plus, in which the list of blockable content includes requested URLs
Some streaming is not via a simple HTTP request to an URL – in this case, to capture the stream requires some understanding and implementation of the particular streaming protocol, either: ;passively / offline: capturing the actual traffic and extracting it, or ;actively / online: implementing the streaming protocol / program enough to request the encoded data. This can vary greatly in difficulty. If the protocol is not public, or there are various access controls or digital rights management implemented, this can involve substantial reverse engineering. Alternatively, one can hack an existing client to use the existing streaming extraction, and direct it to save the encoded stream, rather than decoding it. In any case, there may be legal issues, depending on jurisdiction. Adobe's RTMP is an example of a proprietary protocol for which no full public implementations exist. Thus capturing media encapsulated in RTMP streams is more difficult than from HTTP streams. However, nowadays there are more than a dozen programs that can download and capture RTMP streams; they are available for a variety of operating systems. Implementing a custom client program to perform the request is generally difficult. It requires significant reverse-engineering of the request protocol, which may require decryption. However, if the hosted media are not available via a standard protocol, this may be the only way to capture the stream.
Decoded capture
An approach used to get around that problem is to record the decoded information at the end level, such as the information that is being passed to the video and sound card of the computer. This is essentially capturing what the user is watching or listening to directly from the screen, and can be likened to recording off the air – in this regard it is analogous to the analog hole. This solution makes it possible to record anything the user is able to view or listen to, regardless of original format or restriction, though it suffers from a loss in quality due to re-encoding. Indeed, as a last measure, one can in fact exploit the analog hole and use an analog recorder, though this suffers most from quality degradation.
Evaluation
In terms of functionality, software varies largely in which formats it can record and in what quality:
URL Snooping is high-quality and easy, but not always available.
Encoded capture is high-quality and can always ultimately be done, but is often very difficult and software is unavailable.
Decoded capture is general-purpose, but lowest quality.
Legality
The Recording Industry Association of America has taken stances against websites that are, in particular, used to rip content from YouTube, citing that their use to download music from the website and convert them to audio formats constitutes a violation of their members' copyrights. The RIAA has targeted various stream ripping websites under the anti-circumvention provisions of the U.S. Digital Millennium Copyright Act, under its claim that a "rolling cipher" used by YouTube to generate the URL for the video file itself constitutes a technical protection measure, since it is "intended to inhibit direct access to the underlying YouTube video files, thereby preventing or inhibiting the downloading, copying, or distribution of the video files". Unlike the more common forms of takedowns performed under the Online Copyright Infringement Liability Limitation Act, there is no scheme of counter-notices for such takedowns. These actions have faced criticism, noting that there are legitimate uses for these services beyond ripping music, such as downloading video content needed to utilize one's right to fair use, or explicit rights of reuse granted by a content creator.