On 7/17/2025 8:54 AM, Lynne wrote:
Thanks. Patchset LGTM.
This also helps HEIF files generated by the S1II, but sadly they still fail:

 > [mjpeg @ 0x55a49a0e29c0] No JPEG data found in image

And for the main stream:

> [hevc @ 0x55a49a0fe880] Failed to parse header of NALU (type 34): "Invalid data found when processing input". Skipping NALU.
 > [hevc @ 0x55a49a0fe880] Invalid NAL unit size (1229531648 > 102386).
 > [hevc @ 0x55a49a0fe880] Error splitting the input into NAL units.
> [vist#0:0/hevc @ 0x55a49a0e5000] [dec:hevc @ 0x55a49a103a80] Decoding error: Invalid data found when processing input

I wonder what they're doing with the thumbnail and NALUs. If you'd like to take a look at it, here's a sample:
https://files.lynne.ee/P1001083.HIF

This is a handling error in mov.c, because the order of entries in iloc and iinf in this sample are not in the same order, when the code incorrectly expects them to.
Curious how this is the first sample we see where that's not true.


On 17/07/2025 11:30, Eric Joyner wrote:
Nikon HEIFs from a camera or NX studio include a small jpeg thumbnail in addition to
the expected HEVC thumbnails; allowing jpegs allows all thumbnails to
have an associated stream for Nikon HEIF files.

With this, Nikon HEIFs can finally be decoded without failing and the
thumbnails can be extracted into their own files.

Signed-off-by: Eric Joyner <e...@erj.cc>
---
  libavformat/mov.c | 1 +
  1 file changed, 1 insertion(+)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 7010e13b50..19b31b032d 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -8840,6 +8840,7 @@ static int mov_read_infe(MOVContext *c, AVIOContext *pb, MOVAtom atom, int idx)
      switch (item_type) {
      case MKTAG('a','v','0','1'):
+    case MKTAG('j','p','e','g'):
      case MKTAG('h','v','c','1'):
          ret = heif_add_stream(c, c->heif_item[idx]);
          if (ret < 0)
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

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

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

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

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

Reply via email to