----boundary-LibPST-iamunique-1204737078_-_-
Content-type: text/plain
Marc,
Thanks, I'll take a look at it.
-Doug
Marc Martin wrote:
Does anyone have a way to capture animated images created by
BlackBox in some format that can then be posted to YouTube?
Yes, a third party screen capture utility is probably the easiest
solution. I once implemented video capture capability within my
Blackbox application, which depended on some of the old Microsoft
Windows AVI routines. This would be a more difficult solution. :-)
My Component Pascal interface to these routines is attached below.
Marc
--------------------------------------------------------------------
TYPE
PAVIFILE* = INTEGER;
PAVISTREAM*= INTEGER;
StringPtr* = POINTER TO ARRAY [untagged] OF CHAR;
AVISTREAMINFOW* = RECORD [untagged]
fccType*, fccHandler*, dwFlags*, dwCaps*: INTEGER;
wPriority*, wLanguage*: SHORTINT;
dwScale*, dwRate*, dwStart*, dwLength*, dwInitialFrames*, dwSuggestedBufferSize*,
dwQuality*, dwSampleSize*, rect_left*, rect_top*, rect_right*, rect_bottom*,
dwEditCount*, dwFormatChangeCount*: INTEGER;
szName*: ARRAY [untagged] 64 OF CHAR;
END;
PROCEDURE AVIFileInit* ["AVIFIL32.DLL", "AVIFileInit"] ();
PROCEDURE AVIFileOpen* ["AVIFIL32.DLL", "AVIFileOpenW"]
( VAR ppFile: PAVIFILE;
szFile: StringPtr;
uMode: INTEGER;
lpHandler: INTEGER
): INTEGER;
PROCEDURE AVIFileCreateStream* ["AVIFIL32.DLL", "AVIFileCreateStream"]
( pfile : PAVIFILE;
VAR pavi : PAVISTREAM;
VAR psi : AVISTREAMINFOW
): INTEGER;
PROCEDURE AVIStreamSetFormat* ["AVIFIL32.DLL", "AVIStreamSetFormat"]
( pavi : PAVISTREAM;
pos : INTEGER;
VAR format : WinApi.BITMAPINFOHEADER;
formatsize: INTEGER
): INTEGER;
PROCEDURE AVIStreamWrite* ["AVIFIL32.DLL", "AVIStreamWrite"]
( pavi : PAVISTREAM;
start : INTEGER;
samples : INTEGER;
buffer : INTEGER;
buffersize : INTEGER;
flags : INTEGER;
VAR sampWritten : INTEGER;
VAR bytesWritten : INTEGER
): INTEGER;
PROCEDURE AVIStreamRelease* ["AVIFIL32.DLL", "AVIStreamRelease"]
( pavi: PAVISTREAM ): INTEGER;
PROCEDURE AVIFileRelease* ["AVIFIL32.DLL", "AVIFileRelease"]
( pfile: PAVIFILE ): INTEGER;
PROCEDURE AVIFileExit* ["AVIFIL32.DLL", "AVIFileExit"] ();
----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy
---- To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy
----boundary-LibPST-iamunique-1204737078_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbWh0bWwxIFxkZWZmMHtcZm9udHRibA0Ke1xmMFxm
c3dpc3MgQXJpYWw7fQ0Ke1xmMVxmbW9kZXJuIENvdXJpZXIgTmV3O30NCntcZjJcZm5pbFxmY2hh
cnNldDIgU3ltYm9sO30NCntcZjNcZm1vZGVyblxmY2hhcnNldDAgQ291cmllciBOZXc7fX0NCntc
Y29sb3J0YmxccmVkMFxncmVlbjBcYmx1ZTA7XHJlZDBcZ3JlZW4wXGJsdWUyNTU7fQ0KXHVjMVxw
YXJkXHBsYWluXGRlZnRhYjM2MCBcZjBcZnMyNCANCntcKlxodG1sdGFnMjQzIDwhRE9DVFlQRSBo
dG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPn0NCntc
KlxodG1sdGFnMyBccGFyIH0NCntcKlxodG1sdGFnMTkgPGh0bWw+fQ0Ke1wqXGh0bWx0YWcyIFxw
YXIgfQ0Ke1wqXGh0bWx0YWczNCA8aGVhZD59DQp7XCpcaHRtbHRhZzEgXHBhciB9DQp7XCpcaHRt
bHRhZzI0MSAgIH0NCntcKlxodG1sdGFnMSBccGFyIH0NCntcKlxodG1sdGFnNDEgPC9oZWFkPn0N
CntcKlxodG1sdGFnMiBccGFyIH0NCntcKlxodG1sdGFnNTAgPGJvZHkgYmdjb2xvcj0iI2ZmZmZm
ZiIgdGV4dD0iIzAwMDAwMCI+fVxodG1scnRmIFx2aWV3a2luZDUNCntcKlxiYWNrZ3JvdW5kIHtc
c2hwe1wqXHNocGluc3R7XHNwe1xzbiBmaWxsQ29sb3J9e1xzdiAxNjc3NzIxNX19e1xzcHtcc24g
ZkZpbGxlZH17XHN2IDF9fX19fVxodG1scnRmMCANCntcKlxodG1sdGFnMCBccGFyIH17XCpcaHRt
bHRhZzY0fVxodG1scnRmIHtcaHRtbHJ0ZjAgTWFyYywNCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1UaGFua3MsIEknbGwg
dGFrZSBhIGxvb2sgYXQgaXQuDQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpc
aHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9LURvdWcNCntcKlxodG1sdGFnMTE2IDxicj59
XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1s
dGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFy
IH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxo
dG1sdGFnNCBccGFyIH1NYXJjIE1hcnRpbiB3cm90ZToNCntcKlxodG1sdGFnNCBccGFyIH1caHRt
bHJ0ZiAgXGh0bWxydGYwIHtcKlxodG1sdGFnNzJ9XGh0bWxydGZccGFyfVxodG1scnRmMA0KDQp7
XCpcaHRtbHRhZzk2IDxibG9ja3F1b3RlXHBhciAgY2l0ZT0ibWlkOjEyNjI4MDc2NDkuMzAyMTku
MTM1MzI5MTcwN0B3ZWJtYWlsLm1lc3NhZ2luZ2VuZ2luZS5jb20iXHBhciAgdHlwZT0iY2l0ZSI+
fVxodG1scnRmIFxwYXINCntcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRt
bHRhZzI0MCAgIH0NCntcKlxodG1sdGFnOTYgPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+fVxodG1s
cnRmIHtcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzI0MCAgICAg
fQ0Ke1wqXGh0bWx0YWcxMjggPHByZSB3cmFwPSIiPn1caHRtbHJ0ZiB7XHBhcmRccGxhaW5cZjFc
ZnMyMCBcaHRtbHJ0ZjAgXGh0bWxydGYge1xodG1scnRmMCBcbGk3MjAgXHRhYiBEb2VzIGFueW9u
ZSBoYXZlIGEgd2F5IHRvIGNhcHR1cmUgYW5pbWF0ZWQgaW1hZ2VzIGNyZWF0ZWQgYnlcbGluZQ0K
XHRhYiBCbGFja0JveCBpbiBzb21lIGZvcm1hdCB0aGF0IGNhbiB0aGVuIGJlIHBvc3RlZCB0byBZ
b3VUdWJlP1xsaW5lDQogICAgXGh0bWxydGZccGFyfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzEz
NiA8L3ByZT59XGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxo
dG1sdGFnMjQwICAgfQ0Ke1wqXGh0bWx0YWcxMDQgPC9ibG9ja3F1b3RlPn1caHRtbHJ0ZiB9XHBh
cg0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcwIFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDAgICB9DQp7
XCpcaHRtbHRhZzEyOCA8cHJlIHdyYXA9IiI+fVxodG1scnRmIHtccGFyZFxwbGFpblxmMVxmczIw
IFxodG1scnRmMCBcaHRtbHJ0ZiB7XGh0bWxydGYwIFxsaTM2MCANCntcKlxodG1sdGFnMjQ0IDwh
LS0tLT59XGxpbmUNClllcywgYSB0aGlyZCBwYXJ0eSBzY3JlZW4gY2FwdHVyZSB1dGlsaXR5IGlz
IHByb2JhYmx5IHRoZSBlYXNpZXN0XGxpbmUNCnNvbHV0aW9uLiAgSSBvbmNlIGltcGxlbWVudGVk
IHZpZGVvIGNhcHR1cmUgY2FwYWJpbGl0eSB3aXRoaW4gbXlcbGluZQ0KQmxhY2tib3ggYXBwbGlj
YXRpb24sIHdoaWNoIGRlcGVuZGVkIG9uIHNvbWUgb2YgdGhlIG9sZCBNaWNyb3NvZnRcbGluZQ0K
V2luZG93cyBBVkkgcm91dGluZXMuICBUaGlzIHdvdWxkIGJlIGEgbW9yZSBkaWZmaWN1bHQgc29s
dXRpb24uICA6LSlcbGluZQ0KTXkgQ29tcG9uZW50IFBhc2NhbCBpbnRlcmZhY2UgdG8gdGhlc2Ug
cm91dGluZXMgaXMgYXR0YWNoZWQgYmVsb3cuXGxpbmUNClxsaW5lDQpNYXJjXGxpbmUNClxsaW5l
DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLVxsaW5lDQpcbGluZQ0KXGxpbmUNClRZUEUgXGxpbmUNCiAgUEFWSUZJTEUq
ICA9IElOVEVHRVI7XGxpbmUNCiAgUEFWSVNUUkVBTSo9IElOVEVHRVI7XGxpbmUNCiAgU3RyaW5n
UHRyKiA9IFBPSU5URVIgVE8gQVJSQVkgW3VudGFnZ2VkXSBPRiBDSEFSO1xsaW5lDQogXGxpbmUN
CiAgQVZJU1RSRUFNSU5GT1cqID0gUkVDT1JEIFt1bnRhZ2dlZF1cbGluZQ0KICAgIGZjY1R5cGUq
LCBmY2NIYW5kbGVyKiwgZHdGbGFncyosIGR3Q2Fwcyo6IElOVEVHRVI7XGxpbmUNCiAgICB3UHJp
b3JpdHkqLCB3TGFuZ3VhZ2UqOiBTSE9SVElOVDtcbGluZQ0KICAgIGR3U2NhbGUqLCBkd1JhdGUq
LCBkd1N0YXJ0KiwgZHdMZW5ndGgqLCBkd0luaXRpYWxGcmFtZXMqLCBkd1N1Z2dlc3RlZEJ1ZmZl
clNpemUqLFxsaW5lDQogICAgZHdRdWFsaXR5KiwgZHdTYW1wbGVTaXplKiwgcmVjdF9sZWZ0Kiwg
cmVjdF90b3AqLCByZWN0X3JpZ2h0KiwgcmVjdF9ib3R0b20qLCBcbGluZQ0KICAgIGR3RWRpdENv
dW50KiwgZHdGb3JtYXRDaGFuZ2VDb3VudCo6IElOVEVHRVI7XGxpbmUNCiAgICBzek5hbWUqOiBB
UlJBWSBbdW50YWdnZWRdIDY0IE9GIENIQVI7XGxpbmUNCiAgRU5EO1xsaW5lDQpcbGluZQ0KXGxp
bmUNClBST0NFRFVSRSBBVklGaWxlSW5pdCogWyJBVklGSUwzMi5ETEwiLCAiQVZJRmlsZUluaXQi
XSAoKTtcbGluZQ0KXGxpbmUNClxsaW5lDQpQUk9DRURVUkUgQVZJRmlsZU9wZW4qIFsiQVZJRklM
MzIuRExMIiwgIkFWSUZpbGVPcGVuVyJdXGxpbmUNCiggVkFSIHBwRmlsZTogICAgUEFWSUZJTEU7
XGxpbmUNCiAgICAgIHN6RmlsZTogICAgU3RyaW5nUHRyO1xsaW5lDQogICAgICB1TW9kZTogICAg
IElOVEVHRVI7XGxpbmUNCiAgICAgIGxwSGFuZGxlcjogSU5URUdFUlxsaW5lDQogKTogSU5URUdF
UjtcbGluZQ0KXGxpbmUNClxsaW5lDQpQUk9DRURVUkUgQVZJRmlsZUNyZWF0ZVN0cmVhbSogWyJB
VklGSUwzMi5ETEwiLCAiQVZJRmlsZUNyZWF0ZVN0cmVhbSJdXGxpbmUNCiggICAgIHBmaWxlIDog
UEFWSUZJTEU7XGxpbmUNCiAgVkFSIHBhdmkgIDogUEFWSVNUUkVBTTtcbGluZQ0KICBWQVIgcHNp
ICAgOiBBVklTVFJFQU1JTkZPV1xsaW5lDQogKTogSU5URUdFUjtcbGluZQ0KXGxpbmUNClxsaW5l
DQpQUk9DRURVUkUgQVZJU3RyZWFtU2V0Rm9ybWF0KiBbIkFWSUZJTDMyLkRMTCIsICJBVklTdHJl
YW1TZXRGb3JtYXQiXVxsaW5lDQooICAgICBwYXZpICAgICAgOiBQQVZJU1RSRUFNO1xsaW5lDQog
ICAgICBwb3MgICAgICAgOiBJTlRFR0VSO1xsaW5lDQogVkFSICBmb3JtYXQgICAgOiBXaW5BcGku
QklUTUFQSU5GT0hFQURFUjtcbGluZQ0KICAgICAgZm9ybWF0c2l6ZTogSU5URUdFUiBcbGluZQ0K
KTogSU5URUdFUjtcbGluZQ0KICAgICAgXGxpbmUNClxsaW5lDQpQUk9DRURVUkUgQVZJU3RyZWFt
V3JpdGUqIFsiQVZJRklMMzIuRExMIiwgIkFWSVN0cmVhbVdyaXRlIl1cbGluZQ0KKCAgICAgcGF2
aSAgICAgICAgICA6IFBBVklTVFJFQU07XGxpbmUNCiAgICAgIHN0YXJ0ICAgICAgICAgOiBJTlRF
R0VSO1xsaW5lDQogICAgICBzYW1wbGVzICAgICAgIDogSU5URUdFUjtcbGluZQ0KICAgICAgYnVm
ZmVyICAgICAgICA6IElOVEVHRVI7XGxpbmUNCiAgICAgIGJ1ZmZlcnNpemUgICAgOiBJTlRFR0VS
O1xsaW5lDQogICAgICBmbGFncyAgICAgICAgIDogSU5URUdFUjtcbGluZQ0KICBWQVIgc2FtcFdy
aXR0ZW4gICA6IElOVEVHRVI7XGxpbmUNCiAgVkFSIGJ5dGVzV3JpdHRlbiAgOiBJTlRFR0VSIFxs
aW5lDQopOiBJTlRFR0VSO1xsaW5lDQpcbGluZQ0KXGxpbmUNClBST0NFRFVSRSBBVklTdHJlYW1S
ZWxlYXNlKiBbIkFWSUZJTDMyLkRMTCIsICJBVklTdHJlYW1SZWxlYXNlIl1cbGluZQ0KKCBwYXZp
OiBQQVZJU1RSRUFNICk6IElOVEVHRVI7XGxpbmUNClxsaW5lDQpcbGluZQ0KUFJPQ0VEVVJFIEFW
SUZpbGVSZWxlYXNlKiBbIkFWSUZJTDMyLkRMTCIsICJBVklGaWxlUmVsZWFzZSJdXGxpbmUNCigg
cGZpbGU6IFBBVklGSUxFICk6IElOVEVHRVI7XGxpbmUNClxsaW5lDQpcbGluZQ0KUFJPQ0VEVVJF
IEFWSUZpbGVFeGl0KiBbIkFWSUZJTDMyLkRMTCIsICJBVklGaWxlRXhpdCJdICgpO1xsaW5lDQpc
bGluZQ0KXGxpbmUNCi0tLS1cbGluZQ0KVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBtZXNzYWdlIHdp
dGggYm9keSAiU0lHTk9GRiBCTEFDS0JPWCIgdG8ge30NCntcKlxodG1sdGFnODQgPGEgY2xhc3M9
Im1vei10eHQtbGluay1hYmJyZXZpYXRlZCIgaHJlZj0ibWFpbHRvOkxJU1RTRVJWQExJU1RTLk9C
RVJPTi5DSCI+fVxodG1scnRmIHtcZmllbGR7XCpcZmxkaW5zdHtIWVBFUkxJTksgIm1haWx0bzpM
SVNUU0VSVkBMSVNUUy5PQkVST04uQ0gifX17XGZsZHJzbHRcY2YxXHVsIFxodG1scnRmMCBMSVNU
U0VSVkBMSVNUUy5PQkVST04uQ0hcaHRtbHJ0ZiB9XGh0bWxydGYwIFxodG1scnRmIH1caHRtbHJ0
ZjAgDQp7XCpcaHRtbHRhZzkyIDwvYT59XGxpbmUNClxsaW5lDQogIFxodG1scnRmXHBhcn1caHRt
bHJ0ZjANCg0Ke1wqXGh0bWx0YWcxMzYgPC9wcmU+fVxodG1scnRmIH1caHRtbHJ0ZjAgDQp7XCpc
aHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzEwNCA8L2Jsb2NrcXVvdGU+fVxodG1scnRmIH1c
cGFyDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzU4IDwvYm9k
eT59DQp7XCpcaHRtbHRhZzIgXHBhciB9DQp7XCpcaHRtbHRhZzI3IDwvaHRtbD59DQp7XCpcaHRt
bHRhZzMgXHBhciB9DQp7XCpcaHRtbHRhZzY0IDxwPn1caHRtbHJ0ZiB7XGh0bWxydGYwIA0Ke1wq
XGh0bWx0YWc0IFxwYXIgfS0tLS0NCntcKlxodG1sdGFnNCBccGFyIH1caHRtbHJ0ZiAgXGh0bWxy
dGYwIFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgbWVzc2FnZSB3aXRoIGJvZHkgIlNJR05PRkYgQkxB
Q0tCT1giIHRvIExJU1RTRVJWQExJU1RTLk9CRVJPTi5DSA0Ke1wqXGh0bWx0YWc0IFxwYXIgfVxo
dG1scnRmICBcaHRtbHJ0ZjAgXGh0bWxydGZ9fQBwdGlvbjogc291cmNlcw==
----boundary-LibPST-iamunique-1204737078_-_---
Received on Thu Jan 07 2010 - 05:51:31 UTC