It is possible to use the select filter to select scenes for stabilisation and inclusion into the final result - see the example below. It seems that select is slow for skipping over unwanted material. This does not create any intermediate files except the *.trf file. In my example I am not using audio, which would have to be selected likewise.
I tried to use "ffmpeg-gl-transition" and followed all instruction for my mac. The transition works. However, I loose audio on my second video for some reason. My command was:
fmpeg -i input1.mp4 -i input2.mp4 -filter_complex "gltransition=duration=4:source=ZoomInCircles.glsl" -y out.mp4
PSNR and SSIM are image quality metrics. Their use on videos involves calculating the metric for each pair of frames and then applying some aggregating operation to the series of frame scores, typically the arithmetic mean. What this means is both inputs must have same frame count with each encoded frame paired with its source frame. So, deterioration of ...
Cabac is lossless, but h264 is lossy. The part you are missing is that cabac is not THE compression algorithm. It is just the final step out of hundreds of steps in video compression. By the time you get to cabac, all the lossy steps have already been performed, and a final lossless step is added to squeeze a few more bits out.
Try adding the -pix_fmt yuv420p10le option (e.g. before -vf). Or only -pix_fmt + for using the same pixel format as the input video has.
If it doesn't help, you obviously have an inappropriate, albeit more common FFmpeg version — only for 8-bit colors. (Your original video uses 10-bit colors, and FFmpeg will try use the best 8-bit pixel format in ...
YouTube re-encodes whatever you give it. The process is lossy so there will be a quality reduction. All you can do is give it a very high quality:
ffmpeg -framerate 10 -pattern_type glob -i 'resized/*.JPG' -vf scale=1280:-2 -c:v libx264 -crf 17 out.mp4
Use -crf 17 or -crf 18 for higher quality.
Try without -pix_fmt yuv420p. I'm not sure what YouTube uses ...
You can achieve the desired video without any broken or black frames by decoding and re-encoding the video. Although you need to know video codec and bit-rate in order to achieve so
ffmpeg -i input-original.mp4 -ss 00:11:42 -strict -2 -to 01:11:22 -codec:v h264 -b:v 100k;
Note: If this does not work, try to change -to switch to -t and specify the duration.
I am not sure I understand your question correctly but you can extract the video and audio stream, format them the way you want and then re-multiplex them all with ffmpeg.
ffmpeg -i input.mp4 -c:v copy -an video_only.mp4
The -an option is disabling the audio -c:v copy is copying your video stream to video_only.mp4.
ffmpeg -i input.mp4 -c:a copy -vn ...
Try to place the -ss and -to after the input:
-i input-original.mp4 \
-ss 00:11:42 \
-to 01:11:22 \
-c copy \
According to @Gyan (https://stackoverflow.com/questions/45004159/ffmpeg-ss-and-t-for-cutting-mp3)
When -ss and -t are placed before the input, ffmpeg resorts to fast
seek which relies on the index of the ...