From patchwork Sat May 7 11:59:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 35679 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:a885:b0:7f:4be2:bd17 with SMTP id ca5csp2130473pzb; Sat, 7 May 2022 04:59:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwEpegQMWf9D7tVcQxfERldm+Aj/iK13u2+SepIpi2HX3tLg9EJYhaUiUAHU6CNknERitkq X-Received: by 2002:a17:906:5d05:b0:6f6:6353:c325 with SMTP id g5-20020a1709065d0500b006f66353c325mr4558545ejt.749.1651924781828; Sat, 07 May 2022 04:59:41 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id g14-20020a170906868e00b006f3a97bb895si7289183ejx.588.2022.05.07.04.59.41; Sat, 07 May 2022 04:59:41 -0700 (PDT) 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=@outlook.com header.s=selector1 header.b=cePnFbvw; arc=fail (body hash mismatch); 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=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B820268B470; Sat, 7 May 2022 14:59:37 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2067.outbound.protection.outlook.com [40.92.91.67]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E38BA68B1B2 for ; Sat, 7 May 2022 14:59:30 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=m+X0dzOMR6ru9G3nnd3m6Xv+0shxIqZxW4GNNIDgNz6w5Xwku8t0F0VbDOfCJABl3Ioa4s61ET6UjdixHtWvX7PLcKx8rv6P6mxbt4JHnaspqDN7DvO4rZHxp9jNwts9juruCrbzMm75FCd4imZmwy0clGCzOJGs6RpxO/YmlN9y1kPIKmVGjQ1PXt4gEYIM2LBq5IqunwqtQweNgzQkdyDsVtinyR3fjiL4VP7LbwWB7pzQMgZnsws6Zx4lCyToFBJmKneWctHebk8Vw/tAivS35hjn5SJyV1cRWG6BEjQcigO3XuJEyl3rFu3GeanoJXoddXD1/50REk6YoGKpNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=V0JmenpNk7C2uLLb7W4N69G5tcFM69pkc3j6mGkjwBA=; b=H+ciKIgs8pTZVMOSHlaZr9+8/7OJ7nIeygqhvFgUO/8zH2B4u+J9IO3XGKEJ/8FErVDdbkpHAGPFmhrWzY7LWYO7Vq2OeIQPwkmc7AVnQrUH7OHe9S3fWOfWp6Fr+al6S5n2+n3PWQOLV6uUjMxgF4qd8zdoX4jvjFhxZvvzoJepgUfjsFsdOXurRJJ4WZGx/XHpfQEIsK1BvsAngVBEwWJ4R9iAttFaza5MtvW2k9SC9uNGmR3KHFFfmdxtDW13TdFZoxDc1fzwq4WwmaIZ7L7DvuVjttE0wH/eUEflVpB978B33hLwyLk7N6XgtH9NC5lMB5f9vuvs+q6vb+nSng== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V0JmenpNk7C2uLLb7W4N69G5tcFM69pkc3j6mGkjwBA=; b=cePnFbvwswIoIiy3+e39CrUARiOG3a5jGpxMeYZWRquc+k6hz9F/NndW8Iq8tfkVhrnIIN8j0tblWQA8t8Mb9xapHO/Cp+FaL2THJYDjQD1+XVVw7u4ouWQc+QvkcXDuhiwFGyT26irCy4Om6dxBjKsPlVGHzaa8tOMT6KCIVdmDjK9FLxe95QulYEeBsOLK+CQFPQBN2UiG1h95YzPDYOX8SD6EME1RmWrEQjwib41oxum71sY6fXn4FMJFBmbsGsiBfM9nrnvieUM7jdQZQYerV/X/r9NWJix87AiONtvJEvtT1Hg7sdk4X3lP/Tnqhkopyrl3O/2kGbBZgehIgQ== Received: from AS8PR01MB7944.eurprd01.prod.exchangelabs.com (2603:10a6:20b:373::5) by AM5PR0101MB2388.eurprd01.prod.exchangelabs.com (2603:10a6:203:31::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5206.12; Sat, 7 May 2022 11:59:28 +0000 Received: from AS8PR01MB7944.eurprd01.prod.exchangelabs.com ([fe80::1854:2c30:7ba1:c431]) by AS8PR01MB7944.eurprd01.prod.exchangelabs.com ([fe80::1854:2c30:7ba1:c431%6]) with mapi id 15.20.5206.024; Sat, 7 May 2022 11:59:28 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 7 May 2022 13:59:19 +0200 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [ZLQEVadlLWXjrb8GTobJ0iDJp3luBKiS] X-ClientProxiedBy: ZR0P278CA0177.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:45::11) To AS8PR01MB7944.eurprd01.prod.exchangelabs.com (2603:10a6:20b:373::5) X-Microsoft-Original-Message-ID: <20220507115919.410152-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7d32662e-f1d4-47b8-7157-08da3021099c X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRIovyFjHwHllp74iOQFItw1ptm6wd/H16kGQ6CT8zcSWm/2zDtWP7n1Rd9JYgqI24QHYvIvSpbhsydBQBAXjI9hmvwsAXsx/KXsF9Bm5Tqy7W6t7SEbeGh40veENDnPSfZ6pFyKSDgL870bGHTpDSmjvWI2SCK9fhzoTqKC2ofchuj898/+NROm2uqdUPvfXX3iPitNr6HeXBHLpUAV/MPG+W+85wLmr4jSJwoMNeHY7LeJl2AyniUb2YHb9z/jFbGPpzrH3UYkqkBUVTZV6wH6X+6XP7MRBk6DzHtFRqm+ARSZ7405vP9W/7tI9bE05VXL34TYucc3kRetOES/jWGGZTL9gbNVC8qdJewmhkoVdhIipEw1mIBUdJefaTVSs9fgOo6s7kPW/MsUa5vSbwG1O/V70w3CB3pF7kXP/PCHGT/g1hvkDkGg6vRz3TT/QqZ9VsrbsbdpCYFndeplW2H3hU1M5BbD87vXuwiV8NsyWCKBpfF/ZGiOVPUL4mLx6viT4DmOWWD17dwJv8RXQXneUULkhUlqV13EdK4ixQGejshDKnTI7HVZgVJoqBcAb5LmIvlRuSmLP4t9xWFrzOP6NGUg0BSiQV5u4Tj/AA4NuwkYs2zOEzvK60G9c0hgt0lDk+UC2CXRRlapB+LVWuWApjJVutcqMI+nWojUHaQLsKbBSkQoxUIIaGjAKn7n+exG0xmJo68ACyQVObzQkofmwXglvR5L2jVjk8qbFFcAn0HP7/XF2Vw2IJSOGQbmm0= X-MS-TrafficTypeDiagnostic: AM5PR0101MB2388:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fFLv9JWhG1RbTbiKQJwTvf3Hx/MWNniB1sndKOdzsFwNvkZMuOQBWXbk0aSGF37SOkdKpKkffDScU2/bWLVl3c6yWuJ65TXZi1FRIOMTeok089mPj6E1chBfcSlaZxT7WVPiu0wkcjgLCIR/ObKzUD4Shc3NtDi4a1kgoVNJ1AnEzBY66knfp6T9FLeY/nsMQk6IiX327zcqKUJHbLQGn8ZfjFMND9d9TZyAQrAUA9P9F9rg1qhABSmIsJrFkQBbSfTm2Zb811nKfcxApjO6ahl7wXz46lfWzCJYPjRHJci9CjeajFJ8bOPN3mKNsTlc2eVRWsBZMW/fWkDwU5e3wdoqWhlsqkR1qUiV7UpDK/zRi9ZeDW8zLTLarhCMBoBOOmmYrqa1qh4dw9lGR0f3E4YgK0SaQtV2KT3QSmDvtNZVtau/vW/T3NYxUtL8JNCgj/3845x9PNx/u88qJ1gt7oOJc4RapMPIeL4m0IpH6ffG4llv52a4CrXvOoIg0SY0im3EVCePCznmfgqWlMtfaaQO6/ZRdk45sQ1VBD3oxCpZOEUDBYlw8rpXEUStVosIcx7KyOhjbPFXGUyvgkDIAfE8d/rONobHArIoobMo+Fvt8NHUZgTYXzhW/nlMBa4wo4A0idHgKX/BAMILE+YtNama+V5c1CbkJW9Ni3HlX34= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: xKZkO893kfGwDB86Pv07bwYXuygtKFYw09I/pbL7mh9TI0xpJhoYfeXy3NJbuh6i3Ul51qyeGpHFDZAIWfreyXs6YeYvYFeTmN0GF5994IN1Retwx1KW+SbiZJDyJxoHb37QkLYbOcgoE4Be2wtt2T4z025tVciHp29/QuCNwAXawylYLPHYgpAqS5/fhhCgBs60N6dRdZFyneLpwQShJxywv8wp5t4cfzll/8xDSW3BmNiLKYLndybmXsrvMPFvLn5Pa+vRoe5IdGX+mN4+rVQUcIdgAzFYGrvU6iTyxt0D3wVvfNQ1wgdUsWsC2+f+5MbXYSb1iJxvX2XjgcBrDGLlrMvaDmPyiSzuByK6A8Mt5tmG9hm9EXrGFnsklBthwJVTjhI8s3/219kMtqkSqgc1ZRMlMsZ+8w4WNeqDE1qYIFZhW7qbQG3ANZbhmHJezlwvQDd1LG0A9I74pMuO4vkkMBK7p5qeJVjNCRM/sXnMU4g3QDyp65oM1VARJve5aXCy8xx++TH/1zVH+VhOsh7qfA9+VczsOZcywnfgQTAt/ceG6tbJ8xeUYcwBoexRxIbzCBxY4H9z15I8R9DpBRLidNSYuRRzWO9nrbS+hiD4UvFwkXws7oIfgng4qHzKR8NAfcs+k065UtdjRZG+FkJcQm0PoxgmeQMw6Je+OpDyTs24LnKnaM2JjT7Jx/NYQ1LlOBheM/LrX0NybMc7SBVhUP0PWH1bXFjPrVxj0QLyg3ZyIMaNCWoLJSn5mutXq+4v7Rq45ZQN5ihaEUwlVb6FqHep+S4UDESjX4ehTDmadl0VzNqXKHuUQBKd+AqSzPr356erPP3W7+gQsPZ5oEku/PeJDnWCrQRKy6QkytagpWxvfdq271EULKa1HAkfOxF+HrELHO4hbudrwE0e+9axMTAi+KAeKZBBzapciGZ9cxQ3+njjmC/i7XWRpjOn2dezjJAntHH+QIXzJNjDt2vc2qOLB6fMkqns4CKqTShtg/j5/uQOrXmkGD6D0V9lJMYxMcOYkDT/ANt41DBjiO+HXXOBZh0MWzf+iuWguXpeHZocCNpCutRgyCRPv2Fu2VZUchRD6+GHroV9SUxrXhxBiwA/dSXDj3VoT7vFPavcaw/QwChyTYWczbw2xV4nxYaIGnR6R4jh7h/XyqjsOUP3LWw9wynpwaeUE0TStMUauwgdz7pQWbIcgmhUNnfSYtP2sM6ow5eu5fjW16g3oIf1RErGNkOmfEKX1xJ7eTzqVHsY71q0lS6x0G1bLo/H2BFnVEcWgvvNuhSFFEcIOu+kME8mHxBoqo6xH7hmOtm9GqrfKc5iFoM/YJ270fUsoWY4nxqaYIdk41wpFnulsV4r3UXKEWNXzw7t7PBIQ3FcD8ycfQKEiAxdRg/cLE311umR945XXVvSl/lmq8n3z9mF/Qvrh4HXG+Ez53Mo2osFk0vr3F33XmU392Q0wEQ2 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7d32662e-f1d4-47b8-7157-08da3021099c X-MS-Exchange-CrossTenant-AuthSource: AS8PR01MB7944.eurprd01.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2022 11:59:28.1991 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0101MB2388 Subject: [FFmpeg-devel] [PATCH v2 37/44] avformat/asf: Move ASF GUIDs to a new file 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 8jYXoXPCX2ST They are also needed by the MMSH and MMST protocols and therefore the file they are in is pulled in when these protocols are enabled and used. By moving them to a separate file, linking statically to libavformat while only using AVIO no longer pulls in all the muxers/demuxers (and also no longer any AVCodecs when linking statically to libavcodec). Signed-off-by: Andreas Rheinhardt --- libavformat/Makefile | 8 +-- libavformat/asf.c | 129 ----------------------------------- libavformat/asf_tags.c | 150 +++++++++++++++++++++++++++++++++++++++++ libavformat/mmsh.c | 1 - 4 files changed, 154 insertions(+), 134 deletions(-) create mode 100644 libavformat/asf_tags.c diff --git a/libavformat/Makefile b/libavformat/Makefile index 7fd6d099b9..3b9995a9d3 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -117,9 +117,9 @@ OBJS-$(CONFIG_ARGO_BRP_DEMUXER) += argo_brp.o argo_asf.o OBJS-$(CONFIG_ARGO_CVG_DEMUXER) += argo_cvg.o OBJS-$(CONFIG_ARGO_CVG_MUXER) += argo_cvg.o OBJS-$(CONFIG_ASF_DEMUXER) += asfdec_f.o asf.o asfcrypt.o \ - avlanguage.o + asf_tags.o avlanguage.o OBJS-$(CONFIG_ASF_O_DEMUXER) += asfdec_o.o asf.o asfcrypt.o \ - avlanguage.o + asf_tags.o avlanguage.o OBJS-$(CONFIG_ASF_MUXER) += asfenc.o asf.o avlanguage.o OBJS-$(CONFIG_ASS_DEMUXER) += assdec.o subtitles.o OBJS-$(CONFIG_ASS_MUXER) += assenc.o @@ -649,8 +649,8 @@ OBJS-$(CONFIG_HTTPPROXY_PROTOCOL) += http.o httpauth.o urldecode.o OBJS-$(CONFIG_HTTPS_PROTOCOL) += http.o httpauth.o urldecode.o OBJS-$(CONFIG_ICECAST_PROTOCOL) += icecast.o OBJS-$(CONFIG_MD5_PROTOCOL) += md5proto.o -OBJS-$(CONFIG_MMSH_PROTOCOL) += mmsh.o mms.o asf.o -OBJS-$(CONFIG_MMST_PROTOCOL) += mmst.o mms.o asf.o +OBJS-$(CONFIG_MMSH_PROTOCOL) += mmsh.o mms.o asf_tags.o +OBJS-$(CONFIG_MMST_PROTOCOL) += mmst.o mms.o asf_tags.o OBJS-$(CONFIG_PIPE_PROTOCOL) += file.o OBJS-$(CONFIG_PROMPEG_PROTOCOL) += prompeg.o OBJS-$(CONFIG_RTMP_PROTOCOL) += rtmpproto.o rtmpdigest.o rtmppkt.o diff --git a/libavformat/asf.c b/libavformat/asf.c index 6e3854eceb..1285062220 100644 --- a/libavformat/asf.c +++ b/libavformat/asf.c @@ -23,135 +23,6 @@ #include "id3v2.h" #include "internal.h" -const ff_asf_guid ff_asf_header = { - 0x30, 0x26, 0xB2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C -}; - -const ff_asf_guid ff_asf_file_header = { - 0xA1, 0xDC, 0xAB, 0x8C, 0x47, 0xA9, 0xCF, 0x11, 0x8E, 0xE4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65 -}; - -const ff_asf_guid ff_asf_stream_header = { - 0x91, 0x07, 0xDC, 0xB7, 0xB7, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65 -}; - -const ff_asf_guid ff_asf_ext_stream_header = { - 0xCB, 0xA5, 0xE6, 0x14, 0x72, 0xC6, 0x32, 0x43, 0x83, 0x99, 0xA9, 0x69, 0x52, 0x06, 0x5B, 0x5A -}; - -const ff_asf_guid ff_asf_audio_stream = { - 0x40, 0x9E, 0x69, 0xF8, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B -}; - -const ff_asf_guid ff_asf_audio_conceal_spread = { - 0x50, 0xCD, 0xC3, 0xBF, 0x8F, 0x61, 0xCF, 0x11, 0x8B, 0xB2, 0x00, 0xAA, 0x00, 0xB4, 0xE2, 0x20 -}; - -const ff_asf_guid ff_asf_video_stream = { - 0xC0, 0xEF, 0x19, 0xBC, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B -}; - -const ff_asf_guid ff_asf_jfif_media = { - 0x00, 0xE1, 0x1B, 0xB6, 0x4E, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B -}; - -const ff_asf_guid ff_asf_video_conceal_none = { - 0x00, 0x57, 0xFB, 0x20, 0x55, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B -}; - -const ff_asf_guid ff_asf_command_stream = { - 0xC0, 0xCF, 0xDA, 0x59, 0xE6, 0x59, 0xD0, 0x11, 0xA3, 0xAC, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6 -}; - -const ff_asf_guid ff_asf_comment_header = { - 0x33, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c -}; - -const ff_asf_guid ff_asf_codec_comment_header = { - 0x40, 0x52, 0xD1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6 -}; -const ff_asf_guid ff_asf_codec_comment1_header = { - 0x41, 0x52, 0xd1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xa3, 0xa4, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0xf6 -}; - -const ff_asf_guid ff_asf_data_header = { - 0x36, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c -}; - -const ff_asf_guid ff_asf_head1_guid = { - 0xb5, 0x03, 0xbf, 0x5f, 0x2E, 0xA9, 0xCF, 0x11, 0x8e, 0xe3, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65 -}; - -const ff_asf_guid ff_asf_head2_guid = { - 0x11, 0xd2, 0xd3, 0xab, 0xBA, 0xA9, 0xCF, 0x11, 0x8e, 0xe6, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65 -}; - -const ff_asf_guid ff_asf_extended_content_header = { - 0x40, 0xA4, 0xD0, 0xD2, 0x07, 0xE3, 0xD2, 0x11, 0x97, 0xF0, 0x00, 0xA0, 0xC9, 0x5E, 0xA8, 0x50 -}; - -const ff_asf_guid ff_asf_simple_index_header = { - 0x90, 0x08, 0x00, 0x33, 0xB1, 0xE5, 0xCF, 0x11, 0x89, 0xF4, 0x00, 0xA0, 0xC9, 0x03, 0x49, 0xCB -}; - -const ff_asf_guid ff_asf_ext_stream_embed_stream_header = { - 0xe2, 0x65, 0xfb, 0x3a, 0xEF, 0x47, 0xF2, 0x40, 0xac, 0x2c, 0x70, 0xa9, 0x0d, 0x71, 0xd3, 0x43 -}; - -const ff_asf_guid ff_asf_ext_stream_audio_stream = { - 0x9d, 0x8c, 0x17, 0x31, 0xE1, 0x03, 0x28, 0x45, 0xb5, 0x82, 0x3d, 0xf9, 0xdb, 0x22, 0xf5, 0x03 -}; - -const ff_asf_guid ff_asf_metadata_header = { - 0xea, 0xcb, 0xf8, 0xc5, 0xaf, 0x5b, 0x77, 0x48, 0x84, 0x67, 0xaa, 0x8c, 0x44, 0xfa, 0x4c, 0xca -}; - -const ff_asf_guid ff_asf_metadata_library_header = { - 0x94, 0x1c, 0x23, 0x44, 0x98, 0x94, 0xd1, 0x49, 0xa1, 0x41, 0x1d, 0x13, 0x4e, 0x45, 0x70, 0x54 -}; - -const ff_asf_guid ff_asf_marker_header = { - 0x01, 0xCD, 0x87, 0xF4, 0x51, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65 -}; - -const ff_asf_guid ff_asf_reserved_4 = { - 0x20, 0xdb, 0xfe, 0x4c, 0xf6, 0x75, 0xCF, 0x11, 0x9c, 0x0f, 0x00, 0xa0, 0xc9, 0x03, 0x49, 0xcb -}; - -/* I am not a number !!! This GUID is the one found on the PC used to - * generate the stream */ -const ff_asf_guid ff_asf_my_guid = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; - -const ff_asf_guid ff_asf_language_guid = { - 0xa9, 0x46, 0x43, 0x7c, 0xe0, 0xef, 0xfc, 0x4b, 0xb2, 0x29, 0x39, 0x3e, 0xde, 0x41, 0x5c, 0x85 -}; - -const ff_asf_guid ff_asf_content_encryption = { - 0xfb, 0xb3, 0x11, 0x22, 0x23, 0xbd, 0xd2, 0x11, 0xb4, 0xb7, 0x00, 0xa0, 0xc9, 0x55, 0xfc, 0x6e -}; - -const ff_asf_guid ff_asf_ext_content_encryption = { - 0x14, 0xe6, 0x8a, 0x29, 0x22, 0x26, 0x17, 0x4c, 0xb9, 0x35, 0xda, 0xe0, 0x7e, 0xe9, 0x28, 0x9c -}; - -const ff_asf_guid ff_asf_digital_signature = { - 0xfc, 0xb3, 0x11, 0x22, 0x23, 0xbd, 0xd2, 0x11, 0xb4, 0xb7, 0x00, 0xa0, 0xc9, 0x55, 0xfc, 0x6e -}; - -const ff_asf_guid ff_asf_extended_stream_properties_object = { - 0xcb, 0xa5, 0xe6, 0x14, 0x72, 0xc6, 0x32, 0x43, 0x83, 0x99, 0xa9, 0x69, 0x52, 0x06, 0x5b, 0x5a -}; - -const ff_asf_guid ff_asf_group_mutual_exclusion_object = { - 0x40, 0x5a, 0x46, 0xd1, 0x79, 0x5a, 0x38, 0x43, 0xb7, 0x1b, 0xe3, 0x6b, 0x8f, 0xd6, 0xc2, 0x49 -}; - -const ff_asf_guid ff_asf_mutex_language = { - 0x00, 0x2a, 0xe2, 0xd6, 0xda, 0x35, 0xd1, 0x11, 0x90, 0x34, 0x00, 0xa0, 0xc9, 0x03, 0x49, 0xbe -}; - /* List of official tags at http://msdn.microsoft.com/en-us/library/dd743066(VS.85).aspx */ const AVMetadataConv ff_asf_metadata_conv[] = { { "WM/AlbumArtist", "album_artist" }, diff --git a/libavformat/asf_tags.c b/libavformat/asf_tags.c new file mode 100644 index 0000000000..53d886f181 --- /dev/null +++ b/libavformat/asf_tags.c @@ -0,0 +1,150 @@ +/* + * Copyright (c) 2000, 2001 Fabrice Bellard + * + * 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 "asf.h" + +const ff_asf_guid ff_asf_header = { + 0x30, 0x26, 0xB2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C +}; + +const ff_asf_guid ff_asf_file_header = { + 0xA1, 0xDC, 0xAB, 0x8C, 0x47, 0xA9, 0xCF, 0x11, 0x8E, 0xE4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65 +}; + +const ff_asf_guid ff_asf_stream_header = { + 0x91, 0x07, 0xDC, 0xB7, 0xB7, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65 +}; + +const ff_asf_guid ff_asf_ext_stream_header = { + 0xCB, 0xA5, 0xE6, 0x14, 0x72, 0xC6, 0x32, 0x43, 0x83, 0x99, 0xA9, 0x69, 0x52, 0x06, 0x5B, 0x5A +}; + +const ff_asf_guid ff_asf_audio_stream = { + 0x40, 0x9E, 0x69, 0xF8, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B +}; + +const ff_asf_guid ff_asf_audio_conceal_spread = { + 0x50, 0xCD, 0xC3, 0xBF, 0x8F, 0x61, 0xCF, 0x11, 0x8B, 0xB2, 0x00, 0xAA, 0x00, 0xB4, 0xE2, 0x20 +}; + +const ff_asf_guid ff_asf_video_stream = { + 0xC0, 0xEF, 0x19, 0xBC, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B +}; + +const ff_asf_guid ff_asf_jfif_media = { + 0x00, 0xE1, 0x1B, 0xB6, 0x4E, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B +}; + +const ff_asf_guid ff_asf_video_conceal_none = { + 0x00, 0x57, 0xFB, 0x20, 0x55, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B +}; + +const ff_asf_guid ff_asf_command_stream = { + 0xC0, 0xCF, 0xDA, 0x59, 0xE6, 0x59, 0xD0, 0x11, 0xA3, 0xAC, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6 +}; + +const ff_asf_guid ff_asf_comment_header = { + 0x33, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c +}; + +const ff_asf_guid ff_asf_codec_comment_header = { + 0x40, 0x52, 0xD1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6 +}; +const ff_asf_guid ff_asf_codec_comment1_header = { + 0x41, 0x52, 0xd1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xa3, 0xa4, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0xf6 +}; + +const ff_asf_guid ff_asf_data_header = { + 0x36, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c +}; + +const ff_asf_guid ff_asf_head1_guid = { + 0xb5, 0x03, 0xbf, 0x5f, 0x2E, 0xA9, 0xCF, 0x11, 0x8e, 0xe3, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65 +}; + +const ff_asf_guid ff_asf_head2_guid = { + 0x11, 0xd2, 0xd3, 0xab, 0xBA, 0xA9, 0xCF, 0x11, 0x8e, 0xe6, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65 +}; + +const ff_asf_guid ff_asf_extended_content_header = { + 0x40, 0xA4, 0xD0, 0xD2, 0x07, 0xE3, 0xD2, 0x11, 0x97, 0xF0, 0x00, 0xA0, 0xC9, 0x5E, 0xA8, 0x50 +}; + +const ff_asf_guid ff_asf_simple_index_header = { + 0x90, 0x08, 0x00, 0x33, 0xB1, 0xE5, 0xCF, 0x11, 0x89, 0xF4, 0x00, 0xA0, 0xC9, 0x03, 0x49, 0xCB +}; + +const ff_asf_guid ff_asf_ext_stream_embed_stream_header = { + 0xe2, 0x65, 0xfb, 0x3a, 0xEF, 0x47, 0xF2, 0x40, 0xac, 0x2c, 0x70, 0xa9, 0x0d, 0x71, 0xd3, 0x43 +}; + +const ff_asf_guid ff_asf_ext_stream_audio_stream = { + 0x9d, 0x8c, 0x17, 0x31, 0xE1, 0x03, 0x28, 0x45, 0xb5, 0x82, 0x3d, 0xf9, 0xdb, 0x22, 0xf5, 0x03 +}; + +const ff_asf_guid ff_asf_metadata_header = { + 0xea, 0xcb, 0xf8, 0xc5, 0xaf, 0x5b, 0x77, 0x48, 0x84, 0x67, 0xaa, 0x8c, 0x44, 0xfa, 0x4c, 0xca +}; + +const ff_asf_guid ff_asf_metadata_library_header = { + 0x94, 0x1c, 0x23, 0x44, 0x98, 0x94, 0xd1, 0x49, 0xa1, 0x41, 0x1d, 0x13, 0x4e, 0x45, 0x70, 0x54 +}; + +const ff_asf_guid ff_asf_marker_header = { + 0x01, 0xCD, 0x87, 0xF4, 0x51, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65 +}; + +const ff_asf_guid ff_asf_reserved_4 = { + 0x20, 0xdb, 0xfe, 0x4c, 0xf6, 0x75, 0xCF, 0x11, 0x9c, 0x0f, 0x00, 0xa0, 0xc9, 0x03, 0x49, 0xcb +}; + +/* I am not a number !!! This GUID is the one found on the PC used to + * generate the stream */ +const ff_asf_guid ff_asf_my_guid = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 +}; + +const ff_asf_guid ff_asf_language_guid = { + 0xa9, 0x46, 0x43, 0x7c, 0xe0, 0xef, 0xfc, 0x4b, 0xb2, 0x29, 0x39, 0x3e, 0xde, 0x41, 0x5c, 0x85 +}; + +const ff_asf_guid ff_asf_content_encryption = { + 0xfb, 0xb3, 0x11, 0x22, 0x23, 0xbd, 0xd2, 0x11, 0xb4, 0xb7, 0x00, 0xa0, 0xc9, 0x55, 0xfc, 0x6e +}; + +const ff_asf_guid ff_asf_ext_content_encryption = { + 0x14, 0xe6, 0x8a, 0x29, 0x22, 0x26, 0x17, 0x4c, 0xb9, 0x35, 0xda, 0xe0, 0x7e, 0xe9, 0x28, 0x9c +}; + +const ff_asf_guid ff_asf_digital_signature = { + 0xfc, 0xb3, 0x11, 0x22, 0x23, 0xbd, 0xd2, 0x11, 0xb4, 0xb7, 0x00, 0xa0, 0xc9, 0x55, 0xfc, 0x6e +}; + +const ff_asf_guid ff_asf_extended_stream_properties_object = { + 0xcb, 0xa5, 0xe6, 0x14, 0x72, 0xc6, 0x32, 0x43, 0x83, 0x99, 0xa9, 0x69, 0x52, 0x06, 0x5b, 0x5a +}; + +const ff_asf_guid ff_asf_group_mutual_exclusion_object = { + 0x40, 0x5a, 0x46, 0xd1, 0x79, 0x5a, 0x38, 0x43, 0xb7, 0x1b, 0xe3, 0x6b, 0x8f, 0xd6, 0xc2, 0x49 +}; + +const ff_asf_guid ff_asf_mutex_language = { + 0x00, 0x2a, 0xe2, 0xd6, 0xda, 0x35, 0xd1, 0x11, 0x90, 0x34, 0x00, 0xa0, 0xc9, 0x03, 0x49, 0xbe +}; diff --git a/libavformat/mmsh.c b/libavformat/mmsh.c index 495d7fb73b..672f4b3788 100644 --- a/libavformat/mmsh.c +++ b/libavformat/mmsh.c @@ -31,7 +31,6 @@ #include "libavutil/opt.h" #include "internal.h" #include "mms.h" -#include "asf.h" #include "http.h" #include "url.h"