• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp12
r3wp265
total:277

results window for this page: [start: 101 end: 200]

world-name: r3wp

Group: All ... except covered in other channels [web-public]
BrianH:
6-Feb-2008
Parsing is not as big a deal as people make it out to be - it is 
just decoding a stream of binary structured in a particular way.
Gabriele:
4-Nov-2008
i never had a hd tv transport stream file to play with though, so 
i guess i don't have much advice.
Steeve:
29-Mar-2009
But strings are not good types for those  it would be better to simply 
add errors as objects in the loaded stream.

But after that you steel need to reparse the block to convert the 
errors in proper values.
SO, in the end, y
Steeve:
29-Mar-2009
Ok, in the following version (much simpler) i just add foreign data 
as error objects in the stream.
Then you can reparse the result to manage errors as you want.

context [
	stack: make block! 10
	out: value: pos: none
	push: func [type][
		stack: change/only stack out 
		out: make type 1 
	]
	pop:  to-paren [
		stack: back stack 
		out: append/only stack/1 out
	]
	blanks: charset " ^-^M"
	rules: [
		  some [blanks | #"^/" (new-line out true)]	  
		| [#"]" | #")"] (print "missing [ or (" return stack/1)
		| #"[" (push block!) any [#"]" pop break | rules]
		| #"(" (push paren!) any [#")" pop break | rules]

  | pos: (set [value pos] transcode/next/error pos append out value) 
  :pos
	]
	set 'load-foreign func [
		text [string!] 
	][
		out: make block! 10
		stack: change/only clear head stack out
		parse/all to-binary text [any rules]
		bind out 'system
		either 1 = length? out [first out][out]
	]
]
Chris:
1-Apr-2009
I'd say there is a case for adapting Rebol's vocabulary, eg:


 measure! - proposed a long time ago - 2cm 3.4cl 5o (degrees) 1em 
 - found elsewhere, eg CSS

 date! - recognize some common alternate constructs - 12-Mar-2009T04:00
	money! - the suggested: $1,000.00


I'd love to see Rebol mature along these lines.  The literal types 
are the essense of Rebol's being, they make for expressive problem 
solving and efficient data exchange with some resemblence to terms 
we would use on paper - all with 'load as its core arbiter.  It'd 
be great to be able to extract meaning from any stream of data, and 
I think if any language can, it's Rebol - however, it just seems 
beyond the scope of 'load which has this specifically and valuably 
defined purpose.  Whereas 'parse can be used to describe anything! 
- even if you load junk!, you're still going to need 'parse to make 
sense of it...
Steeve:
2-Apr-2009
but how do you inject code in your running application without a 
good framework to do that.
You can't just throw a bynary stream in the heaven
Steeve:
2-Apr-2009
give me a dll wich accept a binary stream and run it as a function 
and i'm ok to generate assembler with rebol
Group: Ann-Reply ... Reply to Announce group [web-public]
Pekr:
8-Nov-2007
Oldes - gif parser, cool. Never used stream-io. Hopefully DELECT 
will help with binary parser, Rebcode is still part of R3, and that 
we can start implementing media loaders/savers :-)
Group: !AltME ... Discussion about AltME [web-public]
BrianH:
10-Jun-2008
That may be from the security alternate data stream. Get AOD from 
http://tp.lc.ehu.es/jma/win95.htmland see.
Group: RAMBO ... The REBOL bug and enhancement database [web-public]
Maxim:
2-Jan-2007
right now, I have a popup which receives events within its over function 
while the face which called the popup, still receives move (away) 
events within its engage func... funny thing is that I receive a 
steady stream of AWAY actions as I move the mouse!
Group: Core ... Discuss core issues [web-public]
Pekr:
24-Oct-2005
that is the similar question of what happens to parse input stream 
:-) I did some inline changes, it seemed to work, but I probably 
confused indexing somehow not returning to proper position, after 
I did some replacing in it :-)
Graham:
12-Nov-2005
or  stream of data.
Pekr:
2-Jul-2006
ah, the difference is:

Content-Type: image/jpeg; name="2.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="2.jpg"

--__REBOL--View--1.3.2.3.1--5318724__
Content-Type: application/octet-stream; name="bay.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bay.jpg"
Pekr:
2-Jul-2006
rebol does not recognise filetype .... so it uses application/octec-stream 
.... too many gotchas here, maybe it would be better to construct 
complete headers. Will look into some alternative attachment sending 
scripts on rebol.org ....
Pekr:
2-Jul-2006
I can adapt thouse functions probably though ... I need to make different 
headers .... build-attach-body uses application/octect-stream, without 
ability to parametrise for e.g.
Volker:
2-Jul-2006
make-mime-header: func [file] [
        net-utils/export context [

            Content-Type: join {application/octet-stream; name="} [file {"}]
            Content-Transfer-Encoding: "base64"

            Content-Disposition: join {attachment; filename="} [file {"
}]
        ]
    ]
Gordon:
29-Sep-2006
When you import data using "data: read/binary {sometextfile}" you 
seem to get a string of hex values.  Ex:

probe 'data' of a file containg the word "Hello"  results in #{48656C6C6F} 
but if you 

probe first data it returns 72.  So when you probe the entire data 
stream it returns it in hexidecimal format
but when you probe each character it returns a decimal value.


At any rate how do you convert the characters in the variable 'data' 
back into ASCII values?  IOW, how do you convert the decimal value 
of 72 back into an "H" or the #{48656C6C6F} back into "Hello"?
Graham:
10-Jul-2007
And i don't think that rebol supports octet stream as content type.
Steeve:
25-Oct-2007
made an async parser (not fully tested - some problems may occur 
when the parser go back in the stream )

but the concept works :  when the parser encouter a skip command, 
the data are not readed from the file but the offset is modified.
Oldes:
27-Oct-2007
get-JPG-size: func[
	"Returns size on JPG image or none on invalid files"
	jpgfile [file! url!] "File to examine"
	/local stream byte1 byte2][
	stream: open/read/binary/direct jpgfile
	;seek to jpg start
	until [
		all [
			255 = first stream
			216 = first stream
		]
	]
	while[any[byte1: first stream]] [
		if 255 = byte1 [
			either 192 = byte2: first stream [
				copy/part stream 3
				height: to-integer copy/part stream 2
				width:  to-integer copy/part stream 2
				close stream
				return as-pair width height
			][
				copy/part stream ((to integer! copy/part stream 2) - 2)
			]
		]
	]
	close stream
	none
]
Oldes:
27-Oct-2007
get-JPG-size: func[
	"Returns size of JPG image or none on invalid files"
	jpgfile [file! url!] "File to examine"
	/local stream byte
][
	stream: open/read/binary/direct jpgfile
	;seek to jpg image start
	until [
		any [
			all [
				255 = first stream
				216 = byte: first stream
			]
			none? byte
		]
	]

 unless byte [close stream return none] ;no Start Of Image marker 
 found

	while[any[byte: first stream]] [
		if 255 = byte [
			either 192 = byte: first stream [
				copy/part stream 3
				height: to-integer copy/part stream 2
				width:  to-integer copy/part stream 2
				close stream
				return as-pair width height
			][
				copy/part stream ((to integer! copy/part stream 2) - 2)
			]
		]
	]
	close stream
	none
]
Oldes:
27-Oct-2007
get-JPG-size: func[
	"Returns size of JPG image or none on invalid files"
	jpgfile [file! url!] "File to examine"
	/local stream bytes height width
][
	stream: open/read/binary/seek jpgfile
	;seek to jpg image start
	while [#{FFD8} <> copy/part stream 2][
		if tail? stream: skip stream 2 [
			;no Start Of Image marker found
			close stream return none
		]
	]
	stream: skip stream 2
	while[not tail? stream][
		bytes:  copy/part stream 2
		stream: skip stream 2
		if 255 = bytes/1 [
			either 192 = bytes/2 [
				stream: skip stream 3
				height: to-integer copy/part stream 2
				width:  to-integer copy/part skip stream 2 2
				close stream
				return as-pair width height
			][
				stream: skip stream ((to integer! copy/part stream 2) - 2)
			]
		]
	]
	close stream
	none
]
[unknown: 5]:
23-Feb-2008
Seems it would still be useful for data taken from a stream of string 
data
Graham:
22-Sep-2008
apart from it not working ... anyone see a problem with this?


   either all [block? port/state/custom post-data: find port/state/custom 
   'post post-data/2] [
				http-command: "POST"
				HTTP-Get-Header: make HTTP-Get-Header append [

     Referer: either find port/url #"?" [head clear find copy port/url 
     #"?"] [port/url]
					Content-Type: "application/x-www-form-urlencoded"
					Content-Length: length? post-data/2
				] either block? post-data/3 [post-data/3] [[]]
				post-data: post-data/2
			][

    either all [block? port/state/custom post-data: find port/state/custom 
    'get post-data/2] [
					http-command: "GET"
					HTTP-Get-Header: make HTTP-Get-Header append [

      Referer: either find port/url #"?" [head clear find copy port/url 
      #"?"] [port/url]
					] either block? post-data/3 [post-data/3] [[]]
					post-data: none
				][

     if all [block? port/state/custom post-data: find port/state/custom 
     'put post-data/2] [
						http-command: "PUT"
						data: system/words/read/binary post-data/2
						HTTP-Get-Header: make HTTP-Get-Header append [
							Content-Type: "application/octet-stream"
							Content-Length: length? data
						] either block? post-data/3 [post-data/3] [[]]
					]
					post-data: post-data/2
				]
			]
Dockimbel:
5-Feb-2009
The error code is probably the one returned by the underlying layer 
(assuming REBOL uses internally zlib) :

#define Z_ERRNO        (-1)
#define Z_STREAM_ERROR (-2)
#define Z_DATA_ERROR   (-3)
#define Z_MEM_ERROR    (-4)
#define Z_BUF_ERROR    (-5)
#define Z_VERSION_ERROR (-6)

(from http://www.zlib.net/manual.html#Constants)
Group: View ... discuss view related issues [web-public]
Geomol:
24-Sep-2005
There is a window face option named "all-over", that will "Causes 
the over event to report a continuous stream of mouse positions as 
the mouse moves over the face". I use it in Canvas, but there seem 
to be a problem. After a while, when I haven't touched the computer 
for some time, it seems, that the all-over option is canceled. It 
can be seen in Canvas, that the coords in the title-bar isn't updated, 
when the mouse is moved.

Does anyone know something about this? I've checked RAMBO, but couldn't 
find anything about it.
JaimeVargas:
1-Jan-2006
Right now all *data model* is a block. But you may want to be able 
to access a file of bytes and some particular fields in that stream.
JaimeVargas:
1-Jan-2006
So, instead of forcing the conversion of the bytes stream in the 
block data model. The list view could interrogate the controller 
to extract the data from the base model.
Anton:
3-Feb-2007
I think the feeling is to have more higher level types of events 
derived from the raw event stream and provided to you in a more separate 
kind of fashion.
Group: Make-doc ... moving forward [web-public]
MikeL:
31-May-2005
Paul, One thing to keep in mind is that you should want to leverage 
html stylesheets. 

In your make-doc version add the reference to the class then let 
a .css determine most of the presentation parameters.

For example, I wanted to be able to add a question and have it presented 
with a heading very similar to a note box

but to have a different label i.e. "Question" and a distinct look.
This change was required to parse it 

 ["=q" | "q:" | "question:"] text-line (emit-text 'question) |

from the input stream. This emitted the html 


 question [emit [{<p><div class="question"> Question: &nbsp;&nbsp; 
  } doc/2 {</div>}]]


Change the make-doc script you are using to emit a reference to your 
stylesheet instead of inlining it.

I put this in my css to present a question in box that stands out 
(for me)
  div.question {
     	padding: 10px;
        background-color: linen;
      	font-size: 14px;       
     	font-family: Helvetica;
        border: 6px groove gold;
		width: 90%;
  }  

The reason for .css is that now you can change the stylesheet and 
don't have to change the html or 

re-generate it. If you want your question box to tan instead of linen 
then you just change your .css

If you have something you feel strongly about you can create a soapbox 
style.
For more on this see http://www.csszengarden.com/

p.s. when you change make-doc, clearly identify the lines that you 
change with comments so that when 

you get a new version you can retrofit it and get the benefit of 
the upgrades.
Group: PDF-Maker ... discuss Gabriele's pdf-maker [web-public]
Janko:
12-May-2009
in the pdf file ... I discovered one good news now ... I need csz 
( like ch sh zh in eng) .. I saw  that zh that I thought before doesn't 
have a glyph in standard fonts didn't make it to the generated pdf 
and if I add it by hand and update length of stream Zh works ... 
so now only Ch is the problem .. (because it's not represented in 
win1252 , the character with same code 200 in 1252 is E (arrow) È
Gabriele:
23-Aug-2010
what you can do is create a stream of text, and then flow it across 
multiple text boxes, or multiple pages.
Gabriele:
23-Aug-2010
book is the text stream. the block with the two textboxes is the 
template (two columns)
Gabriele:
23-Aug-2010
the text stream is flown inside the columns.
Group: Parse ... Discussion of PARSE dialect [web-public]
BrianH:
19-May-2008
I mean you can do open/lines/direct and stream - then you would only 
need the memory for one line and a state machine.
Pekr:
6-Nov-2008
hmm, continuous parse ... there was my request for it long time ago, 
and IIRC even Carl said, that it might be usefull. Imagine for e.g. 
encoders ... You read stream from file in chunks, and you evaluate. 
The problem is, when you need to backtrack, you would need to cache 
the stream. Dunno, if something like that is possible at all ...
swall:
27-Mar-2009
I'm having trouble parsing the "none" datatype from within blocks.
The following example illustrates my problem (hopefully):
junk: [none [1 2 [3 4]]]

parse/all junk [none (print ["nothing"]) text: (print ["text:" mold 
text]) set b block! (print ["block:" mold b])]

This produces the following output:
nothing
text: [none [1 2 [3 4]]]
== false


Notice that the block doesn't get parsed. It seems that parse ignores 
"none" tokens rather than extracting them from the input stream. 
If I put a number in place of none and parse for "number!", then 
the block does indeed get parsed.

Is this a bug or an oversight? Or am I just confused?
Pekr:
24-Dec-2009
Henrik - according to docs explanation, 'parse contains some internal 
protection for the case, when input stream does not advance its position. 
In R2, following code causes infinite loop, in R3, it returns false:

parse str [some [to "abc"]]


(I am not sure I like that it returns false - normally I expect it 
to cause infinite loop. This is imo overprotecting programmer, and 
you have to think, why your code returns false anyway, which for 
me is the same, as if it would cause an infinite loop)

Further from docs:


To avoid infinite looping, a special internal rule is triggered based 
on the fact that the rule did not change the input position.

However, this shows a problem with this rule:

parse str [some [to "a" remove thru "b"]]


Here the input did not appear to advance, but something useful happened. 
In such cases, the some word should not be used, and the while word 
is better:

parse str [while [to "a" remove thru "b"]]
Gregg:
31-Dec-2009
For example


- Parsing an input that has nested structures, and how to collect 
the values you want.
- Showing the user where the parse failed.
- How to avoid infinite parse loops.
- How to safely modify the input stream.

More advanced examples would be great too of course.
TomBon:
15-Feb-2011
how to copy a parsed stream into a object instead a string var?
this fails
parse page [thru <tag1>  copy obj-buffer/result   to <tag2>]
Group: Announce ... Announcements only - use Ann-reply to chat [web-public]
Oldes:
8-Nov-2007
The script is using %stream-io.r script which I use more and more 
for binary manipulations.
Maxim:
14-Apr-2010
I'm curious as just implement the most flexible and advanced, yet 
simple to use event stream system I've ever used.
Group: SDK ... [web-public]
Graham:
4-Oct-2010
It would be nice if the sdk encapper didn't overwrite the alternate 
stream when writing out the binary.
Rondon:
14-Jan-2012
REBOL [
Title: "ARCFOUR and CipherSaber"
Date: 17-Jan-2004
File: %arcfour.r
Author: "Cal Dixon"

Purpose: {Provides encryption and decryption using the ARCFOUR algorithm}

Note: {this implementation can decrypt data at about 40KB/s on my 
1Ghz AMD Duron system with Rebol/View 1.2.10.3.1}
Library: [
level: 'advanced
platform: 'all
type: [function module protocol]
domain: [encryption scheme]
tested-under: [view 1.2.10.3.1 on [W2K] by "Cal"]
license: 'PD
support: none
]
]


;ARCFOUR specification: http://www.mozilla.org/projects/security/pki/nss/draft-kaukonen-cipher-arcfour-03.txt

;CipherSabre specification: http://ciphersaber.gurus.com/faq.html#getrc4


arcfour-short: func [key [string! binary!] stream [binary! string!] 
/mix n /local state i j output swap addmod sz][

swap: func [a b s /local][ local: sz s a poke s a + 1 to-char sz 
s b poke s b + 1 to-char local ]
addmod: func [ a b ][ a + b // 256 ]
sz: func [ s a ][ pick s a + 1 ]

state: make binary! 256 repeat var 256 [ insert tail state to-char 
var - 1 ]

j: 0 loop any [ n 1 ] [ i: 0 loop 256 [ swap i j: addmod j add sz 
state i sz key i // length? key state i: i + 1] ]
i: j: 0 output: make binary! length? stream
repeat byte stream [
swap i: addmod i 1 j: addmod j sz state i state

insert tail output to-char xor~ byte to-char sz state addmod (sz 
state i) (sz state j)
]
clear state
return output
] 

make root-protocol [
addmod: addmod: func [ a b ][ a + b // 256 ]
sz: func [ s a ][ pick s a + 1 ]

swap: func [a b s /local][ local: sz s a poke s a + 1 to-char sz 
s b poke s b + 1 to-char local ]
ins: get in system/words 'insert
i: 0 j: 0
open: func [port][
port/state/tail: 2000
port/state/index: 0
port/state/flags: port/state/flags or port-flags

port/locals: context [ inbuffer: make binary! 40000 state: make binary! 
256]
use [key n i j] [
key: port/key
n: port/strength
repeat var 256 [ ins tail port/locals/state to-char var - 1 ]
j: 0 loop any [ n 1 ] [
i: 0 loop 256 [

swap i j: addmod j add sz port/locals/state i sz key i // length? 
key port/locals/state i: i + 1
]
]
]
i: j: 0
]
insert: func [port data][
system/words/insert tail port/locals/inbuffer data do []
]
copy: func [port /local output][
output: make binary! local: length? port/locals/inbuffer
loop local [

swap i: addmod i 1 j: addmod j sz port/locals/state i port/locals/state

ins tail output to-char sz port/locals/state addmod (sz port/locals/state 
i) (sz port/locals/state j)
]
local: xor~ output port/locals/inbuffer
clear port/locals/inbuffer
local
]

close: func [port][ clear port/locals/inbuffer clear port/locals/state 
clear port/url clear port/key]
port-flags: system/standard/port-flags/pass-thru
net-utils/net-install arcfour self 0
]

arcfour: func [key stream /mix n /local port][
port: open compose [scheme: 'arcfour key: (key) strength: (n)]
insert port stream
local: copy port
close port
return local
]


; CipherSaber is an ARCFOUR stream prepended with 10 bytes of random 
key data
ciphersaber: func [ key stream /v2 n ][

arcfour/mix join key copy/part stream 10 skip stream 10 either v2 
[ any [ n 42 ] ][ 1 ]
]
Group: !RebGUI ... A lightweight alternative to VID [web-public]
Robert:
10-Dec-2006
Ashley, thanks for the feedback. WRTstability and quality. I'm using 
this code for several month now in a very big and complex application. 
It works very good.


We take a look at your modifications and merge them back to our stream, 
so we are back in sync.
Group: DevCon2005 ... DevCon 2005 [web-public]
Volker:
7-Aug-2005
the discussion above is live while Gabriele tried out to stream. 
;) but did not work perfectly yet.
Izkata:
7-Aug-2005
Well, I saw "live stream", and that demo can be hard to find, so 
I took a wild guess  ^_-
JaimeVargas:
8-Aug-2005
Gabriele I'm going to check what were the setting we used last year. 
Also, RAM helps with streaming, The laptop I used last yeard had 
1.5GB. I you are saving the stream to disk this slow transmission 
too.
JaimeVargas:
8-Aug-2005
Also change the audio setting to mono-aural, and start low in terms 
of the stream window size 240x320. TCP is better, and key-frames 
every 15 frames.
Gabriele:
8-Aug-2005
I will have Skype and Altme running for people to interact. I will 
have a live video stream, but the priority is for good recordings.
Gabriele:
8-Aug-2005
turning the stream off, unless there's someone else wanting to give 
it a try...
JaimeVargas:
1-Sep-2005
Page displays, but I don't the QT stream fails for me.
Gabriele:
2-Sep-2005
yep - page is not linked anywhere yet and is just for testing purposes. 
i guess we'll have a lot to add when we go "public". (also, i'd make 
it public just when the stream starts. so that there is no confusion. 
earlier, just a message on the site that says "on sept. 30 a live 
stream will be available through this site")
Gabriele:
2-Sep-2005
the stream is up again. i will be "debugging" qt to try to understand 
what it is actually doing
Gabriele:
2-Sep-2005
on windows with firefox and QT 7, qt gets the stream from a TCP connection 
to motoko.rebol.it:554
Gabriele:
2-Sep-2005
(oging to lunch, i'll leave the stream on anyway.)
Gabriele:
14-Sep-2005
thw windows version of QT requests application/x-rtsp-tunnelled, 
and gets the stream via TCP, but the Mac version does not do so, 
and does not get the stream via TCP.
JaimeVargas:
14-Sep-2005
Gabriele can you post the code use to embed the stream on the web 
page. It maybe something there.
Gabriele:
14-Sep-2005
anyway, you can just read the web page source, or point to the stream 
directly, rtsp://motoko.rebol.it/teststream.sdp
JaimeVargas:
14-Sep-2005
Is the stream running?
JaimeVargas:
14-Sep-2005
What is the devcon url for the stream I don't seem to find it.
Gabriele:
14-Sep-2005
the stream is ok if i connect directly to the mac
Gabriele:
24-Sep-2005
i wonder why the stream stopped for you...
Kaj:
24-Sep-2005
Totem, the standard player in Gnome, says it has no codec for the 
stream
Gabriele:
24-Sep-2005
worst case, most people will have to see the recordings after the 
devcon, instead of the live stream.
Gabriele:
24-Sep-2005
we'll be on altme too, and i'll have skype on, and hopefully the 
video stream works... other than that, yes, editing and encoding 
takes a lot of time.
Gabriele:
24-Sep-2005
bte, you're home now petr? do you see the stream if you try the above 
url with QT or VLC?
Pekr:
24-Sep-2005
so what is the stream address? is it rtsp protocol like it was last 
time?
Gabriele:
24-Sep-2005
[shutting down the video stream for now.]
DideC:
25-Sep-2005
LAST YEAR, SURFNET HAD RELAY THE STREAM, AND THIS YEAR ?
[unknown: 9]:
26-Sep-2005
Brock, as a company that is working very hard to make everything 
compatible between all the browser I can tell you that what it comes 
down to is that there are rules, but each browser company (or group) 
interprets the rules slightly differently.


The simplest example of goes wrong the most are the "assumptions." 
 EI for example will except <center> to mean center the page, and 
center pretty much everything until you turn </center> off.  


But Firefox follows the letter of the rules, and expects each object, 
like a table, to have its own <center> tags.


This is a simple visual example, it gets worse when JavaScript enters 
the picture.  Safari for example DEMANDS everything ending in a ";" 
or it simply ignores stuff.

They are almost always easy fixes, but time consuming.


Maarten, shame that Breeze will not work.  I looked at Breeze and 
voted not to use it to do a Rebol lesson.  Looked great on their 
page, but I read a lot of similar comments elsewhere on the web that 
it simply failed for too many people.  I was hoping that someone 
smart in this group would know what we could use both to solve our 
DevCon needs and the Rebol Newbie Lesson needs.


We need a way to broad cast at least one video signal, and allow 
moderated chat in the same environment for people all over the world. 
 This should be easier.  I have an Idea that might work, but will 
require some research.  I might just do this in Qtask.  Then anyone 
can log in from anywhere, talk in a group, have sub topics.  All 
we have to add is video streaming (which is actually pretty easy 
for us).  The trick is setup up the incoming real time stream, which 
I was not planning to do for a while.
Anton:
28-Sep-2005
Gabriele's live stream (probably):
http://www.colellachiara.com/devcon05/live.html
Pekr:
29-Sep-2005
will pizza party have live stream too? I would order my own pizza 
from local pizzeria, plus some beer and I would be "there" with folks 
:-)
Pekr:
29-Sep-2005
I can see Anton posting link for live stream - so quicktime plus 
website is preffered way? Or will there be VLC rtsp version? Or?
Pekr:
29-Sep-2005
I still think that main stream will come with QuickTime or VLC ....
Graham:
29-Sep-2005
Ahh.. pity but a high quality recording will be much better than 
a poor quality stream.
Pekr:
30-Sep-2005
oh, no live stream planned? We should be told earlier, I called to 
my work and took vacation for today to hear keynote speach ...
Pekr:
30-Sep-2005
Going to prepare some coffee, if not stream or AltME live session 
is done, I may go to work eventually :-)
yeksoon:
30-Sep-2005
I hope at least someone comes online to highlight whether the live 
stream is on...
Pekr:
30-Sep-2005
hmm, 9:07 here .... I thought that at least someone from DevCon could 
join here and tell something about the live stream - if it is gonna 
work or not ...
Pekr:
30-Sep-2005
ok, so still not clear if the stream will work or not, I give up 
too ... going to dress myself up and prepare to move to my work, 
there I will be on AltME at least (but via GPRS, so no chance to 
have enough throughput to watch the eventually running stream ...)
Pekr:
30-Sep-2005
The stream was real fun for me last year ... I have my gfx card connected 
to tv-out typed here on altme on the primary monitor, watching video 
stream on TV ... it was cool ...
Pekr:
30-Sep-2005
at work now ... so - we even did not get anyone sending plain old 
email to anyone of us, so short excerption of Carl's presentation 
could be posted here? If AltME or stream does not work, so what? 
Email or web still works, no? ;-)
Group: Rebol School ... Rebol School [web-public]
Claude:
1-Jun-2010
REBOL[]


send: func [
	"Send a message to an address (or block of addresses)"
	;Note - will also be used with REBOL protocol later.
	address [email! block!] "An address or block of addresses"
	message "Text of message. First line is subject."
	/only   "Send only one message to multiple addresses"
	/header "Supply your own custom header"
	header-obj [object!] "The header to use"
	/attach "Attach file, files, or [.. [filename data]]"
	files [file! block!] "The files to attach to the message"
	/subject "Set the subject of the message"
	subj "The subject line"
	/show "Show all recipients in the TO field"
	/local smtp-port boundary make-boundary tmp from
][
	make-boundary: does []

	if file? files [files: reduce [files]] ; make it a block
	if email? address [address: reduce [address]] ; make it a block
	message: either string? message [copy message] [mold message]

	if not header [                 ; Clone system default header
		header-obj: make system/standard/email [

   subject: any [subj copy/part message any [find message newline 50]]
		]
	]
	if subject [header-obj/subject: subj]
	either none? header-obj/from [

  if none? header-obj/from: from: system/user/email [net-error "Email 
  header not set: no from address"]
		if all [string? system/user/name not empty? system/user/name][
			header-obj/from: rejoin [system/user/name " <" from ">"]
		]
	][
		from: header-obj/from
	]
	if none? header-obj/to [
		header-obj/to: tmp: make string! 20
		if show [
			foreach email address [repend tmp [email ", "]]
			clear back back tail tmp
		]
	]
	if none? header-obj/date [header-obj/date: to-idate now]

	if attach [

  boundary: rejoin ["--__REBOL--" system/product "--" system/version 
  "--" checksum form now/precise "__"]
		header-obj/MIME-Version: "1.0"

  header-obj/content-type: join "multipart/mixed; boundary=" [{"} skip 
  boundary 2 {"}]
		message: build-attach-body message files boundary
	]

	;-- Send as an SMTP batch or individually addressed:
	smtp-port: open [scheme: 'esmtp]
	either only [ ; Only one message to multiple addrs
		address: copy address
		; remove non-email values
		remove-each value address [not email? :value]

  message: head insert insert tail net-utils/export header-obj newline 
  message
		insert smtp-port reduce [from address message]
	] [
		foreach addr address [
			if email? addr [
				if not show [insert clear header-obj/to addr]

    tmp: head insert insert tail net-utils/export header-obj newline 
    message
				insert smtp-port reduce [from reduce [addr] tmp]
			]
		]
	]
	close smtp-port
]

resend: func [
	"Relay a message"
	to from message /local smtp-port
][
	smtp-port: open [scheme: 'esmtp]
	insert smtp-port reduce [from reduce [to] message]
	close smtp-port
]

build-attach-body: function [
	{Return an email body with attached files.}
	body [string!] {The message body}

 files [block!] {List of files to send [%file1.r [%file2.r "data"]]}
	boundary [string!] {The boundary divider}
][
	make-mime-header
	break-lines
	file
	val
][
	make-mime-header: func [file] [
		net-utils/export context [

   Content-Type: join {application/octet-stream; name="} [file {"}]
			Content-Transfer-Encoding: "base64"

   Content-Disposition: join {attachment; filename="} [file {"^/}]
		]
	]
	break-lines: func [mesg data /at num] [
		num: any [num 72]
		while [not tail? data] [
			append mesg join copy/part data num #"^/"
			data: skip data num
		]
		mesg
	]
	if not empty? files [
		insert body reduce [boundary "^/Content-type: text/html^/^/"]
		append body "^/^/"
		if not parse files [
			some [
				(file: none)
				[
					set file file! (val: read/binary file)
					| into [
						set file file!
						set val skip ;anything allowed
						to end
					]
				] (
					if file [
						repend body [
							boundary "^/"
							make-mime-header any [find/last/tail file #"/" file]
						]
						val: either any-string? val [val] [mold :val]
						break-lines body enbase val
					]
				)
			]
		] [net-error "Cannot parse file list."]
		append body join boundary "--^/"
	]
	body
]
Group: Tech News ... Interesting technology [web-public]
PatrickP61:
1-May-2008
For the security minded, there is a new startup at www.Yubico.com 
with a cool new usb wafer that generates OTP (one time passwords).

It is small, light, and cheap (currently $35.00).  But the really 
neat thing about it is it can be combined with a service like www.MashedLife.com 
which can manage all of your website accounts with a secure login. 
 With OTP, keyloggers are not effective anymore.  It seems like a 
neat idea.  You can listen to Steve Gibson review at www.twit.tv/sn141. 
 If you want just the Yubico stuff, advance the audio stream to about 
3/4 the way through at about 1:15 to skip the RSA stuff before.
Maxim:
16-Nov-2010
facebook is an insane waste of time. the moment you have more than 
10 friends using it actively, it becomes a constant stream of noise, 
most of it pure trash.
AdrianS:
9-Dec-2010
Actually, the VLC player (free) lets you do that, but you have to 
provide it the link to the stream, whereas with MySpeed, embedded 
videos play at a speed controlled by a little tool tray UI
Henrik:
18-Dec-2010
Cyphre, I asked my friend and he ran it on an intel GMA950 netbook. 
AFAIK, all it does is stream video.
GrahamC:
23-Apr-2011
Having said that, I think for my R3 ftp implementation, I stream 
the file off the file system instead of reading into a variable first
Henrik:
3-Jun-2011
mms://itv02.digizuite.dk/tv2b

TV stream here, which should work in VLC.
Henrik:
3-Jun-2011
http://sputnik.tv2.dk/play/event/820/

This is a much better stream, but requires Silverlight.
Henrik:
3-Jun-2011
Yet another stream here:


http://www.engadget.com/2011/06/03/amateur-copenhagen-suborbitals-team-about-to-send-a-dummy-into-s/
Henrik:
3-Jun-2011
stream is behind here... still launch trouble.
Group: !REBOL3-OLD1 ... [web-public]
Maxim:
21-Sep-2006
I agree... and with dual cores becoming increasingly main stream... 
there is a definite advantage in that.
Group: !Liquid ... any questions about liquid dataflow core. [web-public]
Maxim:
28-Mar-2009
liquid v0.8.1 released:
changes in this release (from last public release)

	v0.7.2 - 8-Mar-2009/21:25:55(MOA)

  -officially deprecated and REMOVED SHARED-STATES from the whole module
		-ON-LINK() 
	
	v0.8.0 - 15-Mar-2009/00:00:00(MOA)

  -adding stream engine for propagation-style inter-node messaging.

  -STREAM() added for look-ahead messaging (ask observers to react 
  to us)

  -ON-STREAM() added to support callbacks when a stream message arrives 
  at a plug.
		
	v0.8.1 - 28-Mar-2009/00:00:00(MOA)

  -PROPAGATE?() added to valve - allows us to optimise lazyness in 
  some advanced plugs

  -LINK?() regression found and fixed... cycle?() was not being used 
  anymore!
Group: DevCon2007 ... DevCon 2007 [web-public]
PhilB:
13-May-2007
somebodydaid there was an iSight (apple) camera next to the stream 
camera.
Anton:
21-May-2007
virtual windows - rendering graphics into an image means that a stream 
of images can be sent over a network to another user in a "terminal 
services"-like session.
Will:
23-May-2007
the darwin streaming server can be configured to stream rtsp on tcp 
I think
Anton:
23-May-2007
hang on... I can stream the video in Firefox QuickTime plugin.
Will:
23-May-2007
I'm not sure there is a way to save the udp stream, they shuld enable 
tcp/http so we can dowload and save, then maybe transcode to a more 
friendly format
101 / 2771[2] 3