mp4 file changes size during playback

David Ing ding at panopto.com
Wed Dec 4 18:11:49 UTC 2019


Okay ... I think this is where the versions are defined:
https://en.wikipedia.org/wiki/Advanced_Video_Coding#Versions

(Still trying to figure out how to view the standards for free.)

On Wed, Dec 4, 2019 at 10:03 AM David Ing <ding at panopto.com> wrote:

> Mathieu --
>
> Please excuse the inadequacy of my google-fu.  I am having trouble finding
> any kind of authoritative reference document which describes avc1, 2, 3, 4,
> ... (and the subtle differences between them)
>
>    - My best guess is that avc1 refers to the first amendment:
>    https://www.iso.org/standard/67318.html
>    - My best guess is that avc3 refers to the third amendment:
>    https://www.iso.org/standard/69728.html
>
> Also -- I am a bit surprised that we need to pay in order to view
> documents like this.  Does anyone know if there is a way to view this stuff
> for free?
>
> On Wed, Dec 4, 2019 at 9:14 AM Mathieu Duponchelle <
> mathieu at centricular.com> wrote:
>
>> That's an interesting file, but I'm not sure it is a a compliant one:
>> the resolution change is
>> advertised through SPS in the bitstream, but the MP4 header says "avc1",
>> which as far as I remembe
>> means the H264 bitstream should not contain any SPS (please double check
>> this, haven't looked at the spec).
>>
>> Ideally, the tool you produced this file with would use an "avc3" stream
>> format, and not hold
>> any parameter sets in its MP4 header. That way, you could detect
>> resolution changes by simply
>> plugging a demuxer and a parser together and looking for new caps.
>> Currently you can only do that
>> either by also plugging a decoder afterwards and looking for caps
>> changes, or analysing the SPS
>> manually :)
>>
>> Best,
>>
>> --
>> Mathieu Duponchelle · https://www.centricular.com
>>
>>
>> On 12/3/19 10:50 PM, David Ing wrote:
>>
>> I have an mp4 file which changes size during playback.  But I noticed
>> that gst-discoverer-1.0 does not report the fact that the size changes.
>>
>> I have two questions.
>>
>>    1. In theory, what is the fastest way to scan the file to determine
>>    where the size changes?
>>    2. In practice, what is the easiest way (given the current state of
>>    gstreamer) to scan the file and determine where the size changes?
>>
>> Here is the file which changes size during playback:
>>
>>
>> https://drive.google.com/drive/folders/1f4pGNDhzCvsg1xXWj4y9DS3vXkaglOvZ?usp=sharing
>>
>> Here is the gst-discoverer-1.0 output:
>>
>> $ *gst-discoverer-1.0 -v screencap.m4v *
>> Analyzing file:///home/ding/mess/repro/screencap.m4v
>> Done discovering file:///home/ding/mess/repro/screencap.m4v
>>
>> Topology:
>>   container: video/quicktime, variant=(string)iso
>>     video: video/x-h264, stream-format=(string)avc, alignment=(string)au,
>> level=(string)4.2, profile=(string)main,
>> codec_data=(buffer)014d402affe1002b674d402a965402a835f35602d40404050000030001000003003ce060007d0000030177009a9503b4244d4001000468ce3520,
>> width=(int)996, height=(int)632, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)30/1, interlace-mode=(string)progressive,
>> chroma-format=(string)4:2:0, bit-depth-luma=(uint)8,
>> bit-depth-chroma=(uint)8, parsed=(boolean)true
>>       Tags:
>>         video codec: H.264 / AVC
>>         bitrate: 309812
>>         datetime: 2019-11-01T17:40:33Z
>>         title: n/a
>>         container format: ISO MP4/M4A
>>
>>       Codec:
>>         video/x-h264, stream-format=(string)avc, alignment=(string)au,
>> level=(string)4.2, profile=(string)main,
>> codec_data=(buffer)014d402affe1002b674d402a965402a835f35602d40404050000030001000003003ce060007d0000030177009a9503b4244d4001000468ce3520,
>> width=(int)996, height=(int)632, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)30/1, interlace-mode=(string)progressive,
>> chroma-format=(string)4:2:0, bit-depth-luma=(uint)8,
>> bit-depth-chroma=(uint)8, parsed=(boolean)true
>>       Additional info:
>>         None
>>       Stream ID:
>> 14c5bd3783191c8af25f30b00a879f8f7bdaa4367c8ecbd954b38e5367507175/001
>>       Width: 1350
>>       Height: 846
>>       Depth: 24
>>       Frame rate: 30/1
>>       Pixel aspect ratio: 1/1
>>       Interlaced: false
>>       Bitrate: 309812
>>       Max bitrate: 0
>>
>> Properties:
>>   Duration: 0:00:34.861322222
>>   Seekable: yes
>>   Live: no
>>   Tags:
>>       video codec: H.264 / AVC
>>       bitrate: 309812
>>       datetime: 2019-11-01T17:40:33Z
>>       title: n/a
>>       container format: ISO MP4/M4A
>>
>>
>> _______________________________________________
>> gstreamer-devel mailing listgstreamer-devel at lists.freedesktop.orghttps://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20191204/7e5b1e70/attachment.html>


More information about the gstreamer-devel mailing list