1
0
mirror of https://github.com/coalaura/ffwebp.git synced 2025-09-08 05:49:54 +00:00
This commit is contained in:
Laura
2025-08-12 15:47:54 +02:00
parent 9e754ddad8
commit ebd42dc4fd
2 changed files with 18 additions and 11 deletions

View File

@@ -37,6 +37,11 @@ func main() {
Aliases: []string{"c"},
Usage: "force output codec (jpeg, png, ...)",
},
&cli.BoolFlag{
Name: "sniff",
Aliases: []string{"f"},
Usage: "force sniffing of input codec (ignore extension)",
},
&cli.IntFlag{
Name: "quality",
Aliases: []string{"q"},
@@ -117,7 +122,7 @@ func run(_ context.Context, cmd *cli.Command) error {
logx.Printf("reading input from <stdin>\n")
}
sniffed, reader, err := codec.Sniff(reader, input)
sniffed, reader, err := codec.Sniff(reader, input, cmd.Bool("sniff"))
if err != nil {
return err
}

View File

@@ -29,7 +29,8 @@ func (s *Sniffed) String() string {
return builder.String()
}
func Sniff(reader io.Reader, input string) (*Sniffed, io.Reader, error) {
func Sniff(reader io.Reader, input string, ignoreExtension bool) (*Sniffed, io.Reader, error) {
if !ignoreExtension {
ext := strings.ToLower(strings.TrimPrefix(filepath.Ext(input), "."))
if ext != "" {
codec, _ := FindCodec(ext)
@@ -41,6 +42,7 @@ func Sniff(reader io.Reader, input string) (*Sniffed, io.Reader, error) {
}, reader, nil
}
}
}
buf, err := io.ReadAll(reader)
if err != nil {