TiVo Community
TiVo Community
TiVo Community
Go Back   TiVo Community > Main TiVo Forums > TiVo Home Media Features & TiVoToGo
TiVo Community
Reply
Forum Jump
 
Thread Tools
Old 02-11-2009, 12:51 PM   #421
rfryar
My Media, My Way
 
Join Date: Feb 2008
Location: Cottage Grove, MN
Posts: 206
Quote:
Originally Posted by kearygriffin View Post
IF isEpisodic and we have a seriesTitle and we have an episodeTitle
-- Use "seriesTitle - episodeTitle"
else if we have a title:
-- use title:
else if we have a seriesTitle:
-- use seriesTitle:
else if we have episodeTitle
-- use episodeTitle
In the meta section I would put something like this:
Code:
  <xsl:choose>
      <xsl:when test="@isEpisode">
        <xsl:choose>
          <xsl:when test="@seriesTitle and @episodeTitle">
            <xsl:value-of select="@seriesTitle"/>-<xsl:value-of select="@episodeTitle"/>
          </xsl:when>
          <xsl:when test="@episodeTitle">
            <xsl:value-of select="@episodeTitle"/>
          </xsl:when>
          <xsl:when test="@seriesTitle">
            <xsl:value-of select="@seriesTitle"/>
          </xsl:when>
          <xsl:when test="@title">
            <xsl:value-of select="@title"/>
          </xsl:when>
          <xsl:otherwise>
            Default Title Here??
          </xsl:otherwise>
        </xsl:choose>
      </xsl:when>
      <xsl:when test="@title">
        <xsl:value-of select="@title"/>
      </xsl:when>
      <xsl:otherwise>
        Default Title Here??
      </xsl:otherwise>
      <xsl:text>&#xD;&#xA;</xsl:text>
  </xsl:choose>
That flow does mostly what you commented on.

Rick

Last edited by rfryar : 02-11-2009 at 12:56 PM. Reason: code block
rfryar is offline   Reply With Quote
Old 02-11-2009, 02:36 PM   #422
jmemmott
Registered User
 
Join Date: Jul 2003
Location: Santa Cruz, CA
Posts: 393
Quote:
Originally Posted by moyekj View Post
P.S. In case you missed it Keary released closed captioned capability in 0.22beta. So if you have file.xxx and an accompanying T2Sami file.srt file then by default captions will be enabled and displayed. You can toggle captions on/off using "Aspect" button. It works surprisingly well if the T2Sami file is generated properly.

I want to thank both of you for doing this. I downloaded the 0.22 beta when it was put up and have been playing with the captioning since. You are right that it works surprisingly well - much better than I had anticipated. Good work on your part!

I am in the process of making changes to the t2sami desktop to simplify user workflow to support this. So far I have used DVDs and mpegs as source and H.264 and mpegs as output. These permutations are now working well in my development version as are .tivo files that t2sami downloads and processes directly. I have a few permutations to go : unprocessed .tivo and .mkv input files and SD/HD output. When I am satisfied with the new code, I will put out another t2sami build.

In the meantime, if you are having problems with the captions generated by specific video clips, contact me. I will likely need a short piece of the video around the trouble spot to locate the specific cause but I am interested in cleaning up any problems that are occuring.
jmemmott is offline   Reply With Quote
Old 02-11-2009, 03:47 PM   #423
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 9,058
Quote:
Originally Posted by jmemmott View Post
In the meantime, if you are having problems with the captions generated by specific video clips, contact me. I will likely need a short piece of the video around the trouble spot to locate the specific cause but I am interested in cleaning up any problems that are occuring.
Thanks very much for you work on t2sami, I'm still impressed how quickly it works. While trying to generate captions from different sources (.TiVo and .mpg) for testing purposes I did have some trouble with some files. I can remember one clearly was a DVD rip of one of Star Wars episodes where for some reason the .srt file generated had some garbage towards the front and then off sync for the rest. I also ran into at least one .TiVo file that has proper captions but could not get a good .srt file out of it. I'll have to see if I can dig out those cases and make short clips out of them to send you.
I did hesitate to try generating .srt files from mpeg2 files that I had done editing on to remove commercials, as I'm not sure how well VideoRedo and/or Womble mpeg video Wizard are at preserving proper caption data when editing files. If you happen to know about that your opinion is appreciated.
__________________
Roamio Pro, Elite, Premiere
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

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.
moyekj is offline   Reply With Quote
Old 02-11-2009, 04:12 PM   #424
jmemmott
Registered User
 
Join Date: Jul 2003
Location: Santa Cruz, CA
Posts: 393
I have not used Womble so I can't comment on it but I use VideoReDo for all of my own Tivo editing. I have also had occasion to help them with captioning problems so I know that not only does it does work well but they are also committed to seeing that it continues to do so. The only issue is that the captions are offset from the a/v because they have to arrive early to be composed into displayable text that is kept in sync. Near a cut point, you can therefore gain or loose a few characters or control commands you don't expect.

The underlying problem with the captions is that no one looks at the stream except the captioning hardware and it is very good at cleaning everything up before it is displayed. As a result there is no incentive for the broadcast stations or studios to to clean anything up and garbage gets left in the stream from one edit to the next. Couple this with the tendancy of analog broadcasts to loose or scramble part of the data and strange things happen. That is why I usually need clips - accurate error recovery is the principal issue.
jmemmott is offline   Reply With Quote
Old 02-11-2009, 04:23 PM   #425
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 9,058
OK thanks jmemmott. One last question if you don't mind (please excuse my ignorance about captions in general). With current method we are using there is no caption position information in the generated .srt file and therefore no choice but to display captions at a fixed screen position. When viewing captions normally via Tivo I've seen captions change positions so as not to interfere with other critical viewing data. So any reason not to extract position information with t2sami? (maybe there already is a way and if so forgive my ignorance).
__________________
Roamio Pro, Elite, Premiere
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

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.
moyekj is offline   Reply With Quote
Old 02-11-2009, 05:21 PM   #426
jmemmott
Registered User
 
Join Date: Jul 2003
Location: Santa Cruz, CA
Posts: 393
Quote:
Originally Posted by moyekj View Post
OK thanks jmemmott. One last question if you don't mind (please excuse my ignorance about captions in general). With current method we are using there is no caption position information in the generated .srt file and therefore no choice but to display captions at a fixed screen position. When viewing captions normally via Tivo I've seen captions change positions so as not to interfere with other critical viewing data. So any reason not to extract position information with t2sami? (maybe there already is a way and if so forgive my ignorance).
It harkens back to the origins of these file formats. Closed captioning has always carried positioning information. This is not so much to get it out of the way but to get it near a point of reference : the captions for a specific speaker can be positioned near the speaker to make viewing a little easier. This does require an editor to position it near the speaker but not on top of anything important on a scene by scene basis. Since the television resolution was fixed and low resolution a 16 row x 32 column igrid could be used to locate the lower left corner of the caption for this process. Closed caption file formats that capture this information do exist but they are typically binary files used only by CC editing programs.

Subtitles were added to movies as an after thought and on DVDs are seperate video tracks. Typically they are shown at the bottom or below the movie. Early programs for converting them such as SubRip (.srt) were OCR programs that worked against just the subtitle tracks and therefore had no positioning information to work with. As a result even when positioning attributes are included as part of the file format, they have never been widely supported.

Newer file formats that have arisen from computer video such as substation alpha (ssa/ass) and timed text (ttxt ) do have positioning information but because they must work across a range of resolutions 320x240 ==> 1920x1080 they get a little complicated to use, especially if you want to run the video through ffmpeg to change resolution on the fly.

So - it can be done but it would take some standards work up front to get a meaningful set of coordinates first. I hadn't pursued it earlier because there was no way to use this information except in the form of embedded closed captions which I already preserved.
jmemmott is offline   Reply With Quote
Old 02-11-2009, 08:00 PM   #427
Sicklybutsexy
Registered User
 
Join Date: May 2007
Posts: 179
the captioning works very well in my testing so far. I had two mkv files mpeg4/iso/avc that worked well with the .srt files. Great work!
Sicklybutsexy is offline   Reply With Quote
Old 02-11-2009, 08:55 PM   #428
windracer
joined the 10k club
 
windracer's Avatar
 
Join Date: Jan 2003
Location: St. Pete, FL
Posts: 11,232
Quote:
Originally Posted by kearygriffin View Post
Is there anything after that in the log? That's definitely an error, and streambaby won't be able to parse the metadata from the that file, but I am not sure why it would crash (from looking at the code it should handle it OK, but of course I don't have an easy way to test). What exactly are the symptoms of the crash? (hanging, exiting program, etc...)
Here's what I see in streambaby.log when I turned on Verbose:
Code:
02/12/09 02:50:57 VideoModuleHelper: GetVidInfo: file:/mnt/media/Video/Movies/Pans%20Labyrinth.avi
02/12/09 02:50:58 FFmpegJavaVideoModule: vidDur:7132132
02/12/09 02:50:58 FFmpegJavaVideoModule: VideoInfo:
uri: file:/mnt/media/Video/Movies/Pans%20Labyrinth.avi, Container: avi, Duration: 7132.132 seconds
Video: UNK 528x288 23.976 fps
  PixAspect: 1.0, Aspect: 1.8333334
Audio: mp3 48000HZ 2 channels
It can't be the UNK on the video line because I see that for other videos that work fine.

Could be related to my recent re-build of ffmpeg, I suppose ...
__________________
840~Roamio Pro (TA, MoCA) + two A92~Minis, 758~Premiere XL4 (TA, MoCA)
S/old: 746~S4, 658~HDXL, 648~OLED S3, 565~TX20, 230~S2, 140~S2

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.
windracer is offline   Reply With Quote
Old 02-11-2009, 09:47 PM   #429
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Quote:
Originally Posted by rfryar View Post
In the meta section I would put something like this:
Code:
  <xsl:choose>
 ...
 ...
  </xsl:choose>
That flow does mostly what you commented on.

Rick
Thanks Rick. I haven't had a chance to put it into the stylesheets, but this looks perfect, and I'll put it in shortly.
kearygriffin is offline   Reply With Quote
Old 02-12-2009, 10:44 PM   #430
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Streambaby 0.23beta

Just put up new version, 0.23beta:
http://code.google.com/p/streambaby/

This is mainly a release to fix a couple of bugs:
-- Should fix issue some people (windracer for one) are having with MP4 metadata parsing
-- Should fix occasional issues with crashing while determining video information

Also implements rfryars XSLT changes to parse pytivo title information, so episodic shows should have the correct title.
kearygriffin is offline   Reply With Quote
Old 02-12-2009, 11:08 PM   #431
jannlinder
Registered User
 
Join Date: Oct 2004
Location: San Jose, CA
Posts: 106
Quote:
Originally Posted by kearygriffin View Post
Just put up new version, 0.23beta:
http://code.google.com/p/streambaby/
Also implements rfryars XSLT changes to parse pytivo title information, so episodic shows should have the correct title.
Thx for the PyTivo fixes (regarding episodic TV...)

But one tiny little tiny bitty thing...

The "title" still shows up in the folder listing for the program. Anyway to put the same xsl fix in the listing for individual files so that the title does not show but the "title - episode name" shows?

TIA

J
jannlinder is offline   Reply With Quote
Old 02-12-2009, 11:25 PM   #432
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Quote:
Originally Posted by jannlinder View Post
Thx for the PyTivo fixes (regarding episodic TV...)

But one tiny little tiny bitty thing...

The "title" still shows up in the folder listing for the program. Anyway to put the same xsl fix in the listing for individual files so that the title does not show but the "title - episode name" shows?

TIA

J
That should be fixed in this version as well (hopefully). The old name is probably just cached-- Try deleting cache/meta.cache and then restarting streambaby.
kearygriffin is offline   Reply With Quote
Old 02-12-2009, 11:29 PM   #433
jannlinder
Registered User
 
Join Date: Oct 2004
Location: San Jose, CA
Posts: 106
Quote:
Originally Posted by kearygriffin View Post
That should be fixed in this version as well (hopefully). The old name is probably just cached-- Try deleting cache/meta.cache and then restarting streambaby.

er, I did. In addition i hit ENTER on the screen showing the filenames and it said "One moment please" and came up with the title again.

ps: I just updated the xsl files. Did i need to update to .23 to get the actual fix? The xsl files fixed the description screen so it shows the episode names.
jannlinder is offline   Reply With Quote
Old 02-12-2009, 11:38 PM   #434
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 9,058
Quote:
Originally Posted by kearygriffin View Post
-- Should fix issue some people (windracer for one) are having with MP4 metadata parsing
Thanks Keary, that fix appears to have solved the hanging issue I was having with MP4 parsing, so I no longer have to set meta.mp4.disable=true

However now if I hit "Enter" in file browser node in one of my folders the application crashes (appears to be on one of the .mp4 files). Here's the relevant debug log section right before crash:
Code:
02/12/09 21:42:49 FFmpegJavaVideoModule: vidDur:8303872
02/12/09 21:42:49 FFmpegJavaVideoModule: VideoInfo:
uri: file:/c:/home/dvd/testing/star_wars2.mp4, Container: mp4, Duration: 8303.872 seconds
Video: h264 720x480 29.97 fps
  PixAspect: 1.0, Aspect: 1.5
Audio: ac3 48000HZ 2 channels
02/12/09 21:42:49 Listener:
02/12/09 21:42:49 Listener: connection to receiver closed
02/12/09 21:42:49 Listener:
02/12/09 21:42:49 Factory: HME receiver disconnected
02/12/09 21:42:49 Listener:
02/12/09 21:42:49 Listener: Unexpected error: java.lang.NegativeArraySizeException
No big deal BTW, just thought I would report it.
P.S. As expected, if I set meta.mp4.disable=true then it no longer crashes so it's pretty clear the mp4 metadata parsing is where the issue is.
__________________
Roamio Pro, Elite, Premiere
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

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.

Last edited by moyekj : 02-12-2009 at 11:49 PM.
moyekj is offline   Reply With Quote
Old 02-12-2009, 11:45 PM   #435
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Quote:
Originally Posted by Yoav View Post
+1 vote for higher resolution!!

Also, would it make sense to change the following defaults:
ffmpegexe.transcode.sameqargs=-sameq -ab 384k
quality.highestabr=384
quality.highres=1080

192 for audio is pretty low, and I suspect most HD's out there by now are 1080?
I forgot to comment on this before. I'll definitely think about adding the 384k to the sameq args.

First, changing quality.highres without changing quality.highestvbr to something higher than the default (which is 5000 by default) is probably problematic also, as ffmpeg will start to complain if the resoultion is too high and the bitrate too low.

But I am assuming you want the VBR increased by default as well. I guess my initial thoughts were if you want high quality, use "Same". If you are using the other quality settings, you are always reducing the quality, so the highest settings shouldn't be that high.

I guess I prefer to have a lower "highest" setting so that I can have more granularity in the bitrates. By setting it higher, each step (highest/high/medium-high,etc..) gets bigger. I may not be a good example of how most people are using streambaby, but I often am accessing it over-the-internet, so I like to have control so I can keep stepping down the bitrate until I find the highest bitrate that works without pausing.

Keary
kearygriffin is offline   Reply With Quote
Old 02-12-2009, 11:51 PM   #436
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Quote:
Originally Posted by jannlinder View Post
er, I did. In addition i hit ENTER on the screen showing the filenames and it said "One moment please" and came up with the title again.

ps: I just updated the xsl files. Did i need to update to .23 to get the actual fix? The xsl files fixed the description screen so it shows the episode names.
Yes, you need to update. The XSL only affects what is displayed on the play screens. The title on the selection screen is actually generated inside the code itself. (I'll probably end up changing this at some point so it grabs the title from the XSL, but haven't gotten around to it yet)

And I also just checked the code, and after you update to 0.23 just pressing ENTER should update the cache with the new titles, with no need to delete meta.cache (At least that's what it looks like from reading the code, but if it doesn't seem to work please do delete the cache file and see what happens)
kearygriffin is offline   Reply With Quote
Old 02-12-2009, 11:55 PM   #437
jannlinder
Registered User
 
Join Date: Oct 2004
Location: San Jose, CA
Posts: 106
Quote:
Originally Posted by kearygriffin View Post
Yes, you need to update. The XSL only affects what is displayed on the play screens. The title on the selection screen is actually generated inside the code itself. (I'll probably end up changing this at some point so it grabs the title from the XSL, but haven't gotten around to it yet)

Okay, I will have to wait until Yoav builds another beta of PyTivoX then.

(I haven't asked Yoav if i can simply replace the streambaby dir inside the package with the newer streambaby dir that you package up and have it work)

Thx for the hard work -- we all appreciate it.

Becoming VERY spouse - friendly now. My husband is actually actively using it to watch American Idol back to back.. I know ... a grown man of 45-ish watching Idol. Stinks since I can hear it too when he watches it!
jannlinder is offline   Reply With Quote
Old 02-12-2009, 11:57 PM   #438
Yoav
Registered User
 
Join Date: Jan 2007
Posts: 1,048
Quote:
Originally Posted by jannlinder View Post
(I haven't asked Yoav if i can simply replace the streambaby dir inside the package with the newer streambaby dir that you package up and have it work)
Quick answer: Yes you can manually replace it in the package and things *should* work (I can't speak for the future, but for this release, yes it will work).

That said, I do have a build compiling right now.. so it should be up soon if you don't want to mess with the bundle, and it will include a newer ffmpeg/x264 (those guys are ALWAYS checking in changes... wow).
__________________
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.
Yoav is offline   Reply With Quote
Old 02-13-2009, 12:04 AM   #439
jannlinder
Registered User
 
Join Date: Oct 2004
Location: San Jose, CA
Posts: 106
Quote:
Originally Posted by Yoav View Post
Quick answer: Yes you can manually replace it in the package and things *should* work (I can't speak for the future, but for this release, yes it will work).

That said, I do have a build compiling right now.. so it should be up soon if you don't want to mess with the bundle, and it will include a newer ffmpeg/x264 (those guys are ALWAYS checking in changes... wow).
Yoav, you and kearygriffin are great! Being a programmer myself it is nice to see you both watching the boards. I know it takes a lot of time to both program and answer people's questions!

thx

(anxiously awaiting b17)



J

Last edited by jannlinder : 02-13-2009 at 12:05 AM. Reason: spelling of kearygriffin's handle
jannlinder is offline   Reply With Quote
Old 02-13-2009, 12:09 AM   #440
Yoav
Registered User
 
Join Date: Jan 2007
Posts: 1,048
Quote:
Originally Posted by jannlinder View Post
(anxiously awaiting b17)
Your wait is over!

(seriously though, keary's doing the actual work... I'm just compiling and bundling.. not really very hard to do .
__________________
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.
Yoav is offline   Reply With Quote
Old 02-13-2009, 12:33 AM   #441
jannlinder
Registered User
 
Join Date: Oct 2004
Location: San Jose, CA
Posts: 106
ummm

Streambaby crash!

Code:
Thu 2009/02/12 22:28:35.252|   |Acceptor|VideoModuleHelper|GetVidInfo: file:/Volumes/NFS_WD1TBRAID0/iTunes/iTunes%20Music/TV%20Shows/Reba/Season%2001/Reba%20-%20S01S01%20-%20Deleted%20Scenes%20-%201.m4v
Assertion failed: (sc->time_offset % sc->time_rate == 0), function mov_build_index, file libavformat/mov.c, line 1236.
hlp!

This is when I hit enter on that file list to get it to recache title - episodeName

ps: This file does NOT use the pytivo .txt file. i am assuming it is dying during the mp4 metadata read.

TIA

J
jannlinder is offline   Reply With Quote
Old 02-13-2009, 12:58 AM   #442
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Quote:
Originally Posted by jannlinder View Post
ummm

Streambaby crash!

Code:
Thu 2009/02/12 22:28:35.252|   |Acceptor|VideoModuleHelper|GetVidInfo: file:/Volumes/NFS_WD1TBRAID0/iTunes/iTunes%20Music/TV%20Shows/Reba/Season%2001/Reba%20-%20S01S01%20-%20Deleted%20Scenes%20-%201.m4v
Assertion failed: (sc->time_offset % sc->time_rate == 0), function mov_build_index, file libavformat/mov.c, line 1236.
That actually looks like it is inside the FFmpeg MP4 handling code, and it looks like relatively new code....

The only thing I can do is stop using ffmpeg to gather any kind of metadata (I do my own MP4 parsing anyway, but ffmpeg still returns some valid metadata like name/author/etc for some file formats that streambaby doesn't parse internally) I think I will end up doing this since it slows things down considerably anyway...

This will only fix the crash during the metadata gathering stage-- it will still crash when you try to play that particular movie.
kearygriffin is offline   Reply With Quote
Old 02-13-2009, 06:53 AM   #443
manacubus
Registered User
 
Join Date: Feb 2009
Posts: 15
Hopefully this is the right place to post this one small query...

Could anyone enlighten me ot the possible cause of this error?

Code:
02/13/09 22:48:20 ViewScreen: ReceivedEvent: 3019.RESOURCE_INFO(connecting, {speed=0, start=0, position=0, duration=0})
02/13/09 22:48:20 ViewScreen: ReceivedEvent: 3019.RSRC_STATUS(error)
02/13/09 22:48:20 ViewScreen: error=ERROR: 0x2e006a
Thanks for any assistance.
manacubus is offline   Reply With Quote
Old 02-13-2009, 03:13 PM   #444
windracer
joined the 10k club
 
windracer's Avatar
 
Join Date: Jan 2003
Location: St. Pete, FL
Posts: 11,232
Quote:
Originally Posted by kearygriffin View Post
-- Should fix issue some people (windracer for one) are having with MP4 metadata parsing
Hmmmm ... while it works for that sample 8mb file I sent you, I'm still running into the 0x50006 error on some MP4 files. I see in the log:
Code:
20:53:51,117  INFO [Acceptor] AppHost - Unexpected error: java.lang.NullPointerException
Even if I use meta.mp4.disable=true the files still cause the crash.
__________________
840~Roamio Pro (TA, MoCA) + two A92~Minis, 758~Premiere XL4 (TA, MoCA)
S/old: 746~S4, 658~HDXL, 648~OLED S3, 565~TX20, 230~S2, 140~S2

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.
windracer is offline   Reply With Quote
Old 02-13-2009, 04:27 PM   #445
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Streambaby 0.24

I just put up Streambaby 0.24 (I've dropped the beta tag not because I don't consider it a beta, but because they are all pretty much betas, and this makes it easier to release versions like 0.24a, 0.24b when I fix small problems)

http://code.google.com/p/streambaby/

This release is really to solve a couple of problems:
1) To fix jannlinders issue with ffmpeg crashing while generating metadata, ffmpeg is no longer used to generate metadata info (by default, there is a setting to reenable it). This also has the side effect of speeding up metadata retrieval.
2) More/better exception handling in the MP4 metadata section, so even if the MP4 metadata fails/throws an exception, execution should continue.

Also note that for issue #1, the problem is only solved for metadata generation. My guess is that when you are trying to play the actual video file with the problem, streambaby may still abort on you. The problem is more recent ffmpeg versions have an assert in the mp4 code that may trigger on certain videos. If the assert does trigger, it will probably bring streambaby down with it.

Windracer: Not sure if either of these will fix the issue you are having, but I'd be interested in having you give it a shot.
-- Also if you can try the new version without galleon, it may give more detailed debugging when it crashes.

Last edited by kearygriffin : 02-14-2009 at 12:14 AM.
kearygriffin is offline   Reply With Quote
Old 02-13-2009, 08:44 PM   #446
windracer
joined the 10k club
 
windracer's Avatar
 
Join Date: Jan 2003
Location: St. Pete, FL
Posts: 11,232
Quote:
Originally Posted by kearygriffin View Post
Windracer: Not sure if either of these will fix the issue you are having, but I'd be interested in having you give it a shot.
-- Also if you can try the new version without galleon, it may give more detailed debugging when it crashes.
Ok, I still get the crashes, and here's the debug output:
Code:
02/14/09 02:28:59 Listener: java.lang.NullPointerException
        at com.unwiredappeal.tivo.views.BScrollableText$TivoStringLength.stringLength(BScrollableText.java:75)
        at com.unwiredappeal.tivo.utils.WordWrap.next(WordWrap.java:44)
        at com.unwiredappeal.tivo.utils.WordWrap.split(WordWrap.java:74)
        at com.unwiredappeal.tivo.views.BScrollableText.createTextViews(BScrollableText.java:96)
        at com.unwiredappeal.tivo.views.BScrollableText.validate(BScrollableText.java:56)
        at com.unwiredappeal.tivo.views.SBScrollPanePlus.refresh(SBScrollPanePlus.java:130)
        at com.unwiredappeal.tivo.views.BScrollableText.setValue(BScrollableText.java:66)
        at com.unwiredappeal.tivo.streambaby.MetaDataViewer.getView(MetaDataViewer.java:37)
        at com.unwiredappeal.tivo.streambaby.PlayScreen.<init>(PlayScreen.java:82)
        at com.unwiredappeal.tivo.streambaby.SelectionScreen.moveRight(SelectionScreen.java:252)
        at com.unwiredappeal.tivo.streambaby.SelectionScreen.handleKeyPress(SelectionScreen.java:287)
        at com.tivo.hme.sdk.HmeObject.handleEvent(HmeObject.java:115)
        at com.tivo.hme.bananas.BView.handleEvent(BView.java:217)
        at com.tivo.hme.bananas.BScreen.handleEvent(BScreen.java:146)
        at com.tivo.hme.sdk.View.postEvent(View.java:684)
        at com.tivo.hme.sdk.View.postEvent(View.java:686)
        at com.tivo.hme.sdk.View.postEvent(View.java:686)
        at com.tivo.hme.sdk.View.postEvent(View.java:686)
        at com.tivo.hme.bananas.BApplication.dispatchKeyEvent(BApplication.java:196)
        at com.tivo.hme.bananas.BApplication.dispatchEvent(BApplication.java:159)
        at com.tivo.hme.bananas.BApplicationPlus.handleChunk(BApplicationPlus.java:187)
        at com.unwiredappeal.tivo.streambaby.host.Listener.readEvents(Listener.java:339)
        at com.unwiredappeal.tivo.streambaby.host.Listener.handleHME(Listener.java:316)
        at com.unwiredappeal.tivo.streambaby.host.Listener.handle(Listener.java:417)
        at com.tivo.hme.host.http.server.HttpConnection.run(HttpConnection.java:123)
        at java.lang.Thread.run(Thread.java:619)
StringLength? Ahhh .. maybe my metadata files have too much in them?

... back after researching ...

I think I'm on to something. The files that are "crashing" have strange characters in their metadata file. I think they're supposed to be accented characters and stuff, but MetaGenerator created them "weird." For example, there's a line in my 300.avi.txt meta file:
Code:
vActor : Frédéric Smith
But even after I "clean" the file removing all those characters, then clearing streambaby's cache and starting again, the file will still cause a crash (same error). If I remove the metadata file altogether, I can get into the details screen of the file (without metadata, obviously) and play it. So it's not the actual video file, but the corresponding metadata file causing the crash.

To fix the file, I had to copy/paste the text (after removing the offending characters) into a brand new file and then save over the original. Then I was able to get to the details screen and see the metadata. I guess I'll just need to "rebuild" my offending metadata files as I find them.

Hope this helps! Some sort of Unicode vs. ASCII thing?

edit: that was definitely it: every file that "crashes" that I've found has had some sort of weird characters in the metadata file. Once I clean them out and re-save the file, it works again.
__________________
840~Roamio Pro (TA, MoCA) + two A92~Minis, 758~Premiere XL4 (TA, MoCA)
S/old: 746~S4, 658~HDXL, 648~OLED S3, 565~TX20, 230~S2, 140~S2

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.

Last edited by windracer : 02-13-2009 at 08:54 PM.
windracer is offline   Reply With Quote
Old 02-14-2009, 08:44 AM   #447
rfryar
My Media, My Way
 
Join Date: Feb 2008
Location: Cottage Grove, MN
Posts: 206
Quote:
Originally Posted by windracer View Post
MetaGenerator created them "weird." For example, there's a line in my 300.avi.txt meta file:
Code:
vActor : Frédéric Smith
What program are you using to open up the meta data .txt files. Those look like Unicode characters opened in a ISO-8859-1 mode (US English). So several possibilities come to my mine.

1) MetaGenerator saved Unicode data but did not mark the file as Unicode
2) The file is correctly marked as Unicode but the editor you opened them with does not support Unicode files

I actually think it is the second option as that would explain why you need to create a new file to "fix" the issue even after you remove the "bad" data.

So the action for StreamBaby is to ensure that it reads the files from te file system as Unicode (or perhaps UTF-8). There is an option in Java to force loading the file as UTF-8, which would not harm anything even if the file is just in US-English.

Rick
rfryar is offline   Reply With Quote
Old 02-14-2009, 11:48 AM   #448
jlbarr
Registered User
 
Join Date: Mar 2008
Posts: 2
Is it possible to list files with series titles in episode order like pytivo?
jlbarr is offline   Reply With Quote
Old 02-14-2009, 12:02 PM   #449
kearygriffin
Registered User
 
Join Date: Jan 2008
Posts: 346
Quote:
Originally Posted by rfryar View Post
...
2) The file is correctly marked as Unicode but the editor you opened them with does not support Unicode files

I actually think it is the second option as that would explain why you need to create a new file to "fix" the issue even after you remove the "bad" data.

So the action for StreamBaby is to ensure that it reads the files from te file system as Unicode (or perhaps UTF-8). There is an option in Java to force loading the file as UTF-8, which would not harm anything even if the file is just in US-English.
It's a straight txt file, so there is no way to "mark" the file as either UTF-8 or straight latin. However, it looks like I should be treating it as UTF-8 (and more than likely I am not). I am assuming that when you transfer one of these files back to the TiVo the description gets transferred back correctly? (So the funny characters come out correctly when the metadata is returned to the TiVo).

There are probably a couple of changes I need to make to fix this:
1) Treat pyTivo txt files as UTF-8. Shouldn't do any harm even if file is not really UTF-8.
2) Handle the situation (which is what is currently causing the crash, although #1 may fix this, I should probably handle it better) where TiVo tells me it can't calculate the characters width. I'll probably have to strip out the offending characters to make this work, but I am hoping that with fix #1 above, there won't be any more offending characters.

I'm hoping I won't have issues with character set translation goes as far as mapping goes. This is how the TiVo builds it's widths table:

char c = (char)readInt();
map.put(new Character(c), widthInfo);

I have no idea how Java deals with character sets when casting from an int to char. I'm hoping that as long as I get the character set mapping on my side correct, that:

map.get(new Character(c))

will return what I am expecting.
kearygriffin is offline   Reply With Quote
Old 02-14-2009, 12:20 PM   #450
windracer
joined the 10k club
 
windracer's Avatar
 
Join Date: Jan 2003
Location: St. Pete, FL
Posts: 11,232
Quote:
Originally Posted by rfryar View Post
What program are you using to open up the meta data .txt files.
I'm using the Unicode version of Notepad++ and it shows UTF-8 at the bottom when I open the metadata file but the characters are still messed up. However, I did just notice that when I copy/paste the text into a new file, it defaults to ANSI and that's when the file works through streambaby. So it is the UTF-8 encoding.

I never noticed these before, but I checked through pyTiVo and they're being displayed just like they appear in the file:



So this is probably a MetaGenerator "problem" originally, but it causes the encoding/string length problem with streambaby.
__________________
840~Roamio Pro (TA, MoCA) + two A92~Minis, 758~Premiere XL4 (TA, MoCA)
S/old: 746~S4, 658~HDXL, 648~OLED S3, 565~TX20, 230~S2, 140~S2

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.
windracer is offline   Reply With Quote
Reply
Forum Jump




Thread Tools


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Advertisements

TiVo Community
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
vBulletin Skins by: Relivo Media

(C) 2013 Magenium Solutions - All Rights Reserved. No information may be posted elsewhere without written permission.
TiVo is a registered trademark of TiVo Inc. This site is not owned or operated by TiVo Inc.
All times are GMT -5. The time now is 04:42 AM.
OUR NETWORK: MyOpenRouter | TechLore | SansaCommunity | RoboCommunity | MediaSmart Home | Explore3DTV | Dijit Community | DVR Playground |