{"id":135,"date":"2021-06-02T23:26:28","date_gmt":"2021-06-02T15:26:28","guid":{"rendered":"https:\/\/blog.cauchyschwarz.com\/?p=135"},"modified":"2021-12-11T00:38:54","modified_gmt":"2021-12-10T16:38:54","slug":"ffmpeg%e4%bb%8e%e5%85%a5%e9%97%a8%e5%88%b0%e7%b2%be%e9%80%9a%e8%af%bb%e4%b9%a6%e7%ac%94%e8%ae%b0","status":"publish","type":"post","link":"https:\/\/blog.cauchyschwarz.com\/?p=135","title":{"rendered":"FFmpeg\u4ece\u5165\u95e8\u5230\u7cbe\u901a\u8bfb\u4e66\u7b14\u8bb0"},"content":{"rendered":"\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 ez-toc-wrap-right counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a363fcfb7905\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a363fcfb7905\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E4%B8%80%E7%AB%A0_FFmpeg%E7%AE%80%E4%BB%8B\" >\u7b2c\u4e00\u7ae0 FFmpeg\u7b80\u4ecb<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpege%E7%9A%84%E5%AE%9A%E4%B9%89\" >FFmpege\u7684\u5b9a\u4e49<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E7%9A%84%E5%8E%86%E5%8F%B2\" >FFmpeg\u7684\u5386\u53f2<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E7%9A%84%E6%9E%84%E6%88%90\" >FFmpeg\u7684\u6784\u6210<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E7%9A%84%E5%9F%BA%E7%A1%80%E5%91%BD%E4%BB%A4\" >FFmpeg\u7684\u57fa\u7840\u547d\u4ee4<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E8%BD%AC%E6%A0%BC%E5%BC%8F\" >\u8f6c\u683c\u5f0f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%92%AD%E6%94%BE%E6%96%87%E4%BB%B6\" >\u64ad\u653e\u6587\u4ef6<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%A4%9A%E5%AA%92%E4%BD%93%E5%88%86%E6%9E%90%E5%99%A8ffprobe\" >\u591a\u5a92\u4f53\u5206\u6790\u5668ffprobe<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffmpeg%E7%9A%84%E7%BC%96%E8%AF%91\" >ffmpeg\u7684\u7f16\u8bd1<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E4%BA%8C%E7%AB%A0_FFmpeg%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8%E5%9F%BA%E7%A1%80\" >\u7b2c\u4e8c\u7ae0 FFmpeg\u5de5\u5177\u4f7f\u7528\u57fa\u7840<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffmpeg_%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\" >ffmpeg \u5e38\u7528\u547d\u4ee4<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E4%BF%A1%E6%81%AF%E6%9F%A5%E8%AF%A2\" >\u4fe1\u606f\u67e5\u8be2<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%A0%BC%E5%BC%8F%E5%B0%81%E8%A3%85%E8%BD%AC%E6%8D%A2%E5%8F%82%E6%95%B0\" >\u683c\u5f0f\u5c01\u88c5\u8f6c\u6362\u53c2\u6570<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E8%BD%AC%E7%A0%81%E5%8F%82%E6%95%B0\" >\u8f6c\u7801\u53c2\u6570<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffmpeg%E8%BD%AC%E7%A0%81%E4%BE%8B%E5%AD%90\" >ffmpeg\u8f6c\u7801\u4f8b\u5b50<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffprobe%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\" >ffprobe\u5e38\u7528\u547d\u4ee4<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%9F%A5%E7%9C%8B%E5%A4%9A%E5%AA%92%E4%BD%93%E6%95%B0%E6%8D%AE%E5%8C%85\" >\u67e5\u770b\u591a\u5a92\u4f53\u6570\u636e\u5305<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%9F%A5%E7%9C%8B%E5%B0%81%E8%A3%85%E6%A0%BC%E5%BC%8F\" >\u67e5\u770b\u5c01\u88c5\u683c\u5f0f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffprobe%E6%9F%A5%E7%9C%8B%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E5%B8%A7%E4%BF%A1%E6%81%AF\" >ffprobe\u67e5\u770b\u89c6\u9891\u6587\u4ef6\u4e2d\u7684\u5e27\u4fe1\u606f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffprobe%E6%9F%A5%E7%9C%8B%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E6%B5%81%E4%BF%A1%E6%81%AF\" >ffprobe\u67e5\u770b\u89c6\u9891\u6587\u4ef6\u4e2d\u7684\u6d41\u4fe1\u606f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffprobe%E8%AE%BE%E7%BD%AE%E8%BE%93%E5%87%BA%E6%A0%BC%E5%BC%8F\" >ffprobe\u8bbe\u7f6e\u8f93\u51fa\u683c\u5f0f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffprobe%E7%AD%9B%E9%80%89stream\" >ffprobe\u7b5b\u9009stream<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#ffplay%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\" >ffplay\u5e38\u7528\u547d\u4ee4<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E4%B8%89%E7%AB%A0_FFmpeg%E8%BD%AC%E5%B0%81%E8%A3%85\" >\u7b2c\u4e09\u7ae0 FFmpeg\u8f6c\u5c01\u88c5<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACMP4%E6%A0%BC%E5%BC%8F\" >\u97f3\u89c6\u9891\u6587\u4ef6\u8f6cMP4\u683c\u5f0f<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#MP4%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7\" >MP4\u5206\u6790\u5de5\u5177<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#MP4%E5%9C%A8FFmpeg%E4%B8%AD%E7%9A%84Demuxer\" >MP4\u5728FFmpeg\u4e2d\u7684Demuxer<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#MP4%E5%9C%A8FFmpeg%E4%B8%AD%E7%9A%84Muxer\" >MP4\u5728FFmpeg\u4e2d\u7684Muxer<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACFLV\" >\u89c6\u9891\u6587\u4ef6\u8f6cFLV<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FLV%E6%A0%BC%E5%BC%8F%E6%A0%87%E5%87%86\" >FLV\u683c\u5f0f\u6807\u51c6<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E8%BD%ACflv%E5%8F%82%E6%95%B0\" >FFmpeg\u8f6cflv\u53c2\u6570<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E6%96%87%E4%BB%B6%E8%BD%ACFLV\" >FFmpeg\u6587\u4ef6\u8f6cFLV<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E7%94%9F%E6%88%90%E5%B8%A6%E5%85%B3%E9%94%AE%E7%B4%A2%E5%BC%95%E7%9A%84FLV\" >FFmpeg\u751f\u6210\u5e26\u5173\u952e\u7d22\u5f15\u7684FLV<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-34\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FLV%E6%96%87%E4%BB%B6%E6%A0%BC%E5%BC%8F%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7\" >FLV\u6587\u4ef6\u683c\u5f0f\u5206\u6790\u5de5\u5177<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-35\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACM3U8\" >\u89c6\u9891\u6587\u4ef6\u8f6cM3U8<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-36\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#M3U8%E6%A0%BC%E5%BC%8F%E6%A0%87%E5%87%86\" >M3U8\u683c\u5f0f\u6807\u51c6<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-37\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E5%B0%81%E8%A3%85HLS%E5%8F%82%E6%95%B0\" >FFmpeg\u5c01\u88c5HLS\u53c2\u6570<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-38\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%B8%B8%E8%A7%84%E7%9A%84%E4%BB%8E%E6%96%87%E4%BB%B6%E8%BD%AC%E6%8D%A2%E4%B8%BAHLS%E7%9B%B4%E6%92%AD\" >\u5e38\u89c4\u7684\u4ece\u6587\u4ef6\u8f6c\u6362\u4e3aHLS\u76f4\u64ad<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-39\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E5%88%87%E7%89%87\" >\u89c6\u9891\u6587\u4ef6\u5207\u7247<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-40\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#FFmpeg%E4%BD%BF%E7%94%A8ss%E4%B8%8Et%E5%8F%82%E6%95%B0%E8%BF%9B%E8%A1%8C%E5%88%87%E7%89%87\" >FFmpeg\u4f7f\u7528ss\u4e0et\u53c2\u6570\u8fdb\u884c\u5207\u7247<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-41\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E9%9F%B3%E8%A7%86%E9%A2%91%E6%B5%81%E6%8A%BD%E5%8F%96\" >\u97f3\u89c6\u9891\u6587\u4ef6\u97f3\u89c6\u9891\u6d41\u62bd\u53d6<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-42\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%8A%BD%E5%8F%96AAC%E9%9F%B3%E9%A2%91%E6%B5%81\" >\u62bd\u53d6AAC\u97f3\u9891\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-43\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%8A%BD%E5%8F%96H264%E8%A7%86%E9%A2%91%E6%B5%81\" >\u62bd\u53d6H.264\u89c6\u9891\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-44\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%8A%BD%E5%8F%96%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84H265%E6%95%B0%E6%8D%AE\" >\u62bd\u53d6\u97f3\u89c6\u9891\u6587\u4ef6\u4e2d\u7684H.265\u6570\u636e<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-45\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E5%9B%9B%E7%AB%A0_FFmpeg%E8%BD%AC%E7%A0%81\" >\u7b2c\u56db\u7ae0 FFmpeg\u8f6c\u7801<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-46\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#x264%E7%BC%96%E7%A0%81%E5%8F%82%E6%95%B0\" >x264\u7f16\u7801\u53c2\u6570<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-47\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%BC%96%E7%A0%81%E4%B8%BE%E4%BE%8B\" >\u7f16\u7801\u4e3e\u4f8b<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-48\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%BC%96%E7%A0%81%E5%99%A8%E9%A2%84%E8%AE%BE%E5%8F%82%E6%95%B0preset\" >\u7f16\u7801\u5668\u9884\u8bbe\u53c2\u6570preset<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-49\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#H264%E7%BC%96%E7%A0%81%E4%BC%98%E5%8C%96%E5%8F%82%E6%95%B0tune\" >H.264\u7f16\u7801\u4f18\u5316\u53c2\u6570tune<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-50\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#H264%E7%9A%84profile%E4%B8%8Elevel%E8%AE%BE%E7%BD%AE\" >H.264\u7684profile\u4e0elevel\u8bbe\u7f6e<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-51\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%8E%A7%E5%88%B6%E5%9C%BA%E6%99%AF%E5%88%87%E6%8D%A2%E5%85%B3%E9%94%AE%E5%B8%A7%E6%8F%92%E5%85%A5%E5%8F%82%E6%95%B0sc_threshold\" >\u63a7\u5236\u573a\u666f\u5207\u6362\u5173\u952e\u5e27\u63d2\u5165\u53c2\u6570sc_threshold<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-52\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E8%AE%BE%E7%BD%AEx264%E5%86%85%E9%83%A8%E5%8F%82%E6%95%B0x264opts\" >\u8bbe\u7f6ex264\u5185\u90e8\u53c2\u6570x264opts<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-53\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#CBR%E6%81%92%E5%AE%9A%E7%A0%81%E7%8E%87%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0nal-hrd\" >CBR\u6052\u5b9a\u7801\u7387\u8bbe\u7f6e\u53c2\u6570nal-hrd<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-54\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%A1%AC%E4%BB%B6%E7%BC%96%E8%A7%A3%E7%A0%81\" >\u786c\u4ef6\u7f16\u89e3\u7801<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-55\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#Nvidia_GPU\" >Nvidia GPU<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-56\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#Intel_QSV\" >Intel QSV<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-57\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E4%BA%94%E7%AB%A0_FFmpeg%E6%B5%81%E5%AA%92%E4%BD%93\" >\u7b2c\u4e94\u7ae0 FFmpeg\u6d41\u5a92\u4f53<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-58\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%8F%91%E5%B8%83%E4%B8%8E%E5%BD%95%E5%88%B6rtmp%E6%B5%81\" >\u53d1\u5e03\u4e0e\u5f55\u5236rtmp\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-59\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%BD%95%E5%88%B6rtsp%E6%B5%81\" >\u5f55\u5236rtsp\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-60\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%BD%95%E5%88%B6http%E6%B5%81\" >\u5f55\u5236http\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-61\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%BD%95%E5%88%B6%E5%92%8C%E5%8F%91%E5%B8%83UDPTCP%E6%B5%81\" >\u5f55\u5236\u548c\u53d1\u5e03UDP\/TCP\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-62\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%8E%A8%E5%A4%9A%E8%B7%AF%E6%B5%81\" >\u63a8\u591a\u8def\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-63\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#HDS%E6%B5%81\" >HDS\u6d41<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-64\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#DASH%E6%B5%81\" >DASH\u6d41<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-65\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E5%85%AD%E7%AB%A0_FFmpeg%E6%BB%A4%E9%95%9C%E4%BD%BF%E7%94%A8\" >\u7b2c\u516d\u7ae0 FFmpeg\u6ee4\u955c\u4f7f\u7528<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-66\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#filter%E7%9A%84%E8%AF%AD%E6%B3%95\" >filter\u7684\u8bed\u6cd5<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-67\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E4%B8%BA%E8%A7%86%E9%A2%91%E6%B7%BB%E5%8A%A0%E6%B0%B4%E5%8D%B0\" >\u4e3a\u89c6\u9891\u6dfb\u52a0\u6c34\u5370<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-68\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%94%BB%E4%B8%AD%E7%94%BB\" >\u753b\u4e2d\u753b<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-69\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%A4%9A%E5%AE%AB%E6%A0%BC\" >\u591a\u5bab\u683c<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-70\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E9%9F%B3%E9%A2%91%E6%B5%81%E6%BB%A4%E9%95%9C%E6%93%8D%E4%BD%9C\" >\u97f3\u9891\u6d41\u6ee4\u955c\u64cd\u4f5c<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-71\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E9%9F%B3%E9%A2%91%E9%9F%B3%E9%87%8F%E6%8E%A2%E6%B5%8B\" >\u97f3\u9891\u97f3\u91cf\u63a2\u6d4b<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-72\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E4%B8%BA%E8%A7%86%E9%A2%91%E5%8A%A0%E5%AD%97%E5%B9%95\" >\u4e3a\u89c6\u9891\u52a0\u5b57\u5e55<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-73\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E6%89%A3%E5%9B%BE%E5%90%88%E5%B9%B6\" >\u6263\u56fe\u5408\u5e76<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-74\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#3D%E8%A7%86%E9%A2%91%E5%A4%84%E7%90%86\" >3D\u89c6\u9891\u5904\u7406<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-75\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%AE%9A%E6%97%B6%E8%A7%86%E9%A2%91%E6%88%AA%E5%9B%BE\" >\u5b9a\u65f6\u89c6\u9891\u622a\u56fe<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-76\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%94%9F%E6%88%90%E6%B5%8B%E8%AF%95%E5%85%83%E6%95%B0%E6%8D%AE\" >\u751f\u6210\u6d4b\u8bd5\u5143\u6570\u636e<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-77\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E5%80%8D%E9%80%9F%E5%A4%84%E7%90%86\" >\u500d\u901f\u5904\u7406<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-78\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#%E7%AC%AC%E4%B8%83%E7%AB%A0_FFmpeg%E9%87%87%E9%9B%86%E8%AE%BE%E5%A4%87\" >\u7b2c\u4e03\u7ae0 FFmpeg\u91c7\u96c6\u8bbe\u5907<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-79\" href=\"https:\/\/blog.cauchyschwarz.com\/?p=135\/#Linux\" >Linux<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E4%B8%80%E7%AB%A0-ffmpeg%E7%AE%80%E4%BB%8B\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E4%B8%80%E7%AB%A0_FFmpeg%E7%AE%80%E4%BB%8B\"><\/span>\u7b2c\u4e00\u7ae0 FFmpeg\u7b80\u4ecb<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffmpege%E7%9A%84%E5%AE%9A%E4%B9%89\"><span class=\"ez-toc-section\" id=\"FFmpege%E7%9A%84%E5%AE%9A%E4%B9%89\"><\/span>FFmpege\u7684\u5b9a\u4e49<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>FF<\/strong>\uff1aFast Forward\u3002<br><strong>mpeg<\/strong>\uff1aMoving Picture Experts Group\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffmpeg%E7%9A%84%E5%8E%86%E5%8F%B2\"><span class=\"ez-toc-section\" id=\"FFmpeg%E7%9A%84%E5%8E%86%E5%8F%B2\"><\/span>FFmpeg\u7684\u5386\u53f2<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u521b\u59cb\u4eba\uff1aFabrice Bellard\u3002<br>\u8d1f\u8d23\u4eba\uff1aMichael Niedermayer\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffmpeg%E7%9A%84%E6%9E%84%E6%88%90\"><span class=\"ez-toc-section\" id=\"FFmpeg%E7%9A%84%E6%9E%84%E6%88%90\"><\/span>FFmpeg\u7684\u6784\u6210<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u5c01\u88c5\u6a21\u5757AVFormat<br>\u53ea\u8981\u652f\u6301MP4,FLV,KV,TS\u7b49\u6587\u4ef6\u5c01\u88c5\u683c\u5f0f\uff1bRTMP,RTSP,NMS,HLS\u7b49\u7f51\u7edc\u534f\u8bae\u5c01\u88c5\u683c\u5f0f\u3002<\/li><li>\u7f16\u89e3\u7801\u6a21\u5757AVCodec<br>\u81ea\u5e26\u7684\u5a92\u4f53\u7f16\u89e3\u7801\u683c\u5f0f\uff1aMPEG4,AAC,MJPEG\uff1b<br>\u7b2c\u4e09\u65b9\u7684\uff1a\u4f7f\u7528X264\u7f16\u7801\u5668\u652f\u6301H.264(AVC)\uff1b\u4f7f\u7528X265\u7f16\u7801\u5668\u652f\u6301H.265(HEVC)\uff1b\u4f7f\u7528libmp3lame\u652f\u6301MP3(mp3lame)\u7f16\u7801\uff1b<\/li><li>\u6ee4\u955c\u6a21\u5757(AVFilter)<br>AVFilter\u63d0\u4f9b\u4e86\u4e00\u4e2a\u901a\u7528\u7684\u97f3\u9891\u3001\u89c6\u9891\u3001\u5b57\u5e55\u7b49\u6ee4\u955c\u5904\u7406\u6846\u67b6\u3002<\/li><li>\u89c6\u9891\u56fe\u50cf\u8f6c\u6362\u8ba1\u7b97\u6a21\u5757swscale<\/li><li>\u97f3\u9891\u8f6c\u6362\u8ba1\u7b97\u6a21\u5757swsample<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffmpeg%E7%9A%84%E5%9F%BA%E7%A1%80%E5%91%BD%E4%BB%A4\"><span class=\"ez-toc-section\" id=\"FFmpeg%E7%9A%84%E5%9F%BA%E7%A1%80%E5%91%BD%E4%BB%A4\"><\/span>FFmpeg\u7684\u57fa\u7840\u547d\u4ee4<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E8%BD%AC%E6%A0%BC%E5%BC%8F\"><span class=\"ez-toc-section\" id=\"%E8%BD%AC%E6%A0%BC%E5%BC%8F\"><\/span>\u8f6c\u683c\u5f0f<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input.mp4 output.avi\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u9762\u6ca1\u6709\u660e\u786e\u6307\u5b9a\u8f93\u51fa\u6587\u4ef6\u7684\u5bb9\u5668\u683c\u5f0f\uff0c\u5982\u679c\u8981\u660e\u786e\u6307\u5b9a\uff0c\u9700\u8981\u7528<code>-f<\/code>\u53c2\u6570\u6307\u5b9a\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input.mp4 -f avi output.dat\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728ffmpeg\u7684\u8fd0\u884c\u8f93\u51fa\u4fe1\u606f\u4e2d\u7684<code>Input #0<\/code>\u548c<code>Output #0<\/code>\u53ef\u4ee5\u5206\u522b\u770b\u5230\u8f93\u5165\u548c\u8f93\u51fa\u7684\u683c\u5f0f\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u6bd4\u5982<code>ffmpeg -i 2020-09-05-171930.webm 2020-09-05-171930.avi<\/code>\u7684\u8f93\u51fa\u4fe1\u606f\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg version 4.1.3-0ppa1~18.04 Copyright (c) 2000-2019 the FFmpeg developers\n  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)\n  configuration: --prefix=\/usr --extra-version='0ppa1~18.04' --toolchain=hardened --libdir=\/usr\/lib\/x86_64-linux-gnu --incdir=\/usr\/include\/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-nonfree --enable-libfdk-aac --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared\n  libavutil      56. 22.100 \/ 56. 22.100\n  libavcodec     58. 35.100 \/ 58. 35.100\n  libavformat    58. 20.100 \/ 58. 20.100\n  libavdevice    58.  5.100 \/ 58.  5.100\n  libavfilter     7. 40.101 \/  7. 40.101\n  libavresample   4.  0.  0 \/  4.  0.  0\n  libswscale      5.  3.100 \/  5.  3.100\n  libswresample   3.  3.100 \/  3.  3.100\n  libpostproc    55.  3.100 \/ 55.  3.100\nInput #0, matroska,webm, from '2020-09-05-171930.webm':\n  Metadata:\n    encoder         : GStreamer matroskamux version 1.14.5\n    creation_time   : 2020-09-05T09:19:30.000000Z\n  Duration: 00:00:11.20, start: 0.000000, bitrate: 1145 kb\/s\n    Stream #0:0(eng): Video: vp8, yuv420p(progressive), 640x480, SAR 1:1 DAR 4:3, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)\n    Metadata:\n      title           : Video\n    Stream #0:1(eng): Audio: vorbis, 44100 Hz, mono, fltp (default)\n    Metadata:\n      title           : Audio\nStream mapping:\n  Stream #0:0 -&gt; #0:0 (vp8 (native) -&gt; mpeg4 (native))\n  Stream #0:1 -&gt; #0:1 (vorbis (native) -&gt; mp3 (libmp3lame))\nPress [q] to stop, [?] for help\nOutput #0, avi, to '2020-09-05-171930.avi':\n  Metadata:\n    ISFT            : Lavf58.20.100\n    Stream #0:0(eng): Video: mpeg4 (FMP4 \/ 0x34504D46), yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 200 kb\/s, 30 fps, 30 tbn, 30 tbc (default)\n    Metadata:\n      title           : Video\n      encoder         : Lavc58.35.100 mpeg4\n    Side data:\n      cpb: bitrate max\/min\/avg: 0\/0\/200000 buffer size: 0 vbv_delay: -1\n    Stream #0:1(eng): Audio: mp3 (libmp3lame) (U[0][0][0] \/ 0x0055), 44100 Hz, mono, fltp (default)\n    Metadata:\n      title           : Audio\n      encoder         : Lavc58.35.100 libmp3lame\nframe=  335 fps=0.0 q=12.6 Lsize=     527kB time=00:00:11.20 bitrate= 385.7kbits\/s speed=26.7x    \nvideo:412kB audio:87kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5.661337%\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">ffmpeg\u7684\u4e3b\u8981\u5de5\u4f5c\u6d41\u7a0b\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>\u89e3\u5c01\u88c5(Demuxing)<\/li><li>\u89e3\u7801(Decoding)<\/li><li>\u7f16\u7801(Encoding)<\/li><li>\u5c01\u88c5(Muxing)<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c01\u88c5\u89e3\u5c01\u88c5\u7528libavformat\uff0c\u7f16\u89e3\u7801\u7528libavcodec\uff0c\u800c\u4e2d\u95f4\u89e3\u7801\u4e4b\u540e\u7684\u6570\u636e\u4e3aYUV\u6216PCM\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"88\" height=\"481\" src=\"https:\/\/blog.cauchyschwarz.com\/wp-content\/uploads\/2021\/06\/ffmpeg_workflow.png\" alt=\"\" class=\"wp-image-139\" srcset=\"https:\/\/blog.cauchyschwarz.com\/wp-content\/uploads\/2021\/06\/ffmpeg_workflow.png 88w, https:\/\/blog.cauchyschwarz.com\/wp-content\/uploads\/2021\/06\/ffmpeg_workflow-55x300.png 55w\" sizes=\"auto, (max-width: 88px) 100vw, 88px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%92%AD%E6%94%BE%E6%96%87%E4%BB%B6\"><span class=\"ez-toc-section\" id=\"%E6%92%AD%E6%94%BE%E6%96%87%E4%BB%B6\"><\/span>\u64ad\u653e\u6587\u4ef6<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffplay 2020-09-05-171930.avi\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E5%A4%9A%E5%AA%92%E4%BD%93%E5%88%86%E6%9E%90%E5%99%A8ffprobe\"><span class=\"ez-toc-section\" id=\"%E5%A4%9A%E5%AA%92%E4%BD%93%E5%88%86%E6%9E%90%E5%99%A8ffprobe\"><\/span>\u591a\u5a92\u4f53\u5206\u6790\u5668ffprobe<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f7f\u7528ffprobe\u53ef\u4ee5\u83b7\u53d6\u5a92\u4f53\u6587\u4ef6\u6216\u8005\u5a92\u4f53\u6d41\u7684\u7f16\u7801\u683c\u5f0f\u3001\u7801\u7387\u7b49\u4fe1\u606f\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe 2020-09-05-171930.mp4\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E7%9A%84%E7%BC%96%E8%AF%91\"><span class=\"ez-toc-section\" id=\"ffmpeg%E7%9A%84%E7%BC%96%E8%AF%91\"><\/span>ffmpeg\u7684\u7f16\u8bd1<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E4%BA%8C%E7%AB%A0-ffmpeg%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8%E5%9F%BA%E7%A1%80\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E4%BA%8C%E7%AB%A0_FFmpeg%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8%E5%9F%BA%E7%A1%80\"><\/span>\u7b2c\u4e8c\u7ae0 FFmpeg\u5de5\u5177\u4f7f\u7528\u57fa\u7840<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffmpeg-%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\"><span class=\"ez-toc-section\" id=\"ffmpeg_%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\"><\/span>ffmpeg \u5e38\u7528\u547d\u4ee4<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">ffmpeg\u53c2\u6570\u5927\u6982\u53ef\u4ee5\u5206\u4e3a6\u79cd\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>ffmpeg\u4fe1\u606f\u67e5\u8be2<\/li><li>ffmpeg\u516c\u5171\u64cd\u4f5c<\/li><li>\u6587\u4ef6\u64cd\u4f5c<\/li><li>\u89c6\u9891\u64cd\u4f5c<\/li><li>\u97f3\u9891\u64cd\u4f5c<\/li><li>\u5b57\u5e55\u64cd\u4f5c<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E4%BF%A1%E6%81%AF%E6%9F%A5%E8%AF%A2\"><span class=\"ez-toc-section\" id=\"%E4%BF%A1%E6%81%AF%E6%9F%A5%E8%AF%A2\"><\/span>\u4fe1\u606f\u67e5\u8be2<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li>\u83b7\u53d6\u5e2e\u52a9\u4fe1\u606f<br><code>ffmpeg --help<\/code><br><code>ffmpeg --help long<\/code><br><code>ffmpeg --help full<\/code><br>\u8fd9\u4e09\u4e2a\u547d\u4ee4\u53ef\u4ee5\u63d0\u4f9b\u4e09\u4e2a\u4e0d\u540c\u7ea7\u522b\u7684\u5e2e\u52a9\u4fe1\u606f\u3002<\/li><li>\u83b7\u53d6license\u652f\u6301\u4fe1\u606f<br><code>ffmpeg -L<\/code><\/li><li>\u83b7\u53d6\u683c\u5f0f\u652f\u6301\u4fe1\u606f<br><code>ffmpeg -formats<\/code><br>ffmpeg\u4f1a\u8be6\u7ec6\u5217\u51fa\u5bf9\u6bcf\u79cd\u683c\u5f0f\u7684mux,demux\u652f\u6301\u3002<\/li><li>\u83b7\u53d6\u7f16\u89e3\u7801\u5668\u652f\u6301\u4fe1\u606f<br><code>ffmpeg -codecs<\/code>\u67e5\u770b\u7f16\u89e3\u7801\u5668\u4fe1\u606f<br><code>ffmpeg --encoders<\/code>\u53ea\u770b\u7f16\u7801\u5668\u4fe1\u606f<br><code>ffmpeg --decoders<\/code>\u53ea\u770b\u89e3\u7801\u5668\u4fe1\u606f<\/li><li>\u83b7\u53d6\u6ee4\u955c\u652f\u6301\u4fe1\u606f<br><code>ffmpeg -filters<\/code><\/li><li>\u67e5\u770b\u5177\u4f53\u7684\u67d0\u4e00\u79cdmuxer\/demuxer\/encoder\/decoder\/filter\u652f\u6301\u4fe1\u606f<br><code>ffmpeg -h muxer=flv<\/code><br><code>ffmpeg -h demuxer=flv<\/code><br><code>ffmpeg -h encoder=h264<\/code><br><code>ffmpeg -h decoder=h264<\/code><br><code>ffmpeg -h filter=colorkey<\/code><\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%A0%BC%E5%BC%8F%E5%B0%81%E8%A3%85%E8%BD%AC%E6%8D%A2%E5%8F%82%E6%95%B0\"><span class=\"ez-toc-section\" id=\"%E6%A0%BC%E5%BC%8F%E5%B0%81%E8%A3%85%E8%BD%AC%E6%8D%A2%E5%8F%82%E6%95%B0\"><\/span>\u683c\u5f0f\u5c01\u88c5\u8f6c\u6362\u53c2\u6570<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>avioflags<\/td><td>\u6807\u8bb0<\/td><td>format\u7684\u7f13\u51b2\u8bbe\u7f6e\uff0c\u9ed8\u8ba4\u4e3a0,\u5c31\u662f\u6709\u7f13\u51b2<\/td><\/tr><tr><td>avioflags<\/td><td>direct<\/td><td>\u65e0\u7f13\u51b2\u72b6\u6001<\/td><\/tr><tr><td>probesize<\/td><td>\u6574\u6570<\/td><td>\u5728\u8fdb\u884c\u5a92\u4f53\u6570\u636e\u5904\u7406\u524d\u83b7\u5f97\u6587\u4ef6\u5185\u5bb9\u7684\u5927\u5c0f\uff0c\u53ef\u7528\u5728\u9884\u8bfb\u53d6\u6587\u4ef6\u5934\u65f6\u63d0\u9ad8\u901f\u5ea6\uff0c\u4e5f\u53ef\u4ee5\u8bbe\u7f6e\u8db3\u591f\u5927\u7684\u503c\u6765\u8bfb\u53d6\u5230\u8db3\u591f\u591a\u7684\u97f3\u89c6\u9891\u6570\u636e\u4fe1\u606f<\/td><\/tr><tr><td>fflags<\/td><td>\u6807\u8bb0<\/td><td><\/td><\/tr><tr><td>fflags<\/td><td>flush_packets<\/td><td>\u7acb\u5373\u5c06packets\u6570\u636e\u5237\u65b0\u5199\u5165\u5230\u6587\u4ef6\u4e2d<\/td><\/tr><tr><td>fflags<\/td><td>genpts<\/td><td>\u8f93\u51fa\u65f6\u6309\u7167\u6b63\u5e38\u89c4\u5219\u4ea7\u751fpts<\/td><\/tr><tr><td>fflags<\/td><td>nofillin<\/td><td>\u4e0d\u586b\u5199\u53ef\u4ee5\u7cbe\u786e\u8ba1\u7b97\u7f3a\u5931\u7684\u503c<\/td><\/tr><tr><td>fflags<\/td><td>igndts<\/td><td>\u5ffd\u7565dts<\/td><\/tr><tr><td>fflags<\/td><td>discardcorrupt<\/td><td>\u4e22\u5f03\u635f\u574f\u7684\u5e27<\/td><\/tr><tr><td>fflags<\/td><td>sortdts<\/td><td>\u5c1d\u8bd5\u4ee5dts\u7684\u987a\u5e8f\u4e3a\u6807\u51c6\u8f93\u51fa<\/td><\/tr><tr><td>fflags<\/td><td>keepside<\/td><td>\u4e0d\u5408\u5e76\u6570\u636e<\/td><\/tr><tr><td>fflags<\/td><td>fastseek<\/td><td>\u5feb\u901fseek(\u5b9a\u4f4d)\u64cd\u4f5c\uff0c\u4f46\u662f\u4e0d\u591f\u7cbe\u786e<\/td><\/tr><tr><td>fflags<\/td><td>latm<\/td><td>\u8bbe\u7f6eRTP MP4_LATM\u751f\u6548<\/td><\/tr><tr><td>fflags<\/td><td>nobuffer<\/td><td>\u76f4\u63a5\u8bfb\u53d6\u6216\u5199\u51fa\uff0c\u4e0d\u5b58\u5165buffer\uff0c\u7528\u4e8e\u5728\u76f4\u64ad\u91c7\u96c6\u65f6\u964d\u4f4e\u5ef6\u8fdf<\/td><\/tr><tr><td>fflags<\/td><td>bitexact<\/td><td>\u4e0d\u5199\u5165\u968f\u673a\u6216\u8005\u4e0d\u7a33\u5b9a\u7684\u6570\u636e<\/td><\/tr><tr><td>seek2any<\/td><td>\u6574\u6570<\/td><td>\u652f\u6301\u968f\u610f\u4f4d\u7f6eseek\uff0c\u8fd9\u4e2aseek\u4e0d\u4ee5keyframe\u4e3a\u53c2\u8003<\/td><\/tr><tr><td>analyzeduration<\/td><td>\u6574\u6570<\/td><td>\u6307\u5b9a\u89e3\u6790\u5a92\u4f53\u6240\u9700\u8981\u82b1\u9500\u7684\u65f6\u95f4\uff0c\u8fd9\u91cc\u8bbe\u7f6e\u7684\u503c\u8d8a\u9ad8\uff0c\u89e3\u6790\u8d8a\u51c6\u786e\uff0c\u5982\u679c\u5728\u76f4\u64ad\u4e2d\u4e3a\u4e86\u964d\u4f4e\u5ef6\u8fdf\uff0c\u8fd9\u4e2a\u503c\u53ef\u4ee5\u8bbe\u7f6e\u5f97\u4f4e\u4e00\u4e9b<\/td><\/tr><tr><td>codec_whitelist<\/td><td>\u5217\u8868<\/td><td>\u8bbe\u7f6e\u53ef\u4ee5\u89e3\u6790\u7684codec\u7684\u767d\u540d\u5355<\/td><\/tr><tr><td>format_whitelist<\/td><td>\u5217\u8868<\/td><td>\u8bbe\u7f6e\u53ef\u4ee5\u89e3\u6790\u7684format\u7684\u767d\u540d\u5355<\/td><\/tr><tr><td>output_ts_offset<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u8f93\u51fa\u6587\u4ef6\u7684\u8d77\u59cb\u65f6\u95f4<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E8%BD%AC%E7%A0%81%E5%8F%82%E6%95%B0\"><span class=\"ez-toc-section\" id=\"%E8%BD%AC%E7%A0%81%E5%8F%82%E6%95%B0\"><\/span>\u8f6c\u7801\u53c2\u6570<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>b<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u9891\u4e0e\u89c6\u9891\u7801\u7387\uff0c\u53ef\u4ee5\u8ba4\u4e3a\u662f\u97f3\u89c6\u9891\u52a0\u8d77\u6765\u7684\u7801\u7387\uff0c\u9ed8\u8ba4\u4e3a200kbit\/s \u4f7f\u7528\u8fd9\u4e2a\u53c2\u6570\u53ef\u4ee5\u6839\u636eb:v\u8bbe\u7f6e\u89c6\u9891\u7801\u7387\uff0cb:a\u8bbe\u7f6e\u97f3\u9891\u7801\u7387<\/td><\/tr><tr><td>ab<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u9891\u7684\u7801\u7387\uff0c\u9ed8\u8ba4\u662f128kbit\/s<\/td><\/tr><tr><td>g<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u89c6\u9891GOP(\u53ef\u4ee5\u7406\u89e3\u4e3a\u5173\u952e\u5e27\u95f4\u9694)\u5927\u5c0f\uff0c\u9ed8\u8ba4\u662f12\u5e27\u4e00\u4e2aGOP<\/td><\/tr><tr><td>ar<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u9891\u91c7\u6837\u7387\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>ac<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u9891\u901a\u9053\u6570\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>bf<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u8fde\u7eed\u7f16\u7801\u4e3aB\u5e27\u7684\u4e2a\u6570\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>maxrate<\/td><td>\u6574\u6570<\/td><td>\u6700\u5927\u7801\u7387\u8bbe\u7f6e\uff0c\u4e0ebufsize\u4e00\u540c\u4f7f\u7528\u5373\u53ef\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>minrate<\/td><td>\u6574\u6570<\/td><td>\u6700\u5c0f\u7801\u7387\u8bbe\u7f6e\uff0c\u914d\u5408maxrate\u4e0ebufsize\u53ef\u4ee5\u8bbe\u7f6e\u4e3aCBR\u6a21\u5f0f\uff0c\u5e73\u65f6\u5f88\u5c11\u4f7f\u7528\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>bufsize<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u63a7\u5236\u7801\u7387\u7684buffer\u7684\u5927\u5c0f\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>keyint_min<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u5173\u952e\u5e27\u6700\u5c0f\u95f4\u9694\uff0c\u9ed8\u8ba4\u4e3a25<\/td><\/tr><tr><td>sc_threshold<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u573a\u666f\u5207\u6362\u652f\u6301\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>mc_threshold<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u8fd0\u52a8\u4f30\u8ba1\u9608\u503c\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>mb_threshold<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u5b8f\u5757\u9608\u503c\uff0c\u9ed8\u8ba4\u4e3a0<\/td><\/tr><tr><td>profile<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u89c6\u9891\u7684profile\uff0c\u9ed8\u8ba4\u4e3a-99<\/td><\/tr><tr><td>level<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u89c6\u9891\u7684level\uff0c\u9ed8\u8ba4\u4e3a-99<\/td><\/tr><tr><td>timecode_frame_start<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6eGOP\u5e27\u7684\u5f00\u59cb\u65f6\u95f4\uff0c\u9700\u8981\u5728non-drop-frame\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f7f\u7528<\/td><\/tr><tr><td>channel_layout<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u97f3\u9891\u901a\u9053\u7684\u5e03\u5c40\u683c\u5f0f<\/td><\/tr><tr><td>threads<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u7f16\u89e3\u7801\u5de5\u4f5c\u7684\u7ebf\u7a0b\u6570<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E8%BD%AC%E7%A0%81%E4%BE%8B%E5%AD%90\"><span class=\"ez-toc-section\" id=\"ffmpeg%E8%BD%AC%E7%A0%81%E4%BE%8B%E5%AD%90\"><\/span>ffmpeg\u8f6c\u7801\u4f8b\u5b50<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i 2020-09-05-171930.webm -vcodec mpeg4 -b:v 400k -r 15 -an  output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8f93\u51fa\u4fe1\u606f\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg version 4.1.3-0ppa1~18.04 Copyright (c) 2000-2019 the FFmpeg developers\n  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)\n  configuration: --prefix=\/usr --extra-version='0ppa1~18.04' --toolchain=hardened --libdir=\/usr\/lib\/x86_64-linux-gnu --incdir=\/usr\/include\/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-nonfree --enable-libfdk-aac --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared\n  libavutil      56. 22.100 \/ 56. 22.100\n  libavcodec     58. 35.100 \/ 58. 35.100\n  libavformat    58. 20.100 \/ 58. 20.100\n  libavdevice    58.  5.100 \/ 58.  5.100\n  libavfilter     7. 40.101 \/  7. 40.101\n  libavresample   4.  0.  0 \/  4.  0.  0\n  libswscale      5.  3.100 \/  5.  3.100\n  libswresample   3.  3.100 \/  3.  3.100\n  libpostproc    55.  3.100 \/ 55.  3.100\nInput #0, matroska,webm, from '2020-09-05-171930.webm':\n  Metadata:\n    encoder         : GStreamer matroskamux version 1.14.5\n    creation_time   : 2020-09-05T09:19:30.000000Z\n  Duration: 00:00:11.20, start: 0.000000, bitrate: 1145 kb\/s\n    Stream #0:0(eng): Video: vp8, yuv420p(progressive), 640x480, SAR 1:1 DAR 4:3, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)\n    Metadata:\n      title           : Video\n    Stream #0:1(eng): Audio: vorbis, 44100 Hz, mono, fltp (default)\n    Metadata:\n      title           : Audio\nFile 'output.mp4' already exists. Overwrite ? [y\/N] y\nStream mapping:\n  Stream #0:0 -&gt; #0:0 (vp8 (native) -&gt; mpeg4 (native))\nPress [q] to stop, [?] for help\nOutput #0, mp4, to 'output.mp4':\n  Metadata:\n    encoder         : Lavf58.20.100\n    Stream #0:0(eng): Video: mpeg4 (mp4v \/ 0x7634706D), yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 400 kb\/s, 15 fps, 15360 tbn, 15 tbc (default)\n    Metadata:\n      title           : Video\n      encoder         : Lavc58.35.100 mpeg4\n    Side data:\n      cpb: bitrate max\/min\/avg: 0\/0\/400000 buffer size: 0 vbv_delay: -1\nframe=  170 fps=0.0 q=2.3 Lsize=     655kB time=00:00:11.26 bitrate= 476.3kbits\/s dup=0 drop=165 speed=54.2x    \nvideo:653kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.244187%\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u89e3\u91ca\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u5c01\u88c5\u683c\u5f0f\u7531webm\u53d8\u4e3amp4<\/li><li>\u89c6\u9891\u7f16\u7801\u4ecevp8\u53d8\u4e3aMPEG4<\/li><li>\u539f\u6765\u6ca1\u6709\u5355\u72ec\u6307\u5b9a\u89c6\u9891\u7684\u7801\u7387\uff1f\u4f46\u662f\u8f93\u51fa\u7684\u89c6\u9891\u7801\u7387\u5b9a\u4e3a\u4e86400kbps<\/li><li>\u89c6\u9891\u5e27\u7387\u4ece30\u53d8\u4e3a\u4e8615<\/li><li>\u8f6c\u7801\u540e\u7684\u6587\u4ef6\u4e0d\u5305\u62ec\u97f3\u9891(<code>-an<\/code>\u53c2\u6570)<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffprobe%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\"><span class=\"ez-toc-section\" id=\"ffprobe%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\"><\/span>ffprobe\u5e38\u7528\u547d\u4ee4<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%9F%A5%E7%9C%8B%E5%A4%9A%E5%AA%92%E4%BD%93%E6%95%B0%E6%8D%AE%E5%8C%85\"><span class=\"ez-toc-section\" id=\"%E6%9F%A5%E7%9C%8B%E5%A4%9A%E5%AA%92%E4%BD%93%E6%95%B0%E6%8D%AE%E5%8C%85\"><\/span>\u67e5\u770b\u591a\u5a92\u4f53\u6570\u636e\u5305<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe -show_packets output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8f93\u51fa\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">[PACKET]\ncodec_type=video\nstream_index=0\npts=116736\npts_time=11.400000\ndts=116736\ndts_time=11.400000\nduration=2048\nduration_time=0.200000\nconvergence_duration=N\/A\nconvergence_duration_time=N\/A\nsize=2800\npos=368776\nflags=__\n[\/PACKET]\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>packet<\/strong>\u5b57\u6bb5\u8bf4\u660e\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u5b57\u6bb5<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>codec_type<\/td><td>\u591a\u5a92\u4f53\u7c7b\u578b\uff0c\u5982\u89c6\u9891\u5305\uff0c\u97f3\u9891\u5305\u7b49<\/td><\/tr><tr><td>stream_index<\/td><td>\u591a\u5a92\u4f53\u7684stream\u7d22\u5f15<\/td><\/tr><tr><td>pts<\/td><td>\u591a\u5a92\u4f53\u7684\u663e\u793a\u65f6\u95f4\u503c<\/td><\/tr><tr><td>pts_time<\/td><td>\u6839\u636e\u4e0d\u540c\u683c\u5f0f\u8ba1\u7b97\u8fc7\u540e\u7684\u591a\u5a92\u4f53\u7684\u663e\u793a\u65f6\u95f4<\/td><\/tr><tr><td>dts<\/td><td>\u591a\u5a92\u4f53\u89e3\u7801\u65f6\u95f4\u503c<\/td><\/tr><tr><td>dts_time<\/td><td>\u6839\u636e\u4e0d\u540c\u683c\u5f0f\u8ba1\u7b97\u8fc7\u540e\u7684\u591a\u5a92\u4f53\u89e3\u7801\u65f6\u95f4<\/td><\/tr><tr><td>duration<\/td><td>\u591a\u5a92\u4f53\u5305\u5360\u7528\u7684\u65f6\u95f4\u503c<\/td><\/tr><tr><td>duration_time<\/td><td>\u6839\u636e\u4e0d\u540c\u683c\u5f0f\u8ba1\u7b97\u8fc7\u540e\u7684\u7684\u591a\u5a92\u4f53\u5305\u6240\u5360\u7528\u7684\u65f6\u95f4<\/td><\/tr><tr><td>size<\/td><td>\u591a\u5a92\u4f53\u5305\u7684\u5927\u5c0f<\/td><\/tr><tr><td>pos<\/td><td>\u591a\u5a92\u4f53\u5305\u6240\u5728\u7684\u6587\u4ef6\u504f\u79fb\u4f4d\u7f6e<\/td><\/tr><tr><td>flags<\/td><td>\u591a\u5a92\u4f53\u5305\u6807\u8bb0\uff0c\u5982\u5173\u952e\u5305\u4e0e\u975e\u5173\u952e\u5305\u7684\u6807\u8bb0<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd8\u53ef\u4ee5\u628a\u539f\u59cb\u6570\u636e\u4e00\u8d77\u5c55\u793a\u51fa\u6765\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe -show_data -show_packets output.mp4\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%9F%A5%E7%9C%8B%E5%B0%81%E8%A3%85%E6%A0%BC%E5%BC%8F\"><span class=\"ez-toc-section\" id=\"%E6%9F%A5%E7%9C%8B%E5%B0%81%E8%A3%85%E6%A0%BC%E5%BC%8F\"><\/span>\u67e5\u770b\u5c01\u88c5\u683c\u5f0f<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe -show_format output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8f93\u51fa\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe version 4.1.3-0ppa1~18.04 Copyright (c) 2007-2019 the FFmpeg developers\n  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)\n  configuration: --prefix=\/usr --extra-version='0ppa1~18.04' --toolchain=hardened --libdir=\/usr\/lib\/x86_64-linux-gnu --incdir=\/usr\/include\/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-nonfree --enable-libfdk-aac --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared\n  libavutil      56. 22.100 \/ 56. 22.100\n  libavcodec     58. 35.100 \/ 58. 35.100\n  libavformat    58. 20.100 \/ 58. 20.100\n  libavdevice    58.  5.100 \/ 58.  5.100\n  libavfilter     7. 40.101 \/  7. 40.101\n  libavresample   4.  0.  0 \/  4.  0.  0\n  libswscale      5.  3.100 \/  5.  3.100\n  libswresample   3.  3.100 \/  3.  3.100\n  libpostproc    55.  3.100 \/ 55.  3.100\nInput #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4':\n  Metadata:\n    major_brand     : isom\n    minor_version   : 512\n    compatible_brands: isomiso2mp41\n    encoder         : Lavf58.20.100\n  Duration: 00:00:11.60, start: 0.000000, bitrate: 257 kb\/s\n    Stream #0:0(eng): Video: mpeg4 (Simple Profile) (mp4v \/ 0x7634706D), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 256 kb\/s, 5 fps, 5 tbr, 10240 tbn, 5 tbc (default)\n    Metadata:\n      handler_name    : VideoHandler\n[FORMAT]\nfilename=output.mp4\nnb_streams=1\nnb_programs=0\nformat_name=mov,mp4,m4a,3gp,3g2,mj2\nformat_long_name=QuickTime \/ MOV\nstart_time=0.000000\nduration=11.600000\nsize=372678\nbit_rate=257019\nprobe_score=100\nTAG:major_brand=isom\nTAG:minor_version=512\nTAG:compatible_brands=isomiso2mp41\nTAG:encoder=Lavf58.20.100\n[\/FORMAT]\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>format\u5b57\u6bb5\u8bf4\u660e<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u5b57\u6bb5<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>filename<\/td><td>\u6587\u4ef6\u540d<\/td><\/tr><tr><td>nb_streams<\/td><td>\u5a92\u4f53\u4e2d\u5305\u542b\u7684\u6d41\u7684\u4e2a\u6570<\/td><\/tr><tr><td>nb_programs<\/td><td>\u8282\u76ee\u6570<\/td><\/tr><tr><td>format_name<\/td><td>\u4f7f\u7528\u7684\u5c01\u88c5\u6a21\u5757\u7684\u540d\u79f0<\/td><\/tr><tr><td>format_long_name<\/td><td>\u5c01\u88c5\u7684\u5b8c\u6574\u540d\u79f0<\/td><\/tr><tr><td>start_time<\/td><td>\u5a92\u4f53\u6587\u4ef6\u7684\u8d77\u59cb\u65f6\u95f4<\/td><\/tr><tr><td>duration<\/td><td>\u5a92\u4f53\u6587\u4ef6\u7684\u603b\u65f6\u95f4\u957f\u5ea6<\/td><\/tr><tr><td>size<\/td><td>\u5a92\u4f53\u6587\u4ef6\u7684\u5927\u5c0f<\/td><\/tr><tr><td>bit_rate<\/td><td>\u5a92\u4f53\u6587\u4ef6\u7684\u7801\u7387<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffprobe%E6%9F%A5%E7%9C%8B%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E5%B8%A7%E4%BF%A1%E6%81%AF\"><span class=\"ez-toc-section\" id=\"ffprobe%E6%9F%A5%E7%9C%8B%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E5%B8%A7%E4%BF%A1%E6%81%AF\"><\/span>ffprobe\u67e5\u770b\u89c6\u9891\u6587\u4ef6\u4e2d\u7684\u5e27\u4fe1\u606f<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe -show_frames output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u793a\u4f8b\u8f93\u51fa\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">[FRAME]\nmedia_type=video\nstream_index=0\nkey_frame=1\npkt_pts=0\npkt_pts_time=0.000000\npkt_dts=0\npkt_dts_time=0.000000\nbest_effort_timestamp=0\nbest_effort_timestamp_time=0.000000\npkt_duration=2048\npkt_duration_time=0.200000\npkt_pos=44\npkt_size=8378\nwidth=640\nheight=480\npix_fmt=yuv420p\nsample_aspect_ratio=1:1\npict_type=I\ncoded_picture_number=0\ndisplay_picture_number=0\ninterlaced_frame=0\ntop_field_first=0\nrepeat_pict=0\ncolor_range=unknown\ncolor_space=unknown\ncolor_primaries=unknown\ncolor_transfer=unknown\nchroma_location=left\n[SIDE_DATA]\nside_data_type=QP table data\n[\/SIDE_DATA]\n[SIDE_DATA]\nside_data_type=QP table properties\n[\/SIDE_DATA]\n[\/FRAME]\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>frame\u5b57\u6bb5\u8bf4\u660e<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u5c5e\u6027<\/th><th>\u8bf4\u660e<\/th><th>\u503c<\/th><\/tr><\/thead><tbody><tr><td>media_type<\/td><td>\u5e27\u7684\u7c7b\u578b(\u89c6\u9891\u3001\u97f3\u9891\u3001\u5b57\u5e55\u7b49)<\/td><td>video<\/td><\/tr><tr><td>stream_index<\/td><td>\u5e27\u6240\u5728\u7684\u7d22\u5f15\u533a\u57df<\/td><td>0<\/td><\/tr><tr><td>key_frame<\/td><td>\u662f\u5426\u4e3a\u5173\u952e\u5e27<\/td><td>1<\/td><\/tr><tr><td>pkt_pts<\/td><td>Frame\u5305\u7684pts<\/td><td>0<\/td><\/tr><tr><td>pkt_pts_time<\/td><td>Frame\u5305\u7684pts\u7684\u65f6\u95f4\u663e\u793a<\/td><td>0.000000<\/td><\/tr><tr><td>pkt_dts<\/td><td>Frame\u5305\u7684dts<\/td><td>0<\/td><\/tr><tr><td>pkt_dts_time<\/td><td>Frame\u5305\u7684dts\u7684\u65f6\u95f4\u663e\u793a<\/td><td>0.000000<\/td><\/tr><tr><td>pkt_duration<\/td><td>Frame\u5305\u7684\u65f6\u957f<\/td><td>2048<\/td><\/tr><tr><td>pkt_duration_time<\/td><td>Frame\u5305\u7684\u65f6\u957f\u65f6\u95f4\u663e\u793a<\/td><td>0.200000<\/td><\/tr><tr><td>pkt_pos<\/td><td>Frame\u5305\u6240\u5728\u6587\u4ef6\u7684\u504f\u79fb\u4f4d\u7f6e<\/td><td>44<\/td><\/tr><tr><td>width<\/td><td>\u5e27\u663e\u793a\u7684\u5bbd\u5ea6<\/td><td>680<\/td><\/tr><tr><td>height<\/td><td>\u5e27\u663e\u793a\u7684\u9ad8\u5ea6<\/td><td>480<\/td><\/tr><tr><td>pix_fmt<\/td><td>\u5e27\u7684\u56fe\u50cf\u8272\u5f69\u683c\u5f0f<\/td><td>yuv420p<\/td><\/tr><tr><td>pict_type<\/td><td>\u5e27\u7c7b\u578b<\/td><td>I<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffprobe%E6%9F%A5%E7%9C%8B%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E6%B5%81%E4%BF%A1%E6%81%AF\"><span class=\"ez-toc-section\" id=\"ffprobe%E6%9F%A5%E7%9C%8B%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E6%B5%81%E4%BF%A1%E6%81%AF\"><\/span>ffprobe\u67e5\u770b\u89c6\u9891\u6587\u4ef6\u4e2d\u7684\u6d41\u4fe1\u606f<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -show_streams output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u793a\u4f8b\u8f93\u51fa\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">[STREAM]\nindex=0\ncodec_name=mpeg4\ncodec_long_name=MPEG-4 part 2\nprofile=Simple Profile\ncodec_type=video\ncodec_time_base=1\/5\ncodec_tag_string=mp4v\ncodec_tag=0x7634706d\nwidth=640\nheight=480\ncoded_width=640\ncoded_height=480\nhas_b_frames=0\nsample_aspect_ratio=1:1\ndisplay_aspect_ratio=4:3\npix_fmt=yuv420p\nlevel=1\ncolor_range=unknown\ncolor_space=unknown\ncolor_transfer=unknown\ncolor_primaries=unknown\nchroma_location=left\nfield_order=unknown\ntimecode=N\/A\nrefs=1\nquarter_sample=false\ndivx_packed=false\nid=N\/A\nr_frame_rate=5\/1\navg_frame_rate=5\/1\ntime_base=1\/10240\nstart_pts=0\nstart_time=0.000000\nduration_ts=118784\nduration=11.600000\nbit_rate=256228\nmax_bit_rate=400000\nbits_per_raw_sample=N\/A\nnb_frames=58\nnb_read_frames=N\/A\nnb_read_packets=N\/A\nDISPOSITION:default=1\nDISPOSITION:dub=0\nDISPOSITION:original=0\nDISPOSITION:comment=0\nDISPOSITION:lyrics=0\nDISPOSITION:karaoke=0\nDISPOSITION:forced=0\nDISPOSITION:hearing_impaired=0\nDISPOSITION:visual_impaired=0\nDISPOSITION:clean_effects=0\nDISPOSITION:attached_pic=0\nDISPOSITION:timed_thumbnails=0\nTAG:language=eng\nTAG:handler_name=VideoHandler\n[\/STREAM]\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>stream\u5b57\u6bb5\u8bf4\u660e<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u5c5e\u6027<\/th><th>\u8bf4\u660e<\/th><th>\u503c<\/th><\/tr><\/thead><tbody><tr><td>index<\/td><td>\u6d41\u6240\u5728\u7684\u7d22\u5f15\u533a\u57df<\/td><td>0<\/td><\/tr><tr><td>codec_name<\/td><td>\u7f16\u7801\u540d<\/td><td>mpeg4<\/td><\/tr><tr><td>codec_long_name<\/td><td>\u7f16\u7801\u5168\u540d<\/td><td>MPEG-4 part 2<\/td><\/tr><tr><td>profile<\/td><td>\u7f16\u7801\u7684profile<\/td><td>Simple Profile<\/td><\/tr><tr><td>level<\/td><td>\u7f16\u7801\u7684level<\/td><td>1<\/td><\/tr><tr><td>has_b_frames<\/td><td>\u5305\u542bb\u5e27\u4fe1\u606f<\/td><td>0<\/td><\/tr><tr><td>codec_type<\/td><td>\u7f16\u7801\u7c7b\u578b<\/td><td>video<\/td><\/tr><tr><td>codec_time_base<\/td><td>\u7f16\u7801\u7684\u65f6\u95f4\u6233\u8ba1\u7b97\u57fa\u7840\u5355\u4f4d<\/td><td>1\/5<\/td><\/tr><tr><td>pix_fmt<\/td><td>\u56fe\u50cf\u663e\u793a\u7684\u8272\u5f69\u683c\u5f0f<\/td><td>yuv420p<\/td><\/tr><tr><td>coded_width<\/td><td>\u56fei\u50cf\u7684\u5bbd\u5ea6<\/td><td>640<\/td><\/tr><tr><td>coded_height<\/td><td>\u56fe\u50cf\u7684\u9ad8\u5ea6<\/td><td>480<\/td><\/tr><tr><td>codec_tag_string<\/td><td>\u7f16\u7801\u7684\u6807\u7b7e\u6570\u636e<\/td><td>mp4v<\/td><\/tr><tr><td>r_frame_rate<\/td><td>\u5b9e\u9645\u5e27\u7387<\/td><td>5\/1<\/td><\/tr><tr><td>avg_frame_rate<\/td><td>\u5e73\u5747\u5e27\u7387<\/td><td>5\/1<\/td><\/tr><tr><td>time_base<\/td><td>\u65f6\u95f4\u57fa\u6570(\u7528\u6765\u8fdb\u884ctimestamp\u8ba1\u7b97)<\/td><td>1\/10240<\/td><\/tr><tr><td>bit_rate<\/td><td>\u7801\u7387<\/td><td>200000<\/td><\/tr><tr><td>max_bit_rate<\/td><td>\u6700\u5927\u7801\u7387<\/td><td>400000<\/td><\/tr><tr><td>nb_frames<\/td><td>\u5e27\u6570<\/td><td>58<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffprobe%E8%AE%BE%E7%BD%AE%E8%BE%93%E5%87%BA%E6%A0%BC%E5%BC%8F\"><span class=\"ez-toc-section\" id=\"ffprobe%E8%AE%BE%E7%BD%AE%E8%BE%93%E5%87%BA%E6%A0%BC%E5%BC%8F\"><\/span>ffprobe\u8bbe\u7f6e\u8f93\u51fa\u683c\u5f0f<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">ffprobe\u53ef\u4ee5\u6362\u5176\u4ed6\u7684\u683c\u5f0f\u8f93\u51fa\u4e0a\u9762\u67e5\u8be2\u7684\u4fe1\u606f\uff0c\u5e76\u4fdd\u5b58\u5230\u76f8\u5e94\u6587\u4ef6\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe -of ini -show_streams output.mp4\nffprobe -of flag -show_streams output.mp4\nffprobe -of xml -show_streams output.mp4\nffprobe -of csv -show_streams output.mp4\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffprobe%E7%AD%9B%E9%80%89stream\"><span class=\"ez-toc-section\" id=\"ffprobe%E7%AD%9B%E9%80%89stream\"><\/span>ffprobe\u7b5b\u9009stream<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u53ea\u770b\u89c6\u9891\u6d41\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffprobe -show_frames -select_streams v -of xml output.mp4\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ffplay%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\"><span class=\"ez-toc-section\" id=\"ffplay%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4\"><\/span>ffplay\u5e38\u7528\u547d\u4ee4<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>ffplay\u57fa\u7840\u53c2\u6570<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>x<\/td><td>\u5f3a\u5236\u8bbe\u7f6e\u89c6\u9891\u663e\u793a\u7a97\u53e3\u7684\u5bbd\u5ea6<\/td><\/tr><tr><td>y<\/td><td>\u5f3a\u5236\u8bbe\u7f6e\u89c6\u9891\u663e\u793a\u7a97\u53e3\u7684\u9ad8\u5ea6<\/td><\/tr><tr><td>s<\/td><td>\u8bbe\u7f6e\u89c6\u9891\u663e\u793a\u7684\u5bbd\u9ad8<\/td><\/tr><tr><td>fs<\/td><td>\u5f3a\u5236\u5168\u5c4f\u663e\u793a<\/td><\/tr><tr><td>an<\/td><td>\u5c4f\u853d\u97f3\u9891<\/td><\/tr><tr><td>vn<\/td><td>\u5c4f\u853d\u89c6\u9891<\/td><\/tr><tr><td>sn<\/td><td>\u5c4f\u853d\u5b57\u5e55<\/td><\/tr><tr><td>ss<\/td><td>\u6839\u636e\u8bbe\u7f6e\u7684\u79d2\u8fdb\u884c\u5b9a\u4f4d\u62d6\u52a8<\/td><\/tr><tr><td>t<\/td><td>\u8bbe\u7f6e\u64ad\u653e\u89c6\u9891\/\u97f3\u9891\u7684\u957f\u5ea6<\/td><\/tr><tr><td>bytes<\/td><td>\u8bbe\u7f6e\u5b9a\u4f4d\u62d6\u52a8\u7684\u7b56\u7565\uff0c0\u4e3a\u4e0d\u53ef\u62d6\u52a8\uff0c1\u4e3a\u53ef\u62d6\u52a8\uff0c-1\u4e3a\u81ea\u52a8<\/td><\/tr><tr><td>nodisp<\/td><td>\u5173\u95ed\u56fe\u5f62\u5316\u663e\u793a\u7a97\u53e3<\/td><\/tr><tr><td>f<\/td><td>\u5f3a\u5236\u4f7f\u7528\u8bbe\u7f6e\u7684\u683c\u5f0f\u8fdb\u884c\u89e3\u6790<\/td><\/tr><tr><td>window_tile<\/td><td>\u8bbe\u7f6e\u663e\u793a\u7a97\u53e3\u7684\u6807\u9898<\/td><\/tr><tr><td>af<\/td><td>\u8bbe\u7f6e\u97f3\u9891\u7684\u6ee4\u955c<\/td><\/tr><tr><td>codec<\/td><td>\u5f3a\u5236\u4f7f\u7528\u8bbe\u7f6e\u7684codec\u8fdb\u884c\u89e3\u7801<\/td><\/tr><tr><td>autorotate<\/td><td>\u81ea\u52a8\u65cb\u8f6c\u89c6\u9891<\/td><\/tr><tr><td>ast<\/td><td>\u8bbe\u7f6e\u5c06\u8981\u64ad\u653e\u7684\u97f3\u9891\u6d41<\/td><\/tr><tr><td>vst<\/td><td>\u8bbe\u7f6e\u5c06\u8981\u64ad\u653e\u7684\u89c6\u9891\u6d41<\/td><\/tr><tr><td>sst<\/td><td>\u8bbe\u7f6e\u5c06\u8981\u64ad\u653e\u7684\u5b57\u5e55\u6d41<\/td><\/tr><tr><td>stats<\/td><td>\u8f93\u51fa\u591a\u5a92\u4f53\u64ad\u653e\u72b6\u6001<\/td><\/tr><tr><td>fast<\/td><td>\u975e\u6807\u51c6\u5316\u89c4\u8303\u7684\u591a\u5a92\u4f53\u517c\u5bb9\u4f18\u5316<\/td><\/tr><tr><td>sync<\/td><td>\u97f3\u89c6\u9891\u540c\u6b65\u8bbe\u7f6e\u53ef\u6839\u636e\u97f3\u9891\u65f6\u95f4\u3001\u89c6\u9891\u65f6\u95f4\u6216\u8005\u5916\u90e8\u6269\u5c55\u65f6\u95f4\u8fdb\u884c\u53c2\u8003<\/td><\/tr><tr><td>autoexit<\/td><td>\u591a\u5a92\u4f53\u64ad\u653e\u5b8c\u6bd5\u4e4b\u540e\u81ea\u52a8\u9000\u51faffplay\uff0cffplay\u9ed8\u8ba4\u64ad\u653e\u5b8c\u6bd5\u4e4b\u540e\u4e0d\u9000\u51fa\u64ad\u653e\u5668<\/td><\/tr><tr><td>exitonkeydown<\/td><td>\u5f53\u6709\u9f20\u6807\u6309\u4e0b\u4e8b\u4ef6\u4ea7\u751f\u65f6\u9000\u51faffplay<\/td><\/tr><tr><td>exitonmousedown<\/td><td>\u5f53\u6709\u9f20\u6807\u6309\u952e\u4e8b\u4ef6\u4ea7\u751f\u65f6\u9000\u51faffplay<\/td><\/tr><tr><td>loop<\/td><td>\u8bbe\u7f6e\u591a\u5a92\u4f53\u6587\u4ef6\u5faa\u73af\u64ad\u653e\u7684\u6b21\u6570<\/td><\/tr><tr><td>framedrop<\/td><td>\u5f53CPU\u8d44\u6e90\u5360\u7528\u8fc7\u9ad8\u65f6\uff0c\u81ea\u52a8\u4e22\u5e27<\/td><\/tr><tr><td>infbuf<\/td><td>\u8bbe\u7f6e\u65e0\u6781\u9650\u7684\u64ad\u653e\u5668buffer\uff0c\u8fd9\u4e2a\u9009\u9879\u5e38\u89c1\u4e8e\u5b9e\u65f6\u6d41\u5a92\u4f53\u64ad\u653e\u573a\u666f<\/td><\/tr><tr><td>vf<\/td><td>\u89c6\u9891\u6ee4\u955c\u8bbe\u7f6e<\/td><\/tr><tr><td>acodec<\/td><td>\u5f3a\u5236\u4f7f\u7528\u8bbe\u7f6e\u7684\u97f3\u9891\u89e3\u7801\u5668<\/td><\/tr><tr><td>vcodec<\/td><td>\u5f3a\u5236\u4f7f\u7528\u8bbe\u7f6e\u7684\u89c6\u9891\u89e3\u7801\u5668<\/td><\/tr><tr><td>scodec<\/td><td>\u5f3a\u5236\u4f7f\u7528\u8bbe\u7f6e\u7684\u5b57\u5e55\u89e3\u7801\u5668<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>\u4ece\u89c6\u9891\u7684\u7b2c2\u79d2\u5f00\u59cb\u64ad\u653e\uff0c\u653e5\u79d2\u949f<code>ffplay -ss 2 -t 5 ouput.mp4<\/code><\/li><li>\u8bbe\u7f6e\u64ad\u653e\u7a97\u53e3\u7684\u6807\u9898<code>ffplay -window_title \"hello my title\" output.mp4<\/code><\/li><li>\u64ad\u653ertmp\u6d41<code>ffplay rtmp:\/\/xxx <\/code>\u53ef\u4ee5\u914d\u5408nginx\u7684rtmp\u6a21\u5757\u641e\u7740\u73a9\u3002<\/li><li>\u5bf9\u4e8e\u5e7f\u7535\u884c\u4e1a\u7684\u591a\u8282\u76ee\u6d41\uff0c\u9700\u8981\u6307\u5b9a\u97f3\u89c6\u9891\u6d41\u7f16\u53f7<code>ffplay -vst 4 -ast 5 xx.ts<\/code><\/li><li>\u52a0\u8f7d\u5b57\u5e55\u6587\u4ef6<br>\u9700\u8981\u4f7f\u7528\u6ee4\u955c<code>ffplay -vf \"subtitles=input.srt\" output.mp4<\/code><\/li><li>\u663e\u793a\u58f0\u97f3\u6ce2\u5f62<code>ffplay -showmode 1 output.mp3<\/code><\/li><li>\u663e\u793a\u89e3\u7801\u5668\u5982\u89e3\u7801\u6bcf\u4e2a\u5b8f\u5757<br>\u4e0b\u9762\u8fd9\u4e2a\u547d\u4ee4\u5e94\u8be5\u5df2\u7ecf\u8fc7\u65f6\u4e86<code>ffplay -debug vis_mb_type output.mp4 <\/code>\u8c8c\u4f3c\u53ef\u4ee5\u7528(\u6211\u6d4b\u8bd5\u65f6\u4e00\u7247\u7eff\u8272&#8230;.)\uff1a<code>ffplay output.mp4 -vf codecview=qp=true<\/code><\/li><li>\u663e\u793aB\u5e27\u4e0eP\u5e27\u9884\u6d4b\u4fe1\u606f<br>\u8fd9\u4e2a\u547d\u4ee4\u4e5f\u8fc7\u65f6\u4e86\u3002\u3002\u3002<code>ffplay -vismv pf output.mp4 <\/code>\u5e94\u8be5\u4f7f\u7528\uff1a<code>ffplay -flags2 +export_mvs output.mp4 -vf codecview=mv=pf+bf+bb<\/code><\/li><\/ul>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E4%B8%89%E7%AB%A0-ffmpeg%E8%BD%AC%E5%B0%81%E8%A3%85\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E4%B8%89%E7%AB%A0_FFmpeg%E8%BD%AC%E5%B0%81%E8%A3%85\"><\/span>\u7b2c\u4e09\u7ae0 FFmpeg\u8f6c\u5c01\u88c5<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACmp4%E6%A0%BC%E5%BC%8F\"><span class=\"ez-toc-section\" id=\"%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACMP4%E6%A0%BC%E5%BC%8F\"><\/span>\u97f3\u89c6\u9891\u6587\u4ef6\u8f6cMP4\u683c\u5f0f<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">MP4\u683c\u5f0f\u6807\u51c6\uff1aISO-14496 Part12\u3001ISO-14496 Part14<br>MP4\u7684\u51e0\u4e2a\u6982\u5ff5\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>MP4\u6587\u4ef6\u7531\u8bb8\u591a\u4e2aBox\u4e0eFullBox\u7ec4\u6210<\/li><li>\u6bcf\u4e2aBox\u7531Header\u548cData\u7ec4\u6210<\/li><li>FullBox\u662fBox\u7684\u6269\u5c55\uff0c\u5176\u5728Box\u7ed3\u6784\u7684\u57fa\u7840\u4e0a\uff0c\u5728Header\u4e2d\u589e\u52a08\u4f4dversion\u6807\u5fd7\u548c24\u4f4d\u7684flags\u6807\u5fd7<\/li><li>Header\u5305\u542b\u4e86\u6574\u4e2aBox\u7684\u957f\u5ea6\u7684\u5927\u5c0f(size)\u548c\u7c7b\u578b(type)\uff0c\u5f53size\u7b49\u4e8e0\u65f6\uff0c\u4ee3\u8868\u8fd9\u4e2aBox\u662f\u6587\u4ef6\u7684\u6700\u540e\u4e00\u4e2aBox\u3002\u5f53size\u7b49\u4e8e1\u65f6\uff0c\u8bf4\u660eBox\u957f\u5ea6\u9700\u8981\u66f4\u591a\u7684\u4f4d\u6765\u63cf\u8ff0\uff0c\u5728\u540e\u9762\u4f1a\u5b9a\u4e49\u4e00\u4e2a64\u4f4d\u7684largesize\u6765\u63cf\u8ff0Box\u7684\u957f\u5ea6\u3002\u5f53type\u4e3auuid\u65f6\uff0c\u8bf4\u660e\u8fd9\u4e2aBox\u4e2d\u7684\u6570\u636e\u662f\u7528\u6237\u81ea\u5b9a\u4e49\u6269\u5c55\u7c7b\u578b\u3002<\/li><li>Data\u4e3aBox\u7684\u5b9e\u9645\u6570\u636e\uff0c\u53ef\u4ee5\u662f\u7eaf\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u662f\u66f4\u591a\u7684\u5b50Box<\/li><li>\u5f53\u4e00\u4e2aBox\u4e2dData\u662f\u4e00\u7cfb\u5217\u7684\u5b50Box\u65f6\uff0c\u8fd9\u4e2aBox\u53c8\u53ef\u4ee5\u79f0\u4e3aContainer(\u5bb9\u5668)Box<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>MP4\u5e38\u7528\u53c2\u8003\u6807\u51c6\u6392\u5217\u65b9\u5f0f<\/strong>\uff1a<br>(\u8d76\u65f6\u95f4\uff0c\u6682\u65f6\u61d2\u5f97\u6284\u4e86\u3002\u3002\u3002)<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>moov\u5bb9\u5668<\/li><li>mvhd\u5b50\u5bb9\u5668<\/li><li>trak\u5b50\u5bb9\u5668<\/li><li>tkhd\u5bb9\u5668<\/li><li>mdia\u5bb9\u5668<\/li><li>mdhd\u5bb9\u5668<\/li><li>hdlr\u5bb9\u5668<\/li><li>minf\u5bb9\u5668<\/li><li>vmhd\u5bb9\u5668<\/li><li>smhd\u5bb9\u5668<\/li><li>dinf\u5bb9\u5668<\/li><li>stbl\u5bb9\u5668<\/li><li>edts\u5bb9\u5668<\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mp4%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7\"><span class=\"ez-toc-section\" id=\"MP4%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7\"><\/span>MP4\u5206\u6790\u5de5\u5177<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li>Elecard streamEye<br>\u8c8c\u4f3c\u662f\u6b3e\u5546\u4e1a\u4ea7\u54c1\u3002\u3002\u3002<\/li><li>mp4box<code>sudo apt install gpac <\/code>\u53ef\u4ee5\u9488\u5bf9\u5a92\u4f53\u6587\u4ef6\u8fdb\u884c\u5408\u6210\u3001\u5206\u89e3\u7b49\u64cd\u4f5c\u3002<br>\u88c5\u597d\u540e\u547d\u4ee4\u540d\u662f<strong>MP4Box<\/strong>\uff0c\u57fa\u672c\u64cd\u4f5c\uff1a<code>MP4Box -info output.mp4 <\/code>\u793a\u4f8b\u8f93\u51fa\uff1a<code>* Movie Info * Timescale 1000 - Duration 00:00:11.600 1 track(s) Fragmented File: no File Brand isom - version 512 Created: UNKNOWN DATE Modified: UNKNOWN DATE File has no MPEG4 IOD\/OD iTunes Info: Encoder Software: Lavf58.20.100 1 UDTA types: meta (1) Track # 1 Info - TrackID 1 - TimeScale 10240 - Media Duration 00:00:11.600 Track has 1 edit lists: track duration is 00:00:11.600 Media Info: Language \"eng (eng)\" - Type \"vide:mp4v\" - 58 samples 1 UDTA types: name (1) Visual Track layout: x=0 y=0 width=640 height=480 MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x20 MPEG-4 Visual Size 640 x 480 - Simple Profile @ Level 1 Pixel Aspect Ratio 1:1 - Indicated track size 640 x 480 Self-synchronized RFC6381 Codec Parameters: mp4v.20.1 Average GOP length: 11 samples <\/code>\u5176\u4ed6\u7684<a href=\"https:\/\/github.com\/gpac\/gpac\/wiki\/MP4Box\">\u4f7f\u7528\u4f8b\u5b50<\/a>\u3002<\/li><li>mp4info<code>sudo apt install mp4v2-utils <\/code>\u4e3a\u5565\u6211\u88c5\u7684\u8fd9\u4e2amp4info\u547d\u4ee4\u5f88\u5f31\u9e21\u3002\u3002\u3002<br>\u539f\u6765\u4e66\u4e0a\u8bf4\u7684mp4info\u662f\u4e00\u4e2awindows\u4e0b\u7684\u5de5\u5177\uff0clinux\u4e0b\u7684\u5e94\u8be5\u53ef\u4ee5\u7528\u4e0b\u8fd9\u4e2a[MediaParser][<a href=\"https:\/\/github.com\/ksvc\/MediaParser\">https:\/\/github.com\/ksvc\/MediaParser<\/a>]\u3002<\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mp4%E5%9C%A8ffmpeg%E4%B8%AD%E7%9A%84demuxer\"><span class=\"ez-toc-section\" id=\"MP4%E5%9C%A8FFmpeg%E4%B8%AD%E7%9A%84Demuxer\"><\/span>MP4\u5728FFmpeg\u4e2d\u7684Demuxer<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>ffmpeg\u89e3\u5c01\u88c5MP4\u5e38\u7528\u53c2\u6570<\/strong>\uff1a<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mp4%E5%9C%A8ffmpeg%E4%B8%AD%E7%9A%84muxer\"><span class=\"ez-toc-section\" id=\"MP4%E5%9C%A8FFmpeg%E4%B8%AD%E7%9A%84Muxer\"><\/span>MP4\u5728FFmpeg\u4e2d\u7684Muxer<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>ffmpeg\u5c01\u88c5MP4\u5e38\u7528\u53c2\u6570<\/strong>\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>faststart\u53c2\u6570<br>\u6b63\u5e38\u60c5\u51b5\u4e0bffmpeg\u751f\u4ea7moov\u662f\u5728mdat\u5199\u5b8c\u6210\u4e4b\u540e\u518d\u5199\u5165\uff0c\u53ef\u4ee5\u901a\u8fc7\u53c2\u6570\u5c06moov\u5bb9\u5668\u79fb\u52a8\u81f3mdat\u7684\u524d\u9762\uff1a<code>ffmpeg -i input.flv -c copy -f mp4 output.mp4 ffmpeg -i input.flv -c copy -f mp4 -movflags faststart output.mp4 <\/code>\u4e66\u4e2d\u6709\u8bb2\u8fc7\uff0c\u5982\u679c\u662f\u5728\u4e92\u8054\u7f51\u89c6\u9891\u70b9\u64ad\u4e2d\uff0c\u5e0c\u671b\u8fd9\u4e2aMP4\u6587\u4ef6\u88ab\u5feb\u901f\u6253\u5f00\uff0c\u90a3\u4e48\u9700\u8981\u5c06moov\u5b58\u653e\u5728mdat\u7684\u524d\u9762\uff0c\u5426\u5219\u5c31\u53ea\u6709\u5c06MP4\u6587\u4ef6\u4e0b\u8f7d\u5b8c\u624d\u53ef\u4ee5\u8fdb\u884c\u64ad\u653e\u3002<\/li><li>dash\u53c2\u6570\u4f7f\u7528\u6848\u4f8b<code>ffmpeg -i input.flv -c copy -f mp4 -movflags dash output.mp4<\/code><\/li><li>isml\u53c2\u6570\u4f7f\u7528\u6848\u4f8b<br>\u4ece\u6765\u6ca1\u542c\u8bf4\u8fc7\u7684\u4e1c\u897f\u3002\u3002\u3002<\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACflv\"><span class=\"ez-toc-section\" id=\"%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACFLV\"><\/span>\u89c6\u9891\u6587\u4ef6\u8f6cFLV<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">FLV\u662fAdobe\u53d1\u5e03\u7684\u4e00\u79cd\u53ef\u4ee5\u4f5c\u4e3a\u76f4\u64ad\u4e5f\u53ef\u4ee5\u4f5c\u4e3a\u70b9\u64ad\u7684\u5c01\u88c5\u683c\u5f0f\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"flv%E6%A0%BC%E5%BC%8F%E6%A0%87%E5%87%86\"><span class=\"ez-toc-section\" id=\"FLV%E6%A0%BC%E5%BC%8F%E6%A0%87%E5%87%86\"><\/span>FLV\u683c\u5f0f\u6807\u51c6<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">FLV\u6587\u4ef6\u683c\u5f0f\u5206\u4e3a\u4e24\u90e8\u5206\uff0c\u4e00\u90e8\u5206\u4e3aFLV\u6587\u4ef6\u5934\uff0c\u53e6\u4e00\u90e8\u5206\u4e3aFLV\u6587\u4ef6\u5185\u5bb9\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>FLV\u6587\u4ef6\u5934\u683c\u5f0f\u89e3\u6790<\/li><li>FLV\u6587\u4ef6\u5185\u5bb9\u683c\u5f0f\u89e3\u6790<\/li><li>FLVTAG\u683c\u5f0f\u89e3\u6790<\/li><li>VideoTag\u683c\u5f0f\u89e3\u6790<\/li><li>AudioTag\u683c\u5f0f\u89e3\u6790<\/li><li>ScriptData\u683c\u5f0f\u89e3\u6790<\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E8%BD%ACflv%E5%8F%82%E6%95%B0\"><span class=\"ez-toc-section\" id=\"FFmpeg%E8%BD%ACflv%E5%8F%82%E6%95%B0\"><\/span>FFmpeg\u8f6cflv\u53c2\u6570<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>flvflags<\/td><td>flag<\/td><td>\u8bbe\u7f6e\u751f\u6210FLV\u65f6\u4f7f\u7528\u7684flag<\/td><\/tr><tr><td>flvflags<\/td><td>aac_seq_header_detect<\/td><td>\u6dfb\u52a0AAC\u97f3\u9891\u7684Sequence Header<\/td><\/tr><tr><td>flvflags<\/td><td>no_sequence_end<\/td><td>\u751f\u6210FLV\u7ed3\u675f\u65f6\u4e0d\u5199\u5165sequence end<\/td><\/tr><tr><td>flvflags<\/td><td>no_metadata<\/td><td>\u751f\u6210FLV\u65f6\u4e0d\u5199\u5165metadata<\/td><\/tr><tr><td>flvflags<\/td><td>no_duration_filesize<\/td><td>\u7528\u4e8e\u76f4\u64ad\u65f6\u4e0d\u5728metadata\u4e2d\u5199\u5165duration\u4e0efilesize<\/td><\/tr><tr><td>flvflags<\/td><td>add_keyframe_index<\/td><td>\u751f\u6210FLV\u65f6\u81ea\u52a8\u5199\u5165\u5173\u952e\u5e27\u7d22\u5f15\u4fe1\u606f\u5230metadata\u5934<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u751f\u6210FLV\u6587\u4ef6\u65f6\uff0c\u5199\u5165\u89c6\u9891\u3001\u97f3\u9891\u6570\u636e\u5747\u9700\u8981\u5199\u5165Sequence Header\u6570\u636e\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E6%96%87%E4%BB%B6%E8%BD%ACflv\"><span class=\"ez-toc-section\" id=\"FFmpeg%E6%96%87%E4%BB%B6%E8%BD%ACFLV\"><\/span>FFmpeg\u6587\u4ef6\u8f6cFLV<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">FLV\u5c01\u88c5\u4e2d\u53ef\u4ee5\u652f\u6301\u7684\u89c6\u9891\u7f16\u7801\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Sorenson H.263<\/li><li>Screen Video<\/li><li>On2 VP6<\/li><li>\u5e26Alpha\u901a\u9053\u7684On2 VP6<\/li><li>Screen Video 2<\/li><li>H.264(AVC)<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">FLV\u5c01\u88c5\u4e2d\u652f\u6301\u7684\u97f3\u9891\u7f16\u7801\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u7ebf\u6027PCM,\u5927\u5c0f\u7aef\u53d6\u51b3\u4e8e\u5e73\u53f0<\/li><li>ADPCM\u97f3\u9891\u683c\u5f0f<\/li><li>MP3<\/li><li>\u7ebf\u6027PCM,\u5c0f\u7aef<\/li><li>Nellymoser 16kHz Mono<\/li><li>Nellymoser 8kHz Mono<\/li><li>Nellymoser<\/li><li>G.711 A-law<\/li><li>G.711 mu-law<\/li><li>\u4fdd\u7559(WTF?)<\/li><li>AAC<\/li><li>Speex<\/li><li>MP3 8kHz<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u5982\u679c\u5c01\u88c5flv\u65f6\uff0c\u5185\u90e8\u7684\u97f3\u9891\u6216\u8005\u89c6\u9891\u6807\u51c6\u4e0d\u662fFLV\u652f\u6301\u7684\uff0c\u90a3\u4e48\u5c31\u4f1a\u62a5\u9519\uff0c\u9700\u8981\u5148\u8fdb\u884c\u4e13\u95e8\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input_ac3.mp4 -vcodec copy -acodec aac -f flv output.flv\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ece\u4e0a\u9762\u8fd9\u4e2a\u4f8b\u5b50\u53ef\u4ee5\u770b\u51fa\u6307\u5b9a\u8f93\u51fa\u97f3\u9891\u7f16\u7801\u4e3aFLV\u652f\u6301\u7684\u6807\u51c6\u5373\u53ef\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E7%94%9F%E6%88%90%E5%B8%A6%E5%85%B3%E9%94%AE%E7%B4%A2%E5%BC%95%E7%9A%84flv\"><span class=\"ez-toc-section\" id=\"FFmpeg%E7%94%9F%E6%88%90%E5%B8%A6%E5%85%B3%E9%94%AE%E7%B4%A2%E5%BC%95%E7%9A%84FLV\"><\/span>FFmpeg\u751f\u6210\u5e26\u5173\u952e\u7d22\u5f15\u7684FLV<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5bf9\u4e8e\u7f51\u7edc\u70b9\u64ad\u89c6\u9891\uff0c\u53ef\u4ee5\u7528yamdi\u5de5\u5177\u4e3a\u5173\u952e\u5e27\u5efa\u7acb\u7d22\u5f15\u3002\u4e5f\u53ef\u4ee5\u4f7f\u7528FFmpeg\u5b9e\u73b0\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input.mp4 -c copy -f flv -flvflags add_keyframe_index output.flv\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"flv%E6%96%87%E4%BB%B6%E6%A0%BC%E5%BC%8F%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7\"><span class=\"ez-toc-section\" id=\"FLV%E6%96%87%E4%BB%B6%E6%A0%BC%E5%BC%8F%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7\"><\/span>FLV\u6587\u4ef6\u683c\u5f0f\u5206\u6790\u5de5\u5177<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>flvparse<\/li><li>FlvAnalyzer<\/li><li>ffprobe<code>ffprobe -v trace -i output.flv<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACm3u8\"><span class=\"ez-toc-section\" id=\"%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E8%BD%ACM3U8\"><\/span>\u89c6\u9891\u6587\u4ef6\u8f6cM3U8<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"m3u8%E6%A0%BC%E5%BC%8F%E6%A0%87%E5%87%86\"><span class=\"ez-toc-section\" id=\"M3U8%E6%A0%BC%E5%BC%8F%E6%A0%87%E5%87%86\"><\/span>M3U8\u683c\u5f0f\u6807\u51c6<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>EXTM3U<\/li><li>EXT-X-VERSION<\/li><li>EXT-X-TARGETDURATION<\/li><li>EXT-X-MEDIA-SEQUENCE<\/li><li>EXTINF<\/li><li>EXT-X-ENDLIST<\/li><li>EXT-X-STREAM-INF<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E5%B0%81%E8%A3%85hls%E5%8F%82%E6%95%B0\"><span class=\"ez-toc-section\" id=\"FFmpeg%E5%B0%81%E8%A3%85HLS%E5%8F%82%E6%95%B0\"><\/span>FFmpeg\u5c01\u88c5HLS\u53c2\u6570<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>start_number<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6eM3U8\u5217\u8868\u4e2d\u7684\u7b2c\u4e00\u7247\u7684\u5e8f\u5217\u6570<\/td><\/tr><tr><td>hls_time<\/td><td>\u6d6e\u70b9\u6570<\/td><td>\u8bbe\u7f6e\u6bcf\u4e00\u7247\u65f6\u957f<\/td><\/tr><tr><td>hls_list_size<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6eM3U8\u4e2d\u5206\u7247\u7684\u4e2a\u6570<\/td><\/tr><tr><td>hls_ts_options<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eTS\u5207\u7247\u7684\u53c2\u6570<\/td><\/tr><tr><td>hls_wrap<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u5207\u7247\u7d22\u5f15\u56de\u6eda\u7684\u8fb9\u754c\u503c<\/td><\/tr><tr><td>hls_allow_cache<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6eM3U8\u4e2dEXT-X-ALLOW-CACHE\u7684\u6807\u7b7e<\/td><\/tr><tr><td>hls_base_url<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eM378\u4e2d\u6bcf\u4e00\u7247\u7684\u524d\u7f6e\u8def\u5f84<\/td><\/tr><tr><td>hls_segment_filename<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6e\u5207\u7247\u540d\u6a21\u677f<\/td><\/tr><tr><td>hls_key_info_file<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eM3U8\u52a0\u5bc6\u7684key\u6587\u4ef6\u8def\u5f84<\/td><\/tr><tr><td>hls_subtitle_path<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eM3U8\u5b57\u5e55\u8def\u5f84<\/td><\/tr><tr><td>hls_flags<\/td><td>\u6807\u7b7e(\u6574\u6570)<\/td><td>\u8bbe\u7f6eM3U8\u6587\u4ef6\u5217\u8868\u7684\u64cd\u4f5c\uff0c\u5177\u4f53\u5982\u4e0b\uff1a<br>sing_file\uff1a\u751f\u6210\u4e00\u4e2a\u5a92\u4f53\u7d22\u5f15\u4e0e\u5b57\u8282\u8303\u56f4\uff1b<br>delete_segments\uff1a\u5220\u9664M3U8\u6587\u4ef6\u4e2d\u4e0d\u5305\u542b\u7684\u8fc7\u671f\u7684TS\u5207\u7247\u6587\u4ef6\uff1b<br>round_durations\uff1a\u751f\u6210\u7684M3U8\u5207\u7247\u4fe1\u606f\u7684duration\u4e3a\u6574\u6570\uff1b<br>discont_start\uff1a\u751f\u6210M3U8\u7684\u65f6\u5019\u5728\u5217\u8868\u524d\u8fb9\u52a0\u4e0adiscontinuity\u6807\u7b7e\uff1b<br>omit_endlist\uff1a\u5728M3U8\u672b\u5c3e\u4e0d\u8ffd\u52a0endlist\u6807\u7b7e\uff1b<\/td><\/tr><tr><td>use_localtime<\/td><td>\u5e03\u5c14<\/td><td>\u8bbe\u7f6eM3U8\u6587\u4ef6\u5e8f\u53f7\u4e3a\u672c\u5730\u65f6\u95f4\u6233<\/td><\/tr><tr><td>use_localtime_mkdir<\/td><td>\u5e03\u5c14<\/td><td>\u6839\u636e\u672c\u5730\u65f6\u95f4\u6233\u751f\u6210\u76ee\u5f55<\/td><\/tr><tr><td>hls_playlist_type<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6eM3U8\u5217\u8868\u4e3a\u4e8b\u4ef6\u6216\u8005\u70b9\u64ad\u5217\u8868<\/td><\/tr><tr><td>method<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eHTTP\u5c5e\u6027<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e3e\u4f8b\uff1a<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E5%B8%B8%E8%A7%84%E7%9A%84%E4%BB%8E%E6%96%87%E4%BB%B6%E8%BD%AC%E6%8D%A2%E4%B8%BAhls%E7%9B%B4%E6%92%AD\"><span class=\"ez-toc-section\" id=\"%E5%B8%B8%E8%A7%84%E7%9A%84%E4%BB%8E%E6%96%87%E4%BB%B6%E8%BD%AC%E6%8D%A2%E4%B8%BAHLS%E7%9B%B4%E6%92%AD\"><\/span>\u5e38\u89c4\u7684\u4ece\u6587\u4ef6\u8f6c\u6362\u4e3aHLS\u76f4\u64ad<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb output.m3u8\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code>-bsf:v h264_toannexb<\/code>\u662f\u8bf4\u5c06MP4\u4e2d\u7684H.264\u6570\u636e\u8f6c\u6362\u4e3aH.264 AnnexB\u6807\u51c6\u7684\u7f16\u7801\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>\u8bbe\u7f6estart_number<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -start_number 300 output.m3u8<\/code><\/li><li>hls_time\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_time 10 output.m3u8 <\/code>\u56e0\u4e3affmpeg\u8fd9\u4e2a\u547d\u4ee4\u662f\u4f1a\u4ece\u5173\u952e\u5e27\u5f00\u59cb\u5207\u7247\uff0c\u6240\u4ee5\u8fd9\u4e2a10\u79d2\u949f\u5e76\u4e0d\u662f\u4e25\u683c\u7684\u3002<\/li><li>hls_list_size\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_list_size 3 output.m3u8<\/code><\/li><li>hls_wrap\u53c2\u6570(\u636e\u8bf4\u6709\u95ee\u9898\uff0c\u5728\u65b0\u7248\u672c\u4e2d\u8fd9\u4e2a\u53c2\u6570\u4f1a\u88ab\u5e9f\u5f03?)<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_wrap 3 output.m3u8<\/code><\/li><li>hls_base_url\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_base_url http:\/\/localhost output.m3u8<\/code><\/li><li>hls_segment_filename\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_segment_filename test_output-%d.ts output.m3u8<\/code><\/li><li>hls_flags\u53c2\u6570<ul><li>delete_segments<br>\u9700\u8981\u914d\u5408hls_list_size\u4f7f\u7528\u3002<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_flags delete_segments -hls_list_size 4 output.m3u8<\/code><\/li><li>round_durations<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_flags round_durations output.m3u8 <\/code>\u8ba9m3u8\u6587\u4ef6\u91cc\u7684\u5207\u7247\u65f6\u957f\u4fe1\u606f\u663e\u793a\u4e3a\u6574\u578b\u3002<\/li><li>discont_start<br>\u5728m3u8\u6587\u4ef6\u91cc\u7b2c\u4e00\u4e2aTS\u4fe1\u606f\u524d\u9762\u52a0\u4e0a<code>#EXT-X-DISCONTINUITY<\/code>\u8868\u660e\u5207\u7247\u4e0d\u8fde\u7eed\u3002<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_flags discont_start output.m3u8<\/code><\/li><li>omit_endlist<br>\u5728m3u8\u6587\u4ef6\u672b\u5c3e\u4e0d\u5199\u4e0aendlist\u6807\u7b7e\u3002<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_flags omit_endlist output.m3u8<\/code><\/li><li>split_by_time<br>\u914d\u5408hls_time\u4e00\u8d77\u4f7f\u7528\uff0c\u8fbe\u5230\u4e0d\u6309\u5173\u952e\u5e27\u800c\u662f\u6309\u7167\u6307\u5b9a\u65f6\u95f4\u5f3a\u884c\u5207\u7247\u7684\u6548\u679c\u3002\u9020\u6210\u7684\u95ee\u9898\u5c31\u662f\u5982\u679c\u4f60\u83b7\u5f97\u7684\u7b2c\u4e00\u4e2ats\u4e0d\u662fI\u5e27\u5f00\u5934\u7684\u53ef\u80fd\u5c31\u4f1a\u82b1\u5c4f\u6216\u8005\u663e\u793a\u6162\u3002<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_time 2 -hls_flags split_by_time output.m3u8<\/code><\/li><\/ul><\/li><li>use_localtime\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c copy -f hls -bsf:v h264_mp4toannexb -hls_segment_filename -use_localtime output.m3u8<\/code><\/li><li>method\u53c2\u6570<br>\u5c45\u7136ffmpeg\u914d\u5408nginx\u7684webdav\u6a21\u5757\u53ef\u4ee5\u76f4\u63a5\u628a\u751f\u6210\u7684m3u8\u548cts\u6587\u4ef6\u7ed9\u76f4\u63a5\u63a8\u5230\u670d\u52a1\u5668\u4e0a\u53bb\uff01<\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E5%88%87%E7%89%87\"><span class=\"ez-toc-section\" id=\"%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E5%88%87%E7%89%87\"><\/span>\u89c6\u9891\u6587\u4ef6\u5207\u7247<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\"><li>segment_format\u6307\u5b9a\u5207\u7247\u6587\u4ef6\u7684\u683c\u5f0f<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 test_output-%d.mp4<\/code><\/li><li>segment_list\u4e0esegment_list_type\u6307\u5b9a\u5207\u7247\u7d22\u5f15\u5217\u8868<ul><li>ffconcat<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 -segment_list_type ffconcat -segment_list output.lst test_output-%d.mp4<\/code><\/li><li>flat\u683c\u5f0f<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 -segment_list_type flat -segment_list filelist.txt test_output-%d.mp4<\/code><\/li><li>csv\u683c\u5f0f<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 -segment_list_type csv -segment_list filelist.csv test_output-%d.mp4<\/code><\/li><li>m3u8\u683c\u5f0f<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 -segment_list_type m3u8 -segment_list output.m3u8 test_output-%d.mp4<\/code><\/li><\/ul><\/li><li>reset_timestamps\u4f7f\u5207\u7247\u65f6\u95f4\u6233\u5f520<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 -reset_timestamps 1 test_output-%d.mp4<\/code><\/li><li>segment_times\u6309\u7167\u65f6\u95f4\u70b9\u526a\u5207<code>ffmpeg -re -i input.mp4 -c copy -f segment -segment_format mp4 -segment_times 3,9,12 test_output-%d.mp4<\/code><\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ffmpeg%E4%BD%BF%E7%94%A8ss%E4%B8%8Et%E5%8F%82%E6%95%B0%E8%BF%9B%E8%A1%8C%E5%88%87%E7%89%87\"><span class=\"ez-toc-section\" id=\"FFmpeg%E4%BD%BF%E7%94%A8ss%E4%B8%8Et%E5%8F%82%E6%95%B0%E8%BF%9B%E8%A1%8C%E5%88%87%E7%89%87\"><\/span>FFmpeg\u4f7f\u7528ss\u4e0et\u53c2\u6570\u8fdb\u884c\u5207\u7247<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li>\u4f7f\u7528ss\u6307\u5b9a\u526a\u5207\u5f00\u5934\u90e8\u5206<code>ffmpeg -ss 8 -i input.mp4 -c copy output.ts<\/code><\/li><li>\u4f7f\u7528t\u6307\u5b9a\u89c6\u9891\u603b\u957f\u5ea6<code>ffmpeg -i input.mp4 -c copy -t 10 -copyts output.ts<\/code><\/li><li>\u4f7f\u7528output_ts_offset\u6307\u5b9a\u8f93\u51fastart_time<code>ffmpeg -i input.mp4 -c copy -t 10 -output_ts_offset 120 output.mp4<\/code><\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E9%9F%B3%E8%A7%86%E9%A2%91%E6%B5%81%E6%8A%BD%E5%8F%96\"><span class=\"ez-toc-section\" id=\"%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E9%9F%B3%E8%A7%86%E9%A2%91%E6%B5%81%E6%8A%BD%E5%8F%96\"><\/span>\u97f3\u89c6\u9891\u6587\u4ef6\u97f3\u89c6\u9891\u6d41\u62bd\u53d6<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%8A%BD%E5%8F%96aac%E9%9F%B3%E9%A2%91%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E6%8A%BD%E5%8F%96AAC%E9%9F%B3%E9%A2%91%E6%B5%81\"><\/span>\u62bd\u53d6AAC\u97f3\u9891\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input.mp4 -vn -acodec copy output.aac\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%8A%BD%E5%8F%96h264%E8%A7%86%E9%A2%91%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E6%8A%BD%E5%8F%96H264%E8%A7%86%E9%A2%91%E6%B5%81\"><\/span>\u62bd\u53d6H.264\u89c6\u9891\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input.mp4 -vcodec copy -an output.h264\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%8A%BD%E5%8F%96%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84h265%E6%95%B0%E6%8D%AE\"><span class=\"ez-toc-section\" id=\"%E6%8A%BD%E5%8F%96%E9%9F%B3%E8%A7%86%E9%A2%91%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84H265%E6%95%B0%E6%8D%AE\"><\/span>\u62bd\u53d6\u97f3\u89c6\u9891\u6587\u4ef6\u4e2d\u7684H.265\u6570\u636e<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i input.mp4 -vcodec copy -an -bsf hevc_mp4toannexb -f hevc output.hevc\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E5%9B%9B%E7%AB%A0-ffmpeg%E8%BD%AC%E7%A0%81\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E5%9B%9B%E7%AB%A0_FFmpeg%E8%BD%AC%E7%A0%81\"><\/span>\u7b2c\u56db\u7ae0 FFmpeg\u8f6c\u7801<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u652f\u6301H.264\u7684\u5e38\u89c1\u5c01\u88c5\u683c\u5f0f\u6709\uff1aFLV\uff0cMP4\uff0cHLS(M3U8)\uff0cMKV\uff0cTS\u7b49\u3002FFmpeg\u672c\u8eab\u4e0d\u652f\u6301H.264\u7f16\u7801\uff0c\u4e3b\u8981\u7528x264\u548cOpenH264\u7f16\u7801\u5668\u3002\u4f7f\u7528<code>ffmpeg -h encoder=libx264<\/code>\u53ef\u4ee5\u770b\u5230x264\u652f\u6301\u7684\u50cf\u7d20\u683c\u5f0f\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"x264%E7%BC%96%E7%A0%81%E5%8F%82%E6%95%B0\"><span class=\"ez-toc-section\" id=\"x264%E7%BC%96%E7%A0%81%E5%8F%82%E6%95%B0\"><\/span>x264\u7f16\u7801\u53c2\u6570<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>preset<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u7f16\u7801\u5668\u9884\u8bbe\u53c2\u6570<\/td><\/tr><tr><td>tune<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8c03\u4f18\u7f16\u7801\u53c2\u6570<\/td><\/tr><tr><td>profile<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u7f16\u7801profile\u6863\u7ea7\u8bbe\u7f6e<\/td><\/tr><tr><td>level<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u7f16\u7801level\u5c42\u7ea7\u8bbe\u7f6e<\/td><\/tr><tr><td>wpredp<\/td><td>\u5b57\u7b26\u4e32<\/td><td>P\u5e27\u9884\u6d4b\u8bbe\u7f6e<\/td><\/tr><tr><td>x264opts<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6ex264\u4e13\u6709\u53c2\u6570<\/td><\/tr><tr><td>crf<\/td><td>\u6d6e\u70b9\u6570<\/td><td>\u9009\u62e9\u8d28\u91cf\u6052\u5b9a\u8d28\u91cf\u6a21\u5f0f<\/td><\/tr><tr><td>crf_max<\/td><td>\u6d6e\u70b9\u6570<\/td><td>\u9009\u62e9\u8d28\u91cf\u6052\u5b9a\u8d28\u91cf\u6a21\u5f0f\u6700\u5927\u503c<\/td><\/tr><tr><td>qp<\/td><td>\u6574\u6570<\/td><td>\u6052\u5b9a\u91cf\u5316\u53c2\u6570\u63a7\u5236<\/td><\/tr><tr><td>psy<\/td><td>\u6d6e\u70b9\u6570<\/td><td>\u53ea\u7528psychovisual\u4f18\u5316<\/td><\/tr><tr><td>rc-lookahead<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u9884\u8bfb\u5e27\u8bbe\u7f6e<\/td><\/tr><tr><td>weightb<\/td><td>\u6d6e\u70b9\u6570<\/td><td>B\u5e27\u9884\u6d4b\u8bbe\u7f6e<\/td><\/tr><tr><td>weightp<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u9884\u6d4b\u5206\u6790\u65b9\u6cd5\uff1anone\u3001simple\u3001smart\u4e09\u79cd\u6a21\u5f0f<\/td><\/tr><tr><td>ssim<\/td><td>\u5e03\u5c14<\/td><td>\u8ba1\u7b97\u6253\u5370SSIM\u72b6\u6001<\/td><\/tr><tr><td>intra-refresh<\/td><td>\u5e03\u5c14<\/td><td>\u5b9a\u65f6\u5237I\u5e27\u4ee5\u66ff\u4ee3IDR\u5e27<\/td><\/tr><tr><td>bluray-compat<\/td><td>\u5e03\u5c14<\/td><td>\u84dd\u5149\u517c\u5bb9\u53c2\u6570<\/td><\/tr><tr><td>b-bias<\/td><td>\u6574\u6570<\/td><td>B\u5e27\u4f7f\u7528\u9891\u7387\u8bbe\u7f6e<\/td><\/tr><tr><td>mixed-refs<\/td><td>\u5e03\u5c14<\/td><td>\u6bcf\u4e2apartition\u4e00\u4e2a\u53c2\u8003\uff0c\u800c\u4e0d\u662f\u6bcf\u4e2a\u5b8f\u5757\u4e00\u4e2a\u53c2\u8003<\/td><\/tr><tr><td>8x8dct<\/td><td>\u5e03\u5c14<\/td><td>8&#215;8\u77e9\u9635\u53d8\u6362\uff0c\u7528\u5728high profile<\/td><\/tr><tr><td>aud<\/td><td>\u5e03\u5c14<\/td><td>\u5e26AUD\u5206\u9694\u6807\u8bc6<\/td><\/tr><tr><td>mbtree<\/td><td>\u5e03\u5c14<\/td><td>\u5b8f\u5757\u6811\u9891\u7387\u63a7\u5236<\/td><\/tr><tr><td>deblock<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u73af\u8def\u6ee4\u6ce2\u53c2\u6570<\/td><\/tr><tr><td>cplxblur<\/td><td>\u6d6e\u70b9\u6570<\/td><td>\u51cf\u5c11\u6ce2\u52a8QP\u53c2\u6570<\/td><\/tr><tr><td>partitions<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u9017\u53f7\u5206\u9694\u7684partition\u5217\u8868\uff0c\u53ef\u4ee5\u5305\u542b\u7684\u503c\u6709p8x8\uff0cp4x4\uff0cb8x8\uff0ci8x8\uff0ci4x4\uff0cnone\uff0call<\/td><\/tr><tr><td>direct-pred<\/td><td>\u6574\u6570<\/td><td>\u8fd0\u52a8\u5411\u91cf\u9884\u6d4b\u6a21\u5f0f<\/td><\/tr><tr><td>slice-max-size<\/td><td>\u6574\u6570<\/td><td>Slice\u7684\u6700\u5927\u503c<\/td><\/tr><tr><td>nal-hrd<\/td><td>\u6574\u6570<\/td><td>HRD\u4fe1\u53f7\u4fe1\u606f\u8bbe\u7f6e\uff1aNone\uff0cVBR\uff0cCBR\u8bbe\u7f6e<\/td><\/tr><tr><td>motion-est<\/td><td>\u6574\u6570<\/td><td>\u8fd0\u52a8\u4f30\u8ba1\u65b9\u6cd5<\/td><\/tr><tr><td>forced-idr<\/td><td>\u6574\u6570<\/td><td>\u5f3a\u884c\u8bbe\u7f6e\u5173\u952e\u5e27\u4e3aIDR\u5e27<\/td><\/tr><tr><td>coder<\/td><td>\u6574\u6570<\/td><td>\u7f16\u7801\u5668\u7c7b\u578b\u5305\u62ecdefault\u3001cavlc\u3001cabac\u3001vlc\u3001ac<\/td><\/tr><tr><td>b_strategy<\/td><td>\u6574\u6570<\/td><td>I\/P\/B\u5e27\u9009\u62e9\u7b56\u7565<\/td><\/tr><tr><td>chromaoffst<\/td><td>\u6574\u6570<\/td><td>QP\u8272\u5ea6\u548c\u4eae\u5ea6\u4e4b\u95f4\u7684\u5dee\u5f02\u53c2\u6570<\/td><\/tr><tr><td>sc_threshold<\/td><td>\u6574\u6570<\/td><td>\u573a\u666f\u5207\u6362\u9608\u503c\u53c2\u6570<\/td><\/tr><tr><td>noise_reduction<\/td><td>\u6574\u6570<\/td><td>\u964d\u566a\u5904\u7406\u53c2\u6570<\/td><\/tr><tr><td>x264-params<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u4e0ex264opts\u64cd\u4f5c\u76f8\u540c<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E7%BC%96%E7%A0%81%E4%B8%BE%E4%BE%8B\"><span class=\"ez-toc-section\" id=\"%E7%BC%96%E7%A0%81%E4%B8%BE%E4%BE%8B\"><\/span>\u7f16\u7801\u4e3e\u4f8b<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E7%BC%96%E7%A0%81%E5%99%A8%E9%A2%84%E8%AE%BE%E5%8F%82%E6%95%B0preset\"><span class=\"ez-toc-section\" id=\"%E7%BC%96%E7%A0%81%E5%99%A8%E9%A2%84%E8%AE%BE%E5%8F%82%E6%95%B0preset\"><\/span>\u7f16\u7801\u5668\u9884\u8bbe\u53c2\u6570preset<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>ultrafast<\/li><li>superfast<\/li><li>veryfast<\/li><li>faster<\/li><li>fast<\/li><li>medium<\/li><li>slow<\/li><li>slower<\/li><li>veryslow<\/li><li>placebo<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i 2020-09-05-171930.mp4 -vcodec libx264 -preset ultrafast -b:v 100k output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u547d\u4ee4\u7684\u8f93\u51fa\u4e2d\u6709\u663e\u793a\uff1a<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>frame= 336 fps=0.0 q=-1.0 Lsize= 245kB time=00:00:11.16 bitrate= 179.4kbits\/s speed=29.9x<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">\u8868\u793a\u8f6c\u7801\u6240\u82b1\u65f6\u95f4\u662f\u89c6\u9891\u672c\u8eab\u65f6\u95f4\u768429.9\u5206\u4e4b\u4e00\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h264%E7%BC%96%E7%A0%81%E4%BC%98%E5%8C%96%E5%8F%82%E6%95%B0tune\"><span class=\"ez-toc-section\" id=\"H264%E7%BC%96%E7%A0%81%E4%BC%98%E5%8C%96%E5%8F%82%E6%95%B0tune\"><\/span>H.264\u7f16\u7801\u4f18\u5316\u53c2\u6570tune<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>film<\/li><li>animation<\/li><li>grain<\/li><li>stillimage<\/li><li>psnr<\/li><li>ssim<\/li><li>fastdecode<\/li><li>zerolatency<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u4f7f\u7528FFmpeg\u4e0ex264\u8fdb\u884cH.264\u7684\u76f4\u64ad\u7f16\u7801\u63a8\u6d41\u65f6\u53ef\u4ee5\u4f7f\u7528<strong>zerolatency<\/strong>\u6a21\u5f0f\u964d\u4f4e\u56e0\u7f16\u7801\u5bfc\u81f4\u7684\u5ef6\u8fdf\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h264%E7%9A%84profile%E4%B8%8Elevel%E8%AE%BE%E7%BD%AE\"><span class=\"ez-toc-section\" id=\"H264%E7%9A%84profile%E4%B8%8Elevel%E8%AE%BE%E7%BD%AE\"><\/span>H.264\u7684profile\u4e0elevel\u8bbe\u7f6e<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">profile\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Baseline<\/li><li>Extend<\/li><li>Main<\/li><li>High<\/li><li>High10<\/li><li>High422<\/li><li>High444<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E6%8E%A7%E5%88%B6%E5%9C%BA%E6%99%AF%E5%88%87%E6%8D%A2%E5%85%B3%E9%94%AE%E5%B8%A7%E6%8F%92%E5%85%A5%E5%8F%82%E6%95%B0scthreshold\"><span class=\"ez-toc-section\" id=\"%E6%8E%A7%E5%88%B6%E5%9C%BA%E6%99%AF%E5%88%87%E6%8D%A2%E5%85%B3%E9%94%AE%E5%B8%A7%E6%8F%92%E5%85%A5%E5%8F%82%E6%95%B0sc_threshold\"><\/span>\u63a7\u5236\u573a\u666f\u5207\u6362\u5173\u952e\u5e27\u63d2\u5165\u53c2\u6570sc_threshold<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"%E8%AE%BE%E7%BD%AEx264%E5%86%85%E9%83%A8%E5%8F%82%E6%95%B0x264opts\"><span class=\"ez-toc-section\" id=\"%E8%AE%BE%E7%BD%AEx264%E5%86%85%E9%83%A8%E5%8F%82%E6%95%B0x264opts\"><\/span>\u8bbe\u7f6ex264\u5185\u90e8\u53c2\u6570x264opts<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"cbr%E6%81%92%E5%AE%9A%E7%A0%81%E7%8E%87%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0nal-hrd\"><span class=\"ez-toc-section\" id=\"CBR%E6%81%92%E5%AE%9A%E7%A0%81%E7%8E%87%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0nal-hrd\"><\/span>CBR\u6052\u5b9a\u7801\u7387\u8bbe\u7f6e\u53c2\u6570nal-hrd<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E7%A1%AC%E4%BB%B6%E7%BC%96%E8%A7%A3%E7%A0%81\"><span class=\"ez-toc-section\" id=\"%E7%A1%AC%E4%BB%B6%E7%BC%96%E8%A7%A3%E7%A0%81\"><\/span>\u786c\u4ef6\u7f16\u89e3\u7801<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"nvidia-gpu\"><span class=\"ez-toc-section\" id=\"Nvidia_GPU\"><\/span>Nvidia GPU<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"intel-qsv\"><span class=\"ez-toc-section\" id=\"Intel_QSV\"><\/span>Intel QSV<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E4%BA%94%E7%AB%A0-ffmpeg%E6%B5%81%E5%AA%92%E4%BD%93\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E4%BA%94%E7%AB%A0_FFmpeg%E6%B5%81%E5%AA%92%E4%BD%93\"><\/span>\u7b2c\u4e94\u7ae0 FFmpeg\u6d41\u5a92\u4f53<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%8F%91%E5%B8%83%E4%B8%8E%E5%BD%95%E5%88%B6rtmp%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E5%8F%91%E5%B8%83%E4%B8%8E%E5%BD%95%E5%88%B6rtmp%E6%B5%81\"><\/span>\u53d1\u5e03\u4e0e\u5f55\u5236rtmp\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">rtmp\u53c2\u6570\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>rtmp_app<\/td><td>\u5b57\u7b26\u4e32<\/td><td>RTMP\u6d41\u53d1\u5e03\u70b9\uff0c\u53c8\u79f0\u4e3aAPP<\/td><\/tr><tr><td>rtmp_buffer<\/td><td>\u6574\u6570<\/td><td>\u5ba2\u6237\u7aefbuffer\u5927\u5c0f(\u5355\u4f4d\uff1a\u6beb\u79d2)\uff0c\u9ed8\u8ba4\u4e3a3\u79d2<\/td><\/tr><tr><td>rtmp_conn<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u5728RTMP\u7684Connect\u547d\u4ee4\u4e2d\u589e\u52a0\u81ea\u5b9a\u4e49AMF\u6570\u636e<\/td><\/tr><tr><td>rtmp_flashver<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6e\u6a21\u62df\u7684flashplugin\u7684\u7248\u672c\u53f7<\/td><\/tr><tr><td>rtmp_live<\/td><td>\u6574\u6570<\/td><td>\u6307\u5b9aRTMP\u6d41\u5a92\u4f53\u64ad\u653e\u7c7b\u578b\uff0c\u53ef\u4ee5\u4e3aany\u3001live\u3001recorded<\/td><\/tr><tr><td>rtmp_pageurl<\/td><td>\u5b57\u7b26\u4e32<\/td><td>RTMP\u5728Connect\u547d\u4ee4\u4e2d\u8bbe\u7f6e\u7684PageURL\u5b57\u6bb5\uff0c\u5176\u4e3a\u64ad\u653e\u65f6\u6240\u5728\u7684Web\u9875\u9762URL<\/td><\/tr><tr><td>rtmp_playpath<\/td><td>\u5b57\u7b26\u4e32<\/td><td>RTMP\u6d41\u64ad\u653e\u7684Stream\u5730\u5740\uff0c\u6216\u8005\u6210\u4e3a\u5bc6\u94a5\uff0c\u6216\u8005\u79f0\u4e3a\u53d1\u5e03\u6d41<\/td><\/tr><tr><td>rtmp_subscribe<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u76f4\u64ad\u6d41\u540d\u79f0\uff0c\u9ed8\u8ba4\u8bbe\u7f6e\u4e3artmp_playpath\u7684\u503c<\/td><\/tr><tr><td>rtmp_swfhash<\/td><td>\u4e8c\u8fdb\u5236\u6570\u636e<\/td><td>\u89e3\u538bswf\u6587\u4ef6\u540e\u7684SHA256\u7684hash\u503c<\/td><\/tr><tr><td>rtmp_swfsize<\/td><td>\u6574\u6570<\/td><td>swf\u6587\u4ef6\u89e3\u538b\u540e\u7684\u5927\u5c0f\uff0c\u7528\u4e8eswf\u8ba4\u8bc1<\/td><\/tr><tr><td>rtmp_swfurl<\/td><td>\u5b57\u7b26\u4e32<\/td><td>RTMP\u7684Connect\u547d\u4ee4\u4e2d\u8bbe\u7f6e\u7684swfURL\u64ad\u653e\u5668\u7684URL<\/td><\/tr><tr><td>rtmp_swfverify<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eswf\u8ba4\u8bc1\u65f6swf\u6587\u4ef6\u7684URL\u5730\u5740<\/td><\/tr><tr><td>rtmp_tcurl<\/td><td>\u5b57\u7b26\u4e32<\/td><td>RTMP\u7684Connect\u547d\u4ee4\u4e2d\u8bbe\u7f6e\u7684tcURL\u76ee\u6807\u53d1\u5e03\u70b9\u5730\u5740\uff0c\u4e00\u822c\u5f62\u5982rtmp:\/\/xxx.xxx.xxx\/app<\/td><\/tr><tr><td>rtmp_listen<\/td><td>\u6574\u6570<\/td><td>\u5f00\u542fRTMP\u670d\u52a1\u65f6\u6240\u76d1\u542c\u7684\u7aef\u53e3<\/td><\/tr><tr><td>listen<\/td><td>\u6574\u6570<\/td><td>\u4e0ertmp_listen\u76f8\u540c<\/td><\/tr><tr><td>timeout<\/td><td>\u6574\u6570<\/td><td>\u76d1\u542crtmpu\u7aef\u53e3\u65f6\u8bbe\u7f6e\u7684\u8d85\u65f6\u65f6\u95f4\uff0c\u4ee5\u79d2\u4e3a\u5355\u4f4d<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u63a8\u6d41\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -re -i input.mp4 -c copy -f flv -rtmp_app live -rtmp_playpath class rtmp:\/\/publish.chinaffmpeg.com\n<em>#\u53ef\u4ee5\u7701\u7565\u6389rtmp_app\u53c2\u6570\u4e0ertmp_playpath\u53c2\u6570<\/em>\nffmpeg -i input.mp4 -c copy -f flv rtmp:\/\/publish.chinaffmpeg.com\/live\/class\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u62c9\u6d41\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -rtmp_app live -rtmp_playpath class -i rtmp:\/\/publish.chinaffmpeg.com -c copy -f flv output.flv\n<em>#\u540c\u6837\u7684\uff0c\u547d\u4ee4\u53ef\u4ee5\u7b80\u5199<\/em>\nffmpeg -i rtmp:\/\/publish.chinaffmpeg.com\/live\/class -c copy -f flv output.flv\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%BD%95%E5%88%B6rtsp%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E5%BD%95%E5%88%B6rtsp%E6%B5%81\"><\/span>\u5f55\u5236rtsp\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u901a\u8fc7<code>ffmpeg -h demuxer=rtsp<\/code>\u67e5\u770brtsp\u534f\u8bae\u76f8\u5173\u53c2\u6570\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>initial_pause<\/td><td>\u5e03\u5c14<\/td><td>\u5efa\u7acb\u5ec9\u6d01\u540e\u6682\u505c\u64ad\u653e<\/td><\/tr><tr><td>rtsp_transport<\/td><td>\u6807\u8bb0<\/td><td>\u8bbe\u7f6ertsp\u7684\u4f20\u8f93\u534f\u8bae\uff0c\u53ef\u4ee5\u4e3audp\u3001tcp\u3001udp_multicast\u3001http<\/td><\/tr><tr><td>rtsp_flags<\/td><td>\u6807\u8bb0<\/td><td>\u53ef\u4ee5\u4e3afilter_src(\u53ea\u63a5\u6536\u6307\u5b9aIP\u7684\u6d41)\u3001listen(\u8bbe\u7f6e\u4e3a\u88ab\u52a8\u63a5\u53d7\u6a21\u5f0f)\u3001prefer_tcp(TCP\u53ef\u7528\u60c5\u51b5\u4e0b\u4f20\u8f93\u534f\u8bae\u9996\u9009TCP)<\/td><\/tr><tr><td>allowed_media_types<\/td><td>\u6807\u8bb0<\/td><td>\u8bbe\u7f6e\u5141\u8bb8\u63a5\u53d7\u7684\u6570\u636e\u6a21\u5f0f(\u9ed8\u8ba4\u5168\u90e8\u5f00\u542f)\uff1avideo,audio,data,subtitle<\/td><\/tr><tr><td>min_port<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u6700\u5c0f\u672c\u5730UDP\u7aef\u53e3\uff0c\u9ed8\u8ba4\u4e3a5000<\/td><\/tr><tr><td>max_port<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u6700\u5927\u672c\u5730UDP\u7aef\u53e3\uff0c\u9ed8\u8ba4\u4e3a65000<\/td><\/tr><tr><td>timeout<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u76d1\u542c\u7aef\u53e3\u8d85\u65f6\u65f6\u95f4<\/td><\/tr><tr><td>reorder_queue_size<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u5f55\u5236\u6570\u636eBuffer\u7684\u5927\u5c0f<\/td><\/tr><tr><td>buffer_size<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u5e95\u5c42\u4f20\u8f93\u5305Buffer\u7684\u5927\u5c0f<\/td><\/tr><tr><td>user-agent<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u7528\u6237\u5ba2\u6237\u7aef\u6807\u8bc6<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">rtsp\u5f55\u5236\u76f4\u64ad\u6d41\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -rtsp_transport tcp -i rtsp:\/\/47.90.47.25\/test.ts -c copy -f mp4 output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6dfb\u52a0User-Agent\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -user-agent \"ChinaFFmpeg-Player\" -i rtsp:\/\/input:554\/live\/1\/stream.sdp -c copy -f mp4 -y output.mp4\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%BD%95%E5%88%B6http%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E5%BD%95%E5%88%B6http%E6%B5%81\"><\/span>\u5f55\u5236http\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd9\u8282\u8bb2\u7684\u6240\u8c13http\u76f4\u64ad\uff0c\u5176\u5b9e\u5c31\u662f\u5c06\u89c6\u9891\u6587\u4ef6\u7528http\u65b9\u5f0f\u63d0\u4f9b\u51fa\u6765\uff0c\u7136\u540effmpeg\u65e2\u53ef\u4ee5\u4f5c\u4e3ahttp\u670d\u52a1\u5668\uff0c\u4e5f\u53ef\u4ee5\u4f5c\u4e3ahttp\u5ba2\u6237\u7aef\u3002<br>ffmpeg\u652f\u6301\u7684\u53c2\u6570\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>seekable<\/td><td>\u5e03\u5c14<\/td><td>\u8bbe\u7f6eHTTP\u94fe\u63a5\u4e3a\u53ef\u4ee5seek\u64cd\u4f5c<\/td><\/tr><tr><td>chunked_post<\/td><td>\u5e03\u5c14<\/td><td>\u4f7f\u7528Chunked\u6a21\u5f0fpost\u6570\u636e<\/td><\/tr><tr><td>http_proxy<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eHTTP\u4ee3\u7406\u4f20\u8f93\u6570\u636e<\/td><\/tr><tr><td>headers<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u81ea\u5b9a\u4e49HTTP Header\u6570\u636e<\/td><\/tr><tr><td>content_type<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6ePOST\u7684\u5185\u5bb9\u7c7b\u578b<\/td><\/tr><tr><td>user_agent<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eHTTP\u8bf7\u6c42\u5ba2\u6237\u7aef\u4fe1\u606f<\/td><\/tr><tr><td>multiple_requests<\/td><td>\u5e03\u5c14<\/td><td>HTTP\u957f\u8fde\u63a5\u5f00\u542f<\/td><\/tr><tr><td>post_data<\/td><td>\u4e8c\u8fdb\u5236\u6570\u636e<\/td><td>\u8bbe\u7f6e\u5c06\u8981POST\u7684\u6570\u636e<\/td><\/tr><tr><td>cookies<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u8bbe\u7f6eHTTP\u8bf7\u6c42\u65f6\u643a\u5e26\u7684Cookies<\/td><\/tr><tr><td>icy<\/td><td>\u5e03\u5c14<\/td><td>\u8bbe\u7f6eICY\u5143\u6570\u636e\uff0c\u9ed8\u8ba4\u6253\u5f00<\/td><\/tr><tr><td>anth_type<\/td><td>\u6574\u6570<\/td><td>HTTP\u9a8c\u8bc1\u7c7b\u578b\u8bbe\u7f6e<\/td><\/tr><tr><td>offset<\/td><td>\u6574\u6570<\/td><td>\u521d\u59cb\u5316HTTP\u8bf7\u6c42\u65f6\u7684\u504f\u79fb\u4f4d\u7f6e<\/td><\/tr><tr><td>method<\/td><td>\u5b57\u7b26\u4e32<\/td><td>\u53d1\u8d77HTTP\u8bf7\u6c42\u65f6\u4f7f\u7528\u7684HTTP\u7684\u65b9\u6cd5<\/td><\/tr><tr><td>reconnect<\/td><td>\u5e03\u5c14<\/td><td>\u5728EOF\u4e4b\u524d\u65ad\u5f00\u53d1\u8d77\u91cd\u8fde<\/td><\/tr><tr><td>reconnect_at_eof<\/td><td>\u5e03\u5c14<\/td><td>\u5728\u5f97\u5230EOF\u65f6\u53d1\u8d77\u91cd\u8fde<\/td><\/tr><tr><td>reply_code<\/td><td>\u6574\u6570<\/td><td>\u4f5c\u4e3aHTTP\u670d\u52a1\u65f6\u5411\u5ba2\u6237\u7aef\u53cd\u9988\u72b6\u6001\u7801<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e3e\u4f8b\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">seek\u64cd\u4f5c\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -ss 30 -seekable 1 -i http:\/\/bbs.chinaffmpeg.com\/test.ts -c copy -y output.mp4\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">headers\u53c2\u6570\u8bbe\u7f6e\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -headers \"referer: http:\/\/bbs.chinaffmpeg.com\/index.html\" -i http:\/\/play.chinaffmpeg.com\/live\/class.flv -c copy -f flv -y output.flv\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">user_agent\u53c2\u6570\u8bbe\u7f6e\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -user_agent \"LiuQi's Player\" -i http:\/\/bbs.chinaffmpeg.com\/1.flv\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u62c9\u6d41\u5f55\u5236\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i http:\/\/bbs.chinaffmpeg.com\/live.flv -c copy -f flv output.flv\nffmpeg -i http:\/\/bbs.chinaffmpeg.com\/live.ts -c copy -f flv output.flv\nffmpeg -i http:\/\/bbs.chinaffmpeg.com\/live.m3u8 -c copy -f flv output.flv\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%BD%95%E5%88%B6%E5%92%8C%E5%8F%91%E5%B8%83udptcp%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E5%BD%95%E5%88%B6%E5%92%8C%E5%8F%91%E5%B8%83UDPTCP%E6%B5%81\"><\/span>\u5f55\u5236\u548c\u53d1\u5e03UDP\/TCP\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u6240\u8c13\u5f55\u5236\u548c\u53d1\u5e03UDP\/TCP\u6d41\u662fffmpeg\u901a\u8fc7\u81ea\u5df1\u7684\u79c1\u6709\u534f\u8bae\u4f20\u8f93\u97f3\u89c6\u9891\u6d41\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">TCP\u53c2\u6570\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>listen<\/td><td>\u6574\u6570<\/td><td>\u4f5c\u4e3aServer\u65f6\u76d1\u542cTCP\u7684\u7aef\u53e3<\/td><\/tr><tr><td>timeout<\/td><td>\u6574\u6570<\/td><td>\u83b7\u5f97\u6570\u636e\u8d85\u65f6\u65f6\u95f4(\u5fae\u5999)<\/td><\/tr><tr><td>listen_timeout<\/td><td>\u6574\u6570<\/td><td>\u4f5c\u4e3aServer\u65f6\u76d1\u542cTCP\u7aef\u53e3\u7684\u8d85\u65f6\u65f6\u95f4(\u6beb\u79d2)<\/td><\/tr><tr><td>send_buffer_size<\/td><td>\u6574\u6570<\/td><td>\u901a\u8fc7socket\u53d1\u9001\u7684buffer\u5927\u5c0f<\/td><\/tr><tr><td>recv_buffer_size<\/td><td>\u6574\u6570<\/td><td>\u901a\u8fc7socket\u8bfb\u53d6\u7684buffer\u5927\u5c0f<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">UDP\u53c2\u6570\u5217\u8868\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>buffer_size<\/td><td>\u6574\u6570<\/td><td>\u7cfb\u7edf\u6570\u636ebuffer\u5927\u5c0f<\/td><\/tr><tr><td>bitrate<\/td><td>\u6574\u6570<\/td><td>\u6bcf\u79d2\u949f\u53d1\u9001\u7684\u7801\u7387<\/td><\/tr><tr><td>localport<\/td><td>\u6574\u6570<\/td><td>\u672c\u5730\u7aef\u53e3<\/td><\/tr><tr><td>localaddr<\/td><td>\u6574\u6570<\/td><td>\u672c\u5730\u5730\u5740<\/td><\/tr><tr><td>pkt_size<\/td><td>\u6574\u6570<\/td><td>\u6700\u5927UDP\u6570\u636e\u5305\u5927\u5c0f<\/td><\/tr><tr><td>reuse<\/td><td>\u5e03\u5c14<\/td><td>UDP socket\u590d\u7528<\/td><\/tr><tr><td>broadcast<\/td><td>\u5e03\u5c14<\/td><td>\u5e7f\u64ad\u6a21\u5f0f\u5f00\u542f\u4e0e\u5173\u95ed<\/td><\/tr><tr><td>ttl<\/td><td>\u6574\u6570<\/td><td>\u591a\u64ad\u65f6\u914d\u5408\u4f7f\u7528\u7684\u5b58\u6d3b\u65f6\u95f4<\/td><\/tr><tr><td>fifo_size<\/td><td>\u6574\u6570<\/td><td>\u7ba1\u9053\u5927\u5c0f<\/td><\/tr><tr><td>timeout<\/td><td>\u6574\u6570<\/td><td>\u8bbe\u7f6e\u6570\u636e\u4f20\u8f93\u7684\u8d85\u65f6\u65f6\u95f4<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f7f\u7528\u4e3e\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\"><em># \u4f5c\u4e3a\u670d\u52a1\u5668<\/em>\nffmpeg -listen 1 -f flv -i tcp:\/\/127.0.0.1:1234\/live\/stream -c copy -f flv output.flv\n<em># \u4f5c\u4e3a\u5ba2\u6237\u7aef<\/em>\nffmpeg -re -i input.mp4 -c copy -f flv tcp:\/\/127.0.0.1:1234\/live\/stream\n\n<em># \u4f5c\u4e3a\u5ba2\u6237\u7aef<\/em>\nffmpeg -re -i input.mp4 -c copy -localport 23456 -f flv udp:\/\/192.168.100.179:1234\/live\/stream\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u51e0\u4e2alisten_timeout\u3001timeout\u3001send_buffer_size\u3001recv_buffer_size\u7684\u4f8b\u5b50\u61d2\u5f97\u5217\u4e86\uff0c\u770b\u4e00\u773c\u53c2\u6570\u8bf4\u660e\u5c31\u4f1a\u7528\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E6%8E%A8%E5%A4%9A%E8%B7%AF%E6%B5%81\"><span class=\"ez-toc-section\" id=\"%E6%8E%A8%E5%A4%9A%E8%B7%AF%E6%B5%81\"><\/span>\u63a8\u591a\u8def\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd9\u8282\u8bb2\u7684\u5c31\u662f\u5982\u4f55\u628a\u4e00\u8def\u6d41\u540c\u65f6\u63a8\u5230\u591a\u4e2a\u5730\u65b9\u53bb\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u7528\u7ba1\u9053<code>ffmpeg -i input.mp4 -vodec libx264 -acodec aac -f flv - | ffmpeg f flv -i - -c copy -f flv rtmp:\/\/publish.chinaffmpeg.com\/live\/stream1 -c copy -f flv rtmp:\/\/publish.chinaffmpeg.com\/live\/stream2<\/code><\/li><li>\u7528tee\u5c01\u88c5\u683c\u5f0f<code>ffmpeg -re -i input.mp4 -vcodec libx264 -acodec aac -map 0 -f tee \"[f=flv]rtmp:\/\/publish.chinaffmpeg.com\/live\/stream1 | [f=flv]rtmp:\/\/publish.chinaffmpeg.com\/live\/stream2\"<\/code><\/li><li>\u7528tee\u534f\u8bae<code>ffmpeg -re -i input.mp4 -vcodec libx264 -acodec aac -f flv \"tee:rtmp:\/\/publish.chinaffmpeg.com\/live\/stream1|rtmp:\/\/publish.chinaffmpeg.com\/live\/stream2\"<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"hds%E6%B5%81\"><span class=\"ez-toc-section\" id=\"HDS%E6%B5%81\"><\/span>HDS\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><code>window_size<\/code>\u53c2\u6570\u63a7\u5236\u6587\u4ef6\u5217\u8868\u5927\u5c0f<br><code>ffmpeg -i input -c copy -f hds -window_size 4 output<\/code><\/li><li><code>extra_window_size<\/code>\u53c2\u6570\u63a7\u5236\u6587\u4ef6\u4e2a\u6570<br><code>ffmpeg -re -i input.mp4 -c copy -f hds -window_size 4 -extra_window_size 1 output<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"dash%E6%B5%81\"><span class=\"ez-toc-section\" id=\"DASH%E6%B5%81\"><\/span>DASH\u6d41<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><code>window_size<\/code>\u4e0e<code>extra_window_size<\/code>\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c:v copy -acodec copy -f dash -window_size 4 -extra_window_size 5 index.mpd<\/code><\/li><li><code>single_file<\/code>\u53c2\u6570<code>ffmpeg -re -i input.mp4 -c:v copy -acodec copy -f dash -window_size 4 -extra_window_size 5 -single_file 1 index.mpd<\/code><\/li><\/ul>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E5%85%AD%E7%AB%A0-ffmpeg%E6%BB%A4%E9%95%9C%E4%BD%BF%E7%94%A8\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E5%85%AD%E7%AB%A0_FFmpeg%E6%BB%A4%E9%95%9C%E4%BD%BF%E7%94%A8\"><\/span>\u7b2c\u516d\u7ae0 FFmpeg\u6ee4\u955c\u4f7f\u7528<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">FFmpeg\u7684\u6ee4\u955c\u5904\u7406(filter)\u5c31\u662f\u5bf9\u89c6\u9891\u548c\u97f3\u9891\u505a\u4e00\u4e9b\u7f29\u653e\u3001\u5408\u5e76\u3001\u7ffb\u8f6c\u4e4b\u7c7b\u7684\u5e38\u89c4\u64cd\u4f5c\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u81ea\u5df1\u5b9e\u73b0\u4e5f\u4e0d\u89c1\u5f97\u6709\u591a\u56f0\u96be\uff0c\u4f46\u662f\u81ea\u5df1\u5b9e\u73b0\u7684\u53ef\u80fd\u6ca1\u4eba\u5bb6\u9ad8\u6548\uff0c\u5b9a\u4e49\u7684\u63a5\u53e3\u6ca1\u6709\u4eba\u5bb6\u8bbe\u8ba1\u7684\u597d\u3002<br>FFmpeg\u7684\u6ee4\u955c<a href=\"http:\/\/ffmpeg.org\/ffmpeg-filters.html#Filtering-Introduction\">\u5b98\u65b9\u6587\u6863<\/a>\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filter%E7%9A%84%E8%AF%AD%E6%B3%95\"><span class=\"ez-toc-section\" id=\"filter%E7%9A%84%E8%AF%AD%E6%B3%95\"><\/span>filter\u7684\u8bed\u6cd5<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bfb\u5b98\u65b9\u6587\u6863\uff0c\u4f1a\u5148\u8ba9\u4f60\u4f53\u4f1a\u4e00\u4e2a\u4f7f\u7528\u6ee4\u955c\u7684\u4f8b\u5b50\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i INPUT -vf \"split [main][tmp]; [tmp] crop=iw:ih\/2:0:0, vflip [flip]; [main][flip] overlay=0:H\/2\" OUTPUT\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u9762\u7684\u547d\u4ee4\u63cf\u8ff0\u4e86\u5982\u4e0b\u6240\u793a\u7684\u4e00\u4e2a\u5904\u7406\u6d41\u7a0b\u56fe\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">                [main]\ninput --&gt; split ---------------------&gt; overlay --&gt; output\n            |                             ^\n            |[tmp]                  [flip]|\n            +-----&gt; crop --&gt; vflip -------+\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u53ef\u4ee5\u770b\u51fa\u6ee4\u955c\u5927\u6982\u5c31\u662f\u7528\u7ed9\u5b9a\u7684\u8f93\u5165\u6e90\u4f5c\u4e3a\u8d77\u59cb\u8282\u70b9\uff0c\u5bf9\u8fd9\u4e9b\u8d77\u59cb\u8282\u70b9\u4e0d\u65ad\u5e94\u7528\u6ee4\u955c\u53ef\u4ee5\u5f97\u5230\u65b0\u7684\u8282\u70b9\uff0c\u6700\u540e\u9009\u53d6\u67d0\u4e9b\u8282\u70b9\u4f5c\u4e3a\u6211\u4eec\u60f3\u8981\u7684\u8f93\u51fa\u5c31\u53ef\u4ee5\u4e86\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5173\u4e8e\u6ee4\u955c\u8bed\u6cd5\u7684\u51e0\u70b9\u603b\u7ed3\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><code>-vf<\/code>\u548c<code>filter_complex<\/code>\u4e0d\u80fd\u540c\u65f6\u4f7f\u7528\u3002<br>\u4f7f\u7528<code>filter_complex<\/code>\uff0c\u53ef\u7528\u901a\u8fc7<code>\"\"<\/code>\u63cf\u8ff0\u4e00\u4e2a\u8db3\u591f\u5b8c\u6574\u548c\u590d\u6742\u7684\u5904\u7406\u6d41\u56fe\u3002<\/li><li>\u591a\u4e2a\u6ee4\u955c\u4e4b\u95f4\u7528<code>;<\/code>\u76f8\u9694\uff1b<br>\u4f4d\u4e8e\u540c\u4e00\u6761chain\u7684\u6ee4\u955c\u53ef\u4ee5\u7528<code>,<\/code>\u76f8\u9694\uff1b<\/li><li>\u6ee4\u955c\u7684\u53c2\u6570\u7528<code>&lt;filter&gt;=arg1=a:arg2=b<\/code>\u8fd9\u6837\u7684key\u3001val\u5bf9\u65b9\u5f0f\u63d0\u4f9b\uff0c\u4e0d\u540c\u7684key\u3001val\u5bf9\u4e4b\u95f4\u7528<code>:<\/code>\u76f8\u9694\uff1b<br>\u6ee4\u955c\u7684\u53c2\u6570\u4e5f\u53ef\u4ee5\u4e0d\u628akey\u5199\u51fa\u6765\uff0c\u53ea\u628aval\u7528\u5192\u53f7\u5206\u5f00\u5c31\u53ef\u4ee5\uff0c\u53ea\u662f\u53c2\u6570\u7684\u987a\u5e8f\u5fc5\u987b\u8981\u548cfilter\u63a5\u53d7\u7684\u53c2\u6570\u4fdd\u6301\u4e00\u81f4\uff1b<br>\u5199key\u548c\u4e0d\u5199key\u7684\u4e24\u79cd\u63cf\u8ff0\u53c2\u6570\u7684\u65b9\u5f0f\u53ef\u4ee5\u6df7\u7528\uff0c\u53ea\u662f\u53ea\u80fd\u524d\u9762\u7684\u591a\u4e2a\u6309\u987a\u5e8f\u63cf\u8ff0\u7684key\u3001val\u5bf9\u53ef\u4ee5\u7701\u7565\u6389\u53c2\u6570\u540d\uff0c\u540e\u9762\u7684\u53c2\u6570\u5fc5\u987b\u90fd\u628a\u53c2\u6570\u540d\u5199\u51fa\u6765\uff1b<\/li><li>\u6bcf\u4e2a\u6ee4\u955c\u90fd\u6709\u8f93\u5165\u548c\u8f93\u51fa\uff0c\u7528<code>[input\/output]<\/code>\u8868\u793a\uff0c\u8f93\u5165\u548c\u8f93\u51fa\u53ef\u4ee5\u6709\u591a\u4e2a\uff0c\u8f93\u5165\u5199\u5728\u6ee4\u955c\u540d\u5b57\u7684\u524d\u9762\uff0c\u8f93\u51fa\u5199\u5728\u6ee4\u955c\u540d\u5b57\u7684\u540e\u9762\uff1b<\/li><li>\u6ee4\u955c\u7684\u8f93\u5165\u548c\u8f93\u51fa\u53ef\u4ee5\u4e0d\u5199\uff0c\u4e0a\u4e00\u4e2a\u65e0\u540d\u8f93\u51fa\u4f1a\u4f5c\u4e3a\u4e0b\u4e00\u4e2a\u65e0\u540d\u8f93\u5165\uff1b<\/li><li>\u6ee4\u955c\u662f\u57fa\u4e8e\u89e3\u7801\u540e\u7684\u753b\u9762\u8fdb\u884c\u64cd\u4f5c\u7684\uff1b<br>\u53ef\u4ee5\u5728\u6307\u5b9a\u5b8c\u8981\u8fdb\u884c\u7684filter\u64cd\u4f5c\u4e4b\u540e\u518d\u6307\u5b9a\u7f16\u7801\u5668\uff1b<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u9002\u7528\u4e8efilter\u7684\u5185\u7f6e\u53d8\u91cf\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53d8\u91cf<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>t<\/td><td>\u65f6\u95f4\u6233\u4ee5\u79d2\u8868\u793a\uff0c\u5982\u679c\u8f93\u5165\u7684\u65f6\u95f4\u6233\u662f\u672a\u77e5\u7684\uff0c\u5219\u662fNAN<\/td><\/tr><tr><td>n<\/td><td>\u8f93\u5165\u5e27\u7684\u987a\u5e8f\u7f16\u53f7\uff0c\u4ece0\u5f00\u59cb<\/td><\/tr><tr><td>pos<\/td><td>\u8f93\u5165\u5e27\u7684\u4f4d\u7f6e\uff0c\u5982\u679c\u672a\u77e5\u5219\u662fNAN<\/td><\/tr><tr><td>w<\/td><td>\u8f93\u5165\u89c6\u9891\u5e27\u7684\u5bbd\u5ea6<\/td><\/tr><tr><td>h<\/td><td>\u8f93\u5165\u89c6\u9891\u5e27\u7684\u9ad8\u5ea6<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E4%B8%BA%E8%A7%86%E9%A2%91%E6%B7%BB%E5%8A%A0%E6%B0%B4%E5%8D%B0\"><span class=\"ez-toc-section\" id=\"%E4%B8%BA%E8%A7%86%E9%A2%91%E6%B7%BB%E5%8A%A0%E6%B0%B4%E5%8D%B0\"><\/span>\u4e3a\u89c6\u9891\u6dfb\u52a0\u6c34\u5370<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u6587\u5b57\u6c34\u5370<br><code>ffmpeg -re -i input.mp4 -vf \"movie=sub.mp4,scale=480x320[test]; [in][test]overlay[out]\" -vcodec libx264 output.flv<\/code><br>`ffmpeg -re -i input.mp4 -vf &#8220;movie=sub.mp4,scale=480&#215;320[test]; [in][test]overlay=x=main_w-480:y=main_h-320[out]&#8221; -vcodec libx264 output.flv&#8221;<\/li><li>\u56fe\u7247\u6c34\u5370<br><code>ffmpeg -i input.mp4 -vf \"movie=logo.png[wm]; [in][wm]overlay=30:10[out]\" output.mp4<\/code><br><code>ffmpeg -i input.mp4 -vf \"movie=logo.png,colorkey=black:1.0:1.0[wm];[in][wm]overlay=30:10[out]\" output.mp4<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E7%94%BB%E4%B8%AD%E7%94%BB\"><span class=\"ez-toc-section\" id=\"%E7%94%BB%E4%B8%AD%E7%94%BB\"><\/span>\u753b\u4e2d\u753b<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><code>ffmpeg -re -i input.mp4 -vf \"movie=sub.mp4,scale=480x320[test];[in][test]overlay[out]\" -vcodec libx264 output.flv<\/code><\/li><li><code>ffmpeg -re -i input.mp4 -vf \"movie=sub.mp4,scale=480x320[test];[in][test]overlay=x=main_w-480:y=main_h-320[out]\" -vcodec libx264 output.flv<\/code><\/li><li><code>ffmpeg -re -i input.mp4 -vf \"movie=sub.mp4,scale=480x320[test];[in][test]overlay=x='if(gte(t,2), -w+(t-2)*20,NAN)':y=0[out]\" -vcodec libx264 output.flv<\/code><br>\u8fd9\u4e2a\u4f8b\u5b50\u901a\u8fc7\u5185\u7f6e\u53d8\u91cf\u5b9e\u73b0\u4e86\u8dd1\u9a6c\u706f\u5f0f\u7684\u753b\u4e2d\u753b\u6548\u679c\u3002<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%A4%9A%E5%AE%AB%E6%A0%BC\"><span class=\"ez-toc-section\" id=\"%E5%A4%9A%E5%AE%AB%E6%A0%BC\"><\/span>\u591a\u5bab\u683c<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u591a\u5bab\u683c\u548c\u753b\u4e2d\u753b\u5176\u5b9e\u6ca1\u6709\u672c\u8d28\u4e0a\u7684\u533a\u522b\uff0c\u90fd\u662f\u7528overlay\u8fd9\u4e2a\u6ee4\u955c\uff0c\u8fd9\u91cc\u5217\u4e00\u4e2a\u5b98\u65b9\u6587\u6863\u7684\u4f8b\u5b50\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">ffmpeg -i left.avi -i right.avi -filter_complex \"\nnullsrc=size=200x100 [background];\n[0:v] setpts=PTS-STARTPTS, scale=100x100 [left];\n[1:v] setpts=PTS-STARTPTS, scale=100x100 [right];\n[background][left]       overlay=shortest=1       [background+left];\n[background+left][right] overlay=shortest=1:x=100 [left+right]\n\"\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E9%9F%B3%E9%A2%91%E6%B5%81%E6%BB%A4%E9%95%9C%E6%93%8D%E4%BD%9C\"><span class=\"ez-toc-section\" id=\"%E9%9F%B3%E9%A2%91%E6%B5%81%E6%BB%A4%E9%95%9C%E6%93%8D%E4%BD%9C\"><\/span>\u97f3\u9891\u6d41\u6ee4\u955c\u64cd\u4f5c<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u53cc\u58f0\u9053\u5408\u5e76\u5355\u58f0\u9053<br><code>ffmpeg -i input.aac -ac 1 output.aac<\/code><\/li><li>\u53cc\u58f0\u9053\u63d0\u53d6<br><code>ffmpeg -i input.aac -filter_complex \"[0:0]pan=1c|c0=c0[left];[0:0]pan=1c|c0[right]\" -map \"[left]\" left.aac -map \"[right]\" right.aac<\/code><br><a href=\"http:\/\/ffmpeg.org\/ffmpeg-filters.html#pan\">pan\u6ee4\u955c\u7684\u4ecb\u7ecd<\/a><br>pan\u6ee4\u955c\u7684\u53c2\u6570\uff1a<code>l|outdef|outdef|...<\/code>\u3002<\/li><li>\u53cc\u58f0\u9053\u8f6c\u53cc\u97f3\u9891\u6d41<br><code>ffmpeg -i input.aac -filter_complex channelsplit=channel_layout=stereo output.mka<\/code><br>\u628a\u53cc\u58f0\u9053\u97f3\u9891\u8f6c\u4e3a\u4e86\u4e24\u4e2a\u5355\u58f0\u9053\u7684\u97f3\u9891\u6d41\u3002<\/li><li>\u5355\u58f0\u9053\u8f6c\u53cc\u58f0\u9053<br><code>ffmpeg -i left.aac -ac 2 output.m4a<\/code><\/li><li>\u4e24\u4e2a\u97f3\u9891\u6e90\u5408\u5e76\u53cc\u58f0\u9053<br>\u4e24\u4e2a\u5355\u58f0\u9053\u97f3\u9891\u6d41\u5408\u5e76\u4e3a\u4e00\u4e2astereo\u53cc\u58f0\u9053\u97f3\u9891\u6d41\uff1a<br><code>ffmpeg -i left.aac -i right.aac -filter_complex \"[0:a][1:a] amerge=inputs=2[aout]\" -map \"[aout]\" output.mka<\/code><\/li><li>\u591a\u97f3\u9891\u5408\u5e76\u4e3a\u591a\u58f0\u9053<br><code>ffmpeg -i front_left.wav -i front_right.wav -i front_center.wav -i lfe.wav -i back_left.wav -i back_right.wav -filter_complex \"[0:a][1:a][2:a][3:a][4:a][5:a] amerge=inputs=6[aout]\" -map \"[aout]\" output.wav<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E9%9F%B3%E9%A2%91%E9%9F%B3%E9%87%8F%E6%8E%A2%E6%B5%8B\"><span class=\"ez-toc-section\" id=\"%E9%9F%B3%E9%A2%91%E9%9F%B3%E9%87%8F%E6%8E%A2%E6%B5%8B\"><\/span>\u97f3\u9891\u97f3\u91cf\u63a2\u6d4b<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u97f3\u9891\u97f3\u91cf<br><code>ffmpeg -i output.wav -filter_complex volumedetect -c:v copy -f null \/dev\/null<\/code><\/li><li>\u7ed8\u5236\u97f3\u9891\u6ce2\u5f62<br><code>ffmpeg -i output.wav -filter_complex \"showwavespic=s=640x120:split_channels=1\" -frames:v 1 output.png<\/code><br><code>ffmpeg -i output.wav -filter_complex \"showwavespic=s=640x120\" -frames:v 1 output.png<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E4%B8%BA%E8%A7%86%E9%A2%91%E5%8A%A0%E5%AD%97%E5%B9%95\"><span class=\"ez-toc-section\" id=\"%E4%B8%BA%E8%A7%86%E9%A2%91%E5%8A%A0%E5%AD%97%E5%B9%95\"><\/span>\u4e3a\u89c6\u9891\u52a0\u5b57\u5e55<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u901a\u8fc7\u6ee4\u955c\u6dfb\u52a0ASS\u5b57\u5e55<br><code>ffmpeg -i input.mp4 -vf ass=t1.ass -f mp4 output.mp4<\/code><\/li><li>\u5c06ass\u5b57\u5e55\u5199\u5165\u5c01\u88c5\u5bb9\u5668\u4e2d<br><code>ffmpeg -i input.mp4 -i t1.ass -acodec copy -vcodec copy -scodec copy output.mkv<\/code><br><code>ffmpeg -i input.mp4 -i t1.ass -map 0:0 -map 0:1 -map 1:0 -acodec copy -vcodec copy -scodec copy output.mkv<\/code><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E6%89%A3%E5%9B%BE%E5%90%88%E5%B9%B6\"><span class=\"ez-toc-section\" id=\"%E6%89%A3%E5%9B%BE%E5%90%88%E5%B9%B6\"><\/span>\u6263\u56fe\u5408\u5e76<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f7f\u7528chromakey\u6ee4\u955c\u53ef\u4ee5\u8fdb\u884c\u6263\u56fe\u5904\u7406\uff0c\u7136\u540e\u901a\u8fc7overlay\u6ee4\u955c\u5c31\u53ef\u4ee5\u628a\u4e00\u4e2a\u7eaf\u8272\u80cc\u666f\u4e0b\u7684\u4eba\u7269\u878d\u5408\u5230\u53e6\u5916\u4e00\u4e2a\u753b\u9762\u4e2d\u53bb\u4e86\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">chromakey\u53c2\u6570\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u53c2\u6570<\/th><th>\u7c7b\u578b<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>color<\/td><td>\u989c\u8272<\/td><td>\u8bbe\u7f6echromakey\u989c\u8272\u503c\uff0c\u9ed8\u8ba4\u4e3a\u9ed1\u8272<\/td><\/tr><tr><td>similarity<\/td><td>\u6d6e\u70b9<\/td><td>\u8bbe\u7f6echromakey\u76f8\u4f3c\u503c<\/td><\/tr><tr><td>blend<\/td><td>\u6d6e\u70b9<\/td><td>\u8bbe\u7f6echromakey\u878d\u5408\u503c<\/td><\/tr><tr><td>yuv<\/td><td>\u5e03\u5c14<\/td><td>yuv\u4ee3\u66ffrgb\uff0c\u9ed8\u8ba4\u4e3afalse<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u989c\u8272\u4ee3\u53f7\u53ef\u4ee5\u901a\u8fc7<code>ffmpeg -colors<\/code>\u547d\u4ee4\u67e5\u8be2\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>ffmpeg -i input.mp4 -i input_green.mp4 -filter_complex \"[1:v]chromakey=Green:0.1:0.2[ckout];[0:v][ckout]overlay[out]\" -map \"[out]\" output.mp4<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u9664\u4e86chromakey\u6ee4\u955c\u8fd8\u53ef\u4ee5\u4f7f\u7528colorkey\u6ee4\u955c\uff0cchromakey\u7528\u4e8e\u5904\u7406YUV\u6570\u636e\uff0ccolorkey\u5904\u7406\u7eaf\u8272\u6570\u636e\u90fd\u53ef\u4ee5\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"3d%E8%A7%86%E9%A2%91%E5%A4%84%E7%90%86\"><span class=\"ez-toc-section\" id=\"3D%E8%A7%86%E9%A2%91%E5%A4%84%E7%90%86\"><\/span>3D\u89c6\u9891\u5904\u7406<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%AE%9A%E6%97%B6%E8%A7%86%E9%A2%91%E6%88%AA%E5%9B%BE\"><span class=\"ez-toc-section\" id=\"%E5%AE%9A%E6%97%B6%E8%A7%86%E9%A2%91%E6%88%AA%E5%9B%BE\"><\/span>\u5b9a\u65f6\u89c6\u9891\u622a\u56fe<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u83b7\u53d6\u6307\u5b9a\u65f6\u523b\u7684\u622a\u56fe<code>ffmpeg -i input.flv -ss 00:00:7.435 -vframes 1 out.png<\/code><\/li><li>\u7528fps\u6ee4\u955c\u83b7\u53d6\u56fe\u7247<ul><li><code>ffmpeg -i input.flv -vf fps=1 out%d.png<\/code><br>1\u79d2\u949f\u622a\u56fe\u4e00\u6b21<\/li><li><code>ffmpeg -i input.flv -vf fps=1\/60 img%03d.jpg<\/code><br>1\u5206\u949f\u622a\u56fe\u4e00\u6b21<\/li><li><code>ffmpeg -i input.flv -vf fps=1\/600 thumb%04d.bmp<\/code><br>10\u5206\u949f\u622a\u56fe\u4e00\u6b21<\/li><li><code>ffmpeg -i input.flv -vf \"select='eq(pict_type,PICT_TYPE_I)'\" -vsync vfr thumb%04d.png<\/code><br>\u6309\u7167I\u5e27\u622a\u56fe<\/li><\/ul><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E7%94%9F%E6%88%90%E6%B5%8B%E8%AF%95%E5%85%83%E6%95%B0%E6%8D%AE\"><span class=\"ez-toc-section\" id=\"%E7%94%9F%E6%88%90%E6%B5%8B%E8%AF%95%E5%85%83%E6%95%B0%E6%8D%AE\"><\/span>\u751f\u6210\u6d4b\u8bd5\u5143\u6570\u636e<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u751f\u6210\u97f3\u9891\u6d4b\u8bd5\u6d41<br>\u53ef\u4ee5\u901a\u8fc7lavfi\u865a\u62df\u97f3\u9891\u6e90\u7684abuffer\u3001aevalsrc\u3001anullsrc\u3001flite\u3001anoisesrc\u3001sine\u6ee4\u955c\u751f\u6210\u97f3\u9891\u6d41\uff1a<ul><li><code>ffmpeg -re -f lavfi -i abuffer=sample_rate=44100:sample_fmt=s16p:channel_layout=stereo -acodec aac -y output.aac<\/code><\/li><li><code>ffmpeg -re -f lavfi \"aevalsrc=sin(420*2*PI*t)|cos(430*2*PIT*t):c=FC|BC\" -acodec aac output.aac<\/code><\/li><\/ul><\/li><li>\u751f\u6210\u89c6\u9891\u6d4b\u8bd5\u6d41<br>\u53ef\u4ee5\u901a\u8fc7lavfi\u865a\u62df\u89c6\u9891\u6e90\u7684allrgb\u3001allyuv\u3001color\u3001haldclutsrc\u3001nullsrc\u3001rgbtestsrc\u3001smptebars\u3001smptehdbars\u3001testsrc\u3001testsrc2\u3001yuvtestsr\u7b49\u6ee4\u955c\u751f\u6210\u89c6\u9891\u6d41\uff1a<ul><li><code>ffmpeg -re -f lavfi -i testsrc=duration=5.3:size=qcif:rate=25 -vcodec libx264 -r:v 25 output.mp4<\/code><\/li><li><code>ffmpeg -re -f lavfi -i testsrc2=duration=5.3:size=qcif:rate=25 -vcodec libx264 -r:v 25 output.mp4<\/code><\/li><li><code>ffmpeg -re -f lavfi -i color=c=red@0.2:s=qcif:r=25 -vcodec libx264 -r:v 25 output.mp4<\/code><\/li><li><code>ffmpeg -re -f lavfi -i \"nullsrc=s=256x256, geq=random(1)*255:128:128\" -vcodec libx264 -r:v 25 output.mp4<\/code><\/li><\/ul><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"%E5%80%8D%E9%80%9F%E5%A4%84%E7%90%86\"><span class=\"ez-toc-section\" id=\"%E5%80%8D%E9%80%9F%E5%A4%84%E7%90%86\"><\/span>\u500d\u901f\u5904\u7406<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u97f3\u9891\u500d\u901f\u5904\u7406<br>atempo\u6ee4\u955c\u53ef\u4ee5\u7528\u6765\u5904\u7406\u97f3\u9891\u7684\u500d\u901f\uff0c\u5176\u53ea\u6709\u4e00\u4e2a\u53c2\u6570tempo\uff0c\u53d6\u503c0.5\u52302.0\u4e4b\u95f4\uff0c\u5206\u522b\u8868\u793a\u901f\u5ea6\u4e3a\u539f\u6765\u7684\u4e00\u534a\u548c2\u500d\u3002<ul><li><code>ffmpeg -i input.wav -filter_complex \"atempo=tempo=0.5\" -acodec aac output.aac<\/code><\/li><li><code>ffmpeg -i input.wav -filter_complex \"atempo=tempo=2.0\" -acodec aac output.aac<\/code><\/li><\/ul><\/li><li>\u89c6\u9891\u500d\u901f\u5904\u7406<br>seepts\u6ee4\u955c\u7528\u4e8e\u5904\u7406\u89c6\u9891\u500d\u901f\uff0c\u5176\u53ea\u6709\u4e00\u4e2a\u53c2\u6570expr\uff0c\u7528\u4e8e\u63cf\u8ff0\u89c6\u9891\u7684\u6bcf\u4e00\u5e27\u7684\u65f6\u95f4\u6233\u3002\u503c\u8bf4\u660eFRAME_RATE\u6839\u636e\u5e27\u7387\u8bbe\u7f6e\u5e27\u7387\u503c\uff0c\u53ea\u7528\u4e8e\u56fa\u5b9a\u9891\u7387PTS\u8f93\u5165\u7684pts\u65f6\u95f4\u6233RTCTIME\u4f7f\u7528RTC\u7684\u65f6\u95f4\u4f5c\u4e3a\u65f6\u95f4\u6233(\u5373\u5c06\u5f03\u7528)TB\u8f93\u5165\u7684\u65f6\u95f4\u6233\u7684\u65f6\u95f4\u57fa(timebase)<ul><li><code>ffmpeg -re -i input.mp4 -filter_complex \"septs=PTS*2\" output.mp4<\/code><br>\u8fd9\u4e2a\u547d\u4ee4\u628a\u539f\u6765\u7684\u89c6\u9891\u8c03\u6574\u4e3a\u4e86\u534a\u901f\u64ad\u653e\u3002<\/li><li><code>ffmpeg -re -i input.mp4 -filter_complex \"septs=PTS\/2\" output.mp4<\/code><br>\u8fd9\u4e2a\u547d\u4ee4\u628a\u539f\u6765\u7684\u89c6\u9891\u8c03\u6574\u4e3a\u4e862\u500d\u901f\u64ad\u653e\u3002<\/li><\/ul><\/li><\/ul>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"%E7%AC%AC%E4%B8%83%E7%AB%A0-ffmpeg%E9%87%87%E9%9B%86%E8%AE%BE%E5%A4%87\"><span class=\"ez-toc-section\" id=\"%E7%AC%AC%E4%B8%83%E7%AB%A0_FFmpeg%E9%87%87%E9%9B%86%E8%AE%BE%E5%A4%87\"><\/span>\u7b2c\u4e03\u7ae0 FFmpeg\u91c7\u96c6\u8bbe\u5907<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"linux\"><span class=\"ez-toc-section\" id=\"Linux\"><\/span>Linux<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\u67e5\u770b\u8bbe\u5907\u5217\u8868<code>ffmpeg -devices<\/code><\/li><li>\u4ecefbdev\u4e2d\u91c7\u96c6fbdev\u662f\u7ec8\u7aef\u91cc\u7684\u56fe\u50cf<code>ffmpeg -framerate 30 -f fbdev -i \/dev\/fb0 output.mp4<\/code><\/li><li>\u4ecev4l2\u91c7\u96c6v4l2\u662f\u6444\u50cf\u5934\u91c7\u96c6\u5230\u7684\u56fe\u50cf<code><em># \u67e5\u8be2\u6444\u50cf\u5934\u652f\u6301\u7684\u683c\u5f0f<\/em> ffmpeg -f v4l2 -list_formats all -i \/dev\/video0 <em># \u4ece\u6444\u50cf\u5934\u5f55\u50cf<\/em> ffmpeg -s 1920x1080 -i \/dev\/video0 output.avi<\/code><\/li><li>\u4ecex11grab\u91c7\u96c6<br>\u8fd9\u4e2a\u662f\u91c7\u96c6\u7684\u684c\u9762\u4e0a\u663e\u793a\u7684\u56fe\u50cf\u3002x11grab\u652f\u6301\u7684\u53c2\u6570\uff1a\u53c2\u6570\u7c7b\u578b\u8bf4\u660edraw_mouse\u6574\u6570\u652f\u6301\u7ed8\u5236\u9f20\u6807\u5149\u6807follow_mouse\u6574\u6570\u8ddf\u8e2a\u9f20\u6807\u8f68\u8ff9\u6570\u636eframerate\u5b57\u7b26\u4e32\u8f93\u5165\u91c7\u96c6\u7684\u89c6\u9891\u5e27\u7387show_region\u6574\u6570\u83b7\u5f97\u8f93\u5165\u684c\u9762\u7684\u6307\u5b9a\u533a\u57dfregion_border\u6574\u6570\u5f53show_region\u4e3a1\u65f6\uff0c\u8bbe\u7f6e\u8f93\u5165\u6307\u5b9a\u533a\u57df\u7684\u8fb9\u6846\u7684\u7c97\u7ec6\u7a0b\u5ea6video_size\u5b57\u7b26\u4e32\u8f93\u5165\u91c7\u96c6\u89c6\u9891\u7684\u5206\u8fa8\u7387\u8f93\u5165\u8bbe\u5907\u7684\u547d\u540d\u89c4\u5219\uff1a<em>[\u4e3b\u673a\u540d]:\u663e\u793a\u7f16\u53f7id.\u5c4f\u5e55\u7f16\u53f7id[+\u8d77\u59cbx\u8f74,\u8d77\u59cby\u8f74]<\/em><\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">  # \u684c\u9762\u5f55\u5236\n  ffmpeg -f x11grab -framerate 25 -video_size 1366x768 -i :0.0 out.mp4\n  # \u684c\u9762\u5f55\u5236\u6307\u5b9a\u533a\u57df\n  ffmpeg -f x11grab -framerate 25 -video_size 352x288 -i :0.0+300,200 out.mp4\n  # \u684c\u9762\u5f55\u5236\u5e26\u9f20\u6807\u8bb0\u5f55\u7684\u89c6\u9891\n  ffmpeg -f x11grab -video_size 1366x768 -follow_mouse 1 -i :0.0 out.mp4<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u7b2c\u4e00\u7ae0 FFmpeg\u7b80\u4ecb FFmpege\u7684\u5b9a\u4e49 FF\uff1aFast Forward\u3002mpeg\uff1aMoving Picture Experts Group\u3002 FFmpeg\u7684\u5386\u53f2 \u521b\u59cb\u4eba\uff1aFabrice Bel&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[19,9,22],"class_list":["post-135","post","type-post","status-publish","format-standard","hentry","category-10","tag-ffmpeg","tag-9","tag-22"],"_links":{"self":[{"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=\/wp\/v2\/posts\/135","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=135"}],"version-history":[{"count":9,"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=\/wp\/v2\/posts\/135\/revisions"}],"predecessor-version":[{"id":739,"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=\/wp\/v2\/posts\/135\/revisions\/739"}],"wp:attachment":[{"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=135"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=135"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.cauchyschwarz.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=135"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}