From patchwork Sun Jan 15 16:10:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefano Sabatini X-Patchwork-Id: 40021 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1d43:b0:b8:6755:f97e with SMTP id cs3csp444762pzb; Sun, 15 Jan 2023 08:16:44 -0800 (PST) X-Google-Smtp-Source: AMrXdXv1NVM3vPu8B+2RAv58YgLPcxMf7ta2rFqhr1kMJFwrm+mWRyw51GX8hVRo3Wd61zMlrE52 X-Received: by 2002:aa7:c418:0:b0:492:609a:f148 with SMTP id j24-20020aa7c418000000b00492609af148mr28555533edq.3.1673799404231; Sun, 15 Jan 2023 08:16:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673799404; cv=none; d=google.com; s=arc-20160816; b=rh2wazxYOGgJ69hlsYlX9QcY1U2EoYJt6HR+CRuZ7EcNhrNBt4RFD9he95WZjrFo6Y vm63dpl7ha4mfqVPrByB90R9ONxqqt46E7ViTgy9qj1CV8IPxy/mzYlMesRmtsAT6pnM 1UAG4D0nA4Dzg02zp3U6UvQ2zeAHm0SSnQLth3pPFZPBGGU3I4nZIOnnyZORj4tWyGki UxT4UTrVwq43OapjYM1SSb9egXfLUIDEcWc7NfaEMT1OT6p2E/I0dQg/5/pb/FWkvW8M creKTPZCQxrpP7Pc2kbT53GpQ1/ahVYCw9UU99GHUR7PRuwU3vElUojgjJsNlkxFiaqu RuHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=DWApnk3vAOLaF47YF5rXqycGQgpX7WVGTLrhljleP5w=; b=n5WHBcCcW9cAigyE+3Kgp08AcGtQKhECeMMcQqmcAhw7v0SV4DC3Ht+ItSneZBHQ6U kHmKTxe01etYnBHpB7w8ITzuqzJchIYPcvob4wGy57SiNJrWQnRC+OpWwiml1VWR39+L It9CjHD88U/AKdupcYPyPEypCBkdxqioEBd/MeFGc/w/o3lEkHggI0RhXHPRaSGGCqmS I8XKu6Yc17F7U9h7NwXwt4ubFMeqCwfBE/lh/RARP1PTQcJvsKKDnht6J4FcEactiP6w R+cmaW15vM5uOhKH5b+e+HTsR42QxyTfvPldmZlMY7mF6cbcgQHKcnQxiVJJQwcFv/8g RA6Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b="dOPrDW/r"; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id u12-20020a50eacc000000b00484111b4313si25647470edp.177.2023.01.15.08.16.43; Sun, 15 Jan 2023 08:16:44 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b="dOPrDW/r"; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C47CD68BCE2; Sun, 15 Jan 2023 18:16:20 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.49]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BF87B68BD45 for ; Sun, 15 Jan 2023 18:16:13 +0200 (EET) Received: by mail-ej1-f49.google.com with SMTP id u9so62949495ejo.0 for ; Sun, 15 Jan 2023 08:16:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=vlUHmRqbfzdIrVSN3KTTr7oeCb7/CUJBFt3JkzKjcMw=; b=dOPrDW/rGE6P7nQ1b8t4k2ema5sQ8cjdjQ95bYQ2ghZ6HIwJyJ1kzj3ep6HXLoecpy 7Oq0micET9UR7NWthFRZMlGtRbCPr5VV2tT+hXpQcyV9BAWB8s/U+vKHe7Z05srlp1fq NCCr0yt5CqLFZjLOK/ztf/0qSa3a1alDYu1AzVK9rheelDlMlhUQSEo+O8cyQM00jZDA PWBl6npWErM+whtZmadlZ6vwDrWfW2eqy6/SvLtvLBGCLI8/TD5SXRuvo8QNQKAdG0mn usOH/CJEfV543z4TSpxinXOx7/2449nSmqWgfHYnavND8sWxo9VrRzuacxbrFtr3DDzl c5Sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vlUHmRqbfzdIrVSN3KTTr7oeCb7/CUJBFt3JkzKjcMw=; b=HMjVYVn/xW7H4b3H2oiA/MCZDwAvK9OV9ugwzaSG21Lj462Oim7lAuEP7ANDs+n/jG 3RSJdcigeBfyx2/OcwFjHXe/3KpbwCGNCDl9nKFg8kNRUlgt8yx4B8AsIqBROXYSSYno f6jly+2pws1T0hUvC6w2scSKkhXnigvbjLYyXtnQIKKWbNyxmQzVap+7KeaEOfSMqDmc bX3UQiqmEt7iLTRLmFphAE0PuIiBOk+xYI6w//pXGsbR0liZeWrZYcXu8sLur5GHGLOI /UDHHpd8euJNcZDUwyh0cAXyj+Zu0CdtjOH0qoEexQIcTxONP6ZMJJmpHW48ENgFuy29 uhiw== X-Gm-Message-State: AFqh2krYryDS68wAH2jwpL+GEAG3vCU3NC2CX24dtI890X08Jpw7hVFJ IBFhIghkcMmVuKSjUQ1L8LpP7xtPneFXHQ== X-Received: by 2002:a17:906:fb05:b0:86e:38ae:8713 with SMTP id lz5-20020a170906fb0500b0086e38ae8713mr4631973ejb.51.1673799372382; Sun, 15 Jan 2023 08:16:12 -0800 (PST) Received: from mariano ([82.84.225.92]) by smtp.gmail.com with ESMTPSA id ky16-20020a170907779000b007bd0bb6423csm10772732ejc.199.2023.01.15.08.16.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Jan 2023 08:16:08 -0800 (PST) Received: by mariano (Postfix, from userid 1000) id 46A0ABFB81; Sun, 15 Jan 2023 17:10:50 +0100 (CET) From: Stefano Sabatini To: FFmpeg development discussions and patches Date: Sun, 15 Jan 2023 17:10:34 +0100 Message-Id: <20230115161035.584474-15-stefasab@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230115161035.584474-1-stefasab@gmail.com> References: <20230115161035.584474-1-stefasab@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 14/15] examples: apply consistency fixes to doxy entries X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Stefano Sabatini Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: SCPzcIG/+Xlp Use consistent format for the @file field and file description. --- doc/examples/avio_http_serve_files.c | 9 ++++----- doc/examples/avio_list_dir.c | 5 ++--- doc/examples/avio_read_callback.c | 5 ++--- doc/examples/decode_audio.c | 7 ++++--- doc/examples/decode_filter_audio.c | 6 ++++-- doc/examples/decode_video.c | 7 ++++--- doc/examples/demux_decode.c | 10 +++++----- doc/examples/encode_audio.c | 6 +++--- doc/examples/encode_video.c | 6 +++--- doc/examples/extract_mvs.c | 8 ++++++++ doc/examples/filter_audio.c | 10 ++++------ doc/examples/hw_decode.c | 9 ++++----- doc/examples/mux.c | 9 ++++----- doc/examples/qsv_decode.c | 9 ++++----- doc/examples/qsv_transcode.c | 12 +++++------- doc/examples/remux.c | 8 ++++---- doc/examples/resample_audio.c | 6 +++++- doc/examples/scale_video.c | 5 +++-- doc/examples/show_metadata.c | 5 +++-- doc/examples/transcode.c | 6 ++++-- doc/examples/transcode_aac.c | 9 ++++----- doc/examples/vaapi_encode.c | 11 ++++------- doc/examples/vaapi_transcode.c | 9 +++------ 23 files changed, 90 insertions(+), 87 deletions(-) diff --git a/doc/examples/avio_http_serve_files.c b/doc/examples/avio_http_serve_files.c index d6a1d146f3..2aae3870c2 100644 --- a/doc/examples/avio_http_serve_files.c +++ b/doc/examples/avio_http_serve_files.c @@ -21,12 +21,11 @@ */ /** - * @file - * libavformat multi-client network API usage example. - * + * @file libavformat multi-client network API usage example * @example avio_http_serve_files.c - * This example will serve a file without decoding or demuxing it over http. - * Multiple clients can connect and will receive the same file. + * + * Serve a file without decoding or demuxing it over the HTTP protocol. Multiple + * clients can connect and will receive the same file. */ #include diff --git a/doc/examples/avio_list_dir.c b/doc/examples/avio_list_dir.c index 13b46e1718..bb19debad3 100644 --- a/doc/examples/avio_list_dir.c +++ b/doc/examples/avio_list_dir.c @@ -21,11 +21,10 @@ */ /** - * @file - * libavformat AVIOContext API example to list directory. + * @file libavformat AVIOContext list directory API usage example + * @example avio_list_dir.c * * Show how to list directories through the libavformat AVIOContext API. - * @example avio_list_dir.c */ #include diff --git a/doc/examples/avio_read_callback.c b/doc/examples/avio_read_callback.c index e57a66bdec..4cf81ad72e 100644 --- a/doc/examples/avio_read_callback.c +++ b/doc/examples/avio_read_callback.c @@ -21,12 +21,11 @@ */ /** - * @file - * libavformat AVIOContext API example. + * @file libavformat AVIOContext read callback API usage example + * @example avio_read_callback.c * * Make libavformat demuxer access media content through a custom * AVIOContext read callback. - * @example avio_read_callback.c */ #include diff --git a/doc/examples/decode_audio.c b/doc/examples/decode_audio.c index 49ad22cba6..bcb3d87a69 100644 --- a/doc/examples/decode_audio.c +++ b/doc/examples/decode_audio.c @@ -21,10 +21,11 @@ */ /** - * @file - * audio decoding with libavcodec API example - * + * @file libavcodec audio decoding API usage example * @example decode_audio.c + * + * Decode data from an MP2 input file and generate a raw audio file to + * be played with ffplay. */ #include diff --git a/doc/examples/decode_filter_audio.c b/doc/examples/decode_filter_audio.c index 607237bf11..2046419819 100644 --- a/doc/examples/decode_filter_audio.c +++ b/doc/examples/decode_filter_audio.c @@ -23,9 +23,11 @@ */ /** - * @file - * API example for audio decoding and filtering + * @file audio decoding and filtering usage example * @example decode_filter_audio.c + * + * Demux, decode and filter audio input file, generate a raw audio + * file to be played with ffplay. */ #include diff --git a/doc/examples/decode_video.c b/doc/examples/decode_video.c index 7238e38103..81ec4b50e2 100644 --- a/doc/examples/decode_video.c +++ b/doc/examples/decode_video.c @@ -21,10 +21,11 @@ */ /** - * @file - * video decoding with libavcodec API example + * @file libavcodec video decoding API usage example + * @example decode_video.c * * - * @example decode_video.c + * Read from an MPEG1 video file, decode frames, and generate PGM images as + * output. */ #include diff --git a/doc/examples/demux_decode.c b/doc/examples/demux_decode.c index a2ca53b26b..ebef7a6114 100644 --- a/doc/examples/demux_decode.c +++ b/doc/examples/demux_decode.c @@ -21,12 +21,12 @@ */ /** - * @file - * libavformat and libavcodec API example to demux and decode. - * - * Show how to use the libavformat and libavcodec API to demux and - * decode audio and video data. + * @file libavformat and libavcodec demuxing and decoding API usage example * @example demux_decode.c + * + * Show how to use the libavformat and libavcodec API to demux and decode audio + * and video data. Write the output as raw audio and input files to be played by + * ffplay. */ #include diff --git a/doc/examples/encode_audio.c b/doc/examples/encode_audio.c index 4688084e29..bb16683d94 100644 --- a/doc/examples/encode_audio.c +++ b/doc/examples/encode_audio.c @@ -21,10 +21,10 @@ */ /** - * @file - * libavcodec API example to encode audio. - * + * @file libavcodec encoding audio API usage examples * @example encode_audio.c + * + * Generate a synthetic audio signal and encode it to an output MP2 file. */ #include diff --git a/doc/examples/encode_video.c b/doc/examples/encode_video.c index e9365e4bbd..4fae146f2e 100644 --- a/doc/examples/encode_video.c +++ b/doc/examples/encode_video.c @@ -21,10 +21,10 @@ */ /** - * @file - * libavcodec API example to encode video - * + * @file libavcodec encoding video API usage example * @example encode_video.c + * + * Generate synthetic video data and encode it to an output file. */ #include diff --git a/doc/examples/extract_mvs.c b/doc/examples/extract_mvs.c index b80ba26bb7..5603064d72 100644 --- a/doc/examples/extract_mvs.c +++ b/doc/examples/extract_mvs.c @@ -21,6 +21,14 @@ * THE SOFTWARE. */ +/** + * @file libavcodec motion vectors extraction API usage example + * @example extract_mvs.c + * + * Read from input file, decode video stream and print a motion vectors + * representation to stdout. + */ + #include #include #include diff --git a/doc/examples/filter_audio.c b/doc/examples/filter_audio.c index f53e52562b..9e4039b900 100644 --- a/doc/examples/filter_audio.c +++ b/doc/examples/filter_audio.c @@ -19,13 +19,11 @@ */ /** - * @file - * libavfilter API usage example. - * + * @file libavfilter audio filtering API usage example * @example filter_audio.c - * This example will generate a sine wave audio, - * pass it through a simple filter chain, and then compute the MD5 checksum of - * the output data. + * + * This example will generate a sine wave audio, pass it through a simple filter + * chain, and then compute the MD5 checksum of the output data. * * The filter chain it uses is: * (input) -> abuffer -> volume -> aformat -> abuffersink -> (output) diff --git a/doc/examples/hw_decode.c b/doc/examples/hw_decode.c index 0d23f451e6..6a4a4fb83d 100644 --- a/doc/examples/hw_decode.c +++ b/doc/examples/hw_decode.c @@ -24,12 +24,11 @@ */ /** - * @file - * HW-Accelerated decoding example. - * + * @file HW-accelerated decoding API usage.example * @example hw_decode.c - * This example shows how to do HW-accelerated decoding with output - * frames from the HW video surfaces. + * + * Perform HW-accelerated decoding with output frames from HW video + * surfaces. */ #include diff --git a/doc/examples/mux.c b/doc/examples/mux.c index e3062c5003..d1f682e196 100644 --- a/doc/examples/mux.c +++ b/doc/examples/mux.c @@ -21,12 +21,11 @@ */ /** - * @file - * libavformat API example. - * - * Output a media file in any supported libavformat format. The default - * codecs are used. + * @file libavformat muxing API usage example * @example mux.c + * + * Generate a synthetic audio and video signal and mux them to a media file in + * any supported libavformat format. The default codecs are used. */ #include diff --git a/doc/examples/qsv_decode.c b/doc/examples/qsv_decode.c index 0cdef4466c..cc2662d5bd 100644 --- a/doc/examples/qsv_decode.c +++ b/doc/examples/qsv_decode.c @@ -21,12 +21,11 @@ */ /** - * @file - * Intel QSV-accelerated H.264 decoding example. - * + * @file Intel QSV-accelerated H.264 decoding API usage example * @example qsv_decode.c - * This example shows how to do QSV-accelerated H.264 decoding with output - * frames in the GPU video surfaces. + * + * Perform QSV-accelerated H.264 decoding with output frames in the + * GPU video surfaces, write the decoded frames to an output file. */ #include "config.h" diff --git a/doc/examples/qsv_transcode.c b/doc/examples/qsv_transcode.c index 9b37bbea9f..7ea3ef5674 100644 --- a/doc/examples/qsv_transcode.c +++ b/doc/examples/qsv_transcode.c @@ -1,6 +1,4 @@ /* - * Quick Sync Video (video transcoding) transcode sample - * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights @@ -21,12 +19,12 @@ */ /** - * @file - * Intel QSV-accelerated transcoding example. - * + * @file Intel QSV-accelerated video transcoding API usage example * @example qsv_transcode.c - * This example shows how to do QSV-accelerated transcoding and how to - * dynamically change encoder's option. + * + * Perform QSV-accelerated transcoding and show to dynamically change + * encoder's options. + * * Usage: qsv_transcode input_stream codec output_stream initial option * { frame_number new_option } * e.g: - qsv_transcode input.mp4 h264_qsv output_h264.mp4 "g 60" diff --git a/doc/examples/remux.c b/doc/examples/remux.c index 8855199c60..ecf30489f1 100644 --- a/doc/examples/remux.c +++ b/doc/examples/remux.c @@ -21,11 +21,11 @@ */ /** - * @file - * libavformat/libavcodec demuxing and muxing API example. - * - * Remux streams from one container format to another. + * @file libavformat/libavcodec demuxing and muxing API usage example * @example remux.c + * + * Remux streams from one container format to another. Data is copied from the + * input to the output without transcoding. */ #include diff --git a/doc/examples/resample_audio.c b/doc/examples/resample_audio.c index 890d30c934..db9b4e5e08 100644 --- a/doc/examples/resample_audio.c +++ b/doc/examples/resample_audio.c @@ -21,8 +21,12 @@ */ /** + * @file audio resampling API usage example * @example resample_audio.c - * libswresample API use example. + * + * Generate a synthetic audio signal, and Use libswresample API to perform audio + * resampling. The output is written to a raw audio file to be played with + * ffplay. */ #include diff --git a/doc/examples/scale_video.c b/doc/examples/scale_video.c index 27cd00996d..cb4da4a576 100644 --- a/doc/examples/scale_video.c +++ b/doc/examples/scale_video.c @@ -21,9 +21,10 @@ */ /** - * @file - * libswscale API use example. + * @file libswscale API usage example * @example scale_video.c + * + * Generate a synthetic video signal and use libswscale to perform rescaling. */ #include diff --git a/doc/examples/show_metadata.c b/doc/examples/show_metadata.c index f7f07bf598..abe3cc0cae 100644 --- a/doc/examples/show_metadata.c +++ b/doc/examples/show_metadata.c @@ -21,9 +21,10 @@ */ /** - * @file - * Shows how the metadata API can be used in application programs. + * @file libavformat metadata extraction API usage example * @example show_metadata.c + * + * Show metadata from an input file. */ #include diff --git a/doc/examples/transcode.c b/doc/examples/transcode.c index b0f4fb0399..805a028ed7 100644 --- a/doc/examples/transcode.c +++ b/doc/examples/transcode.c @@ -23,9 +23,11 @@ */ /** - * @file - * API example for demuxing, decoding, filtering, encoding and muxing + * @file demuxing, decoding, filtering, encoding and muxing API usage example * @example transcode.c + * + * Convert input to output file, applying some hard-coded filter-graph on both + * audio and video streams. */ #include diff --git a/doc/examples/transcode_aac.c b/doc/examples/transcode_aac.c index 2d4f9a59d3..bb5681a7c0 100644 --- a/doc/examples/transcode_aac.c +++ b/doc/examples/transcode_aac.c @@ -19,12 +19,11 @@ */ /** - * @file - * Simple audio converter - * + * @file audio transcoding to MPEG/AAC API usage example * @example transcode_aac.c - * Convert an input audio file to AAC in an MP4 container using FFmpeg. - * Formats other than MP4 are supported based on the output file extension. + * + * Convert an input audio file to AAC in an MP4 container. Formats other than + * MP4 are supported based on the output file extension. * @author Andreas Unterweger (dustsigns@gmail.com) */ diff --git a/doc/examples/vaapi_encode.c b/doc/examples/vaapi_encode.c index e232fa579a..d5f472f6dd 100644 --- a/doc/examples/vaapi_encode.c +++ b/doc/examples/vaapi_encode.c @@ -1,6 +1,4 @@ /* - * Video Acceleration API (video encoding) encode sample - * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights @@ -21,13 +19,12 @@ */ /** - * @file - * Intel VAAPI-accelerated encoding example. - * + * @file Intel VAAPI-accelerated encoding API usage example * @example vaapi_encode.c - * This example shows how to do VAAPI-accelerated encoding. now only support NV12 - * raw file, usage like: vaapi_encode 1920 1080 input.yuv output.h264 * + * Perform VAAPI-accelerated encoding. Read input from an NV12 raw + * file, and write the H.264 encoded data to an output raw file. + * Usage: vaapi_encode 1920 1080 input.yuv output.h264 */ #include diff --git a/doc/examples/vaapi_transcode.c b/doc/examples/vaapi_transcode.c index a174bb643a..8367cb3040 100644 --- a/doc/examples/vaapi_transcode.c +++ b/doc/examples/vaapi_transcode.c @@ -1,6 +1,4 @@ /* - * Video Acceleration API (video transcoding) transcode sample - * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights @@ -21,11 +19,10 @@ */ /** - * @file - * Intel VAAPI-accelerated transcoding example. - * + * @file Intel VAAPI-accelerated transcoding API usage example * @example vaapi_transcode.c - * This example shows how to do VAAPI-accelerated transcoding. + * + * Perform VAAPI-accelerated transcoding. * Usage: vaapi_transcode input_stream codec output_stream * e.g: - vaapi_transcode input.mp4 h264_vaapi output_h264.mp4 * - vaapi_transcode input.mp4 vp9_vaapi output_vp9.ivf