toahartor / gi-cutscenes Goto Github PK
View Code? Open in Web Editor NEWA command line program playing with the cutscenes files (USM) from Genshin Impact.
License: GNU General Public License v3.0
A command line program playing with the cutscenes files (USM) from Genshin Impact.
License: GNU General Public License v3.0
I got the second key: 5515318060794455(version 3006)
Add more options plz
Is it possible to get clips in better quality (60fps)?. Because all clips are in 30fps now. Or this isn't possible, due to the fact that these are pre-rendered videos?
It would be great if support various output types like mp4, flv,...
and why don't use ffmpeg instead of mkvmerge ?
Will the next version support edit fffmpeg options?
{
"encAudio": true,
"version": "3.2",
"videoGroups": [
{
"version": "3022",
"key": 0,
"videos": ["Cs_Sumeru_AQ30221401_DinA", "Cs_Sumeru_AQ30220701_ALC_Boy", "Cs_Sumeru_AQ30220701_ALC_Girl"]
},
{
"version": "3028",
"key": 0,
"videos": ["Cs_Sumeru_AQ_30281101_NBS_Boy", "Cs_Sumeru_AQ_30281101_NBS_Girl", "Cs_Sumeru_AQ_30280901_SKP_Boy", "Cs_Sumeru_AQ_30280901_SKP_Girl", "Cs_Sumeru_AQ_30281901_DM", "Cs_Sumeru_AQ_30280701_MS_Boy", "Cs_Sumeru_AQ_30280701_MS_Girl"]
}
]
}
Hi, I used the latest versions.json to convert all the new cutscenes, but I've been having an issue with the resultant videos. For some reason, these cutscenes always convert with problems in the video, always at the same positions. These are skips and pixelation(?) so it seems like parts of the video just aren't converting correctly? I ran a repair from the launcher in case it was my local files being the issue, but it didn't modify any of the video files. Has anyone else experienced this issue? Are these possibly issues in the original USM files or something?
Would you please tell me how to get the key of the USM file?
Maybe I'm a little inattentive, but I can't find the cutscene of Syno's fight with Alhaitham. Do you know its name?
I think the Honkai Impact 3rd cutscenes are also encrypted from version 5.9. Would you interest in Honkai Impact 3rd cutscenes?
Subtitles name found: Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy C:\Users\{UserName}\Downloads\GICutscenes\GenshinData\Subtitle\CHS\Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy_CHS.txt converted to ASS C:\Users\{UserName}\Downloads\GICutscenes\GenshinData\Subtitle\CHT\Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy_CHT.txt converted to ASS C:\Users\{UserName}\Downloads\GICutscenes\GenshinData\Subtitle\DE\Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy_DE.txt converted to ASS C:\Users\{UserName}\Downloads\GICutscenes\GenshinData\Subtitle\EN\Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy_EN.txt converted to ASS C:\Users\{UserName}\Downloads\GICutscenes\GenshinData\Subtitle\ES\Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy_ES.txt converted to ASS C:\Users\{UserName}\Downloads\GICutscenes\GenshinData\Subtitle\FR\Cs_Inazuma_EQ4002207_ShikishogunRecalling_Boy_FR.txt converted to ASS Unhandled exception: System.Exception: Dialogue block doesn't start with a number at GICutscenes.FileTypes.ASS.ParseSrt() at GICutscenes.Program.MergeFiles(String outputPath, String basename, String engine, Boolean subs) at GICutscenes.Program.BatchDemuxCommand(DirectoryInfo inputDir, DirectoryInfo outputDir, String engine, Boolean merge, Boolean subs, Boolean noCleanup) at GICutscenes.Program.<>c.<<Main>b__1_1>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Invocation.AnonymousCommandHandler.InvokeAsync(InvocationContext ) at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass18_0.<<UseParseErrorReporting>b__0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass13_0.<<UseHelp>b__0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<<UseVersionOption>b__0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass20_0.<<UseTypoCorrections>b__0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__19_0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<<UseParseDirective>b__0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<RegisterWithDotnetSuggest>b__6_0>d.MoveNext() --- End of stack trace from previous location --- at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass9_0.<<UseExceptionHandler>b__0>d.MoveNext()
Small idea I had, but it could use the GitHub API to fetch the latest release and compare it to the current one.
For the versions.json
file, it could check the raw file directly from the repository.
It wouldn't be automatic (as it could take some time before starting the program), but with a new option like --check-update
That would clearly improve the speed of the operation. For instance, have multiple threads decoding the hca files at the same time.
Is there any way to check whether the key is invalid or not?
Ex: demuxUsm allows A and B keys, how do we know those keys are valid and will demux succeed.
Started to analyze how a mkv file was made, and it would be a very good thing if the tool was independent and self-sufficient.
3016: 8823377679488754
3017:6971018813708261
Should dig into it, as the number of builds are increasing...
Moving it to a new issue, dedicated to the GUI if needed.
The repository can be found here : https://github.com/SuperZombi/GICutscenesUI
Can anyone draw an icon for programm?
Originally posted by @SuperZombi in #8 (comment)
ASS header example (with our desired format)
[Script Info]
WrapStyle: 0
ScaledBorderAndShadow: yes
Collisions: Normal
ScriptType: v4.00+
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,SDK_SC_Web,18,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100.0,100.0,0.0,0.0,1,0,0.5,2,10,10,20,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
// For each line of dialog, of our srt, we have
Dialogue: 0,0:00:00.19,0:00:05.31,Default,,0,0,0,,Lorem ipsum```
I encountered an exception when re-converting some older videos. From what I can tell, an update two months ago added SRT subtitles for a lot of videos in some languages, such as Japanese. These videos had subtitles previously in SRT format, but the extension was TXT, so this causes this exception to trigger.
Subtitles name found: Ambor_Readings
Unhandled exception: System.IO.FileNotFoundException: No ASS file could be found for the subs Ambor_Readings, but two files were matched previously, please report this case.
at GICutscenes.Program.MergeFiles(String outputPath, String basename, String engine, Boolean subs)
at GICutscenes.Program.BatchDemuxCommand(DirectoryInfo inputDir, DirectoryInfo outputDir, String engine, Boolean merge, Boolean subs, Boolean noCleanup)
at GICutscenes.Program.<>c.<<Main>b__1_1>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Invocation.AnonymousCommandHandler.InvokeAsync(InvocationContext )
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass18_0.<<UseParseErrorReporting>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass13_0.<<UseHelp>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<<UseVersionOption>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass20_0.<<UseTypoCorrections>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__19_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<<UseParseDirective>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<RegisterWithDotnetSuggest>b__6_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass9_0.<<UseExceptionHandler>b__0>d.MoveNext()
I'm developing an app to play cutscenes and found PCM audio cannot decode in WinUI. I can export video and audio separately and combine them into mkv files after encoding. However, it's the best way to finish all steps in CLI.
Add two command option --audio-format
and --video-format
to command demuxUsm
and batchDemux
.
Options description:
# GICutsences.exe demuxUsm -h
Options:
-af, --audio-format <audio-format> Encode audio stream in MKV file, the original format is PCM.
-vf, --video-format <video-format> Encode video stream in MKV file, the original format is VP9.
# other options ...
These two options will take effect only after adding --merge
. If user don't add any encoding format, the origin stream would be copied to output file. If user add encoding format, program will use ffmpeg
engine instead of --mkv-engine
.
GICutsences.exe demuxUsm <InputFile> -af aac -vf h264 -o ./
Ignore -af
and -vf
option because of no -m
GICutsences.exe demuxUsm <InputFile> -m -af flac -o ./
Audio stream will be encoded to flac format.
GICutsences.exe demuxUsm <InputFile> -m -af flac -e mkvmerge -o ./
Ignore -e mkvmerge
, use ffmpeg insead.
When add --video-format
, it takes a lot of time to encode video stream and shows no progress. But I think nobody would re-encode video stream.
$ ./GICutscenes batchDemux "C:\Program Files\Genshin Impact\Genshin Impact Game\YuanShen_Data\StreamingAssets\VideoAssets\StandaloneWindows64" --output './output' -m -s -e ffmpeg
Output folder : C:\Users\zhang\GI-cutscenes\src\bin\Release\net7.0\output
Finding encryption key for Ambor_Readings.usm...
key1=D53F3E0B key2=00000000
Demuxing Ambor_Readings.usm : extracting video and audio...
Converting Ambor_Readings_2.hca to wav...
Converting Ambor_Readings_1.hca to wav...
Converting Ambor_Readings_0.hca to wav...
Converting Ambor_Readings_3.hca to wav...
Extraction completed !
Merging using ffmpeg.
Subtitles name found: Ambor_Readings
Unhandled exception: System.IO.FileNotFoundException: No ASS file could be found for the subs Ambor_Readings, but two files were matched previously, please report this case.
at GICutscenes.Program.MergeFiles(String outputPath, String basename, String engine, Boolean subs) in C:\Users\zhang\GI-cutscenes\src\Program.cs:line 285
at GICutscenes.Program.BatchDemuxCommand(DirectoryInfo inputDir, DirectoryInfo outputDir, String engine, Boolean merge, Boolean subs, Boolean noCleanup) in C:\Users\zhang\GI-cutscenes\src\Program.cs:line 183
at GICutscenes.Program.<>c.<<Main>b__1_1>d.MoveNext() in C:\Users\zhang\GI-cutscenes\src\Program.cs:line 135
--- End of stack trace from previous location ---
at System.CommandLine.Invocation.AnonymousCommandHandler.InvokeAsync(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass18_0.<<UseParseErrorReporting>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass13_0.<<UseHelp>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<<UseVersionOption>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass20_0.<<UseTypoCorrections>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__19_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<<UseParseDirective>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<RegisterWithDotnetSuggest>b__6_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass9_0.<<UseExceptionHandler>b__0>d.MoveNext()
$ cat .\appsettings.json
{
"Settings": {
"MkvMergePath": "",
"FfmpegPath": "C:\\Users\\zhang\\scoop\\shims\\ffmpeg.exe",
"SubsFolder": "C:\\Users\\zhang\\Grasscutter_Resources\\Resources\\Subtitle"
}
}
$ ll C:\\Users\\zhang\\Grasscutter_Resources\\Resources\\Subtitle\\CHS
.rwxrwx--- MSIGE76\zhang MSIGE76\zhang 1.5 KB Tue Sep 6 21:40:58 2022 Ambor_Readings_CHS.srt
.rwxrwx--- MSIGE76\zhang MSIGE76\zhang 1.5 KB Tue Sep 6 21:40:58 2022 Ambor_Readings_CHS.txt
.rwxrwx--- MSIGE76\zhang MSIGE76\zhang 627 B Tue Sep 6 21:40:58 2022 battlePass_CHS.srt
.rwxrwx--- MSIGE76\zhang MSIGE76\zhang 627 B Tue Sep 6 21:40:58 2022 battlePass_CHS.txt
{
"encAudio": true,
"version": "3.1",
"videoGroups": [
{
"version": "3017",
"key": 0,
"videos": [
"Cs_Sumeru_AQ30170602_GF_Boy",
"Cs_Sumeru_AQ30170602_GF_Girl",
"Cs_Sumeru_AQ30170601_SOfS"
]
},
{
"version": "13011",
"key": 0,
"videos": [
"Cs_Sumeru_LQ130111201_EnODeGa_Boy",
"Cs_Sumeru_LQ130111201_EnODeGa_Girl"
]
},
{
"version": "3016",
"key": 0,
"videos": [
"Cs_Sumeru_AQ30161501_DT_Boy",
"Cs_Sumeru_AQ30161501_DT_Girl"
]
},
{
"version": "3021",
"key": 0,
"videos": [
"Cs_Sumeru_AQ302103_FOTD_Boy",
"Cs_Sumeru_AQ302103_FOTD_Girl",
"Cs_Sumeru_AQ302105_GOTP"
]
},
{
"version": "40080",
"key": 0,
"videos": [
"Cs_MD_EQ400800601_VinFes_Boy",
"Cs_MD_EQ400800601_VinFes_Girl"
]
},
{
"version": "3020",
"key": 0,
"videos": [
"Cs_Sumeru_AQ302009_MOTM"
]
}
]
}
It's much better if there is a command for it. I can fork the repo and take a look at making some changes later ;)
When I choose to export the new cutscenes from Sumeru in Genshin Impact version 3.0, I get the following results, and there is no file in the Output Folder
Output folder : D:\1\GICutscenes_win-x64_standalone\output
Finding encryption key for Cs_Sumeru_AQ30130101_DofFG_Boy.usm...
Unhandled exception: System.Collections.Generic.KeyNotFoundException: Unable to find the second key in versions.json for Cs_Sumeru_AQ30130101_DofFG_Boy
at GICutscenes.Demuxer.EncryptionKeyInBLK(String videoFilename)
at GICutscenes.Demuxer.EncryptionKey(String videoFilename)
at GICutscenes.Demuxer.Demux(String filenameArg, Byte[] key1Arg, Byte[] key2Arg, String output)
at GICutscenes.Program.BatchDemuxCommand(DirectoryInfo inputDir, DirectoryInfo outputDir, String engine, Boolean merge, Boolean subs, Boolean noCleanup)
at GICutscenes.Program.<>c.<<Main>b__1_1>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Invocation.AnonymousCommandHandler.InvokeAsync(InvocationContext )
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass18_0.<<UseParseErrorReporting>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass13_0.<<UseHelp>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<<UseVersionOption>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass20_0.<<UseTypoCorrections>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__19_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<<UseParseDirective>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<<RegisterWithDotnetSuggest>b__6_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass9_0.<<UseExceptionHandler>b__0>d.MoveNext()
Starting ffmpeg
Working ffmpeg...
D:/1/GICutscenes_win-x64_standalone/output\Cs_Sumeru_AQ30130101_DofFG_Boy.m2v: No such file or directory
Merging complete!
But the cutscenes I exported for version 2.7 and before were fine
These are the only four cutscenes that can't be exported properly, Look at the time is version 3.0 update
求一份备份,收集下老cg
Get a backup and collect the old cg
like the title, I hope the feature change font size because the subtitle is still a bit large.
I will try to look into it when I have time
plz update versions.json to 2.8
我打开GICutscenes它出现了以下情况:
Required command was not provided.
Description:
A command line program playing with the cutscenes files (USM) from Genshin Impact.
Usage:
GICutscenes [command] [options]
Four new CGs now released in ver3.0 of Genshin.
Hope update asap
From version 2.0 until version 2.6, the second key for the cutscenes of the current version was available in the dispatch's encrypted config, which was quite easy to retrieve.
However starting version 2.7, the second keys might now be sent when the game needs it, therefore either in a packet at the beginning of a cutscene during a quest or during the login. The version file (right below) also gives the several groups of cinematics that have the same second key. It would then require a rigorously taken packet capture to get the key associated with the cutscene viewed.
"videoGroups": [
{
"version": "1031",
"videos": [
"Cs_LiYue_LQ10310301_BreakThroughSpace_Boy",
"Cs_LiYue_LQ10310301_BreakThroughSpace_Girl",
"Cs_LiYue_LQ10310601_FusheStory"
]
},
{
"version": "11026",
"videos": [
"Cs_LiYue_LQ110261501_YelanStory_Boy",
"Cs_LiYue_LQ110261501_YelanStory_Girl"
]
}
]
There's a strong probability that, like for the previous versions, they would give the keys in the Video Versions file (as the code would suggest). So, to get the keys from 2.7, we would have to wait for the 2.8 release.
Until 2.8 drops, I'll try to verify my theory....
Idk if I i not searched it hard enough, but the subtitles repo is down. Probably because the name of the repo contains Genshin, so it might have be detected by Hoyo and have been deleted. If you have some ideas about extracting them, I could host them myself
Currently when using --merge the program uses the first audio language, which is Chinese. It would be pretty cool if we could select which audio file to automatically merge with the video, either in the configuration or before merging.
0 is Chinese, 1 is English, 2 is Japanese and 3 is Korean.
So I just batchDemux'd all the cutscenes in prep of rewatching them with friends. But, how do I turn the huge amount of files in my output folder into MKVs as described in the readme?
Thanks :)
Hi
I was wondering if the keys from the pre-beta versions could be added?
Thanks
Unhandled exception. System.IO.InvalidDataException: Failed to load configuration from file 'C:\Users\***\Downloads\GICutscenes-0.4.0-win-x64-standalone\appsettings.json'.
---> System.FormatException: Could not parse the JSON file.
---> System.Text.Json.JsonReaderException: 'M' is an invalid escapable character within a JSON string. The string should be correctly escaped. LineNumber: 2 | BytePositionInLine: 24.
at System.Text.Json.ThrowHelper.ThrowJsonReaderException(Utf8JsonReader& , ExceptionResource , Byte , ReadOnlySpan1 ) at System.Text.Json.Utf8JsonReader.ConsumeStringAndValidate(ReadOnlySpan
1 , Int32 )
at System.Text.Json.Utf8JsonReader.ConsumeString()
at System.Text.Json.Utf8JsonReader.ConsumeValue(Byte )
at System.Text.Json.Utf8JsonReader.ReadSingleSegment()
at System.Text.Json.Utf8JsonReader.Read()
at System.Text.Json.JsonDocument.Parse(ReadOnlySpan1 , JsonReaderOptions , MetadataDb& , StackRowStack& ) at System.Text.Json.JsonDocument.Parse(ReadOnlyMemory
1 , JsonReaderOptions , Byte[] , PooledByteBufferWriter )
at System.Text.Json.JsonDocument.Parse(ReadOnlyMemory1 , JsonDocumentOptions ) at System.Text.Json.JsonDocument.Parse(String , JsonDocumentOptions ) at Microsoft.Extensions.Configuration.Json.JsonConfigurationFileParser.ParseStream(Stream ) at Microsoft.Extensions.Configuration.Json.JsonConfigurationProvider.Load(Stream ) --- End of inner exception stack trace --- at Microsoft.Extensions.Configuration.Json.JsonConfigurationProvider.Load(Stream ) at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load(Boolean ) --- End of inner exception stack trace --- at Microsoft.Extensions.Configuration.FileConfigurationProvider.HandleException(ExceptionDispatchInfo ) at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load(Boolean ) at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load() at Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList
1 )
at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()
at GICutscenes.Program.Main(String[] args)
Generated by the POC :
"C:/Program Files/MKVToolNix/mkvmerge.exe -o files\battlePass.mkv --track-name 0:battlePass --default-track 0:0 --forced-track 0:0 -d 0 -A -S files\battlePass.ivf --track-name 0:Chinese --language 0:chi --default-track 0:0 --forced-track 0:0 -D -a 0 -S files\battlePass_0.wav --track-name 0:English --language 0:eng --default-track 0:0 --forced-track 0:0 -D -a 0 -S files\battlePass_1.wav --track-name 0:Japanese --language 0:jpn --default-track 0:0 --forced-track 0:0 -D -a 0 -S files\battlePass_2.wav --track-name 0:Korean --language 0:kor --default-track 0:0 --forced-track 0:0 -D -a 0 -S files\battlePass_3.wav --track-name 0:Chinese (Simplified) --language 0:chi --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\CHS\battlePass_CHS.ass --track-name 0:Chinese (Traditional) --language 0:chi --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\CHT\battlePass_CHT.ass --track-name 0:German --language 0:ger --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\DE\battlePass_DE.ass --track-name 0:English --language 0:eng --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\EN\battlePass_EN.ass --track-name 0:Spanish --language 0:spa --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\ES\battlePass_ES.ass --track-name 0:French --language 0:fre --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\FR\battlePass_FR.ass --track-name 0:Indonesian --language 0:ind --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\ID\battlePass_ID.ass --track-name 0:Japanese --language 0:jpn --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\JP\battlePass_JP.ass --track-name 0:Korean --language 0:kor --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\KR\battlePass_KR.ass --track-name 0:Portuguese --language 0:por --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\PT\battlePass_PT.ass --track-name 0:Russian --language 0:rus --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\RU\battlePass_RU.ass --track-name 0:Thai --language 0:tha --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\TH\battlePass_TH.ass --track-name 0:Vietnamese --language 0:vie --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\VI\battlePass_VI.ass --attachment-description Japanese Font --attach-file fonts\ja-jp.ttf --attachment-description Chinese Font --attach-file fonts\zh-cn.ttf"
--track-name 0:battlePass --default-track 0:0 --forced-track 0:0 -d 0 -A -S files\battlePass.ivf
Parameters :
-d 0
video track 0--track-name 0:Chinese --language 0:chi --default-track 0:0 --forced-track 0:0 -D -a 0 -S files\battlePass_0.wav
Parameters :
-a 0
audio track 0-D
no video-S
no subtitlesLanguage codes :
--track-name 0:Chinese (Simplified) --language 0:chi --default-track 0:0 --forced-track 0:0 -D -A -s 0 GenshinData\Subtitle\CHS\battlePass_CHS.ass
Language codes :
--attachment-description Japanese Font --attach-file fonts\ja-jp.ttf
See #45
I think it should be an HCA signature, but the decryption shouldn't be bothered by its absence.
Cutscenes involved : Cs_Sumeru_AQ30161501_DT
Hi
I was wondering whether it would be possible for you to support macOS with this tool given that a Linux version is available.
While I am aware that there is no game client for Genshin Impact on macOS, I would still like to be able to do work related to the scope of this project using this OS.
Thanks
i need this
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.