-1

So i have video file mp4, and without changing its quality i want to add ass hardsubs. i am doin this with ffmpeg: on windows:

ffmpeg -i input.mp4 -c:v libx264 -preset:v medium -profile:v baseline -level 3.0 -movflags +faststart -vf ass=insubs.ass -bufsize 4000k -qp 27 result.mp4

But it takes long time, or quality is bad. It have to be most compatible, so baseline, and good for web.

How to do it faster? When i change preset to ultrafast quality is very very bad.

I dont want to use mkvtoolnix and handbrake or avisynth. And it has to be on Windows. It has to be something, possible to do with one simple bat file, very fast, good quality,small size, just like original mp4 only with subs hardcoded. Thanks.

user3762355
  • 165
  • 1
  • 11

1 Answers1

1

Hardsubbing (embedding the subtitles into the video itself) can only be performed via re-encoding the video. To preserve high quality you'd need to use presets slow or veryslow and profile main.

wOxxOm
  • 43,497
  • 7
  • 75
  • 96
  • The first sentence is correct, but not the second. The OP should have used `-crf` to control quality instead of `-bufsize` and `-qp`. – llogan May 23 '15 at 16:16
  • @LordNeckbeard, I have encoded thousands of different videos for 10 years making CMs and such, and I don't think the second is incorrect because `--profile baseline` disables CABAC, thus reducing the encoder efficiency a lot: if one cares about quality (the OP cares) `baseline` should never be used unless it is enforced by the streaming site. Similarly, `--preset slow` and `veryslow` enable a much better motion search than `medium`, requiring fewer bandwidth with the same quality as you would spend by simply adjusting `--qp` or `--crf` with the medium preset. – wOxxOm May 23 '15 at 19:45