Skip to content

Commit 49e454b

Browse files
authored
Merge branch 'Aleksoid1978:master' into master
2 parents 077dbbb + fb946c6 commit 49e454b

File tree

347 files changed

+12910
-4922
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

347 files changed

+12910
-4922
lines changed

distrib/mpc-be_setup.iss

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868
#define Description = app_name + " x64 " + app_version
6969
#define VisualElementsManifest = "VisualElements\mpc-be64.VisualElementsManifest.xml"
7070
#endif
71-
#define mpcvr_desc = "MPC Video Renderer 0.8.1"
71+
#define mpcvr_desc = "MPC Video Renderer 0.8.3"
7272

7373
[Setup]
7474
#ifdef Win32Build

docs/Changelog.Rus.txt

+42-5
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,50 @@
11
В этом файле отображаются только ключевые изменения между разными версиями Media Player Classic - BE.
22

3-
1.7.1.x dev
3+
1.7.2.x dev
44
=============================
5+
Обновлены библиотеки:
6+
ffmpeg git-n7.1-dev-1158-g7560db937d.
7+
8+
9+
1.7.2 - 2024-06-07
10+
=============================
11+
AudioSplitter
12+
Исправлено чтения картинок из ID3v2.3.
13+
14+
FLVSplitter
15+
Исправлено определение размера видеокадра для некоторых файлов FLV.
16+
517
MPCVideoDec
6-
Декодирование VVC сделано с помощью vvdec (https://github.com/fraunhoferhhi/vvdec).
18+
Для декодирования VVC теперь используется декодер VVdeC (https://github.com/fraunhoferhhi/vvdec).
19+
Исправлена работа настройки "Отключить DXVA для SD видео (H.264)" для вертикальных видео.
20+
Исправлены декодирование некоторых VP9 видео.
21+
Исправлены декодирование некоторых интерлейсных H.264 видео.
22+
Добавлена ​​проверка метаданных HDR.
23+
Добавлена поддержка видео HEVC получаемого от WM ASF Reader.
24+
25+
Плеер
26+
Скорость воспроизведения теперь можно менять с шагом 1%.
27+
При сохранении только звука с YouTube добавляем к аудиофайлу обложку с помощью доступного FFmpeg.
28+
Добавлена настройка времени тайм-аута при получении данных из сети.
29+
30+
Инсталлятор
31+
MPC Video Renderer 0.8.3 включен в инсталлятор.
32+
33+
Обновлен венгерский перевод (автор mickey).
34+
Обновлен китайский (Simplified) перевод (автор wushantao).
35+
Обновлен немецкий перевод (автор Klaus1189).
36+
Обновлен турецкий перевод (автор cmhrky).
37+
Обновлен итальянский перевод (автор mapi68).
38+
Обновлен испанский перевод (автор IPeluchito).
39+
Обновлен японский перевод (автор tsubasanouta).
40+
Обновлены голландский и китайский (Traditional) переводы (автор beter).
741

842
Обновлены библиотеки:
9-
ffmpeg git-n7.1-dev-716-g0d9591841b;
10-
vvdec git-v2.3.0.
43+
ffmpeg git-n7.1-dev-1050-g2c38ca3d37;
44+
Little-CMS git-lcms2.16-59-g2daf5c5;
45+
MediaInfo git-v24.05-gd9ba2b6c;
46+
rapidjson git-v1.1.0-752-gab1842a2;
47+
vvdec git-v2.3.0-5-gffe3010.
1148

1249

1350
1.7.1 - 2024-05-07
@@ -41,7 +78,7 @@ MPC Video Renderer 0.8.1 включен в инсталлятор.
4178
Обновлен испанский перевод (автор IPeluchito).
4279
Обновлен японский перевод (автор tsubasanouta).
4380
Обновлен румынский перевод (автор AndreiMiloiu).
44-
Обновлены голландский и китайский (Traditional) переводы (автор beter)
81+
Обновлены голландский и китайский (Traditional) переводы (автор beter).
4582

4683
Обновлены библиотеки:
4784
dav1d git-1.4.1-45-gfc4763c;

docs/Changelog.txt

+41-4
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,50 @@
11
This file includes only a short list of the changes between Media Player Classic - BE's versions.
22

3-
1.7.1.x dev
3+
1.7.2.x dev
44
=============================
5+
Updated libraries:
6+
ffmpeg git-n7.1-dev-1158-g7560db937d.
7+
8+
9+
1.7.2 - 2024-06-07
10+
=============================
11+
AudioSplitter
12+
Fixed reading pictures from ID3v2.3.
13+
14+
FLVSplitter
15+
Fixed video frame size detection for some FLV files.
16+
517
MPCVideoDec
6-
VVC decoding is done using vvdec (https://github.com/fraunhoferhhi/vvdec).
18+
VVC decoding now uses the VVdeC decoder (https://github.com/fraunhoferhhi/vvdec).
19+
The "Disable DXVA for SD (H.264)" setting for vertical videos has been fixed.
20+
Fixed decoding of some VP9 videos.
21+
Fixed decoding of some interlaced H.264 videos.
22+
Added validation of HDR metadata.
23+
Added support for HEVC video received from WM ASF Reader.
24+
25+
Player
26+
Playback speed can now be changed in 1% increments.
27+
When saving only audio from YouTube, add cover art to the audio file using the available FFmpeg.
28+
Added timeout time setting when receiving data from the network.
29+
30+
Installer
31+
MPC Video Renderer 0.8.3 is included in the installer.
32+
33+
Updated Hungarian translation (by mickey).
34+
Updated Chinese (Simplified) translation (by wushantao).
35+
Updated German translation (by Klaus1189).
36+
Updated Turkish translation (by cmhrky).
37+
Updated Italian translation (by mapi68).
38+
Updated Spanish translation (by IPeluchito).
39+
Updated Japanese translation (by tsubasanouta).
40+
Updated Dutch and Chinese (Traditional) translation (by beter).
741

842
Updated libraries:
9-
ffmpeg git-n7.1-dev-716-g0d9591841b;
10-
vvdec git-v2.3.0.
43+
ffmpeg git-n7.1-dev-1050-g2c38ca3d37;
44+
Little-CMS git-lcms2.16-59-g2daf5c5;
45+
MediaInfo git-v24.05-gd9ba2b6c;
46+
rapidjson git-v1.1.0-752-gab1842a2;
47+
vvdec git-v2.3.0-5-gffe3010.
1148

1249

1350
1.7.1 - 2024-05-07

include/Version.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545

4646
#define MPC_VERSION_MAJOR 1
4747
#define MPC_VERSION_MINOR 7
48-
#define MPC_VERSION_PATCH 1
48+
#define MPC_VERSION_PATCH 2
4949

5050
#define MPC_VERSION_STATUS 0
5151
// MPC_VERSION_STATUS: 0 - dev; 1 - stable

include/moreuuids.h

+4-1
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,10 @@ DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_HEVC, FCC('HEVC'));
265265
// {31435648-0000-0010-8000-00AA00389B71} HVC1
266266
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_HVC1, FCC('HVC1'));
267267

268-
//{30314D48-0000-0010-8000-00AA00389B71} HEVC HM10.0
268+
// {31637668-0000-0010-8000-00AA00389B71} hvc1
269+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_hvc1, FCC('hvc1'));
270+
271+
// {30314D48-0000-0010-8000-00AA00389B71} HEVC HM10.0
269272
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_HM10, FCC('HM10'));
270273

271274

include/stdafx_common_dshow.h

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* (C) 2003-2006 Gabest
3-
* (C) 2006-2021 see Authors.txt
3+
* (C) 2006-2024 see Authors.txt
44
*
55
* This file is part of MPC-BE.
66
*
@@ -20,6 +20,7 @@
2020
*/
2121

2222
#include <dshow.h>
23+
#define USE_STD_STRING
2324
#include <ExtLib/BaseClasses/streams.h>
2425
#include <dvdmedia.h>
2526
#include <initguid.h>

src/DSUtil/DXVAState.cpp

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* (C) 2017-2022 see Authors.txt
2+
* (C) 2017-2024 see Authors.txt
33
*
44
* This file is part of MPC-BE.
55
*
@@ -18,8 +18,6 @@
1818
*
1919
*/
2020

21-
#pragma once
22-
2321
#include "stdafx.h"
2422
#include "DXVAState.h"
2523
#include "apps/mplayerc/mpc_messages.h"

src/DSUtil/GUIDString.cpp

+18-57
Original file line numberDiff line numberDiff line change
@@ -24,20 +24,15 @@
2424
#include <encdec.h> // MEDIASUBTYPE_CPFilters_Processed, FORMATTYPE_CPFilters_Processed
2525
#include "GUIDString.h"
2626

27-
#define ENTRYNAME(subtype) #subtype
28-
static const struct {
29-
WORD wFormatTag;
30-
const CHAR* szName;
31-
}
32-
MPC_g_WaveGuidNames[] = {
27+
static const WaveStringEntry MPC_g_WaveGuidNames[] = {
3328
// mmreg.h
34-
{WAVE_FORMAT_ADPCM, "MS_ADPCM"}, //
29+
{WAVE_FORMAT_ADPCM, "MS_ADPCM"},
3530
{WAVE_FORMAT_ALAW, "ALAW"},
3631
{WAVE_FORMAT_MULAW, "MULAW"},
37-
{WAVE_FORMAT_IMA_ADPCM, "IMA_ADPCM"}, //
32+
{WAVE_FORMAT_IMA_ADPCM, "IMA_ADPCM"},
3833
{WAVE_FORMAT_WMAVOICE9, "WMSP1"},
3934
{WAVE_FORMAT_DSPGROUP_TRUESPEECH, "TRUESPEECH"},
40-
{WAVE_FORMAT_GSM610, "GSM610"}, //
35+
{WAVE_FORMAT_GSM610, "GSM610"},
4136
{WAVE_FORMAT_SHARP_G726, "G726_ADPCM"},
4237
{WAVE_FORMAT_MPEGLAYER3, "MP3"},
4338
{WAVE_FORMAT_VOXWARE_RT29, "VOXWARE_RT29"},
@@ -49,10 +44,10 @@ MPC_g_WaveGuidNames[] = {
4944
{WAVE_FORMAT_INTEL_MUSIC_CODER, "INTEL_MUSIC"},
5045
{WAVE_FORMAT_INDEO_AUDIO, "INDEO_AUDIO"},
5146
{WAVE_FORMAT_DTS2, "DTS2"},
52-
{WAVE_FORMAT_MPEG_ADTS_AAC, "MPEG_ADTS_AAC"}, //
53-
{WAVE_FORMAT_MPEG_RAW_AAC, "MPEG_RAW_AAC"}, //
54-
{WAVE_FORMAT_MPEG_LOAS, "MPEG_LOAS"}, //
55-
{WAVE_FORMAT_MPEG_HEAAC, "MPEG_HEAAC"}, //
47+
{WAVE_FORMAT_MPEG_ADTS_AAC, "MPEG_ADTS_AAC"},
48+
{WAVE_FORMAT_MPEG_RAW_AAC, "MPEG_RAW_AAC"},
49+
{WAVE_FORMAT_MPEG_LOAS, "MPEG_LOAS"},
50+
{WAVE_FORMAT_MPEG_HEAAC, "MPEG_HEAAC"},
5651
{WAVE_FORMAT_WAVPACK_AUDIO, "WAVPACK4"},
5752
{WAVE_FORMAT_OPUS, "OPUS_WAVE"},
5853
{WAVE_FORMAT_SPEEX_VOICE, "SPEEX"},
@@ -68,8 +63,8 @@ MPC_g_WaveGuidNames[] = {
6863
{WAVE_FORMAT_PS2_ADPCM, "PS2_ADPCM"}, //0xF522
6964
};
7065

71-
#define ADDENTRY(subtype) { #subtype, subtype },
72-
static const GUID_STRING_ENTRY MPC_g_GuidNames[] = {
66+
#define ADDENTRY(subtype) { subtype, #subtype },
67+
static const GuidStringEntry MPC_g_GuidNames[] = {
7368
ADDENTRY(MEDIASUBTYPE_FLAC_FRAMED)
7469
ADDENTRY(MEDIASUBTYPE_TAK)
7570
ADDENTRY(MEDIASUBTYPE_WavpackHybrid)
@@ -91,7 +86,6 @@ static const GUID_STRING_ENTRY MPC_g_GuidNames[] = {
9186
ADDENTRY(MEDIASUBTYPE_Vorbis2)
9287
ADDENTRY(FORMAT_VorbisFormat2)
9388
ADDENTRY(MEDIASUBTYPE_Matroska)
94-
ADDENTRY(MEDIATYPE_Subtitle)
9589
ADDENTRY(MEDIASUBTYPE_UTF8)
9690
ADDENTRY(MEDIASUBTYPE_SSA)
9791
ADDENTRY(MEDIASUBTYPE_ASS)
@@ -127,46 +121,13 @@ static const GUID_STRING_ENTRY MPC_g_GuidNames[] = {
127121

128122
CStringA GetGUIDName(const GUID& guid)
129123
{
130-
if (guid == GUID_NULL) {
131-
// to prevent print TIME_FORMAT_NONE for GUID_NULL
132-
return "GUID_NULL";
133-
}
134-
135-
const char* guidStr = GuidNames[guid]; // GUID names from uuids.h
136-
if (strcmp(guidStr, "Unknown GUID Name") != 0) {
137-
return guidStr;
138-
}
139-
140-
if (memcmp(&guid.Data2, &MEDIASUBTYPE_YUY2.Data2, sizeof(GUID) - sizeof(GUID::Data1)) == 0) {
141-
// GUID like {xxxxxxxx-0000-0010-8000-00AA00389B71}
142-
CStringA str = "MEDIASUBTYPE_";
143-
144-
if ((guid.Data1 & 0x0000FFFF) == guid.Data1) {
145-
const WORD wFormatTag = (WORD)guid.Data1;
146-
for (const auto& waveGuidName : MPC_g_WaveGuidNames) {
147-
if (waveGuidName.wFormatTag == wFormatTag) {
148-
str.Append(waveGuidName.szName);
149-
return str;
150-
}
151-
}
152-
str.AppendFormat("0x%04x", wFormatTag);
153-
return str;
154-
}
155-
156-
uint32_t fourcc = guid.Data1;
157-
for (unsigned i = 0; i < 4; i++) {
158-
const uint32_t c = fourcc & 0xff;
159-
str.AppendFormat(c < 32 ? "[%u]" : "%c", c);
160-
fourcc >>= 8;
161-
}
162-
return str;
163-
}
164-
165-
for (const auto& guidName : MPC_g_GuidNames) {
166-
if (guidName.guid == guid) {
167-
return guidName.szName;
168-
}
169-
}
124+
return GuidNames.GetString(guid).c_str();
125+
}
170126

171-
return "Unknown GUID Name";
127+
void SetExtraGuidStrings()
128+
{
129+
GuidNames.SetExtraGuidStrings(
130+
&MPC_g_GuidNames[0], std::size(MPC_g_GuidNames),
131+
&MPC_g_WaveGuidNames[0], std::size(MPC_g_WaveGuidNames)
132+
);
172133
}

src/DSUtil/GUIDString.h

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* (C) 2013-2023 see Authors.txt
2+
* (C) 2013-2024 see Authors.txt
33
*
44
* This file is part of MPC-BE.
55
*
@@ -21,3 +21,4 @@
2121
#pragma once
2222

2323
CStringA GetGUIDName(const GUID& guid);
24+
void SetExtraGuidStrings();

src/DSUtil/HTTPAsync.h

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* (C) 2016-2023 see Authors.txt
2+
* (C) 2016-2024 see Authors.txt
33
*
44
* This file is part of MPC-BE.
55
*
@@ -27,6 +27,8 @@
2727

2828
namespace http {
2929
inline CStringW userAgent = L"Mozilla/5.0";
30+
inline DWORD connectTimeout = 10000;
31+
inline DWORD readTimeout = 10000;
3032
}
3133

3234
class CHTTPAsync

src/ExtLib/BaseClasses.vcxproj

+3-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
</PropertyGroup>
4444
<ItemDefinitionGroup>
4545
<ClCompile>
46-
<PreprocessorDefinitions>_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
46+
<PreprocessorDefinitions>_LIB;USE_STD_STRING;%(PreprocessorDefinitions)</PreprocessorDefinitions>
4747
<PrecompiledHeader>Use</PrecompiledHeader>
4848
<PrecompiledHeaderFile>streams.h</PrecompiledHeaderFile>
4949
</ClCompile>
@@ -63,6 +63,7 @@
6363
<ClInclude Include="BaseClasses\dllsetup.h" />
6464
<ClInclude Include="BaseClasses\dxmperf.h" />
6565
<ClInclude Include="BaseClasses\fourcc.h" />
66+
<ClInclude Include="BaseClasses\guidutil.h" />
6667
<ClInclude Include="BaseClasses\measure.h" />
6768
<ClInclude Include="BaseClasses\msgthrd.h" />
6869
<ClInclude Include="BaseClasses\mtype.h" />
@@ -101,6 +102,7 @@
101102
<ClCompile Include="BaseClasses\ddmm.cpp" />
102103
<ClCompile Include="BaseClasses\dllentry.cpp" />
103104
<ClCompile Include="BaseClasses\dllsetup.cpp" />
105+
<ClCompile Include="BaseClasses\guidutil.cpp" />
104106
<ClCompile Include="BaseClasses\mtype.cpp" />
105107
<ClCompile Include="BaseClasses\outputq.cpp" />
106108
<ClCompile Include="BaseClasses\perflog.cpp" />

src/ExtLib/BaseClasses.vcxproj.filters

+6
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@
4444
<ClInclude Include="BaseClasses\fourcc.h">
4545
<Filter>Header Files</Filter>
4646
</ClInclude>
47+
<ClInclude Include="BaseClasses\guidutil.h">
48+
<Filter>Header Files</Filter>
49+
</ClInclude>
4750
<ClInclude Include="BaseClasses\measure.h">
4851
<Filter>Header Files</Filter>
4952
</ClInclude>
@@ -154,6 +157,9 @@
154157
<ClCompile Include="BaseClasses\dllsetup.cpp">
155158
<Filter>Source Files</Filter>
156159
</ClCompile>
160+
<ClCompile Include="BaseClasses\guidutil.cpp">
161+
<Filter>Source Files</Filter>
162+
</ClCompile>
157163
<ClCompile Include="BaseClasses\mtype.cpp">
158164
<Filter>Source Files</Filter>
159165
</ClCompile>

0 commit comments

Comments
 (0)