forked from lug/matterbridge
		
	
		
			
				
	
	
		
			37 lines
		
	
	
		
			819 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			819 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| //go:build cgo
 | |
| // +build cgo
 | |
| 
 | |
| package helper
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 
 | |
| 	"github.com/Benau/tgsconverter/libtgsconverter"
 | |
| 	"github.com/sirupsen/logrus"
 | |
| )
 | |
| 
 | |
| func CanConvertTgsToX() error {
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| // ConvertTgsToX convert input data (which should be tgs format) to any format supported by libtgsconverter
 | |
| func ConvertTgsToX(data *[]byte, outputFormat string, logger *logrus.Entry) error {
 | |
| 	options := libtgsconverter.NewConverterOptions()
 | |
| 	options.SetExtension(outputFormat)
 | |
| 	blob, err := libtgsconverter.ImportFromData(*data, options)
 | |
| 	if err != nil {
 | |
| 		return fmt.Errorf("failed to run libtgsconverter.ImportFromData: %s", err.Error())
 | |
| 	}
 | |
| 
 | |
| 	*data = blob
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| func SupportsFormat(format string) bool {
 | |
| 	return libtgsconverter.SupportsExtension(format)
 | |
| }
 | |
| 
 | |
| func LottieBackend() string {
 | |
| 	return "libtgsconverter"
 | |
| }
 | 
