Hello,
I’m having trouble getting rtmp stream output (ffmpeg consumer) working properly on CasparCG both with version 2.2 stable, and last build from master (I think it is 2.3 beta 1 or so?). I’m trying to use it on Ubuntu 18.04.4, but I’ve redone some tests on Windows with similar results.
ADD 1 STREAM rtmp://$server/$application/$stream -codec:v libx264 -codec:a aac -b:v 6000k -filter:v format=yuv422p -b:a 128k -filter:a pan=stereo|c0=c0|c1=c1 -format flv
[2020-06-13 01:27:42.033] [info] Received message from Console: ADD 1 STREAM rtmp://$server/$application/$stream -codec:v libx264 -codec:a aac -b:v 6000k -filter:v format=yuv422p -b:a 128k -filter:a pan=stereo|c0=c0|c1=c1 -format flv\r\n
#202 ADD OK
[2020-06-13 01:27:42.034] [info] ffmpeg[rtmp://$server/$application/$stream] Initialized.
[2020-06-13 01:27:42.037] [info] [ffmpeg] [libx264 @ 0x7f5a7a596400] using SAR=1/1
[2020-06-13 01:27:42.037] [info]
[2020-06-13 01:27:42.038] [info] [ffmpeg] [libx264 @ 0x7f5a7a596400] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[2020-06-13 01:27:42.038] [info]
[2020-06-13 01:27:42.053] [warning] Assertion Failed: counter < 8 file:/source/core/consumer/frame_consumer.cpp line:93
[2020-06-13 01:27:42.061] [info] [ffmpeg] [libx264 @ 0x7f5a7a596400] profile High 4:2:2, level 4.2, 4:2:2 8-bit
[2020-06-13 01:27:42.061] [info]
[2020-06-13 01:27:42.062] [info] [ffmpeg] [Parsed_pan_0 @ 0x7f5a7a58b940] Pure channel mapping detected:
[2020-06-13 01:27:42.062] [info] [ffmpeg] 0
[2020-06-13 01:27:42.062] [info] [ffmpeg] 1
[2020-06-13 01:27:42.062] [info] [ffmpeg]
[2020-06-13 01:27:42.062] [info]
[2020-06-13 01:27:43.579] [warning] [ffmpeg] [flv @ 0x7f5a7a597900] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[2020-06-13 01:27:43.579] [warning]
[2020-06-13 01:27:43.579] [error] [ffmpeg] [flv @ 0x7f5a7a597900] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 40 >= NOPTS
[2020-06-13 01:27:43.579] [error]
[2020-06-13 01:27:43.579] [error] Exception: /source/modules/ffmpeg/consumer/ffmpeg_consumer.cpp(602): Throw in function caspar::ffmpeg::ffmpeg_consumer::initialize(const caspar::core::video_format_desc&, int)::<lambda()>::<lambda()>::<lambda()> mutable
[2020-06-13 01:27:43.579] [error] Dynamic exception type: boost::exception_detail::clone_impl<caspar::ffmpeg::ffmpeg_error_t>
[2020-06-13 01:27:43.579] [error] [caspar::tag_stacktrace_info*] = 0# caspar::stacktrace_info() in bin/casparcg
[2020-06-13 01:27:43.579] [error] 1# caspar::detail::scope_exit<caspar::ffmpeg::ffmpeg_consumer::initialize(caspar::core::video_format_desc const&, int)::{lambda()#1}::operator()() const::{lambda()#4}::operator()() const::{lambda()#1}>::~scope_exit() in bin/casparcg
[2020-06-13 01:27:43.579] [error] 2# caspar::ffmpeg::ffmpeg_consumer::initialize(caspar::core::video_format_desc const&, int)::{lambda()#1}::operator()() const::{lambda()#4}::operator()() const in bin/casparcg
[2020-06-13 01:27:43.579] [error] 3# 0x00007F5D5C84D6DF in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
[2020-06-13 01:27:43.579] [error] 4# 0x00007F5D5559A6DB in lib/libpthread.so.0
[2020-06-13 01:27:43.579] [error] 5# clone in /lib/x86_64-linux-gnu/libc.so.6
[2020-06-13 01:27:43.579] [error]
[2020-06-13 01:27:43.579] [error] [boost::errinfo_errno_*] = 0, "Success"
[2020-06-13 01:27:43.579] [error] [boost::errinfo_api_function_*] = avio_closep(&oc->pb)
[2020-06-13 01:27:43.579] [error]
[2020-06-13 01:27:43.579] [error] 0# caspar::log::get_stack_trace[abi:cxx11]() in bin/casparcg
[2020-06-13 01:27:43.579] [error] 1# caspar::detail::scope_exit<caspar::ffmpeg::ffmpeg_consumer::initialize(caspar::core::video_format_desc const&, int)::{lambda()#1}::operator()() const::{lambda()#4}::operator()() const::{lambda()#1}>::~scope_exit() in bin/casparcg
[2020-06-13 01:27:43.579] [error] 2# caspar::ffmpeg::ffmpeg_consumer::initialize(caspar::core::video_format_desc const&, int)::{lambda()#1}::operator()() const::{lambda()#4}::operator()() const in bin/casparcg
[2020-06-13 01:27:43.579] [error] 3# 0x00007F5D5C84D6DF in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
[2020-06-13 01:27:43.579] [error] 4# 0x00007F5D5559A6DB in lib/libpthread.so.0
[2020-06-13 01:27:43.579] [error] 5# clone in /lib/x86_64-linux-gnu/libc.so.6
[2020-06-13 01:27:43.579] [error]
[2020-06-13 01:27:43.581] [error] Exception: /source/modules/ffmpeg/consumer/ffmpeg_consumer.cpp(615): Throw in function caspar::ffmpeg::ffmpeg_consumer::initialize(const caspar::core::video_format_desc&, int)::<lambda()>::<lambda()>
[2020-06-13 01:27:43.581] [error] Dynamic exception type: boost::exception_detail::clone_impl<caspar::ffmpeg::ffmpeg_error_t>
[2020-06-13 01:27:43.581] [error] [caspar::tag_stacktrace_info*] = 0# caspar::stacktrace_info() in bin/casparcg
[2020-06-13 01:27:43.581] [error] 1# caspar::ffmpeg::ffmpeg_consumer::initialize(caspar::core::video_format_desc const&, int)::{lambda()#1}::operator()() const::{lambda()#4}::operator()() const in bin/casparcg
[2020-06-13 01:27:43.581] [error] 2# 0x00007F5D5C84D6DF in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
[2020-06-13 01:27:43.581] [error] 3# 0x00007F5D5559A6DB in lib/libpthread.so.0
[2020-06-13 01:27:43.581] [error] 4# clone in /lib/x86_64-linux-gnu/libc.so.6
[2020-06-13 01:27:43.581] [error]
[2020-06-13 01:27:43.581] [error] [boost::errinfo_errno_*] = 22, "Invalid argument"
[2020-06-13 01:27:43.581] [error] [boost::errinfo_api_function_*] = av_interleaved_write_frame(oc, pkt.get())
[2020-06-13 01:27:43.581] [error]
[2020-06-13 01:27:43.581] [error] 0# caspar::log::get_stack_trace[abi:cxx11]() in bin/casparcg
[2020-06-13 01:27:43.581] [error] 1# caspar::ffmpeg::ffmpeg_consumer::initialize(caspar::core::video_format_desc const&, int)::{lambda()#1}::operator()() const::{lambda()#4}::operator()() const in bin/casparcg
[2020-06-13 01:27:43.581] [error] 2# 0x00007F5D5C84D6DF in /usr/lib/x86_64-linux-gnu/libstdc++.so.6
[2020-06-13 01:27:43.581] [error] 3# 0x00007F5D5559A6DB in lib/libpthread.so.0
[2020-06-13 01:27:43.581] [error] 4# clone in /lib/x86_64-linux-gnu/libc.so.6
[2020-06-13 01:27:43.581] [error]
The last line is actualy without any text after [error].
I also tried streaming without specifying -codec:v after seeing many posts recommening it on this forum. I got it streaming, but the quality is just ugly and many servers which create HLS from rtmp are not accepting this stream, and are only playing audio.
I also have problem authenticating with rtmp servers requiring it. When using rtmp://$username:$password@$fqdn/… it shows, that domain name $username was not found. When trying command with pubUser=$username pubPasswd=$password it seems it just ignores these parameters.
Any ideas on these issues?
Before somebody posts something like “just use Google search”, “look into ffmpeg documentation”, or “look at the discussions about this on this forum” please note that I’ve just spent almost 2.5 days doing just that. Also it seems that the problems aren’t that much related to ffmpeg as everything works absolutely fine when streaming with pure ffmpeg.
Thank you in advance.