You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I changed some of the structure of the code in function ffmpeg_set_quality() because there didn't seem to be one set of parameters that would work for every h.264 codec. I left structure in there to try and insert parameters for Intel QSV but I ran into issues simply getting ffmpeg to use that codec and a lot of info about it is out of date. But I would like to see NVENC work with Motion as I'm getting good results so far with an ov5647 connected to a Raspberry Pi Zero W2 streaming 1280x960@30fps. The quality I'm getting with MotionEye set to 50% has been 'good enough' with the other parameters in my fork.
Please have someone familiar with the ffmpeg.c code take a look and see if what I have done is acceptable of if they would like to use it to create a fix more in line with the coding standards of the project.
Motion log output at log_level 8
[0:motion] [NTC] [ALL] conf_load: Processing thread 0 - config file /etc/motioneye/motion.conf
[0:motion] [NTC] [ALL] config_camera: Processing camera config file camera-1.conf
[0:motion] [NTC] [ALL] motion_startup: Logging to syslog
[0:motion] [NTC] [ALL] motion_startup: Motion 4.7.0 Started
[0:motion] [NTC] [ALL] motion_startup: Using default log type (ALL)
[0:motion] [NTC] [ALL] motion_startup: Using log type (ALL) log level (ALL)
[0:motion] [INF] [ALL] conf_output_parms: Writing configuration parameters from all files (2):
[0:motion] [INF] [ALL] Thread 0 - Config file: /etc/motioneye/motion.conf
[0:motion] [INF] [ALL] daemon off
[0:motion] [INF] [ALL] setup_mode off
[0:motion] [INF] [ALL] pid_file
[0:motion] [INF] [ALL] log_file
[0:motion] [INF] [ALL] log_level 9
[0:motion] [INF] [ALL] log_type ALL
[0:motion] [INF] [ALL] quiet on
[0:motion] [INF] [ALL] native_language on
[0:motion] [INF] [ALL] watchdog_tmo 30
[0:motion] [INF] [ALL] watchdog_kill 10
[0:motion] [INF] [ALL] camera_name
[0:motion] [INF] [ALL] camera_id 0
[0:motion] [INF] [ALL] target_dir
[0:motion] [INF] [ALL] video_device /dev/video0
[0:motion] [INF] [ALL] video_params
[0:motion] [INF] [ALL] auto_brightness 0
[0:motion] [INF] [ALL] tuner_device
[0:motion] [INF] [ALL] roundrobin_frames 1
[0:motion] [INF] [ALL] roundrobin_skip 1
[0:motion] [INF] [ALL] roundrobin_switchfilter off
[0:motion] [INF] [ALL] netcam_url
[0:motion] [INF] [ALL] netcam_params
[0:motion] [INF] [ALL] netcam_high_url
[0:motion] [INF] [ALL] netcam_high_params
[0:motion] [INF] [ALL] netcam_userpass
[0:motion] [INF] [ALL] width 640
[0:motion] [INF] [ALL] height 480
[0:motion] [INF] [ALL] framerate 15
[0:motion] [INF] [ALL] minimum_frame_time 0
[0:motion] [INF] [ALL] rotate 0
[0:motion] [INF] [ALL] flip_axis none
[0:motion] [INF] [ALL] locate_motion_mode off
[0:motion] [INF] [ALL] locate_motion_style box
[0:motion] [INF] [ALL] text_left
[0:motion] [INF] [ALL] text_right %Y-%m-%d\n%T
[0:motion] [INF] [ALL] text_changes off
[0:motion] [INF] [ALL] text_scale 1
[0:motion] [INF] [ALL] text_event %Y%m%d%H%M%S
[0:motion] [INF] [ALL] emulate_motion off
[0:motion] [INF] [ALL] pause off
[0:motion] [INF] [ALL] threshold 1500
[0:motion] [INF] [ALL] threshold_maximum 0
[0:motion] [INF] [ALL] threshold_tune off
[0:motion] [INF] [ALL] noise_level 32
[0:motion] [INF] [ALL] noise_tune on
[0:motion] [INF] [ALL] despeckle_filter
[0:motion] [INF] [ALL] area_detect
[0:motion] [INF] [ALL] mask_file
[0:motion] [INF] [ALL] mask_privacy
[0:motion] [INF] [ALL] smart_mask_speed 0
[0:motion] [INF] [ALL] lightswitch_percent 0
[0:motion] [INF] [ALL] lightswitch_frames 5
[0:motion] [INF] [ALL] minimum_motion_frames 1
[0:motion] [INF] [ALL] event_gap 60
[0:motion] [INF] [ALL] pre_capture 0
[0:motion] [INF] [ALL] post_capture 0
[0:motion] [INF] [ALL] on_event_start
[0:motion] [INF] [ALL] on_event_end
[0:motion] [INF] [ALL] on_picture_save
[0:motion] [INF] [ALL] on_area_detected
[0:motion] [INF] [ALL] on_motion_detected
[0:motion] [INF] [ALL] on_movie_start
[0:motion] [INF] [ALL] on_movie_end
[0:motion] [INF] [ALL] on_camera_lost
[0:motion] [INF] [ALL] on_camera_found
[0:motion] [INF] [ALL] picture_output off
[0:motion] [INF] [ALL] picture_output_motion off
[0:motion] [INF] [ALL] picture_type jpeg
[0:motion] [INF] [ALL] picture_quality 75
[0:motion] [INF] [ALL] picture_exif
[0:motion] [INF] [ALL] picture_filename %v-%Y%m%d%H%M%S-%q
[0:motion] [INF] [ALL] snapshot_interval 0
[0:motion] [INF] [ALL] snapshot_filename %v-%Y%m%d%H%M%S-snapshot
[0:motion] [INF] [ALL] movie_output on
[0:motion] [INF] [ALL] movie_output_motion off
[0:motion] [INF] [ALL] movie_max_time 120
[0:motion] [INF] [ALL] movie_bps 400000
[0:motion] [INF] [ALL] movie_quality 60
[0:motion] [INF] [ALL] movie_codec mkv
[0:motion] [INF] [ALL] movie_duplicate_frames off
[0:motion] [INF] [ALL] movie_passthrough off
[0:motion] [INF] [ALL] movie_filename %v-%Y%m%d%H%M%S
[0:motion] [INF] [ALL] movie_extpipe_use off
[0:motion] [INF] [ALL] movie_extpipe
[0:motion] [INF] [ALL] timelapse_interval 0
[0:motion] [INF] [ALL] timelapse_mode daily
[0:motion] [INF] [ALL] timelapse_fps 30
[0:motion] [INF] [ALL] timelapse_codec mpg
[0:motion] [INF] [ALL] timelapse_filename %Y%m%d-timelapse
[0:motion] [INF] [ALL] video_pipe
[0:motion] [INF] [ALL] video_pipe_motion
[0:motion] [INF] [ALL] webcontrol_port 7999
[0:motion] [INF] [ALL] webcontrol_ipv6 off
[0:motion] [INF] [ALL] webcontrol_localhost on
[0:motion] [INF] [ALL] webcontrol_parms 2
[0:motion] [INF] [ALL] webcontrol_interface 1
[0:motion] [INF] [ALL] webcontrol_auth_method 0
[0:motion] [INF] [ALL] webcontrol_authentication
[0:motion] [INF] [ALL] webcontrol_tls off
[0:motion] [INF] [ALL] webcontrol_cert
[0:motion] [INF] [ALL] webcontrol_key
[0:motion] [INF] [ALL] webcontrol_header_params
[0:motion] [INF] [ALL] webcontrol_lock_minutes 5
[0:motion] [INF] [ALL] webcontrol_lock_attempts 5
[0:motion] [INF] [ALL] webcontrol_lock_max_ips 25
[0:motion] [INF] [ALL] stream_port 0
[0:motion] [INF] [ALL] stream_localhost on
[0:motion] [INF] [ALL] stream_auth_method 0
[0:motion] [INF] [ALL] stream_authentication
[0:motion] [INF] [ALL] stream_tls off
[0:motion] [INF] [ALL] stream_header_params
[0:motion] [INF] [ALL] stream_preview_scale 25
[0:motion] [INF] [ALL] stream_preview_newline off
[0:motion] [INF] [ALL] stream_preview_method 0
[0:motion] [INF] [ALL] stream_quality 50
[0:motion] [INF] [ALL] stream_grey off
[0:motion] [INF] [ALL] stream_motion off
[0:motion] [INF] [ALL] stream_maxrate 1
[0:motion] [INF] [ALL] stream_limit 0
[0:motion] [INF] [ALL] database_type
[0:motion] [INF] [ALL] database_dbname
[0:motion] [INF] [ALL] database_host localhost
[0:motion] [INF] [ALL] database_port 0
[0:motion] [INF] [ALL] database_user
[0:motion] [INF] [ALL] database_password
[0:motion] [INF] [ALL] database_busy_timeout 0
[0:motion] [INF] [ALL] sql_log_picture off
[0:motion] [INF] [ALL] sql_log_snapshot off
[0:motion] [INF] [ALL] sql_log_movie off
[0:motion] [INF] [ALL] sql_log_timelapse off
[0:motion] [INF] [ALL] sql_query_start
[0:motion] [INF] [ALL] sql_query_stop
[0:motion] [INF] [ALL] sql_query
[0:motion] [INF] [ALL] track_type 0
[0:motion] [INF] [ALL] track_auto off
[0:motion] [INF] [ALL] track_port
[0:motion] [INF] [ALL] track_motorx 0
[0:motion] [INF] [ALL] track_motorx_reverse off
[0:motion] [INF] [ALL] track_motory 0
[0:motion] [INF] [ALL] track_motory_reverse off
[0:motion] [INF] [ALL] track_maxx 0
[0:motion] [INF] [ALL] track_minx 0
[0:motion] [INF] [ALL] track_maxy 0
[0:motion] [INF] [ALL] track_miny 0
[0:motion] [INF] [ALL] track_homex 128
[0:motion] [INF] [ALL] track_homey 128
[0:motion] [INF] [ALL] track_iomojo_id 0
[0:motion] [INF] [ALL] track_step_angle_x 10
[0:motion] [INF] [ALL] track_step_angle_y 10
[0:motion] [INF] [ALL] track_move_wait 10
[0:motion] [INF] [ALL] track_speed 255
[0:motion] [INF] [ALL] track_stepsize 40
[0:motion] [INF] [ALL] track_generic_move
[0:motion] [INF] [ALL] camera
[0:motion] [INF] [ALL] camera_dir
[0:motion] [INF] [ALL] Thread 1 - Config file: camera-1.conf
[0:motion] [INF] [ALL] log_level 15
[0:motion] [INF] [ALL] camera_name Camera1
[0:motion] [INF] [ALL] target_dir /CamStore/window_cam
[0:motion] [INF] [ALL] netcam_url <redacted>
[0:motion] [INF] [ALL] netcam_params keepalive = off,tolerant_check = on
[0:motion] [INF] [ALL] width 1280
[0:motion] [INF] [ALL] height 960
[0:motion] [INF] [ALL] framerate 30
[0:motion] [INF] [ALL] locate_motion_mode on
[0:motion] [INF] [ALL] locate_motion_style redbox
[0:motion] [INF] [ALL] text_left Camera1
[0:motion] [INF] [ALL] text_changes on
[0:motion] [INF] [ALL] threshold 7996
[0:motion] [INF] [ALL] noise_level 8
[0:motion] [INF] [ALL] noise_tune off
[0:motion] [INF] [ALL] despeckle_filter EedDl
[0:motion] [INF] [ALL] mask_file /etc/motioneye/mask_1.pgm
[0:motion] [INF] [ALL] minimum_motion_frames 20
[0:motion] [INF] [ALL] event_gap 20
[0:motion] [INF] [ALL] pre_capture 60
[0:motion] [INF] [ALL] post_capture 70
[0:motion] [INF] [ALL] on_event_start /usr/local/lib/python3.12/dist-packages/motioneye/scripts/relayevent.sh "/etc/motioneye/motioneye.conf" start %t
[0:motion] [INF] [ALL] on_event_end /usr/local/lib/python3.12/dist-packages/motioneye/scripts/relayevent.sh "/etc/motioneye/motioneye.conf" stop %t
[0:motion] [INF] [ALL] on_picture_save /usr/local/lib/python3.12/dist-packages/motioneye/scripts/relayevent.sh "/etc/motioneye/motioneye.conf" picture_save %t %f
[0:motion] [INF] [ALL] on_movie_end /usr/local/lib/python3.12/dist-packages/motioneye/scripts/relayevent.sh "/etc/motioneye/motioneye.conf" movie_end %t %f
[0:motion] [INF] [ALL] picture_quality 85
[0:motion] [INF] [ALL] picture_filename %Y-%m-%d/%H-%M-%S
[0:motion] [INF] [ALL] snapshot_filename %Y-%m-%d/%H-%M-%S
[0:motion] [INF] [ALL] movie_max_time 0
[0:motion] [INF] [ALL] movie_quality 75
[0:motion] [INF] [ALL] movie_codec mp4:h264_nvenc
[0:motion] [INF] [ALL] movie_filename %Y-%m-%d/%H-%M-%S
[0:motion] [INF] [ALL] stream_port 9081
[0:motion] [INF] [ALL] stream_localhost off
[0:motion] [INF] [ALL] stream_authentication <redacted>
[0:motion] [INF] [ALL] stream_quality 85
[0:motion] [INF] [ALL] stream_maxrate 30
[0:motion] [DBG] [ALL] motion_ntc: v4l2 : available
[0:motion] [DBG] [ALL] motion_ntc: bktr : not available
[0:motion] [DBG] [ALL] motion_ntc: webp : available
[0:motion] [DBG] [ALL] motion_ntc: ffmpeg : available
[0:motion] [DBG] [DBL] motion_ntc: mysql : not available
[0:motion] [DBG] [DBL] motion_ntc: MariaDB: available
[0:motion] [DBG] [DBL] motion_ntc: sqlite3: available
[0:motion] [DBG] [DBL] motion_ntc: pgsql : available
[0:motion] [DBG] [DBL] motion_ntc: nls : available
[0:motion] [NTC] [STR] webu_start_strm: Starting camera 1 stream on port 9081
[0:motion] [DBG] [STR] webu_mhd_features_basic: Basic authentication: available
[0:motion] [DBG] [STR] webu_mhd_features_digest: Digest authentication: available
[0:motion] [DBG] [STR] webu_mhd_features_ipv6: IPV6: available
[0:motion] [DBG] [STR] webu_mhd_features_tls: SSL/TLS: available
[0:motion] [NTC] [STR] webu_strm_ntc: Started camera 1 stream on port 9081
[0:motion] [NTC] [STR] webu_start_ctrl: Starting webcontrol on port 7999
[0:motion] [DBG] [STR] webu_mhd_features_basic: Basic authentication: available
[0:motion] [DBG] [STR] webu_mhd_features_digest: Digest authentication: available
[0:motion] [DBG] [STR] webu_mhd_features_ipv6: IPV6: available
[0:motion] [DBG] [STR] webu_mhd_features_tls: SSL/TLS: available
[0:motion] [NTC] [STR] webu_start_ctrl: Started webcontrol on port 7999
[0:motion] [NTC] [ENC] ffmpeg_global_init: ffmpeg libavcodec version 60.31.102 libavformat version 60.16.100
[0:motion] [DBG] [DBL] dbse_global_init: Initializing database
[0:motion] [NTC] [ALL] translate_init: Language: English
[0:motion] [NTC] [ALL] motion_start_thread: Camera ID: 1 is from camera-1.conf
[0:motion] [NTC] [ALL] motion_start_thread: Camera ID: 1 Camera Name: Camera1 Service: rtsp:
[0:motion] [NTC] [ALL] main: Waiting for threads to finish, pid: 4656
[1:ml1:Camera1] [NTC] [ALL] motion_init: Camera 1 started: motion detection Enabled
[1:ml1:Camera1] [NTC] [VID] vid_start: Opening Netcam RTSP
[1:ml1:Camera1] [DBG] [ALL] util_parms_parse: Parsing: keepalive = off,tolerant_check = on
[1:ml1:Camera1] [DBG] [ALL] util_parms_add: Parsed: >keepalive<>off<
[1:ml1:Camera1] [DBG] [ALL] util_parms_add: Parsed: >tolerant_check<>on<
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_set_parms: Setting up norm stream.
[1:ml1:Camera1] [DBG] [ALL] util_parms_add: Parsed: >decoder<>NULL<
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_set_path: Setting up rtsp via netcam
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_set_options: norm: Setting rtsp/rtmp
[1:ml1:Camera1] [DBG] [ALL] util_parms_add: Parsed: >rtsp_transport<>tcp<
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_set_options: norm: option: keepalive = off
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_set_options: norm: option: tolerant_check = on
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_set_options: norm: option: rtsp_transport = tcp
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_open_context: norm: Opened camera(Camera1)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: HW Devices:
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: vdpau (not implemented)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: cuda (available)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: vaapi (available)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: qsv (not implemented)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: drm (available)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: opencl (not implemented)
[1:av0:Camera1] [INF] [NET] netcam_hwdecoders: norm: vulkan (not implemented)
[1:av0:Camera1] [INF] [NET] netcam_init_swdecoder: norm: Initializing decoder
[1:av0:Camera1] [INF] [NET] netcam_rtsp_open_codec: norm: Decoder opened
[1:ml1:Camera1] [DBG] [NET] netcam_check_buffsize: expanding buffer from [0/0] to [0/1892352] bytes.
[1:ml1:Camera1] [DBG] [NET] Above message repeats 1 times
[1:ml1:Camera1] [DBG] [NET] netcam_check_buffsize: expanding buffer from [1889568/1892352] to [1889568/3735552] bytes.
[1:ml1:Camera1] [INF] [NET] netcam_rtsp_read_image: norm: capture_rate not specified in netcam_params. Using 31
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc:
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: ******************************************************
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: The network camera is sending pictures in a different
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: size than specified in the configuration file.
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: The picture is being transcoded into the size
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: requested in the configuration. If possible change
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: netcam or configuration to indicate the same size
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: to possibly lower CPU usage.
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: Netcam: 1296 x 972 => Config: 1280 x 960
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc: ******************************************************
[1:ml1:Camera1] [NTC] [NET] netcam_rtsp_ntc:
[1:ml1:Camera1] [DBG] [NET] netcam_check_buffsize: expanding buffer from [1843200/1892352] to [1843200/3735552] bytes.
[1:ml1:Camera1] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items
[2:nc2:Camera1] [NTC] [NET] netcam_rtsp_handler: norm: Camera handler thread [2] started
[2:nc2:Camera1] [INF] [NET] netcam_rtsp_set_options: norm: Setting rtsp/rtmp
[2:nc2:Camera1] [INF] [NET] netcam_rtsp_open_context: norm: Opened camera(Camera1)
[2:av2:Camera1] [INF] [NET] netcam_init_swdecoder: norm: Initializing decoder
[2:av2:Camera1] [INF] [NET] netcam_rtsp_open_codec: norm: Decoder opened
[2:nc2:Camera1] [NTC] [NET] netcam_rtsp_connect: norm: Camera (Camera1) connected
[2:nc2:Camera1] [INF] [NET] netcam_rtsp_connect: norm: Netcam capture_rate is 31.
[2:nc2:Camera1] [INF] [NET] netcam_rtsp_connect: norm: Camera source is 30 FPS
[1:ml1:Camera1] [DBG] [ALL] get_pgm: Magic P5: Width 1280(1280): Height 960(960): MaxVal: 255(255)
[1:ml1:Camera1] [INF] [ALL] motion_init: Maskfile "/etc/motioneye/mask_1.pgm" loaded.
[1:ml1:Camera1] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 80 items
[0:cn0] [DBG] [STR] webu_parseurl: Sent url: /1/config/set?emulate_motion=1
[0:cn0] [DBG] [STR] webu_parseurl: Decoded url: /1/config/set?emulate_motion=1
[0:cn0] [DBG] [STR] webu_parseurl: camid: >1< cmd1: >config< cmd2: >set< parm1:>emulate_motion< val1:>1< parm2:>< val2:><
[0:wu0] [INF] [ALL] webu_answer_ctrl: Connection from: 127.0.0.1
[1:ml1:Camera1] [NTC] [ALL] motion_detected: Motion detected - starting event 1.
[1:ml1:Camera1] [DBG] [EVT] exec_command: Executing external command'/usr/local/lib/python3.12/dist-packages/motioneye/scripts/relayevent.sh "/etc/motioneye/motioneye.conf" start 1'
[1:ml1:Camera1] [INF] [EVT] event_ffmpeg_newfile: Source FPS 29
[1:ml1:Camera1] [NTC] [ENC] ffmpeg_set_codec_preferred: Using codec h264_nvenc
[1:ml1:Camera1] [INF] [ENC] ffmpeg_set_quality: h264_nvenc codec vbr/crf/bit_rate: 12
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Undefined constant or missing '('in'ultrafast'
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Unable to parse option value "ultrafast"
[1:ml1:Camera1] [INF] [ENC] ffmpeg_avcodec_log: Error setting option preset to value ultrafast.
[1:ml1:Camera1] [ERR] [ENC] ffmpeg_set_codec: Could not open codec Invalid argument
[1:ml1:Camera1] [ERR] [ENC] ffmpeg_open: Failed to allocate codec!
[1:ml1:Camera1] [ERR] [EVT] event_ffmpeg_newfile: Error opening context for movie output.
[0:cn0] [DBG] [STR] webu_parseurl: Sent url: /1/config/set?emulate_motion=0
[0:cn0] [DBG] [STR] webu_parseurl: Decoded url: /1/config/set?emulate_motion=0
[0:cn0] [DBG] [STR] webu_parseurl: camid: >1< cmd1: >config< cmd2: >set< parm1:>emulate_motion< val1:>0< parm2:>< val2:><
[0:wu0] [INF] [ALL] webu_answer_ctrl: Connection from: 127.0.0.1
The text was updated successfully, but these errors were encountered:
Did you read the guide?
Yes
What is the base version number of Motion being used?
4.7.x
What was the install method?
Installed via package tool
What is base architecture?
x86
What is the distro being used?
Ubuntu
Disto version number
24.04
Camera type(s) being used?
Network camera with RTSP
Describe the issue/problem and steps to reproduce
The ultrafast and zerolatancy parameters are not supported by the Nvidia nvenc codec.
I forked the repo to hack on the code myself.
My work is here:
https://github.com/mattlazarowitz/motion/tree/master
See ffmpeg.c and ffmpeg.h
I changed some of the structure of the code in function ffmpeg_set_quality() because there didn't seem to be one set of parameters that would work for every h.264 codec. I left structure in there to try and insert parameters for Intel QSV but I ran into issues simply getting ffmpeg to use that codec and a lot of info about it is out of date. But I would like to see NVENC work with Motion as I'm getting good results so far with an ov5647 connected to a Raspberry Pi Zero W2 streaming 1280x960@30fps. The quality I'm getting with MotionEye set to 50% has been 'good enough' with the other parameters in my fork.
Please have someone familiar with the ffmpeg.c code take a look and see if what I have done is acceptable of if they would like to use it to create a fix more in line with the coding standards of the project.
Motion log output at log_level 8
The text was updated successfully, but these errors were encountered: