package downloader import ( "fmt" "m3u8-downloader/pkg/media" "sync" ) func (s *DownloadService) DownloadWorker(id int, segmentChan <-chan media.Segment, wg *sync.WaitGroup) { defer wg.Done() for segment := range segmentChan { fmt.Printf("[Worker %d] Downloading: %s\n", id, segment.URL) err := s.DownloadFile(segment.URL) if err != nil { fmt.Printf("[Worker %d] Error: %s\n", id, err) return } } }