Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Linux] First version discussion #25

Open
AlbrechtL opened this issue Feb 15, 2021 · 8 comments
Open

[Linux] First version discussion #25

AlbrechtL opened this issue Feb 15, 2021 · 8 comments
Labels
enhancement New feature or request
Milestone

Comments

@AlbrechtL
Copy link

I put together an archive with the TeddyBench binaries with Linux support (Tested with Ubuntu 20.04).

Download
https://github.com/AlbrechtL/teddy/releases/tag/v1.2.4-linux

When I got some feedback from you. I will open a pull request to the official teddy sources. If you found a problem open a new issue please.

As a side effect of using Linux (FFMPEG) you will be able to import audio files other than MP3.

@AlbrechtL
Copy link
Author

You can find a new binaries here: https://github.com/AlbrechtL/teddy/releases/tag/v1.2.4-linux_2

I also opened a pull request here: #27

@SciLor SciLor added the enhancement New feature or request label Feb 18, 2021
@SciLor SciLor added this to the Linux milestone Feb 18, 2021
@llucax
Copy link

llucax commented Sep 25, 2021

I just tried it, I followed the instructions on the modified README file and it worked great, thanks!

I also tried to compile the PR myself, but I failed miserably at that. I'm not from the .NET/Mono world so I just tried to google how to do it. I tried to use monodevelop but it's not in Debian and the repo I found is for buster, and I'm in bullseye. I tried to use xbuild as I found in the internet but I got a lot of errors then so I gave up.

Errors (click to expand)$ xbuild >>>> xbuild tool is deprecated and will be removed in future updates, use msbuild instead <<<< XBuild Engine Version 14.0 Mono, Version 6.8.0.105 Copyright (C) 2005-2013 Various Mono authors Build started 25/09/2021 23:59:03. __________________________________________________ /home/luca/devel/teddy/Teddy.sln: warning : Don't know how to handle GlobalSection ExtensibilityGlobals, Ignoring. Project "/home/luca/devel/teddy/Teddy.sln" (default target(s)): Target ValidateSolutionConfiguration: Building solution configuration "Debug (Release Settings)|Any CPU". Target Build: Project "/home/luca/devel/teddy/Concentus/Concentus.csproj" (default target(s)): Target PrepareForBuild: Configuration: Debug (Release Settings) Platform: AnyCPU Created directory "bin/Debug (Release Settings)/" Created directory "obj/Debug (Release Settings)/" Target GetFrameworkPaths: /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : TargetFrameworkVersion 'v4.8' not supported by this toolset (ToolsVersion: 14.0). Target GenerateSatelliteAssemblies: No input files were specified for target GenerateSatelliteAssemblies, skipping. Target CoreCompile: Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /debug:pdbonly /optimize+ /out:"obj/Debug (Release Settings)/Concentus.dll" Celt/AutocorrelationUnsafe.cs Celt/Bands.cs Celt/CeltCommon.cs Celt/CeltConstants.cs Celt/CeltLPC.cs Celt/CeltLPCUnsafe.cs Celt/CeltPitchXCorr.cs Celt/CeltPitchXCorrUnsafe.cs Celt/CWRS.cs Celt/Enums/Spread.cs Celt/Kernels.cs Celt/KernelsUnsafe.cs Celt/KissFFT.cs Celt/KissFFTUnsafe.cs Celt/Laplace.cs Celt/MDCT.cs Celt/Pitch.cs Celt/QuantizeBands.cs Celt/Rate.cs Celt/Structs/AnalysisInfo.cs Celt/Structs/CELTDecoder.cs Celt/Structs/CeltEncoder.cs Celt/Structs/CELTMode.cs Celt/Structs/FFTState.cs Celt/Structs/MDCTLookup.cs Celt/Structs/PulseCache.cs Celt/Tables.cs Celt/VQ.cs Common/Autocorrelation.cs Common/CPlusPlus/Arrays.cs Common/CPlusPlus/BoxedValue.cs Common/CPlusPlus/Pointer.cs Common/EntropyCoder.cs Common/Inlines.cs Common/Resampler.cs Opus/Analysis.cs Opus/CodecHelpers.cs Opus/Downmix.cs Opus/Enums/OpusApplication.cs Opus/Enums/OpusBandwidth.cs Opus/Enums/OpusControl.cs Opus/Enums/OpusError.cs Opus/Enums/OpusFramesize.cs Opus/Enums/OpusMode.cs Opus/Enums/OpusSignal.cs Opus/MultiLayerPerceptron.cs Opus/OpusCompare.cs Opus/OpusConstants.cs Opus/OpusException.cs Opus/OpusMultistream.cs Opus/Structs/ChannelLayout.cs Opus/Structs/MLP.cs Opus/Structs/OpusDecoder.cs Opus/Structs/OpusEncoder.cs Opus/Structs/OpusMSDecoder.cs Opus/Structs/OpusMSEncoder.cs Opus/Structs/OpusPacketInfo.cs Opus/Structs/OpusRepacketizer.cs Opus/Structs/StereoWidthState.cs Opus/Structs/TonalityAnalysisState.cs Opus/Structs/VorbisLayout.cs Opus/Tables.cs Silk/ApplySineWindow.cs Silk/BurgModified.cs Silk/BurgModifiedUnsafe.cs Silk/BWExpander.cs Silk/CNG.cs Silk/CodeSigns.cs Silk/CorrelateMatrix.cs Silk/DecodeAPI.cs Silk/DecodeCore.cs Silk/DecodeIndices.cs Silk/DecodeParameters.cs Silk/DecodePitch.cs Silk/DecodePulses.cs Silk/EncodeAPI.cs Silk/EncodeIndices.cs Silk/EncodePulses.cs Silk/Enums/DecoderAPIFlag.cs Silk/Enums/SilkError.cs Silk/Filters.cs Silk/FindLPC.cs Silk/FindLTP.cs Silk/FindPitchLags.cs Silk/FindPredCoefs.cs Silk/GainQuantization.cs Silk/HPVariableCutoff.cs Silk/K2A.cs Silk/LinearAlgebra.cs Silk/LPCInversePredGain.cs Silk/LTPAnalysisFilter.cs Silk/LTPScaleControl.cs Silk/NLSF.cs Silk/NoiseShapeAnalysis.cs Silk/PitchAnalysisCore.cs Silk/PLC.cs Silk/ProcessGains.cs Silk/QuantizeLTPGains.cs Silk/RegularizeCorrelations.cs Silk/Resampler.cs Silk/ResidualEnergy.cs Silk/Schur.cs Silk/ShellCoder.cs Silk/Sigmoid.cs Silk/SilkConstants.cs Silk/Sort.cs Silk/Stereo.cs Silk/Structs/CNGState.cs Silk/Structs/DecControlState.cs Silk/Structs/EncControlState.cs Silk/Structs/NLSFCodebook.cs Silk/Structs/PLCStruct.cs Silk/Structs/SideInfoIndices.cs Silk/Structs/SilkChannelDecoder.cs Silk/Structs/SilkChannelEncoder.cs Silk/Structs/SilkDecoder.cs Silk/Structs/SilkDecoderControl.cs Silk/Structs/SilkEncoder.cs Silk/Structs/SilkEncoderControl.cs Silk/Structs/SilkLPState.cs Silk/Structs/SilkNSQState.cs Silk/Structs/SilkPrefilterState.cs Silk/Structs/SilkResamplerState.cs Silk/Structs/SilkShapeState.cs Silk/Structs/SilkVADState.cs Silk/Structs/StereoDecodeState.cs Silk/Structs/StereoEncodeState.cs Silk/Structs/TOCStruct.cs Silk/SumSqrShift.cs Silk/Tables.cs Silk/TuningParameters.cs Silk/VoiceActivityDetection.cs Silk/VQ_WMat_EC.cs "obj/Debug (Release Settings)/.NETFramework,Version=v4.8.AssemblyAttribute.cs" /target:library /define:TRACE /langversion:7.3 /nostdlib /platform:AnyCPU /reference:/usr/lib/mono/4.8-api/System.dll /reference:/usr/lib/mono/4.8-api/System.Xml.Linq.dll /reference:/usr/lib/mono/4.8-api/System.Data.DataSetExtensions.dll /reference:/usr/lib/mono/4.8-api/Microsoft.CSharp.dll /reference:/usr/lib/mono/4.8-api/System.Data.dll /reference:/usr/lib/mono/4.8-api/System.Net.Http.dll /reference:/usr/lib/mono/4.8-api/System.Xml.dll /reference:/usr/lib/mono/4.8-api/System.Core.dll /reference:/usr/lib/mono/4.8-api//mscorlib.dll CSC: error CS1617: Invalid -langversion option `7.3'. It must be `ISO-1', `ISO-2', Default, Latest or value in range 1 to 7.2 Task "Csc" execution -- FAILED Done building target "CoreCompile" in project "/home/luca/devel/teddy/Concentus/Concentus.csproj".-- FAILED Done building project "/home/luca/devel/teddy/Concentus/Concentus.csproj".-- FAILED Project "/home/luca/devel/teddy/ID3/ID3.csproj" (default target(s)): Target PrepareForBuild: Configuration: Debug (Release Settings) Platform: AnyCPU Created directory "bin/Debug (Release Settings)/" Created directory "obj/Debug (Release Settings)/" Target ResolveAssemblyReferences: /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : Reference 'JetBrains.Annotations, Version=2019.1.3.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL' not resolved For searchpath {CandidateAssemblyFiles} Warning: {CandidateAssemblyFiles} not supported currently For searchpath {HintPathFromItem} Considered ../packages/JetBrains.Annotations.2019.1.3/lib/net20/JetBrains.Annotations.dll, but it does not exist. For searchpath {TargetFrameworkDirectory} Considered target framework dir /usr/lib/mono/4.6-api/, assembly named 'JetBrains.Annotations' not found. Considered target framework dir /usr/lib/mono/4.6-api//Facades/, assembly named 'JetBrains.Annotations' not found. For searchpath {PkgConfig} Considered JetBrains.Annotations, Version=2019.1.3.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL, but could not find in any pkg-config files. For searchpath {GAC} Considered JetBrains.Annotations, Version=2019.1.3.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL, but could not find in the GAC. For searchpath {RawFileName} Considered 'JetBrains.Annotations, Version=2019.1.3.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL' as a file, but the file does not exist For searchpath bin/Debug (Release Settings)/ Considered '/home/luca/devel/teddy/ID3/bin/Debug (Release Settings)/JetBrains.Annotations' as a file, but the file does not exist Considered '/home/luca/devel/teddy/ID3/bin/Debug (Release Settings)/JetBrains.Annotations.exe' as a file, but the file does not exist Considered '/home/luca/devel/teddy/ID3/bin/Debug (Release Settings)/JetBrains.Annotations.dll' as a file, but the file does not exist Target GenerateResources: Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "Resources/FrameMessages.resx,obj/Debug (Release Settings)/ID3.Resources.FrameMessages.resources" Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "Resources/Mp3Messages.resx,obj/Debug (Release Settings)/ID3.Resources.Mp3Messages.resources" Target GenerateSatelliteAssemblies: No input files were specified for target GenerateSatelliteAssemblies, skipping. Target CoreCompile: Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /debug:pdbonly /optimize+ /out:"obj/Debug (Release Settings)/ID3.dll" /resource:"obj/Debug (Release Settings)/ID3.Resources.FrameMessages.resources" /resource:"obj/Debug (Release Settings)/ID3.Resources.Mp3Messages.resources" Frames/DateTimeFrame.cs Frames/DateTime/RecordingDateFrame.cs Frames/Id3Frame.cs Frames/ListTextFrame.cs Frames/ListText/ArtistsFrame.cs Frames/ListText/ComposersFrame.cs Frames/ListText/LyricistsFrame.cs Frames/NumericFrame.cs Frames/Numeric/BeatsPerMinuteFrame.cs Frames/Numeric/YearFrame.cs Frames/Others/CommentFrame.cs Frames/Others/LyricsFrame.cs Frames/Others/PictureFrame.cs Frames/Others/PrivateFrame.cs Frames/Others/UnknownFrame.cs Frames/String/AlbumFrame.cs Frames/String/BandFrame.cs Frames/String/ConductorFrame.cs Frames/String/ContentGroupDescriptionFrame.cs Frames/String/CopyrightFrame.cs Frames/String/CustomTextFrame.cs Frames/String/EncoderFrame.cs Frames/String/EncodingSettingsFrame.cs Frames/String/FileOwnerFrame.cs Frames/String/GenreFrame.cs Frames/String/PublisherFrame.cs Frames/String/SubtitleFrame.cs Frames/String/TitleFrame.cs Frames/TextFrame.cs Frames/TextFrameBase.cs Frames/Textual/FileTypeFrame.cs Frames/Textual/LengthFrame.cs Frames/Textual/TrackFrame.cs Frames/UrlLinkFrame.cs Frames/UrlLink/ArtistUrlFrame.cs Frames/UrlLink/AudioFileUrlFrame.cs Frames/UrlLink/AudioSourceUrlFrame.cs Frames/UrlLink/CommercialUrlFrame.cs Frames/UrlLink/CopyrightUrlFrame.cs Frames/UrlLink/CustomUrlLinkFrame.cs Frames/UrlLink/PaymentUrlFrame.cs Id3Exception.cs Id3/FrameHandlers.cs Id3/Id3Handler.cs Id3/Id3Language.cs Id3/Id3Tag.cs Id3/Id3TagFamily.cs Id3/Id3TextEncoding.cs Id3/Id3Version.cs Id3/TagComparer.cs Id3/v1/Id3v1Handler.cs Id3/v2/Id3v23Handler.cs Id3/v2/Id3v23Handler.Frames.cs Id3/v2/Id3v2Handler.cs Id3/v2/Id3v2StandardHeader.cs Mp3/AudioMode.cs Mp3/AudioStream.cs Mp3/AudioStreamProperties.cs Mp3/Mp3.cs Mp3/Mp3Permissions.cs Mp3/WriteConflictAction.cs Properties/AssemblyInfo.cs Resources/FrameMessages.Designer.cs Resources/Mp3Messages.Designer.cs Utils/ByteArrayHelper.cs Utils/SyncSafeNumber.cs Utils/TextEncodingHelper.cs "obj/Debug (Release Settings)/.NETFramework,Version=v4.6.AssemblyAttribute.cs" /target:library /define:TRACE /langversion:7.3 /nostdlib /platform:AnyCPU /reference:/usr/lib/mono/4.6-api/System.dll /reference:/usr/lib/mono/4.6-api/System.Xml.Linq.dll /reference:/usr/lib/mono/4.6-api/System.Data.DataSetExtensions.dll /reference:/usr/lib/mono/4.6-api/Microsoft.CSharp.dll /reference:/usr/lib/mono/4.6-api/System.Data.dll /reference:/usr/lib/mono/4.6-api/System.Net.Http.dll /reference:/usr/lib/mono/4.6-api/System.Xml.dll /reference:/usr/lib/mono/4.6-api/System.Core.dll /reference:/usr/lib/mono/4.6-api//mscorlib.dll CSC: error CS1617: Invalid -langversion option `7.3'. It must be `ISO-1', `ISO-2', Default, Latest or value in range 1 to 7.2 Task "Csc" execution -- FAILED Done building target "CoreCompile" in project "/home/luca/devel/teddy/ID3/ID3.csproj".-- FAILED Done building project "/home/luca/devel/teddy/ID3/ID3.csproj".-- FAILED Task "MSBuild" execution -- FAILED Done building target "Build" in project "/home/luca/devel/teddy/Teddy.sln".-- FAILED Done building project "/home/luca/devel/teddy/Teddy.sln".-- FAILED Build FAILED. Warnings: /home/luca/devel/teddy/Teddy.sln: warning : Don't know how to handle GlobalSection ExtensibilityGlobals, Ignoring. /home/luca/devel/teddy/Teddy.sln (default targets) -> (Build target) -> /home/luca/devel/teddy/Concentus/Concentus.csproj (default targets) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets (GetFrameworkPaths target) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : TargetFrameworkVersion 'v4.8' not supported by this toolset (ToolsVersion: 14.0). /home/luca/devel/teddy/Teddy.sln (default targets) -> (Build target) -> /home/luca/devel/teddy/ID3/ID3.csproj (default targets) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets (ResolveAssemblyReferences target) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : Reference 'JetBrains.Annotations, Version=2019.1.3.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL' not resolved Errors: /home/luca/devel/teddy/Teddy.sln (default targets) -> (Build target) -> /home/luca/devel/teddy/Concentus/Concentus.csproj (default targets) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) -> CSC: error CS1617: Invalid -langversion option `7.3'. It must be `ISO-1', `ISO-2', Default, Latest or value in range 1 to 7.2 /home/luca/devel/teddy/Teddy.sln (default targets) -> (Build target) -> /home/luca/devel/teddy/ID3/ID3.csproj (default targets) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) -> CSC: error CS1617: Invalid -langversion option `7.3'. It must be `ISO-1', `ISO-2', Default, Latest or value in range 1 to 7.2 3 Warning(s) 2 Error(s) Time Elapsed 00:00:00.7156930

@llucax
Copy link

llucax commented Sep 28, 2021

I've used it a bit more and noticed it can't transcode from opus or flac files, so far I could only use mp3 or wav, is this expected? I think ffmpeg should support it.

Also, the file explorer doesn't sort files alphabetically, which is confusing. When the files are added, they are added in alphabetic order though.

@llucax
Copy link

llucax commented Oct 5, 2021

I had some other issues, where it would close. For example, when using Ctrl-V to paste some text, either in the form to send tonies' details or renaming a tonie.

@AlbrechtL
Copy link
Author

I also tried to compile the PR myself, but I failed miserably at that. I'm not from the .NET/Mono world so I just tried to google how to do it. I tried to use monodevelop but it's not in Debian and the repo I found is for buster, and I'm in bullseye. I tried to use xbuild as I found in the internet but I got a lot of errors then so I gave up.

I used monodevelop on Ubuntu 20.04. You can also use Visual Studio on Windows. The result should be the same. To start with .NET it is properly easier to use Windows instead of Linux.

I've used it a bit more and noticed it can't transcode from opus or flac files, so far I could only use mp3 or wav, is this expected? I think ffmpeg should support it.

Yes, because the Windows code only supports MP3. I agree that with FFMPEG also other audio formats are possible but I stopped the development at this point. A lot of conveniences features are still missing. Pull requests are welcome!

Also, the file explorer doesn't sort files alphabetically, which is confusing. When the files are added, they are added in alphabetic order though.

That is a problem in the MONO Windows Forms implementation which is a community project run by volunteers. Unfortunately it is not maintains well and has many bugs. For a good Linux support we need a GUI that is not based on Windows Forms but this is a complete rewrite of TeddyBench.

I had some other issues, where it would close. For example, when using Ctrl-V to paste some text, either in the form to send tonies' details or renaming a tonie.

See above.

@der-eismann
Copy link

Is there any update on that? I just saw the CCC talk and was interested, however only being able to run this on Windows is a blocker for me. Seems there happened a ton of work since the Linux fork was last updated, would be great if we could get some motion in here, maybe even with a Flatpak if it works fine with mono.

@avanc
Copy link

avanc commented Mar 7, 2024

I'm also interested in a Linux build, as TeddyCloud does only support rudimentary handling of tags.

@AlbrechtL
Copy link
Author

@der-eismann, @avanc Did you try this version https://github.com/AlbrechtL/teddy/releases/tag/v1.2.4-linux_2? I know it is quite outdated but it should still work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants