From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id E82E94BADE for <ffmpegdev@gitmailbox.com>; Wed, 2 Apr 2025 03:29:55 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CE578687D31; Wed, 2 Apr 2025 06:29:50 +0300 (EEST) Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D81F8687D80 for <ffmpeg-devel@ffmpeg.org>; Wed, 2 Apr 2025 06:29:44 +0300 (EEST) Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2255003f4c6so113652485ad.0 for <ffmpeg-devel@ffmpeg.org>; Tue, 01 Apr 2025 20:29:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743564582; x=1744169382; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=xgZvI/s3HwyuvMIXf1tQA3Jq2D9TgEkBkaAMcP2ot98=; b=fvb/8ZmVVP/zo6GihQwrVGy9ULvxi0JXuAnpaO+fSA51wHERj6vK0MaCQFS7W3iweE dMIZ9/SsCqr0+oddpQzr0DFuKqhuOeagmZIZjN7Or+3UKEnnZQ7Nj2/5E0N4RI4uiviZ zpmaBpQTIkoCdU/f/7oa930xzhGujfH9yViPOQNmsLL0C6apB8ieNDg/MXPuvo6ZhcV6 tqzmphc61OmzQZ9OFMPKCrwZrOaz7ZtSdr7nE0GXJ2dg3MXoOqGSW0KppqIPIP5Zmgzt TTbeXqsDFE9tlh08Z3G9rz1AO3VdgIEYG1UONQKxvF4OcjbJ7r06moIzyctTD8xwDlxK rQhw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743564582; x=1744169382; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=xgZvI/s3HwyuvMIXf1tQA3Jq2D9TgEkBkaAMcP2ot98=; b=Z2hGPQWwu5NEVV4P88ycfXPUsLFhEm0rOPb3xPzW8YCETx595IwTFQihMfLVDNBlhE +40beBm5y4ADRbZ48i1XGS6xQcQpS2BqjdBh/ur/d7mOrPLbs3BqEEUnvRNPM5UMt5SL ljKO+PFhdFan3lI7bMNQZiPdoZ97kjnkkiJXnEWB2p8lN+pggL6qRQuoQ6GG8kesu6nz 1sa13N/vqVPMHHUIIcqZXPPZGUIm3rt3o0avCGHZFNba+q35TXjiLobwIdT+QOfOxvFM bjlyvLrhy/NKzyAsuFfOTfkKOz3kj9Oj45OTy5CMpx122FIYEkr+ctBmc16D+JR7PCYm oZEQ== X-Gm-Message-State: AOJu0YxbtJsYAoedbx0q2LA8GJ0yiEuKIYPTogsg8dS1f1vJGJjK9VPV C4sy8bRFL3HCU9shx9cBeNL41AQnVfDKmNkSBwWS3baaV1ifacTf9nkEdA== X-Gm-Gg: ASbGncvL8zYghUZL/RxrFeWHOatOI2GJg4OxAhaop+p0K7gtcE3KQhP/UbrmmG1C6ys /rvl0rmgTGwFGr6ucxzjl8T6Cbt+KvviPSqVV92tf/EN4hUGjh6lGSFQ2L7xUCvBC8IjUT7JKJ0 GOHEIk9XBBzkseuCa0Rh8PXflavGYPjDKR0ByCf6tdBpczMt+Bj2sB9VL5VGV82ipweGO0Yt7FI MxMV48WNelkHlGRtkIOAUSPF5fOEH/xvockh3PNEQ8sjuL2lbRUN/6cxnPQKC+h1regxsOR40Ib PjsJTtT800rCenxyExR9m6Z17lMYEak7Ny3DmelUCSs14+/lIAbZ9D4PxGQjA44D4gIY7/2Y3qc tOgo= X-Google-Smtp-Source: AGHT+IFiu54q1J8W6rA5BxmFSVZRvDc0kYdoLYuRjxAZGsAu5amh4PFUc5FwW/XRolJzvJ329iGGng== X-Received: by 2002:a05:6a00:4608:b0:736:57cb:f2aa with SMTP id d2e1a72fcca58-739b601f14amr5975160b3a.13.1743564581931; Tue, 01 Apr 2025 20:29:41 -0700 (PDT) Received: from localhost.localdomain ([2001:559:76c:0:344b:e806:fd46:cbc2]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73971091ce4sm10074300b3a.132.2025.04.01.20.29.41 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Apr 2025 20:29:41 -0700 (PDT) From: koushd@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Tue, 1 Apr 2025 20:29:39 -0700 Message-Id: <20250402032939.41872-1-koushd@gmail.com> X-Mailer: git-send-email 2.39.5 (Apple Git-154) MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] libavformat/rtpdec_mpeg4: AAC may not contain AU headers. X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Cc: Koushik Dutta <koushd@gmail.com> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/20250402032939.41872-1-koushd@gmail.com/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> From: Koushik Dutta <koushd@gmail.com> The codec information may be in the SDP and not in the stream. Signed-off-by: Koushik Dutta <koushd@gmail.com> --- libavformat/rtpdec_mpeg4.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/libavformat/rtpdec_mpeg4.c b/libavformat/rtpdec_mpeg4.c index 6531632b2d..c3c3c67c3e 100644 --- a/libavformat/rtpdec_mpeg4.c +++ b/libavformat/rtpdec_mpeg4.c @@ -180,6 +180,7 @@ static int aac_parse_packet(AVFormatContext *ctx, PayloadContext *data, int flags) { int ret; + AVCodecParameters *par = st->codecpar; if (!buf) { @@ -208,6 +209,26 @@ static int aac_parse_packet(AVFormatContext *ctx, PayloadContext *data, return 1; } + /* Check for and skip ADTS header if we have an explicit decoder config */ + if (par->extradata && len > 7) { + if (buf[0] == 0xff && (buf[1] & 0xf0) == 0xf0) { + size_t header_size = 7 + ((buf[1] & 0x01) ? 0 : 2); + if (len > header_size) { + buf += header_size; + len -= header_size; + } + + if ((ret = av_new_packet(pkt, len)) < 0) { + av_log(ctx, AV_LOG_ERROR, "Out of memory\n"); + return ret; + } + + memcpy(pkt->data, buf, len); + pkt->stream_index = st->index; + return 0; + } + } + if (rtp_parse_mp4_au(data, buf, len)) { av_log(ctx, AV_LOG_ERROR, "Error parsing AU headers\n"); return -1; -- 2.39.5 (Apple Git-154) _______________________________________________ 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".