diff --git a/SMP/config.asm b/SMP/config.asm index 31392b44fcff3584ae62ad96f09314d94cfcb64c..40e110919100112838381c5e8a8ad760b50d8f17 100644 --- a/SMP/config.asm +++ b/SMP/config.asm @@ -452,6 +452,7 @@ %define CONFIG_LIBBS2B 0 %define CONFIG_LIBCACA 0 %define CONFIG_LIBCELT 0 +%define CONFIG_LIBCODEC2 0 %define CONFIG_LIBDC1394 0 %define CONFIG_LIBDRM 0 %define CONFIG_LIBFLITE 0 @@ -1166,6 +1167,7 @@ %define CONFIG_QDMC_AT_DECODER 0 %define CONFIG_QDM2_AT_DECODER 0 %define CONFIG_LIBCELT_DECODER 0 +%define CONFIG_LIBCODEC2_DECODER 0 %define CONFIG_LIBFDK_AAC_DECODER 0 %define CONFIG_LIBGSM_DECODER 0 %define CONFIG_LIBGSM_MS_DECODER 0 @@ -1355,6 +1357,7 @@ %define CONFIG_ILBC_AT_ENCODER 0 %define CONFIG_PCM_ALAW_AT_ENCODER 0 %define CONFIG_PCM_MULAW_AT_ENCODER 0 +%define CONFIG_LIBCODEC2_ENCODER 0 %define CONFIG_LIBFDK_AAC_ENCODER 0 %define CONFIG_LIBGSM_ENCODER 0 %define CONFIG_LIBGSM_MS_ENCODER 0 @@ -1423,6 +1426,8 @@ %define CONFIG_HEVC_VAAPI_HWACCEL 0 %define CONFIG_HEVC_VDPAU_HWACCEL 0 %define CONFIG_HEVC_VIDEOTOOLBOX_HWACCEL 0 +%define CONFIG_MJPEG_NVDEC_HWACCEL 1 +%define CONFIG_MJPEG_VAAPI_HWACCEL 0 %define CONFIG_MPEG1_NVDEC_HWACCEL 1 %define CONFIG_MPEG1_VDPAU_HWACCEL 0 %define CONFIG_MPEG1_VIDEOTOOLBOX_HWACCEL 0 @@ -1499,6 +1504,7 @@ %define CONFIG_VP9_PARSER 1 %define CONFIG_XMA_PARSER 1 %define CONFIG_ALSA_INDEV 0 +%define CONFIG_ANDROID_CAMERA_INDEV 0 %define CONFIG_AVFOUNDATION_INDEV 0 %define CONFIG_BKTR_INDEV 0 %define CONFIG_DECKLINK_INDEV 0 @@ -1941,6 +1947,8 @@ %define CONFIG_CDG_DEMUXER 1 %define CONFIG_CDXL_DEMUXER 1 %define CONFIG_CINE_DEMUXER 1 +%define CONFIG_CODEC2_DEMUXER 1 +%define CONFIG_CODEC2RAW_DEMUXER 1 %define CONFIG_CONCAT_DEMUXER 1 %define CONFIG_DASH_DEMUXER 1 %define CONFIG_DATA_DEMUXER 1 @@ -2200,6 +2208,8 @@ %define CONFIG_BIT_MUXER 1 %define CONFIG_CAF_MUXER 1 %define CONFIG_CAVSVIDEO_MUXER 1 +%define CONFIG_CODEC2_MUXER 1 +%define CONFIG_CODEC2RAW_MUXER 1 %define CONFIG_CRC_MUXER 1 %define CONFIG_DASH_MUXER 1 %define CONFIG_DATA_MUXER 1 diff --git a/SMP/config.h b/SMP/config.h index e8c1695d14a9478909e3ddac3a37b5c2e6b01c33..44cb3a76f150020808f9a4109a62e8dbf35cbb1d 100644 --- a/SMP/config.h +++ b/SMP/config.h @@ -502,6 +502,7 @@ #define CONFIG_LIBBS2B 0 #define CONFIG_LIBCACA 0 #define CONFIG_LIBCELT 0 +#define CONFIG_LIBCODEC2 0 #define CONFIG_LIBDC1394 0 #define CONFIG_LIBDRM 0 #define CONFIG_LIBFLITE 0 @@ -1231,6 +1232,7 @@ #define CONFIG_QDMC_AT_DECODER 0 #define CONFIG_QDM2_AT_DECODER 0 #define CONFIG_LIBCELT_DECODER 0 +#define CONFIG_LIBCODEC2_DECODER 0 #define CONFIG_LIBFDK_AAC_DECODER 0 #define CONFIG_LIBGSM_DECODER 0 #define CONFIG_LIBGSM_MS_DECODER 0 @@ -1420,6 +1422,7 @@ #define CONFIG_ILBC_AT_ENCODER 0 #define CONFIG_PCM_ALAW_AT_ENCODER 0 #define CONFIG_PCM_MULAW_AT_ENCODER 0 +#define CONFIG_LIBCODEC2_ENCODER 0 #define CONFIG_LIBFDK_AAC_ENCODER 0 #define CONFIG_LIBGSM_ENCODER 0 #define CONFIG_LIBGSM_MS_ENCODER 0 @@ -1488,6 +1491,8 @@ #define CONFIG_HEVC_VAAPI_HWACCEL 0 #define CONFIG_HEVC_VDPAU_HWACCEL 0 #define CONFIG_HEVC_VIDEOTOOLBOX_HWACCEL 0 +#define CONFIG_MJPEG_NVDEC_HWACCEL 1 +#define CONFIG_MJPEG_VAAPI_HWACCEL 0 #define CONFIG_MPEG1_NVDEC_HWACCEL 1 #define CONFIG_MPEG1_VDPAU_HWACCEL 0 #define CONFIG_MPEG1_VIDEOTOOLBOX_HWACCEL 0 @@ -1585,6 +1590,7 @@ #define CONFIG_VP9_PARSER 1 #define CONFIG_XMA_PARSER 1 #define CONFIG_ALSA_INDEV 0 +#define CONFIG_ANDROID_CAMERA_INDEV 0 #define CONFIG_AVFOUNDATION_INDEV 0 #define CONFIG_BKTR_INDEV 0 #define CONFIG_DECKLINK_INDEV 0 @@ -2027,6 +2033,8 @@ #define CONFIG_CDG_DEMUXER 1 #define CONFIG_CDXL_DEMUXER 1 #define CONFIG_CINE_DEMUXER 1 +#define CONFIG_CODEC2_DEMUXER 1 +#define CONFIG_CODEC2RAW_DEMUXER 1 #define CONFIG_CONCAT_DEMUXER 1 #define CONFIG_DASH_DEMUXER 1 #define CONFIG_DATA_DEMUXER 1 @@ -2286,6 +2294,8 @@ #define CONFIG_BIT_MUXER 1 #define CONFIG_CAF_MUXER 1 #define CONFIG_CAVSVIDEO_MUXER 1 +#define CONFIG_CODEC2_MUXER 1 +#define CONFIG_CODEC2RAW_MUXER 1 #define CONFIG_CRC_MUXER 1 #define CONFIG_DASH_MUXER 1 #define CONFIG_DATA_MUXER 1 diff --git a/SMP/libavcodec.vcxproj b/SMP/libavcodec.vcxproj index 86e01343902b6bdb2dc32f949fa7c56c82f19b1e..f59769525473f4f401fa1a83e7bd70b0fc11414d 100644 --- a/SMP/libavcodec.vcxproj +++ b/SMP/libavcodec.vcxproj @@ -847,6 +847,7 @@ + diff --git a/SMP/libavcodec.vcxproj.filters b/SMP/libavcodec.vcxproj.filters index 8c43cdd0e3c9a3a8ef78de332a15aff9efa5fa89..ba9605c33e843784250d48f092f7deb1730d0919 100644 --- a/SMP/libavcodec.vcxproj.filters +++ b/SMP/libavcodec.vcxproj.filters @@ -2364,6 +2364,9 @@ Source Files\libavcodec + + Source Files\libavcodec + Source Files\libavcodec diff --git a/SMP/libavformat.def b/SMP/libavformat.def index e6bde1fdf2a4819f284d1f9ef7cfe233caf95449..601ab63ce58e1ebc05afa71c73db64a74a9e6ff8 100644 --- a/SMP/libavformat.def +++ b/SMP/libavformat.def @@ -162,6 +162,9 @@ EXPORTS avio_wl64 avio_write avio_write_marker + avpriv_codec2_mode_bit_rate + avpriv_codec2_mode_block_align + avpriv_codec2_mode_frame_size avpriv_dv_get_packet avpriv_dv_init_demux avpriv_dv_produce_packet diff --git a/SMP/libavformat.vcxproj b/SMP/libavformat.vcxproj index 07c8d444708734b44e80b965661eec21cf3fe016..c0c18f78ec0e39dc3151043c103b4be3e5f3afa5 100644 --- a/SMP/libavformat.vcxproj +++ b/SMP/libavformat.vcxproj @@ -195,6 +195,8 @@ + + diff --git a/SMP/libavformat.vcxproj.filters b/SMP/libavformat.vcxproj.filters index 6913dec3a05bd5c98c28cd3fd11888d1b85a05da..85113b182f32c24290fe5494705d19c10a168b71 100644 --- a/SMP/libavformat.vcxproj.filters +++ b/SMP/libavformat.vcxproj.filters @@ -16,9 +16,12 @@ {9fee14b2-1b77-463a-bd6b-60efdcf8850f} - + {bf017c32-250d-47da-b7e6-d5a5091cb1e6} + + {fd9e10e9-18f6-437d-b5d7-17290540c8b8} + @@ -409,6 +412,12 @@ Source Files\libavformat + + Source Files\libavcodec + + + Source Files\libavformat + Source Files\libavformat diff --git a/SMP/libavformat/demuxer_list.c b/SMP/libavformat/demuxer_list.c index 72db4f7c7cad66c4330e86ca9caa3b11f5097337..ac8bc81715df3811b0c2581544cedbcecceebf19 100644 --- a/SMP/libavformat/demuxer_list.c +++ b/SMP/libavformat/demuxer_list.c @@ -66,6 +66,8 @@ static const AVInputFormat *demuxer_list[] = { &ff_cdg_demuxer, &ff_cdxl_demuxer, &ff_cine_demuxer, + &ff_codec2_demuxer, + &ff_codec2raw_demuxer, &ff_concat_demuxer, &ff_dash_demuxer, &ff_data_demuxer, diff --git a/SMP/libavformat/muxer_list.c b/SMP/libavformat/muxer_list.c index b03f6da6fd684c63f1902327650fc605003ac37f..89f502d2db8b50a3c520e73734453cbd39e1ab2b 100644 --- a/SMP/libavformat/muxer_list.c +++ b/SMP/libavformat/muxer_list.c @@ -38,6 +38,8 @@ static const AVOutputFormat *muxer_list[] = { &ff_bit_muxer, &ff_caf_muxer, &ff_cavsvideo_muxer, + &ff_codec2_muxer, + &ff_codec2raw_muxer, &ff_crc_muxer, &ff_dash_muxer, &ff_data_muxer, diff --git a/SMP/project_get_dependencies.bat b/SMP/project_get_dependencies.bat index 059a51b39ced97a8ba3a90804b10d5f849eb3295..9b439fe9e9dbcbb9e05b6f100b7c9b2170d19c28 100644 --- a/SMP/project_get_dependencies.bat +++ b/SMP/project_get_dependencies.bat @@ -131,9 +131,9 @@ ECHO %REPONAME%: Getting latest release... SET UPSTREAMAPIURL=%UPSTREAMURL:github.com=api.github.com/repos% REM Check if secure OAuth is available IF "%GITHUBTOKEN%" == "" ( - powershell -nologo -noprofile -command "try { Invoke-RestMethod -Uri %UPSTREAMAPIURL%/%REPONAME%/releases/latest > latest.json } catch {exit 1}" + powershell -nologo -noprofile -command "$currentMaxTls = [Math]::Max([Net.ServicePointManager]::SecurityProtocol.value__,[Net.SecurityProtocolType]::Tls.value__);$newTlsTypes = [enum]::GetValues('Net.SecurityProtocolType') | ?{ $_ -gt $currentMaxTls };ForEach ($newTls in $newTlsTypes) { [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor $newTls };try { Invoke-RestMethod -Uri %UPSTREAMAPIURL%/%REPONAME%/releases/latest > latest.json } catch {exit 1}" ) ELSE ( - powershell -nologo -noprofile -command "try { Invoke-RestMethod -Uri %UPSTREAMAPIURL%/%REPONAME%/releases/latest -Headers @{'Authorization' = 'token %GITHUBTOKEN%'} > latest.json } catch {exit 1}" + powershell -nologo -noprofile -command "$currentMaxTls = [Math]::Max([Net.ServicePointManager]::SecurityProtocol.value__,[Net.SecurityProtocolType]::Tls.value__);$newTlsTypes = [enum]::GetValues('Net.SecurityProtocolType') | ?{ $_ -gt $currentMaxTls };ForEach ($newTls in $newTlsTypes) { [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor $newTls };try { Invoke-RestMethod -Uri %UPSTREAMAPIURL%/%REPONAME%/releases/latest -Headers @{'Authorization' = 'token %GITHUBTOKEN%'} > latest.json } catch {exit 1}" ) IF ERRORLEVEL 1 ( ECHO Failed getting latest %REPONAME% release & EXIT /B 1 ) REM Get tag for latest release @@ -156,7 +156,7 @@ REM Download a pre-built archive and extract ECHO %REPONAME%: Downloading %LIBNAME%_%TAG%_msvc%MSVC_VER%.zip... SET PREBUILTDIR=prebuilt MKDIR %PREBUILTDIR% >NUL 2>&1 -powershell -nologo -noprofile -command "try { (New-Object Net.WebClient).DownloadFile('%DLURL%', '%PREBUILTDIR%\temp.zip') } catch {exit 1}" +powershell -nologo -noprofile -command "$currentMaxTls = [Math]::Max([Net.ServicePointManager]::SecurityProtocol.value__,[Net.SecurityProtocolType]::Tls.value__);$newTlsTypes = [enum]::GetValues('Net.SecurityProtocolType') | ?{ $_ -gt $currentMaxTls };ForEach ($newTls in $newTlsTypes) { [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor $newTls };try { (New-Object Net.WebClient).DownloadFile('%DLURL%', '%PREBUILTDIR%\temp.zip') } catch {exit 1}" IF ERRORLEVEL 1 ( ECHO Failed downloading %DLURL% & EXIT /B 1 ) powershell -nologo -noprofile -command "Add-Type -AssemblyName System.IO.Compression.FileSystem; $zip=[System.IO.Compression.ZipFile]::OpenRead('%PREBUILTDIR%\temp.zip'); foreach ($item in $zip.Entries) { try {$file=(Join-Path -Path .\%PREBUILTDIR% -ChildPath $item.FullName); $null=[System.IO.Directory]::CreateDirectory((Split-Path -Path $file)); [System.IO.Compression.ZipFileExtensions]::ExtractToFile($item,$file,$true)} catch {exit 1} }" IF ERRORLEVEL 1 ( ECHO Failed extracting downloaded archive & EXIT /B 1 )