YTCrack v0.14b
==============
YTCRACK.TXT - Copyright (c) 2011, Fred C. Macall
Overview
YTCrack is a DOS program for extracting "videoplayback" URL(s) from freshly
saved copies of YouTube Web pages. That is, Web pages with URLs like:
http://www.youtube.com/watch?v=VideoIDCode
Beginning with version 0.11b, YTCrack also works with freshly saved copies
of video.google.com Web pages. That is, Web pages with URLs like:
http://video.google.com/videoplay?docid=-1234567890123456789
Beginning with version 0.12b, YTCrack supports the itag=38 video properties
and \uhhhh sequences we've found in Google's YouTube Web pages, since
February or March 2011. (More about these things below.)
Beginning with version 0.14b, YTCrack also supports the itag= 4x, 8x, and
10x video properties we've found in Google's YouTube Web pages, since around
the middle of 2011.
YTCrack produces its result(s) in a relatively small .HTM document or file.
This document exposes anchor(s) or link(s), to the YouTube or video.google
videoplayback URL(s) that YTCrack has extracted from a given YouTube or
video.google Web page copy. This YTCrack result document may be used by a
Web browser, without scripts nor "Flash" support, for downloading the
YouTube or video.google video(s) its anchor(s) identify.
The YouTube and video.google videos we've seen, so far, are .FLV, .MP4, and
.WEB types. (We are using .WEB for .WebM, a relatively new video container
type.) Some of these .MP4 and .WEB offerimgs appear to contain
Side-by-Side SteroScopic 3D (SS3D) videos. Given a suitable video adapter
and fast enough processor, all of these may be viewed with the latest
DOS MPLAYER version. So, the whole process can be accomplished in DOS
without scripts enabled and without Flash support. And, it yields
downloaded video file(s) that don't have to be discovered in and retrieved
from a cache directory.
The video.google Web pages we've seen all carry a single videoplayback URL.
However, the YouTube Web pages we've seen, so far, all carry two, six, or
eight copies of each of three to fifteen unique videoplayback URLs.
That is, a total of 6 to 56 videoplayback URLs! (Before March 2011, we
always saw eight copies of each of three to six unique videoplayback URLs.
Lately, we have been seeing two copies of each of three to fifteen unique
videoplayback URLs.) So, after it has identified these, YTCrack weeds out
all the duplicates -- to save you this effort. The unique videoplayback
URLs remaining are distinguished and identified by their itag=nnn fields.
These itag= values appear to identify each video's resolution and, perhaps,
other characteristics. The itag= values we've seen so far are:
itag= video resolution
value type (w x h) 3D flag
===== ===== ==================
5 FLV 320 x 240
18 MP4 480 x 360
22 MP4 1280 x 720
34 FLV 480 x 360
35 FLV 640 x 480
37 MP4 1920 x 1080
38 MP4 2048 x 1080
43 WEB 480 x 360
44 WEB 640 x 480
45 WEB 1280 x 720
46 WEB 1920 x 1080
82 MP4 480 x 360 SS3D
84 MP4 1280 x 720 SS3D
100 WEB 480 x 360 SS3D
102 WEB 1280 x 720 SS3D
Notes for table: Each itag= value always identifies the video type
indicated above. The itag= values usually, but not quite always, identify
the exact video pixels heights indicated. More often, they don't exactly
idenfify the pixels widths indicated. For example: itag=35 always
identifies an .FLV type video. That video is quite likely to be 480 pixels
high. Its width may be in the range of 640 to 960 pixels.
YTCrack uses no configuration or helper file or program and is intended to
run on 8086/8088 based, and all later, IBM PC compatible PCs. It may need
300 KB to 400 KB of DOS memory, depending on the size of the given YouTube
page. But, it requires only DOS v3.x, or later.
In much of the rest of this document, we'll describe YTCrack's handling of
YouTube and video.google Web pages and videoplayback URLs in common.
In the few places where that isn't appropriate, we'll give details for both
types.
How It Works
YTCrack starts off by checking for a pair of command line parameters that
do not match each other. Finding anything else, it displays its Usage
message and terminates. For the record, this message reads:
Usage: YTCRACK