| 1 | /* |
| 2 | * Windows Television (WTV) |
| 3 | * Copyright (c) 2010-2011 Peter Ross <pross@xvid.org> |
| 4 | * |
| 5 | * This file is part of FFmpeg. |
| 6 | * |
| 7 | * FFmpeg is free software; you can redistribute it and/or |
| 8 | * modify it under the terms of the GNU Lesser General Public |
| 9 | * License as published by the Free Software Foundation; either |
| 10 | * version 2.1 of the License, or (at your option) any later version. |
| 11 | * |
| 12 | * FFmpeg is distributed in the hope that it will be useful, |
| 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 15 | * Lesser General Public License for more details. |
| 16 | * |
| 17 | * You should have received a copy of the GNU Lesser General Public |
| 18 | * License along with FFmpeg; if not, write to the Free Software |
| 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
| 20 | */ |
| 21 | |
| 22 | #include "wtv.h" |
| 23 | |
| 24 | /* WTV GUIDs*/ |
| 25 | const ff_asf_guid ff_dir_entry_guid = |
| 26 | {0x92,0xB7,0x74,0x91,0x59,0x70,0x70,0x44,0x88,0xDF,0x06,0x3B,0x82,0xCC,0x21,0x3D}; |
| 27 | const ff_asf_guid ff_wtv_guid = |
| 28 | {0xB7,0xD8,0x00,0x20,0x37,0x49,0xDA,0x11,0xA6,0x4E,0x00,0x07,0xE9,0x5E,0xAD,0x8D}; |
| 29 | const ff_asf_guid ff_timestamp_guid = |
| 30 | {0x5B,0x05,0xE6,0x1B,0x97,0xA9,0x49,0x43,0x88,0x17,0x1A,0x65,0x5A,0x29,0x8A,0x97}; |
| 31 | const ff_asf_guid ff_data_guid = |
| 32 | {0x95,0xC3,0xD2,0xC2,0x7E,0x9A,0xDA,0x11,0x8B,0xF7,0x00,0x07,0xE9,0x5E,0xAD,0x8D}; |
| 33 | const ff_asf_guid ff_SBE2_STREAM_DESC_EVENT = |
| 34 | {0xED,0xA4,0x13,0x23,0x2D,0xBF,0x4F,0x45,0xAD,0x8A,0xD9,0x5B,0xA7,0xF9,0x1F,0xEE}; |
| 35 | const ff_asf_guid ff_stream1_guid = |
| 36 | {0xA1,0xC3,0xD2,0xC2,0x7E,0x9A,0xDA,0x11,0x8B,0xF7,0x00,0x07,0xE9,0x5E,0xAD,0x8D}; |
| 37 | const ff_asf_guid ff_sync_guid = |
| 38 | {0x97,0xC3,0xD2,0xC2,0x7E,0x9A,0xDA,0x11,0x8B,0xF7,0x00,0x07,0xE9,0x5E,0xAD,0x8D}; |
| 39 | const ff_asf_guid ff_index_guid = |
| 40 | {0x96,0xC3,0xD2,0xC2,0x7E,0x9A,0xDA,0x11,0x8B,0xF7,0x00,0x07,0xE9,0x5E,0xAD,0x8D}; |
| 41 | const ff_asf_guid ff_mediatype_audio = |
| 42 | {'a','u','d','s',FF_MEDIASUBTYPE_BASE_GUID}; |
| 43 | const ff_asf_guid ff_mediatype_video = |
| 44 | {'v','i','d','s',FF_MEDIASUBTYPE_BASE_GUID}; |
| 45 | const ff_asf_guid ff_format_none = |
| 46 | {0xD6,0x17,0x64,0x0F,0x18,0xC3,0xD0,0x11,0xA4,0x3F,0x00,0xA0,0xC9,0x22,0x31,0x96}; |
| 47 | |
| 48 | /* declare utf16le strings */ |
| 49 | #define _ , 0, |
| 50 | const uint8_t ff_timeline_le16[] = |
| 51 | {'t'_'i'_'m'_'e'_'l'_'i'_'n'_'e', 0}; |
| 52 | const uint8_t ff_timeline_table_0_entries_Events_le16[] = |
| 53 | {'t'_'i'_'m'_'e'_'l'_'i'_'n'_'e'_'.'_'t'_'a'_'b'_'l'_'e'_'.'_'0'_'.'_'e'_'n'_'t'_'r'_'i'_'e'_'s'_'.'_'E'_'v'_'e'_'n'_'t'_'s', 0}; |
| 54 | const uint8_t ff_table_0_entries_legacy_attrib_le16[] = |
| 55 | {'t'_'a'_'b'_'l'_'e'_'.'_'0'_'.'_'e'_'n'_'t'_'r'_'i'_'e'_'s'_'.'_'l'_'e'_'g'_'a'_'c'_'y'_'_'_'a'_'t'_'t'_'r'_'i'_'b', 0}; |
| 56 | const uint8_t ff_table_0_entries_time_le16[] = |
| 57 | {'t'_'a'_'b'_'l'_'e'_'.'_'0'_'.'_'e'_'n'_'t'_'r'_'i'_'e'_'s'_'.'_'t'_'i'_'m'_'e', 0}; |
| 58 | #undef _ |
| 59 | |
| 60 | const ff_asf_guid ff_DSATTRIB_TRANSPORT_PROPERTIES = |
| 61 | {0x12,0xF6,0x22,0xB6,0xAD,0x47,0x71,0x46,0xAD,0x6C,0x05,0xA9,0x8E,0x65,0xDE,0x3A}; |
| 62 | const ff_asf_guid ff_metadata_guid = |
| 63 | {0x5A,0xFE,0xD7,0x6D,0xC8,0x1D,0x8F,0x4A,0x99,0x22,0xFA,0xB1,0x1C,0x38,0x14,0x53}; |
| 64 | const ff_asf_guid ff_stream2_guid = |
| 65 | {0xA2,0xC3,0xD2,0xC2,0x7E,0x9A,0xDA,0x11,0x8B,0xF7,0x00,0x07,0xE9,0x5E,0xAD,0x8D}; |
| 66 | |
| 67 | /* Media subtypes */ |
| 68 | const ff_asf_guid ff_mediasubtype_cpfilters_processed = |
| 69 | {0x28,0xBD,0xAD,0x46,0xD0,0x6F,0x96,0x47,0x93,0xB2,0x15,0x5C,0x51,0xDC,0x04,0x8D}; |
| 70 | |
| 71 | /* Formats */ |
| 72 | const ff_asf_guid ff_format_cpfilters_processed = |
| 73 | {0x6F,0xB3,0x39,0x67,0x5F,0x1D,0xC2,0x4A,0x81,0x92,0x28,0xBB,0x0E,0x73,0xD1,0x6A}; |
| 74 | const ff_asf_guid ff_format_waveformatex = |
| 75 | {0x81,0x9F,0x58,0x05,0x56,0xC3,0xCE,0x11,0xBF,0x01,0x00,0xAA,0x00,0x55,0x59,0x5A}; |
| 76 | const ff_asf_guid ff_format_mpeg2_video = |
| 77 | {0xE3,0x80,0x6D,0xE0,0x46,0xDB,0xCF,0x11,0xB4,0xD1,0x00,0x80,0x5F,0x6C,0xBB,0xEA}; |
| 78 | const ff_asf_guid ff_format_videoinfo2 = |
| 79 | {0xA0,0x76,0x2A,0xF7,0x0A,0xEB,0xD0,0x11,0xAC,0xE4,0x00,0x00,0xC0,0xCC,0x16,0xBA}; |
| 80 | |
| 81 | const AVCodecGuid ff_video_guids[] = { |
| 82 | {AV_CODEC_ID_MPEG2VIDEO, {0x26,0x80,0x6D,0xE0,0x46,0xDB,0xCF,0x11,0xB4,0xD1,0x00,0x80,0x5F,0x6C,0xBB,0xEA}}, |
| 83 | {AV_CODEC_ID_NONE} |
| 84 | }; |