Jump to content

Photo

60 fps video using SIDE 2


173 replies to this topic

#151 Gunstar OFFLINE  

Gunstar

    Gunstar

  • 8,251 posts
  • Location:Kellyville, Oklahoma

Posted Wed Mar 22, 2017 1:27 PM

And finally, I've made a video to demonstrate the vividness of what is actually shown on the TV.

(I'd forgotten to turn the volume up a bit louder however the tune sounds good too!)

It should be extra vivid on my PAL 1200XL with SV 2.1 upgrade then (the only computer version with the enhanced chroma circuit), since EVERYTHING is much more vivid on it than on my other Atari! And no color bleeding or over saturation, almost as clean as VGA color.


Edited by Gunstar, Wed Mar 22, 2017 1:29 PM.


#152 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Wed Mar 22, 2017 4:53 PM

I g

 

I guess I need to go get another CF card for videos then. Thanks! and looking forward to the MyIDE patch versions!

Well I tried to edit the newer movie player.   Videos play (in Altirra) but I can't seem to find notes on MyIDE II registers.  Changes aren't disabling the cartridge.

 

I guess that doesn't matter as long as video does play.



#153 phaeron OFFLINE  

phaeron

    River Patroller

  • Topic Starter
  • 2,166 posts
  • Location:USA

Posted Wed Mar 22, 2017 11:18 PM

Well I tried to edit the newer movie player.   Videos play (in Altirra) but I can't seem to find notes on MyIDE II registers.  Changes aren't disabling the cartridge.

 

MyIDE II register info attached.

Attached Files



#154 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Thu Mar 23, 2017 8:55 AM

 

MyIDE II register info attached.

Thanks!



#155 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Thu Mar 23, 2017 6:03 PM

Hopefully this works on real hardware.

 

.ZIP contains two files.

 

- mplaymii.xex, the player for MyIDE II.   Sorry about the naming.  Hard to create meaningful names with the 8.3 convention.

- myideii.patch, the diff file

Attached Files



#156 Kyle22 ONLINE  

Kyle22

    River Patroller

  • 2,805 posts
  • Location:McKees Rocks (Pittsburgh), PA

Posted Thu Mar 23, 2017 8:21 PM

Has anyone got this to work with Incognito?



#157 Wrathchild ONLINE  

Wrathchild

    Stargunner

  • 1,782 posts
  • Location:Reading, UK.

Posted Fri Mar 24, 2017 2:09 AM

Has anyone got this to work with Incognito?

 

Post 134



#158 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Fri Mar 24, 2017 11:23 AM

 

Thanks Wrathchild! Scripts were enough for me to move forward, but I'll carefully read the instructions you posted as well.

 

As it appeared, I made much more mistakes:

  • When configuring external encoders in virtual dub, I forgot to surround command line parameters with double quotes
  • I used unstable DirectShow input plugin to import MP4 video. So I decided to switch to ffmpeg plugin for virtualdub, but it didn't work on win XP

After that I successfully converted video and played it under Altirra. The converted file soon will be available here (it's PAL video): https://1drv.ms/f/s!...ep1YlMp3VD_SOOg

 

Then I decided test it on real hardware. I have SIDE version 1 and two CF cards: Kingston Elite Pro 1GB (the blue one) and Alan - Bradley Industrial Standard 128MB card (yes, it's from the PLC manufacturer). To move data to I used HDDRawCopy on Windows.

 

Immediately after running the MOVPLAY.XEX on Atari I receive message "IDE Command error 5000 00000000". However, after few restarts of Atari it played! The video is superb, but the audio.. disappointing. During whole movie I can hear loud sound similar to shooting gun making it unpleasant to listen to. Check the recording I made during playback with my phone - it's also on Onedrive (or soon will be)

 

So I questions are:

  • what can be done with "IDE command error"?
  • is there any chance two remove that loud "gun-like" noise from audio?

 

@Phaeron

I think I have some information to add to grzybson's issues.

This is a bit involved but here goes.

I have 2 CF cards.  One works in all situations. The other has varying but repeatable results

I have an NTSC 800XL with Rambo XL 256, an internal MyIDE, and a 4-in-1 OS.

I modified Phaeron's later movplay program to work with my internal MyIDE. With the troublesome CF card and stock OS I get IDE Command Error 5000 E000000000 (sorry, I can't remember how many zeros).  With QMEG+ OS 4.04 I get 5000 80808080... With MyIDE 4.2I and Omniview OSes the movie plays but I get loud, constant buzzing.  This sound is not interrupted when I press START and the movie begins again.

It's been a few years since I've had a MyIDE equipped 800XL.  I thought both my CF cards had worked.  I decided to try the older player. I re-patched movplay60n-smm (I think that's the name) and tried that.

With all 4 OSes I get Read Error 5000 E000000000.   That's with the troublesome CF card.   With the "good" CF card there are no problems at all.

I've rewritten data to the that CF card several times.  Changed the video 2 or 3 times.  I can always repeat the same error conditions.  Yet if I mount the CF card in a media reader and point Altirra to it it works every time and with the correct sound.

-SteveS

 

p.s.  The working card is a 2GB SanDisk Ultra II 2.0 (2004).  The trouble card a 1GB Dane Electric (model and manufacture date unknown).  The were both purchased as new old stock.  I believe about 10 years ago.  I'm pretty sure each has had less than 25 full erase cycles.


Edited by a8isa1, Fri Mar 24, 2017 11:31 AM.


#159 phaeron OFFLINE  

phaeron

    River Patroller

  • Topic Starter
  • 2,166 posts
  • Location:USA

Posted Fri Mar 24, 2017 10:28 PM

I get IDE Command Error 5000 E000000000 (sorry, I can't remember how many zeros).

 

This is the most interesting case. For read errors during playback, we could chalk that up to the movie player's unreasonable timing expectations on the CF card, but IDE Command Error means that it didn't get through initialization.

 

The last version of the player that I wrote has two commands that can trigger this error, one being the command to enable PIO 6 transfer timing and the other to switch to 8-bit transfers. Can you tell by modifying the program which might be the one that's failing? This is an odd failure because the first byte doesn't have bit 0 set to indicate an error, which it should -- the two bytes displayed are the ATA status and error bytes, respectively.

 

Also, is your internal MyIDE at $D5xx or $D1xx? $D5xx should be about the same as an external interface, but $D1xx has the issue that the stock OS's PBI scan hits the unfortunately placed ATA command register unless you add extra decoding logic.



#160 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Fri Mar 24, 2017 11:34 PM

 

This is the most interesting case. For read errors during playback, we could chalk that up to the movie player's unreasonable timing expectations on the CF card, but IDE Command Error means that it didn't get through initialization.

 

The last version of the player that I wrote has two commands that can trigger this error, one being the command to enable PIO 6 transfer timing and the other to switch to 8-bit transfers. Can you tell by modifying the program which might be the one that's failing? This is an odd failure because the first byte doesn't have bit 0 set to indicate an error, which it should -- the two bytes displayed are the ATA status and error bytes, respectively.

 

Also, is your internal MyIDE at $D5xx or $D1xx? $D5xx should be about the same as an external interface, but $D1xx has the issue that the stock OS's PBI scan hits the unfortunately placed ATA command register unless you add extra decoding logic.

I'll try to test Tomorrow.

 

Internal MyIDE is connected to $D1xx.   I'm only sure that MyIDE OS doesn't have PBI code.  I think  QMEG doesn't as well.   I don't know about Omniview.

 

-SteveS



#161 Kyle22 ONLINE  

Kyle22

    River Patroller

  • 2,805 posts
  • Location:McKees Rocks (Pittsburgh), PA

Posted Sat Mar 25, 2017 7:32 PM

Nope, no PBI in any Omni OS.

#162 grzybson OFFLINE  

grzybson

    Combat Commando

  • 9 posts

Posted Sun Mar 26, 2017 1:10 PM

 

This is the most interesting case. For read errors during playback, we could chalk that up to the movie player's unreasonable timing expectations on the CF card, but IDE Command Error means that it didn't get through initialization.

 

Phaeron, I'm having very similar issue, except that I get "IDE Command error 5000 00000000" immediately after player launch.

(however, very rarely - one in 20-30 tries it runs).



#163 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Sun Mar 26, 2017 5:50 PM

@Phaeron

 

I added debugging lines.  Strangely, the video plays almost every time, and with all 4 OSes. [edit]However, the audio is always that loud buzzing sound.

 

Once in a while with only QMEG OS I get IDE Command error 8080 80808080

 

It happens after entering the section setting up PIO 6 and after calling IdeDoCmd just once.

 

-SteveS

 

p.s. The "good CF card" always plays fine, still.


Edited by a8isa1, Sun Mar 26, 2017 6:14 PM.


#164 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Thu Mar 30, 2017 7:02 PM

Last May when I looked at this I'd found the Dragon's Lair video with a difference sequence.

Also at that time I'd experiment with that different form of colour matching.

Here are links to the NTSC and PAL versions I've recreated today.

I've targeted the AuthenticNTSC and OlivierPAL palettes (if replaying in Altirra) and so hopefully they'll look on on real h/w too.

Oh sorry.   I didn't see that you had provided files.

 

I fired one up in Altirra.  Hard to tell but I'm wondering if the original capture is from the PC version of the game with EGA graphics and not a video disc version.

 

I'm about to copy the NTSC version to a CF card to try on my 800XL.

 

-SteveS

 

p.s. It plays great on the 800XL.  Sound is better than I've ever managed in one of these conversions.


Edited by a8isa1, Thu Mar 30, 2017 7:38 PM.


#165 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Fri Mar 31, 2017 10:23 PM

A new video conversion including my first PAL conversion.   Not sure I did it correctly.  It came out "widescreen".

 

MNOTHING

 

I discovered Altirra's colors appear more vivid with these movies if PAL artifacting (standard) is enabled whether in PAL or NTSC mode.

The colors are the same as those I see via my scan converter and they are the colors (more or less) of the source videos.

 

I'm using Altirra-2.90-test29 ATM.



#166 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Sat Apr 1, 2017 4:23 PM

A new video conversion including my first PAL conversion.   Not sure I did it correctly.  It came out "widescreen".

 

MNOTHING

 

I discovered Altirra's colors appear more vivid with these movies if PAL artifacting (standard) is enabled whether in PAL or NTSC mode.

The colors are the same as those I see via my scan converter and they are the colors (more or less) of the source videos.

 

I'm using Altirra-2.90-test29 ATM.

Files updated.  I think the visuals and audio are noticibly better.


Edited by a8isa1, Sat Apr 1, 2017 4:23 PM.


#167 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Mon Apr 3, 2017 4:23 PM

I've had the chance to try this on my 800's Incognito and have to say that it looks better on a TV than through Altirra (which is still good) so would recommend that to anyone!

 

Some pics attached too. That isn't glare on the tank shot but as they get activated.

 

For playback I used the attached MovPlay, rebuilt with the altered IDE_BASE (I run it from an disk mounted as D1 on SIO2SD).

 

The card I have is a Jessops branded 256MB but reads as Hitachi V3.3.0.0 under Fdisk on the A8.

 

Enjoy, Mark

Wrathchild, after trying several other video conversions and seeing just how much color Phaeron's format can yield I had to give this one a try.

I'm happy with the colors.  I wish there is something I could do about the "swimming pixels".  I don't know if they are some random aspect, frame to frame, of dithering.

Cycles

-SteveS



#168 phaeron OFFLINE  

phaeron

    River Patroller

  • Topic Starter
  • 2,166 posts
  • Location:USA

Posted Mon Apr 3, 2017 10:40 PM

The swimming pixels are due to the diffusion dithering that the video encoder does with chroma. The Atari only has binary saturation -- color or no color -- so the encoder aggressively dithers chroma to provide intermediate saturation levels. Regular diffusion dithering is 2D (horizontal+vertical), but to take advantage of the high frame rate the encoder uses 3D dithering (horizontal+vertical+temporal). It's highly biased toward 30Hz flickering, which is why you see the swimming.

 

The dither matrix is set by this somewhat obscure code in the encoder:

float ierror = (fi - itab[out]) * (1.0f / 80.0f);
float qerror = (fq - qtab[out]) * (1.0f / 80.0f);

errfi[y][x] = ierror * 32;
errfq[y][x] = qerror * 32;

pcerr[x + 3] += ierror * 7;
pcerr[x + 4] += ierror * 5;
ncerr[83 - x] += ierror * 3;
ncerr[82 - x] += ierror * 5;
ncerr[81 - x] += ierror * 7;
ncerr[80 - x] += ierror * 5;
ncerr[79 - x] += ierror * 3;
ocerr[x + 0] += ierror * 1;
ocerr[x + 1] += ierror * 3;
ocerr[x + 2] += ierror * 5;
ocerr[x + 3] += ierror * 3;
ocerr[x + 4] += ierror * 1;

pserr[x + 3] += qerror * 7;
pserr[x + 4] += qerror * 5;
nserr[83 - x] += qerror * 3;
nserr[82 - x] += qerror * 5;
nserr[81 - x] += qerror * 7;
nserr[80 - x] += qerror * 5;
nserr[79 - x] += qerror * 3;
oserr[x + 0] += qerror * 1;
oserr[x + 1] += qerror * 3;
oserr[x + 2] += qerror * 5;
oserr[x + 3] += qerror * 3;
oserr[x + 4] += qerror * 1;

What it does is compute the error from what it wanted at a pixel to what it was able to encode, and then spreads out the error to the surrounding pixels. 32/80 of the error goes to the same pixel in the next frame, while 48/80 gets spread to the surrounding pixels in the same frame like this:

|      <X> 7  5 | / 80
| 3  5  7  5  3 |
| 1  3  5  3  1 |

Changing the dither values might help with the artifacts. The other option is to core the saturation, by forcing it to 0 once it drops to a very low level.



#169 Wrathchild ONLINE  

Wrathchild

    Stargunner

  • 1,782 posts
  • Location:Reading, UK.

Posted Tue Apr 4, 2017 3:37 AM

HI Steve, you'll see in the sources that there are compile flags, ERROR_CORRECTION and PALETTE_MAPPING.

In the versions I've posted, the mapping is enabled and the correction disabled, hence the lesser swimming.

As phaeron's version is effectively mapping off and correction on, you could build a version with both off and see how that comes out.



#170 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Tue Apr 4, 2017 8:23 AM


Phaeron (and Wrathchild) thanks for the information.  I can't say I really understand it.  I don't have Windows developer tools or even a working Windows machine (ATM) to make use of this information anyway.

 

Also, what I am seeing manifests itself on the real Atari though it's masked by the CRTs natural properties, so it's not as pronounced.   The only video path I have that can display your wonderful movie format in all its color glory is my "scan converter". I wonder if it is contributing to what I am seeing.

 

-SteveS


Edited by a8isa1, Tue Apr 4, 2017 8:24 AM.


#171 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Tue Apr 4, 2017 11:11 AM

ZQ1

 

LOL.

 

I don't know how this got typed.

 

I don't have delete privileges.

 

Sorry


Edited by a8isa1, Tue Apr 4, 2017 11:27 AM.


#172 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,278 posts

Posted Tue Apr 4, 2017 11:33 AM

Phaeron (and Wrathchild) thanks for the information.  I can't say I really understand it.  I don't have Windows developer tools or even a working Windows machine (ATM) to make use of this information anyway.

 

Also, what I am seeing manifests itself on the real Atari though it's masked by the CRTs natural properties, so it's not as pronounced.   The only video path I have that can display your wonderful movie format in all its color glory is my "scan converter". I wonder if it is contributing to what I am seeing.

 

-SteveS

And, I realized too late to go back and edit the above.

 

I thought the encoder discussed was part of Altirra.   Only later I came to the understanding it's part of the tools to assemble a video.



#173 w1k OFFLINE  

w1k

    Stargunner

  • 1,640 posts
  • Location:martin, slovakia

Posted Thu Apr 27, 2017 7:39 AM

nice tutorial

 



#174 Stephen OFFLINE  

Stephen

    Quadrunner

  • 6,086 posts
  • A8 Gear Head
  • Location:Akron, Ohio

Posted Thu Apr 27, 2017 11:11 AM

Thanks to Steve (A8IsA1) and Nir, I was finally able to view this on my PAL 130XE.  Tip - if you are using SIDE2 along with an Ultimate 1MB, you'll need to turn OFF the PBI & HDD stuff.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users