Video Tags

If you wish to contribute to the Ace Attorney Online Game Creation Engine open source project, or just know more about the way it is developed, this is the place.

Moderator: EN - Forum Moderators

Post Reply
User avatar
kwando1313
Posts: 7684
Joined: Tue Jul 22, 2008 6:33 pm
Gender: Male
Spoken languages: English, Français (un peu), Ancient Belkan
Location: Uminari City

Video Tags

Post by kwando1313 »

Task: Add video support to AAO

Questions:
  • Should an API of some sort be used for video support?
  • If an API is used, what API would be best?
  • What sort of interface should be used when displaying videos?
  • What sort of interface should be used to link to videos?
  • Feel free to come up with more questions that need to be answered.
Goals:
  • Enable people to link to videos (that are uploaded themselves)
  • Let people use these videos as cutscenes, such as the case opening
  • Allow videos to be part of a piece of evidence, when checked
Suggestions:
  • None so far!
Contributors:
  • kwando1313
But yes. I'll be needing help for this, because, as opposed to the other two things I want to work on, there are a lot more bigger logistics to think about here. So please. I really need help for this one.
Avatar made by Rimuu~

Image

"The Knight of the Iron Hammer, Vita, and the Steel Count, Graf Eisen. There's nothing in this world we can't destroy."
User avatar
mercurialSK
Posts: 297
Joined: Sat Jan 11, 2014 9:26 am
Spoken languages: English
Location: foolishly fooling like a foolish fool
Contact:

Re: Video Tags

Post by mercurialSK »

Should an API of some sort be used for video support?
I don't think an API would be necessary since it's just embedding the video link, or at least I can't think of any form for an API like that to take...

For the cutscenes I'd expect it to just be displaying a 256x192px video on the top screen. With evidence it'd just be another check evidence screen with the standard pause/play options...although it would be nice to have some kind of "bookmark" or something that automatically play certain timestamps. Those being either player-made or given by the trial author (like the lawyer making notes to themself or something).

It might be easiest to implement the cutscenes as a Place. The interface in the Place editor there can be an option to set it as being external video, maybe radio buttons or changing the checkbox "external background" to a dropdown selector.
I don't know enough about how the data structure is parsed...would it be possible to add an extra field? Maybe it can be done like through the expression engine instead.
If it's a place though I really don't think videos should be able to be selected in "ask player to point to an area".


Better idea: What if it's a "Video Block" like an Investigation block? This could allow for fallback frames if the video doesn't work or if someone decides to opt-out of video cutscenes. No idea how possible this is.

I think opt-out should be an option because I'm really concerned about file sizes a lot. Not sure how that selection would be implemented but it'd need to make sure it wouldn't load the video, only loading the fallback. Evidence video would need fallback in that case too.
Image
Backlog: v6 Perceive generator, Apollo, everything else (My thread)
Someday, on AAO™: Chris Tenson: Ace Attorney & A Turnabout Called Justice (pt 2)
User avatar
Enthalpy
Community Manager
Posts: 5169
Joined: Wed Jan 04, 2012 4:40 am
Gender: Male
Spoken languages: English, limited Spanish

Re: Video Tags

Post by Enthalpy »

Wouldn't the opt-out option largely defeat the point of this? You can't do 1-5's video presents very well if you let the player choose to opt out of the video, and if you need to support a non-video version anyway, why bother making a video version?
[D]isordered speech is not so much injury to the lips that give it forth, as to the disproportion and incoherence of things in themselves, so negligently expressed. ~ Ben Jonson
User avatar
mercurialSK
Posts: 297
Joined: Sat Jan 11, 2014 9:26 am
Spoken languages: English
Location: foolishly fooling like a foolish fool
Contact:

Re: Video Tags

Post by mercurialSK »

Enthalpy wrote:Wouldn't the opt-out option largely defeat the point of this? You can't do 1-5's video presents very well if you let the player choose to opt out of the video, and if you need to support a non-video version anyway, why bother making a video version?
I guess. I was thinking of that thing where they took frames of the video in some of the cases. You'd be presenting those key frames instead or something like that XD
Image
Backlog: v6 Perceive generator, Apollo, everything else (My thread)
Someday, on AAO™: Chris Tenson: Ace Attorney & A Turnabout Called Justice (pt 2)
User avatar
Unas
Admin / Site programmer
Posts: 8850
Joined: Tue Jul 10, 2007 4:43 pm
Gender: Male
Spoken languages: Français, English, Español
Contact:

Re: Video Tags

Post by Unas »

I'm against an opt-out option, because I don't want authors to need to specify alternate content in their cases. This basically requires more time, more playtesting, more frustration from players when they are blocked because one key information was missing in one of the alternatives...

On the contrary, I'd prefer the author doing only one path, and doing it well, optimizing the video correctly and so on.

Regarding the API, I would look into MediaElement.js
Basically, if it works as advertised it should allow us to develop mostly using the standard HTML5 / Javascript APIs for media, while having a Flash fallback to improve support. Because you know, video format support in browsers is still a mess out there, just like audio.


We need to define a standard video format though, so as to maximise browser support. Similar to what I did with audio : I enforce mp3 because that's the only format that almost everyone can play (thanks to Flash actually...)
Here, depending on the choice we make I'd go for a different format. If we use MediaElements.js , then we should enforce mp4/h264 as it'll be supported pretty much everywhere.
If we decide to go HTML5-only, then webM is a better choice.
Of course, the idea is that if we are using an API close to the standard one, then when some day a miracle occurs and everyone decides for native support of a given format we'll have no issue to embrace it.

Also, if MediaElements.js works as advertised, we might even use it to replace soundmanager2 for sound management at a later date.



Regarding the UI for playing :
- No UI (or rather no controls) when reading in top screen
- Standard UI (play, pause, seek) when examining court records and presenting.

Another idea of mine is : for the top screen rendering, instead of creating a new action and overlaying a player on top of everything, can we make it so that videos would be accepted wherever a gif is currently accepted ?
If you check generateGraphicElement function, you'll notice I've left the possibility open to define other types of graphic elements.
Videos is obviously a good candidate for this. Imagine using a smoothly animated video of the sea as a background for example... Anyway it would be a fair bit of work on the rendering engine, and I'd probably be the one doing most of it - but it could be a powerful feature.



Overall, I'm willing to spend a bit of time on this work (provided I do find the time of course ^^) so of course I'd be here to help.
ImageImageImage
If knowledge can create problems, it is not through ignorance that we can solve them.
Si le savoir peut créer des problèmes, ce n'est pas l'ignorance qui les résoudra. ( Isaac Asimov )
User avatar
mercurialSK
Posts: 297
Joined: Sat Jan 11, 2014 9:26 am
Spoken languages: English
Location: foolishly fooling like a foolish fool
Contact:

Re: Video Tags

Post by mercurialSK »

Unas wrote:I'm against an opt-out option, because I don't want authors to need to specify alternate content in their cases. This basically requires more time, more playtesting, more frustration from players when they are blocked because one key information was missing in one of the alternatives...

On the contrary, I'd prefer the author doing only one path, and doing it well, optimizing the video correctly and so on.
Fair enough. I think I've been misinterpreting the development focus then, like things should be geared toward agile/flexibility and anticipating future developments in the spec instead of trying to optimise XD
Image
Backlog: v6 Perceive generator, Apollo, everything else (My thread)
Someday, on AAO™: Chris Tenson: Ace Attorney & A Turnabout Called Justice (pt 2)
User avatar
Unas
Admin / Site programmer
Posts: 8850
Joined: Tue Jul 10, 2007 4:43 pm
Gender: Male
Spoken languages: Français, English, Español
Contact:

Re: Video Tags

Post by Unas »

Oh, and actually, I just noticed that MediaElement.js has support for Youtube video, meaning that it can include video from Youtube and have it behave almost like a true HTML5 video.
This is interesting as well : I believe that this will simplify file hosting a lot for trial authors, if they can upload it as an unlisted YouTube video, and link to it.
ImageImageImage
If knowledge can create problems, it is not through ignorance that we can solve them.
Si le savoir peut créer des problèmes, ce n'est pas l'ignorance qui les résoudra. ( Isaac Asimov )
User avatar
drvonkitty
Posts: 566
Joined: Sat Apr 14, 2012 12:25 am
Spoken languages: English

Re: Video Tags

Post by drvonkitty »

Would the size be correct? As in, would the youtube video be automatically shrank to fit in the 256x192 screen?
Image

Image
User avatar
kwando1313
Posts: 7684
Joined: Tue Jul 22, 2008 6:33 pm
Gender: Male
Spoken languages: English, Français (un peu), Ancient Belkan
Location: Uminari City

Re: Video Tags

Post by kwando1313 »

Looking at the docs, you can explicitly set a width/height, so we should be fine on that front.

(I'll post more later.)
Avatar made by Rimuu~

Image

"The Knight of the Iron Hammer, Vita, and the Steel Count, Graf Eisen. There's nothing in this world we can't destroy."
Post Reply