vlc-2.2.1 compile with VS2013

This forum is about all development around libVLC.
JoungEunKim
Cone that earned his stripes
Cone that earned his stripes
Posts: 150
Joined: 10 Dec 2009 00:21

vlc-2.2.1 compile with VS2013

Postby JoungEunKim » 09 May 2015 12:01

Hi.

This is vlc-2.2.1 compile with VS2013 update 4.

Prevoius release vlc-2.2.0-rc2 compile with VS2013 has too many problem.
I'm very sorry. :oops:
I want to fix that with new release.

I was to read new version for msys2 from JB.
It was to give me idea.
I have a time to make and test new version.

This version change very small part.
I will give two version.

First.
It has assembly part with cygwin version.

vlc-2.2.1 compile with cygwin (assembler part and some library)
https://github.com/sunqueen/vlc-2.2.1.32-cover.git

vlc-2.2.1 compile with VS2013 update 4
https://github.com/sunqueen/vlc-2.2.1.32-2013.git


Second.
It don't use assembly.

vlc-2.2.1 compile with VS2013 update 4 (not support assembly)
https://github.com/sunqueen/vlc-2.2.1.32-2013.noasm.git

I hope, it helps study and debug.
Have a nice day...

This is list of used

vlc-contrib-i686-w64-mingw32-20150408.tar.bz2
qt4 : 4.8.5
game-music-emu-0.6.0.tar.bz2
harfbuzz-0.9.19.tar.bz2
libmodplug-0.8.8.5.tar.gz
live.2011.12.23.tar.gz
sidplay-libs-2.1.1.tar.gz

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: vlc-2.2.1 compile with VS2013

Postby Jean-Baptiste Kempf » 09 May 2015 19:25

Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

JoungEunKim
Cone that earned his stripes
Cone that earned his stripes
Posts: 150
Joined: 10 Dec 2009 00:21

Re: vlc-2.2.1 compile with VS2013

Postby JoungEunKim » 11 May 2015 05:57

Hi Jean-Baptiste.

I try to work that url.
I try to compile "Windows" and "Debug"
I'm not success that. 6^^;;

I have some request and ask.

First.
Can you make, "C:\Program Files (x86)" is flexible ?
I have 32bits system, my url is "C:\Program Files".

Second.
Some file need to convert format for Visual Studio.

Third.
Windows Phone 8.0 SDK is not support my system.
Can I use Windows Phone 7.1 SDK or lower version ?

I'm not sure yet(I don't complete to compile).
If you have solution, please help me. ^^

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: vlc-2.2.1 compile with VS2013

Postby Jean-Baptiste Kempf » 11 May 2015 09:50

You need VS2013, and SDK 8.0, yes.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

JoungEunKim
Cone that earned his stripes
Cone that earned his stripes
Posts: 150
Joined: 10 Dec 2009 00:21

Re: vlc-2.2.1 compile with VS2013

Postby JoungEunKim » 11 May 2015 13:03

I finished compile, like "./build.sh Windows Debug"

I was change two files.
One is "src\text\strings.c", other is "modules\video_filter\deinterlace\yadif.h"

strings.c is to convert unicode 1200.

yadif.h is to add
#elif defined(_MSC_VER)
#define DECLARE_ALIGNED(n,t,v) __declspec(align(n)) t v
#define DECLARE_ASM_CONST(n,t,v) __declspec(align(n)) static const t v

Is it right ? or is it unnecessary ?

I have more question.

I don't find vlc.exe.
At latest echo "Cross-compilation: cache generation skipped!".
Is it right ?

chouquette
Developer
Developer
Posts: 291
Joined: 15 Apr 2010 00:54

Re: vlc-2.2.1 compile with VS2013

Postby chouquette » 11 May 2015 13:26

Hi,

So far yadif is not supported (mostly because it's using assembly that can't be built within MSVC). Basically I just disabled yadif for now.
I don't remember anything required for strings.c, though it might be that I didn't pull VLC's tree in a while.
I think I have a few local modifications to push to disable it, I'll try to do it later today.

JoungEunKim
Cone that earned his stripes
Cone that earned his stripes
Posts: 150
Joined: 10 Dec 2009 00:21

Re: vlc-2.2.1 compile with VS2013

Postby JoungEunKim » 11 May 2015 16:11

Hi.

Thanks.
I'll wait for that. ^^

I have question to windows phone.
I have VS2013 update 4.
And I have "C:\Program Files\Windows Phone Kits\8.1".
I think, it is installed with VS2013.
I finished compile "./build.sh WindowsPhone Debug" without Windows Phone SDK 8.0...
Now, Do I need Windows Phone SDK 8.0 ?
My system is 32 bit.
I don't find Windows Phone SDK 8.0 for 32 bit. 6^^;;

chouquette
Developer
Developer
Posts: 291
Joined: 15 Apr 2010 00:54

Re: vlc-2.2.1 compile with VS2013

Postby chouquette » 11 May 2015 19:03

I just pushed an updated patchset.
Regarding the SDK, you need the WP8.1 one, not 8.0

JoungEunKim
Cone that earned his stripes
Cone that earned his stripes
Posts: 150
Joined: 10 Dec 2009 00:21

Re: vlc-2.2.1 compile with VS2013

Postby JoungEunKim » 12 May 2015 09:07

I have still problem with "src\text\strings.c"
Please check your file's format.
I think, it is not same with me. 6^^;;;

And Can I ask to change some ?
In clwrap

ARGS="$ARGS "'-I"C:/Program Files (x86)/Windows Kits/8.1/Include/um/"'" "'-I"C:/Program Files (x86)/Windows Kits/8.1/Include/shared/"'" "'-I"C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include"'

to change

ARGS="$ARGS "'-I"C:/Program Files (x86)/Windows Kits/8.1/Include/um/"'" "'-I"C:/Program Files (x86)/Windows Kits/8.1/Include/shared/"'

Last include config is not used. 6^^;;

yadif.h is fixed. Thanks.

fm0517
New Cone
New Cone
Posts: 2
Joined: 14 May 2015 04:22

Re: vlc-2.2.1 compile with VS2013

Postby fm0517 » 14 May 2015 04:36

Hi JoungEunKim:
I try to build vlc-2.2.1.32 with VS2013, but there are lots of error:C2275.
I know the C2275 problem is due to that when compiler handles c file, all the variable must be announced at the beginning of the block. But there are too many announce sentences to be corrected.
Is there any solution for this condition ? Or is there any different when building vlc whit VS2013 update 4 ?
Please help me. Thank you !

JoungEunKim
Cone that earned his stripes
Cone that earned his stripes
Posts: 150
Joined: 10 Dec 2009 00:21

Re: vlc-2.2.1 compile with VS2013

Postby JoungEunKim » 14 May 2015 07:06

Hi.

I have Visual Studio 2013 update 4. (In About, Version 12.0.31101.00 Update 4)
MS.Net : 4.5.51209

I was test that, to complete compile. 6^^;;;

fm0517
New Cone
New Cone
Posts: 2
Joined: 14 May 2015 04:22

Re: vlc-2.2.1 compile with VS2013

Postby fm0517 » 14 May 2015 14:08

I find the error C2275 does not exist any longer after my VS2013 get patched to update4. Thank you very much!

albert_wang
New Cone
New Cone
Posts: 5
Joined: 10 May 2015 05:36

Re: vlc-2.2.1 compile with VS2013

Postby albert_wang » 08 Jun 2015 04:27

Hi ,

I can compile and run vlc successfully. But it will enter command line mode when I put the output to other PC. Did any one meet this problem too ? I still try to solve it. If any input, that is appreciated.

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 11 Mar 2017 23:04

Hi !

Sorry for trying to revive this quite old thread, but I want vlc to get windows / android cross compilable, using Visual studio projects / solutions as a base (without autoconf).
For that purpose I have created syncProj - https://docs.google.com/document/d/1C1Y ... j5zHU/edit

And now reverted your project / solution into C# (syncProj) script and started to backport vlc project to Android.

I've noticed that in your port there exist folder win32\lib which includes a lot of 3-rd party libraries are pre-built. Can you share me instructions how you produced those ?

I probably want to create one central repository where I collect 3-rd party libraries (contrib + patches opened up).

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 11 Mar 2017 23:12

https://social.msdn.microsoft.com/Forum ... diogeneral

Also why MODULE_STRING="core" kind of define is needed - isn't __FILE__ better define anyway ?

chouquette
Developer
Developer
Posts: 291
Joined: 15 Apr 2010 00:54

Re: vlc-2.2.1 compile with VS2013

Postby chouquette » 13 Mar 2017 09:24

The dependencies we provide as binary are the built contribs. They are built as described here: https://wiki.videolan.org/Win32Compile/ ... .28slow.29 but there is no plan to support this with Visual Studio

I'm not sure what you're asking about MODULE_STRING, but you shouldn't have to fiddle with this, it's part of vlc's internal

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 01 Apr 2017 22:39

The dependencies we provide as binary are the built contribs. They are built as described here: https://wiki.videolan.org/Win32Compile/ ... .28slow.29 but there is no plan to support this with Visual Studio
There is no plan indeed, but I want to open up all contrib libraries in vlc, to be compilable with vlc. I have already started this work - and compiled couple of static libraries for windows and for android.
I've raised a separate conversation about this in here: https://forum.videolan.org/viewtopic.php?f=32&t=137893

Maybe you can comment this as well - there exists for example this git repo: https://github.com/sunqueen/vlc-2.2.1.32-2013
But it's outdated. I would prefer to have original package committed first, after that some of sunqueen patches, and then my own patches as well.
I want also to open up all contrib libraries - again - first original libraries, after that all patches on top of that one.

At the end I want to have .sln & .vcxproj for windows & android platforms.

If there is not interested people, I'll create svn repository - if there will be I can consider git or other version control system as well.
I'm not sure what you're asking about MODULE_STRING, but you shouldn't have to fiddle with this, it's part of vlc's internal
https://docs.google.com/document/d/1C1Y ... sxb42gc5w7

This is the reason.

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 17 Apr 2017 12:07

One question in between.

You have added one more file - misc\cpu.c refers to cover_cpuid & cover_vlc_CPU_init1 - I can see static library with those function but without any source code or reference from which library following functions were taken from and why they are needed anyway ?

Can you give bit more information on them ?

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 22 Apr 2017 09:22

Updated extlibs\libiconv, extlibs\libintl, libvlccore.cs three projects into here:

https://sourceforge.net/p/vlc2/code/HEAD/tree/

At the moment I've took original vlc release and sorting and moving sunqueen patches from one place to another. (opening, removing, moving around)

At the moment Win32 (Windows) & ARM (Android) compilation targets are supported.

syncProj
https://sourceforge.net/projects/syncproj/
https://docs.google.com/document/d/1C1Y ... j5zHU/edit#

code coverage is at 70%, I will improve testing later on, when encounter new bugs & fix them.

Tried to pick up mingw as source code without success, decided to leave as static library for timebeing, but because of this cannot be reported to vs2015 or x64 platform.
Maybe something to fix later on, there is only needed _wopendir, and it can be easily rewritten according to mingw source code.

Haven't yet reached run-time, I suspect more problems will come there, because my current port is basically a hack - but I need to start from somewhere.

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 30 Apr 2017 10:51

I'm continuing patching my own vlc compilation (
https://sourceforge.net/p/vlc2/code/HEAD/tree/ ) targetted for windows & android, using Visual studio as compilation environment.

I have now successfully compiled / linked base libraries and continuing now into depth of plugin. I haven't yet reached run-time, so I suspect there might be more problems, specially I did not get any answer on my previous question - misc\cpu.c / cover_cpuid & cover_vlc_CPU_init1.

I now reached codecs part, and was wondering from where you have taken libavcodec - there is some odd version mentioned in "vlc-2.2.1.32-2013-master\win32\include\libavcodec\version.h" - 56.11.0, while ffmpeg releases with avcodec looks
slightly different - comments in header mention "This file is part of ffmpeg", while current public header mentions "This file is part of Libav.". I've now took two sequential releases from here:

https://libav.org/download/ - 11 and 12, and both of them does not have same revision number.

I prefer to integrate completely identical version to what is working, not to fight with newer libs , as they might bring more problems - but I need to choose currently some version.

syncProj code coverage 73.31%. (Covering with testing)

https://sourceforge.net/p/vlc2/code/HEA ... modules.cs
This script is now somehow assembling multiple plugins ( ~ 30 dll's) , I plan to expand it to other plugins as well.

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 11 May 2017 22:41

Apperenly codec/avcodec was not that trivial - it was dragging dependencies from ffmpeg.

ffmpeg has it's own compilation instructions, and I've understood that without automation I will not be able to assemble ffmpeg solution / project - so I have added experimental support for being able to reconstruct
solution / projects from make command line: https://docs.google.com/document/d/1C1Y ... l8pfvnfgmd

And now I can compile ffmpeg out of box from Visual Studio 2013: https://sourceforge.net/p/vlc2/code/HEA ... bs/ffmpeg/

I have some experience with ffmpeg video encoding / decoding and I have tried to convert something, but without luck:
ffmpeg_g.exe -i "Diane Arkenstone-Rhythm of the Forest.mp4" -codec:a libmp3lame -qscale:a 2 out.mp3
...
Comes an error: "Unknown encoder 'libmp3lame'"

So I suspect that I need to cherry pick bit more libraries to have all codecs inside.

If anyone is interested - one of ffmpeg project looks like this: https://sourceforge.net/p/vlc2/code/HEA ... bavutil.cs

I'll now continue further with avcodec integration with ffmpeg...

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 01 Jun 2017 22:49

Reconstructed basic set of plugins for vlc (player is launched from command line), integrated inside quire many third party libraries.

https://sourceforge.net/p/vlc2/code/HEAD/tree/extlibs/

Now with Win32 / Debug I can start video & audio playback. Android ARM configuration is not fully working - this is something I will work on next.

Android compilation support:
========== Build: 51 succeeded, 22 failed, 1 up-to-date, 80 skipped ==========

Windows compilation support:
========== Build: 0 succeeded, 0 failed, 81 up-to-date, 73 skipped ==========

There are couple of compilation issues with Visual studio compiler - I've described them in here:

https://docs.google.com/document/d/1C1Y ... b0h4ma5rer

with link to Microsoft forums.

Quite nice to have vlc somehow working now. (Quite many projects to walk through)

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: vlc-2.2.1 compile with VS2013

Postby Jean-Baptiste Kempf » 11 Jun 2017 16:19

But why?
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

TarmoPikaro
Blank Cone
Blank Cone
Posts: 34
Joined: 01 Mar 2017 22:08

Re: vlc-2.2.1 compile with VS2013

Postby TarmoPikaro » 14 Jun 2017 14:38

I guess my original intention is to get everything to be possible to debug in Visual studio, and having projects and solutions for Windows and for Android.

I have some bad experience with configure kind of tools as well as with bad 3-rd party debuggers (gdb, ddd), so would like to get rid of configure for as long as possible, and try out also Visual studio debugger with Android.
I'm still not sure how mature that one is, I was able to set up some basic application debugger, but I'm not sure about ffmpeg, and large scale projects - how well they will fit under Visual studio.

But I'm not making any money from this, so have time to experiment.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: vlc-2.2.1 compile with VS2013

Postby Jean-Baptiste Kempf » 16 Jun 2017 16:14

Then use clang/c2
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.


Return to “Development around libVLC”

Who is online

Users browsing this forum: No registered users and 4 guests