SFML community forums

General => SFML projects => Topic started by: Ceylo on July 30, 2012, 01:02:03 am

Title: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on July 30, 2012, 01:02:03 am
What is sfeMovie?

sfeMovie is a C++ library providing a central class that lets you play movies in SFML based applications. It relies on SFML for the rendering process and FFmpeg for the decoding process. It has been written to work closely with SFML and tries to keep the same easy-to-use paradigm, while remaining consistent with SFML's naming conventions.

Main features

Main supported decoders

Audio: AAC, AC3, FLAC, MP3, PCM, Vorbis, WMA
Video: H.264 (ie. MPEG-4 AVC), MPEG4, Theora, VP8, WMV

Other information

For the install steps, example code or downloads, see the sfeMovie website :)
http://sfemovie.yalir.org/latest/

Updates
2014 Septembre 26th (http://en.sfml-dev.org/forums/index.php?topic=8701.msg117572#msg117572): new website + forum, sfeMovie 2 binaries downloads, audio stream selection
2014 October 9th (http://en.sfml-dev.org/forums/index.php?topic=8701.msg118478#msg118478): ability to link against external or system FFmpeg binaries
2014 November 22nd (http://en.sfml-dev.org/forums/index.php?topic=8701.msg120918#msg120918): bitmap subtitles support
2014 November 23rd (http://en.sfml-dev.org/forums/index.php?topic=8701.msg120992#msg120992): binaries on the website with all the decoders
2014 November 30th (http://en.sfml-dev.org/forums/index.php?topic=8701.msg121368#msg121368): Added ability to create a static version of the sfeMovie library
2014 December 10th (http://en.sfml-dev.org/forums/index.php?topic=8701.msg121979#msg121979): Updated FFmpeg to version 2.4.3
2015 May 10th (http://en.sfml-dev.org/forums/index.php?topic=8701.msg130321#msg130321): Added seeking support
2015 May 24th (http://en.sfml-dev.org/forums/index.php?topic=8701.msg131228#msg131228): No more MinGW compiler needed on Windows, Visual C++ only.
2015 October 4th (http://sfemovie.yalir.org/forum/viewtopic.php?pid=67#p67): Updated FFmpeg to version 2.8 + added ability to build for Visual Studio 2015
2016 January 2nd (http://sfemovie.yalir.org/forum/viewtopic.php?pid=74#p74): Added optional support for textual (srt, ass/ssa, ...) subtitles
2016 January 2nd (http://sfemovie.yalir.org/forum/viewtopic.php?pid=75#p75): Now providing Visual Studio 2015 binaries instead of Visual Studio 2013 binaries

Any feedback, be it good or not, is welcome!

Ceylo
Title: Re: sfeMovie Project [v1.0 released]
Post by: DJuego on July 30, 2012, 01:19:45 pm
Thank you Ceylo!  :D. Not only games for SFML. Good. And besides it is usable for cinematics (intro, epilogue,...)...  ;D

sfeMovie is cool and its project website is elegant, or if you prefer, sfeMovie is elegant and its Project Website is cool. I am not sure.   ;) In any case I like very much the Movie class.  Two words: minimalist and smart. It is self-explanatory.

P.S: The demo works! (windows 7 64bits)
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on July 30, 2012, 06:01:54 pm
Thanks for your feedback DJuego!
I'm pleased to see you like it, and indeed I was (at least!) expecting the demo to work ;D .

There's something weird though, but I think it's related to GitHub... they report the demo has been downloaded 937 times (??!).
Title: Re: sfeMovie Project [v1.0 released]
Post by: Nexus on July 30, 2012, 07:29:42 pm
As already mentioned earlier, this is a great extension to SFML. I recompiled ffmpeg and sfeMovie on Visual Studio 2010, and after some trouble, it worked! :)

There are some issues however:
Another problem I see, even if it's not your fault and about which you probably can't do much, is the installation for Windows users. In order to play widespread movie formats, one has to rebuild ffmpeg, which requires the whole MingW/MSYS suite even when compiling on Visual Studio. I also had to move the MSYS installation to a path without spaces, apparently in the year 2012 there are still developers not able to handle those correctly :(

I have also come across a site (http://ffmpeg.zeranoe.com/builds/) which provides ffmpeg binaries for Windows, but the dev packages don't seem to offer both .lib and .dll files...
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on July 30, 2012, 08:17:14 pm
Thanks Nexus :) . Yes I know there's still much to do before it becomes mature, especially as for the build system.

In Debug mode, the library doesn't build because the VC++ compiler flags /O2 and /RTC1 are incompatible.
Yup, I didn't do much to support debug build for now. I've created an issue not to forget this.

Do you really want to use an own SFML version instead of the user's one? There might be problems if sfeMovie and the user project use different versions.
Do you say this because for now building sfeMovie means building SFML too? or because sfeMovie is linked against that freshly rebuilt SFML version?

You should provide an option to link SFML statically.
Hmm I may think of it but I don't like it because I don't know what would happen in case it's statically linked in sfeMovie and the user also links his/her program against a different version/mode of SFML.

When I compiled the CMake-generated INSTALL project in sfeMovie.sln, the sfeMovie and ffmpeg binaries and headers weren't copied to the install directory (only the ones from SFML were).
You're right, I didn't even think of this. I created an issue for this too.

I suggest to use a bin folder for dynamic .dll files and a lib folder for .lib static/import libraries.
Sounds like a good idea, although it only applies to Windows builds.

Another problem I see, even if it's not your fault and about which you probably can't do much, is the installation for Windows users. In order to play widespread movie formats, one has to rebuild ffmpeg, which requires the whole MingW/MSYS suite even when compiling on Visual Studio.
Indeed FFmpeg cannot be built within Visual Studio. However I plan to check whether I can do the whole configuration process within CMake, and let Visual Studio launch a build within a MinGW shell. That way, even if the user have to install MinGW, he would just deal with known tools: CMake and Visual Studio. No more manual command line involved.

I also had to move the MSYS installation to a path without spaces, apparently in the year 2012 there are still developers not able to handle those correctly :(
Could you tell me more about what went wrong when MSYS was installed to a path that contained spaces?

I have also come across a site (http://ffmpeg.zeranoe.com/builds/) which provides ffmpeg binaries for Windows, but the dev packages don't seem to offer both .lib and .dll files...
But downloading both the dev and shared packages does seem to do the trick. That could be interesting. I'll have to check whether it can be used.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Nexus on July 30, 2012, 09:55:31 pm
Do you say this because for now building sfeMovie means building SFML too? or because sfeMovie is linked against that freshly rebuilt SFML version?
In Thor, I let the user specify a path to SFML, inside which the headers are included and the libraries are linked. I wonder why you do it differently... Do you think there are sfeMovie users which don't have SFML already installed?

A problem I see with different SFML versions: The header <sfeMovie/Movie.hpp> includes many SFML headers. When building the library, your own SFML version is used. When I include <sfeMovie/Movie.hpp> in my project, then my include paths are searched, thus other versions of the headers are included.


Hmm I may think of it but I don't like it because I don't know what would happen in case it's statically linked in sfeMovie and the user also links his/her program against a different version/mode of SFML.
When both used the same version (the user's one), this wouldn't be an issue.

I tried to link SFML statically on my side, but I got warnings because sfe::Movie inherits sf::Drawable which doesn't export its symbols when I define SFML_STATIC. When I start the program, only audio is played, the screen remains black. Unless I did something wrong, it seems like a sfeMovie user loses the choice about how to link SFML...


Sounds like a good idea, although it only applies to Windows builds.
True. You can pass RUNTIME and LIBRARY parameters to the CMake install() command. I did such a case differentiation in Thor/src/CMakeLists.txt:
# Install (use "bin" folder for DLL, "lib" for SO files)
if(WIN32)
        install(TARGETS ${THOR_LIB}
                        RUNTIME DESTINATION bin
                        LIBRARY DESTINATION lib
                        ARCHIVE DESTINATION lib)
else()
        install(TARGETS ${THOR_LIB}
                        RUNTIME DESTINATION lib
                        LIBRARY DESTINATION lib
                        ARCHIVE DESTINATION lib)
endif()


Could you tell me more about what went wrong when MSYS was installed to a path that contained spaces?
I installed it to C:\Program Files (x86)\MinGW. When I executed msys.bat, I got a popup with the message:
Code: [Select]
Windows cannot find "C:\Program". Make sure you typed the name correctly, and then try again.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on August 04, 2012, 01:35:33 pm
In Thor, I let the user specify a path to SFML, inside which the headers are included and the libraries are linked. I wonder why you do it differently... Do you think there are sfeMovie users which don't have SFML already installed?
Actually.. I think that's it, this not a good reason though. I'll change that too. I also think I did this because I wasn't using CMake as a starting point for building so specifying this path wasn't as easy (no cache, etc). You're quite right about the inclusion thing too.

When both used the same version (the user's one), this wouldn't be an issue.
You're right.

I tried to link SFML statically on my side, but I got warnings because sfe::Movie inherits sf::Drawable which doesn't export its symbols when I define SFML_STATIC. When I start the program, only audio is played, the screen remains black. Unless I did something wrong, it seems like a sfeMovie user loses the choice about how to link SFML...
Another user got the same issue when mixing static/dynamic linking. I'll give back the choice if I can get everything to work with CMake as starting building point.

True. You can pass RUNTIME and LIBRARY parameters to the CMake install() command. I did such a case differentiation in Thor/src/CMakeLists.txt:
Thanks, good to know! :)

I installed it to C:\Program Files (x86)\MinGW. When I executed msys.bat, I got a popup with the message:
Code: [Select]
Windows cannot find "C:\Program". Make sure you typed the name correctly, and then try again.
Hmm ok, so this is specific to MinGW.. ok.

Thanks for all of the feedback!
Title: Re: sfeMovie Project [v1.0 released]
Post by: slotdev on August 20, 2012, 09:49:51 pm
Ceylo

Are any of the codecs supported able to use alpha? i.e. can I get transparency in videos?

Thanks
Ed
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on August 20, 2012, 10:34:06 pm
Hello slotdev,

sfeMovie supports the Animation codec (see http://en.wikipedia.org/wiki/Animation_codec) and VP6 with alpha channel (often contained in FLV files).

I tested a FLV movie with alpha channel right now and it works fine. There may be other codecs that support alpha channels but I don't know them.

Ceylo
Title: Re: sfeMovie Project [v1.0 released]
Post by: bluekirby0 on September 27, 2012, 08:56:46 am
Two things I would like to see, and I was wondering if they can be accomplished with a simple rebuild of ffmpeg:

Matroska format support (patent-unencumbered container format that is highly extensible).

Libass support for advanced subtitle rendering.

The first one is pretty important to me, while the second is something I would like to make available, but I understand if I need to implement it separately with the simple text drawing available in sfml. Libass can be a major CPU hog if you abuse its capabilities too much, but anything is a better option than hard-coding subtitles onto video (not only can you not turn them on or off, but they compress particularly poorly causing artifacts around text and bit starvation in other areas of the video).
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on September 27, 2012, 10:46:28 am
Hello bluekirby0,

The Matroska container is already supported in the provided binaries. Thus unless you're using your own FFmpeg libraries, you can assume this format is supported. However this is, as you mention, a container only, not a video codec. To be able to read your MKV files, you have to make sure the right audio and video decoder are enabled in the FFmpeg build. Being able to read the container only means the program will be able to find where the audio and video streams are located in the file, it doesn't mean it'll be able to decode these streams though.

As for subtitles, it is not supported yet. The point isn't even about letting you render the subtitles, sfeMovie just can't detect and extract them for now.
Title: Re: sfeMovie Project [v1.0 released]
Post by: bluekirby0 on September 27, 2012, 11:15:20 am
Your FAQ doesn't list matroska, MKV or WebM in the list of supported "formats" (what I call containers), so I assumed it wasn't supported in the binary releases. Sorry for the misunderstanding!

I am very familiar with video containers and codecs, and was looking for a solution that would support everything I need without royalty encumbrance. I am settling in on matroska/webm, ogg, and wav for supported containers (there will be audio-only parts to the program as well), with VP8 and theora (perhaps dirac if they fix some of the portability issues with libschroedinger) options for video and vorbis, FLAC and PCM options for audio. If embedded subtitles can be supported, I'd also like to support ASS/SSA/SRT (need to do some more research on whether patents cover any of these).

Subtitles can be embedded in a matroska container, so if you wanted to add in support for them, that would be a good place to start. I'm not sure if WebM subset supports subtitles or not, but it is basically a subset of the Matroska container. After I've had some time to familiarize myself with sfe::Movie a bit, I may look into adding in subtitle support myself.

On a side note, how well does sfe::Movie support containers with multiple video or audio streams? It isn't important for my purposes, but you do have that possibility with mkv.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on September 27, 2012, 01:49:01 pm
Your FAQ doesn't list matroska, MKV or WebM in the list of supported "formats" (what I call containers), so I assumed it wasn't supported in the binary releases. Sorry for the misunderstanding!
You're right, the FAQ doesn't contain the exhaustive list of supported containers, I'll fix this.

I am very familiar with video containers and codecs, and was looking for a solution that would support everything I need without royalty encumbrance. I am settling in on matroska/webm, ogg, and wav for supported containers (there will be audio-only parts to the program as well), with VP8 and theora (perhaps dirac if they fix some of the portability issues with libschroedinger) options for video and vorbis, FLAC and PCM options for audio. If embedded subtitles can be supported, I'd also like to support ASS/SSA/SRT (need to do some more research on whether patents cover any of these).
As for patents, I'd be interested in your results for the subtitles formats too. And if you find reliable information about free containers/codecs, I'd be pleased to add it in the table of the Legal page (http://lucas.soltic.perso.luminy.univmed.fr/sfeMovie/legal.php) and even support these in the provided binaries if they're free.

Subtitles can be embedded in a matroska container, so if you wanted to add in support for them, that would be a good place to start. I'm not sure if WebM subset supports subtitles or not, but it is basically a subset of the Matroska container. After I've had some time to familiarize myself with sfe::Movie a bit, I may look into adding in subtitle support myself.

On a side note, how well does sfe::Movie support containers with multiple video or audio streams? It isn't important for my purposes, but you do have that possibility with mkv.
sfeMovie can read movies that contain several video/audio/subtitle streams, but it'll always use the first one it finds (except for subtitles that are still ignored).

Subtitles support is planned, but I don't know when it'll be done. Anyway before I do this I want to change sfeMovie's design in order to be able to select which stream is to be used (for both video/audio and subtitles). Once this is done, subtitles support can be done without dealing with the MKV container, because the FFmpeg API abstracts this. Support for subtitles will be a general support.

If you want to implement this stream choice + subtitles support, I can help you :) .
Title: Re: sfeMovie Project [v1.0 released]
Post by: bluekirby0 on September 27, 2012, 02:17:17 pm
From what I know now, dirac is the only "free" codec you don't have listed in the faq.
http://diracvideo.org/ (http://diracvideo.org/)

libschroedinger can be built into ffmpeg for dirac support, but it has a dependency on liborc, which has given me headaches trying to build in mingw before, so windows support would be difficult to achieve (unless mingw builds have been fixed in the last few months).

From a cursory search, I couldn't find any mention of patents on any kind of subtitle format, but I'll try to contact one of the developers of libass and see if there are any "gotchas".

Stream selection support and subtitle support would be great, but give me some time to break into the code before I start bombarding you with technical questions.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Flash619 on October 30, 2012, 05:47:58 pm
I seem to be having some real issues trying to build this library on windows.

I'm running VS 11 with SFML 2

Cmake builds without error.

VisualStudio on the other hand...
Quote
Cannot open input file 'avdevice.lib'

SFML itself compiles just fine, I only get that error on "sfeMovie"

I think I need to compile my own library because if I use a pre compiled library and try to run my program I get the following:

Quote
The procedure entry point at av_samples_copy could not be located in the dynamic link library avcodec-54.dll.

Your website states that for Visual Studio and Cmake I have to run a .sh file, but I really don't know how to begin to run a .sh file on windows. >.>

So, if you could give me some hints as to what I'm doing wrong it would be appreciated. :)

Also, can sfeMovie be compiled as static so it doesn't need all the sfml .dll's right next to it?
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on October 30, 2012, 06:53:48 pm
Indeed sfeMovie needs the FFmpeg .lib files in order to be built so you either have to build these libraries or get a prebuilt compatible version (sfeMovie 1.0 uses FFmpeg 0.11.1). I've been asking Zeranoe to get a link to this specific build, so if you wait a little bit you'll get binaries. Otherwise you can follow the directions on the "Getting started" page (http://lucas.soltic.perso.luminy.univmed.fr/sfeMovie/start.php).

By the way, what isn't clear about the build steps explained on this page?
I know the build process for sfeMovie is a pain at the moment but you should get it to build if you follow the directions.

Also note that I've never tested sfeMovie with VS11.
And sfeMovie cannot be compiled as static library for now.

Don't hesitate if you have any other question :) .

Ceylo
Title: Re: sfeMovie Project [v1.0 released]
Post by: Flash619 on October 30, 2012, 07:09:14 pm
Indeed sfeMovie needs the FFmpeg .lib files in order to be built so you either have to build these libraries or get a prebuilt compatible version (sfeMovie 1.0 uses FFmpeg 0.11.1). I've been asking Zeranoe to get a link to this specific build, so if you wait a little bit you'll get binaries. Otherwise you can follow the directions on the "Getting started" page (http://lucas.soltic.perso.luminy.univmed.fr/sfeMovie/start.php).

By the way, what isn't clear about the build steps explained on this page?
I know the build process for sfeMovie is a pain at the moment but you should get it to build if you follow the directions.

Also note that I've never tested sfeMovie with VS11.
And sfeMovie cannot be compiled as static library for now.

Don't hesitate if you have any other question :) .

Ceylo

Well I'm going to be transferring back to VS 2010 because a lot with V11 seems to still be sort of a grey area as far as comparability goes. Besides, I honestly see no big difference between 2010 and 2012 with the express editions. ^^;;

I'll let you know how it goes when I try it on 2010.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Flash619 on October 30, 2012, 09:53:28 pm

So I got it working for the most part on 2010 without issue. But I have a problem now.

I get:
Quote
First-chance exception at 0x773d4b32 in Genesis.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x0107f0e4..
First-chance exception at 0x773d4b32 in Genesis.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x0107e8a0..
First-chance exception at 0x773d4b32 in Genesis.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000..
Unhandled exception at 0x773d4b32 in Genesis.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x0107e8a0..

Every time it reaches:

        if(!CS.openFromFile("Resource/SplashScreen/PredawnStudios/predawn_splash.theora.ogv"))
        {
                ConsoleLog.info("Unable to open splash video file! Returning...");
                return;
        }
 

Any ideas?
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on October 30, 2012, 10:28:14 pm
Hmm, make sure you're linking everything dynamically AND in release mode. sfeMovie is not provided as debug library for now.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Flash619 on October 30, 2012, 10:34:07 pm
Hmm, make sure you're linking everything dynamically AND in release mode. sfeMovie is not provided as debug library for now.

So all of SFML has to be linked dynamically as well then?
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on October 30, 2012, 10:41:43 pm
Yes. This will prevent different versions of SFML from being loaded (although I admit this is an issue only because I explicitly link against SFML 2.0 RC), and as sfeMovie is dynamically linked to SFML, in any case you'll need to provide the SFML dlls.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Flash619 on October 30, 2012, 10:46:06 pm
Yes. This will prevent different versions of SFML from being loaded (although I admit this is an issue only because I explicitly link against SFML 2.0 RC), and as sfeMovie is dynamically linked to SFML, in any case you'll need to provide the SFML dlls.

Well if I'm including the .dll's, I may as well just set it to dynamic then.  ;D
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on October 30, 2012, 10:46:59 pm
What does "including a DLL" means?
Title: Re: sfeMovie Project [v1.0 released]
Post by: Flash619 on October 30, 2012, 10:47:57 pm
What does "including a DLL" means?

Including as in, the .dll's come with the .exe right next to it so that the program runs with dynamically linked libraries.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on October 30, 2012, 10:49:48 pm
Oh, sure, it's absolutely fine :) .
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on November 02, 2012, 03:09:01 pm
So did you finally get it to work?

As for the Windows binaries provider, he still did not answer for now :-\.
Title: Re: sfeMovie Project [v1.0 released]
Post by: slotdev on December 23, 2012, 11:23:24 pm
Hi

I've finally got around to trying to build sfeMovie. I am having some problems configuring the paths in MSVC. The distribution I got of sfeMovie has a version of SFML - but I want to build sfeMovie against my latest version of SFML.

What do I need to do? All the linker paths reference the supplied version of SFML...and it looks like changing it will be a nightmare :(

Ed
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on December 25, 2012, 05:43:32 pm
Hello slotdev,

I'm trying to completely remove the provided SFML, I hope to provide a usable revision this evening.

Ceylo
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on December 26, 2012, 01:35:56 am
You *should* be able to use your own SFML version now. I successfully tested the new configuration on Mac OS X and Linux, but I couldn't understand what I should do with SFML_DIR and such on Windows for now. I'm a bit newbie with it :D and I feel sleepy right now. If you're used to this there should be no problem.
Title: Re: sfeMovie Project [v1.0 released]
Post by: slotdev on December 26, 2012, 10:33:12 pm
Thanks Ceylo, I'll give it a try now :)

Whilst I think about it, what is the reason that sfeMovie can't be static linked?
Title: Re: sfeMovie Project [v1.0 released]
Post by: SirArthas on December 30, 2012, 04:29:30 pm
Hi Ceylo !
I'm new to the SFML and trying to run this sfeMovie project to my Visual Studio project.The problem i get is with the creation of the FFmpeg.I followed the provided instructions but every thing crashes on the last step in the minGW.
I'm running the file build.sh but for some reason i get the strange message that ffmped-sourse directory is missing.
Where should i put it or what i can do to generate the ffmpeg libs
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on December 30, 2012, 09:42:00 pm
Thanks Ceylo, I'll give it a try now :)
Were you able to use it?

Whilst I think about it, what is the reason that sfeMovie can't be static linked?
Because I preferred the user not to bother with LGPL and to avoid linking issues. Plus FFmpeg cannot be statically linked with Visual Studio libraries. So in any case you'd have to deal with FFmpeg dlls.

But yes, this is on the todo list, so that you can get issues if you wish so :) .
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on December 30, 2012, 09:42:33 pm
Hi Ceylo !
I'm new to the SFML and trying to run this sfeMovie project to my Visual Studio project.The problem i get is with the creation of the FFmpeg.I followed the provided instructions but every thing crashes on the last step in the minGW.
I'm running the file build.sh but for some reason i get the strange message that ffmped-sourse directory is missing.
Where should i put it or what i can do to generate the ffmpeg libs
What did you do and what is the error you get?
Title: Re: sfeMovie Project [v1.0 released]
Post by: iride on December 31, 2012, 05:14:13 am
Hi Ceylo !
I'm new to the SFML and trying to run this sfeMovie project to my Visual Studio project.The problem i get is with the creation of the FFmpeg.I followed the provided instructions but every thing crashes on the last step in the minGW.
I'm running the file build.sh but for some reason i get the strange message that ffmped-sourse directory is missing.
Where should i put it or what i can do to generate the ffmpeg libs
What did you do and what is the error you get?

Hi, I'm also getting the same error
I did the exact same thing as instructed on the website.

I launched mingw shell and typed ./build.sh windows in the sfeMovie directory
Then it gave me couple options and selected visual studio 2010
Then it gives that error

By the way I'm using VS 2012, will VS 2010 version work fine for VS 2012?
Title: Re: sfeMovie Project [v1.0 released]
Post by: SirArthas on December 31, 2012, 12:09:30 pm
This is the error that i get when i try creating ffmpeg for visual studio 2010

[attachment deleted by admin]
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on December 31, 2012, 03:43:35 pm
Hi, I'm also getting the same error
I did the exact same thing as instructed on the website.

I launched mingw shell and typed ./build.sh windows in the sfeMovie directory
Then it gave me couple options and selected visual studio 2010
Then it gives that error
According to the screenshot, you didn't go into the sfeMovie directory (with "cd" command) before running build.sh. To make sure you are in the sfeMovie directory, just type "./build.sh windows", not "some/path/build.sh windows" and if it works, it means you're in the right directory.

By the way I'm using VS 2012, will VS 2010 version work fine for VS 2012?
If backward compatibility support is still the same as with VS2008 and VS2010, it won't. Thus I have to add the rule so that sfeMovie can be built with VS2012 (I'm installing it right now).
Title: Re: sfeMovie Project [v1.0 released]
Post by: iride on December 31, 2012, 04:40:04 pm
Thank you, everything is working fine now.
Title: Re: sfeMovie Project [v1.0 released]
Post by: SirArthas on December 31, 2012, 05:35:00 pm
will try that and nice welcoming of New Year
Title: Re: sfeMovie Project [v1.0 released]
Post by: Haikarainen on February 25, 2013, 02:48:08 pm
Hey!

I'm having some issues running build.sh, regardless of my codec options compilation just seems to stop/get stuck right after it starts. I a warning about pkg-config not being found, so library detection may fail, then it starts compiling, I see a few warnings from ./libavutil/parseutils.h about mixing int* and LONG*.. Then thats it, the window is responding and all but nothing more happens...

I started compiling around 7-8 AM GMT+1, and 14:30  it was still in the same place just ticking...

Please help me out with this :) Great work on sfeMovie btw!

EDIT: Forgot the important details. This is running MinGW+MSYS, I'm in the right directory and everything. I could try running Cygwin to at least see if it is more verbose or something. I'm on Windows 8
Title: AW: sfeMovie Project [v1.0 released]
Post by: eXpl0it3r on February 25, 2013, 03:44:30 pm
It's just a shell script, try adding some debug output of your own into, so can norrow down the comnand at which it fails. ;)
Title: Re: AW: sfeMovie Project [v1.0 released]
Post by: Haikarainen on February 25, 2013, 04:05:08 pm
It's just a shell script, try adding some debug output of your own into, so can norrow down the comnand at which it fails. ;)

Sure, it's a shelllscript, although a pretty huge one  ;D

Anyhow, since it gets stuck when building, it was rather easy to pinpoint the exact line, which is:
make --jobs=$jobsCount

Which ultimately leads me to the ffmpeg makefile, something I'm not too experienced with (makefiles) and the ffmpeg one is rather complicated.

Anyhow I'll follow up on that warning about pkgconfig, try and install that and see if that fixes the problem.



EDIT:

Well I no longer get the pkg-config warning, it still gets stuck though. I uploaded a picture of it (since I cant copy paste from this terminal)

(https://legacy.sfmluploads.org/cache/pics/309_ffmpeg-build.png)


PS; I had to know how sfmluploads worked internally to get that link ;P the link that should open the image on page https://legacy.sfmluploads.org/pic/309 doesnt.




EDIT2:

I added some debuginfo as you suggested, the exact command it executes is:
make --jobs=4

I then redirected the command output to build.log, same output goes there:

Code: [Select]
CC libavdevice/alldevices.o
CC libavdevice/avdevice.o
CC libavdevice/lavfi.o
CC libavdevice/vfwcap.o
libavdevice/vfwcap.c: In function 'vfw_read_header':
libavdevice/vfwcap.c:325:9: warning: passing argument 1 of 'av_parse_video_size' from incompatible pointer type [enabled by default]
In file included from libavdevice/vfwcap.c:25:0:
./libavutil/parseutils.h:66:5: note: expected 'int *' but argument is of type 'LONG *'
libavdevice/vfwcap.c:325:9: warning: passing argument 2 of 'av_parse_video_size' from incompatible pointer type [enabled by default]
In file included from libavdevice/vfwcap.c:25:0:
./libavutil/parseutils.h:66:5: note: expected 'int *' but argument is of type 'LONG *'

I also added some messages after that line, which doesnt show, making the make --jobs=4 the command that infact gets stuck..

I will try do recreate what it does manually..

EDIT4 or whatever:

I think I've found the reason why it doesnt work, make --jobs=4 compiles on 4 different threads at once,  in my case it only does 1 job-iteration (4 objects) and then seems to sleep or something. I removed the --jobs parameter for both build_ffmpeg and build_sfemovie, it now seems to compile. Will reply with results on how it goes.


Final Edit:

Successfully compiles! Seems to work as well, although why is it bundled with SFML sources? It creates problems since it creates 2 different versions of sfml on my system. Should be an easy fix but still.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Haikarainen on February 25, 2013, 06:31:12 pm
Well I got it to compile well, managed to make it use my own compiled SFML as well, although I get a crash on exit when using your sfe::Movie:

stacktrace
Code: [Select]
#0 5FDF0854 atioglxx!DrvGetProcAddress() (C:\Windows\SysWOW64\atioglxx.dll:??)
#1 5F54DD19 atioglxx!DrvGetProcAddress() (C:\Windows\SysWOW64\atioglxx.dll:??)
#2 5F86C8DA atioglxx!DrvGetProcAddress() (C:\Windows\SysWOW64\atioglxx.dll:??)
#3 691C43A0 sf::priv::WglContext::~WglContext() () (C:\Work\Kodbas\bin\Debug\sfml-window-2.dll:??)
#4 FFFFFFFE ?? () (??:??)
#5 772EFB62 ?? () (??:??)
#6 772F2893 ?? () (??:??)
#7 773009C8 ?? () (??:??)
#8 773008AD ?? () (??:??)
#9 749A39F7 KERNEL32!GetCurrentApplicationUserModelId() (C:\Windows\SysWOW64\kernel32.dll:??)
#10 ?? ?? () (??:??)

Seems to reproduce kinda the same result that the old default-font-bug did. Although my guess is this has something to do with the mixture of textures and threads/mutexes!
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on February 27, 2013, 11:28:46 pm
I started compiling around 7-8 AM GMT+1, and 14:30  it was still in the same place just ticking...
Hmm.. what's weird is it should either fail or succeed, but not wait forever.

You said it was stuck on the make call, but.. is it stuck or really slow?
As your said make --jobs=4 allows make to compiles 4 files at the same time, which will compile FFmpeg faster if your processor has 2 or 4 cores. On the other hand it'll also require 4 times the initial amount of memory, and depending on your hardware configuration it may be too much => swap to disk required => very slow compilation. But being completely stuck for 7 hours doesn't sound realistic, something else must be wrong.

As for your one-job-at-a-time fix, I don't know why it makes things work but that's good to know.

Quote
Successfully compiles! Seems to work as well, although why is it bundled with SFML sources? It creates problems since it creates 2 different versions of sfml on my system. Should be an easy fix but still.
That's true for the 1.0 release, however the latest version available on the Git reposity does no more include the SFML sources and will use your own SFML version.

Quote
Well I got it to compile well, managed to make it use my own compiled SFML as well, although I get a crash on exit when using your sfe::Movie
Do you get the same crash in release mode? the sfeMovie library is currently built only in release mode.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Haikarainen on March 03, 2013, 04:09:46 pm
Hmm.. what's weird is it should either fail or succeed, but not wait forever.

You said it was stuck on the make call, but.. is it stuck or really slow?
As your said make --jobs=4 allows make to compiles 4 files at the same time, which will compile FFmpeg faster if your processor has 2 or 4 cores. On the other hand it'll also require 4 times the initial amount of memory, and depending on your hardware configuration it may be too much => swap to disk required => very slow compilation. But being completely stuck for 7 hours doesn't sound realistic, something else must be wrong.

As for your one-job-at-a-time fix, I don't know why it makes things work but that's good to know.

That's true for the 1.0 release, however the latest version available on the Git reposity does no more include the SFML sources and will use your own SFML version.

Do you get the same crash in release mode? the sfeMovie library is currently built only in release mode.

I bet why the jobs is getting stuck is probably because of some threading-bug in MinGW-GCC (think 2 or more threads waiting for the same lock but it never happens or something). The crash happens in both release and debug, although it goes to Clock() constructor, which is probably because of GCC 4.7. . I have installed 4.6 now.. I will see if the compilation problems is  still there with 4.6 and latest git :)

Scratch that part about clock, I mixed stuff up

EDIT: Still crashes on 4.6. Also I had a BUNCH of issues compiling both ffmpeg & sfemovie under mingw-gcc & msys, even more because of git. You might want to look into that.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on March 07, 2013, 07:30:34 pm
even more because of git
What do you mean?


Otherwise here are some news: I've finally been able to launch shell scripts specified in the CMake file, even when building sfeMovie from Visual Studio (ie. I made Visual Studio able to run shell scripts), even if it still requires MinGW to be installed. Thanks to this I should be able to include the FFmpeg build in the CMake build process:
- this will prevent anyone from forgetting to build FFmpeg
- dealing with command line won't be required anymore
- configuration (including debug/release and codec choice) will be done in the CMake GUI
- it'll also ease work for different OS configuration a lot because I'll no more have to care of these manually in the shell script
- I hope to get rid of every current configuration/installation issue so that I can focus again on further sfeMovie development

Thus rather good news I guess :)
Title: Re: sfeMovie Project [v1.0 released]
Post by: Haikarainen on March 08, 2013, 12:11:49 pm
even more because of git
What do you mean?

Add a global linenormalization option
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on March 08, 2013, 05:06:47 pm
Add a global linenormalization option
Is the issue because you get LF line ending instead of CRLF or the opposite?
Which line ending works and which doesn't? I'm asking this because according to my tests both work on Windows.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Haikarainen on March 08, 2013, 06:58:57 pm
Add a global linenormalization option
Is the issue because you get LF line ending instead of CRLF or the opposite?
Which line ending works and which doesn't? I'm asking this because according to my tests both work on Windows.

I cant remember, it worked with MinGW-GCC 4.7, but not with MinGW-GCC 4.6. It was in the ffmpeg-build-process IIRC
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on March 17, 2013, 09:44:07 am
Ok. Saved on the issue tracker, I remember I had had this issue too. However I'm somewhat busy at the moment so it'll have to wait a bit more.
Title: Re: sfeMovie Project [v1.0 released]
Post by: slotdev on April 07, 2013, 04:13:23 pm
Hey Ceylo

I got the binaries from the project website, for Windows x86, and the demo code. It compiles OK, but when I run the demo program, I get this: Unhandled exception at 0x6d4e2684 in sfeMovieTest.exe: 0xC0000005: Access violation writing location 0x60a7c7ec.

It occurs inside the line:

if (!movie.openFromFile(MOVIE_FILE))

Do you know why this might be?

Also, does FLV video work without recompiling sfeMovie??

Thanks
Ed

UPDATE: I fixed this - forgot it was only for Release builds at the moment. Debug (and static linked) builds would be VERY useful ;)
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on April 07, 2013, 10:00:46 pm
Hello slotdev,

FLV is only a container. And it used with H264 and VP6 video codecs and PCM and MP3 video codec. And these codecs are not enabled in the free builds, so yes you'll have to rebuild sfeMovie.

As for you issue, I'm glad it was only about release/debug :) . Yes debug and then static (if possible) builds will come as soon as the CMake directed build system is ready.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Demir on May 11, 2013, 01:09:15 pm
Hello

I'm trying to learn SFML with your nice player.

My question is aboult "Page Faults".

I examine memory and cpu usage in Windows Task Manager while the player is running. Page faults value increase 30.000 per seconds approximately.

I dont know it is a real problem or not. (may be it is spesific for my machine)

Thanks.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on May 11, 2013, 02:31:26 pm
Hello Demir,

I don't know. Page faults are related to virtual memory management by your OS. It can either mean that you don't have enough memory, or that your OS uses too much of it, or badly manages it, or something else. Anyway I don't think you should worry about this.

Ceylo
Title: Re: sfeMovie Project [v1.0 released]
Post by: Demir on May 11, 2013, 03:26:39 pm
Thank you Ceylo.

I wonder if anybody tested to play some movies (with different formats) sequentially ( following one after another ) during hours or wole (all) day.

to test this I use Stopped status.

if (movie3.getStatus() == sfe::Movie::Stopped) {
    movie3.stop();
    movie3.play();
}

Demir
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on May 11, 2013, 03:34:36 pm
I indeed remember that a user had been playing a movie repeatedly for a whole day without any issue, with more or less the same code as the one you're showing.
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on May 17, 2013, 03:06:26 pm
To Visual Studio 2012 users: a new binary package is now available for this IDE on sfeMovie's website.
Title: Re: sfeMovie Project [v1.0 released]
Post by: firefly2442 on June 01, 2013, 04:59:49 am
Any consideration of changing the license to LGPL to allow linking to the library?  This would match a little more closely with SFML, the dependencies of SFML, ffmpeg, etc...
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on June 01, 2013, 11:07:47 am
What do you mean? sfeMovie is already covered by LGPL so I don't understand what you want...
Title: Re: sfeMovie Project [v1.0 released]
Post by: firefly2442 on June 01, 2013, 11:45:29 pm
Ahh, my apologies, I must have been looking at something else.  Mea culpa. :)
Title: Re: sfeMovie Project [v1.0 released]
Post by: Ceylo on September 12, 2013, 03:23:36 pm
Hi! :)

A few words to let you know what's going on here. Much progress has been done since 1.0 has been released (mostly very recent work), especially the new build system is ready so you do no more need do deal with a script or a terminal to build sfeMovie.

The second point is.. I'm looking for people to help on the project! There are already a few people helping, and I'm really grateful to them. However I would like this project to move forward even quicker! So in case you feel like doing so...

To give you an idea of what's left to be done (yes, you're gonna be afraid), I invite you to have a look at the task list (https://github.com/Yalir/sfeMovie/issues).

Basically there is work for all tastes. I tried to tag tasks the best I could so that you can very quickly find out the task that match your interests.

Soo, whatever your favorite OS and IDE are, should you prefer CMake, C or C++, there are tasks you can help on! (just filter the task list with the tag you're interested in)
Of course I'm here to help you and explain to you everything you want to know about everything (ok maybe not exactly everything, but.. you get the picture ;D) so that you don't get stuck and aren't frustrated.

As for skills, I'd say you'll need to know how to work with at least one existing version control system and you should know at least one of the following areas: CMake, C++, OS libraries architecture, FFmpeg, threads…).

The final purpose is of course learning and spending nice times working together :)

Ceylo
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Demir on September 30, 2013, 08:37:34 am
Hello

I think it should be "width, height" instead of "x + width, y+height)

void Movie::resizeToFrame(int x, int y, int width, int height, bool preserveRatio)
{
        resizeToFrame(sf::IntRect(x, y, x + width, y + height), preserveRatio);
}
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on September 30, 2013, 08:59:44 am
Oh yes you're absolutely right! That's fixed.
It's been written when sf::Rect was defined as a {left, top, right, bottom} structure.

Thanks :)
Title: Re: sfeMovie Project [v1.0 released]
Post by: Aldo_MX on December 04, 2013, 09:38:40 pm
The second point is.. I'm looking for people to help on the project! There are already a few people helping, and I'm really grateful to them. However I would like this project to move forward even quicker! So in case you feel like doing so...
What kind of help do you need?

I have checked the source briefly but I couldn't find support to load a movie from a sf::InputStream, so I can help you to add this feature.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on December 05, 2013, 04:35:21 pm
Hello Aldo_MX,

sf::InputStream isn't the easiest feature I would think of, but it's up to you :) Planned tasks are listed here : https://github.com/Yalir/sfeMovie/issues so as you can see there are many different possible improvements depending on your taste, such as subtitles, seeking, etc. As for sf::InputStream, it's not listed but it's welcome too, although there are investigations to do on the topic: if the input stream is a network one, do you want to support RTSP (http://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol) for example?

Ceylo
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: konig on April 08, 2014, 11:58:24 pm
Is sfeMovie compatible with sfml 2.1?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 09, 2014, 08:17:34 am
Yes, it is :)
Title: Re: sfeMovie Project [v1.0 released]
Post by: Jesper Juhl on April 09, 2014, 08:45:36 am
My question is aboult "Page Faults".

I examine memory and cpu usage in Windows Task Manager while the player is running. Page faults value increase 30.000 per seconds approximately.

A page fault is (usually) not an error in the application.
Page faults are simply signals from the hardware that the application accessed a page that is not currently in memory. The OS will then bring that page into memory from the executable file, library etc (or from swap if it was swapped out). Perfectly normal.

Maybe read this:
http://en.m.wikipedia.org/wiki/Page_fault
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 02, 2014, 08:05:36 pm
I got an error when i did ./build.sh windows
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: eXpl0it3r on May 02, 2014, 10:23:02 pm
You need to provide more information that just the screenshot.

What's your OS, what compiler do you use, etc?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 02, 2014, 11:25:18 pm
I use Windows  7 Home Premium, and Visual Studio 2010
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 02, 2014, 11:41:43 pm
i followed the directions here
http://lucas.soltic.etu.p.luminy.univmed.fr/sfeMovie/start.php
when i got to this line
within the command line interpreter, go to the directory where you downloaded sfeMovie through the "cd" command, type "./build.sh windows" and return
The output in the picture i posted earlier is what happened
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 03, 2014, 02:13:24 am
Something looks wrong with GCC, as stated in your screenshot "gcc is unable to create an executable file". You should have try a compile a sample program with GCC to check what's going on.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 03, 2014, 05:20:00 pm
hmm so i tried to compile a simple program. helloWorld.cpp is just a simple hello world program.
Attempt 1:
                    g++ helloWorld.cpp -o helloworld.exe
Result 1:
                    sh: g++: command not found

Attempt 2:
                    gcc helloWorld.cpp -o helloworld.exe
Result 2:
                    sh: gcc: command not found

What could I have done or be doing wrong? Any ideas?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: eXpl0it3r on May 03, 2014, 06:42:56 pm
Simple: It can't find GCC/GCC is not in PATH. Add it and it might work.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 03, 2014, 10:20:13 pm
Alright i got MinGW to run a simple helloWorld program after adding it to my path.
So i went back to the steps here http://lucas.soltic.etu.p.luminy.univmed.fr/sfeMovie/start.php
and redid the "./build.sh windows" step.
It went past where it got errors last time, but now it seems stuck maybe I'm not sure. I also got some warnings. I'm not sure how long it's supposed to take or when I will know it has finished. But it's been like this(see picture) for a while now.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 04, 2014, 11:34:23 am
I suppose you're using sfeMovie 1.0, as it's fixed in sfeMovie2 branch. Since some Windows or MinGW update the parallel build does no more work fine. So in build.sh, line 11 set jobsCount to 1 and that should do it.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 04, 2014, 06:39:28 pm
Alright I set jobsCount =1.
It made progress i think lol, but i still got a lot of warnings. I'm not sure if they can be set to be ignored or not, but at the end it said, "some warning being treated as errors"
                                   "make: ***[libavformat/os_support.o] Error 1
                                   "***an error occurred, aborting."
(see picture)

Is there something else I need to do?
You guys have helped a lot already, thank you so much. I just really want to get videos on my game.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 04, 2014, 10:37:58 pm
Hmmm… I do remember a few people were having the same issue. I don't know if it's againt related to some MinGW or Windows update.

Anyway, the error is related to network support in FFmpeg, which sfeMovie does not need.
So, at line 325 of build.sh, where you have the definition of 'args', add --disable-network before --disable-ffmpeg.

I'mma do this fix in sfeMovie2 branch too, just to avoid any further issue with this. Sorry for the inconvenience.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 05, 2014, 03:38:53 pm
So, at line 325 of build.sh, where you have the definition of 'args', add --disable-network before --

Did this, and it worked, and also made the sfeMovie.sln solution I needed.
So then i opened the solution, set ALL_BUILD as the StartUp project, and tried to build it.
I got errors(see picture), but again I'm not sure if I should worry about them or not.

Sorry for the inconvenience.

I should be the one apologizing to you for bothering you! I'm sorry! But seriously, you're awesome for even helping me this much, thank you!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 05, 2014, 06:53:09 pm
So, at line 325 of build.sh, where you have the definition of 'args', add --disable-network before --

Did this, and it worked, and also made the sfeMovie.sln solution I needed.
So then i opened the solution, set ALL_BUILD as the StartUp project, and tried to build it.
I got errors(see picture), but again I'm not sure if I should worry about them or not.
Yes you should ;D As shown in your screenshot, some targets failed to build.

Here the issue is just that you're trying to build debug libraries whereas sfeMovie 1.0 only supports release builds. It's not even stated on sfeMovie's "Getting started" guide so it wasn't obvious to guess this (now I added it to the build guide (http://lucas.soltic.etu.p.luminy.univ-amu.fr/sfeMovie/start.php) :) ). So just set 'Release' as the active mode in Visual Studio.

Sorry for the inconvenience.

I should be the one apologizing to you for bothering you! I'm sorry! But seriously, you're awesome for even helping me this much, thank you!
As the main author of sfeMovie, I say I'm sorry because it's a shame that you encounter so many issues just to build the library. I wanted to make it the most simple possible to use but, as of version 1.0, there have been many issues and non-obvious steps. Hopefully the upcoming sfeMovie version fixes all the issues you got (till now). I just hope there won't be new annoying ones ;)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 05, 2014, 07:38:19 pm
I wanted to make it the most simple possible to use but, as of version 1.0, there have been many issues and non-obvious steps. Hopefully the upcoming sfeMovie version fixes all the issues you got (till now). I just hope there won't be new annoying ones ;)
Well I hope I've helped by sharing my issues!

Also, AT THE END OF THE BUILD, I got a pop-up error saying it can't start ALL_BUILD because it can't find the file specified or something like that(see picture), it wasn't included in the "Output" section of Visual Studio.
But at the end of the "Output" section all it had was...
========== Build: 9 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
which is a good thing. So I don't think i should worry about the pop-up error. What do you think?

I ran it again, the pop up came up again, but the output changed to...
========== Build: 2 succeeded, 0 failed, 7 up-to-date, 0 skipped ==========
Which i think is still okay.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 05, 2014, 07:45:51 pm
Well, the ALL_BUILD target is just a target that aggregates other targets. That way you build ALL_BUILD and all interesting targets are built at once. So the ALL_BUILD target does not produce an executable itself, that's why you get this (normal) message.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 05, 2014, 08:42:28 pm
Alright thank you so much! Should I continue posting my problems(if I ever have any) & questions(if I ever have any) here or is there another place you'd rather me do it?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: dixondean25 on May 05, 2014, 09:53:26 pm
Can I never do debug if I implement sfeMovie in my game?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 06, 2014, 12:58:08 am
You can continue posting here :) . There is no independent forum or section for sfeMovie.

As for running your program in debug mode, it's indeed not possible with sfeMovie 1.0. That's why a new version is being developped. But it's not completely finished, which is why I didn't post about it yet.

If you're interested you can have a look at the sfeMovie2 branch (https://github.com/Yalir/sfeMovie/tree/sfeMovie2) and http://sfemovie.yalir.info/start.php (http://sfemovie.yalir.info/start.php). I'm really interested in feedbacks about any issue.

Currently what's left:
- find and get rid of a memory leak
- hide the internal API so that you only need Movie.hpp
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: etixpp on June 06, 2014, 04:48:49 am
I linked sfml2.1 and sfe correctly in vs 2012.
Now i wanted to build the sample code in release mode, all dlls are provided in the right folder aswell.

The problem is, that i cannot compile it, because a few functions cant be found, at example
movie.fit(0, 0, width, height);
sfe::Status
case sfe::Stopped: return "Stopped"; break;
movie.update();
sfe::Playing

Most of the other stuff works just fine.

Any suggestions what i could possibly do wrong? Because there isnt so much that actually could cause that error in my opinion xD

Samplecode i am talking about:
https://github.com/Yalir/sfeMovie/blob/master/sample/main.cpp
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: etixpp on June 06, 2014, 05:33:19 am
Update:
Was able to fix the problems. The functions from the sample seem to have new methods.

Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on June 07, 2014, 11:26:37 am
Indeed, what you were trying to use is the new API (not sfeMovie 1.0's one).
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: feliwir on June 26, 2014, 11:41:06 pm
How can i build this library for visual studio 2013, the getting started guide isn't up to date anymore (./build.sh) doesn't exist anymore. So i decided to do run "./build_ffmpeg.sh windows vs" to build ffmpeg (i run this command via msys obviously).
After a bit of compiling i get the following:
http://pastebin.com/Qp5biekz (http://pastebin.com/Qp5biekz)

To me it seems like i am doing something incredibly wrong :)
Help is appreciated
Greetings feliwir
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on June 26, 2014, 11:57:52 pm
Indeed things changed a little bit since release 1.0 :)
The most up to date instructions to build from the latest sources are at http://sfemovie.yalir.info/start.php
Don't hesitate to ask if something isn't clear.

Greetings
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: feliwir on June 27, 2014, 10:34:13 am
The build is stuck at the following step (for both Debug/Release): "/tmp/ffmpeg-2.2.2/configure options"
I waited for 10 Minutes now and my CPU Usage is ~80% (and that CPU is a quadcore^^).
How can i get any further?

Greetings feliwir
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: feliwir on June 27, 2014, 10:35:13 am
Nevermind, it just went on :D You should maybe print a message that this step takes a lot, i was just going to cancel the build, because i thought it was stuck :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on June 27, 2014, 06:44:28 pm
Ah, I usually build on Unixes which are much faster than MinGW builds on Windows so... yep I'll add a notice :)
Edit: done.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: AlexxanderX on August 11, 2014, 04:10:28 pm
I think the fit function is bugged. The fullscreen from the example provided is not working properly:
(http://imagizer.imageshack.us/v2/150x100q90/674/VgTgXg.png) (http://www.imageupload.co.uk/images/2014/08/11/Screenshot_from_2014-08-11_170119.png)(http://imagizer.imageshack.us/v2/150x100q90/537/fEmQRn.png) (http://www.imageupload.co.uk/images/2014/08/11/Screenshot_from_2014-08-11_170359.png)
Here is the code:
(click to show/hide)
Using last version from github and I'm running a Linux Mint 16 x64.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 11, 2014, 06:48:07 pm
Indeed, feliwir had reported the issue too and I'm working on it :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: bluekirby0 on August 24, 2014, 08:27:21 am
Another set of free codecs you can add to your legal page list:
Opus (http://www.opus-codec.org/license/) audio
VP9 (http://www.webmproject.org/vp9/) video (available through newer libvpx builds, still kinda early in its life but quite usable)

FFMpeg has no support for it yet that I've seen, but another one to watch for is Daala (http://xiph.org/daala/).
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 24, 2014, 03:59:11 pm
Hi bluekirby0,
Do you know the usage of Opus and VP9 nowadays?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: bluekirby0 on August 24, 2014, 04:53:58 pm
For now they are the main competitors for the next web standard vs H.265 video and AAC audio.

The only major usage of either codec right now is via Youtube where newer submissions are being converted to these formats. Otherwise I know Mumble is transitioning its clients to use Opus as well, and there are several 4k TV manufacturers on-board to support VP9 (but probably H.265 as well).
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 24, 2014, 05:45:27 pm
Ok, it's added to the TODO list ! :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on August 26, 2014, 08:45:17 pm
Really hope i could use your library, but on windows, MinGW whenever i create an sfe movie object it crashes, stack or heap it doesn't matter.
And not only that, i get some weird error like cannot obtain handle to infernal or something if i recall correctly.
Tried building from source as well but it's the same. ??? ??? ???
I really could use some help  :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 26, 2014, 11:14:35 pm
Hello JohnGreek
Which version of sfeMovie? Which Windows version? Which sources?

Edit: and which version of MinGW?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on August 27, 2014, 02:46:39 am
Hey Ceylo  :)
I tried with the latest v1.0
I' m on windows 7 64-bit with MinGW 4.8.2
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: AlexxanderX on August 27, 2014, 12:58:02 pm
What can I do with:
Quote
terminate called after throwing an instance of 'std::runtime_error'
  what():  Timer::play() - timer playing twice
I tried to separate the other things of my app in a separate thread but still can't separate all. I tried also to put the sfeMovie player into a separated thread but I got errors from XInitThreads. Some tips of what can I do?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 27, 2014, 10:41:45 pm
I think the fit function is bugged. The fullscreen from the example provided is not working properly:
[...]
This is fixed and merged to the master branch, tell me if everything is ok on your side too :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 27, 2014, 10:49:05 pm
What can I do with:
Quote
terminate called after throwing an instance of 'std::runtime_error'
  what():  Timer::play() - timer playing twice
I tried to separate the other things of my app in a separate thread but still can't separate all. I tried also to put the sfeMovie player into a separated thread but I got errors from XInitThreads. Some tips of what can I do?
Can you give a minimal code to reproduce the problem?
The message shows that play() is called several times, are you sure you play the movie only once?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 27, 2014, 10:53:20 pm
Hey Ceylo  :)
I tried with the latest v1.0
I' m on windows 7 64-bit with MinGW 4.8.2
Several things you can do:
- rebuild sfeMovie from the latest Git sources, 51_MSYS branch (this branch contains fixes for MinGW)
- provide a minimal self-contained project that I can try to use to reproduce the problem

And a question: I suppose you built sfeMovie within MinGW's shell. Did you then create your application with MinGW or with Code::Blocks?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: AlexxanderX on August 28, 2014, 06:47:32 pm
Thanks for fixing that bug :D I will try to come back with an example.

Could you implement an setPlayingOffset ? I really need the function and now I noticed the is not exist...
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on August 28, 2014, 07:41:31 pm
Hey Ceylo  :)
I tried with the latest v1.0
I' m on windows 7 64-bit with MinGW 4.8.2
Several things you can do:
- rebuild sfeMovie from the latest Git sources, 51_MSYS branch (this branch contains fixes for MinGW)
- provide a minimal self-contained project that I can try to use to reproduce the problem

And a question: I suppose you built sfeMovie within MinGW's shell. Did you then create your application with MinGW or with Code::Blocks?

Ok but the MinGW version shipped with QtCreator does not contain MSYS, can i download it separately, place it on the directory of my MinGW and use it on the branch?

Yes, i used mingw32-make inside the cmake directory. I use Qt Creator as my IDE.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 28, 2014, 08:33:40 pm
Thanks for fixing that bug :D I will try to come back with an example.

Could you implement an setPlayingOffset ? I really need the function and now I noticed the is not exist...
setPlayingOffset() is one of the biggest pending work even if requested since a long time ago, see Seeking in the movie #6 (https://github.com/Yalir/sfeMovie/issues/6#issuecomment-48899125) if you're interested :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 28, 2014, 08:49:54 pm
Ok but the MinGW version shipped with QtCreator does not contain MSYS, can i download it separately, place it on the directory of my MinGW and use it on the branch?

Yes, i used mingw32-make inside the cmake directory. I use Qt Creator as my IDE.
I don't know if MSYS can be installed separately. It may but it's probably easier to install the full MinGW+MSYS package to have your environment already properly set up.

mingw32-make is not supported: in any case the operations triggered by make will require a MSYS environment. You should use the make executable shipped with MSYS (if your target build system is MinGW, whatever the IDE you use afterward).

Also I forgot to tell you an important point: the instructions for building from the latest Git sources are really not the same as for sfeMovie 1.0. You can find the steps to follow there: http://sfemovie.yalir.org/start.php

I hope this will help :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: bluekirby0 on August 28, 2014, 09:21:13 pm
Ok but the MinGW version shipped with QtCreator does not contain MSYS, can i download it separately, place it on the directory of my MinGW and use it on the branch?

Yes, i used mingw32-make inside the cmake directory. I use Qt Creator as my IDE.

MSYS can be set up to work with ANY mingw installation, as long as you add your mingw bin directory (the one with gcc.exe etc...) to your PATH environmental variable BEFORE starting your MSYS shell.  You could even use the same MSYS environment with several different compilers as long as you were careful about prefixes for any libraries you "install"

Using GNU make inside an MSYS environment should work fine, and is much more flexible than mingw32-make in many regards. FFmpeg uses a completely custom build system (it is NOT autotools no matter how much it may look like it) and mingw32-make was not designed with this in mind.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on August 28, 2014, 10:00:24 pm
Thank you for your replies but i have never used MSYS and i' m not familiar at all with command line tools..  :-\
So i set the MSYS PATH variable, it's set, then what? I open msys.bat from cmd? Open msys.bat? I really have no idea with these build systems, on other libraries i generated with cmake then used mingw32-make on the generated directory.

"Build

Once the project has been generated by CMake, just build the ALL_BUILD target, or use "make" if you chose this build system. Then be patient! "  What is the ALL_BUILD target? Please give me some direction to get familiar with this  :-\


When i use "make install" the msys interface changes to windows cmd..
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: bluekirby0 on August 31, 2014, 07:47:51 pm
You would open a command prompt and navigate to where msys.bat is. Then you would use:

Code: [Select]
PATH=d:\path\to\mingw\bin;%PATH%
msys.bat

You could also edit msys.bat to do this for you when you run it.

If you just run "make" then you don't need to select a specific target, so you can disregard ALL_BUILD. If you really want to know what ALL_BUILD is, it is just a target that cmake generates that ensures that every other target is built...but the default for "make" without any parameters is to build all targets.

I haven't worked much with Ceylo's build system before I started tweaking it on my own so I don't know why your bash shell would be switching to a cmd shell in the middle of "make install"
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 31, 2014, 08:41:46 pm
I don't know which part you already know so I'll go into details :)

If you have set the PATH to include MinGW bin dir permanently, just open msys.bat. Then type
Code: [Select]
cd "full path to the build directory you chose in CMake"
and enter.
You must get no error with this command. Then use the 'make' command with no parameter. As bluekirby0 said, ALL_BUILD is the default target that is used by default when using make, and it'll just build everything :)

I'm interested in seeing what happens with screenshots when you run make install because it should NOT go back to a classic cmd shell.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on August 31, 2014, 09:06:46 pm
Hey, thanks for your replies.
I did as you said but my msys changes to cmd...

Before make command: http://snag.gy/KDuO3.jpg
After make command: http://snag.gy/WacB9.jpg
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 31, 2014, 09:22:49 pm
What do you get if you do the same after opening msys.bat from the explorer rather than running msys.bat from the Windows cmd?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on August 31, 2014, 09:41:22 pm
It's the same even if i run it from windows explorer.
The fact that it changes means msys has terminated?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on August 31, 2014, 10:21:30 pm
Yes, or it did run a Windows cmd inside itself. After running make, can you check if you have sh.exe still running among your processes in the task manager?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on September 01, 2014, 12:14:11 am
Yes it's still open. This is good i guess?  ;D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on September 01, 2014, 01:26:30 am
Well at least this means you're still in the build script, which is good :)

But what's happening is really odd. I remember having a similar issue a long long time ago though. I'm not sure about how I had fixed this, the only bits of memories I still have about this is I had to reinstall MSYS properly… it's really a guess but it could mean that the execution of the program by sh.exe failed in some way. What happen if you use the "exit" comment at this point? Does it continue one step forward, does it go back to MSYS or does it close the window?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on September 01, 2014, 02:02:19 am
well... entering "exit" doesn't exit the cmd but it seems it restarts it, shows again the text like when i first entered the command make. The wtf is when i enter "exit" 4 times it returns back to msys cmd... it's hilarious
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on September 01, 2014, 10:10:43 am
Do you have only one "make" or "make.exe" executable reachable from your PATH?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on September 01, 2014, 08:47:07 pm
If we don't count mingw32-make.exe only one
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on September 01, 2014, 09:40:19 pm
Ok… then the only solution I'm aware of is doing a clean install of MinGW bundled with MSYS.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on September 03, 2014, 09:59:30 pm
i see.. i will try this and post back the results.
Although the version i used make is fresh, i installed MinGW+MSYS just for the lib, but it could also be a bad installation.
Thx ;D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on September 26, 2014, 12:47:15 am
Hey good news on the project! :)

- Its website has moved to http://sfemovie.yalir.org/
- There is also now a freshly created forum hosted on it, at http://sfemovie.yalir.org/forum for any question, suggestion or debate you may have
- The website now provides automatically updated binaries for the latest version from Git, so if you want to use the latest version of sfeMovie without the annoyance of compiling it, whatever your OS, there is it ! http://sfemovie.yalir.org/latest/downloads.php

A few words on features too:
- FFmpeg has been updated to version 2.2.2
- In case of media files with several audio streams, it's now possible to select the one that you want to use
- apart from that it's mainly (a huge) internal cleaning and bug fixes

Recently 2 developers (namely feliwir (https://github.com/feliwir) and bluekirby0 (https://github.com/bluekirby0)) have been participating and working on subtitles support and native build of FFmpeg on Windows through Visual Studio (yes get rid of MinGW!). These are huge improvements that may come into sfeMovie and I invite you to join me in cheering them up because these are really hard tasks :)

On my side I've been mainly working on getting continuous integration working, which will help us at finding bugs faster, and which now gives you the up-to-date prebuilt binaries :) Next weeks will be dedicated to seeking support.

As always, if you're willing to help in any way, you're welcome, be it for development, testing or encouraging the current developers!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on October 09, 2014, 11:22:03 pm
More news here: it's now (at last!) possible to build build sfeMovie against your own FFmpeg installation :)
More details here (http://sfemovie.yalir.org/forum/viewtopic.php?id=31)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: bluekirby0 on November 20, 2014, 08:31:36 am
Sorry about my conspicuous absence just as I started getting involved with things. I had hoped this semester would be as easy as my previous one and so I would have plenty of time to work on side projects. Unfortunately, this was not the case. I keep intending to get a little bit worked on here and there but life keeps getting in the way.

Depending on familial obligations I may or may not have time to get some work done over the holidays.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on November 20, 2014, 09:02:57 am
Good to here from you :) After two months I thought you got lost into the limbo ;D

And of course personal stuff first!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on November 22, 2014, 02:14:24 pm
I'm pleased to announce the support of bitmap subtitles!
In addition to stream selection, this is one of the first new major features since v1.0. It is also the first major feature brought thanks to the contributions of feliwir (https://github.com/feliwir).

More details here (http://sfemovie.yalir.org/forum/viewtopic.php?pid=33#p33).
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on November 24, 2014, 12:01:20 am
More news:
Provided binaries now include all the decoders natively supported by FFmpeg!

More details here (http://sfemovie.yalir.org/forum/viewtopic.php?id=33)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on November 30, 2014, 09:43:11 pm
On Windows, it's now possible to create a static version of the library!

More details here (http://sfemovie.yalir.org/forum/viewtopic.php?id=34)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on December 10, 2014, 10:50:31 pm
The packaged FFmpeg has been updated to version 2.4.3. Among the changes this makes the Opus audio decoder available natively!

More details here (http://sfemovie.yalir.org/forum/viewtopic.php?pid=36#p36)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: feliwir on January 22, 2015, 11:23:17 am
The master master branch now has seeking support!
Check the sample to see how to use it :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on January 22, 2015, 12:56:11 pm
What?! Wait, no! :o It's not merged yet. It can be tested on the 6_Seeking branch though.  :D Still a few small bugs to fix.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: feliwir on January 22, 2015, 01:05:41 pm
Haha sorry I was on the wrong branch :D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on February 02, 2015, 07:53:13 pm
uhh i'm happy that this library is going so well but i still can't use it :(
I really need help; I just downloaded the MinGW release bin package(free decoders).

This is my .pro file(i work on Qt Creator):
(http://i.imgur.com/VhHfLFB.jpg)



The error i get all the time is: "Cannot obtain a handle to the inferior: The parameter is incorrect."
A cmd window(the output terminal) and no render window. When i don't use a cmd window for the output it says "The program has unexpectedly finished."
I also tried debugging but i get failed to start and a memory address with nothing else on output, function or variable..
Am i not linking to the correct libraries?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on February 02, 2015, 09:15:18 pm
Hello JohnGreek

A dll is of no use for the linker. So most of the "LIBS += … " lines you've here won't be used. You need to link against libname.dll.a files, or just use the -lname option like in line 33.

And according to a quick search, your error message is related to QtCreator: https://www.google.fr/search?rls=en&q=Cannot+obtain+a+handle+to+the+inferior:+The+parameter+is+incorrect&ie=UTF-8&oe=UTF-8
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on February 02, 2015, 11:55:40 pm
Thank you for your reply.

So you mean i must find all the libs you refer on "Getting started" on this form?
Regarding the error on QtCreator i have already tried several solutions and still can't run it.
It happens when i add this: movie = new sfe::Movie(); on my code, when i remove it it works just fine :D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on February 05, 2015, 07:59:21 pm
If you're talking of the long list of libraries for running applications relying on sfeMovie, the answer is no. :P These libraries are used for runtime only. The only libraries you need at link time are sfeMovie and SFML.

As for the fact that it works when you remove only this line, I still don't know: the error you state is not enough to know what's happening :p
You could eventually launch your program outside of QtCreator to check what error message you get (if it's a dll/compiler issue you'll be notified for sure).

I'll try on my side too.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on February 05, 2015, 10:18:50 pm
So I tried and got it working ::)

My .pro file is as follows:
TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp

include(deployment.pri)
qtcAddDeployment()

# SFML libs
LIBS += -L$$PWD/../../../Downloads/SFML-2.1-MinGW/lib/ -lsfml-graphics -lsfml-window -lsfml-system
INCLUDEPATH += $$PWD/../../../Downloads/SFML-2.1-MinGW/include
DEPENDPATH += $$PWD/../../../Downloads/SFML-2.1-MinGW/

# sfeMovie libs
LIBS += -L$$PWD/../../../Downloads/sfeMovie-Release-2.0.0-win32/lib/ -llibsfeMovie
INCLUDEPATH += $$PWD/../../../Downloads/sfeMovie-Release-2.0.0-win32/include
DEPENDPATH += $$PWD/../../../Downloads/sfeMovie-Release-2.0.0-win32/include

# sfeMovie requires C++11
QMAKE_CXXFLAGS += -std=c++11
 

Note that I did the setup for the Release mode only, but it's similar for debug. From what I remember, the SFML MinGW download is the one recommended for CodeBlocks. The sfeMovie library is the latest binary release availabe for download. I also had to add the C++11 flag because sfeMovie requires it (anyway without this you get a compilation error). And finally I copied all the dll from the bin directory of SFML and sfeMovie next to the executable.

So I didn't even got specific MinGW distribution issue... in QtCreator I have tried to build the program both with my own MinGW installation and with the MinGW provided by Qt's installer, and both worked fine.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on February 07, 2015, 07:34:32 pm
Hmm i see..
I will try this .pro configuration and post back the result.

Thanks for your time Ceylo :D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on February 09, 2015, 01:19:56 am
Hey, i got good news and bad news..

I managed to get it work(almost), i was doing everything correctly during link but the dlls where not on the project root folder so it was runtime error all the time.. quite stupid i guess. Well since i am working full on Qt it's own dlls are loaded automatically from the bin folder when executed from QtCreator i thought it's the same with everything else as well.. oh well i overcame that.
Now i decided to play with the full decoder pack on an .mp4 video, so i load it, it returns true as seen on the ss but i get this error:

(http://i.imgur.com/ihTxipE.png)


I get this on the draw step of the video, setVolume(), fit() and update() are all executed correctly.
I tried with .mp4 and .avi. Is it a codec issue?
I feel i'm so close.. duh..
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on February 09, 2015, 07:52:18 am
Can you do the setup to use the debug libraries and run in debug mode ?
At first it made me think of a bug I recently got in a dev branch, but you're using a release so that's probably not it... maybe you found a new bug :-°
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on February 21, 2015, 11:32:42 am
Hey,
i have some issues with debug, am i missing something?
I get a hell lot of undefined references about sfml but why?

# sfeMovie libs
LIBS += -LC:/Qt/Qt5.2.1/Tools/mingw48_32/lib -lsfeMovie-d.dll
INCLUDEPATH += C:/Qt/Qt5.2.1/Tools/mingw48_32/include
DEPENDPATH += C:/Qt/Qt5.2.1/Tools/mingw48_32/include

LIBS += -LC:/Qt/Qt5.2.1/Tools/mingw48_32/lib/ -lsfml-graphics-d -lsfml-window-d -lsfml-system-d
INCLUDEPATH += C:/Qt/Qt5.2.1/Tools/mingw48_32/include
DEPENDPATH += C:/Qt/Qt5.2.1/Tools/mingw48_32/

# sfeMovie requires C++11
QMAKE_CXXFLAGS += -std=c++11


This is the g++ compile output, you can see in the last line the libs linked and i see them all in the correct order as well...
g++ -c -pipe -fno-keep-inline-dllexport -std=c++11 -g -std=c++0x -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DQT_GUI_LIB -DQT_CORE_LIB -I. -I"..\..\..\..\Qt\Qt5.2.1\Tools\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\Tools\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include\QtCore" -I"debug" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\mkspecs\win32-g++" -o debug\entity.o entity.cpp
g++ -c -pipe -fno-keep-inline-dllexport -std=c++11 -g -std=c++0x -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DQT_GUI_LIB -DQT_CORE_LIB -I. -I"..\..\..\..\Qt\Qt5.2.1\Tools\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\Tools\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include\QtCore" -I"debug" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\mkspecs\win32-g++" -o debug\player.o player.cpp
g++ -c -pipe -fno-keep-inline-dllexport -std=c++11 -g -std=c++0x -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DQT_GUI_LIB -DQT_CORE_LIB -I. -I"..\..\..\..\Qt\Qt5.2.1\Tools\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\Tools\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\include\QtCore" -I"debug" -I"..\..\..\..\Qt\Qt5.2.1\5.2.1\mingw48_32\mkspecs\win32-g++" -o debug\weapon_bullet.o weapon_bullet.cpp
g++ -Wl,-subsystem,console -mthreads -o debug\SpaceGame.exe debug/main.o debug/game_engine.o debug/game_state.o debug/state_mainmenu.o debug/state_stage_normal.o debug/entity.o debug/player.o debug/weapon_bullet.o  -lglu32 -lopengl32 -lgdi32 -luser32 -LC:/Qt/Qt5.2.1/Tools/mingw48_32/lib -lsfeMovie-d.dll -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-window-d -lsfml-system-d -LC:\Qt\Qt5.2.1\5.2.1\mingw48_32\lib -lQt5Guid -lQt5Cored
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on February 21, 2015, 11:39:39 pm
Hello JohnGreek,

You'll have to be more precise about the errors you got.
On my side I tried with the following .pro file and I'm able to compile, link and run fine:
Code: [Select]
TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp

include(deployment.pri)
qtcAddDeployment()

# SFML libs
Release:LIBS += -L$$PWD/../../../Downloads/SFML-2.1-MinGW/lib/ -lsfml-graphics -lsfml-window -lsfml-system
Debug:LIBS += -L$$PWD/../../../Downloads/SFML-2.1-MinGW/lib/ -lsfml-graphics-d -lsfml-window-d -lsfml-system-d
INCLUDEPATH += $$PWD/../../../Downloads/SFML-2.1-MinGW/include
DEPENDPATH += $$PWD/../../../Downloads/SFML-2.1-MinGW/

# sfeMovie libs
Release:LIBS += -L$$PWD/../../../Downloads/sfeMovie-Release-2.0.0-win32/lib/ -llibsfeMovie
Debug:LIBS += -L$$PWD/../../../Downloads/sfeMovie-Debug-2.0.0-win32/lib/ -llibsfeMovie-d
INCLUDEPATH += $$PWD/../../../Downloads/sfeMovie-Release-2.0.0-win32/include
DEPENDPATH += $$PWD/../../../Downloads/sfeMovie-Release-2.0.0-win32/include

# sfeMovie requires C++11
QMAKE_CXXFLAGS += -std=c++11
The debug binaries I've used are the ones available on the website.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 02, 2015, 12:36:55 am
Heya Ceylo, got some results..

I tried with the full decoders pack.

When i run Release from QtCreator i get crash "StackHash_0a9e" but only when i call update or draw on the video
When i run Release from the executable i get crash on "libstdc++-6.dll" and this:
(http://i.imgur.com/9o7LyQI.png)

On Debug inside QtCreator it runs ok(no sound though, have to figure out how)
On Debug from executable i get the same crash like release on the end("libstdc++-6.dll"), rest debug is ok as i see:
(http://i.imgur.com/Omkx8sL.png)


My SFML is fresh build from source btw.
I read some things about "Runtime Errors", but my libstdc++.dll is the shipped with Qt,
could there be an issue with it?

Got excited when i saw the video playing on my game's window and sad at the same time
for not managing to make it work properly :/
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 02, 2015, 01:03:20 pm
Ok it looks line something really is goig wron with the media you're trying to play :D
Can you try with other file formats? And can you provide the media that is causing issues (if possible a small sample lf the video that is enough to reproduce the bug, otherwise.. it's ok but will take longer to download / upload).

Note that in the logs you get there is "No more audio packets" so there is clearly something wrong with the audio stream reading code or the input media file.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 02, 2015, 07:24:36 pm
Thanks for your help :)
i tried with another .wmv file but i got the same error.
Next i tried with an .mp4 and it works! but i don't have audio although i get this(Loaded acc audio stream):
(http://s14.postimg.org/jgn9f4pa9/audio.png)

I don't think it's the media's fault since it can play on vlc and windows media player fine.
I can still send you the videos to give them a try.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 02, 2015, 08:30:20 pm
Yup I'll try to reproduce the issue once I've got the sample. The fact that VLC can play it fine is a good point, so I've probably done some stupid mistake ;D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 02, 2015, 08:50:57 pm
No worries, this is the file: http://expirebox.com/download/7ab1c66cebc4827ce58276b499958c21.html (http://expirebox.com/download/7ab1c66cebc4827ce58276b499958c21.html)
:D

It's cropped and plays both video and audio on vlc.
On debug when run from inside QtCreator it plays only the video with no sound and the above debug output.
Release from inside QtCreator and by running the .exe of both release & debug i get the runtime error.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 02, 2015, 10:26:59 pm
Just tried both on OS X and Windows, with Visual Studio and QtCreator, got no issue :(
Could you zip the full (and ideally minimal) project with ALL the dependencies you're using (both .dll and .dll.a files, etc)? That way I'd be able to check and run with your configuration.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 04, 2015, 08:31:48 pm
Here you go: http://expirebox.com/download/be53ad3e0afca2551a4c2d3187a9c97f.html (http://expirebox.com/download/be53ad3e0afca2551a4c2d3187a9c97f.html)

I guess something must be wrong with my configuration.
Now my debug executable is not crashing but i get no video or sound but no errors,  loaded h264 video stream and acc stream, nothing else. Release still crashes with stack_hash both inside QtCreator and executable.
I included only sfml and sfeMovie libs and dlls, do you need something more?

Thanks!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 05, 2015, 08:45:40 am
Also can you give me the full content of your PATH? So that I can check which dlls may be loaded thanks to it.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 05, 2015, 08:42:59 pm
My OS PATH is:
(click to show/hide)


But QtCreator has it's own Run Enviroment when executing applications, i have selected Build Enviroment for this project and that PATH is a bit different than my OS PATH:

(click to show/hide)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 05:12:26 pm
Hello Im using sfe::Movie to do cutscenes in my project. I am trying to use the sf::Movie::getCurrentImage() to get the current frame image then I am binding that image and drawing it using openGL. the problem is its only returning the first image. I am calling the function sfe::Movie::update(); before I get the image, according to the documentation this should work. thank you for your time.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 05:24:30 pm
@ Knucklehead,
Did you call Movie::play()? Are you calling update() + getCurrentImage() + assigning the new texture in your sprite (or whatever you do with the texture) before each draw in your loop?

If yes and if it still doesn't work, can you provide a minimal sample code to reproduce the problem?

@ JohnGreek
I didn't forget you, was just busy moving house the past week :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 05:27:36 pm
movie.update();
                currentTexture = movie.getCurrentImage();

///////////////////////////////////////////////////////////////////////////////////

                pipeline->useVertexShader(pipeline->_VertPassThrough);
                pipeline->useFragmentShader(pipeline->_FragmentShader);

                glEnable(GL_TEXTURE_2D);
                glActiveTexture(GL_TEXTURE0);

                sf::Texture::bind(&currentTexture);
                pipeline->sendToShader("tex", 0);

                glBindVertexArray(vertexArray);

                glDrawArrays(GL_TRIANGLES, 0, vertexSize);

                glBindTexture(GL_TEXTURE_2D, NULL);
                glBindVertexArray(0);
                currentTime = 0.0f;


oh and I did movie.play(); the audio works perfectly. BTW thank you so much for responding so quickly, really appreciate it.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 05:31:43 pm
Ok, just saw your private message at the same time :P

I can't really say what's wrong here because I'm no OpenGL expert. What I can tell though is that in the provided sfeMovie demo source, replacing:
movie.update();
window.draw(movie);
with
movie.update();
sf::Sprite sp;
sp.setTexture(movie.getCurrentImage());
window.draw(sp);
does work for me.

If the same does for you then it's most probably related to OpenGL where I can't help :-\
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 05:43:20 pm
Specifically its just the getCurrentImage() isnt returning the current image its only returning the first image. So what other function do I have to call for the getCurrentImage() to return the currentframe. My openGL stuff is working perfectly its just the getCurrentImage is only returning the first image in the video. I am calling movie.update() before the current image so im confused why its not returning the current image. Do i have to call the draw function for the getCurrentImage() to move to the next frame?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 05:51:10 pm
As soon as you call play(), update() will replace the internal image if necessary over time. You cannot get all the images from the movie without waiting for it to be the right time if that's what you mean. The RenderWindow::draw() call is not necessary.

If this is not your issue, then please provide a complete AND minimal sample code to reproduce the problem.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 05:55:45 pm
sf::Movie movie;

movie.openFromFile("insert file");
movie.play();
while(true)
{
movie.update();
sf::Texture tex =  movie.getCurrentImage();

///do something that uses the tex to debug I use a gpu debugger

}
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 05:57:06 pm
A minimal AND complete code please.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 06:03:33 pm
hm thats difficult without a working openGL framework. I dunno how to supply this, I could give you my openGL framework although it is a huge project.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 06:09:25 pm
sf::Movie movie;

movie.openFromFile("insert file");
movie.play();
while(true)
{
movie.update();
sf::Texture tex =  movie.getCurrentImage();
sf::Image image = tex.copyToImage();
image.saveToFile("use a directory on your desktop");

}

the above code should work for debugging it. The only image saving to my desktop is the first image. So this above code will help reproduce the problem. The save to file should be a png. thank you again!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 06:20:04 pm
Well then you should first try with SFML and sfeMovie's sample code (simplify it if you want) and try to reproduce the problem. If it doesn't work this way, post the sample code here. If it does, consider the fact that SFML also uses OpemGL for rendering so you should be able to compare its code with what you do.

Edit: did you test the sample code you just gave? does it fail?
Not sure whether the fact that no window was created could make a difference. I need to check when OpenGL contexts are created by SFML.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 13, 2015, 06:22:47 pm
the code just gives the first image of the video. Instead of drawing it, it saves to a png. if you're ever looking to add like an openGL functionality to the library, I'd be happy to develop that btw your library is legit. I'd love to see some openGL support!!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 13, 2015, 07:04:57 pm
I didn't forget you, was just busy moving house the past week :)

No worries mate
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 08:57:24 pm
the code just gives the first image of the video. Instead of drawing it, it saves to a png. if you're ever looking to add like an openGL functionality to the library, I'd be happy to develop that btw your library is legit. I'd love to see some openGL support!!
Did you run your code?


#include <SFML/Graphics.hpp>
#include <sfeMovie/Movie.hpp>

int main()
{
        sfe::Movie movie;

        if (!movie.openFromFile("some_movie.mp4"))
                exit(1);

        movie.play();
       
        while(true)
        {
                movie.update();
                const sf::Texture& tex =  movie.getCurrentImage();
                sf::Image image = tex.copyToImage();
                if (!image.saveToFile("/tmp/tex.png"))
                        exit(2);
        }

        return 0;
}
 
Worked for me.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 13, 2015, 10:20:09 pm
My OS PATH is:
(click to show/hide)


But QtCreator has it's own Run Enviroment when executing applications, i have selected Build Enviroment for this project and that PATH is a bit different than my OS PATH:

(click to show/hide)
I checked the dependencies of the executable you sent and compared to mine. For some reason, your executable is requiring one more symbol in libstdc++-6.dll: InterlockedCompareExchange@12

After looking for some possible known issue on the Internet, I found this: http://www.qtcentre.org/threads/55427-Missing-entry-point-from-dll

The missing symbol is a bit different, but the given solution looks relevant. Indeed, your PATH when run outside QtCreator references the following important directory:
Quote
C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\

While when being run from QtCreator, the PATH contains:
Quote
C:\Qt\Qt5.2.1\5.2.1\mingw48_32\lib
C:\Qt\Qt5.2.1\5.2.1\mingw48_32\bin
C:\Qt\Qt5.2.1\Tools\mingw48_32\bin
C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\

Which makes me think that while compiling you're mixing libraries.
Can you tell me how you got the PATH that is being used while running withing QtCreator? That way I can check whether I have similar entries. And if possible you could try to do some cleaning in these paths, and keep only a path similar to what is stated on the Qt forum discussion, and rebuild the executable.

By the way I had to copy OpenAL and sndfile dlls next to the executable to get it to show the error about libstdc++-6.dll. I suppose you have both of these libraries in your PATH.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: JohnGreek on March 14, 2015, 04:22:00 pm
Can you tell me how you got the PATH that is being used while running withing QtCreator?
I don't really know, it's generated on it's own when selecting:
Build Enviroment: You can select the System enviroment, or clear it and use a PATH and QTDIR only
Run Enviroment: Use Build Enviroment, System Enviroment, Clean Enviroment. On this part, it has selected
Build Enviroment whereas the System Enviroment selection contains my orignal OS PATH. Could i try this too?


Which makes me think that while compiling you're mixing libraries.
Can you tell me how you got the PATH that is being used while running withing QtCreator? That way I can check whether I have similar entries. And if possible you could try to do some cleaning in these paths, and keep only a path similar to what is stated on the Qt forum discussion, and rebuild the executable.
So this means the shipped version you provide is compiled with a differenct version of the runtime than the one
i have? If that's the case i could try to build sfeMovie from source?

By the way I had to copy OpenAL and sndfile dlls next to the executable to get it to show the error about libstdc++-6.dll. I suppose you have both of these libraries in your PATH.
Yes, they are in system32
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 14, 2015, 07:18:29 pm
Can you tell me how you got the PATH that is being used while running withing QtCreator?
I don't really know, it's generated on it's own when selecting:
Build Enviroment: You can select the System enviroment, or clear it and use a PATH and QTDIR only
Run Enviroment: Use Build Enviroment, System Enviroment, Clean Enviroment. On this part, it has selected
Build Enviroment whereas the System Enviroment selection contains my orignal OS PATH. Could i try this too?
If you use only OS PATH you'll get the same error as me I guess. What you need is a build AND run environment compatible with MinGW (I'd say the one from mingw.org as I don't know what changes Qt did bring).

Which makes me think that while compiling you're mixing libraries.
Can you tell me how you got the PATH that is being used while running withing QtCreator? That way I can check whether I have similar entries. And if possible you could try to do some cleaning in these paths, and keep only a path similar to what is stated on the Qt forum discussion, and rebuild the executable.
So this means the shipped version you provide is compiled with a differenct version of the runtime than the one
i have? If that's the case i could try to build sfeMovie from source?
You can give it a try but keep in mind that only MinGW and Visual Studio 2013 are officially supported so you could get surprises. Whatever the compiler you choose, it'll require a standard MinGW+MSYS installation to build FFmpeg that is part of sfeMovie. So not sure that is the easiest way: you'll still get some mix with the FFmpeg build environment and Qt's one. The best thing you can do is making sure that Qt's build and run environment is the same as when using directly MinGW (which is why your choice to use QtCreator is not the easiest one :P ).

All this environment stuff is a real pain but I don't know how to get rid of it without limiting the officially supported compilers. bluekirby0 had started work to build FFmpeg natively with MSVC compiler but it's not finished, and it would not solve your case.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 16, 2015, 03:28:09 am
hey ceylo I ran into another interesting problem. After calling a movie and updating it and stuff afterwards sfml only seems to draw one object per display function. Is there something in the library that switches some setting in sfml to only draw one object per display function? Is it the RenderTarget that needs resetting how would I get the handle for the sf::Movie::RenderTarget??
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 16, 2015, 08:29:24 am
There is no such setting. Do the tests I asked for if you want me to be able to help.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 16, 2015, 02:53:18 pm
i stopped rendering it in openGL and rendered it in sfml. heres a youtube video of my current problem.
https://www.youtube.com/watch?v=KXBH5vVbYSo

I figured out the issue you have to re enable glEnable(GL_DEPTH_TEST);
after playing a video!!:P
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on March 16, 2015, 06:32:04 pm
I figured out the issue you have to re enable glEnable(GL_DEPTH_TEST);
after playing a video!!:P
Was it disabled by your code or by SFML? From what I remember SFML has methods to save / restore OpenGL states so that your OpenGL code can run smoothly when mixed with SFML.

In the end did it fix everything?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Knucklehead on March 16, 2015, 06:45:22 pm
sfml changed it, I looked at the saving states but what I've seen sfml saves its states not the modernGL states. Also yes everything is working now, thank you for your help!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: A Docile Sloth on April 01, 2015, 09:26:09 pm
Hey,

I've been struggling with sfeMovie for the last few days and was hoping that someone may be able to offer some help.

I am using the downloadable builds of the library from here (http://sfemovie.yalir.org/latest/downloads.php). Specifically the Windows (Visual Studio 2013) Debug and Release for Free decoders (although the issue happens with the All Decoders as well).

When I call the .play() function it causes the program crash. This is with both my program and the sample program. The dubug throws:

Code: [Select]
Debug: ..\src\AudioStream.cpp:171 sfe::AudioStream::onGetData() - No more audio packets, do not go further
into the console after the call to .play() . I was attempting to play small_1.ogv for the sample program.

I am using:
Visual Studio 2013
SFML 2.2
Dynamically linking to: sfeMovie.lib;sfml-audio.lib;sfml-graphics.lib;sfml-window.lib;sfml-system.lib
with all the .dll copied into the run directory.

I feel like it's me doing something stupid or other people would probably be bringing this up too.

Also tried to build sfeMovie myself to see if that would work but keep getting the error
Code: [Select]
2>  make: *** [libavutil/file.o] Error 1
2>  *** an error occured, aborting.
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" exited with code 1.
resulting in
Code: [Select]
3>LINK : fatal error LNK1104: cannot open file 'FFmpeg-binaries\lib\avformat.lib'but that's almost certainly me. Was following the Getting Started (http://sfemovie.yalir.org/latest/start.php) notes in Visual Studio 2013.

Any help would be gratefully appreciated.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 01, 2015, 09:41:04 pm
Hi here,

You're the third one to report this message but I've not been able to identify exactly the origin of the problem for now >:(

1. Does the file play fine in other players?
2. Can you give a few lines before "make: *** [libavutil/file.o] Error 1" or the whole log if it's small?
3. Can you provide a full package with all the lib, binaries, audio file, sources and VS project so that I can test?

Ceylo
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: A Docile Sloth on April 01, 2015, 10:47:56 pm
Thanks for the quick reply.

1. Does the file play fine in other players?
Yes, it plays fine in VLC.

2. Can you give a few lines before "make: *** [libavutil/file.o] Error 1" or the whole log if it's small?
Certainly. It's quite long so I'll post the lines above the make error
Code: [Select]
...
1>  CC libavutil/downmix_info.o
1>  CC libavutil/error.o
1>  CC libavutil/eval.o
1>  C:/Users/Will/AppData/Local/Temp/ffmpeg-2.4.3/libavutil/eval.c: In function 'eval_expr':
1>  C:/Users/Will/AppData/Local/Temp/ffmpeg-2.4.3/libavutil/eval.c:247:21: warning: 'av_reverse' is deprecated (declared at C:/Users/Will/AppData/Local/Temp/ffmpeg-2.4.3/libavutil/common.h:79) [-Wdeprecated-declarations]
1>                       p->var[0] = av_reverse[i&255]*x_max/255;
1>                       ^
1>  CC libavutil/fifo.o
1>  CC libavutil/file.o
1>  In file included from C:/Users/Will/AppData/Local/Temp/ffmpeg-2.4.3/libavutil/file.c:27:0:
1>  c:\mingw\include\unistd.h:79:1: error: expected ',' or ';' before 'int'
1>   int __mingw_sleep( unsigned long, unsigned long );
1>   ^
1>  In file included from C:/Users/Will/AppData/Local/Temp/ffmpeg-2.4.3/libavutil/file.c:27:0:
1>  c:\mingw\include\unistd.h:105:1: error: expected ',' or ';' before 'int'
1>   int nanosleep( const struct timespec *, struct timespec * );
1>   ^
1>  c:\mingw\include\unistd.h:125:28: error: expected ',' or ';' before 'usleep'
1>   int _cdecl __MINGW_NOTHROW usleep( useconds_t )__MINGW_ATTRIB_DEPRECATED;
1>                              ^
1>  c:\mingw\include\unistd.h:138:10: error: conflicting types for '_cdecl'
1>   unsigned _cdecl __MINGW_NOTHROW sleep( unsigned );
1>            ^
1>  c:\mingw\include\unistd.h:125:5: note: previous declaration of '_cdecl' was here
1>   int _cdecl __MINGW_NOTHROW usleep( useconds_t )__MINGW_ATTRIB_DEPRECATED;
1>       ^
1>  c:\mingw\include\unistd.h:138:33: error: expected ',' or ';' before 'sleep'
1>   unsigned _cdecl __MINGW_NOTHROW sleep( unsigned );
1>                                   ^
1>  c:\mingw\include\unistd.h:153:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ftruncate'
1>   int _cdecl ftruncate( int, off_t );
1>              ^
1>  make: *** [libavutil/file.o] Error 1
1>  *** an error occured, aborting.
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" exited with code 1.

3. Can you provide a full package with all the lib, binaries, audio file, sources and VS project so that I can test?
Here is an "as simple as possible" program that breaks on .play() . Also included the SFML and sfeMovie files I used to make it. I keep the SFML folder in C:\. It's on Dropbox (click me) (https://www.dropbox.com/s/6mepale2y5htoyu/Program%2BSFML.zip?dl=0)

If there's anything else you need to know, let me know.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 02, 2015, 12:29:04 am
Certainly. It's quite long so I'll post the lines above the make error
I've seen posts with similar errors where it looks to be related to recent changes in MinGW. Didn't check further about this point for now. At least locally I can still build FFmpeg just fine.

Here is an "as simple as possible" program that breaks on .play() . Also included the SFML and sfeMovie files I used to make it. I keep the SFML folder in C:\. It's on Dropbox (click me) (https://www.dropbox.com/s/6mepale2y5htoyu/Program%2BSFML.zip?dl=0)

If there's anything else you need to know, let me know.
Thanks :) I could easily reproduce the same error as you. I checked with fresh binaries from my website and SFML's one, same problem. Then I rebuilt sfeMovie and the error disappeared. Just replacing sfeMovie's dll made the problem appear again, while both dlls are supposed to be built from the exact same sources.

Can you try with https://www.dropbox.com/s/rinmsi1i0fylm7m/sfeMovie-d.dll?dl=0 and tell me if it also crashes? If it doesn't then something is wrong with the build environment that generate the downloadable files...
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: A Docile Sloth on April 02, 2015, 12:57:27 am
I've seen posts with similar errors where it looks to be related to recent changes in MinGW. Didn't check further about this point for now.
Fair enough. I'll have a look around and see what I can find out.

Can you try with link and tell me if it also crashes? If it doesn't then something is wrong with the build environment that generate the downloadable files...

This .dll doesn't result in a crash. The video plays fine :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 09, 2015, 08:52:31 pm
I've done some investigations. The problem does not occur with MinGW binaries and SFML-2.1. However MinGW binaries don't look to be compatible with SFML-2.2 (which uses a more recent version of MinGW). Unfortunately MinGW upgrade looks to be buggy (crashing) so I could not check this for now. Will try to do a full clean install of MinGW. If it doesn't change anything, I don't know where GCC 4.9.2 MinGW (DW2) used for SFML comes from...

So at least the problem is not with the FFmpeg dlls. As for Visual Studio, I noticed the build slaves have "Update 3" installed while I have "Update 4" locally. So I'm upgrading the remote installation and I'll see if it gives better results.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 09, 2015, 11:01:21 pm
Grrr, I've had the bad idea of reinstalling MinGW too (in case it was the source of the problem), and now I get the same compilation error as you ;D
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 13, 2015, 09:00:31 pm
News again. I've done tests with older releases of sfeMovie, in order to check when the problem appeared. And none of the binaries up to last december worked. So I tried to replace SFML binaries and... surprise, even the latest binaries work fine with SFML 2.1, but not 2.2.

What is weird is that SFML 2.1 binaries are for VS2012 builds, while I use VS2013. So it should not work. And SFML 2.2 binaries, both VS2012 and VS2013 do not work. While SFML 2.2 for VS2013 should be the perfect match.

So for the short term, using SFML 2.1 binaries for VS2012 should do it. As for the fix, I still need to check whether this is an issue with SFML 2.2 or if it a problem with the SFML binaries I have been using till now to provide the downloads.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 15, 2015, 12:11:18 am
@A Docile Sloth
It looks like the problem was the SFML binaries I was using on the build system. I replaced that with what should be used and now I can't reproduce the problem anymore. The download links provide the updated binaries. Can you confirm that it is fixed?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: upVote on April 15, 2015, 06:06:13 pm
Hi Ceylo, I have work with sfeMovie and SFML 2.2 all files provided by you in this thread works fine.
Now when I was running the app in Visual Studio 2013 in release mode it was asking for the libiconv-2.dll witch is part of mgbw compiler so what I did I went to the official website and obtain the library from them, now everything works fine and it is official now SFML 2.2 and sfemovie don't have any problem with binaries file. And the Video play fine.

here is the link to download visual studio 2013 release sfemovie decoders . link http://sfemovie.yalir.org/latest/downloads.php (http://sfemovie.yalir.org/latest/downloads.php)
and now here is a Drop Box link containing all libraries needed including SFML 2.2 as well to build the program your-self. https://www.dropbox.com/s/53rnkwwypxybcez/sfml%20console%20app.rar?dl=0 (https://www.dropbox.com/s/53rnkwwypxybcez/sfml%20console%20app.rar?dl=0)
Thank you so much for this amazing library it save me a lot of time.:-)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on April 29, 2015, 11:14:43 pm
Hi upVote,

I'm glad you like it :) As for the additional dlls… I must admit I have never noticed ;D . Just because I have MinGW binaries in my PATH. That's really good to know, and one more reason to get rid of MinGW for building FFmpeg :)
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: neobit on May 01, 2015, 02:25:23 am
I have a little problem while I tryed to compile the source code. I used the source code from https://github.com/Yalir/sfeMovie/zipball/v1.0 (https://github.com/Yalir/sfeMovie/zipball/v1.0) and I got this error:

Linking CXX shared library libsfeMovie.dll
C:/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: cannot fin
d -lavdevice
C:/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: cannot fin
d -lavformat
C:/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: cannot fin
d -lavcodec
C:/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: cannot fin
d -lavutil
C:/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: cannot fin
d -lswscale
collect2.exe: error: ld returned 1 exit status
CMakeFiles\sfeMovie.dir\build.make:226: recipe for target 'libsfeMovie.dll' fail
ed
mingw32-make[2]: *** [libsfeMovie.dll] Error 1
CMakeFiles\Makefile2:62: recipe for target 'CMakeFiles/sfeMovie.dir/all' failed
mingw32-make[1]: *** [CMakeFiles/sfeMovie.dir/all] Error 2
Makefile:115: recipe for target 'all' failed
mingw32-make: *** [all] Error 2
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 01, 2015, 02:27:28 pm
Hi neobit,

From what I can see you downloaded the sources of version 1.0. It is quite old and the build system and features have evolved a lot in the meantime. I won't bring any fix to this version so I recommend that you download the latest sources from the GitHub page https://github.com/Yalir/sfeMovie (download zip button on the right).

A part from that I see that you're using mingw32-make. Building requires more than that mingw32-make, it also requires that you run make from a real Shell environment (namely the one provided by MinGW when installed with MSYS).
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: neobit on May 02, 2015, 02:14:19 am
I really don't understand something,  I done like it's said in the tutorial from your website. CMake GUI generates a makefile. If I try to run this file from bash it will not work, because CMake GUI generates a Windows style makefile, that contains Windows PATH's. What should I do? It's the first time I used this.

Thanks for all your help.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 02, 2015, 11:17:26 am
MinGW knows how to handle Windows paths. I'm not sure about what you mean when saying "run this file". Apart from the details specified in the Getting Started section, you're just supposed to run CMake with "MSYS Makefiles" as generator and then run 'make' within the MinGW terminal with the current working directory being your build directory.
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: neobit on May 02, 2015, 01:18:55 pm
Now I have an error at line 139, in build_ffmpeg.sh file:

{ echo "$args" | xargs "${temporary_ffmpeg_dir}/configure"; }

xargs command not found ( I run make from bash like you said )

The first problem was solved, I have H:/ partition, so the script have only from C to G.

Thanks so much for your help.

-------------------------------------------------------------------------------------------

Solved, my MSYS version was so old, so I downloaded a new version from here :

http://sourceforge.net/projects/mingwbuilds/files/External%20binary%20packages/ (http://sourceforge.net/projects/mingwbuilds/files/External%20binary%20packages/)

Thanks again for all your help
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 02, 2015, 02:18:42 pm
So in the end could you get everything to work?
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: neobit on May 02, 2015, 04:24:38 pm
Yes, thank you so much for your help!
Title: Re: sfeMovie Project [v1.0 released] [looking for developers]
Post by: Ceylo on May 10, 2015, 09:32:42 pm
Some big news:
- Seeking is now fully supported! More details here (http://sfemovie.yalir.org/forum/viewtopic.php?id=46)
- MinGW binaries are no more more provided. The only supported build toolchain on Windows is now Visual Studio 2013

Also, I just noticed that I forgot to post about it here last december: sfeMovie has switched to C++11. More details here (http://sfemovie.yalir.org/forum/viewtopic.php?id=36).
Title: Re: sfeMovie (video & audio player library with many codecs)
Post by: Ceylo on May 24, 2015, 07:02:19 pm
News again: sfeMovie builds on Windows are now fully done with Visual C++, no more MinGW involved! More details here (http://sfemovie.yalir.org/forum/viewtopic.php?id=47)
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: iride on September 30, 2015, 11:13:46 pm
Hello, will I be able to compile sfeMovie with VS 2015?
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on October 01, 2015, 09:01:33 pm
Hi iride,

It's not possible yet: current FFmpeg version doesn't build fine with VS2015. So provided FFmpeg version needs to be updated. Will check it but it'll take a bit of time.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on October 04, 2015, 06:45:46 pm
Iride,
FFmpeg version used by sfeMovie has been updated and full build has been successfully tested with Visual Studio 2015. There are no binaries for this version yet but at least you can build from sources for MSVC 2015.

See Getting Started page (http://sfemovie.yalir.org/latest/start.php) for how to build.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: iride on October 11, 2015, 03:24:59 am
Sweet! Thank you so much!!
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: sfUser on December 30, 2015, 11:32:24 pm
Hi there,

I would like to add a OpenFromStream to sfeMovie, using something like this:
https://stackoverflow.com/questions/19785254/play-a-video-from-memorystream-using-ffmpeg
http://www.codeproject.com/Tips/489450/Creating-Custom-FFmpeg-IO-Context
Using SFML's InputStream interface.

I seems simple, so I was thinking of implementing it myself, so I downloaded the master branch from github and followed the guide to compile but I get an error compiling ffmpeg.

Can someone provide a link to a fully compiled CMAKE generated project for vs2013 or vs2015 with all the libs already built, so that I only need to compile my changes to the sfeMovie project, instead of the whole solution?

Thanks in advance.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: DarkRoku12 on December 31, 2015, 02:07:19 pm
There will be, o can be a port for android of sfeMovie?
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on December 31, 2015, 02:20:38 pm
@sfUser: I don't want to give prebuilt version to solve your specific case, I prefer to fix what's going wrong. What error do you get?

@DarkRoku: it is not planned. Feel free to fork the project if you want to start the port. I can provide you with support for questions you'd have about sfeMovie itself :)
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: DarkRoku12 on December 31, 2015, 02:29:46 pm
I have plans to port it.

The main issue will be FFmpeg.

The seccond is if sfeMovie don´t use inputStream, or provide a virtual class the movie only can be readed from the memory/SDCard of the phone but no from the assets or raw/res folder.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: sfUser on December 31, 2015, 04:54:57 pm
I get this error:

cl is unable to create an executable file.
If cl is a cross-compiler, use the --enable-cross-compile option.

which is common and documented on ffmpeg's website, however, cl is pointing to the right bin.
If i do "where cl" I get the proper path of vs 2013. I also deleted link as suggested on ffmpeg's website to avoid conflits, but I still fail here.

tar -C "/tmp" -xjf "/sfeMovie/sfeMovie-master/FFmpeg/ffmpeg-2.8.tar.bz2"
/tmp/ffmpeg-2.8/configure  --disable-programs --disable-doc --disable-network --disable-decoders --disable-muxers --disable-encoders --yasmexe="/msys32/usr/bin/yasm.exe" --enable-shared --disable-static  --enable-memalign-hack --toolchain=msvc

That's why I asked for a pre-built ffmpeg .lib that allows me to build sfeMovie + examples without building ffmpeg. I then tried ffmpeg's latest version (2.8.4) and got the same error.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: DarkRoku12 on January 01, 2016, 12:43:36 am
I do it.

I succesfully port sfeMovie to android!!! And it works.

Let clean the project for make a build system.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on January 01, 2016, 01:22:34 pm
@sfUser can you check the config.log file from FFmpeg-objects directory in your build directory? At some point it should give more details on why "cl is unable to create an executable file".
You should not need to delete link.exe as building from VS puts VS utilities first in PATH. You're building from VS2013 or 2015, right? With MSYS2 installed?

@DarkRoku so fast :p I guess you built your own FFmpeg binaries for Android then told CMake to use these when configuring sfeMovie build?
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: DarkRoku12 on January 01, 2016, 03:01:12 pm
@DarkRoku so fast :p I guess you built your own FFmpeg binaries for Android then told CMake to use these when configuring sfeMovie build?

No.

First i build static libraries for Android. (Dynamic at least for me don´t worked=
The i make my own Android.mk for sfe::Movie the link to the project.

Later i will provide binaries and steps to get compiled.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: sfUser on January 01, 2016, 04:21:20 pm
OK, so I was able to build everything.

The log you mentioned gave me an error which led me to open a visual studio 2013 command prompt and then open msys2_shell.bat. This way the msys2 shell lib paths are properly set (were missing).
Then, I ran the build_ffmpeg.sh windows 1
afterwards, some packages were missing from msys, namely diffutils and pkg-config
And that's it.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on January 01, 2016, 04:36:04 pm
You're not supposed to run build_ffmpeg.sh, just usual CMake + Visual Studio build, see Getting Started (http://sfemovie.yalir.org/latest/start.php) page.

Building from Visual Studio will use your MSYS2 installation (and its bash) when appropriate, so you would not need to bother the build_ffmpeg.sh or msys2_shell.bat. About diffutils and pkg-config, they can help FFmpeg configuration but I don't think they are required.

Note that if you only used build_ffmpeg.sh, you only have FFmpeg binaries right now, but no sfeMovie binary.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: sfUser on January 01, 2016, 09:23:16 pm
Yes, but after building ffmpeg, i opened the generated solution and compiled sfeMovie + the sample project.
In fact, I already added openFromStream to sfeMovie and its working OK.
I'll refactor the code a bit and post it here for your consideration.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: sfUser on January 02, 2016, 01:58:46 am
Here are the modified files (in comparison to the current git trunk) to be able to open using SFML's InputStream class.

I've tested on windows (vs2015).
Note: some files have the line endings converted to windows (were originally linux).

It is based on this SO post:
https://stackoverflow.com/questions/19785254/play-a-video-from-memorystream-using-ffmpeg

It doesn't appear to have memory leaks. The program I tested read a movie from a zip file using SFML's physFS class available in the SFML's wiki.

Feel free to incorporate this into sfeMovie, if you wish to, or modify the code to better reflect your coding conventions.

NOTE2: there is a warning converting from sf::Int64 to int in the read function (just remembered now).
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on January 02, 2016, 04:04:26 pm
Thank you, going to look at it to get it integrated in the official release :)
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on January 02, 2016, 04:17:31 pm
I am pleased to announce support for textual (srt, ass/ssa, ...) subtitles in addition to the already existing support for bitmap subtitles :)
See here for more details (http://sfemovie.yalir.org/forum/viewtopic.php?pid=74#p74).
Thank you feliwir (https://github.com/feliwir) for your contribution!
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: eXpl0it3r on April 22, 2016, 04:05:44 pm
Looks like the Air Conflicts: Pasific Carriers removed his stuff. The video you embedded on the site doesn't exist anymore and the linked domain only leads to a domain seller. ;)

And I noticed a little typo in the download section: "Although ony Visual Studio 2015 binary"

How is it looking with MinGW support? Or can I use the VS libraries?
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on April 25, 2016, 07:58:03 pm
Hi,

I've fixed the website, thanks for your comments :)
As for MinGW it is not officially supported, although you can probably get things working if you tweak the build system a little bit. I don't officially support it anymore because with all the MinGW variants it was requiring more time than what I wanted to spend on it. So indeed I recommend using VS215.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: JohnSon123 on January 25, 2017, 07:21:40 pm
Tell me how to connect it http://sfemovie.yalir.org/1.0/
to my project in visual studio 2015.
Error appears when you start:
"Could not find any video decoder for this video format"
Or is there any exception, and the program crash.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: UroboroStudio on February 15, 2017, 08:20:42 pm
The lastest download links for sfeMovie doesn't work with SFML 2.4.2

I build my own binaries for Visual Studio 2013 32bits and working with SFML 2.4.2

Here is the download link if anyone needed:

https://mega.nz/#!KMcUQK7Y!PMqnZEfMybQckIs8QAMxroQIjjDCJ7YWMVxjPtblEtw (https://mega.nz/#!KMcUQK7Y!PMqnZEfMybQckIs8QAMxroQIjjDCJ7YWMVxjPtblEtw)

Thanks Ceylo for the library  :)
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Gerard Wensink on May 11, 2018, 05:12:29 pm
For me the function getCurrentImage() doesn't work either.
What i do to get it into a sprite is a in between draw.

void updatemovie() {
    if (live_movie->getStatus()!=sfe::Stopped) {
        live_movie->update();
        texture_from_movie->draw(*live_movie);
        texture_from_movie->display();

//        texture_from_movie_new=live_movie->getCurrentImage();
        texture_from_movie_new=texture_from_movie->getTexture();
        sf::Texture::bind(&texture_from_movie_new);
        sprite_from_movie.setTexture(texture_from_movie_new,false);
//        sprite_from_movie.setTexture(live_movie->getCurrentImage(),false);
    }
}

(live_movie is pointer to a sfe::movie)
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: Ceylo on May 12, 2018, 07:55:58 pm
Why do you want it to be in a sprite?
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: gamepopper on June 14, 2018, 11:49:43 pm
Hello,

Dumb question probably, but I'm trying a bunch of videos with the sfeMovieDemo and for most of them the lib cannot find the audio decoder.

I've tried MKV (cannot find mp3), MP4 (cannot find aac) and MPG (cannot find ac3). The only format that works for audio is uncompressed AVI (where the video stream doesn't work but the audio stream works fine).

I'm building from the source using Visual Studio C++ 2017 for Windows.

(https://pbs.twimg.com/media/DfrnuIZW4AQYv3k.jpg:large)
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: eXpl0it3r on June 15, 2018, 08:11:50 am
What binaries did you use or how did you build it?

According to the FAQ there are two different versions: http://sfemovie.yalir.org/latest/faq.php#supported-codecs
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: gamepopper on June 16, 2018, 12:02:18 am
What binaries did you use or how did you build it?

According to the FAQ there are two different versions: http://sfemovie.yalir.org/latest/faq.php#supported-codecs

I'm not sure how I can tell what binaries I have, I cloned what was on GitHub and built the entire project with CMake and MSYS2 Mini-GW 64-bit. The codec object folder (FFmpeg-objects/libavcodec) seems to show the full list of codecs in that FAQ. have I've missed a step or there are completely different setup instructions for Visual Studio?
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: eXpl0it3r on June 16, 2018, 12:16:01 am
Did you pick the wanted codecs when building with CMake as stated in the Getting Started page?

http://sfemovie.yalir.org/latest/start.php
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: gamepopper on June 16, 2018, 12:33:28 am
Ah I see... these were the ones set default in CMake:

theora;flac;vorbis;vp8;vp9;opus;adpcm_4xm;adpcm_adx;adpcm_afc;adpcm_ct;adpcm_dtk;adpcm_ea;adpcm_ea_maxis_xa;adpcm_ea_r1;adpcm_ea_r2;adpcm_ea_r3;adpcm_ea_xas;adpcm_g722;adpcm_g726;adpcm_g726le;adpcm_ima_amv;adpcm_ima_apc;adpcm_ima_dk3;adpcm_ima_dk4;adpcm_ima_ea_eacs;adpcm_ima_ea_sead;adpcm_ima_iss;adpcm_ima_oki;adpcm_ima_qt;adpcm_ima_rad;adpcm_ima_smjpeg;adpcm_ima_wav;adpcm_ima_ws;adpcm_ms;adpcm_sbpro_2;adpcm_sbpro_3;adpcm_sbpro_4;adpcm_swf;adpcm_thp;adpcm_thp_le;adpcm_vima;adpcm_xa;adpcm_yamaha;interplay_dpcm;pcm_alaw;pcm_bluray;pcm_dvd;pcm_f32be;pcm_f32le;pcm_f64be;pcm_f64le;pcm_lxf;pcm_mulaw;pcm_s16be;pcm_s16be_planar;pcm_s16le;pcm_s16le_planar;pcm_s24be;pcm_s24daud;pcm_s24le;pcm_s24le_planar;pcm_s32be;pcm_s32le;pcm_s32le_planar;pcm_s8;pcm_s8_planar;pcm_u16be;pcm_u16le;pcm_u24be;pcm_u24le;pcm_u32be;pcm_u32le;pcm_u8;pcm_zork;roq_dpcm;sol_dpcm;xan_dpcm
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: eXpl0it3r on June 16, 2018, 12:47:17 am
Well, I don't see any AC3 or similar, just FLAC, OGG, Theora, Opus and PCM.
Title: Re: sfeMovie (video & audio playback library with many codecs)
Post by: gamepopper on June 16, 2018, 01:47:12 am
Yeah I copied the string from SFEMOVIE_AVAILABLE_ENCODERS to SFEMOVIE_ENABLED_ENCODERS and now the videos work!