I’m doing a little recap of current media_kit status, feel free to list here what’s causing more trouble to you.
These 2 bugs prevent me from playing any file with the MediaPlayer:
I only have a few bugs to report as annoying. I will further break it down by “bugs” and “regressions”.
Regression - https://dev.haiku-os.org/ticket/11272 This is a gcc2h only regression. Last working hrev48309
Bugs - https://dev.haiku-os.org/ticket/13968 and https://dev.haiku-os.org/ticket/13622 Probably same bug
- https://dev.haiku-os.org/ticket/13410 Seeking in a mp3 file will cause a crash
- https://dev.haiku-os.org/ticket/11500 MediaConverter is broken since forever. wav to mp3 or flac is as basic as it gets, and Haiku fails miserably.
Enhancements - https://dev.haiku-os.org/ticket/12565 HD video is the future, and the future is now.
- https://dev.haiku-os.org/ticket/11527 ditto
Take a ook here:
The bug that prevent us to recor screencasts this could be good to fix cause it would help to show the wonderful haiku on native hardware.
Getting MediaConverter to work would be great. I would really like to make a backup of my audio CDs in some lossless format with proper tags and everything
My main use-case for MediaPlayer right now would be listening to streaming audio, and the two major problems that prevent me from being able to do so are:
- After pausing or stopping a stream, pressing Play causes the app to crash
- The Playlist doesn’t store URLs
Please note, I haven’t tested these since the repos went cold. If either or both of these have been fixed recently, please ignore this.
And thanks, Barrett, for your hard work in this area!
I see most of the problems pointed out in this topic are related to the ffmpeg plugin.
Unfortunately, I’m not going to concentrate in this area until I have other things in place. The codec framework needs a lot of love. Yet, we are trying to support two far versions of ffmpeg, something I think it’s not viable long term.
I proposed to freeze the gcc2 code into a separate legacy plugin and continue developing the plugin updating it to work on the most recent API.
proposing is not much use if you don’t intend to write the code
During my trip to fosdeem I finally found a problem which may need modern ffmpeg to solve, and a set of videos to experiment with. So I’ll eventually get to making some changes in that area. But right now webkit keeps me busy…
Of course when I propose something I’m usually at the same time proposing to work on it. As far as I remember you weren’t for doing this and were more interested in keeping compat between x86 and x86_gcc2. Now, the forma mentis in handling things is very important. If each time someone propose something there’s someone who put the idea into the garbage, motivation isn’t increasing.
Feel free to share that in a ticket and we will see.
What I said back then was that I did not find a case where it would help to use modern APIs, in terms of increasing compatibility (in terms of code readability I don’t even have to say it would be better, but if we still have to maintain the gcc2 version it couterbalances this a little).
Now, as I mentionned above, I did find such files and I’ll see what I can do about it. Wether the final solution is a few more ifdefs or a separate file or a completely separate plugin, I don’t know yet. I think I can get away with just a new copy of AVCodecDecoder this time.
to me the blocker is the fact that media player keeps restarting files everytime i move the cursor on the player, eg if i am playing a video and i move the cursor, suddenly the video just start again and this is really frustrating…
I had a similar problem some years ago with a touchpad. However this isn’t really a media_kit bug.
Let’s put it this way. The fact that I have to test my changes in two different architectures is alone a reason for doing such thing. Additionally I don’t see enough justification for doing so, we don’t have any app which is worth of having all this burden. I’m pretty sure updating the plugin will improve things, also because there’s a lot of code out there which can be useful to speed up development.
Said that, I don’t think adding ifdefs is the way to go, so when and if the day will happen I will do so regardless.
As a heads up, I found both AVCodecEncoder and AVCodecDecoder to use deprecated apis from ffmpeg. (Unless the deprecated functions are kept for compatibility on the older gcc2 ffmpeg.)