Page 4 of 8 FirstFirst ... 23456 ... LastLast
Results 46 to 60 of 113

Thread: AVI/MPEG/VOB upload to TiVo - is it possible to generate ty from MPG?

  1. #46
    Join Date
    Mar 2002
    Posts
    1,339
    *shrug

    digital circuitry isn't difficult, lego's for grownups. google will turn up lots of sites with examples of stepper motor controllers, serial & parallel i/o or slink info

    http://www.nirvis.com/slinke_specs.htm

    http://www.insflug.org/slink/hardware/DIY/parallel/

    managing a disk changer is pretty much the same as an old-old-old style tape changer, on which there's TONS written. lotta my CS/EE classes assigned those type projects. the sw is really just a basic database & rebuilding / debugging scrapped tape mechanisms is good hands on experience


    my first changer project (when I was like 11) was built around a commodore floppy drive which had it's own ram and the same 6502 cpu as the vic-20. the 5.25 drive was the "high-speed" cache which buffered access to a rack of audio tapes which were physically changed by one of those plastic radio shack robot arms.

    the FIRST first changer project used a sears home stereo 8-track recorder run off the ti-99. there was no auto-load mechanism though, hadda do that by hand. the ti-99a became the brain running the robot arm for the commodore changer
    ---
    Give a man a fish and he will eat for a day. Teach a man to fish and he will sit in a boat all day and drink beer

  2. #47
    Join Date
    Aug 2003
    Posts
    86
    Quote Originally Posted by rc3105
    I replaced the audio mechanism in 400 disk sony cd changers with sony dvd rw drives, each rev is an improvement over the last, built 3 so far. they're currently run off usb->ide adapters from gentoox on an xbox & a usb -> serial adapter forwards commands to atmel at90s2313-10 ($2 in bulk, same chip as in dtv card programmers, the tivo ir controller + lots of hobby projects) which manages the actuall disk load / change mechanism

    I've got 1200 dvd slots of near-line storage & ~30 gig of proxy cache in the xbox. the interface is a variation on mfs_ftp, it appears to the rest of the network as a 6tb ftp server. (haven't filled all the slots yet)

    last batch of bulk dvd-rw was about $0.65 each == $0.13/gig == $11 for 80 gig


    all sorts of interesting things here that may or may not ever see the light of day - if the tbservers were allready ***** proof I'd be selling them through 9th tee

    Okay, I'm glad Riley took my trollish bait and owned up on what I was sure was awesome hack! A gambit, to be sure.

    However, I lost all hope of replicating it when he spilled the details. I'd have better results teaching my dog to press the appropriate buttons on command than to try to put together such a device.

    "Ginger, 1-3-1, please. No, 1-three-1. Good dog!"

  3. #48
    Join Date
    Jan 2003
    Posts
    388
    If someone could write an indexer like tyindex for mpeg2 files, I should be able to write a utility that would combine the index file and mpeg into a fully functional ty file.

  4. #49
    Join Date
    Feb 2003
    Posts
    411
    Quote Originally Posted by rc3105
    /tvlib/tcl/tv/file-to-recording.tcl

    shows you how to use ele2pestriple
    I read file-to-recording.tcl, but don't really understand it. If you've got a few minutes, hours or days would you explain the correct procedure to transfer the video file (.mpg, .avi, or m2a m2v) onto the Tivo and the proper syntax for encoding the file using ele2pestriple. If your really bored,and have the time an example would be great.
    Thanks,
    mikey

  5. #50
    Join Date
    Mar 2002
    Posts
    1,339
    Code:
    #!/tvbin/tivosh
    #
    # This script takes the elementary audio and video components of a TyStream
    # (such as created by vsplit) in the Unix filesystem, copies these two files
    # into the MFS and makes a TyStream. It then makes a NowShowing program
    # entry so that you can watch it!
    #
    # Someone (who?) wrote most of this. Warren just added the bit to
    # copy the Unix files into the MFS.
    #
    source $tcl_library/tv/mfslib.tcl
    
    #
    # Usage
    # 
    proc Usage {} {
        puts {Usage: file-to-recording filename MFSname title time duration}
        puts {   Filename is the Unix filename without .mpv or .mpa}
        puts {   MFSname is the MFS filename with no slashes}
        puts {   title is a single word, or a phrase in double quotes}
        puts {   time is the start time: seconds since midnight tonight, e.g 0}
        puts {   duration is in seconds, e.g 3600}
        exit
    }
    
    proc RecordMovie {unixPath mfsPath} {
        global env
        set TIVO_ROOT $env(TIVO_ROOT)
        if {[RetryTransaction {catch {mfs find $mfsPath}}]} {
          puts "Recording $unixPath to $mfsPath ..."
          exec $TIVO_ROOT/tvbin/ele2pestriple $unixPath.mpv $unixPath.mpa $mfsPath
        } else {
          puts "MFS movie $mfsPath already exists."
          exit
        }
    }
    
    #
    # I do not use the regular RetryTransaction because I do not like the fact
    # it adds a puts in the middle if a transaction fails
    proc MyRetryTransaction { body } {
        global errorInfo errorCode
     
        while { 1 } {
            set code [catch {transaction {uplevel $body}} string]
            if { $code == 0 } {
                return $string
            } elseif { $code == 1 } {
                if { $errorCode == "errTmActiveLockConflict" ||
                     $errorCode == "errTmBackgroundHoldoff" ||
                     $errorCode == "errFsLockConflict" } {
                    after 100
                    # retry the transaction
                    continue
                }
                return -code error -errorinfo $errorInfo -errorcode $errorCode $string
            } elseif { $code == 2 } {
                return -code return $string
            } elseif { $code == 3 } {
                return -code break $string
            } elseif { $code == 4 } {
                return -code continue $string
            }
        }
    }
    
    
    
    #
    # Main Part
    #
    
    if {$argc != 5} { Usage }
    
    set today [expr [clock seconds] / 86400]
    set now   [expr [clock seconds] % 86400]
    set date $today                    ;# days since 1970
    
    set filename    [lindex $argv 0]
    set path        [lindex $argv 1]
    set title       [lindex $argv 2]
    set startTime   [lindex $argv 3]
    set duration    [lindex $argv 4]
    
    
    #
    # Copy the file over to an MFS tystream
    #
    RecordMovie $filename  /Recording/$path
    
    # Get a handle to the database
    set db [dbopen]
    
    # Create a recording object (with a bogus showing) that
    # holds the stream file, and unlink it from its old location.
    # (If it's not unlinked, MyWorld will be unable to delete it.)
    
    MyRetryTransaction {
        
        # figure out the fsid
        set info [mfs find /Recording/$path]
        set fsid [lindex $info 0]
        mfs unlink /Recording/$path
        
        # create the recording
        set recording [db $db create Recording]
        dbobj $recording set BitRate 0 ;# obsolete
        dbobj $recording set ErrorString "test recording"
        dbobj $recording set ExpirationDate [expr $today + 2]
        dbobj $recording set ExpirationTime 0 ;# midnight
        dbobj $recording set RecordQuality 100
        dbobj $recording set Score 0
        dbobj $recording set SelectionType 5 ;# explicit timer
        dbobj $recording set StartDate $date
        dbobj $recording set StartTime $startTime
        dbobj $recording set State 4 ;# complete
        dbobj $recording set StopDate $date
        dbobj $recording set StopTime [expr $startTime + $duration]
        
        
        # create a part
        set part [db $db createsub RecordingPart $recording]
        dbobj $part set Begin 0
        dbobj $part set End [expr $duration * 1000]
        dbobj $part set File $fsid
        dbobj $recording add Part $part
        
        
        # create a dummy program
        set program [db $db create Program]
        dbobj $program set Title $title
        
        
        # create a dummy station
        set station [db $db create Station]
        dbobj $station set CallSign "Imported Video"
        dbobj $station set Name     "Ripped!"
        
        # create a showing
        set showing [db $db createsub Showing $recording]
        dbobj $showing set Date $date
        dbobj $showing set Duration $duration
        dbobj $showing set Program $program
        dbobj $showing set Station $station
        dbobj $showing set Time $startTime
        dbobj $recording set Showing $showing
        puts [ dbobj $recording fsid ]
    }
    ele2pestriple does the same thing mplex does - muxes elemental audio/video together - & stores it in mfs instead of a regular disk file
    ---
    Give a man a fish and he will eat for a day. Teach a man to fish and he will sit in a boat all day and drink beer

  6. #51
    Join Date
    Mar 2003
    Location
    Toronto, Ontario
    Posts
    206
    How long does it take to insert a 1GB file using this routine (assuming the file is on the TiVo's hard drive)?

    Do the files have to be in valid TiVo formats -i.e. the video in 720x480 or 480x480 or one of the other resolutions the TiVo uses (for a standalone)? What about the audio - does it have to be at 32k?

    Is it possible to write a version of ele2pestriple for the PC so that all of this file creation could be done on the PC side so that you could then just use mfs_ftp to insert the ty (or tmf) into the TiVo?

    I presume that to use the code posted by Riley you would need a large /var partition (probably up to 8GB assuming that you want to insert a movie) to copy the file into and then do the muxing. Is it easy to change the size of your /var partition or is there another way of doing this?
    2 SA-Series 1 TiVos
    Gateway Connected DVD
    Roll Your Own Canadian Guide Data

  7. #52
    Join Date
    May 2002
    Location
    West Hartford CT
    Posts
    620
    Quote Originally Posted by wkozun
    How long does it take to insert a 1GB file using this routine (assuming the file is on the TiVo's hard drive)?

    Do the files have to be in valid TiVo formats -i.e. the video in 720x480 or 480x480 or one of the other resolutions the TiVo uses (for a standalone)? What about the audio - does it have to be at 32k?

    Is it possible to write a version of ele2pestriple for the PC so that all of this file creation could be done on the PC side so that you could then just use mfs_ftp to insert the ty (or tmf) into the TiVo?

    I presume that to use the code posted by Riley you would need a large /var partition (probably up to 8GB assuming that you want to insert a movie) to copy the file into and then do the muxing. Is it easy to change the size of your /var partition or is there another way of doing this?
    unless you had an NFS mount or samba ... other wize it would seem rather pointless to ftp .m2v & .m2a files over to your tivo to mux/insert - sounds like an analog capture via a SA tivo works MUCH better.
    ~Hi8

    (4) Hughes SD DVR40
    (1) Hughes HR10-250
    (2) xbmc XBOX X2 & xbit

  8. #53
    Join Date
    Mar 2002
    Posts
    1,339
    1a) depends on hard drive speed & how busy the tivo is - generally not the issue though, see #4

    1b) the maximum fsid size in mfs is 512 meg. segment the mpg, demux the segments into elementals, ele2pestriple the elementals into mfs fsids, link all the fsids into one recording

    2) 352*240 through 720*480 have worked fine here with both 32 & 44 audio

    3) possible? sure, however... ele2pestriple was included (accidently?) on 2.x tivos but the source isn't available. it does essentially the same thing as mplex (gpl'd code) so you could tweak that to produce ty

    4) you can change the size of var with pdisk or use mfstool switches during a restore, attach a second drive to the tivo & partition it ext2/fat/whatever, OR just mount a network share into the tivo filesystem
    ---
    Give a man a fish and he will eat for a day. Teach a man to fish and he will sit in a boat all day and drink beer

  9. #54
    Join Date
    Mar 2003
    Location
    Toronto, Ontario
    Posts
    206
    Quote Originally Posted by Hi8
    unless you had an NFS mount or samba ... other wize it would seem rather pointless to ftp .m2v & .m2a files over to your tivo to mux/insert - sounds like an analog capture via a SA tivo works MUCH better.
    But you can't do this with a DVD if it has Macrovision turned on, can you? I guess you could rip the DVD to the hard drive, remove Macrovision, burn to DVD, do the capture.

    Or those of us with Gateway connected DVDs could rip, convert to MPEG-2 and capture the MPEG playback assuming that the player doesn't add Macrovision to MPEG files streamed over your LAN.
    2 SA-Series 1 TiVos
    Gateway Connected DVD
    Roll Your Own Canadian Guide Data

  10. #55
    Join Date
    Mar 2003
    Location
    Toronto, Ontario
    Posts
    206
    Quote Originally Posted by rc3105
    4) you can change the size of var with pdisk or use mfstool switches during a restore, attach a second drive to the tivo & partition it ext2/fat/whatever, OR just mount a network share into the tivo filesystem
    I have thought about running nfs or samba on my TiVo but when I looked into it there seemed to be major stability issues. Do you have either running on your TiVo?
    2 SA-Series 1 TiVos
    Gateway Connected DVD
    Roll Your Own Canadian Guide Data

  11. #56
    Join Date
    Mar 2002
    Posts
    1,339
    get a macrovision filter, disable it in your player or use a player that ignores the macrovision flag (xbox, pc video out, $35 player at bb)

    an mpg -> ty converter is possible and not all that difficult, just seems that anyone with the skills/interest allready has the hardware layin around to do it easier... (no necesity == no invention)
    ---
    Give a man a fish and he will eat for a day. Teach a man to fish and he will sit in a boat all day and drink beer

  12. #57
    Join Date
    Mar 2002
    Posts
    1,339
    Quote Originally Posted by wkozun
    I have thought about running nfs or samba on my TiVo but when I looked into it there seemed to be major stability issues. Do you have either running on your TiVo?
    used to, worked ok. I use ftpfs nowdays
    ---
    Give a man a fish and he will eat for a day. Teach a man to fish and he will sit in a boat all day and drink beer

  13. #58
    Join Date
    May 2002
    Location
    West Hartford CT
    Posts
    620
    ah.. MV humm.. not sure, I didn't think my SA cared? It's been awhile since I tried. Not really a biggy as RC stated, I have many ways to output without it if I want to. Besides if you care enough about taking the time to record via realtime thru analog inputs, a few more minutes running/ripping to HD doesn't seem like a big deal to me.

    Most that extract and burn to DVD-R already know how to if they wish to; make backup copies of a DVD, so the original doesn't get damaged by the kids.

    I always get a chucke by those trying to put things on a TiVo's HD - after all the first hacks to a TiVo were to get more storage for native TiVo recordings! Never intended to be used to move other media/files to it to take up that VALUABLE space! I have enough time to just extract and burn for time shifting, let alone putting other stuff on it!
    ~Hi8

    (4) Hughes SD DVR40
    (1) Hughes HR10-250
    (2) xbmc XBOX X2 & xbit

  14. #59
    Join Date
    Nov 2003
    Posts
    30

    Inserting Mpeg

    Is there any way to insert an mpeg file in a DTivo 3.0?

  15. #60
    Join Date
    May 2002
    Location
    West Hartford CT
    Posts
    620
    Quote Originally Posted by thecoral
    Is there any way to insert an mpeg file in a DTivo 3.0?

    no/yes ...

    discussed MUCH before - search
    ~Hi8

    (4) Hughes SD DVR40
    (1) Hughes HR10-250
    (2) xbmc XBOX X2 & xbit

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •