-Uze
uze6666 wrote:For instance, when the TVs menu (and CC caption) overlays the Uzebox image, it periodically jerks a bit every two seconds or so.
Just to be clear, this happens with other uzebox titles and the TV's menu, not just my test app?
You think it's the 262 lines vs 262.5? That would make sense. Because it can't sync properly, the poor thing can't distinguish between odd and even fields. My code doesn't either, so it picks up on the extraneous line 21 data that's being mirrored on the even field.That can be fixed...
uze6666 wrote:So normally the text should be sent only on line 21 of one of the two fields?
This might be a dumb question: can your scope show just the data for line 21? If I could see that, it would be most helpful!
// roll-up captions, 2 rows
/* caption_bytes[0]=148;
caption_bytes[1]=37;
WaitVsync(2); // send the ctrl code twice, (on odd frames)
// channel 1, no underline, white text, row 15
caption_bytes[0]=148;
caption_bytes[1]=224;
WaitVsync(2); // send the ctrl code twice, (on odd frames)
caption_bytes[0]=200; // 'H'
caption_bytes[1]=0xe5; // 'e'
WaitVsync(1);
caption_bytes[0]=0xec; // 'l'
caption_bytes[1]=0xec; // 'l'
WaitVsync(1);
caption_bytes[0]=0xef; // 'o'
caption_bytes[1]=0x2c; // ','
WaitVsync(1);
caption_bytes[0]=0x20; // ' '
caption_bytes[1]=0x57; // 'W'
WaitVsync(1);
caption_bytes[0]=0xef; // 'o'
caption_bytes[1]=0xf2; // 'r'
WaitVsync(1);
caption_bytes[0]=0xec; // 'l'
caption_bytes[1]=0x64; // 'd'
WaitVsync(1);
caption_bytes[0]=0xA1; // '!'
caption_bytes[1]=0xA1; // '!'
WaitVsync(1);
//caption_bytes[0]=CNUL; // NULL
//caption_bytes[1]=CNUL; // NULLPrintCaption( PSTR("Hello, World!!"),0 );Wow, thanks!uze6666 wrote:Woa, awesome demo, we're in the major league now! I think it's ready to spread the news with a youtube video, post on Hack-a-day, Uzebox news and all. Anther first for the thousands year old console!![]()
uze6666 wrote:Much improved API and the compile switch was indeed required. A couple comments/ideas:
- I think you may well use a loop for the bits ouput no? That would reduce flash size for sure.
uze6666 wrote:
- To avoid blocking, why not have a small "stack" to allow queuing many messages in the background? Only the pointers to the strings would need to be put on the queue.
uze6666 wrote:[*]Define and use special characters in the strings themselves similar to \n: like \i to switch to italics, \c0x34 for colors, etc. Another could be used for vsync delays.[/list]
Cool, whenever you get a chance. FWIW, captioning requires an active data stream be sent out at all times, even if it's just NUL bytes. Having both fields enabled on my demo *should* make it so that either field looks the same for NUL's...uze6666 wrote:I will try to get a scan, but that will go after the holidays, too busy right now. Also I will have to find a way to trigger the capture on a specific frame.
Thanks! Right back at ya!uze6666 wrote:In any case, great work! Happy holidays and a happy new year!
Users browsing this forum: No registered users and 0 guests