Closed NL5L closed 7 years ago
Hmm, it works for me even on current compilation. Are you sure you are using correct commands, because in attached log I see: call 2 speed 0.75
**call speed 0.33
So there is no channel number in last two command. Please try again and attach full log if error will occur.
Error message is from ffmpeg module which probably tries to load replay clip - I will look into it, because I see same error message on my system.
Here a complete DEBUG output, and the call with 0.33 is indeed a typo...
Strange - everything looks good in log (except for ffmpeg error of course, but it should not impact playing of replay file). For me command like "call 2-20 speed 0.5" changes playing speed - it works in last MAV release and in currently compiled binary too.
Hmmm... With our own builds it does not work... It just keeps playing the last speed. With your MAV 8 build it does work ! But not on Ubuntu 16.04... So it could be a library problem ? Did you check my versions with yours ?
Strange. Maybe this is decimal separator problem - try comma instead of dot. I have this problem often in Poland, but not in CasparCG yet.
If not, try issuing "INFO 2-20" after "CALL 2-20 SPEED 0.5" and tell me what is returned in speed field or attach log file. Then try same for "CALL 2-20 SPEED 0,5".
I have just commited a change which should prevent FFmpeg from throwing errors for replay files, so you can pull it before next compilation.
Hello Krzyc, today I started fresh with a clean new "git clone" and build the MAV 9. Still the same problem and the comma throws a big error ! The point seems to work, even in the INFO but the system keeps playing on the last speed which did work. Also I did try different configurations on every level, but I can not get a speed working between -1 and 1 (oh, 0 does work). log2.txt log2-trace.txt
On my home computer I also tried to get a slomotion with a clean build. And also here I have exact the same problem... ...I have no idea what is different with your build. You did not use the script ? How do you build this project ?
[2016-12-12 22:47:59.756] [14277] [info] Starting CasparCG Video and Graphics Playout Server 2.1.0.3398 e0ece5d MAV Beta 1 [2016-12-12 22:47:59.756] [14277] [info] on Ubuntu 14.04.5 LTS [2016-12-12 22:47:59.758] [14277] [info] Intel(R) Core(TM) i7-4930K CPU @ 3.40GHz Physical threads: 16 [2016-12-12 22:47:59.758] [14277] [info] System Product Name [2016-12-12 22:47:59.758] [14277] [info] [replay] Using libjpeg-turbo version 62 [2016-12-12 22:47:59.758] [14277] [info] Initialized replay module. [2016-12-12 22:47:59.758] [14277] [info] Initialized reroute module. [2016-12-12 22:47:59.760] [14277] [info] Initialized ffmpeg module. [2016-12-12 22:47:59.760] [14277] [info] Initialized oal module. [2016-12-12 22:47:59.760] [14277] [info] Initialized decklink module. [2016-12-12 22:47:59.760] [14277] [info] Initialized screen module. [2016-12-12 22:47:59.809] [14277] [info] Initialized html module. [2016-12-12 22:47:59.809] [14277] [info] Initialized psd module. [2016-12-12 22:47:59.809] [14277] [info] Initialized image module. libDeckLinkAPI.so: cannot open shared object file: No such file or directory [2016-12-12 22:47:59.816] [14277] [info] ffmpeg.avcodec 56.41.100 [2016-12-12 22:47:59.816] [14277] [info] ffmpeg.avformat 56.36.100 [2016-12-12 22:47:59.816] [14277] [info] ffmpeg.avfilter 5.16.101 [2016-12-12 22:47:59.816] [14277] [info] ffmpeg.avutil 54.27.100 [2016-12-12 22:47:59.816] [14277] [info] ffmpeg.swscale 3.1.101 [2016-12-12 22:47:59.816] [14277] [info] decklink.version Not found [2016-12-12 22:47:59.816] [14277] [info] cef.version 3.1750.1805 [2016-12-12 22:47:59.816] [14277] [info] cef.chromeversion 33.0.1750.170 [2016-12-12 22:47:59.816] [14277] [info] freeimage 3.16.0
I have built project like this:
cd build
cmake ..
make
Comma will not work because regex in modules/replay/producer/replay_producer.cpp:277 is missing comma, but from log I see that speed was changed to 0.5 so problem is in something else.
So speed like -1, 2 or 3 work, but 0.5 or 0.1 not? Hey, I see that in modules/replay/producer/replay_producer.cpp:391 there is abs() function used for float type - this could be potential point of failure - there should by fabs() instead.
Please update your source and try compiling again.
Hello Krzyc, it seems to be fixed, great ! Thx !!
Thanks.
Hello Krzyc,
building is going perfect now. We have a test system with Ubuntu 14.04 LTS and one with Ubuntu 16.04 LTS. But now, with the latest checkout (this morning) and the MAV9 (a couple of days ago) the speed function does not work anymore with a decimal point.
These commands working perfect: call 2 speed 1 call 2 speed 0 call 2 speed -1 call 2 speed 4 call 2 speed 32 call 2 speed -16
But these do not work at all: call 2 speed 0.25 call 2 speed 0.5 call 2 speed 0.75 call 2 speed -0.5
Also we have with the play command an FFmpeg error messages. Here the complete terminal output:
play 2 testtoday [2016-12-09 22:22:58.129] [21949] [warning] [ffmpeg] [vobsub @ 0x3cfce7522000] Format vobsub detected only with low score of 1, misdetection possible! [2016-12-09 22:22:58.129] [21949] [error] [ffmpeg] [vobsub @ 0x3cfce7522000] Unable to open media/ja.sub as MPEG subtitles [2016-12-09 22:22:58.141] [21949] [error] modules/ffmpeg/producer/input/input.cpp(280): Throw in function operator() [2016-12-09 22:22:58.141] [21949] [error] Dynamic exception type: boost::exception_detail::clone_impl
[2016-12-09 22:22:58.141] [21949] [error] [caspar::tag_msg_info] = No such file or directory
[2016-12-09 22:22:58.141] [21949] [error] [caspar::tag_source_info] = media/ja.idx
[2016-12-09 22:22:58.141] [21949] [error] [caspar::tag_context_info] =
[2016-12-09 22:22:58.141] [21949] [error] [caspar::tag_call_stack_info] =
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::throw_on_ffmpeg_error(int, char const, char const, char const, char const, int) + 0xef
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::throw_on_ffmpeg_error(int, std::basic_string<wchar_t, std::char_traits, std::allocator > const&, char const, char const, char const, int) + 0x50
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::input::implementation::open_input(std::basic_string<wchar_t, std::char_traits, std::allocator > const&, std::vector<std::pair<std::string, std::string>, std::allocator<std::pair<std::string, std::string> > > const&) + 0x2a3
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::input::implementation::implementation(caspar::spl::shared_ptr, std::basic_string<wchar_t, std::char_traits, std::allocator > const&, bool, unsigned int, unsigned int, bool, std::vector<std::pair<std::string, std::string>, std::allocator<std::pair<std::string, std::string> > > const&) + 0x75
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::input::input(caspar::spl::shared_ptr const&, std::basic_string<wchar_t, std::char_traits, std::allocator > const&, bool, unsigned int, unsigned int, bool, std::vector<std::pair<std::string, std::string>, std::allocator<std::pair<std::string, std::string> > > const&) + 0x90
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::ffmpeg_producer::ffmpeg_producer(caspar::spl::shared_ptr const&, caspar::core::video_format_desc const&, std::basic_string<wchar_t, std::char_traits, std::allocator > const&, std::basic_string<wchar_t, std::char_traits, std::allocator > const&, bool, unsigned int, unsigned int, bool, std::basic_string<wchar_t, std::char_traits, std::allocator > const&, std::vector<std::pair<std::string, std::string>, std::allocator<std::pair<std::string, std::string> > > const&) + 0x194
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::ffmpeg::create_producer(caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&, caspar::spl::shared_ptr const&) + 0x6b1
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::_Function_handler<caspar::spl::shared_ptr (caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&), boost::_bi::bind_t<caspar::spl::shared_ptr, caspar::spl::shared_ptr ( )(caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&, caspar::spl::shared_ptr const&), boost::_bi::list3<boost::arg<1>, boost::arg<2>, boost::_bi::value<caspar::spl::shared_ptr > > > >::_M_invoke(std::_Any_data const&, caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&) + 0x2d
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::core::do_create_producer(caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&, std::vector<std::function<caspar::spl::shared_ptr (caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&)>, std::allocator<std::function<caspar::spl::shared_ptr (caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&)> > > const&, bool) + 0xdc
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::core::frame_producer_registry::create_producer(caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&) const + 0x5c
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::protocol::amcp::loadbg_command(caspar::protocol::amcp::command_context&) + 0x698
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::protocol::amcp::play_command(caspar::protocol::amcp::command_context&) + 0x3d
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::_Function_handler<std::basic_string<wchar_t, std::char_traits, std::allocator > (caspar::protocol::amcp::command_context&), std::basic_string<wchar_t, std::char_traits, std::allocator > ()(caspar::protocol::amcp::command_context&)>::_M_invoke(std::_Any_data const&, caspar::protocol::amcp::command_context&) + 0x20
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>, bool) + 0x29
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::future<decltype ({parm#1}())> caspar::executor::internal_begin_invoke<caspar::executor::wait()::{lambda()#1}>(caspar::executor::wait()::{lambda()#1}&&, caspar::task_priority)::{lambda()#2}::operator()() const + 0x18
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::executor::run() + 0x457
[2016-12-09 22:22:58.141] [21949] [error], std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&, std::vector<std::function<caspar::spl::shared_ptr (caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&)>, std::allocator<std::function<caspar::spl::shared_ptr (caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&)> > > const&, bool) + 0xdc
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::core::frame_producer_registry::create_producer(caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits, std::allocator >, std::allocator<std::basic_string<wchar_t, std::char_traits, std::allocator > > > const&) const + 0x5c
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::protocol::amcp::loadbg_command(caspar::protocol::amcp::command_context&) + 0x698
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::protocol::amcp::play_command(caspar::protocol::amcp::command_context&) + 0x3d
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::_Function_handler<std::basic_string<wchar_t, std::char_traits, std::allocator > (caspar::protocol::amcp::command_context&), std::basic_string<wchar_t, std::char_traits, std::allocator > ()(caspar::protocol::amcp::command_context&)>::_M_invoke(std::_Any_data const&, caspar::protocol::amcp::command_context&) + 0x20
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>, bool*) + 0x29
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : std::future<decltype ({parm#1}())> caspar::executor::internal_begin_invoke<caspar::executor::wait()::{lambda()#1}>(caspar::executor::wait()::{lambda()#1}&&, caspar::task_priority)::{lambda()#2}::operator()() const + 0x18
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::executor::run() + 0x457
[2016-12-09 22:22:58.141] [21949] [error]
[2016-12-09 22:22:58.141] [21949] [error] 2, "No such file or directory"[boost::errinfo_apifunction] = avformat_open_input(&weak_context, u8(resource_name).c_str(), input_format, &format_options) [2016-12-09 22:22:58.141] [21949] [error] Caught at (AMCPCommandQueue Channel 2 for Console): [2016-12-09 22:22:58.141] [21949] [error]
[2016-12-09 22:22:58.141] [21949] [error] bin/casparcg : caspar::core::do_create_producer(caspar::core::frame_producer_dependencies const&, std::vector<std::basic_string<wchar_t, std::char_traits
202 PLAY OK
call 2 speed 0.5
202 CALL OK
call 2 speed 10
202 CALL OK
call 2 speed -2
202 CALL OK
call 2 speed 0.75
202 CALL OK
call speed 0.33
400 ERROR
call speed 0.33