Depending upon the content you get do not be surprised if frames are duplicated and/or dropped during encoding. This is used in conjunction with the -vsync parameter using the 1 option which will retime the PTS/DTS timestamps accordingly. This must be the same as the input frame rate to eliminate judder. r is used to specify the output frame rate. To achieve proper playback with FFmpeg you need to use two options. If they are not in the correct order you can have playback problems like content jumping forwards, backwards, and even possible problems with basic playback. Section one – Constant frame rateĬonstant frame rate is important because players like to have the PTS/DST timestamps they are decoding generated like clockwork. Are you sure that the frame rate is constant? Were you told that the content is progressive and not interlaced? Were you given information about keyframe distance or what color space the video is in? Can you trust that any of that is accurate? I can’t and you shouldn’t. I have a basic rule when encoding content and that is to never trust the input. Streaming media, at it’s core, requires three basic things.Ģ) An even keyframe distance which is also known as a Group of Pictures or GOP.Ĥ) Finding a better bitrate for your content.ħ) Proper encoding for your target audiences. In this post I hope to help shed some light on what does and does not work. I’ve been in the streaming media industry since 2008 and have seen a lot of misinformation regarding both FFmpeg and libx264.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |