From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id A2DEC4BA3E for ; Sat, 26 Apr 2025 20:51:39 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5668C68B643; Sat, 26 Apr 2025 23:51:01 +0300 (EEST) Received: from mail-wr1-f66.google.com (mail-wr1-f66.google.com [209.85.221.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5A90268B39C for ; Sat, 26 Apr 2025 23:49:59 +0300 (EEST) Received: by mail-wr1-f66.google.com with SMTP id ffacd0b85a97d-3913b539aabso1933029f8f.2 for ; Sat, 26 Apr 2025 13:49:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jkqxz-net.20230601.gappssmtp.com; s=20230601; t=1745700598; x=1746305398; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=sTcBL8WVY9UV8yAATRUBIz5pC6D6Jwkg79GNB7hkz/o=; b=S1OJJtdJySLG5uqoXDAJrxna21WP5fyPcHIx1EEDOZ5Krx9LHZxCxX8/2xKZAB5TRl iaqryJuYvDcCDSNlhBIwFpgsuKXgo8VsK0cBpLbkY8TzL7AHoSm5/PDmuX/E3DOYs3QO LcFyZvoe+XyEdPoAPR32pCc+sE49fR8Sg7MvpF1WW1S2DC8qEQKZcDoNXO5HKeBzcqrb znb0wEH7kEeWrqeaP7myrMuXqrGIJlCaKWIJHnV4Q9O8BH1Qi3cKaL3i57pmvSHqzXPc rBknZOnyhjID1D84Rv5DgFO48yTAWPuqkzwwUhMYI/UgwTbw578jlfZ4kvIaAFvIQ3UT mtFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745700598; x=1746305398; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sTcBL8WVY9UV8yAATRUBIz5pC6D6Jwkg79GNB7hkz/o=; b=qps730NAhJaKyeCC9jmVR63O8JgXufn16aAga7eZVwoX1h3tXSudpvOKnogA5jkieG M1CFctOCrUu5xWO+Ciyywer8dkh9qflT56FgSkgUM0wgXNl5BxDxz+5lYUoixg6Po0PA vpEYtUs4tBUN/0QdhrqHd50SYPsYH95eJggvWBbZ7EHN6r8J/4ic6L6lju8d/bykq/Pt XLDmbVqx10q8KY2Fi9fjkBEwEQCIRCXoN5IHhnZ+ZAV8aND2kfo9S25BZgV7GMaLDx7j uFHnu05jfvCVRvtcLDMfKNi0wopH1lRg8fDMWsjbIi0ornWKJbW1PiuRqYPyVfrPWksB j36w== X-Gm-Message-State: AOJu0YzxVX59oqNoFgMkQgzEwH5iLXrvcsSlgYxTIKmjq9xfnjTAQ9ku KG9Dc/fIiVAzIcsmtNe2fKkenPETHuGPOOHyDTU+fNXlEhh6gst8ir3Dl581joHsJlYj8M1EPVb fo1+KvReG X-Gm-Gg: ASbGncty6pBsgC1rZmfwekpJX0R9FP8yKTnERujd7pSBlg1zJqRYj1JbBm0Lu++GyzJ WqDUk22R6os3Q5SdFQ9N8/Y/eXlVBn1POKA0DnMTYgPCwbc7UZdfiRwz2jr/IcuHJCXqDMW8zWZ IAKioGo+JQVjrkQN7Rv67KX9Xd5fVd20PepITqlyZTGbsYi1WeEeNF3U962cScxinRfmCjeJQyS ypWww1v4muXEjLWmcBdxxxU0JSfFbL3fkZShW03qskBwOxNAumI5K+czH/w0DD6a0PpKUILZHxq zoR1nFxJ5j/Uod43o4NCJ+j4j32NLkYIjm2xg5lxK3xP0qHsJ4RUDPjtrC2TSxf8tbOumpmAwMy yUQ2B6+lCdJMRBjojTVkfDNHPO8EIkbR2Ig== X-Google-Smtp-Source: AGHT+IH/wFxDsZuHF+2gNBecQtGyVtgHYlvyIYD3AzciAamthgVunBTW2SNk6SS3tlLsuGVICD9WPg== X-Received: by 2002:adf:eb04:0:b0:39c:1efc:b02 with SMTP id ffacd0b85a97d-3a07aa6c8f5mr1933430f8f.28.1745700598371; Sat, 26 Apr 2025 13:49:58 -0700 (PDT) Received: from localhost.localdomain (cpc92320-cmbg19-2-0-cust719.5-4.cable.virginm.net. [82.13.66.208]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a07a7c39a0sm3766321f8f.101.2025.04.26.13.49.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 26 Apr 2025 13:49:58 -0700 (PDT) From: Mark Thompson To: ffmpeg-devel@ffmpeg.org Date: Sat, 26 Apr 2025 21:49:38 +0100 Message-ID: <20250426204944.71587-8-sw@jkqxz.net> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250426204944.71587-1-sw@jkqxz.net> References: <20250426204944.71587-1-sw@jkqxz.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v4 7/7] lavf: APV muxer 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --- libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/apvenc.c | 40 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 libavformat/apvenc.c diff --git a/libavformat/Makefile b/libavformat/Makefile index ef96c2762e..6c9992adab 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -120,6 +120,7 @@ OBJS-$(CONFIG_APTX_MUXER) += rawenc.o OBJS-$(CONFIG_APTX_HD_DEMUXER) += aptxdec.o OBJS-$(CONFIG_APTX_HD_MUXER) += rawenc.o OBJS-$(CONFIG_APV_DEMUXER) += apvdec.o +OBJS-$(CONFIG_APV_MUXER) += apvenc.o OBJS-$(CONFIG_AQTITLE_DEMUXER) += aqtitledec.o subtitles.o OBJS-$(CONFIG_ARGO_ASF_DEMUXER) += argo_asf.o OBJS-$(CONFIG_ARGO_ASF_MUXER) += argo_asf.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 90a4fe64ec..b5a23f9c17 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -73,6 +73,7 @@ extern const FFOutputFormat ff_aptx_muxer; extern const FFInputFormat ff_aptx_hd_demuxer; extern const FFOutputFormat ff_aptx_hd_muxer; extern const FFInputFormat ff_apv_demuxer; +extern const FFOutputFormat ff_apv_muxer; extern const FFInputFormat ff_aqtitle_demuxer; extern const FFInputFormat ff_argo_asf_demuxer; extern const FFOutputFormat ff_argo_asf_muxer; diff --git a/libavformat/apvenc.c b/libavformat/apvenc.c new file mode 100644 index 0000000000..9c4d33fdae --- /dev/null +++ b/libavformat/apvenc.c @@ -0,0 +1,40 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "libavcodec/apv.h" + +#include "avformat.h" +#include "mux.h" + +static int apv_write_packet(AVFormatContext *s, AVPacket *pkt) +{ + avio_wb32(s->pb, pkt->size); + avio_write(s->pb, pkt->data, pkt->size); + return 0; +} + +const FFOutputFormat ff_apv_muxer = { + .p.name = "apv", + .p.long_name = NULL_IF_CONFIG_SMALL("APV raw bitstream"), + .p.extensions = "apv", + .p.audio_codec = AV_CODEC_ID_NONE, + .p.video_codec = AV_CODEC_ID_APV, + .p.subtitle_codec = AV_CODEC_ID_NONE, + .flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH, + .write_packet = apv_write_packet, +}; -- 2.47.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".