On 03/03/2024 18.33, Jim DeLaHunt wrote:
Mark:

On 2024-03-02 19:51, Mark Filipak wrote:
I have a couple of things to look at.

https://markfilipak.github.io/Video-Object-Notation/Streams.html
https://markfilipak.github.io/Video-Object-Notation/GOP%20%26%20Frame%20Reordering.html

Comments are welcome. Please be brutal. 'Streams' is crucial.

Good work!

Thank you.

Regarding the Streams illustration 
<https://markfilipak.github.io/Video-Object-Notation/Streams.html>:

The macroblock to slice to picdata transition is clear. Showing 45 macroblocks in a horizontal slice works.  Good work.

... It is hard to count out 45 from single-digit numbers. 00..44 would be much 
clearer.

I agree, and I would have "0..44" if I could. If I used 2-digit numbers, I'd have to almost double the table width. The issue is that FireFox doesn't support 'font-size' style, so making the font smaller to fit can't be done.

The complete list of 0..29 slices is visually overwhelming, and not necessary.  I think you could keep slices 0..2, elide slices 3..27 with a vertical ellipsis, and keep slices 28..29.  That would get the slice structure across.

I'm going for visual impact, too. Do you find what I have confusing?

The slice structure lacks a comment with size, of the sort you included for macroblock and picdata. The full slice structure does not leave any room for such a comment.

Well, I felt that with all 30 slices and all 1350 macroblocks explicitly shown, comments were superfluous. They will get looked at one time, then ignored for the rest of time.

Regarding the GOP & Frame Reordering illustration, <https://markfilipak.github.io/Video-Object-Notation/GOP%20%26%20Frame%20Reordering.html>:

Time is plastic in illustration space also. You have term definitions which happen after the first use of those terms. It would be easier to follow if the term definitions could come at first use.

The opening text, "an I-frame followed by P-frames and optional B-frames", could be improved by adding term definitions. e.g. "an I-frame (complete unto itself, sometimes called keyframe) followed by P-frames (predictive based on differences with the preceding I-frame) and optional B-frames (bipredictive based on differences with the preceding P-frame and I-frame)".

Thanks, Jim. That's your style.

The first rectangle, GOP specimen, gives a particular frame order. Which order is this? Is this the order of frames in the incoming data stream, before reording? That specimen seems to be in PTS order.  Is this necessary, or coincidental?

Yes, frames in the stream are in PTS order.

What reordering happens in the first step?  Is it reordering from incoming 
stream order to DTS order?

Yes.

I don't get how the conveyor belt metaphor and illustrations add value.

They can easily be visualized and they are memorable.

Then show arrows from that sequence down to the same frames, in PTS order.

It is not clear to me why the final two B-frames have later DTSs than the following I-frame, but earlier PTSs.  Why would these B-frames not be relative to the first I-frame?

They are between the last P-frame and the next I-frame of the next GOP. They have no relation to the I-frame back at the beginning of their own GOP other than through the P-frame.

If they are relative to the second I-frame, why would that I-frame not have an 
earlier DTS?

It does. When reordered, the next GOP's I-frame is decoded before the previous GOP's B-frames. You see that every time in every video that has B-frames.

Are the B-frames relative to the final P-frame before them?

To my understanding, yes. That's what the page is about.

What is going on visually that the encoder would choose to sequence things this 
way?

To my understanding, it's complying with the specifications: MPEG ISO & ITU.

It is great to have a reference to the specification which you are illustrating, "ITU-T H.262 (02/2012)". It would be even better to have that at the beginning. The illustration might explain its goal, e.g. "This illustrates the Group of Pictures and frame reordering operations as described in ITU-T H.262 (02/2012)."

It's a matter of writing style. I prefer to not justify something until after 
I've said it, if at all.

And, these diagrams are amazing works of character graphics. They would be even more amazing as works of vector graphics. But drawing them in vector graphics would require a different skill-set.

They can be swipe-copied and pasted as plain text. You can't do that with either tables or vector graphics. I consider that important.

Thanks for your thoughts, Jim
--Mark.


_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to