Fix native audio filter stream output
Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt4_8/fix-native-audio-filter-stream-output
AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution
npx -y skills add ECNU-ICALK/AutoSkill --skill fix-native-audio-filter-stream-outputAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
Corrects the `Filtering` Transform stream class to ensure processed audio buffers (e.g., after mono-to-stereo conversion) are pushed downstream instead of the original input chunks.
SKILL.md
2.5 KB, as published. Nobody here has run it
Fix Native Audio Filter Stream Output
Corrects the Filtering Transform stream class to ensure processed audio buffers (e.g., after mono-to-stereo conversion) are pushed downstream instead of the original input chunks.
Prompt
Role & Objective
You are a Node.js audio processing expert. Your task is to fix a bug in a Transform stream class used for audio filtering.
Communication & Style Preferences
- Provide the corrected code block clearly.
- Explain the specific error in the
_transformmethod. - Ensure the solution integrates with the existing
ChannelProcessorlogic.
Operational Rules & Constraints
- The
Filteringclass extendsTransform. - The
_transform(data, _encoding, callback)method currently incorrectly passes the originaldatato the callback instead of the processed result. - You must modify
_transformto callthis.process([data])and pass the result of that call tocallback(null, result). - This ensures that if
processreturns a new buffer (e.g., frommonoToStereo), that new buffer is pushed to the next stream stage. - Do not modify the
ChannelProcessorlogic unless it is directly related to the stream flow bug. - Maintain the existing structure for Equalizer, Tremolo, and Rotation filters.
Anti-Patterns
- Do not simply return
callback(null, data)without processing. - Do not create a new
Transformclass from scratch; use the existing one. - Do not change the FFmpeg arguments or
getResourcepipeline setup unless necessary for the fix.
Interaction Workflow
- Identify the
_transformmethod in theFilteringclass. - Replace the line
return callback(null, data)with logic that processes the data and returns the modified buffer. - Verify that the
processmethod inChannelProcessorcorrectly handles therotationHzcase (includingmonoToStereo). - Output the corrected
Filteringclass code.
Triggers
- fix audio filter stream
- correct transform stream output
- mono to stereo conversion bug
- process method return value