Drop the -ac 6 from that, or you will find some movies won't work (any movie that has more than 2 but not exactly 6 channels will break.. since I assume your system can easily play 4 channel, or 7.1 channel inputs, there's no reason to try and force everything to 6-channel). Without -ac 6, ffmpeg will just default to keeping whatever were the number of channels in your original movie

Dropped the -ac param altogether, as suggested. Seems to be working great. Thanks Yoav.

First, I am a long time user of pyTivo, tivostream, kmttg, and now Streambaby. My wife, family, and I would like to thank krkeegan, moyekj, wmcbrine, wgw, and kearygriffin for all of their hard work on these programs.

This is by no means a feature request, but I just want to know if it is technically possible for Streambaby to support metadata and the ability to read commercial cut marks while streaming without requiring the actual "cut" step.

This is by no means a feature request, but I just want to know if it is technically possible for Streambaby to support metadata and the ability to read commercial cut marks while streaming without requiring the actual "cut" step.

metadata support is pretty easy, assuming you are simply talking about having the helper .txt file with same name as video file being streamed. tivostream already supported that (info included all that information) albeit the text display of information was very lousy - I never had much incentive to clean that up.
Similarly reading a helper ascii file with identified commercial cut points (such as comcut can produce for example) would be technically pretty easy to do as well. However I have yet to find a very precise automatic commercial detection program and prefer to cut out commercials myself with a video editor.

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

I did not flame anyone, use abusive language, or denigrate any aspect of the product except as it relates to its suitability for my needs. Even then I did not disparage the software for the fact, merely reported it in a calm, even tone.

Quote:

Originally Posted by Yoav

Dude, you don't like it. Don't use it. The pause-rebuffer thing is a workaround for the fact that the current tivo software will not allow a streaming buffer bigger than 1.1G.

I am aware of that. I was aware of it with tivostream.

Quote:

Originally Posted by Yoav

This is a workaround for larger files.

I am aware of that, as well. I never said it wasn't a valiant effort, or that the software coding left anything to be desired. We're working under an extremely severe limitation, here, and I applaud the effort to circumvent it.

Quote:

Originally Posted by Yoav

If you absolutely can't stand it, you can do one of three things:

1) Convince the tivo coders to increase the buffer in an upcoming release.

That's going to have to happen (or something with the same end result), one way or another, before streaming will be truly practical on the TiVo. That, or H.264 downloading needs to be enabled.

Quote:

Originally Posted by Yoav

2) Use a non-streaming application like pytivo.

I do just that. Currently, such applications cannot download H.264 content to the Tivo except by transcoding, which defeats half the reason for coding as H.264.

Quote:

Originally Posted by Yoav

3) Make sure your movies are smaller when you encode.

First of all, I don't encode them, so there's no way for me to make sure of anything. Secondly, there is no way a 3 hour, 20 Gig, high bandwidth 1080i HD movie can be re-encoded to below 1.1G with acceptable PQ, MPEG 4 or not. By re-coding to H.264, I might reasonably be able to manage 10 or 12G, but nowhere near 1.1G.

Then streaming is not for you (at least while this 1.1GB limitation exists).

Which I believe is precisely what I said in my post.

Quote:

Originally Posted by moyekj

This is a step up compared to other HME streamers that simply can't play beyond the 1st buffer full point.

True. It's just not quite a large enough step for my needs.

Quote:

Originally Posted by moyekj

Short of help from Tivo at this point it's going to be hard to discover how to overcome this 1.1GB buffer limitation. Fairly sure there is a way since Netflix/Tivo is able to overcome it (perhaps by turning off buffering on Tivo completely).

Also true. I have temporarily alleviated the storage crunch on my video server by installing more drives in the RAID array. At some point, however, I would like for storage efficiency to increase via the abilities of H.264 encoding. What's more, storage space is only half the battle. With MPEG 2 streams sometimes exceeding the capabilities of the TiVo to transfer from the server in real time, one is faced with either starting the transfer beforehand, or encountering pauses throughout the program.

Ok, quick and dirty instructions for running streambaby though Galleon (this was on Ubuntu, so for Windows users YMMV):

- copy all the jar files from streambaby's jbin and lib directories to galleon's hme directory
- copy the streambaby.ini file to galleon's bin directory and edit as you wish
- add the following line to launcher.txt in the hme directory (it took me a while to figure this part out):

keary ... very nice work! I like having the ability to change the app name in the menu (works) and specify passwords (haven't tried yet).

One small request: hide directories that start with a dot (or make this a configurable setting like the extension hide). My video library has .meta directories containing the meta information files for pyTiVo. I don't really need those to show up in streambaby's menus.

Works great! MacBook 10.5.x was streaming MP4 output from iMovie with no problems. Although the framerate appeared to be a bit off.. could just be my eyes at this time of night.

Quote:

Originally Posted by Yoav

Hmm.. *IF* you're ok with trying out beta-level software, go to the pytivox download page at http://code.google.com/p/pytivox/downloads/list and download the latest beta (1.1b2). This has the 0.17 streambaby in there, and you can choose to use pytivo, streambaby, or both. Keep in mind you can only stream to a tivo 3 / HD.

Tell me if things seem broken (I'll try and figure out if it's a bug in pytivox or streambaby, and if so, forward it up the chain).

Ah, to bluehz and ajayabb ... make sure you've added the following line to wrapper.conf (under Galleon's conf directory):

Code:

wrapper.java.classpath.4=/usr/share/galleon/hme/*.jar

(replacing /usr/share/galleon with the location of Galleon on your own machine). So the section near the top should look like this:

Code:

#JmDNS needs to be first, it replaces the older version in hme-host-sample-1.4.jar
wrapper.java.classpath.2=/usr/share/galleon/lib/jmdns-1.0.jar
wrapper.java.classpath.3=/usr/share/galleon/lib/*.jar
wrapper.java.classpath.4=/usr/share/galleon/hme/*.jar

I always forget I've added that. After doing that, restart Galleon. If that works for you two I'll update my instructions accordingly.

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Ah, to bluehz and ajayabb ... make sure you've added the following line to wrapper.conf (under Galleon's conf directory):

Code:

wrapper.java.classpath.4=/usr/share/galleon/hme/*.jar

(replacing /usr/share/galleon with the location of Galleon on your own machine). So the section near the top should look like this:

Code:

#JmDNS needs to be first, it replaces the older version in hme-host-sample-1.4.jar
wrapper.java.classpath.2=/usr/share/galleon/lib/jmdns-1.0.jar
wrapper.java.classpath.3=/usr/share/galleon/lib/*.jar
wrapper.java.classpath.4=/usr/share/galleon/hme/*.jar

I always forget I've added that. After doing that, restart Galleon. If that works for you two I'll update my instructions accordingly.

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Similarly reading a helper ascii file with identified commercial cut points (such as comcut can produce for example) would be technically pretty easy to do as well. However I have yet to find a very precise automatic commercial detection program and prefer to cut out commercials myself with a video editor.

Thanks for the info!

Would it be safe to assume that once the stream hit one of these commercial cut points that the "skip" would be instant as long as the next starting point was in the current buffer? I would expect to see the "please wait" if it was after the buffer point.

This probably wouldn't be so much of an issue because the "skip" wouldn't be so far ahead that the buffer wouldn't be there.

I used to have this functionality using a program called "GB-PVR". It is my understanding that it operated like you described, reading a file with cut points generated from comskip/comcut programs.

Would it be safe to assume that once the stream hit one of these commercial cut points that the "skip" would be instant as long as the next starting point was in the current buffer? I would expect to see the "please wait" if it was after the buffer point.

This probably wouldn't be so much of an issue because the "skip" wouldn't be so far ahead that the buffer wouldn't be there.

I used to have this functionality using a program called "GB-PVR". It is my understanding that it operated like you described, reading a file with cut points generated from comskip/comcut programs.

Thoughts?

I *believe* you're gonna have to make the 'skip' happen on the streambaby side (so on the tivo, it would believe that this is just a normal movie -- its just what it gets is already cut up).. As it is reading the file, it is going to have to serve up the cut-up stream. I don't believe ffmpeg (the program that is currently used to re-encode movies) supports edit lists (mencoder does, but I think ffmpeg doesn't). I also think that the streaming program is supposed to indicate how long the movie is when queried, which gets a little messier if there are cut lists. Finally, simple cuts generally cause audio/video sync issues. So a bunch of re-encoding would probably have to be done...

Anyways, these are just guesses of mine. Not claiming any of this is impossible, but that it's not a trivial 'add this flag' change.

Is there a reason you prefer to save the original movie plus an edit list instead of just saving the editted movie and serving that up?

__________________
Don't pay for Tivo Desktop / Roxio on the mac: To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. and To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts..

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

I think the commercial skipping would be pretty simple implemented something like:
* Before starting playback parse the cut file to find all the time ranges to skip
* Send normal uncut video stream to Tivo
* When commercial cut point is reached simply skip ahead length of commercial. If buffer is long enough then no new stream is needed, else start a new stream if needed.

i.e. It's basically like watching a normal full stream but with periodic automatic jump ahead points.
BTW, this is precisely how ReplayTV automatically skips commercials upon playback (with aid of it's own generated cut file).

Having said all that like I said I would prefer to just cut commercials out myself so wouldn't see much value in this.

I think the commercial skipping would be pretty simple implemented something like:

Interesting. Didn't know that the streamer can tell the tivo where to go in the buffer. Clever

__________________
Don't pay for Tivo Desktop / Roxio on the mac: To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. and To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts..

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

# Maximum size that the log file will be allowed to grow to before
# the log is rolled. Size is specified in bytes. The default value
# of 0, disables log rolling. May abbreviate with the 'k' (kb) or
# 'm' (mb) suffix. For example: 10m = 10 megabytes.
wrapper.logfile.maxsize=5m

# Maximum number of rolled log files which will be allowed before old
# files are deleted. The default value of 0 implies no limit.
wrapper.logfile.maxfiles=5

Ah, I wonder if the classpaths have to be sequential. I see in your wrapper.conf that you don't have a classpath.3 like I do. So try making your hme line classpath.3 instead of .4 and see if that helps.

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Ah, I wonder if the classpaths have to be sequential. I see in your wrapper.conf that you don't have a classpath.3 like I do. So try making your hme line classpath.3 instead of .4 and see if that helps.

Well that fixed the problem. Now for some reason most of my videos files come up as an incompatible files stream yet they streamed fine before without Galleon. I tried to add the extensions in the wiki but it didnt seem to work. Should the extensions be typed as .avi vs avi .?

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

I can't seem to get the password feature to work on a directory... when I specify dir.1.password=roger,tomcat, the folder does not show in streambaby.
Any ideas?

Also, I don't always get sound from my DVD rip VOB files. I added the -ac 6 switch to the ffmpeg.transcode line and it appeared to work. Perhaps this should be the default?

It sounds like at some point you already entered a password into streambaby, and it "remembers' it, so doesn't ask you again. (And its not tomcat or roger, so the folder does not show up.)
Try pressing the clear button on the selection screen. It should re-ask for your password.

Note: I also made a mental note that a couple of people don't want streambaby to remember the password. (The way I use it is different tivo's have access to different folders, so I like it remembering). I'll made a config option in a future version.

I'm also going to remove the -ac parameter completely from the default ffmpeg transcode line, as it seems that has the best results for people.

Thanks for putting this together. This is a fantastic program. I was wondering if there was any plan to support embedded metadata for mp4 files.

Thanks
F

What kind of support are you looking for? Are you talking about (like moyejk was talking about in tivostream) putting more information in the "info" box when info is pressed? (And for that matter, on what I call the "play" screen, the screen that asks if you want to play from beginning or restart from where you left off).

I do have some plans on doing something with pyTivo metadata (and probably some other formats) but it's not on the front burner just at the moment. I could also do MP4 metadata if you point me in the right direction as to what tags/info I could expect to get out of MP4's.

I think that should solve most of the problems reported so far-- The only exceptions being:
-- Audio sync issues w/MP4 videos
-- Possibly issues with green/random blocks at the beginning of MP4 videos

My guess is I am going to have to get my hands on one of the MP4's that exhibit these issues. I haven't seen any of these problems with the MP4's that I have.

Well, obviously I have one of these available. I have no problem with getting one to you, but they're kinda big (400 megs or so). While making a shorter rip could likely still demonstrate the green/random block problem at the beginning, it probably wouldn't be the best example of the audio sync problem (since the offset seems to vary throughout the video).

Well, obviously I have one of these available. I have no problem with getting one to you, but they're kinda big (400 megs or so). While making a shorter rip could likely still demonstrate the green/random block problem at the beginning, it probably wouldn't be the best example of the audio sync problem (since the offset seems to vary throughout the video).

Thanks. If it would be possible to PM me a link or an ftp site (or whatever) that I could grab one of the problematic videos from, that would be great.

Update: This is related to the MP4Streaming module. If I transcode with ffmpeg, I'm getting 6-channel correctly, but for some reason the mp4 module is streaming 2-channel audio instead of 6 channel (and yes, the file has an ac-3 6 channel audio stream).

The 0 channels shouldn't matter, it just means that I am parsing the ffmpeg output incorrectly. Streambaby doesn't actually use that information. If you don't mind posting the output of ffmpeg -i for that video file however, I might as well fix it.

But I have no idea why you would be only getting 2 channels from MP4. The MP4 module shouldn't(?) be messing with that stuff.

A couple of questions:
1) Does the MP4 have more than one audio stream? I've never tested this, and am not sure what will currently happen.
2) Does tivostream get the full surround sound with these files?

Thanks. If it would be possible to PM me a link or an ftp site (or whatever) that I could grab one of the problematic videos from, that would be great.

Heh. I just found out my website is down right now. As soon as they resolve the problem, I'll upload it and PM you the info.

I should note that I just installed 0.19a and may not be seeing a significant audio sync issue now. The green blocks are still there, though. 0.19a crashed on java 1.5 for me as soon as I tried to view an mp4 video; but it seems to be running fine with java 1.6.

The 0 channels shouldn't matter, it just means that I am parsing the ffmpeg output incorrectly. Streambaby doesn't actually use that information. If you don't mind posting the output of ffmpeg -i for that video file however, I might as well fix it.

But I have no idea why you would be only getting 2 channels from MP4. The MP4 module shouldn't(?) be messing with that stuff.

A couple of questions:
1) Does the MP4 have more than one audio stream? I've never tested this, and am not sure what will currently happen.
2) Does tivostream get the full surround sound with these files?

1) I believe it only has one audio stream (sorry, I just tracked down an mp4 to view, my rips are generally mkv's).
2) I have never tried tivostream, so don't know. What I can say for sure is that I can get 6 channel audio from transcoded streams in streambaby.

I truncated the file to 40M and uploaded it here:http://yoav.org/files/test.mp4
It's definitely a 5.1 channel ac-3 audio stream in the source, and yet
when I stream to the tivo, I end up with a 2-channel stream (according to
the amplifier). Other streams that are sent (mkv files that are converted
by streambaby) work as 5.1 fine.

note: can you tell me once you've downloaded the file so I can delete it? Thanks...

__________________
Don't pay for Tivo Desktop / Roxio on the mac: To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. and To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts..

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

What kind of support are you looking for? Are you talking about (like moyejk was talking about in tivostream) putting more information in the "info" box when info is pressed? (And for that matter, on what I call the "play" screen, the screen that asks if you want to play from beginning or restart from where you left off).

I do have some plans on doing something with pyTivo metadata (and probably some other formats) but it's not on the front burner just at the moment. I could also do MP4 metadata if you point me in the right direction as to what tags/info I could expect to get out of MP4's.