#73678 - 21/02/2002 10:31
Hijack v201 Released
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Hijack v201 is now available (from the link at top right).
This version features:
Hijack now correctly handles LARGE config.ini files. But please note that the player software does not handle them well: it will read only the tail end of the file, modulo 4096. This means that if your config.ini file is 4097 bytes long, the player software will read only the final byte. This happens whether or not you have Hijack installed. I suppose I might try to add code to nuke all of the non-player stuff from the file to help out the player, but even that would not be simple because the player checks the filesize before computing how much to read. Ugly bug.
non-TCP packets are now allowed on port 8300, which should allow the empeg "find" broadcasts to work even with "disable_emplode=1".
The HOME/WORK menu selections now have nice pretty rounded corners.
Christian Hack's v1.0 DelayTime patch has been added, with slight changes. This is only temporary, as I'm not 100% happy with it yet. But I suppose Christian will fix it up soon now that it's in there. It needs two things: (1) more intuitive interface (a slider?), and (2) much more efficient code in empeg_audio3.c, which is currently a huge CPU hog. But it does work, and it works well! Nice job, Christian!
That's all I've time for at the moment. Got a ton of catching up to do now -- you folks have been very busy for the past week!
Cheers
-ml
|
Top
|
|
|
|
#73679 - 21/02/2002 10:36
Re: Hijack v201 Released
[Re: mlord]
|
enthusiast
Registered: 28/01/2002
Posts: 265
Loc: MI, USA
|
YEA!!!! WOOHOO!!! YIPPEE!!!!
and there was much rejoicing
_________________________
guardian__J MKIIa 20g Smoke
|
Top
|
|
|
|
#73680 - 21/02/2002 11:11
Re: Hijack v201 Released
[Re: mlord]
|
carpal tunnel
Registered: 23/08/2000
Posts: 3826
Loc: SLC, UT, USA
|
Heya Mark, once you done going through the thousands of posts you missed in the past week, could you give what i've written up in the Hijack Faq a once over and see if you spot any mistakes or left out options? Thanks!
|
Top
|
|
|
|
#73681 - 21/02/2002 11:25
Re: Hijack v201 Released
[Re: loren]
|
member
Registered: 19/12/2001
Posts: 108
|
Loren,
One thing I was going to mention about the disable_emplode=1 config.ini setting... You have:
Disallows emplode access completely. Blocks TCP port 8300 (Emplode/Emptool)
NOTE! - if ;@WORK (or other modifier) is left off, you'll have to FTP or revert to older kernal to turn this option off!!
I think that's a little overstated. It doesn't completely block emplode access. Emplode will still work over the serial port, or USB. You wouldn't necessarily have to ftp or revert to an old kernel to turn that off.
Might be better to just say it disables ethernet emplode access.
Chris
|
Top
|
|
|
|
#73682 - 21/02/2002 11:35
Re: Hijack v201 Released
[Re: crocklobster]
|
carpal tunnel
Registered: 23/08/2000
Posts: 3826
Loc: SLC, UT, USA
|
Hrm. I copied that statement over from one of Mark's posts... but it sounds like you'd be correct on that one. Mark?
|
Top
|
|
|
|
#73683 - 21/02/2002 11:45
Re: Hijack v201 Released
[Re: mlord]
|
member
Registered: 19/12/2001
Posts: 108
|
Mark,
Glad to see you're back. I actually started getting antsy and started looking at the source code to see if I could figure out how to support xml output. I see where some of the playlist stuff is built up, and figured I could copy, edit, and paste to get the xml to work. Alas, I couldn't figure out the mechanism for branching the logic for xml. For instance, if I request /fids/101?.xml, I wasn't sure how to make it send back a new structure.
Anyway, I would have loved to do this myself, but since you're back...
When you get a chance, could you take a look at this thread for a pretty complete description of what we're thinking as far as the xml goes?
Let me know if I can be of any help. In fact, if you give me just a hint or two, I might be able to do this myself.
Oh, and while you're thinking about allowing .html files to be downloaded while khhtpd_files=0, maybe .xml and .xslt files too? Actually, maybe a more extensible security model would be cool. In fact, I know it would cool, question is, how much work is it? It would be nice to be able to say what file extensions are allowed / disallowed as well as paths that are allowed / disallowed.
Chris
P.S. I'm visiting PayPal right now
|
Top
|
|
|
|
#73684 - 21/02/2002 12:02
Re: Hijack v201 Released
[Re: loren]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
He's right about that, it only blocks ethernet access to Emplode.
Also:
please use either "hilite" (USA) or "highlight" (English), not "highlite" (neither) in the descriptions.
"supress_notify=1" belongs under "[hijack]", not "[output]"
The countdown timer increment is actually variable, rather than a 15-second constant.. best just to not mention the increment.
The real purposes of "fake_tuner" are (1) to allow people to see what the tuner functionality looks like (display, menus, etc..) before purchasing an expensive tuner module, and (2) to allow use of the "PrevVisual" button translation (coming soon in Hijack), which only works via the tuner interface.
Pressing "4" on the remote will cancel the "CountDown Timer" (with a confirmation tone and popup) if it was already running.
menu_remove will work even for "Home/Work" on the menu.
"rioremote_disabled=1" no longer exists.
"rootdir_dotdot=1" causes '..' to appear in FTP/HTTP directory listings of "/" (the top-level directory)
The two "_show_dotfiles" options apply to ALL directories, not just the rootdir.
".U" and ".N" are no longer accepted on left of '=' in ir_translate. Note also, that there actually was/is another '.N' which still works to left of '=', meaning "Not-shifted" (the opposite of .S).
Under "Verifying Translations", Hijack no longer dumps out the working translations; instead it dumps out the ones in ERROR, and pops up a window at startup to indicate errors.
The Left/Right time delay thingie is now in v201.
That'll do for now. I didn't really read the ir_translate section in much detail, but note that "button names" should be working at least as well as "hex codes", and I'd prefer that the names be used where possible.
Cheers
-ml
|
Top
|
|
|
|
#73685 - 21/02/2002 12:21
Re: Hijack v201 Released
[Re: mlord]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
|
The Left/Right time delay thingie is now in v201.
And quite cool it is. I did not try it in its earlier incarnations, but just for the heck of it, when I installed 201 I checked it out on headphones. Amazing. Good job to everyone involved in coding that one up.
|
Top
|
|
|
|
#73686 - 21/02/2002 12:47
Re: Hijack v201 Released
[Re: crocklobster]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
What is an ".xsl" file? And what mime-type ("Content-Type:") should be used for one?
As I've noted in the other thread, can you email me a detailed set of instructions as to exactly what you want Hijack to do for this? I'm pretty out of date on .css/xml/xsl etc..
As I get it right now, we'd like a "?.xml" (or something) extension to just send the FID tag info in a particular format, right? Details please.
The better your instructions, the quicker it happens. Thanks!
-ml
|
Top
|
|
|
|
#73687 - 21/02/2002 12:49
Re: Hijack v201 Released
[Re: mlord]
|
carpal tunnel
Registered: 23/08/2000
Posts: 3826
Loc: SLC, UT, USA
|
Awesome. Thanks for all the clarifications... mashing all the info together from tons of posts obviously resulted in some mistakes. I made the appropriate changes in the FAQ.
Stuff I'm not clear on:
When you say:
The countdown timer increment is actually variable, rather than a 15-second constant.. best just to not mention the increment.
... are you referring to the Screen Blanker Timeout? 'Cause I can't find anywhere i've mentioned Countdown Timer Timeout as being 15-seconds.
You said there's another .N modifier that works only on the left of the = sign that means "not-shifted".
So the .N modifier means different things depending on which side of the = it's on? Confusin' i says. Could ya change one or the other to a different modifier so it's more obvious? Or should i just define the .N as both.
Thanks again!
|
Top
|
|
|
|
#73688 - 21/02/2002 13:00
Re: Hijack v201 Released
[Re: loren]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
.N to the left of the = means Not shifted (opposite of .S).
.N to the right of the = means menus Not active (opposite of .U).
Basically, I goofed when added .U/ .N, in that I missed the fact that .N was already used..
The 15-second thing I referred to was for the "Countdown Timer Timeout", aka "QuickTimer" (same thing). I didn't read your FAQ enough the first time, so what you have there is mostly correct. But the actual increments for the intervals are even more complex than the FAQ says.. and the whole deal sounds way more complex than the function actually is when used.. might be better to just not talk about the increments at all.
Cheers
|
Top
|
|
|
|
#73689 - 21/02/2002 13:05
Re: Hijack v201 Released
[Re: mlord]
|
carpal tunnel
Registered: 23/08/2000
Posts: 3826
Loc: SLC, UT, USA
|
Cool. I'll add that to the FAQ after lunch, and yeah... i'll take the increments stuff out. I just had fun figuring it out so i stuck it in =]
|
Top
|
|
|
|
#73690 - 21/02/2002 13:27
.xml output?
[Re: crocklobster]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I'm looking at the .xml stuff right now, and the first question I have is:
I notice that the .xml seems to be split into two sections, one for playlists and one for Tunes. Everything looks trivial except for this. Do we need this?
Thanks
|
Top
|
|
|
|
#73691 - 21/02/2002 13:56
Re: .xml output?
[Re: mlord]
|
member
Registered: 19/12/2001
Posts: 108
|
Not really. We could have everything be in one list, tunes and playlists, as long as they were identified somehow, like a <type> tag under each "item".
I'll get together with you on this though email.
Chris
|
Top
|
|
|
|
#73692 - 21/02/2002 17:20
Re: Hijack v201 Released
[Re: mlord]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
Any reason why the patch got a lot smaller? Used to be about 341000 bytes, now it's only 305000 odd bytes.
How did you work out that the code was a CPU hog? I didn't notice a huge increase in the load averages which was unexpected (like my comment says). I can't think of much to make it more efficient short of doing it in assembler which is definitely an option
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#73693 - 21/02/2002 18:02
Re: Hijack v201 Released
[Re: Shonky]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
>Any reason why the patch got a lot smaller?
>Used to be about 341000 bytes, now it's only 305000 odd bytes.
Every now and then I look at the patchfile content and notice some crud and remove it. In this case, it had some unnecessary ".orig" files in it.
>I can't think of much to make it more efficient..
How about removing the "copy_from_user()" and "memcpy()" calls from within that central loop.. looks pretty darned slow to me. Much better would be to just do one or two calls to those routines, and then have the loop unroll whatever it needs (if anything) without any slowish function calls inside the loop. Basic stuff.
Cheers
|
Top
|
|
|
|
#73694 - 21/02/2002 18:13
Hijack v202: First crack at XML
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Okay, Hijack v202 now has:
?.xml support for playlists; looks for "/default.xsl" for formatting info, or whatever is specified by [hijack] khttpd_xsl=xxxx in config.ini (must be in rootdir, don't specify a path, and leave off the .xsl extension!). To get xml to work, the server converts any <, >, or ? characters into plus signs (+) in the title, artist, source and comment fields. Alternative suggestions are welcome.
When using "khttpd_files=0", the server now allows access to any files ending in .htm, .html, .jpg, .png, .xsl, and/or .css
the basic "buttonhack" code is now included for turning on illuminated buttons installed from Brian's kit.
|
Top
|
|
|
|
#73695 - 21/02/2002 18:14
Re: Hijack v201 Released
[Re: mlord]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
Yeah but because the samples go left1 right1 left2 right2 etc rather than left1 left2 .. leftx right1 right2 ... rightx, I have to do it sample by sample unfortunately.
I think you may be misunderstanding how it's done.
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#73696 - 21/02/2002 18:15
Re: Hijack v201 Released
[Re: Shonky]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Yes, I see it has to be sample by sample, but the code can be rewritten to avoid those SLOW function calls from within the inner loop.
-ml
|
Top
|
|
|
|
#73697 - 21/02/2002 19:05
Re: Hijack v202: First crack at XML
[Re: mlord]
|
old hand
Registered: 30/04/2001
Posts: 745
Loc: In The Village or sometimes: A...
|
Mark,
you can replace any 'reserved' XML characters (like <,> and ?) with their HTML escaped equivalent (which is in the form of '&' symbolic-character name followed by a semicolon ';'.) as follows:
< should be output as <
> should be output as >
and of course, you need to escape the escape character (&), and this
is done as follows:
& should be output as &
I am not sure what '?' should be escaped as, but perhaps someone else can advise us,
for now escape the ? as a + symbol and be done with it.
the others should be escaped as indicated above.
|
Top
|
|
|
|
#73698 - 21/02/2002 21:43
Re: Hijack v202: First crack at XML
[Re: number6]
|
member
Registered: 19/12/2001
Posts: 108
|
I'm guessing Mark meant '&' and not '?'.
I tried a ? in the title of a tune, and it works properly. The other special characters you mentioned should definitely be escaped as you pointed out.
Here is a zip file with three sample stylesheets and some images. Some of this is adapted from Beaker's earlier post in another thread. Put the contents of this zipfile in your root directory, and rename the desired stylesheet to default.xsl
You can see, two of them use the XSLT 1.0 spec and one uses the Working Draft spec. Upgrade your browser or XML parser to be able to use the 1.0 xslt spec. My guess is more stylesheets will be written to that spec as there are more native functions, so it's easier to do a lot of stuff.
Mark, thanks for your efforts here. It works well. I guess I might have one request... The ability to override the default config.ini stylesheet. I was thinking if could be passed along with the quesry string. http://10.1.5.30/drive0/fids/101?.xml&xslt=newsheet.xsl or whatever. Is this doable?
Great stuff. Let's bust out some cool stylesheets.
Chris
Attachments
71755-empegxml.zip (26 downloads)
|
Top
|
|
|
|
#73699 - 21/02/2002 23:17
Re: Hijack v202: First crack at XML
[Re: crocklobster]
|
carpal tunnel
Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
|
Hmm I couldn't figure this stuff out. I put the files in my root directory and named one of them "default.xsl".. Now what? I browse to my root directory and things still look normal. When I open the XSL files in my browser I see the pretty pictures and some things that look like table headers, but that's about it... Plus some messy looking stuff like:
Tags Tune ?.m3u ?SERIAL=%23.xml Tags Tune
I guess the idea is to show the directory listings in a nicer style, but it's not working for me.. Must be doing something wrong.
|
Top
|
|
|
|
#73701 - 22/02/2002 07:10
Re: Hijack v202: First crack at XML
[Re: tonyc]
|
member
Registered: 19/12/2001
Posts: 108
|
Well, firstly, it's very possible that it's working. The two default - *.xsl stylesheets were made to duplicate the current functionality of the html. They were made as a baseline, so people could see the xslt that designs the current layout, and hopefully would be able to change things easily themselves.
Now, if you still think you're having a problem (or if anyone else is)...
Which browser do you have, and which stylesheet did you rename to default.xsl
If you have IE 5 or 5.5 and have not upgraded your XML parser to 3.0 in "replace" mode, use the "Working Draft" stylesheet. I think it was named default - WD.xsl
If you are using Mozilla, IE 6, or IE 5 / 5.5 with MSXML 3.0 in "replace" mode, use either the default - 1.0.xsl or default - alt colours - 1.0.xsl stylesheet.
Andy had some links for upgrading your xml parser here. You can also find some good info at netcrucible for msxml questions.
|
Top
|
|
|
|
#73702 - 22/02/2002 07:39
Re: Hijack v202: First crack at XML
[Re: mlord]
|
member
Registered: 19/12/2001
Posts: 108
|
Not sure the downloading of .xsl files when khttpd_files=0 is working correctly. I tried it on my work player today, and since it was in ;@WORK mode, kttpd_files=0. I got a 403 when I tried to get the .xsl file. When I switched to ;@HOME mode, it worked properly.
Chris
|
Top
|
|
|
|
#73703 - 22/02/2002 08:17
Re: Hijack v202: First crack at XML
[Re: crocklobster]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Yup, .xsl is missing from the exclusion list.
It'll work in v203 (see notice elsewhere, in a few minutes).
-ml
|
Top
|
|
|
|
#73704 - 22/02/2002 08:46
Hijack v203/v204: more xml hacking
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Okay, Hijack v203/v204 are out.
These versions only have changes to the XML generation. For the uninitiated, this XML stuff is the foundation by which one can create/use "skins" for the Hijack playlist browser.
New in v203:
.xsl files can now be accessed even when the khttpd_files=0 restriction is in effect (this got left out by accident from v202).
The internal tag name for the xml is now "playlist" instead of the rootname of the .xsl file ("default").
As of v204, khttpd_xsl=xxxxx is renamed to khttpd_style=xxxxx
The khttpd_style=xxxxxx config.ini parameter is now a full pathname (with extension) of the xsl template (style sheet). The default style sheet is still /default.xsl
The default (or configured) style sheet can be overridden on a per-request basis with in the URL, using this (quirky) syntax:
http://my.empeg/drive0/fids/101?STYLE=/path/stylesheet.xsl.xml Of course, this breaks (the few) existing style sheets, but also leaves things in better shape for the future (I think).
Cheers
|
Top
|
|
|
|
#73705 - 22/02/2002 09:05
Re: Hijack v202: First crack at XML
[Re: crocklobster]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Can you get style sheets to work with v204 ??
I renamed the tag from "default" to "playlist", and now I cannot get it to work for me. But then, I know almost nothing about .xsl files.
??
|
Top
|
|
|
|
#73706 - 22/02/2002 09:48
Re: Hijack v202: First crack at XML
[Re: mlord]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
This is what I got on IE6, on http://my.empeg/drive0/fids/101?STYLE=/path/stylesheet.xsl.xml
The XML page cannot be displayed
Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.
--------------------------------------------------------------------------------
The stylesheet does not contain a document element. The stylesheet may be empty, or it may not be a well-formed XML document.
Sorry, I forgot to mention: v.204
Edited by taym (22/02/2002 09:48)
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#73707 - 22/02/2002 10:07
Re: Hijack v202: First crack at XML
[Re: mlord]
|
enthusiast
Registered: 28/01/2002
Posts: 265
Loc: MI, USA
|
I installed 204 and didn't add any other files to the empeg but I got this error:
A semi colon character was expected. Error processing resource 'http://empegjohn.qdi.com/drive0/fids/101?.xml'. Line 114, Position 14
<genre>R&B</genre>
-------------^
is that because of the &? I thought that was fixed...maybe not in genre?
EDIT: in IE the arrow looks like it's pointing at the < in </genre>
Edited by guardian__J (22/02/2002 10:08)
_________________________
guardian__J MKIIa 20g Smoke
|
Top
|
|
|
|
|
|