• ffmpeg编码YUV420视频序列



    依旧是这里的测试序列 http://www.cnblogs.com/zzugyl/p/3678865.html
    测试了JM和libx264的编解码质量
    后来用ffmpeg转码 发现忘记了命令行转码的命令
    网上搜来的很多都是复制粘贴 完全不考虑真实性 让我测试半天

    我想把YUV测试序列 720p50_parkrun_ter.yuv 720p50_shields_ter.yuv编码成h264文件。
    这里使用的ffmpeg是zeranoe编译的 http://ffmpeg.zeranoe.com/builds/
    ffmpeg version N-62509-g97751e1 Copyright (c) 2000-2014 the FFmpeg developers
      built on Apr 17 2014 22:01:31 with gcc 4.8.2 (GCC)

    第一次使用命令:

    ffmpeg -i 720p50_parkrun_ter.yuv 720p50_parkrun_ter.h264

    提示错误:
    [rawvideo @ 003a7b40] Could not find codec parameters for stream 0 (Video: rawvideo (I420 / 0x30323449), yuv420p, -4 kb/s):
    unspecified size
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    720p50_parkrun_ter.yuv: could not find codec parameters

    第二次使用命令:

    ffmpeg -pix_fmt yuv420p -i 720p50_parkrun_ter.yuv 720p50_parkrun_ter.h264

    依然是同样的错误提示

    第三次使用命令:

    ffmpeg -pix_fmt yuv420p -i 720p50_parkrun_ter.yuv -vcodec libx264 -r 50 -s 1280x720 720p50_parkrun_ter.h264

    依然是同样的错误提示

    我很纳闷了,该传的参数,我都传进去了。还需要什么呢?
    最后经过qq群好友的提示,修正参数第四次尝试。

    第四次使用命令:

    ffmpeg -s 1280x720 -pix_fmt yuv420p -f rawvideo -i 720p50_parkrun_ter.yuv -vcodec libx264 -r 50 720p50_parkrun_ter.h264

    这次顺利进行了。
    其实ffmpeg会根据后缀自行判断编解码方式。
    进而可以简化为:

    ffmpeg -s 1280x720 -i 720p50_parkrun_ter.yuv -r 50 720p50_parkrun_ter.h264

    而且编码出来的文件 连MD5都一样。算法可真严谨。

  • 相关阅读:
    word查找与替换
    细说ASP.NET Windows身份认证
    防钓鱼代码
    sql触发器
    url地址栏参数
    sql递归查询
    认识TWICImage类
    尝试发个贴
    泛型单元
    [学习官方例子]TArray
  • 原文地址:https://www.cnblogs.com/zzugyl/p/3709514.html
Copyright © 2020-2023  润新知