Unix & Linux Stack Exchange
Q&A for users of Linux, FreeBSD and other Unix-like operating systems
Latest Questions
0
votes
1
answers
5623
views
"MPEG-1/2 does not support 3/1 fps" when sending webcam to ffserver
I am unable to send a stream to my `ffserver`. I started the server with ffserver -f /etc/ffserver.conf & where `ffserver.conf` has not been modified. I tried sending a webcam stream with ffmpeg -f alsa -ac 2 -i plughw:0,0 -f video4linux2 -s vga -i /dev/video0 http://localhost:8090/feed1.ffm I have...
I am unable to send a stream to my
ffserver
.
I started the server with
ffserver -f /etc/ffserver.conf &
where ffserver.conf
has not been modified. I tried sending a webcam stream with
ffmpeg -f alsa -ac 2 -i plughw:0,0 -f video4linux2 -s vga -i /dev/video0 http://localhost:8090/feed1.ffm
I have however the following error:
[...]
[tcp @ 0x560e1234c6e0] Connection to tcp://localhost:8090 failed (Connection refused), trying next address
[...]
MPEG-1/2 does not support 3/1 fps
[...]
The port 9080 is open, as seen with nmap localhost
**Why do I have this error and how to send my stream?**
-----------------------------
**Full output:**
# ffmpeg -f alsa -ac 2 -i plughw:0,0 -f video4linux2 -s vga -i /dev/video0 http://localhost:8090/feed1.ffm
ffmpeg version 3.2.1-1 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 6.2.1 (Debian 6.2.1-5) 20161124
configuration: --prefix=/usr --extra-version=1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-libtesseract --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --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-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-libopencv --enable-frei0r --enable-libx264 --enable-chromaprint --enable-shared
libavutil 55. 34.100 / 55. 34.100
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.100 / 57. 56.100
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libavresample 3. 1. 0 / 3. 1. 0
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
libpostproc 54. 1.100 / 54. 1.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, alsa, from 'plughw:0,0':
Duration: N/A, start: 1481703954.356244, bitrate: 1536 kb/s
Stream #0:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
Input #1, video4linux2,v4l2, from '/dev/video0':
Duration: N/A, start: 41830.241126, bitrate: 147456 kb/s
Stream #1:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 640x480, 147456 kb/s, 30 fps, 30 tbr, 1000k tbn, 1000k tbc
[tcp @ 0x560e6432c6e0] Connection to tcp://localhost:8090 failed (Connection refused), trying next address
[tcp @ 0x560e64345a40] Connection to tcp://localhost:8090 failed (Connection refused), trying next address
[mpeg1video @ 0x560e6435fb20] bitrate tolerance 21333 too small for bitrate 64000, overriding
[mpeg1video @ 0x560e6435fb20] MPEG-1/2 does not support 3/1 fps
Stream mapping:
Stream #0:0 -> #0:0 (pcm_s16le (native) -> mp2 (native))
Stream #1:0 -> #0:1 (rawvideo (native) -> mpeg1video (native))
Stream #0:0 -> #0:2 (pcm_s16le (native) -> wmav2 (native))
Stream #1:0 -> #0:3 (rawvideo (native) -> msmpeg4v3 (msmpeg4))
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
**Full /etc/ffserver.conf
** (no modification from original file):
HTTPPort 8090
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 1000
CustomLog -
File /tmp/feed1.ffm
FileMaxSize 200K
ACL allow 127.0.0.1
Feed feed1.ffm
Format mpeg
AudioBitRate 32
AudioChannels 1
AudioSampleRate 44100
VideoBitRate 64
VideoBufferSize 40
VideoFrameRate 3
VideoSize 160x128
VideoGopSize 12
Feed feed1.ffm
Format asf
VideoFrameRate 15
VideoSize 352x240
VideoBitRate 256
VideoBufferSize 40
VideoGopSize 30
AudioBitRate 64
StartSendOnKey
Format status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255
URL http://www.ffmpeg.org/
user123456
(5258 rep)
Dec 14, 2016, 08:35 AM
• Last activity: Jun 26, 2025, 01:06 PM
1
votes
2
answers
538
views
ffmpeg with NVenc does not seem to utilize my GPU
I tried to convert a high-resolution video to 2k. I used this command: ``` ffmpeg -i input_video.mp4 -vf scale=1920:1080 -c:v h264_nvenc -preset slow -b:v 8M output_video.mp4 ``` Based on the `top` and `nvidia-semi` results, my CPU was at maximum utilization, but my GPU was barely used. The `ffmpeg`...
I tried to convert a high-resolution video to 2k. I used this command:
ffmpeg -i input_video.mp4 -vf scale=1920:1080 -c:v h264_nvenc -preset slow -b:v 8M output_video.mp4
Based on the top
and nvidia-semi
results, my CPU was at maximum utilization, but my GPU was barely used. The ffmpeg
process only used about 240 MiB of vram.
nvidia-smi dmon
did show lots of enc
activity. But the low vram usage and high CPU utilization makes me wonder if ffmpeg is fully utilize my GPU.
nvidia-smi dmon
# gpu pwr gtemp mtemp sm mem enc dec jpg ofa mclk pclk
# Idx W C C % % % % % % MHz MHz
0 - 74 - 6 8 66 0 - - 3504 420
0 - 74 - 6 8 71 0 - - 3504 420
0 - 74 - 6 8 70 0 - - 3504 420
0 - 74 - 6 8 71 0 - - 3504 420
0 - 74 - 6 7 63 0 - - 3504 420
0 - 74 - 5 7 56 0 - - 3504 420
0 - 74 - 6 8 70 0 - - 3504 420
0 - 74 - 6 8 67 0 - - 3504 420
0 - 74 - 6 8 69 0 - - 3504 420
0 - 74 - 6 8 71 0 - - 3504 420
0 - 74 - 6 8 68 0 - - 3504 420
David S.
(5823 rep)
Nov 23, 2024, 12:01 AM
• Last activity: Jun 23, 2025, 11:08 AM
3
votes
1
answers
2629
views
Convert .264 to .mp4 using avconv
I have a video file (with no audio stream) taken from a Lorex CCTV DVR. The video file has a suffix of ".264" which I assume means its format is raw h264. I cannot play this video on certain media players including the default player on an Apple tablet. I would like to convert the file to another fo...
I have a video file (with no audio stream) taken from a Lorex CCTV DVR. The video file has a suffix of ".264" which I assume means its format is raw h264. I cannot play this video on certain media players including the default player on an Apple tablet. I would like to convert the file to another format that is more universally useable, for example mp4. I tried the following command at Linux terminal:
> avconv -i ~/somePath/foo.264 -vcodec libx264 -f mp4 ~/somePath/foo.mp4
but the output mp4 file was basically empty, with a total size of 285 bytes. Furthermore, when I tried to play it using the Ubuntu Videos application the application returned a widow containing the error message: "An error occurred This file contains no playable streams."
file --mime-type ~/somePath/foo.264
~/somePath/foo.264: application/octet-stream
mediainfo ~/somePath/foo.264
...
Format:AVC; Format profile:Baseline@L2; Width:352 pixels; Height:240 pixels
...
Would somebody instruct me how to convert the .264 file to a .mp4?
EricVonB
(131 rep)
May 17, 2016, 01:06 AM
• Last activity: Jun 7, 2025, 01:05 PM
2
votes
1
answers
6815
views
Stream/broadcast live video to local network (without VLC)
I am trying to make a perfect mobile webcam fitting my needs with the RPI and camera module I have here already. I run Arch both on the RPI and on the Laptop I intend as the "client". I have the cam running and can pipe its data from `raspivid` somewhere, and I am able to ssh back and forth. Now I a...
I am trying to make a perfect mobile webcam fitting my needs with the RPI and camera module I have here already. I run Arch both on the RPI and on the Laptop I intend as the "client". I have the cam running and can pipe its data from
raspivid
somewhere, and I am able to ssh back and forth.
Now I am trying to get the transmission via the local network to work. Ideally, I would start the "server" script on the RPI and be able to connect as many clients as often as I want until I decide to close the server again. And, ideally, the delay from having a separate device and wireless transmission is almost unnoticeable so that I don't have to compensate and try to sync up video and audio. So from what I read, using VLC is out of the question. Also ideally, the "client" would make the stream available as /dev/video1
or whatever — though currently I just want to get it into OBS *somehow*.
Until now I tried to follow some tutorials particularly involving netcat
, but the process stopped immediately or as soon as a disconnect happened, as I was unable to play the stream on the client.
Any hints on where to look or how to plan this? I thought about using something like a media server for that dynamic client (dis)connect thing, but it would need to be super lightweight.
Peter Nerlich
(312 rep)
Sep 11, 2018, 05:12 PM
• Last activity: Jun 3, 2025, 01:08 PM
1
votes
0
answers
69
views
Arch Linux - unable to play videos in AOM-AV1 codec
I noticed that VLC could not display the sound of videos that used AOMedia's AV1 codec, or AOM-AV1 in short. When I tried to play videos in that specific codec, I could only hear the sound of the video. This did not occur in other codecs such as H.264 and H.265. I ran video players in terminal, hopi...
I noticed that VLC could not display the sound of videos that used AOMedia's AV1 codec, or AOM-AV1 in short. When I tried to play videos in that specific codec, I could only hear the sound of the video. This did not occur in other codecs such as H.264 and H.265. I ran video players in terminal, hoping to catch error messages.
> vlc aomav1_video.mkv
VLC media player 3.0.21 Vetinari (revision 3.0.21-0-gdd8bfdbabe8)
[0000556c0aabd520] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
[00007f3038006a50] glconv_vaapi_x11 gl error: vaInitialize: unknown libva error
[00007f3038006a50] glconv_vaapi_drm gl error: vaInitialize: unknown libva error
Xlib: extension "DRI2" missing on display ":0".
libva error: vaGetDriverNames() failed with operation failed
[00007f3038006a50] glconv_vaapi_drm gl error: vaInitialize: operation failed
[00007f30450dddc0] avcodec decoder: Using NVIDIA VDPAU Driver Shared Library 570.153.02 Tue May 13 16:18:57 UTC 2025 for hardware decoding
[00007f30450dddc0] main decoder error: buffer deadlock prevented
When I tried GNOME Video, also known as totem, it didn't even play the sound.
> totem aomav1_video.mkv
(No terminal output)
GUI - An error occurred: Could not initialise OpenGL support
The videos play just fine on VLC on Windows so the videos aren't corrupted. What packages need to be fixed here?
Hyunbin Yoo
(175 rep)
May 26, 2025, 12:47 PM
0
votes
0
answers
86
views
NVENC encoder missing in OBS, AUR package fails to compile on Arch Linux
I have an Nvidia GeForce RTX 4090. I am trying to use the NVENC encoder on OBS. Currently, only the software option, x264, appears in the settings. I attempted to install NVENC using the AUR. However, the building fails prematurely. What went wrong? ``` > yay nvenc ... 1 aur/nvenc 8.04-1 (+7 0.29) N...
I have an Nvidia GeForce RTX 4090. I am trying to use the NVENC encoder on OBS. Currently, only the software option, x264, appears in the settings. I attempted to install NVENC using the AUR. However, the building fails prematurely. What went wrong?
> yay nvenc
...
1 aur/nvenc 8.04-1 (+7 0.29)
NVIDIA Video Codec based command line encoder
==> Packages to install (eg: 1 2 3, 1-3 or ^4)
==> 1
AUR Explicit (1): nvenc-8.04-1
Sync Make Dependency (1): cargo-c-0.10.12-1
...
==> Making package: nvenc 8.04-1
==> Retrieving sources...
-> Cloning NVEnc git repo...
Cloning into bare repository '/home/dan/.cache/yay/nvenc/NVEnc'...
remote: Enumerating objects: 22316, done.
...
Resolving deltas: 100% (500/500), done.
-> Found ldflags-adjustments.patch
==> WARNING: Skipping verification of source file PGP signatures.
==> Validating source files with sha256sums...
NVEnc ... Passed
cppcodec ... Skipped
ldflags-adjustments.patch ... Passed
:: Remove make dependencies after install? [y/N] y
:: (1/1) Parsing SRCINFO: nvenc
[sudo] password for dan:
resolving dependencies...
looking for conflicting packages...
Packages (1) cargo-c-0.10.12-1
Total Installed Size: 98.83 MiB
:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring [##########################################] 100%
...
(1/1) installing cargo-c [##########################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Making package: nvenc 8.04-1
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Updating NVEnc git repo...
-> Updating cppcodec git repo...
-> Found ldflags-adjustments.patch
==> Validating source files with sha256sums...
NVEnc ... Passed
cppcodec ... Skipped
ldflags-adjustments.patch ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
-> Creating working copy of NVEnc git repo...
Cloning into 'NVEnc'...
done.
Switched to a new branch 'makepkg'
-> Creating working copy of cppcodec git repo...
Cloning into 'cppcodec'...
done.
==> Starting prepare()...
patching file makefile
==> Sources are ready.
==> Making package: nvenc 8.04-1
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Starting build()...
Submodule 'build_pkg' (https://github.com/rigaya/build_pkg.git) registered for path 'build_pkg'
Submodule 'cppcodec' (https://github.com/tplgy/cppcodec.git) registered for path 'cppcodec'
Submodule 'dtl' (https://github.com/cubicdaiya/dtl) registered for path 'dtl'
Cloning into '/home/dan/.cache/yay/nvenc/src/NVEnc/cppcodec'...
Submodule path 'cppcodec': checked out 'bd6ddf95129e769b50ef63e0f558fa21364f3f65'
checking for g++...checking for g++...OK
egrep: warning: egrep is obsolescent; using grep -E
checking for cuda (CUDA_PATH=/opt/cuda)...nvcc=/opt/cuda/bin/nvcc
checking for cuda...OK, CUDA 12.8
...
Checking for hdr10plus...couldn't find system wide libhdr10plus, trying included one.
checking for cargo...OK
--2025-05-11 13:38:45-- https://github.com/quietvoid/hdr10plus_tool/archive/refs/tags/1.6.1.tar.gz
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving github.com (github.com)... 20.27.177.113
Connecting to github.com (github.com)|20.27.177.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/quietvoid/hdr10plus_tool/tar.gz/refs/tags/1.6.1 [following]
--2025-05-11 13:38:45-- https://codeload.github.com/quietvoid/hdr10plus_tool/tar.gz/refs/tags/1.6.1
Resolving codeload.github.com (codeload.github.com)... 20.27.177.114
Connecting to codeload.github.com (codeload.github.com)|20.27.177.114|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘hdr10plus_tool.tar.gz’
hdr10plus_tool.tar.gz [ ] 2.67M 7.24MB/s in 0.4s
2025-05-11 13:38:46 (7.24 MB/s) - ‘hdr10plus_tool.tar.gz’ saved
Compiling proc-macro2 v1.0.86
...
Compiling serde_derive v1.0.210
Compiling hdr10plus v2.1.3 (/home/dan/.cache/yay/nvenc/src/NVEnc/hdr10plus_tool/hdr10plus)
Finished release
profile [optimized] target(s) in 7.46s
Building pkg-config files
Building header file using cbindgen
Populating uninstalled header directory
Installing pkg-config file
Installing header file
Installing static library
Installing shared library
checking libhdr10plus with pkg-config...OK
checking for hdr10plus.h...yes
checking vulkan with pkg-config...OK
checking for vulkan/vulkan.h...no
checking vapoursynth with pkg-config...OK
checking for VapourSynth.h...yes
checking for VSScript.h...yes
checking avisynth with pkg-config...libs could not be detected by pkg-config. [ PKG_CONFIG_PATH=:/usr/lib/pkgconfig ]
checking for avisynth_c.h...no
checking libass with pkg-config...OK
checking for ass/ass.h...yes
checking for dtl/dtl.hpp...checking for dtl/dtl.hpp...no
Creating config.mak, rgy_config.h...
SRCDIR = .
CXX = g++
NVCC = /opt/cuda/bin/nvcc
LD = g++
PROGRAM = nvencc
ENABLE_DEBUG = 0
CXXFLAGS = -Wall -Wno-unknown-pragmas -Wno-unused -Wno-missing-braces -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64 -D__USE_LARGEFILE64 -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -pthread -msse2 -fPIE -O3 -DNDEBUG=1 -mfpmath=sse -ffast-math -fomit-frame-pointer -std=c++17 -I. -I./NVEncSDK/Common/inc -I./NVEncCore -I./NVEncNVOFFRUC -I./NVEncNVSDKNGX -I./jitify -I./tinyxml2 -I./cppcodec -I./ttmath -DLINUX64 -m64 -I/opt/cuda/include -I/usr/include/vapoursynth -I/usr/include/python3.13 -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/home/dan/.cache/yay/nvenc/src/NVEnc/build_libhdr10plus/include
NVCCFLAGS = --generate-code arch=compute_50,code=[compute_50,sm_50] --generate-code arch=compute_61,code=[compute_61,sm_61] --generate-code arch=compute_75,code=[compute_75,sm_75] --generate-code arch=compute_86,code=[compute_86,sm_86] -Wno-deprecated-gpu-targets --cudart=static -std=c++14 -Xcudafe "--display_error_number --diag_suppress=108 --diag_suppress=63" -t 0 -std=c++14 -ccbin g++ -I/opt/cuda/include -I. -I./NVEncSDK/Common/inc -I./NVEncCore -I./NVEncNVOFFRUC -I./NVEncNVSDKNGX -I./jitify -I./tinyxml2 -I./cppcodec -I./ttmath -DLINUX64 -m64 -Xcompiler "-Wall -Wno-unknown-pragmas -Wno-unused -Wno-missing-braces -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64 -D__USE_LARGEFILE64 -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -pthread -msse2 -fPIE -O3 -DNDEBUG=1 -mfpmath=sse -ffast-math -fomit-frame-pointer -I/usr/include/vapoursynth -I/usr/include/python3.13 -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/home/dan/.cache/yay/nvenc/src/NVEnc/build_libhdr10plus/include "
LDFLAGS = -L. -ldl -lstdc++ -lstdc++fs -m64 -pthread -L/opt/cuda/lib64 -lnppif_static -lnppig_static -lnppc_static -lcudart_static -lculibos -lcuda -lrt -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lavutil -lass -ldovi -lgcc_s -lutil -lrt -lpthread -lm -ldl -lc -L/home/dan.cache/yay/nvenc/src/NVEnc/build_libhdr10plus/lib -lhdr10plus-rs -lgcc_s -lutil -lrt -lpthread -lm -ldl -lc
PREFIX = /usr
X86_64 = 1
#define ENCODER_REV "3322"
#define ENABLE_AVI_READER 0
#define ENABLE_AVISYNTH_READER 0
#define ENABLE_VAPOURSYNTH_READER 1
...
#define ENABLE_LIBHDR10PLUS 1
#define ENABLE_VULKAN (0 && 0)
#define ENABLE_LIBPLACEBO 0
#define ENABLE_PERF_COUNTER 0
successfully generated config.mak, rgy_config.h
/opt/cuda/bin/nvcc -c --generate-code arch=compute_50,code=[compute_50,sm_50] --generate-code arch=compute_61,code=[compute_61,sm_61] --generate-code arch=compute_75,code=[compute_75,sm_75] --generate-code arch=compute_86,code=[compute_86,sm_86] -Wno-deprecated-gpu-targets --cudart=static -std=c++14 -Xcudafe "--display_error_number --diag_suppress=108 --diag_suppress=63" -t 0 -std=c++14 -ccbin g++ -I/opt/cuda/include -I. -I./NVEncSDK/Common/inc -I./NVEncCore -I./NVEncNVOFFRUC -I./NVEncNVSDKNGX -I./jitify -I./tinyxml2 -I./cppcodec -I./ttmath -DLINUX64 -m64 -Xcompiler "-Wall -Wno-unknown-pragmas -Wno-unused -Wno-missing-braces -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64 -D__USE_LARGEFILE64 -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -pthread -msse2 -fPIE -O3 -DNDEBUG=1 -mfpmath=sse -ffast-math -fomit-frame-pointer -I/usr/include/vapoursynth -I/usr/include/python3.13 -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/home/dan.cache/yay/nvenc/src/NVEnc/build_libhdr10plus/include " -o NVEncCore/NVEncFilterAfsAnalyze.o NVEncCore/NVEncFilterAfsAnalyze.cu
/usr/include/c++/15.1.1/type_traits(554): error: type name is not allowed
: public __bool_constant
^
/usr/include/c++/15.1.1/type_traits(554): error: identifier "__is_pointer" is undefined
: public __bool_constant
^
/usr/include/c++/15.1.1/type_traits(876): error: type name is not allowed
: public __bool_constant
^
/usr/include/c++/15.1.1/type_traits(876): error: identifier "__is_volatile" is undefined
: public __bool_constant
^
/usr/include/c++/15.1.1/type_traits(1491): error: type name is not allowed
: public integral_constant { };
^
/usr/include/c++/15.1.1/type_traits(1491): error: identifier "__array_rank" is undefined
: public integral_constant { };
^
/usr/include/c++/15.1.1/type_traits(1843): error: incomplete type "std::__cv_selector::__unsigned_type, false, >" (aka "std::__cv_selector>") is not allowed
using __type = typename __match::__type;
^
detected during:
instantiation of class "std::__match_cv_qualifiers [with _Qualified=wchar_t, _Unqualified=unsigned int, _IsConst=false, _IsVol=]" at line 1952
instantiation of class "std::__make_unsigned_selector [with _Tp=wchar_t]" at line 1963
/usr/include/c++/15.1.1/type_traits(1843): error: incomplete type "std::__cv_selector::__unsigned_type, false, >" (aka "std::__cv_selector>") is not allowed
using __type = typename __match::__type;
^
detected during:
instantiation of class "std::__match_cv_qualifiers [with _Qualified=char16_t, _Unqualified=unsigned short, _IsConst=false, _IsVol=]" at line 1952
instantiation of class "std::__make_unsigned_selector [with _Tp=char16_t]" at line 1979
/usr/include/c++/15.1.1/type_traits(1843): error: incomplete type "std::__cv_selector::__unsigned_type, false, >" (aka "std::__cv_selector>") is not allowed
using __type = typename __match::__type;
^
detected during:
instantiation of class "std::__match_cv_qualifiers [with _Qualified=char32_t, _Unqualified=unsigned int, _IsConst=false, _IsVol=]" at line 1952
instantiation of class "std::__make_unsigned_selector [with _Tp=char32_t]" at line 1986
/usr/include/c++/15.1.1/type_traits(1843): error: incomplete type "std::__cv_selector::__unsigned_type, false, >" is not allowed
using __type = typename __match::__type;
^
detected during:
instantiation of class "std::__match_cv_qualifiers [with _Qualified=wchar_t, _Unqualified=, _IsConst=false, _IsVol=]" at line 1914
instantiation of class "std::__make_unsigned_selector [with _Tp=wchar_t]" at line 2081
instantiation of class "std::__make_signed_selector [with _Tp=wchar_t]" at line 2095
/usr/include/c++/15.1.1/type_traits(2084): error: incomplete type "std::__make_signed_selector::__unsigned_type, false, >" is not allowed
using __type = typename __make_signed_selector::__type;
^
detected during instantiation of class "std::__make_signed_selector [with _Tp=wchar_t]" at line 2095
/usr/include/c++/15.1.1/type_traits(1843): error: incomplete type "std::__cv_selector::__unsigned_type, false, >" is not allowed
using __type = typename __match::__type;
^
detected during:
instantiation of class "std::__match_cv_qualifiers [with _Qualified=char16_t, _Unqualified=, _IsConst=false, _IsVol=]" at line 1914
instantiation of class "std::__make_unsigned_selector [with _Tp=char16_t]" at line 2081
instantiation of class "std::__make_signed_selector [with _Tp=char16_t]" at line 2111
/usr/include/c++/15.1.1/type_traits(2084): error: incomplete type "std::__make_signed_selector::__unsigned_type, false, >" is not allowed
using __type = typename __make_signed_selector::__type;
^
detected during instantiation of class "std::__make_signed_selector [with _Tp=char16_t]" at line 2111
/usr/include/c++/15.1.1/type_traits(1843): error: incomplete type "std::__cv_selector::__unsigned_type, false, >" is not allowed
using __type = typename __match::__type;
^
detected during:
instantiation of class "std::__match_cv_qualifiers [with _Qualified=char32_t, _Unqualified=, _IsConst=false, _IsVol=]" at line 1914
instantiation of class "std::__make_unsigned_selector [with _Tp=char32_t]" at line 2081
instantiation of class "std::__make_signed_selector [with _Tp=char32_t]" at line 2118
/usr/include/c++/15.1.1/type_traits(2084): error: incomplete type "std::__make_signed_selector::__unsigned_type, false, >" is not allowed
using __type = typename __make_signed_selector::__type;
^
detected during instantiation of class "std::__make_signed_selector [with _Tp=char32_t]" at line 2118
/usr/include/c++/15.1.1/bits/stl_algobase.h(1239): error: type name is not allowed
|| __is_pointer(_ValueType1)
^
/usr/include/c++/15.1.1/bits/stl_algobase.h(1412): error: type name is not allowed
&& __is_pointer(_II1) && __is_pointer(_II2)
^
/usr/include/c++/15.1.1/bits/stl_algobase.h(1412): error: type name is not allowed
&& __is_pointer(_II1) && __is_pointer(_II2)
^
/usr/include/c++/15.1.1/bits/new_allocator.h(151): error: identifier "__builtin_operator_new" is undefined
return static_cast(__builtin_operator_new(__n * sizeof(_Tp)));
^
/usr/include/c++/15.1.1/bits/stl_tempbuf.h(94): error: identifier "__builtin_operator_new" is undefined
return (_Tp*) __builtin_operator_new(__len * sizeof(_Tp), nothrow_t());
^
/usr/include/c++/15.1.1/type_traits(143): error: class "std::enable_if, void>" has no member "type"
using __enable_if_t = typename enable_if::type;
^
detected during:
instantiation of type "std::__enable_if_t, void>" at line 188
instantiation of "std::__detail::__and_fn" based on template arguments >, std::is_default_constructible> at line 204
instantiation of class "std::__and_ [with _Bn=>, std::is_default_constructible>]" at line 160 of /usr/include/c++/15.1.1/bits/unique_ptr.h
instantiation of class "std::__uniq_ptr_impl [with _Tp=Hdr10PlusRsJsonOpaque, _Dp=funcHdr10PlusRsJsonOpaqueDelete]" at line 233 of /usr/include/c++/15.1.1/bits/unique_ptr.h
instantiation of class "std::__uniq_ptr_data, > [with _Tp=Hdr10PlusRsJsonOpaque, _Dp=funcHdr10PlusRsJsonOpaqueDelete, =true, =true]" at line 277 of /usr/include/c++/15.1.1/bits/unique_ptr.h
instantiation of class "std::unique_ptr [with _Tp=Hdr10PlusRsJsonOpaque, _Dp=funcHdr10PlusRsJsonOpaqueDelete]" at line 53 of NVEncCore/rgy_hdr10plus.h
NVEncCore/rgy_cuda_util.h(287): error: no instance of constructor "std::unique_ptr::unique_ptr [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" matches the argument list
: frame(), event(), framebuftype(CUFrameBufType::Unknown), refFrameHost() {
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(525): note #3322-D: number of parameters of function "std::unique_ptr::unique_ptr(const std::unique_ptr &) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(const unique_ptr&) = delete;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(385): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::auto_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(auto_ptr&& __u) noexcept;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(374): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::unique_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(unique_ptr&& __u) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(360): note #3322-D: number of parameters of function "std::unique_ptr::unique_ptr(std::unique_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(unique_ptr&&) = default;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(353): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::nullptr_t) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
constexpr unique_ptr(nullptr_t) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(347): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *, std::__enable_if_t::value, _DelUnref &&>) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer,
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(338): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *, std::__enable_if_t, _Del &&>) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer __p,
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(325): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *, const std::default_delete &) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer __p, const deleter_type& __d) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(311): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer __p) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(298): note #3327-D: candidate function template "std::unique_ptr::unique_ptr() [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" failed deduction
constexpr unique_ptr() noexcept
^
NVEncCore/rgy_cuda_util.h(291): error: no instance of constructor "std::unique_ptr::unique_ptr [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" matches the argument list
: frame(), event(), framebuftype(CUFrameBufType::Unknown), refFrameHost() {
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(525): note #3322-D: number of parameters of function "std::unique_ptr::unique_ptr(const std::unique_ptr &) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(const unique_ptr&) = delete;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(385): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::auto_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(auto_ptr&& __u) noexcept;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(374): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::unique_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(unique_ptr&& __u) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(360): note #3322-D: number of parameters of function "std::unique_ptr::unique_ptr(std::unique_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(unique_ptr&&) = default;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(353): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::nullptr_t) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
constexpr unique_ptr(nullptr_t) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(347): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *, std::__enable_if_t::value, _DelUnref &&>) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer,
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(338): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *, std::__enable_if_t, _Del &&>) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer __p,
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(325): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *, const std::default_delete &) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer __p, const deleter_type& __d) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(311): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(CUFrameBufBase *) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(pointer __p) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(298): note #3327-D: candidate function template "std::unique_ptr::unique_ptr() [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" failed deduction
constexpr unique_ptr() noexcept
^
NVEncCore/rgy_cuda_util.h(299): error: no instance of constructor "std::unique_ptr::unique_ptr [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" matches the argument list
: frame(_info), event(), framebuftype(CUFrameBufType::Unknown), refFrameHost() {
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(525): note #3322-D: number of parameters of function "std::unique_ptr::unique_ptr(const std::unique_ptr &) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(const unique_ptr&) = delete;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(385): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::auto_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(auto_ptr&& __u) noexcept;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(374): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::unique_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(unique_ptr&& __u) noexcept
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(360): note #3322-D: number of parameters of function "std::unique_ptr::unique_ptr(std::unique_ptr &&) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
unique_ptr(unique_ptr&&) = default;
^
/usr/include/c++/15.1.1/bits/unique_ptr.h(353): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr(std::nullptr_t) [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
constexpr unique_ptr(nullptr_t) noexcept
^
...
/usr/include/c++/15.1.1/bits/unique_ptr.h(298): note #3322-D: number of parameters of function template "std::unique_ptr::unique_ptr() [with _Tp=CUFrameBufBase, _Dp=std::default_delete]" does not match the call
constexpr unique_ptr() noexcept
^
26 errors detected in the compilation of "NVEncCore/NVEncFilterAfsAnalyze.cu".
make: *** [makefile:45: NVEncCore/NVEncFilterAfsAnalyze.o] Error 255
==> ERROR: A failure occurred in build().
Aborting...
-> error making: nvenc-exit status 4
checking dependencies...
Packages (1) cargo-c-0.10.12-1
Total Removed Size: 98.83 MiB
:: Do you want to remove these packages? [Y/n]
:: Processing package changes...
(1/1) removing cargo-c [##########################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
-> Failed to install the following packages. Manual intervention is required:
nvenc - exit status 4
Hyunbin Yoo
(175 rep)
May 11, 2025, 05:04 AM
• Last activity: May 11, 2025, 06:32 AM
0
votes
1
answers
68
views
Correctly drop one field instead of deinterlacing in ffmpeg
So, I have a 1920x1080 interlaced video recording. I want to recode using ffmpeg to procuce a 960x540 non-interlaced video. And ideally I'd like to avoid deinterlacing - instead I just want to drop one of the fields seeing I only need half the lines anyway. But I could not find the filter to do this...
So, I have a 1920x1080 interlaced video recording. I want to recode using ffmpeg to procuce a 960x540 non-interlaced video. And ideally I'd like to avoid deinterlacing - instead I just want to drop one of the fields seeing I only need half the lines anyway.
But I could not find the filter to do this.
So, how do I drop one of the fields, getting the remaining field at 1920x540? (Which I can then resize to 960x540).
Mikhail Ramendik
(538 rep)
Jan 13, 2025, 02:33 AM
• Last activity: Jan 13, 2025, 03:49 AM
1
votes
2
answers
807
views
How to crop a particular part of a YouTube video clip?
Having an MPEG4 (MP4 container, H264 AVC video, AAC audio) video clip downloaded from YouTube, how to crop a particular piece of it (remove everything before a particular starting point timestamp an after a particular finish point timestamp) with free Linux tools? PS: I don't mind employing a patent...
Having an MPEG4 (MP4 container, H264 AVC video, AAC audio) video clip downloaded from YouTube, how to crop a particular piece of it (remove everything before a particular starting point timestamp an after a particular finish point timestamp) with free Linux tools?
PS: I don't mind employing a patented or even a BLOB codec library.
Ivan
(18358 rep)
Apr 11, 2012, 07:09 PM
• Last activity: Jan 1, 2025, 09:50 PM
0
votes
1
answers
554
views
How to limit FFmpeg bitrate while recording an RTSP stream with codec copy?
I am trying to record a short video from an RTSP stream using FFmpeg.  And I am facing the following problem: the video size is too large.  Using the command `ffmpeg -i file.mp4`, I've come to the conclusion that this is due to the bitrate that I am receiving from the camera RTSP stre...
I am trying to record a short video from an RTSP stream using FFmpeg.
And I am facing the following problem: the video size is too large.
Using the command
ffmpeg -i file.mp4
, I've come to the conclusion that this is due to the bitrate that I am receiving from the camera RTSP stream.
To reduce the video size, I want to limit the bitrate.
I don't mind losing quality by doing this.
So I am using the following ffmpeg
command:
ffmpeg -i STREAM_URL -use_wallclock_as_timestamps 1
-vcodec copy
-an //Suppress audio stream
-b:v 1000k //Establish 1000 kbps for bitrate
-minrate 500k
-maxrate 1500k
-bufsize 1000k
-f segment
-segment_time 300
-segment_format mkv
output%03d.mkv
-max_muxing_queue_size 2048 //To fix bug: Too many packets buffered for output stream
I am using the previous command to record the stream.
With -vcodec copy
, it doesn't limit the bitrate.
The RTSP stream is using H.264 video encoding.
Is it possible to limit the bitrate without having to re-encode the video?
bram
(1 rep)
Mar 4, 2024, 11:37 AM
• Last activity: Nov 4, 2024, 06:31 PM
0
votes
0
answers
105
views
Map streams in ffmpeg based on title (to remove language variant)
I have a few video files with English audio track and French audio track, because the family wants French and I prefer VO. With ffmpeg I can easily filter all tracks to keep eng and fre, the problem is there are multiple french dialects, one of them being Candian (VFQ). Therefore, with the following...
I have a few video files with English audio track and French audio track, because the family wants French and I prefer VO. With ffmpeg I can easily filter all tracks to keep eng and fre, the problem is there are multiple french dialects, one of them being Candian (VFQ).
Therefore, with the following input streams:
Stream #0:1(fre): Audio: eac3, 48000 Hz, 5.1(side), fltp, 768 kb/s (default)
Metadata:
title : E-AC3 VFF
Stream #0:2(fre): Subtitle: subrip (default) (forced)
Metadata:
title : FORCED VFF
Stream #0:3(fre): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
Metadata:
title : AC3 VFQ
Stream #0:4(fre): Subtitle: subrip
Metadata:
title : FORCED VFQ
Stream #0:5(eng): Audio: eac3, 48000 Hz, 5.1(side), fltp, 768 kb/s
Metadata:
title : E-AC3 VO
The command -map 0:v: -map 0:m:language:eng -map 0:m:language:fre
does not filter out anything, and I keep both audio which is wasteful. The only metadata that could be used to filter seems to be the title.
MappaM
(175 rep)
Oct 17, 2024, 07:29 AM
0
votes
0
answers
128
views
X Error of failed request: BadValue (integer parameter out of range for operation) / Mesa libs / X / video encoding bugged / broken on FreeBSD 14.1
I'm running FreeBSD 14.1 right now and I suspect that the Mesa libs that I have installed on the system are bugged or maybe I have some misconfiguration,because when I do : # glxinfo | grep Mesa I get the error that you see on the title and smplayer/mpv/vlc doesn't work at all. Anyway,this is the co...
I'm running FreeBSD 14.1 right now and I suspect that the Mesa libs that I have installed on the system are bugged or maybe I have some misconfiguration,because when I do :
# glxinfo | grep Mesa
I get the error that you see on the title and smplayer/mpv/vlc doesn't work at all. Anyway,this is the context in which the error happens :
I have 3 GPUS :
1)
00:02.0 VGA compatible controller: Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630]
2)
01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 3GB]
01:00.1 Audio device: NVIDIA Corporation GP106 High Definition Audio Controller
3)
02:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti]
02:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio Controller
02:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host Controller
02:00.3 Serial bus controller: NVIDIA Corporation TU102 USB Type-C UCSI Controller
I'm not using any xorg.conf.
nano /etc/rc.conf :
kld_list="nvidia-modeset nvidia-drm linux i915kms ext2fs"
nano /boot/loader.conf :
pptdevs="1/0/0 1/0/1 2/0/0 2/0/1 2/0/2 2/0/3 4/0/0"
hw.nvidiadrm.modeset=1
This is where the problem is :
[marietto@marietto ~]==> glxinfo | grep Mesa
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 151 (GLX)
Minor opcode of failed request: 24 (X_GLXCreateNewContext)
Value in failed request: 0x0
Serial number of failed request: 50
Current serial number in output stream: 51
I've installed the following packages :
# pkg install xf86-video-intel nvidia-drm-kmod drm-kmod nvidia-driver
I've also tried to check if I had the same error by removing the xf86-video-intel and using the i915kms driver with Xorg :
# pkg remove xf86-video-intel
# nano /etc/X11/xorg.conf
Section "Device"
Identifier "Intel Graphics"
Driver "i915kms"
EndSection
But I've got the same error. Maybe it is a Mesa bug.
What's one consequence of this "bug" ? this one :
==> scrcpy --tcpip=192.168.1.3:5555
scrcpy 2.7
INFO: Connecting to 192.168.1.3:5555...
INFO: Connected to 192.168.1.3:5555
/usr/local/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 34.1 MB/s (71200 bytes in 0.002s)
[server] INFO: Device: [samsung] samsung SM-N9005 (Android 9)
[server] WARN: Audio disabled: it is not supported before Android 11
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 152 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Value in failed request: 0x0
Serial number of failed request: 147
Current serial number in output stream: 148
Marietto
(579 rep)
Oct 12, 2024, 01:25 PM
• Last activity: Oct 13, 2024, 03:26 PM
3
votes
2
answers
3232
views
How to merge multiple mp4 files as chapters in a final mp4?
I have folder with files named like `0001.mp4`, `0002.mp4`, ... I want to merge all these files to a `combined.mp4`, and I want it to have an internal chapter marks. It is convenient when playing for example in vlc, as you can see the chapter names in timeline. [![enter image description here][1]][1...
I have folder with files named like
How can I make such
0001.mp4
, 0002.mp4
, ...
I want to merge all these files to a combined.mp4
, and I want it to have an internal chapter marks. It is convenient when playing for example in vlc, as you can see the chapter names in timeline.

combined.mp4
? Preferably, command line script using ffmpeg
, and no additional dependencies.
There is similar question, but asker wants to use handbrake.
Ashark
(1069 rep)
May 8, 2023, 12:32 AM
• Last activity: Sep 18, 2024, 02:30 PM
3
votes
2
answers
1686
views
GPU accelerated transcoding
What is the current state of GPU accelerated transcoding under linux? I'd like to set up a video converter server and like to use all the available resources besides the CPU. Is there any tool, which can utilize a video card for such a task?
What is the current state of GPU accelerated transcoding under linux? I'd like to set up a video converter server and like to use all the available resources besides the CPU. Is there any tool, which can utilize a video card for such a task?
Jauzsika
(233 rep)
Nov 6, 2011, 07:07 PM
• Last activity: Dec 24, 2023, 03:15 PM
1
votes
1
answers
2090
views
Firefox, Chromium on Debian: WebRTC H.264 is not supported
While trying to stream online with my friends, I had an issue where everyone else's computer can watch the stream but mine, and even my android device can watch it. I found [this test page from GitHub Mozilla](https://mozilla.github.io/webrtc-landing/pc_test_no_h264.html) that revealed I don't have...
While trying to stream online with my friends, I had an issue where everyone else's computer can watch the stream but mine, and even my android device can watch it.
I found [this test page from GitHub Mozilla](https://mozilla.github.io/webrtc-landing/pc_test_no_h264.html) that revealed I don't have H.264 support for WebRTC, while all my friends did.
- I tested this on Firefox 112.0.1, both the Debian package
firefox
and the build from the official website.
- I tested this on Chromium 112.0.5615.138 (Official Build) built on Debian 12.0, running on Debian 12.0 (64-bit) (provided by Debian package chromium
).
- I have installed libx264-160
and libx264-164
.
- I have installed libopenh264-7
. Replacing it with competitor libopenh264-cisco7
makes no improvement.
- I can watch H.264 encoded videos offline with MPV and VLC.
- ffmpeg -codec
lists h264 support: DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
Nearly all documents and SE questions about H.264 support for Firefox are dated from around 2014-2017, which I infer this means this is an old, solved issue. If that's the case, why isn't Firefox detecting support for H.264?
I use Debian Unstable (next release bookworm).
Samuel Hunter
(176 rep)
Apr 22, 2023, 06:04 PM
• Last activity: Nov 15, 2023, 04:51 AM
0
votes
3
answers
1653
views
Hardware accelerated lossless recording on a 6700 XT using ffmpeg
I'm trying to record my screen losslessly (or at near lossless quality) with hardware acceleration on a 6700 XT with ffmpeg. I'm running Linux Mint with the `5.14.14-051414-generic` kernel. I've tried: `ffmpeg -vaapi_device /dev/dri/renderD128 -f x11grab -video_size 2560x1440 -i :0 -r 60 -vf 'hwuplo...
I'm trying to record my screen losslessly (or at near lossless quality) with hardware acceleration on a 6700 XT with ffmpeg. I'm running Linux Mint with the
5.14.14-051414-generic
kernel.
I've tried:
ffmpeg -vaapi_device /dev/dri/renderD128 -f x11grab -video_size 2560x1440 -i :0 -r 60 -vf 'hwupload,scale_vaapi=format=nv12' -c:v h264_vaapi -qp 0 output.mp4
ffmpeg
says it's recording at 60 fps, but the recording is choppy and slightly miscolored. I'm assuming the color issue is from the color format nv12, but rgb
or rgb8
gives an error.
I've also tried using kmsgrab:
ffmpeg -device /dev/dri/card0 -f kmsgrab -i - -vf 'hwmap=derive_device=vaapi,scale_vaapi=w=2560:h=1440:format=nv12' -c:v h264_vaapi -qp 0 output.mp4
But it gives the error:
[kmsgrab @ 0x558f001c8d80] Using plane 65 to locate framebuffers.
[kmsgrab @ 0x558f001c8d80] Failed to get framebuffer 127: Invalid argument.
pipe:: Invalid argument
The number after Failed to get framebuffer
is usually 127
or somewhere from 134
to 136
.
I got these commands [here](https://trac.ffmpeg.org/wiki/Hardware/VAAPI) .
LostXOR
(235 rep)
Oct 27, 2021, 01:31 PM
• Last activity: Oct 22, 2023, 08:27 PM
1
votes
1
answers
300
views
How to recover VOB video files in camcoder dvd with udf filesystem which appears empty but it's not
I recently discovered some old double-sided mini dvd-rw disks (2.8GB) which were used for recording video with a Sony DCR-DVD201E handycam. Both sides already had content but they were unfinalized so I could not mount them on my Ubuntu 22.04 box. I proceeded with finalizing them through the camera....
I recently discovered some old double-sided mini dvd-rw disks (2.8GB) which were used for recording video with a Sony DCR-DVD201E handycam. Both sides already had content but they were unfinalized so I could not mount them on my Ubuntu 22.04 box.
I proceeded with finalizing them through the camera. One side worked fine. But the other one didn't: The disk now appears as almost full of data (~1.3GB out of 1.4GB) but something seems to be wrong with the filesystem, which appears completely empty of files or folders both on my computer AND the camera.
Note that the disk does *not* contain any bad blocks and it does not cause any read errors. So we're not talking about medium failures or hardware-related issue.
Judging from other disks created and finalized by the same camera (including the other side of this disk), the filesystem should contain something like this:
However if you mount the disk,
VIDEO_TS/
VIDEO_TS/
VIDEO_TS/VIDEO_TS.BUP
VIDEO_TS/VIDEO_TS.IFO
VIDEO_TS/VIDEO_TS.VOB
VIDEO_TS/VTS_01_0.BUP
VIDEO_TS/VTS_01_0.IFO
VIDEO_TS/VTS_01_1.VOB
:
:
The output of dvd+rw-mediainfo
is the following:
$ dvd+rw-mediainfo /dev/sr0
INQUIRY: [HL-DT-ST][DVDRAM GP57EB40 ][RF01]
GET [CURRENT] CONFIGURATION:
Mounted Media: 13h, DVD-RW Restricted Overwrite
Media ID: TDK502sakuM3
Current Write Speed: 2.0x1385=2770KB/s
Write Speed #0: 2.0x1385=2770KB/s
Speed Descriptor#0: 00/716191 R@6.0x1385=8310KB/s W@2.0x1385=2770KB/s
READ DVD STRUCTURE[#10h]:
Media Book Type: 00h, DVD-ROM book [revision 0]
Legacy lead-out at: 716800*2KB=1468006400
READ DVD STRUCTURE[#0h]:
Media Book Type: 32h, DVD-RW book [revision 2]
Last border-out at: 2045*2KB=4188160
READ DISC INFORMATION:
Disc status: complete
Number of Sessions: 1
State of Last Session: complete
Number of Tracks: 1
READ FORMAT CAPACITIES:
formatted: 690544*2048=1414234112
00h(800): 716192*2048=1466761216
10h(10): 716192*2048=1466761216
13h(10): 25648*2048=52527104
15h(10): 716192*2048=1466761216
READ TRACK INFORMATION[#1]:
Track State: complete incremental
Track Start Address: 0*2KB
Free Blocks: 0*2KB
Fixed Packet Size: 16*2KB
Track Size: 690544*2KB
FABRICATED TOC:
Track#1 : 14@0
Track#AA : 14@690544
Multi-session Info: #1@0
READ CAPACITY: 690544*2048=1414234112
K3b reports the following:

ls
, du
, etc. show 0 data/files/folders.
I ripped the contents using dd
:
dd bs=2048 skip=0 count=690544 if=/dev/sr0 of=./out.iso
The output file is recognized via file
command as:
out.iso: UDF filesystem data (version 1.5) '2009_06_27_05H54M_PM'
Then I tried udfinfo
:
filename=out.iso
label=2009_06_27_05H54M_PM
uuid=00a8784b20202020
lvid=2009_06_27_05H54M_PM
vid=SONY_MOBILE
vsid= SONY_MOBILE_VOLUME_SET
fsid=SONY_MOBILE_FILE_SET
fullvsid=00A8784B SONY_MOBILE_VOLUME_SET
owner=
organization=
contact=
appid=
impid=*SONY_MOBILE
winserialnum=0x709b0f01
blocksize=2048
blocks=690544
usedblocks=690268
freeblocks=0
behindblocks=0
numfiles=0
numdirs=1
udfrev=1.02
udfwriterev=1.02
integrity=closed
accesstype=readonly
softwriteprotect=yes
hardwriteprotect=yes
start=16, blocks=5, type=VRS
start=32, blocks=16, type=MVDS
start=48, blocks=16, type=RVDS
start=64, blocks=1, type=LVID
start=256, blocks=1, type=ANCHOR
start=260, blocks=690268, type=PSPACE
start=690543, blocks=1, type=ANCHOR
I mounted it and tried photorec
but it produces multiple small mpeg files, many of which are unplayable and which are probably part of a bigger VOB file that doesn't show up.
Since I know that the disc contains VOB files, I tried ffmpeg
just in case it could somehow skip the "garbage" and transcode it into something useful, however if failed:
out.iso: Invalid data found when processing input
Handbrake
also failed to recognize any data when I tried to use the file as a source, although it does work properly with the directory structure of other disks possessing the VIDEO_TS
folder I showed earlier.
Then I tried opening the out.iso
file with VLC
. That one actually DID work, i.e. it started streaming video content, however with some issues:
- You cannot navigate in the video as timestamps/index is broken
- Converting it to mp4 creates a video with stuttering, broken timestamps, etc..
- It is obvious that it doesn't contain the whole video. Most probably the camera broke the content into multiple VOB files, so at some point it stops reading
I tried to recode one of the mp4 files that I produced using VLC, even with shorter length than expected, in order to be able to see proper length (in seconds) and navigate using a player, but ffmpeg
produced the following errors in the output without fixing them in the final output file:
ffmpeg -fflags +igndts -i vlc-converted.mp4 -vcodec libx264 -acodec aac fixed.mp4
:
[aac @ 0x555e72b0a6c0] Queue input is backward in time
[mp4 @ 0x555e72afe980] Non-monotonous DTS in output stream 0:1; previous: 143927607, current: 143927095; changing to 143927608. This may result in incorrect timestamps in the output file.
[aac @ 0x555e72b0a6c0] Queue input is backward in time
[mp4 @ 0x555e72afe980] Non-monotonous DTS in output stream 0:1; previous: 143933751, current: 143933239; changing to 143933752. This may result in incorrect timestamps in the output file.
:
So the questions are these:
- Are you aware of any (linux) tool that can discover files in a UDF filesystem which contains the data but obviously doesn't have proper filesystem entries for them?
- If no UDF tool exists, are you aware of any tool that can specifically recognize VOB files from a raw filesystem and "restore" them as ddrescue
would do?
- If none of the above is possible, do you know any ffmpeg
trick or alternative tool that could at least fix the timestamp indexes of the portion of the video stream that VLC managed to convert?
Kostas Filios
(633 rep)
May 9, 2023, 07:41 AM
• Last activity: Sep 27, 2023, 09:51 AM
2
votes
1
answers
1757
views
Adjusting keyframe rate ffmpeg/v4l2 Logitech C920 to YouTube Live
I am trying to stream video from a Logitech c920 to YouTube live via ffmpeg. I have a setup that works in Twitch, but YouTube rejects the stream with the message: > Please use a keyframe frequency of four seconds or less. Currently, keyframes are not being sent often enough, which will cause bufferi...
I am trying to stream video from a Logitech c920 to YouTube live via ffmpeg. I have a setup that works in Twitch, but YouTube rejects the stream with the message:
> Please use a keyframe frequency of four seconds or less. Currently, keyframes are not being sent often enough, which will cause buffering. The current keyframe frequency is 9.9 seconds.
My command looks like this:
ffmpeg \
-ar 44100 \
-acodec pcm_s16le \
-f s16le \
-ac 2 -i /dev/null \
-f v4l2 \
-codec:v h264 \
-framerate 60 \
-video_size 1920x1080 \
-i /dev/video0 \
-c:v copy \
-c:a aac \
-f flv \
-strict -2 \
rtmp://a.rtmp.youtube.com/live2/$STREAM_KEY
And in the logs ffmpeg gives this message:
[video4linux2,v4l2 @ 0x2965ec0] The driver changed the time per frame from 1/60 to 1/30
Does anyone know a way to force the camera, v4l2 or ffmpeg to provide keyframes at a suitable rate?
Thanks.
Dan
(21 rep)
Jan 25, 2017, 06:40 AM
• Last activity: Sep 26, 2023, 08:07 PM
0
votes
0
answers
621
views
Change the fingerprint of a video file with ffmpeg without re encoding it
I am searching for a way to edit a video file to not have the same fingerprint anymore. It should not have a high CPU impact and all the tracks of the original file should be copied (so it needs `map 0`) Do you have better ideas or a working prompt for me? So far I experimented with removing the las...
I am searching for a way to edit a video file to not have the same fingerprint anymore.
It should not have a high CPU impact and all the tracks of the original file should be copied (so it needs
map 0
)
Do you have better ideas or a working prompt for me?
So far I experimented with removing the last frame and adding an empty subtitle track, but the ChatGPT generated commands did not work or have unwanted side effects.
For subtitle this was the best I could get: ffmpeg -i "$file" -f srt -i "$subtitle_file" -map 0 -map 1 -c copy -scodec mov_text -metadata:s:s:0 language=eng -metadata:s:s:0 handler_name="Empty Subtitle" "$output_file"
where i first created an "empty" subtitle file and then it should add this, but the output file did not have the subtitle.
And for removing the frame I got this: ffmpeg -i "$file" -vf "select='not(mod(n,1))',setpts='N/(24*TB)'" -c:v copy -an -sn -y "${file%.*}_frame_removed.${file##*.}"
but here it gave me an error aboutFiltering and streamcopy cannot be used together.
Leon D
(136 rep)
Jul 2, 2023, 08:21 PM
6
votes
2
answers
24972
views
Ffmpeg libx265 vs hevc_nvenc
I have an Nvidia graphics card, and am using the proprietary drivers. I looked into the ffmpeg H265 encoders available to me, and found hevc_nvenc. Using hevc_nvenc does in fact use the GPU to encode the video, which massively increases encode time, but the output filesize is considerably larger. Fo...
I have an Nvidia graphics card, and am using the proprietary drivers.
I looked into the ffmpeg H265 encoders available to me, and found hevc_nvenc. Using hevc_nvenc does in fact use the GPU to encode the video, which massively increases encode time, but the output filesize is considerably larger.
For example: (input.mp4 is H264 and aac)
ffmpeg -hwaccel cuda -i input.mp4 -c:v libx265 -c:a libopus -crf 26 libx265_output.mkv
ffmpeg -hwaccel cuda -i input.mp4 -c:v hevc_nvenc -c:a libopus -crf 26 hevc_nvenc_output.mkv
Filesizes are:
input.mp4 351M
libx265_output.mkv 134M
hevc_nvenc_output.mkv 360M
ffprobe shows both outputs as hevc encoded, and input as h264.
So why does hevc_nvenc seem to perform so poorly? There must be something I'm missing.
TheOmegaCarrot
(61 rep)
Nov 13, 2021, 02:58 AM
• Last activity: Dec 31, 2022, 02:01 PM
1
votes
1
answers
1728
views
Capturing all frames with VLC scene-filter
I'm attempting to use VLC's `scene-filter` to extract *all* frames from an `mp4` video. The video in question runs at `25fps`, and is precisely `38s` long. In the command line, I ran with options: `--video-filter = scene --start-time = 0 --stop-time = 35 --scene-ratio = 1` I understood (?) that the...
I'm attempting to use VLC's
scene-filter
to extract *all* frames from an mp4
video. The video in question runs at 25fps
, and is precisely 38s
long.
In the command line, I ran with options:
--video-filter = scene --start-time = 0 --stop-time = 35 --scene-ratio = 1
I understood (?) that the scene ratio is the ratio of frames taken from total frames (that is, a ratio of 3
means 1/3
frames are saved). However, of the ~900
frames I'm expecting, I get only about 500
of them.
I've tried using 25
, -1
, and the default scene-ratio
values, to no avail.
What am I doing wrong? The VLC
docs aren't very clear about this.
10GeV
(141 rep)
Feb 10, 2021, 07:08 AM
• Last activity: Dec 22, 2022, 10:30 PM
Showing page 1 of 20 total questions