Homebrew Homebrew app [Release] Video player for 3DS

T0biasCZe

Well-Known Member
Newcomer
Joined
Oct 4, 2019
Messages
69
Trophies
0
Age
16
XP
373
Country
Czech Republic
And could you add the function to disable the scaling/moving of the video

Btw, is bug that the 3DS sometimes freezes when Its put in sleep mode (Closer) And then opened ?
 
  • Like
Reactions: Core_2_Extreme

Core_2_Extreme

Well-Known Member
OP
Newcomer
Joined
Feb 11, 2019
Messages
94
Trophies
0
Age
19
XP
618
Country
Japan
This is a great addition to 3DS homebrew!
Thanks for your hard work.

Would you consider adding a sample video to the CIA?
I nominate this one:
If I add sample video, I'll use Big Buck Bunny. (for copyright reasons)

And could you add the function to disable the scaling/moving of the video

Btw, is bug that the 3DS sometimes freezes when Its put in sleep mode (Closer) And then opened ?
ok

Does it happen any video?
Or is there any rule?(like it happens more frequently when playing 480p than 240p)
 
Last edited by Core_2_Extreme,

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
147
Trophies
0
Age
33
Location
California
XP
1,043
Country
United States
The 10:3 mode almost works for 800x240 videos, but it looks like the screen coordinates are off. When I enter full screen, 2/3 of the video is on the upper screen, and 1/3 is on the lower screen. There's a large black bar on the top of the upper screen, so it looks like the whole video was moved down by ~80px or so.

If I don't use full screen, I can use the dpad to move the whole image onto the top screen, but then the bottom screen won't turn off, of course.

In theory, you might be able to detect the video type without needing a manual 10:3 mode toggle button in the UI. When you encode a video with x264, you can set the SAR of the clip with the --sar switch. For 800x240, you would use --sar 1:2 (800 * 1 / 2 = 400, 400 / 240 = 1.667 = correct DAR for playback). If you can find the SAR flag in the video, you could potentially enable 10:3 mode silently for videos that need it. MKV also has a similar aspect ratio flag that you could use for auto detection, and I think MP4 does, too. Checking the SAR of the H.264 stream would allow you to use one detection method for all containers, though.
 
  • Like
Reactions: Core_2_Extreme

Core_2_Extreme

Well-Known Member
OP
Newcomer
Joined
Feb 11, 2019
Messages
94
Trophies
0
Age
19
XP
618
Country
Japan
The 10:3 mode almost works for 800x240 videos, but it looks like the screen coordinates are off. When I enter full screen, 2/3 of the video is on the upper screen, and 1/3 is on the lower screen. There's a large black bar on the top of the upper screen, so it looks like the whole video was moved down by ~80px or so.
I just fixed it.
here are developer version : 3dsx cia

In theory, you might be able to detect the video type without needing a manual 10:3 mode toggle button in the UI. When you encode a video with x264, you can set the SAR of the clip with the --sar switch. For 800x240, you would use --sar 1:2 (800 * 1 / 2 = 400, 400 / 240 = 1.667 = correct DAR for playback). If you can find the SAR flag in the video, you could potentially enable 10:3 mode silently for videos that need it. MKV also has a similar aspect ratio flag that you could use for auto detection, and I think MP4 does, too. Checking the SAR of the H.264 stream would allow you to use one detection method for all containers, though.
ok I'll do it if possible thank you for your information.
 
  • Like
Reactions: AleronIves

T0biasCZe

Well-Known Member
Newcomer
Joined
Oct 4, 2019
Messages
69
Trophies
0
Age
16
XP
373
Country
Czech Republic
In theory, you might be able to detect the video type without needing a manual 10:3 mode toggle button in the UI. When you encode a video with x264, you can set the SAR of the clip with the --sar switch. For 800x240, you would use --sar 1:2 (800 * 1 / 2 = 400, 400 / 240 = 1.667 = correct DAR for playback). If you can find the SAR flag in the video, you could potentially enable 10:3 mode silently for videos that need it. MKV also has a similar aspect ratio flag that you could use for auto detection, and I think MP4 does, too. Checking the SAR of the H.264 stream would allow you to use one detection method for all containers, though.

why not just always enable the correct stretch when it detects 800x240p resolution ?
there arent any videos with native 30:9 aspect ratio... meaning all can be stretched to the correct 15x9 aspect ratio
 
Last edited by T0biasCZe,
  • Like
Reactions: Core_2_Extreme

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
147
Trophies
0
Age
33
Location
California
XP
1,043
Country
United States
why not just always enable the correct stretch when it detects 800x240p resolution ?
That would be a simple solution, yes. Detecting the SAR would allow support for any arbitrary anamorphic video, though. For instance, you could get the correct DAR when playing a DVD source, since all DVDs are anamorphic. Whether you could get full speed playback of 480p H.262 is another question, though. It just depends how fancy Core 2 Extreme wants to be.
 
  • Like
Reactions: Core_2_Extreme

T0biasCZe

Well-Known Member
Newcomer
Joined
Oct 4, 2019
Messages
69
Trophies
0
Age
16
XP
373
Country
Czech Republic
problem with sar is that it wouldnt work unless you manually specify it in the conversion

and most DVD rips dont have the SAR (unless you rip it yourself, and copy all the metadata)
 
  • Like
Reactions: Core_2_Extreme

T0biasCZe

Well-Known Member
Newcomer
Joined
Oct 4, 2019
Messages
69
Trophies
0
Age
16
XP
373
Country
Czech Republic
Here Is QR code for the newest version:
1.3.2.png

And also the newest dev version: dev.png
 
  • Like
Reactions: Core_2_Extreme

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
147
Trophies
0
Age
33
Location
California
XP
1,043
Country
United States
Scene DVD rips use square pixels, so the SAR is 1:1 and not needed. You're going to have to encode all your 3DS videos yourself, anyway, since you aren't going to find 240p video sources anywhere, and the 3DS is too slow to play 480p H.264.
 
Last edited by AleronIves,
  • Like
Reactions: Core_2_Extreme

Core_2_Extreme

Well-Known Member
OP
Newcomer
Joined
Feb 11, 2019
Messages
94
Trophies
0
Age
19
XP
618
Country
Japan
v1.3.3 release

'aspect ratio 10:3 mode' has been changed to 'correct aspect ratio mode' (follow sar value(*0))
Color conversion speed has been improved
Simplified Chinese(简体中文) translation has been added (by LITTOMA)
Italian(italiano) translation has been added (by dixy52-beep)
Other minor changes

*0 if video size is 800x240 and no sar value is set, it autmatically apply sar 1:2

https://github.com/Core-2-Extreme/Video_player_for_3DS/releases/tag/v1.3.3
 

P34ch

Active Member
Newcomer
Joined
Apr 11, 2019
Messages
29
Trophies
0
Age
45
XP
57
Country
United Kingdom
This is brilliant so far, thank you Core 2. Wouldn’t it be simpler to just make a stretch to fullscreen mode (800x240) rather than aspect ratios etc. I can only encode most of mine at 720x480, which then leaves a big black border all around the screen.
Either a fullscreen stretch, or could you make a way to remove the top border in windowed mode, which would allow a manual fullscreen zoom which suits everyone?
Many thanks for all of your hard work already, I would love to see this player perfected.
 
  • Like
Reactions: Core_2_Extreme

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
147
Trophies
0
Age
33
Location
California
XP
1,043
Country
United States
Wouldn’t it be simpler to just make a stretch to fullscreen mode (800x240) rather than aspect ratios etc. I can only encode most of mine at 720x480, which then leaves a big black border all around the screen.
If 720x480 is your only resolution option, then you need better video processing software. You can encode any video to any other arbitrary resolution, although encoding higher than the source resolution is a waste of space.

I ran several tests with the new build, and it's much improved over 1.3.2. :) 800x240 H.264 looks great, although it doesn't run at full speed for me in software mode. I also tried hardware mode, and the entire 3DS crashes. I guess it doesn't like my encoding settings. :lol:

I also tried 600x240 anamorphic (actually 608x240... I forgot to check if 600 was mod16...) and it fills the screen as expected, so it looks like the aspect ratio code is working well. Even 600x240 doesn't decode at full speed though. Is it possible the new colourspace conversion code caused a speed decrease since 1.3.2? I'll try again with lower x264 settings, I guess.

I also tried 800x240 XviD, and that runs at full speed for me.
 
  • Like
Reactions: Core_2_Extreme

P34ch

Active Member
Newcomer
Joined
Apr 11, 2019
Messages
29
Trophies
0
Age
45
XP
57
Country
United Kingdom
AleronIves, which encoder software would you recommend?
Btw I have encoded a few at 800x480, and they play full speed/full screen with HW decoding.
I just think it would be nice to be able to run any video fullscreen, which would save resizing, cropping etc when encoding for example whole tv series sets from odd sized video sources.
As I said either a fullscreen mode which automatically runs all videos fullscreen, or to get rid of the top bar in windowed mode to allow any size the person prefers, without the icons/black bar getting in the way.
The point being, most people just want to put their vids onto the 3ds and just simply watch them. Only a few will learn all about encoding and encoders,trimming, resizing and aspect ratios just to get them to play. It’s all about a simple option for all to just enjoy with minimal fuss.
 
Last edited by P34ch,
  • Like
Reactions: Core_2_Extreme

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
147
Trophies
0
Age
33
Location
California
XP
1,043
Country
United States
Simple options include HandBrake and Avidemux. If you want more control, you can use Avisynth and x264 CLI.

As I said either a fullscreen mode which automatically runs all videos fullscreen, or to get rid of the top bar in windowed mode to allow any size the person prefers, without the icons/black bar getting in the way.
The problem is, how do you make a video fill the screen when the 3DS uses a unique aspect ratio? 16:9 videos won't fill a 15:9 screen, nor will any movies or old 4:3 TV shows. If you want your videos to fill the screen, you have to figure out how you want to process them for the 3DS. Since the 3DS is so slow and has such low resolution, you have to encode most videos yourself, anyway, so you might as well do it right.
 
  • Like
Reactions: Core_2_Extreme

P34ch

Active Member
Newcomer
Joined
Apr 11, 2019
Messages
29
Trophies
0
Age
45
XP
57
Country
United Kingdom
Thanks for the suggestions AleronIves, I’ve tried these myself with not great results, even at 240p Handbrake encoded videos struggled on the 3ds. I see what you’re saying about the fullscreen thing though, the 3ds resolution is pretty awkward to get around.
I‘ve tried encoding at 800x240 and they looked all weird, when I turned on correct aspect ratio it was just a long, narrow vertical stripped video in the centre of the screen.
I would still like to see an option to get rid of the black bar and icons in windowed mode though, or a manual zoom option. Then we could just manually set any video so that it looks about right (older tv boxsets pre-encoded with low/odd resolutions for example).
 
  • Like
Reactions: Core_2_Extreme
General chit-chat
Help Users
  • No one is chatting at the moment.
    The Real Jdbye @ The Real Jdbye: 🍆 +3