[FFmpeg-devel] FFV1.3

Michael Niedermayer michaelni at gmx.at
Wed May 23 12:24:49 CEST 2012


On Tue, May 22, 2012 at 09:22:14PM -0400, Dave Rice wrote:
> Hi Michael,
> 
> On May 16, 2012, at 4:11 PM, Michael Niedermayer wrote:
> 
> > sOn Wed, May 16, 2012 at 09:01:46PM +0200, Peter B. wrote:
> >> On 05/16/2012 08:43 PM, Michael Bradshaw wrote:
> >>> On Wed, May 16, 2012 at 12:35 PM, Peter B. <pb at das-werkstatt.com> wrote:
> >>>> Maybe a stupid question, but what is the right commandline call for
> >>>> selecting the FFv1 version to use for encoding?
> >>> ffmpeg -i input.mov -vcodec ffv1 -acodec copy output.mp4
> >>> ?
> >>> 
> >>> Or do you mean something else?
> >> Yes, I'd like to validate/test FFv1's new versions 2 and 3. When v2 had
> >> been developed, I had to modify a variable in the source to enable it,
> >> but I've seen a commit-msg by Michael [1], which sounded to me like
> >> selecting the version was now possible as parameter?
> >> 
> >>> FYI, this mailing list is primarily for the development of ffmpeg
> >>> itself. For help using ffmpeg, ffmpeg-user mailing list is probably
> >>> better.
> >>> 
> >> I know, I'm sorry - I just thought that it might make sense to connect
> >> it to the "FFv1.3" thread...
> > 
> > -level 3
> > 
> > and thanks for validating testing
> > 
> > if you need help have questions ask me ...
> 
> I tested using an random v210 output to encode the results with ffv1 at different levels. For this I used these commands:
> 
> Produce a source file of random noise:
> ffmpeg -y -f rawvideo -c:v v210 -s 720x486 -r 29.97 -t 5 -i /dev/random -c:v v210 source1.mov
> 
> Encode the source file to ffv1 using the defaults, level 2 and level 3:
> ffmpeg -y -i source1.mov -c:v ffv1 -coder 1 result1_v1.mov
> ffmpeg -y -i source1.mov -c:v ffv1 -coder 1 -level 2 result1_v2.mov
> ffmpeg -y -i source1.mov -c:v ffv1 -coder 1 -level 3 -strict experimental -slices 4 result1_v3.mov
> 
> Framemd5 the source and results:
> ffmpeg -y -i source1.mov -f framemd5 source1.framemd5
> ffmpeg -y -i result1_v1.mov -f framemd5 result1_v1.framemd5
> ffmpeg -y -i result1_v2.mov -f framemd5 result1_v2.framemd5
> ffmpeg -y -i result1_v3.mov -f framemd5 result1_v3.framemd5
> 
> Compare outputs:
> md5 *.mov
> md5 *.framemd5
> 
> 
> The results were:
> 
> MD5 (result1_v1.mov) = 9dccccd30802d5e6dd83b12257fa5364
> MD5 (result1_v2.mov) = 9dccccd30802d5e6dd83b12257fa5364
> MD5 (result1_v3.mov) = fb0c4f23043b6b55d0d12bcd352fbb4f
> MD5 (source1.mov) = 3ba8b3a7abe5a12a979cef931661ee53
> 
> MD5 (result1_v1.framemd5) = 36e8dc9c3a112980ce3f0ed78e325007
> MD5 (result1_v2.framemd5) = 36e8dc9c3a112980ce3f0ed78e325007
> MD5 (result1_v3.framemd5) = 8ff40e924f8867c835d122581e2be2e4
> MD5 (source1.framemd5) = 8ff40e924f8867c835d122581e2be2e4
> 
> The files result1_v1.mov and result1_v2.mov were identical. The '-level 2' had no effect. But also, both of these output files also did not look like the source file, instead of noise, they should diagonal lines, gradients, and patterns.
> 
> From the framemd5 comparison, the only accurate lossless encoding of the random noise of the source file was using -level 3. This is not what I expected, so do these test conditions make sense? I realized later that interpreting random data as v210 is not right since v210 should have 2 padding bits every 32, but changing the way I produced a random v210 source file still yielded the same results, when encoding it with ffv1 at different levels.

seems a bug sneaked into the decoder
fixed

thanks

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The real ebay dictionary, page 1
"Used only once"    - "Some unspecified defect prevented a second use"
"In good condition" - "Can be repaird by experienced expert"
"As is" - "You wouldnt want it even if you were payed for it, if you knew ..."
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20120523/e4375459/attachment.asc>


More information about the ffmpeg-devel mailing list