We've expanded our news coverage and improved our search! Visit news.oreilly.com for the latest or search for all things across O'Reilly!
advertisement

Article:
  Schedule HackTV with iCal
Subject:   Correction
Date:   2005-11-12 20:47:29
From:   GT-DVR
Response to: Suggestions...

25 GB of uncompressed Digital Video w/Sound = approx. 2 hours recording time
Full Threads Oldest First

Showing messages 1 through 2 of 2.

  • Erica Sadun photo Correction
    2005-11-12 20:52:32  Erica Sadun [Reply | View]

    Actually DV *is* a compressed format. (5:1 if I recall correctly.)
    Also, this article predates the QuickTime recording features suggested here.
    • Compressing DV Video to a smaller size.
      2005-11-14 19:11:41  GT-DVR [Reply | View]

      Thanks for your input!

      Also if you are intererested in compressing DV down further (25:1) you can export to MPEG4 with H264 Video and AAC audio. Below is an applescript that will do this for you. Be sure to edit the in and out folders at the beginning of the script. This can be scheduled via iCal as well. I run mine when I am not using my computer. After recompressing the movie to MPEG4, it will automatically move the old files to the trash and empty it. It is designed to be self sufficient. If this is not desired, you can comment it out. Below is the Script:

      -- Export to H264 MP4 Post Process
      -- Change path to your own location.
      -- path must exist.
      -- aka GT-DVR Trash Compactor
      -- GT-DVR 2005 v1.02
      -- added multi file export support
      -- Requires Quicktime Pro 7 & Tiger 10.4.x

      global mov_counter

      -- Path to write MP4 files

      set hd_path to "MIRAGE:MP4_SHOWS:GT-DVR_" -- Enter your own Out Folder on your Hard drive (out folder)

      -- Original Path were you keep your movies, it will attempt to trash after converting to save disk space
      set org_hd_path to "MIRAGE:TV_SHOWS" -- enter your own Hard drive path (in folder)

      -- Make sure a Movie is Ready to Compress
      try
      tell application "Finder"
      set all_movies to every file of folder org_hd_path
      set mov_counter to count of all_movies
      end tell

      repeat with next_movie from 1 to mov_counter
      tell application "QuickTime Player"
      open item next_movie of all_movies
      end tell
      end repeat
      on error errMsg
      display dialog errMsg
      end try


      repeat with next_movie from 1 to mov_counter
      set get_name to getName(next_movie)
      tell application "QuickTime Player"
      activate
      --display dialog next_movie
      try
      if not (exists movie next_movie) then error "No movies are open."

      stop every movie

      -- get the name of the movie
      set the movie_name to the name of movie next_movie
      set the new_file to (hd_path & get_name)
      -- export the movie as MPEG4 H264 Video Format using LAN/Intranet Setting
      export movie next_movie to file new_file as MPEG4 using settings preset "LAN/Intranet"
      --close movie next_movie -- not good for multi files
      on error error_message number error_number
      if the error_number is not -128 then
      beep
      --display dialog error_message buttons {"Cancel"} default button 1
      end if
      end try
      end tell

      -- Trash export movie based on org_hd_path location
      set trash_me to org_hd_path & ":" & movie_name
      tell application "Finder"
      try
      move file trash_me to trash
      end try

      end tell
      end repeat

      -- clean up, save some HD space for future recordings
      tell application "Finder"
      tell application "QuickTime Player" to quit
      delay 2

      try
      empty trash
      end try
      end tell
      -- Return a name for the file based on current date & time
      on getName(next_movie)
      set datewords to words of ((current date) as string)
      set rstring to (item ((month of (current date)) as integer) of {"01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"})
      set rstring to rstring & (((day of (current date)) as integer) as string)
      set rstring to rstring & next_movie -- added "next_movie #" to make sure each movie name is unique, otherwise the script likes to skip
      set rstring to rstring & item 5 of datewords & item 6 of datewords & item 8 of datewords & ".mp4"
      return rstring
      end getName