[FFmpeg-trac] #9732(avformat:new): The mov demuxer does not correctly read the `cprt` box

FFmpeg trac at avcodec.org
Wed Jul 6 09:40:14 EEST 2022


#9732: The mov demuxer does not correctly read the `cprt` box
------------------------------------+------------------------------------
             Reporter:  Xiaolei Yu  |                    Owner:  (none)
                 Type:  defect      |                   Status:  new
             Priority:  normal      |                Component:  avformat
              Version:  git-master  |               Resolution:
             Keywords:  cprt mp4    |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+------------------------------------
Changes (by IvanB):

 * cc: IvanB (added)

Comment:

 As I understand, current implementation of 'cprt' box reading is broken
 indeed (or at least doesn't conform to ISO/IEC 14496-12).

 According to the specification the box should be a Full Box that contain
 language field, followed by the copyright text in `utfstring` format (so
 either utf-8 or utf-16).

 Current implementation reads this as a string length, followed by the
 actual string, which results in empty string. ("version" field, =0, goes
 to "string length").

 I wonder if somebody have any samples (maybe from some custom mov/mp4
 dialect) where 'cprt' box correspond to the current implementation. If
 there are some, probably we need to find a way to somehow distinguish the
 types of the boxes we read.

 The same thing is also true for the most of 3gpp metadata boxes. For
 example, according to 3GPP specification, 'gnre' (genre) is written in a
 similar way to ISO/IEC 14496-12's 'cprt' (so as a FullBox + language +
 utfstring), but we read it as id3v1_genre index.
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/9732#comment:2>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list