[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-dev] client command-line or library for streaming audio and v
Re: [Gnash-dev] client command-line or library for streaming audio and video - does it exist?
Mon, 21 Jul 2008 16:56:12 -0600
Thunderbird 184.108.40.206 (X11/20080501)
Luke Kenneth Casson Leighton wrote:
excellent - ahhh, i loveit!! code in a source code repository which
is 40% commented out ha ha. i'm delighted to see this kind of
hand-crafted stuff, brings back real fond memories of writing one
HUNDRED thousand lines of hand-crafted marshalling msrpc code, for
samba tng, ten years ago.
Hey, reverse engineering RTMP is not a trivial task. More of that
code is working than commented out anyway. This is the "get it working"
phase of development, there will be continuing work cleaning up the code
as time goes on. This is why it's in a branch, and not trunk...
whilst i realise and fully appreciate that hand-marshalling of RPC
packets is initially far far easier, and you get a better "feel" for
this was where i got to on my second major
This is far from the first network-reverse-engineering project I've
been involved with in the last 30++ years... I've built several systems
like you've described, they're really only suitable when you fully
understand the protocol, not really possible with RTMP, although these
days I understand it way better than I used to. Since the range of
commands is actually pretty small, it seemed good to avoid over
engineering a solution.
i cannot overemphasise enough how vital it is that you consider doing
the client _and_ the server _at the same time_ (and, even better, the
sniffer as well).
I've been implementing both client side and server side at the
same time. I haven't done a sniffer, I can read the raw hex pretty good
at this point. :-) I usually use tcpdump or ngrep.
and also to do - day after day, every single time you do any tests -
as many cross-system bootstrap matrices as you can possibly find. in
I also have test cases for most of the encoding & decoding, so it's
possible to make sure Gnash's RTMP code stays portable. I have my own
build farm for testing, which helps too. I've never seen any other RTMP
and AMF test cases, I've been writing my own.
- rob -