Stream recorder
Encyclopedia
Stream recorder, also called a stream ripper, is a computer program
capable of saving a data stream
– particularly streaming media
such as encoded music or video – to a file, instead of playing it right away. The process is sometimes referred to as destreaming.
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
(location box or "Open location..."), or via a specialized download manager
.
Implementations of this approach include:
passively / offline: capturing the actual traffic and extracting it (via deep packet capture
, using a packet sniffer
), 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 control
s 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 (Real Time Messaging Protocol
) 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 is not available via a standard protocol (such as HTTP), this may be the only way to capture the stream.
This is essentially capturing what you are watching or listening to directly from the screen, and could be likened to recording off the air with a microphone – it is analogous to the analog hole
.
This solution makes it possible to record anything that you are able to view or listen to, regardless of original format or protection, though it suffers from a loss in quality (digital generation loss) due to re-encoding.
Indeed, as a last measure (if one does not control the platform, as in some implementation of digital rights management
, such as Trusted Computing
), one can in fact exploit the analog hole
and use an analog recorder (video camera or microphone), though this suffers most from quality degradation.
Computer program
A computer program is a sequence of instructions written to perform a specified task with a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute...
capable of saving a data stream
Data stream
In telecommunications and computing, a data stream is a sequence of digitally encoded coherent signals used to transmit or receive information that is in the process of being transmitted....
– particularly streaming media
Streaming media
Streaming media is multimedia that is constantly received by and presented to an end-user while being delivered by a streaming provider.The term "presented" is used in this article in a general sense that includes audio or video playback. The name refers to the delivery method of the medium rather...
such as encoded music or video – to a file, instead of playing it right away. 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:URL snooping
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
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...
(location box or "Open location..."), or via a specialized download manager
Download manager
A download manager is a computer program dedicated to the task of downloading possibly unrelated stand-alone files from the Internet for storage...
.
Implementations of this approach include:
- URL SnooperURL SnooperURL Snooper is a Windows program to find URLs of streaming media and data. This allows streamed files download through every download manager. Its scope is the same as that of a stream recorder. It uses Winpcap for packet capturing.- External links :**...
- Coojah
- Grab++
- In Adblock Plus, the list of blockable content includes requested URLs
- Various websites.
Encoded capture
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 (the encoded media stream is encapsulated within a network stream), either:passively / offline: capturing the actual traffic and extracting it (via deep packet capture
Packet capture
Packet capture is the act of capturing data packets crossing a computer network. Deep packet capture is the act of capturing, at full network speed, complete network packets crossing a network with a high traffic rate...
, using a packet sniffer
Packet sniffer
A packet analyzer is a computer program or a piece of computer hardware that can intercept and log traffic passing over a digital network or part of a network...
), 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 control
Access control
Access control refers to exerting control over who can interact with a resource. Often but not always, this involves an authority, who does the controlling. The resource can be a given building, group of buildings, or computer-based information system...
s or digital rights management
Digital rights management
Digital rights management is a class of access control technologies that are used by hardware manufacturers, publishers, copyright holders and individuals with the intent to limit the use of digital content and devices after sale. DRM is any technology that inhibits uses of digital content that...
implemented, this can involve substantial reverse engineering
Reverse engineering
Reverse engineering is the process of discovering the technological principles of a device, object, or system through analysis of its structure, function, and operation...
. 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 (Real Time Messaging Protocol
Real Time Messaging Protocol
Real Time Messaging Protocol was initially a proprietary protocol developed by Macromedia for streaming audio, video and data over the Internet, between a Flash player and a server...
) 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 is not available via a standard protocol (such as HTTP), this may be the only way to capture the stream.
Decoded capture
An approach that is used that gets 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 you are watching or listening to directly from the screen, and could be likened to recording off the air with a microphone – it is analogous to the analog hole
Analog hole
The analog hole is a fundamental and inevitable vulnerability in copy protection schemes for noninteractive works in digital formats which can be exploited to duplicate copy-protected works that are ultimately reproduced using analog means...
.
This solution makes it possible to record anything that you are able to view or listen to, regardless of original format or protection, though it suffers from a loss in quality (digital generation loss) due to re-encoding.
Indeed, as a last measure (if one does not control the platform, as in some implementation of digital rights management
Digital rights management
Digital rights management is a class of access control technologies that are used by hardware manufacturers, publishers, copyright holders and individuals with the intent to limit the use of digital content and devices after sale. DRM is any technology that inhibits uses of digital content that...
, such as Trusted Computing
Trusted Computing
Trusted Computing is a technology developed and promoted by the Trusted Computing Group. The term is taken from the field of trusted systems and has a specialized meaning. With Trusted Computing, the computer will consistently behave in expected ways, and those behaviors will be enforced by...
), one can in fact exploit the analog hole
Analog hole
The analog hole is a fundamental and inevitable vulnerability in copy protection schemes for noninteractive works in digital formats which can be exploited to duplicate copy-protected works that are ultimately reproduced using analog means...
and use an analog recorder (video camera or microphone), 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.
See also
- Comparison of streaming media systemsComparison of streaming media systemsThis is a comparison of streaming media systems. A more complete list of streaming media systems is also available.-General:The following tables compare general and technical information for a number of streaming media systems both audio and video...
- Comparison of video servicesComparison of video servicesThe following tables compare general and technical information for a number of notable video hosting services. Please see the individual products' articles for further information...
- Digital televisionDigital televisionDigital television is the transmission of audio and video by digital signals, in contrast to the analog signals used by analog TV...
- Internet radioInternet radioInternet radio is an audio service transmitted via the Internet...
- Internet televisionInternet televisionInternet television is the digital distribution of television content via the Internet...
- IPTVIPTVInternet Protocol television is a system through which television services are delivered using the Internet protocol suite over a packet-switched network such as the Internet, instead of being delivered through traditional terrestrial, satellite signal, and cable television formats.IPTV services...
- List of music streaming services
- List of streaming media systems
- MulticastMulticastIn computer networking, multicast is the delivery of a message or information to a group of destination computers simultaneously in a single transmission from the source creating copies automatically in other network elements, such as routers, only when the topology of the network requires...
- P2PTVP2PTVThe term P2PTV refers to peer-to-peer software applications designed to redistribute video streams in real time on a P2P network; the distributed video streams are typically TV channels from all over the world but may also come from other sources...
- Protection of Broadcasts and Broadcasting Organizations TreatyProtection of Broadcasts and Broadcasting Organizations TreatyThe WIPO Protection of Broadcasts and Broadcasting Organizations Treaty or the Broadcast Treaty is a treaty designed to afford broadcasters some control and copyright-like control over the content of their broadcasts...
- Push technologyPush technologyPush technology, or server push, describes a style of Internet-based communication where the request for a given transaction is initiated by the publisher or central server...
- Software as a serviceSoftware as a ServiceSoftware as a service , sometimes referred to as "on-demand software," is a software delivery model in which software and its associated data are hosted centrally and are typically accessed by users using a thin client, normally using a web browser over the Internet.SaaS has become a common...
- Streaming mediaStreaming mediaStreaming media is multimedia that is constantly received by and presented to an end-user while being delivered by a streaming provider.The term "presented" is used in this article in a general sense that includes audio or video playback. The name refers to the delivery method of the medium rather...
- WebcastWebcastA webcast is a media presentation distributed over the Internet using streaming media technology to distribute a single content source to many simultaneous listeners/viewers. A webcast may either be distributed live or on demand...
- Web televisionWeb televisionWeb television, also commonly referred to as web TV, not to be confused with WebTV, Internet television or catch up TV, is an emerging genre of digital entertainment that is distinct from traditional broadcast television...
Stream recording software
- Net TransportNet TransportNet Transport is a shareware download manager and stream ripper for Windows made by Xi Software.The company also develops FTP Transport, which is included with Net Transport.-External links:** from *...
(shareware) - Orbit DownloaderOrbit Downloader-External links:* * at Download.com* at Softonic.com...
(adware) - DownloadStudioDownloadStudioDownloadStudio is a shareware download manager and download accelerator developed and published by Conceiva.DownloadStudio can download files, programs, images, documents PDF, Flash files, entire Websites, FTP sites, streaming audio and streaming video from the Internet.DownloadStudio has been...
(shareware) - Screamer RadioScreamer RadioScreamer Radio is a freeware-licensed internet radio client with recording abilities. It is able to play back streams using WMA, MP3, Ogg Vorbis or AAC streams and can also record these into several formats...
- StationRipperStationRipperStationRipper is a commercial Microsoft Windows software program developed by Ratajik Software. It acts as a front end for several other pieces of software, with a focus on recording and downloading music, including: Shoutcast streams, Web based stations like Last.fm and Pandora.com, and...