mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 10:12:45 +00:00 
			
		
		
		
	 0cd0565abc
			
		
	
	
		0cd0565abc
		
	
	
	
	
		
			
			"Improve" is an understatement, since this commit makes all FLAC files seek without errors, mostly with high accuracy, and partially even fast: - A new generic seek table type is introduced, which keeps an always-sorted list of seek points, which allows it to use binary search and fast insertion. - Automatic seek points are inserted according to two heuristics (distance between seek points and minimum seek precision), which not only builds a seek table for already-played sections of the file, but improves seek precision even for files with an existing seek table. - Manual seeking by skipping frames works properly now and is still used as a last resort.
		
			
				
	
	
		
			25 lines
		
	
	
	
		
			571 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
	
		
			571 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
| set(SOURCES
 | |
|     GenericTypes.cpp
 | |
|     SampleFormats.cpp
 | |
|     Loader.cpp
 | |
|     WavLoader.cpp
 | |
|     FlacLoader.cpp
 | |
|     WavWriter.cpp
 | |
|     Metadata.cpp
 | |
|     MP3Loader.cpp
 | |
|     QOALoader.cpp
 | |
|     QOATypes.cpp
 | |
|     UserSampleQueue.cpp
 | |
|     VorbisComment.cpp
 | |
| )
 | |
| 
 | |
| if (SERENITYOS)
 | |
|     list(APPEND SOURCES ConnectionToServer.cpp)
 | |
|     set(GENERATED_SOURCES
 | |
|         ../../Services/AudioServer/AudioClientEndpoint.h
 | |
|         ../../Services/AudioServer/AudioServerEndpoint.h
 | |
|     )
 | |
| endif()
 | |
| 
 | |
| serenity_lib(LibAudio audio)
 | |
| target_link_libraries(LibAudio PRIVATE LibCore LibIPC LibThreading LibUnicode)
 |