ffmpeg -stream_loop 3 -i input.mp4 -c copy output.mp4
This can avoid re-encoding because it can use stream copy.
0 means no loop, -1 means infinite loop.
This may not work with anything older than FFmpeg 4.0.
The concat demuxer allows you to loop an input without needing to re-encode because it can use stream copy.
With ffmpeg 2.8.4, the following command creates output.mp4 that is a repeating copy of input.mp4 until the ffmpeg process is stopped:
ffmpeg -stream_loop -1 -i input.mp4 -c copy output.mp4
This command won't terminate on its own, and the output file will grow infinitely.
IANAL, but as far as I understand it, if you're charging viewers for h.264 / MPEG-4 AVC content you may need to pay license fees. Even though x264 / ffmpeg are Free with a big F, they are just software libraries for encoding video streams into the H.264/MPEG-4 AVC format, which is covered by the MPEG patent. But the threshold for when fees are applicable is ...
At least on FFmpeg 2.8.x (but oldie should works too) you can use lavfi as input format and complex filter graph using movie and setpts filters as a argument for -i option.
Next command doing this work for you:
ffmpeg -re -f lavfi -i "movie=filename=input.mp4:loop=0, setpts=N/(FRAME_RATE*TB)" output.mp4
Zero loop= arguments means infinity loop. Values ...
Let me explain you from scratch.
MOV, MP4, AVI, MKV etc all these are just containers, It is just kind of wrapper which contains audio, video, text, metadata file together as one file. It does not play a big role in the size of a file.
Size of the file heavily depends on audio and video codec and bit-rate of that audio video codecs.
So there is a ...
Edit: I should probably remove some of the worrying conclusions about using x264 / ffmpeg that I now believe are unfounded. I put a section at the end to clear it up. For now I'm going to leave the whole mess here. Don't panic, x264 and ffh264 appear to be fine, legally, even for producing commercial videos at the standard royalty rates.
Just to clear up ...
ffmpeg -i titlefile.mp4 -vf setdar=16/9 -video_track_timescale 29971 -ac 1 newtitle.mp4
and then run concat with the new title video.
Modern containers like MP4 have Presentation TimeStamps, which are denominated with reference to a timebase. So, if the timebase value is 1/500 and a frame's PTS is 200, then that tells the video player to show that ...
No most video formats (nearly all) do not allow custom ICC color profiles to be embedded. (Improvemet/correction: MP4s can have color profiles tagged in the metadata of a video file.) most video on the consumer end is intended for the REC.709 color space. sRGB is similar and uses the same primaries. transcoding (including compressing) will almost always ...
Hope this explanation is what you're looking for:
When you transcode to an encoding such as H.264 (MPEG-4 part 10) you necessarily also resample the video, that's part of H.264 compression technique. Nontheless, I doubt if this is the reason you experience a timing gap since the resampling doesn't necessarily influence the clock rate of the media. So, I ...
What is your definition of huge and what is your definition of high quality? Size is directly related to compression and compression is directly inversely related to quality for the most part.
Some amount of compression can be had for free using lossless compression or near free with more efficient pattern finding for lossy compression, but for the most ...
M4V is a slight extension to the MP4 container format. M4V is Apple's version, which adds optional DRM-encryption.
So if the video is DRM-protected (i.e. came from the iTunes store) it should stay as m4v (and will open by default in iTunes). If it's not, it can be used with either extension, and many players will be happy either way. By default, .m4v ...
MP4 has not really an official meaning, but it adds a lot to the MPEG-confusion. MP4 refers to MPEG-4 which is a huge collection of video-related standards that has been growing for more than 20 years.
MPEG-4 part 14 container: takes an .mp4 file extension, therefore often just called MP4, if it contains audio, it can also have the .m4a extension, for video ....
Regular ffmpeg won't do this. You'll need a combination of two tools to carry this out.
#1 Use ffmpeg from direct264, a modded version of an old ffmpeg build with a custom filter to modify H264 bitstreams. This build is crippled in most other ways, so rename it or don't put it in your path.
ffmpeg -i in.mp4 -vcodec copy -acodec copy -vbsf h264_changesps=...
I recently encountered this exact problem and I was able to repair the file using Untrunc, a program created specifically to solve this problem, as suggested by sparrowt on SuperUser:
For this method you need:
another video file which isn't broken
a linux installation (I used Ubuntu 12.04) and basic ability to use a command line.
This is ...
For video, stream_loop option should be used.
ffmpeg -y -stream_loop -1 -i video -i audio.mp3 -fflags +shortest -max_interleave_delta 50000 -c copy output.mp4
You'll have to use a very recent version of ffmpeg (> Nov '17) as stream_loop had a bug, only recently fixed.
Since video encoding is expensive in terms of time and CPU, I've used streamcopy. For ...
Generally, it’s a bad idea to store data on SD or micro SD cards for any substantial period of time. If you’re a hobbyist, traveling, and plan to transfer to a hard drive when you get home, that’s fine. But if you’re a traveling media specialist, you want to get your data off of SD/micro SD as soon as possible, for a number of reasons;
Those cards are ...
One big loss in converting VHS to DVD arises from going through the composite domain. Both VHS and MPEG2 use a separated chroma paradigm -- on the VHS tape are two signals, essentially luma and bandwidth-limited chroma. MPEG2 (the standard for DVD) also uses separate luma and chroma. But the standard output from a VHS player combines the signals in a way ...
The Mainconcept or Sony codecs in Vegas are subpar for low-bitrate output such as needed for HTML5 use. Use ffmpeg to generate your HTML5 videos. Yes, mono audio is acceptable for HTML5 use, but once you use ffmpeg/x264 for generating those videos, the 6kB/s savings you get from switching to mono audio won't matter much if at all.
Get the 32-bit static ...
Most videos are limited range i.e. luma goes from 16 to 235, and chroma from 16 to 240.
Unless expressly set, FFmpeg does not scale the range from one to another. Whatever the source is, that's the output.*
However, many inputs don't tag this property in their metadata. So, the output doesn't get tagged either. In that scenario, players tend to assume ...
-map 0 -map 1:a -map 2:a
-codec copy -shortest path/to/output/fileWithSounds
FFmpeg will automatically select one video and one audio stream from among all the inputs. -map options are required to include all streams.
The most reliable way to ensure a desired length for an output is to specify -t X on the output.
But if you need adaptive limiting of the output duration, use
ffmpeg -loop 1 -framerate 5 -i 000.png -i 000.wav -c:v libx264 -c:a aac -b:a 192k -shortest -fflags +shortest -max_interleave_delta 500M out.mp4
The fflag is applied deeper in the processing ...
I strongly advice against microSD cards because they will get lost. They're just too tiny.
There are external SSDs which weigh not much, 50g maybe 100g, I think this is not much weight. Of course you need a way to attach the drive to the camcorder or rig, adding a bit more weight. When filming hand-held, the additional weight and a different center of weight ...
There's no way to do this losslessly, other than setting a meta-data flag and depending on players to rotate the video. (This is what cell-phone cameras do).
With avconv / ffmpeg, what you're doing is using your decoded -> transposed video as a source to encode with x264. See https://trac.ffmpeg.org/wiki/Encode/H.264 for how to do this. IDK where you ...
Your command is missing double quotes around the filter definition :
ffmpeg -i input.mp4 -vf "delogo=x=270:y=190:w=40:h=40" -c:a copy output.mp4
(as explained in FFmpeg filters documentation)
Nevertheless, this filter will decode and re-encode your video stream.