title: How to undo youtube changes for an uploaded video
body: <p>When i upload a movie to youtube and then download it from the given link, it is the same movie but the files bites are altered...
  is there a way to undo youtube encoding so the file i upload and the file i downloaded will be 100% the same??</p>
  
  <p>i am downloading using python pytube</p>
  
  <p>Thanks</p>
  
  <pre><code>from pytube import YouTube
  import defines
  # not necessary, just for demo purposes.
  from pprint import pprint
  
  yt = YouTube(defines.url)
  
  # Once set, you can see all the codec and quality options YouTube has made
  # available for the perticular video by printing videos.
  
  pprint(yt.get_videos())
  
  # [&lt;Video: MPEG-4 Visual (.3gp) - 144p&gt;,
  #  &lt;Video: MPEG-4 Visual (.3gp) - 240p&gt;,
  #  &lt;Video: Sorenson H.263 (.flv) - 240p&gt;,
  #  &lt;Video: H.264 (.flv) - 360p&gt;,
  #  &lt;Video: H.264 (.flv) - 480p&gt;,
  #  &lt;Video: H.264 (.mp4) - 360p&gt;,
  #  &lt;Video: H.264 (.mp4) - 720p&gt;,
  #  &lt;Video: VP8 (.webm) - 360p&gt;,
  #  &lt;Video: VP8 (.webm) - 480p&gt;]
  
  # The filename is automatically generated based on the video title.  You
  # can override this by manually setting the filename.
  
  # view the auto generated filename:
  print(yt.filename)
  # Pulp Fiction - Dancing Scene [HD]
  
  # set the filename:
  # yt.set_filename('Dancing Scene from Pulp Fiction')
  
  # You can also filter the criteria by filetype.
  pprint(yt.filter('flv'))
  
  
  print(yt.filter('mp4')[-1])
  # &lt;Video: H.264 (.mp4) - 720p&gt;
  
  # You can also get all videos for a given resolution
  pprint(yt.filter(resolution='480p'))
  
  # [&lt;Video: H.264 (.flv) - 480p&gt;,
  # &lt;Video: VP8 (.webm) - 480p&gt;]
  
  
  
  video = yt.get('3gp', '240p')
  
  # NOTE: get() can only be used if and only if one object matches your         criteria.
  # for example:
  
  pprint(yt.videos)  
  
  video = yt.get('webm')
  video.download('here1.webm')
  </code></pre>