質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

FFmpeg

FFmpegは、動画と音声を交換できるフリーソフトウェアです。UNIX系OSから派生した、MS-DOSから操作するコマンドラインツールです。libavcodecやlibavformat、libswscale、libavfilterなどを含みます。ライセンスは、コンパイルの際のオプションによりLGPLもしくはGPLに決定されます。対応コーデックや使用できるオプションが多く、幅広く利用されています。

Q&A

解決済

1回答

2932閲覧

rtmp サーバーを使いたい

kokawa2003

総合スコア217

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

FFmpeg

FFmpegは、動画と音声を交換できるフリーソフトウェアです。UNIX系OSから派生した、MS-DOSから操作するコマンドラインツールです。libavcodecやlibavformat、libswscale、libavfilterなどを含みます。ライセンスは、コンパイルの際のオプションによりLGPLもしくはGPLに決定されます。対応コーデックや使用できるオプションが多く、幅広く利用されています。

0グッド

0クリップ

投稿2020/07/18 13:14

https://github.com/theintencity/rtclite/tree/python3
ここにRTMPサーバーとして使えるサーバーがあるらしいので早速使おうとしました。
とりあえず
git clone https://github.com/theintencity/rtclite.git
でソースを取得
make test
make doc
をおこないrtmpサーバを起動したいので
python -m rtclite.vnd.adobe.rtmp
としました。何故かpython3だと失敗してしまうが
なんか起動したのでこのあとFFMPEGで
ffmpeg -rtbufsize 1024M -i /home/kokawa2003/work/koike2.mp4 -pixel_format bgr24 -video_size 640x480 -framerate 30 -c:v libx264 -maxrate 1984k -bufsize 3968k -vf "format=yuv420p" -g 60 -c:a aac -strict -2 -b:a 128k -ar 44100 -f flv rtmp://0.0.0.0:1935/input.flv
としました。/home/kokawa2003/work/koike2.mp4はPCにあった適当な動画です
0.0.0.0:1935 というのはrtclite のデフォルトのIPとPORT(HELPでわかる)
これもうまく行って

shell

1ffmpeg version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the FFmpeg developers 2 built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609 3 configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv 4 WARNING: library configuration mismatch 5 avcodec configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv --enable-version3 --disable-doc --disable-programs --disable-avdevice --disable-avfilter --disable-avformat --disable-avresample --disable-postproc --disable-swscale --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libvo_aacenc --enable-libvo_amrwbenc 6 libavutil 54. 31.100 / 54. 31.100 7 libavcodec 56. 60.100 / 56. 60.100 8 libavformat 56. 40.101 / 56. 40.101 9 libavdevice 56. 4.100 / 56. 4.100 10 libavfilter 5. 40.101 / 5. 40.101 11 libavresample 2. 1. 0 / 2. 1. 0 12 libswscale 3. 1.101 / 3. 1.101 13 libswresample 1. 2.101 / 1. 2.101 14 libpostproc 53. 3.100 / 53. 3.100 15Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/kokawa2003/work/koike2.mp4': 16 Metadata: 17 major_brand : isom 18 minor_version : 512 19 compatible_brands: isomiso2avc1mp41 20 encoder : Lavf56.40.101 21 Duration: 00:25:34.78, start: 0.036281, bitrate: 2065 kb/s 22 Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 1929 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) 23 Metadata: 24 handler_name : VideoHandler 25 Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default) 26 Metadata: 27 handler_name : SoundHandler 28HandShake: client signature does not match! 29[libx264 @ 0x154cfa0] using SAR=1/1 30[libx264 @ 0x154cfa0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX 31[libx264 @ 0x154cfa0] profile High, level 4.0 32[libx264 @ 0x154cfa0] 264 - core 148 r2643 5c65704 - H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=60 keyint_min=6 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=1984 vbv_bufsize=3968 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00 33Output #0, flv, to 'rtmp://0.0.0.0:1935/input.flv': 34 Metadata: 35 major_brand : isom 36 minor_version : 512 37 compatible_brands: isomiso2avc1mp41 38 encoder : Lavf56.40.101 39 Stream #0:0(und): Video: h264 (libx264) ([7][0][0][0] / 0x0007), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, max. 1984 kb/s, 30 fps, 1k tbn, 30 tbc (default) 40 Metadata: 41 handler_name : VideoHandler 42 encoder : Lavc56.60.100 libx264 43 Stream #0:1(und): Audio: aac ([10][0][0][0] / 0x000A), 44100 Hz, stereo, fltp, 128 kb/s (default) 44 Metadata: 45 handler_name : SoundHandler 46 encoder : Lavc56.60.100 aac 47Stream mapping: 48 Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264)) 49 Stream #0:1 -> #0:1 (aac (native) -> aac (native)) 50Press [q] to stop, [?] for help 51frame= 46 fps=0.0 q=0.0 size= 0kB time=00:00:01.64 bitrate= 2.4kbits/sframe= 62 fps= 52 q=33.0 size= 162kB time=00:00:02.18 bitrate= 609.8kbits/frame= 76 fps= 44 q=36.0 size= 335kB time=00:00:02.64 bitrate=1037.9kbits/frame= 89 fps= 40 q=37.0 size= 486kB time=00:00:03.08 bitrate=1289.3kbits/frame= 103 fps= 37 q=38.0 size= 628kB time=00:00:03.55 bitrate=1448.2kbits/frame= 120 fps= 36 q=38.0 size= 789kB time=00:00:04.13 bitrate=1563.0kbits/frame= 133 fps= 35 q=38.0 size= 910kB time=00:00:04.55 bitrate=1638.7kbits/frame= 147 fps= 34 q=39.0 size= 1035kB time=00:00:05.01 bitrate=1690.0kbits/frame= 162 fps= 33 q=38.0 size= 1163kB time=00:00:05.52 bitrate=1723.8kbits/frame= 179 fps= 33 q=37.0 size= 1318kB time=00:00:06.08 bitrate=1774.8kbits/frame= 198 fps= 33 q=36.0 size= 1461kB time=00:00:06.73 bitrate=1777.3kbits/

みたいな感じで出力し始めたので,
これを読みたくて

ffplayで
ffplay rtmp://0.0.0.0:1935/input.flv
としましたが結果は
HandShake: client signature does not match!
Closing connection: NetStream.Play.StreamNotFound sq= 0B f=0/0
rtmp://0.0.0.0:1935/input.flv: Unknown error occurred

で読めませんでした。
よく読むとこのHandShake: client signature does not match!
というのはfffmpegの送信時も起こっていますが、どうすれば解消できますか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

とりあえず上の不具合は
ffplay "rtmp://19168.11.6:1935/input live=1"
で解消できたが今度は
[h264 @ 0x7fe9d002bee0] missing picture in access unit with size 5533
[h264 @ 0x7fe9d002bee0] no frame!
みたいな不具合に悩み中

投稿2020/07/18 13:37

kokawa2003

総合スコア217

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kokawa2003

2020/07/18 13:47

わかりました ffmpeg -i /home/kokawa2003/work/koike2.mp4 -f flv rtmp://192.168.11.6:1935/input で送信して ffplay "rtmp://192.168.11.6:1935/input live=1" で読むとOKらしい。なぜ Livde=1なのかは不明だが
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問