DGDecNV (linux)

DG tools for linux

Moderator: Sherman

Post Reply
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Sweet. Thank you, DJ.
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Always more things to do before getting to the meat of the matter. Had to find a way to debug a Vapoursynth filter (*.so library) in VS Code. Turns out to be not too difficult (the basic idea is the same as when using Visual Studio). You just make a launch.json that specifies VS Editor (vsedit) as the program to run. Of course the build specifies -g and -O0. Then when you launch the debug session, VS Editor opens and you open a script that loads and invokes the filter *.so. I've verified the ability to break in the invert_example filter described in a previous post and step in the debugger. OK, that's done.

Now, about porting all that Win32 thread stuff. I found this interesting solution and will try to bring it up. It should greatly simplify the port.

https://github.com/neosmart/pevents
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

DGDecodeNV ported and first frame decoded:

test.vpy:

Code: Select all

from vapoursynth import core
core.std.LoadPlugin('/home/don/Projects/dgdecodenv/libdgdecodenv.so')
video = core.dgdecodenv.DGSource('Alba.dgi')
video.set_output()
Image

:belly-laugh:

There's still boatloads to do but this is encouraging.
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

Yay!
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Linear play and random access are now working.
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

Image
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

So cute, thank you! Sweetie Pie is purring.

Keep it up and you might get DG approved. The first!

:salute: Mahmoud Al-Qudsi for pevents :salute:
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Got MPG video supported. Have to add HEVC and VC1 and then make an indexer. Then y'all can have it to play with.

@DJATOM

Have you run DGIndexNV under wine? Not so easy. Whatever, I'm gonna make a basic CLI indexer. Or maybe assign it to Britney. ;)
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

I had a difficulties with wine at first launch, but I have slightly edited sources regarding cuda emulation, rebuilt and it worked (it was in 2015). Maybe things changed as I no longer rely on wine nowadays (yet it might work without dances with drums).
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Yah, apparently support has slipped for CUDA/CUVID in wine in recent versions. No matter, we gotta have a native linux solution. Also perhaps automatic index generation if needed upon script loading. It's a whole new ball game with linux.

I find myself sitting at the linux machine more often than expected. What's not to like?

Congratulations on your DG approval. gonca and Guest 2 too. :salute:
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

Oh, thank you
Image
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Tripping kitty! Our dearly-departed dusky conure Peekoo loved to dance to Gloria Estefan. You want video? We've got Crystal video too.

We are all innocent children of the divine.
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

I'm not doing audio stuff nowadays (got gf and job, that shrunk my free time), but in the past I did few mixes of (mostly) trance-like tracks. For example, there was mixes of AD:Trance (I mixed fav tracks from those compilations into sets for own use - non-stop smooth transitions playback). Now it's just a nickname, that's what I tried to say.
Yes, you can post video if you want.
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Aha, human thinking is so...obscure.

Gotta ask admin how to put colors in ranks. Probably not easy. :cry:

Video coming!
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

If that field is sanitized from html when put into database, it will be not so easy. I'm not a phpBB expert, but it might be possible to alter rank views via hook.
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Will ask admin to look into it. He doesn't like to hack the forum code, though. Prefers extensions.
User avatar
thechaoscoder
Posts: 49
Joined: Tue Jul 14, 2020 8:34 am

DGDecNV (linux)

Post by thechaoscoder »

Rocky wrote:
Wed Jun 02, 2021 12:51 pm
Also perhaps automatic index generation if needed upon script loading.
Image

That is why I often just use ffms2 or lsmas (and now bcs of graphic card. Moose life is hard life!)
User avatar
Sherman
Posts: 576
Joined: Mon Jan 06, 2020 10:19 pm

DGDecNV (linux)

Post by Sherman »

What's your point about the graphics card? You use AMD now? :?

"ffms2 or lsmas"

We're going to bury those guys. :twisted:
User avatar
thechaoscoder
Posts: 49
Joined: Tue Jul 14, 2020 8:34 am

DGDecNV (linux)

Post by thechaoscoder »

Whoops yes "amd" was missing. :lol:
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

How could you? :cry:
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Peekoo-ji

Image
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

HEVC and VC1 video now working.

Gonna test TS, PS, MKV, and MP4 containers. Then make an indexer. Also have to support Open Disk functionality via CLI.

Whee!
User avatar
DJATOM
Posts: 176
Joined: Fri Oct 16, 2015 6:14 pm

DGDecNV (linux)

Post by DJATOM »

Cute bird :>
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

Started making an indexer for linux. I nuked the CUVID dependencies, aka decoding. Ran into a little issue that I had previously faced with DGIndexIM: the frame rate and picture size was obtained from CUVID. If CUVID is nuked then we have to parse the stream ourselves. AVC, MPG, and VC1 were a walk in the park because I had the code from DGIndexIM. But DGIndexIM doesn't support HEVC, and man, you have to parse through so much complex syntax to get to the FPS info in the VUI. Sometimes it's in the VPS but that is easy to parse. Fortunately, I found some parsing code online in python that I can translate. MPLS parsing is so much easier because offsets to important sections are provided so that you don't have to parse through all the preceding crap.

When that's done I will apply the same strategy used for DGDemux to produce a pure native linux DGIndexNV executable supporting CLI mode.

Sadly, Britney begged off as she is "very busy".
User avatar
Rocky
Posts: 3555
Joined: Fri Sep 06, 2019 12:57 pm

DGDecNV (linux)

Post by Rocky »

DJATOM wrote:
Thu Jun 03, 2021 5:09 am
Cute bird
Thank you. How many birds like rasmalai? :scratch:

Gajar halwa? Are you kidding?

Had take-out tacos from a real tacqueria for dinner. One fish (delicious creamy sauce), one steak, one pork, with chips, three different salsas, and lime slices, all for eight and a half bucks (one buck tip added to that). Washed down with brewski. Yummy! Can't code for a while as the blood is flowing to my gut.

Summer swimming season starts Monday. Morning and evening coaching five days a week in an outdoor 50-meter pool. No masks! Can life get better?
Post Reply