Jump to content
The Dark Mod Forums

[2.06] Videos without ROQ


stgatilov
 Share

Recommended Posts

Thats brilliant, man. A much more versatile system, will make it a lot easier to design briefings now. Even if you can create a sort of stop motion intro, using images and text, with the current "bookpage" system in place, I reckon even those would be preferable as videos, as you can control the timing of the stills and use sound on several layers.

 

A question, though: could this system be used inside missions, as video cutscenes? Maybe applied to GUIs?

Link to comment
Share on other sites

For anyone wanting to see a working example, Goldwell I would say is the most likely candidate for either changing the vids in his current FM's or using the new formats in his next FM.

 

+1, compare how ROQ destroys the quality of SoN I intro vs. the YT .mp4 version:

 

 

 

  • Like 1
Link to comment
Share on other sites

For anyone wanting to see a working example, Goldwell I would say is the most likely candidate for either changing the vids in his current FM's or using the new formats in his next FM.

 

Yes that assumption is correct, I am currently in the process of updating all of my FMs, I am going through and doing bug fixes and updating the briefing videos from ROQ to MP4 too. However I wasn't planning to reveal anything about that until the project was finished.

 

I haven't had enough time to tweak or setup anything yet though, so i'm probably not the best source of information or example at the moment.

  • Like 2
Link to comment
Share on other sites

A question, though: could this system be used inside missions, as video cutscenes? Maybe applied to GUIs?

Probably :laugh:

 

Theoretically, a video is still just a material which can be put on objects. The concept did not change in this sense. So you can probably do with new videos whatever you could do with ROQ, even texture 3d objects with them. If you use embedded sound, then it gets a bit more complicated and fragile.

But I did not test anything except replacing the single-mission briefing cutscenes. If you test some non-standard scenario, please write here about it. I would like to hear both positive and negative outcomes. In the positive case, I'll know what is possible, and in the negative case, there is a chance to fix it in future.

 

The video cutscene inside mission does not sound any different from normal briefing cutscene. But since there is no stock GUI code for in-mission cutscenes, you will have to set up GUI yourself.

Applying videos to GUI elements is exactly how things work internally. You can specify a material to any GUI element, and you can use e.g. a looping video for a button. But I think having too much videos is not a good idea.

BTW, there is a FM "Score to Settle", where two looping ROQ videos are being played on same screen with GUI text around. And it plays well with FFmpeg playback.

 

Note that in 2.06 all videos (including ROQ) are played with the same FFmpeg code. The old ROQ-playing code is no longer used (but can be enabled by cvar).

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...

Attention to everyone who has started creating new videos or intends to do so before 2.07.

 

FFmpeg is a huge library with tons of codecs and formats, and the actual set of supported formats greatly depends on how it was configured.

It is hard to keep this set constant over time, which can potentially result in breaking TDM cutscenes regularly in some distant future.

To avoid breaking maps, there is a plan to restrict the set of supported formats/codecs to the bare minimum.

This way the chance of breaking existing video files should become much lower.

 

Unfortunately, the unrestricted FFmpeg is already released with TDM 2.06, so the restricted version will be used starting from 2.07.

It means that if you now add FFmpeg cutscenes in wrong format to your missions, then they won't play in 2.07.

This is why your attention is important here :unsure:

 

After some internal discussion, we decided to start with this set of codecs and containers:

containers:
    avi
    m4v
    mp4
    roq

video codecs:
    h264
    mpeg4
    roq

audio codecs:
    mp3
    aac

As you see, it provides two options in each domain (in addition to legacy roq).

One option is usually the most widespread currently (i.e. mp4+h264+aac), and the other option is something which was popular in the past (avi, mpeg4, mp3).

 

BTW, all the above-mentioned codecs (except roq) are patent-encumbered. Our conclusion is that it is not a problem for TDM given that the game is free and will remain free for eternity.

There exist completely free codecs and formats (ogg+theora+vorbis and webm+vp8+opus), but it seems that they are so unpopular that it is hard to find a converter which could create such videos.

 

 

 

The plan is to come to final conclusion about the set of codecs/formats in the nearest future.

After that I'll probably release a tool (e.g. ffplay.exe) which could be used to check that a video is going to be playable in uncoming TDM 2.07.

 

If you already have done some work for compressing videos for TDM 2.06, please check which container, video codec and audio codec you used.

Any comments on the situation are welcome :)

Link to comment
Share on other sites

As the list of stuff to support for backwards-compatibility reasons will never shrink, i would recommend to start as small as possible with only roq, mp4, h264, aac.

Also the restricted FFmpeg should be released as a "quick fix" for 2.06. As no assets change, it would be a rather small one and would prevent any problems when 2.07 gets released around xmas or later.

Edited by Abusimplea
  • Like 1
Link to comment
Share on other sites

Also the restricted FFmpeg should be released as a "quick fix" for 2.06. As no assets change, it would be a rather small one and would prevent any problems when 2.07 gets released around xmas or later.

I'm afraid such hotfix needs more work than you think.

Doing it for one change which neither affects player nor affects existing missions is overkill.

  • Like 1
Link to comment
Share on other sites

I have stripped FFmpeg libraries in the current developer's trunk.

You can find the rules about which videos are supported and which are not on the main wiki page about FFmpeg cinematics.

 

If you create a video right now, you can check it for compatibility with future 2.07 version using ffmpeg test build.

The build consists of two files, which are simply TDM binaries of the current trunk.

You can copy them to your 2.06 installation and run them from there just as you usually run TDM.

 

With ffmpeg test build, you can use testVideo command to check that your video plays well.

I have described how to use testVideo command in "Quick test" section.

 

Note that using the ffpmeg test build for anything except starting some map and calling testVideo command is not supported and not recommended.

Do not play or dmap with it :D

 

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Found a minor bug- The wiki states:

 

It is no longer necessary to explicitly specify the duration of a video file, as it was for the ROQ files.

 

Goldwell and I have both tested this and its necessary to specify a time in milliseconds in order to bring the objectives screen up after the video is done.

Link to comment
Share on other sites

Found a minor bug- The wiki states:

It is no longer necessary to explicitly specify the duration of a video file, as it was for the ROQ files.

Goldwell and I have both tested this and its necessary to specify a time in milliseconds in order to bring the objectives screen up after the video is done.

This is strange.

 

I added the following code to stock mainmenu_briefing_video.gui:

// #4535: this event fires up only for non-legacy (i.e. FFmpeg-based) videos
onNamedEvent CinematicEnd
{
  // Hide video
  set "HideBriefingVideo::notime" "0";
  resetTime "HideBriefingVideo" 0;
}

Unless something got broken, it should do an action equivalent to end of video duration.

 

If you have custom gui file, then you have to intercept this event yourself.

Also, all sort of debriefings, campaigns, and SDK-controlled videos are not modified to intercept this event.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recent Status Updates

    • duzenko

      Please, can we finally group the missions by year in the game menu?
      · 6 replies
    • duzenko

      I vaguely recall someone recently complained about two-sided materials (curtains?) not getting lighting from both sides
      I just found a piece of code that's supposed to do just that
      Where was that discussed? (@nbohr1more?)
      · 9 replies
    • Xolvix

      I still play classic Doom (albeit with user-made mods and maps rather than the original campaign) on a regular basis. A game from the early 90's which has still got a healthy following in 2022. Pretty amazing.
      · 3 replies
    • Nort

      I'm beginning to understand why people who aren't into social clubbing "don't last long" on this project, and why it's so full of holes. When moderators are siding with bullies, by closing down threads that they derail, then I start to wonder if I should support the platform to begin with.
      I'm sure that the core development is solid, but when you're constantly tone policed and bullied, and moderators are playing into it too, then the project will just drive away talent, and replace it with socialites instead. ...and without talent, you only end up with a small skeleton crew trying to do everything themselves.
      ...so Dragofer and Airship Ballet, and all you other socialites, you win. From now on I'll just keep to myself. You'll never be able to do my work, but at least you'll be happy together, and that's what matters to you.
       
      Update
      Actually, I have to revise my statement:
      I actually messaged greebo - the top dog, I gather - about nbohr1more's outburst of insanity below, and since I haven't even heard back from him, I just have to assume that there's not a single core programmer here, who's not backing nbohr's threats. ...and that's bad.
      ...so if you're a newbie reading this, or an honest soul like ZergRush, then just slowly back out of these forums, run, and don't look back. This is nothing more than a cult posing as a game development project, using Thief and IDTech4 to sucker hopefuls in, to do work for them, while trying to cajole them into something going on behind the scenes, which apparently - according to nbohr - is something that should be hidden from the state. These people aren't programmers - they don't even understand things like how to fix the simplest bugs. All they have, is an engine, and an IP, and some sort of fascist social cult. There was some other project I saw being made in the Unreal Engine. Try joining that project. ...or start a project of your own. Anything but this asylum.
      Hopefully that was "divisive" enough for a final post, because at this point I really want people to leave this place. This project is, on a management level, just awful garbage, run by garbage people, apparently from the top down, and I'm just glad that they have a garbage place to stay, together, and hopefully forever.
      Nort
      · 15 replies
    • The Black Arrow  »  Araneidae

      A spidey! I love spideys 🕷️
      · 0 replies
×
×
  • Create New...