Opened 3 years ago

Last modified 2 years ago

#9245 new enhancement

Support HXVF / HXVS / HXVT files

Reported by: Carl Eugen Hoyos Owned by:
Priority: wish Component: avformat
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

http://ffmpeg.org/pipermail/ffmpeg-user/2021-May/052959.html
A user uploaded two camera recordings, both files are supposed to contain audio and video.

$ ffmpeg -i A210515_130559_130613.265 
ffmpeg version N-102545-g59032494e8 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      57.  0.100 / 57.  0.100
  libavcodec     59.  1.100 / 59.  1.100
  libavformat    59.  2.100 / 59.  2.100
  libavdevice    59.  0.100 / 59.  0.100
  libavfilter     8.  0.101 /  8.  0.101
  libswscale      6.  0.100 /  6.  0.100
  libswresample   4.  0.100 /  4.  0.100
  libpostproc    56.  0.100 / 56.  0.100
[hevc @ 0x24d0b00] Invalid NAL unit 40, skipping.
    Last message repeated 3 times
[extract_extradata @ 0x24e9a00] Invalid NAL unit 40, skipping.
    Last message repeated 3 times
[hevc @ 0x24d0b00] Invalid NAL unit 40, skipping.
    Last message repeated 511 times
Input #0, hevc, from 'A210515_130559_130613.265':
  Duration: N/A, bitrate: N/A
  Stream #0:0: Video: hevc (Main), yuvj420p(pc, bt709), 2560x1920, 25 fps, 25 tbr, 1200k tbn
At least one output file must be specified
$ ffmpeg -i A210515_140106_140121.264 
ffmpeg version N-102545-g59032494e8 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      57.  0.100 / 57.  0.100
  libavcodec     59.  1.100 / 59.  1.100
  libavformat    59.  2.100 / 59.  2.100
  libavdevice    59.  0.100 / 59.  0.100
  libavfilter     8.  0.101 /  8.  0.101
  libswscale      6.  0.100 /  6.  0.100
  libswresample   4.  0.100 /  4.  0.100
  libpostproc    56.  0.100 / 56.  0.100
[h264 @ 0x391cb00] SEI type 128 size 576 truncated at 128
[h264 @ 0x391cb00] SEI type 128 size 576 truncated at 95
[h264 @ 0x391cb00] top block unavailable for requested intra mode
[h264 @ 0x391cb00] error while decoding MB 1 0, bytestream 322311
[h264 @ 0x391cb00] concealing 19200 DC, 19200 AC, 19200 MV errors in I frame
[h264 @ 0x391cb00] concealing 19080 DC, 19080 AC, 19080 MV errors in P frame
[h264 @ 0x391cb00] concealing 18726 DC, 18726 AC, 18726 MV errors in P frame
[h264 @ 0x391cb00] concealing 18373 DC, 18373 AC, 18373 MV errors in P frame
[h264 @ 0x391cb00] concealing 18774 DC, 18774 AC, 18774 MV errors in P frame
[h264 @ 0x391cb00] concealing 18402 DC, 18402 AC, 18402 MV errors in P frame
[h264 @ 0x391cb00] concealing 17914 DC, 17914 AC, 17914 MV errors in P frame
[h264 @ 0x391cb00] SEI type 128 size 576 truncated at 128
    Last message repeated 2 times
Input #0, h264, from 'A210515_140106_140121.264':
  Duration: N/A, bitrate: N/A
  Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 2560x1920, 25 fps, 25 tbr, 1200k tbn
At least one output file must be specified

Attachments (2)

A210515_130559_130613.265 (2.3 MB ) - added by Carl Eugen Hoyos 3 years ago.
A210515_140106_140121.264 (2.4 MB ) - added by Carl Eugen Hoyos 3 years ago.

Change History (6)

by Carl Eugen Hoyos, 3 years ago

Attachment: A210515_130559_130613.265 added

by Carl Eugen Hoyos, 3 years ago

Attachment: A210515_140106_140121.264 added

comment:1 by Balling, 3 years ago

And why is NAL 40 invalid? Last time I checked it is https://github.com/FFmpeg/FFmpeg/blob/870bfe16a12bf09dca3a4ae27ef6f81a2de80c40/libavcodec/hevc.h#L69
HEVC_NAL_SEI_SUFFIX

And it is supported right here: https://patchwork.ffmpeg.org/project/ffmpeg/patch/20200107050355.17503-7-lance.lmwang@gmail.com/

And otherwise it is just HDR metadata, like MDCV (56ed01169269451b7bb327c6bb250eec36ee3de2). So...

Last edited 3 years ago by Balling (previous) (diff)

comment:3 by Carl Eugen Hoyos, 3 years ago

Some information can be found here: https://spitzner.org/kkmoon.html

comment:4 by martianw, 2 years ago

Hi, I am the original reporter of this issue. Just wondering if any of the maintainers have time to do the work required to properly support this slightly proprietary format? I believe there are an awfully large number of these IP cameras out there so it would be very much appreciated.

I think the web-based management UI that comes with the camera uses this:
https://github.com/strukturag/libde265.js

Hope someone can help.

Regards
Martianw

Note: See TracTickets for help on using tickets.