feat(ads/seo/release): v1.2.0 with live Google Ads, isolated ad profile, ads.txt, and SEO/AEO/GEO optimization
This commit is contained in:
parent
a88aafa1e5
commit
0e568f1f0a
975 changed files with 130593 additions and 16783 deletions
76
tests/Paca.Tests/Core/AudioVocalStemExtractorGateTests.cs
Normal file
76
tests/Paca.Tests/Core/AudioVocalStemExtractorGateTests.cs
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
using System;
|
||||
using Paca.Core;
|
||||
using Xunit;
|
||||
|
||||
namespace Paca.Tests.Core;
|
||||
|
||||
public class AudioVocalStemExtractorGateTests
|
||||
{
|
||||
[Fact]
|
||||
public void Gate317_AudioVocalStemExtractor_BuildsKaraokeVocalRemovalFilter()
|
||||
{
|
||||
var filter = AudioVocalStemExtractor.BuildFfmpegStemFilter(AudioStemMode.VocalRemovalKaraoke);
|
||||
|
||||
Assert.Contains("pan=stereo|c0=0.5*c0-0.5*c1|c1=0.5*c1-0.5*c0", filter);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate318_AudioVocalStemExtractor_BuildsSpeechVoiceEnhanceFilter()
|
||||
{
|
||||
var filter = AudioVocalStemExtractor.BuildFfmpegStemFilter(AudioStemMode.VoiceEnhanceSpeechOnly);
|
||||
|
||||
Assert.Contains("highpass=f=200", filter);
|
||||
Assert.Contains("lowpass=f=3400", filter);
|
||||
Assert.Contains("afftdn=nf=-25", filter);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate319_AudioVocalStemExtractor_BuildsBassBoostFilter()
|
||||
{
|
||||
var filter = AudioVocalStemExtractor.BuildFfmpegStemFilter(AudioStemMode.BassBoost);
|
||||
|
||||
Assert.Contains("bass=g=8:f=110:w=0.6", filter);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate320_AudioVocalStemExtractor_BuildsFullCommandLine_Correctly()
|
||||
{
|
||||
var cmd = AudioVocalStemExtractor.BuildStemCommandLine(
|
||||
inputPath: "C:\\music\\song.mp3",
|
||||
outputPath: "C:\\music\\song_karaoke.mp3",
|
||||
mode: AudioStemMode.VocalRemovalKaraoke,
|
||||
audioCodec: "libmp3lame"
|
||||
);
|
||||
|
||||
Assert.Contains("-i \"C:\\music\\song.mp3\"", cmd);
|
||||
Assert.Contains("-filter:a \"pan=stereo|c0=0.5*c0-0.5*c1|c1=0.5*c1-0.5*c0\"", cmd);
|
||||
Assert.Contains("-c:a libmp3lame -b:a 320k", cmd);
|
||||
Assert.EndsWith("\"C:\\music\\song_karaoke.mp3\" -y", cmd);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate321_AudioVocalStemExtractor_BuildsIsolatedVocalsAcapellaFilter()
|
||||
{
|
||||
var filter = AudioVocalStemExtractor.BuildFfmpegStemFilter(AudioStemMode.IsolatedVocalsAcapella);
|
||||
|
||||
Assert.Contains("0.5*c0+0.5*c1", filter);
|
||||
Assert.Contains("bandpass=f=1200", filter);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate322_AudioVocalStemExtractor_BuildsNightModeDialogueNormalizationFilter()
|
||||
{
|
||||
var filter = AudioVocalStemExtractor.BuildFfmpegStemFilter(AudioStemMode.NightModeDialogueNormalization);
|
||||
|
||||
Assert.Contains("dynaudnorm=f=150", filter);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate323_AudioVocalStemExtractor_BuildsPodcastBroadcastSpeechFilter()
|
||||
{
|
||||
var filter = AudioVocalStemExtractor.BuildFfmpegStemFilter(AudioStemMode.PodcastBroadcastSpeech);
|
||||
|
||||
Assert.Contains("highpass=f=80", filter);
|
||||
Assert.Contains("afftdn=nf=-20", filter);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue