RTMPDUMP(1) General Commands Manual RTMPDUMP(1)

rtmpdump - کلاینت جریان رسانه‌ای RTMP

rtmpdump -r url [-n hostname] [-c port] [-l protocol] [-S host:port] [-a app] [-t tcUrl] [-p pageUrl] [-s swfUrl] [-f flashVer] [-u auth] [-C conndata] [-y playpath] [-Y] [-v] [-d subscription] [-e] [-k skip] [-A start] [-B stop] [-b buffer] [-m timeout] [-T key] [-j JSON] [-w swfHash] [-x swfSize] [-W swfUrl] [-X swfAge] [-o output] [-#] [-q] [-V] [-z]
rtmpdump -h

rtmpdump ابزاری برای دریافت و ذخیره‌سازی محتوای چندرسانه‌ایِ جاری‌شده از طریق RTMP است.

rtmpdump اتصالی به کارگزار RTMP مشخص‌شده برقرار می‌کند و رسانهٔ تعیین‌شده با url داده‌شده را پخش (و دریافت) می‌کند. نشانی url باید در قالب زیر باشد:

rtmp[t][e]://hostname[:port][/app[/playpath]]

پروتکل rtmp عادی، و همچنین نشست‌های تونل‌شده و رمزنگاری‌شده پشتیبانی می‌شوند..SH "گزینه‌ها (OPTIONS)"

این گزینه‌ها نحوهٔ اتصال به کارساز رسانه را تعیین می‌کنند.

نشانی وب (URL) کارساز و محتوای رسانه‌ای.
نام میزبان را در RTMP URL بازنویسی می‌کند.
شماره درگاه (port) را در RTMP URL بازنویسی می‌کند.
پروتکل را در RTMP URL بازنویسی می‌کند.
0 = rtmp
1 = rtmpt
2 = rtmpe
3 = rtmpte
4 = rtmps
5 = rtmpts
استفاده از پیشکار (proxy) مشخص‌شدهٔ SOCKS4.

این گزینه‌ها محتوای بستهٔ درخواست Connect در پروتکل RTMP را تعیین می‌کنند. اگر مقادیر درستی ارائه نشود، کارساز رسانه تلاش برای برقراری اتصال را رد خواهد کرد.

نام برنامه‌ای که در کارساز RTMP به آن متصل می‌شوید. مقدار app را در RTMP URL بازنویسی می‌کند. گاهی تجزیه‌کنندهٔ نشانیِ rtmpdump نمی‌تواند نام برنامه را به طور خودکار تشخیص دهد، بنابراین باید با استفاده از این گزینه صراحتاً مشخص شود.
نشانی (URL) جریان مقصد. مقدار پیش‌فرض rtmp[e]://host[:port]/app/playpath است.
نشانی صفحهٔ وبی که رسانه در آن جاسازی شده است. به‌طور پیش‌فرض هیچ مقداری ارسال نخواهد شد.
نشانی پخش‌کنندهٔ SWF برای رسانه. به‌طور پیش‌فرض هیچ مقداری ارسال نخواهد شد.
نسخهٔ افزونهٔ Flash که برای اجرای پخش‌کنندهٔ SWF استفاده شده است. مقدار پیش‌فرض "LNX 10,0,32,18" است.
یک رشتهٔ احراز هویت برای الحاق به پیام Connect. استفاده از این گزینه یک مقدار بولی TRUE و سپس رشتهٔ مشخص‌شده را پیوست می‌کند. این گزینه فقط توسط برخی کارسازهای خاص استفاده می‌شود و منسوخ شده است. به جای آن باید از گزینهٔ عمومی‌تر --conn استفاده شود.
الحاق داده‌های دلخواه AMF به پیام Connect. نوع (type) باید B برای بولی (Boolean)، N برای عدد (number)، S برای رشته (string)، O برای شیء (object)، یا Z برای null باشد. برای مقادیر بولی، داده باید به‌ترتیب 0 برای FALSE یا 1 برای TRUE باشد. به همین ترتیب برای شیءها، داده باید 0 یا 1 باشد تا به‌ترتیب یک شیء را پایان داده یا آغاز کند. می‌توان موارد داده در زیرشیءها را نام‌گذاری کرد؛ با قرار دادن پیشوند 'N' قبل از نوع و تعیین نام پیش از مقدار، مثلاً NB:myFlag:1. این گزینه می‌تواند چندین بار برای ساخت توالی‌های دلخواه AMF استفاده شود؛ به عنوان مثال:
-C B:1 -C S:authMe -C O:1 -C NN:code:1.23 -C NS:flag:ok -C O:0

این گزینه‌ها پس از موفقیت‌آمیز بودن درخواست Connect اعمال می‌شوند.

مقدار playpath تجزیه‌شده از RTMP URL را بازنویسی می‌کند. گاهی تجزیه‌کنندهٔ نشانی در rtmpdump نمی‌تواند playpath صحیح را به‌طور خودکار تشخیص دهد، بنابراین باید صراحتاً با استفاده از این گزینه مشخص شود.
پیش از ارسال دستور play، یک دستور set_playlist صادر می‌کند. فهرست پخش (playlist) تنها شامل playpath فعلی خواهد بود.
مشخص می‌کند که رسانه یک جریان زنده (live stream) است. در جریان‌های زنده امکان ازسرگیری (resuming) یا جست‌وجو و پرش (seeking) وجود ندارد.
نام جریان زنده‌ای که باید مشترک آن شد. مقدار پیش‌فرض آن playpath است.
بارگیری تقریباً به‌صورت بی‌درنگ (realtime)، بدون تلاش برای افزایش سرعت از طریق دستورهای Pause/Unpause (معروف به «ترفند BUFX»). برای کارسازهایی مفید است که با دستور Unpause در زمان به عقب می‌پرند. ازسرگیری و جست‌وجو در جریان‌های بی‌درنگ همچنان امکان‌پذیر است.
ازسرگیری یک بارگیری ناقص RTMP.
هنگام جست‌وجو برای آخرین فریم کلیدی (keyframe) جهت ازسرگیری، از num فریم کلیدی صرف‌نظر می‌کند. این گزینه زمانی که تلاش عادی برای ازسرگیری با شکست مواجه می‌شود، مفید است. مقدار پیش‌فرض 0 است.
شروع از ثانیهٔ num در جریان رسانه‌ای. برای جریان‌های زنده معتبر نیست.
توقف در ثانیهٔ num در جریان رسانه‌ای.
تنظیم زمان بافر روی num میلی‌ثانیه. مقدار پیش‌فرض 36000000 است.
اتمام مهلت نشست (timeout) در صورت دریافت نکردن هیچ داده‌ای از کارساز پس از گذشت num ثانیه. مقدار پیش‌فرض 120 است..SS "پارامترهای امنیتی (Security Parameters)" این گزینه‌ها درخواست‌های احراز هویت اضافی از سوی سرور را مدیریت می‌کنند.
کلید پاسخ SecureToken؛ در صورتی که سرور به احراز هویت SecureToken نیاز داشته باشد، استفاده می‌شود.
توکن JSON مورد استفاده توسط سرورهای قدیمی Justin.tv. دستور NetStream.Authenticate.UsherToken را فراخوانی می‌کند.
هش SHA256 از فایل SWF از حالت فشرده خارج‌شده. در صورتی که سرور از تأیید اعتبار SWF استفاده کند ممکن است به این گزینه نیاز باشد، اما گزینهٔ --swfVfy در زیر را نیز بررسی کنید. هش برابر با ۳۲ بایت است و باید در قالب شانزده‌شانزدهی (هگزادسیمال) ارائه شود. گزینهٔ --swfsize باید همیشه به همراه این گزینه استفاده شود.
اندازهٔ فایل SWF از حالت فشرده خارج‌شده. در صورتی که سرور از تأیید اعتبار SWF استفاده کند ممکن است به این گزینه نیاز باشد، اما گزینهٔ --swfVfy در زیر را نیز بررسی کنید. گزینهٔ --swfhash باید همیشه به همراه این گزینه استفاده شود.
نشانی URL پخش‌کنندهٔ SWF برای این رسانه. این گزینه جایگزین هر سه گزینهٔ --swfUrl، --swfhash، و --swfsize می‌شود. هنگام استفاده از این گزینه، پخش‌کنندهٔ SWF از URL مشخص‌شده دریافت شده و هش و اندازهٔ آن به‌طور خودکار محاسبه می‌شود. همچنین این اطلاعات در یک فایل .swfinfo در دایرکتوری خانگی کاربر ذخیره (کَش) می‌شود تا نیازی نباشد با هر بار اجرای rtmpdump مجدداً دریافت و محاسبه گردد. فایل .swfinfo نشانی URL، زمان واکشی، برچسب زمان تغییر فایل SWF، اندازه و هش آن را ثبت می‌کند. به‌طور پیش‌فرض، اطلاعات کش‌شده به مدت ۳۰ روز پیش از بررسی مجدد مورد استفاده قرار می‌گیرند.
مشخص می‌کند که اطلاعات کش‌شدهٔ SWF تا چند روز پیش از بررسی مجدد معتبر باشند. برای بررسی دائمی URL فایل SWF از 0 استفاده کنید. توجه داشته باشید در صورتی که بررسی نشان دهد برچسب زمان تغییر فایل SWF نسبت به قبل تفاوتی نکرده است، فایل مجدداً دریافت نخواهد شد.

نام فایل خروجی را مشخص می‌کند. اگر نام - باشد یا وارد نشود، جریان داده در stdout نوشته می‌شود.
نمایش پیشرفت دریافت جریان با علامت هشتگ (#) به ازای هر ۱٪ پیشرفت، به جای شمارندهٔ بایت.
نادیده‌گرفتن و فرونشاندن تمامی خروجی‌های دستور.
نمایش خروجی پرجزئیات دستور.
خروجی در سطح اشکال‌زدایی (دیباگ). بسیار پرجزئیات، شامل دامپ هگزادسیمال تمامی داده‌های بسته‌ها.
چاپ خلاصه‌ای از گزینه‌های دستور.

0
اجرای موفقیت‌آمیز برنامه.
1
خطای غیرقابل‌جبران.
2
انتقال ناقض؛ ممکن است با ازسرگیری (resume)، پیشرفت بیشتری حاصل شود..SH "محیط (ENVIRONMENT)"
مقدار $HOME به‌عنوان مکان فایل .swfinfo استفاده می‌شود.

$HOME/.swfinfo
حافظه پنهان اطلاعات SWF Verification

rtmpgw(8)

Andrej Stepanchuk, Howard Chu, The Flvstreamer Team
http://rtmpdump.mplayerhq.hu

2012-07-24 RTMPDump v2.4