![]() What you are wanting could be 1: Crop "meta-data" which apply cropping during runtime (or "play"-time). You might have a large residual in a nearby P or B frame used as reference ![]() They don't have to derive everything from the IDR frame. So no, not just the borders and the perpheral adjacent area are affectedĪlso, modern codecs can use P and B frame references. If you crop that car, it will affect those later frames in the central portion or the frame. ![]() Lets say it's 50% represented on the I frame (half in the frame, but coming farter into the frame the next frame). Consider sequence where a car goes in an out of the frame left to right. Inter prediction means other frames can rely on adjacent frames, and not just the frame border edges. ![]() HEVC can have 64圆4 CTU's, but HEVC extends it 2 rows, so it's 192 pixels potentially affected at the borders. Potentially for AVC that could be 32 pixels if you include the dependent neighbor (max block size is 16x16 for AVC). Let's assume for discussion purposes that you can live with that loss: That makes it lossy when you use a lossy codec. The vast bulk of the picture data will be effectively untouched and identical, the only changes being to those blocks which straddle or reference the cropped area, which would obviously have to be adjusted, or split into smaller blocks. It may be difficult to program, but how can anyone say it's impossible? "Impossible" is such an absolute statement. I assumed there must be some program that can do it with videos - I guess not.īut I don't see any reason why it's "impossible" as many people claim. There are programs which can losslessly crop lossy files such as JPEGs and mp3s. But it won't be "re-encoded" in the sense of there being any further compression, quality loss, or relative change in the file size. Sure, it will be "re-encoded" in the sense that the software is re-building a new file, with some changes. What I mean is to take a lossy video, crop it, and output a new lossy video, without re-encoding it. ![]() OK when I said "lossless cropping", I thought that was fairly self-explanatory, but let me just clarify… In a section of another post in the same thread jagabo states that in theory, it should be possible to create editing software that is able to losslessly crop MJPEG. How's the decoder going to know what to put in the middle of the picture? The use of "motion vectors" like this are a large part of video compression. The compressed video might recognize the ball is the same and simply say "copy this block of pixels (that contains the ball) from that X,Y coordinate in the last frame to this X',Y' coordinate in this frame." If you crop away the edge of the frame there's no ball in the prior frame anymore. This makes the job much more difficult.įor example, say a ball was at the very edge of the picture in one frame and at the middle of the picture in the next. High compression video codecs start with similar compression techniques but on top of that frames can reference other frames. The compressed data encodes the entire picture. See Yes, that's possible because a JPG image is a single entity. It is possible for some lossy compression format to have lossless transform, for instance on JPEG it is possible to do certain crop or 90° rotate in a lossless way, viz without re-encoding. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |