On 2021-12-31 19:33, Andreas Rheinhardt wrote: > John-Paul Stewart: >> On 2021-12-31 17:19, Andreas Rheinhardt wrote: >>> John-Paul Stewart: >>>> Recent discussion on the list led me to realize that libavformat was >>>> unconditionally creating an audio stream for all SGI movie format >>>> (version 2) files, even when no audio is present in the file. >>>> >>>> A sample of a movie file with no audio can be found at >>>> http://www.personalprojects.net/ffmpeg/silent.movie >>>> >>>> Unpatched ffmpeg will report an audio stream even though no audio is >>>> present. After the following patch no audio stream is reported. >>>> >>>> SGI movie files with audio are slightly affected by the fact that the >>>> audio stream is now allocated after the video stream, changing the order >>>> they are listed in the output of ffprobe or ffmpeg. I don't think this >>>> materially affects anything. All existing FATE tests pass. >>>> >>> >>> If I am not mistaken, it actually changes it a bit more: The audio data >>> (if present) is stored before the video data in the file and >>> mv_read_packet returns the data in the order of the stream numbers. Now >> >> Thanks for that info. I hadn't realized that mv_read_packet relied on >> the order of the stream numbers. >> > > It is actually documented (right before creating the audio stream): > "/* allocate audio track first to prevent unnecessary seeking > * (audio packet always precede video packet for a given frame) */"
I saw that, but thought it referred only to seeking through the metadata in the file header. I didn't realize that the comment meant the seeks would happen later in processing the actual data stream in another function. I didn't look at the code in enough detail to fully understand the comment. _______________________________________________ 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".