mirror of
https://github.com/coalaura/ffwebp.git
synced 2025-09-08 05:49:54 +00:00
--sniff
This commit is contained in:
@@ -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
|
||||
}
|
||||
|
@@ -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 {
|
||||
|
Reference in New Issue
Block a user