vividos / winLAME

winLAME is an easy to use encoder for many audio formats, including MP3, Opus, Ogg Vorbis and more. (this is the Git repository mirror of the SourceForge.net Git repository)
GNU General Public License v2.0
40 stars 7 forks source link

use ogg file extension for opus encoder #1

Closed ebaldridge closed 4 years ago

ebaldridge commented 4 years ago

.opus isn't recognized by most media players. Using .ogg instead will let them recognize it.

vividos commented 4 years ago

Did the files play after renaming them? What media's players did you test? Did you test with VLC and foobar2000?

vividos commented 4 years ago

And what about users who want to generate .opus file? After applying this PR they have no chance to generate them...

ebaldridge commented 4 years ago

The files are actually in a ogg container anyway. But since some players only look at the extension they don't recognize the files. This problem prevents nearly every player on android from playing them unless they are renamed. It should not stop any software from playing the files, and one that I tested actually worked better with the .ogg extension. Because even though it was able to play them with the .opus extension, it was only able to read the metadata after I renamed the file with .ogg.

vividos commented 4 years ago

Which player did you try? I'm not convinced that changing the extension to .ogg is the solution. Instead the players should recognize the official file extension (mentioned on the Wikipedia page).

ebaldridge commented 4 years ago

The problem affects any android app using the android api for audio playback. Including the default music player that is pre-installed on every android device. They will not recognize the files at all with the .opus extension, but if I rename them to .ogg they work correctly.

On windows, I tried several players and they all worked either way. Except windows media player which doesn't play them either way.

vividos commented 4 years ago

I think this is not an issue in winLAME, but missing platform support in Android. I will think about how to support that scenario in the next version of winLAME. I will close this PR, as I don't think I will apply it in this form. Thanks for your contribution, though!