New answers tagged

2

You can do this with ffmpeg using either the concat filter or the concat demuxer. Which one to use depends whether or not your inputs have the same parameters or not. If they do not, you may have to perform additional filtering to make everything suitable to be concatenated properly. Example: concat filter For inputs that vary in frame rate, width, and ...


1

Ok, it can be done, but it's inelegant and has limitations, which make it in the end, not worthwhile. The limitation is that this only properly works with fixed-width fonts. And due to a still-unfixed-bug in ffmpeg, it will look somewhat ugly. But here it is, ffmpeg -i input.mp4 -lavfi "color=white:1280x120,fps=30[c]; \ [c]format=rgba, \ ...


4

As you are hardcoding subtitles, the video (with the subtitles added) will be re-encoded. You can use the CRF rate control method to modulate the quality of the output. So, start with ffmpeg -i grdedFinal.mov -vf subtitles=portSbs.srt -crf 18 -c:a copy gradedFinalwithSubs.mov If the quality's not acceptable, lower that value till it is - in exchange ...


0

It appears that the subtitles file did not have --> but a –> with the – corresponding to the en dash that was placed in the file, which was edited by hand externally. It seems like the en dash sign was assigned to typing -- in Mac TextEdit (the functionality can be disabled in preferences).


4

MPEG-2 doesn't seem to be an officially sanctioned codec for the Quicktime container. The official specification has a section related to MPEG-1 in MOV but not MPEG-2. The US Library of Congress also does not have an entry for the subtype MPEG-2 in MOV, like it does for MPEG-1 (just called QTV_MPEG). So, there's no official word on "allowable alternative ...


3

Use the box options i.e. drawtext=enable='between(t,2.5,6.5)':fontsize=50:fontcolor=White:fontfile='ariblk.ttf':text='textline1':x=min(4*(tw\+10)-(abs(4-2*(t-2.5)))*(tw+10)-tw\,10):y=h-th-130:box=1:boxborderw=12:boxcolor=black@0.45 This adds a box with padding of 12 pixels around the text boundary, and the color is black with 45% opacity. Using drawbox ...


2

Since these are for broadcast play-out over local storage, these commands are biased towards quality and away from filesize. For MP4s: ffmpeg -i input.mp4 -vf "text filters here" -c:v libx264 -crf 8 -c:a copy -map 0 -movflags +faststart output.mp4 For MPGs: ffmpeg -i input.mpg -vf "text filters here" -c:v mpeg2video -q:v 2 -c:a copy -map 0 output.mpg


3

Use this filter expression: "drawtext=enable='between(t,2.5,6.5)':fontsize=50:fontcolor=Green:fontfile='ariblk.ttf': \ text='textline1':x=min(4*(tw\+10)-(abs(4-2*(t-2.5)))*(tw+10)-tw\,10):y=h-th-130" The above is for the first line. I've changed the values/expression for the enable and xparameters. The movement starts at 2.5 seconds, settles at 3s, stays ...


0

I thin MKVtoolnix is better and can help you get the result that you want. MKVtoolnix is a set of tools to create, alter, split, join and inspect Matroska files(mkv). Use MKVCleaver or gMKVExtractGUI to extract/demultiplex mkv video and audio files. Supported operating systems: Windows - Mac OS - Linux Screenshot :


2

Your present command specifies stream copy, but since you wish to alter the video frames during the transition, that won't work. It can be done if you know the duration of the two videos and the duration of fade. Also, for the command below, the resolutions of the two videos should be the same. ffmpeg -i first.ogg -i second.ogg \ -filter_complex \ ...


0

Try ffmpeg -i inputMovie.mkv -c copy -map 0 outputmovie.m4v Depending on the subtitle format, they may not get copied over. In which case, ffmpeg -i inputMovie.mkv -c copy -c:s mov_text -map 0 outputmovie.m4v Edit: Once you have a text-based subtitle format like SRT or ASS, you can use ffmpeg -i inputMovie.mkv -i subtitle.srt -c copy -c:s mov_text ...


0

Add -r 25 to your command. The q readout refers to the allowed range for the quantizer. There's no bounds applied in your command, but you can limit by setting one or both of -qmin N and -qmax N Unless you have good reason to, don't change it.


0

Another way to automate it: Sony Vegas Pro + Vegasaur extension (this tool) (Sony Vegas Pro also supports scripting based on .NET Framework)


0

If you're doing this for broadcast and you want animated text and graphicse you could use After Effects with scripting. To pull in the track data automatically you'll either need something like this or this or you could learn / hire someone who knows extendscript to script After Effects. That way you can use your own graphics, animated text treatment and so ...


0

Depending on the container format, multi-channel audio can either be in a single stream or in separate mono streams. Most consumer formats allow both, but it's easier for the end-user to have it in one stream (it can be interleaved PCM audio, or encoded bit-streams as ac3 or aac). Notice that it doesn't prevent to have several multi-channel streams in one ...


2

I believe you can do it with ffmpeg with command drawtext ffmpeg -i input.mp4 -vf "drawtext=enable='between(t\,0,60)':fontfile=/Windows/Fonts/Tahoma.ttf:fontcolor='White':> > text='YourText'" -acodec copy output.mp4 See this tutorial, for batch conversion. You can add drawbox to make it more nice. See documentation here.


0

No, channels are conjoint, so they are part of a single stream. It is possible, using ffmpeg or similar software, to split channels into distinct streams. In which case, each stream will contain one channel.


0

Try ffmpeg -loop 1 -framerate 1 -i image.jpg -i audio.m4a -c:a copy -fflags +genpts -shortest -y video.mp4


0

Just remove -c:v copy. So it should look like this: ffmpeg -loop 1 -i image.jpg -i audio.m4a -c:a copy -shortest -y video.mp4 ffmpeg will select H.264 encoder to encode your image. You could also try -c:v libx264 -tune stillimage option. But probably the result will be similar.


0

You are right about -r 1 and -vf fps=1 but you said also that you have 30 mins audio, in this case even if you keep fps at 1 it will be still 1800 seconds, 1800 times the repetitions of the same image converted as bitmap data. Different thing is if you start using a codec that could take advantage of the redundancy of the data present in the stream. For ...


3

I would get as far away from EE as possible. Using the x264 tool, and mp4box, you can convert and segment out the files which are ready to be streamed to any dash compatible players. Especially since you mentioned using batch scripts, this is a great solution I think. This is a good guide: ...


2

The following command shows a video with a waveform of the corresponding audio: ffmpeg -i input.mp4 -filter_complex "[0:a]showwaves=s=1280x720,format=yuv420p[vid]" -map "[vid]" -map 0:a -codec:v libx264 -crf 18 -preset fast -codec:a aac -strict -2 -b:a 192k output.mp4 I replaced avectorscope with showwaves: avectorscope is for showing the difference ...


2

Try ffmpeg -i input.vob -vf yadif -c:v libx264 -preset slow -crf 19 -c:a aac -b:a 256k output.mp4 See FFmpeg Filter Documentation: yadif for more info.


1

With ffmpeg 2.8.4, the following command creates output.mp4 that is a repeating copy of input.mp4 until stopped: ffmpeg -stream_loop -1 -i input.mp4 -c copy -fflags +genpts output.mp4


0

When I use ffmpeg to remux some recorded video (can be TS, MP4 or MKV) and get the non monotonous dts in output stream - timestamps etc etc error, the resulting video either appears to have audio only or plays jerkily. The only way I have found of reliably dealing with this is to use AviDemux. With Copy settings for both audio and video and selecting MP4V2 ...


1

Try ffmpeg -hide_banner -loglevel info -progress /tmp/ffmpeg.log -i udp://10.0.0.150:8181?listen -filter_complex '[0:v]split=2[in1][in2];[in1]scale=640:-1,format=yuv420p[out1];[in2]fps=1/60[out2]' \ -map '[out1]' -map 0:a -framerate 30 -video_size 1080x720 -vcodec libx264 -b:v 768k -crf 23 -preset medium -maxrate 800k -bufsize 800k -g 60 -c:a aac -strict ...



Top 50 recent answers are included