can you guys tell me some good settings to work on the nook? and what do you guys use to convert videos?
P.S. I have already seen the "Nook Color preset for Handbrake" and it said it would take over 4 hours to convert it!
EverythingNook said:
can you guys tell me some good settings to work on the nook? and what do you guys use to convert videos?
P.S. I have already seen the "Nook Color preset for Handbrake" and it said it would take over 4 hours to convert it!
Click to expand...
Click to collapse
Depending on resolution.
For low def videos on my OC kernel at 1.1Ghz, I can use moboplayer with software decoding without any issues with my AVI files.
(no need for conversion).
Not with 720p videos... They will need to be converted and using handbrake, I can achieve around real time or about 1.5x real time. (2 hr video will encode in about 1 1/2 hours) Just que them up and go to sleep.
hpark21 said:
Depending on resolution.
For low def videos on my OC kernel at 1.1Ghz, I can use moboplayer with software decoding without any issues with my AVI files.
(no need for conversion).
Not with 720p videos... They will need to be converted and using handbrake, I can achieve around real time or about 1.5x real time. (2 hr video will encode in about 1 1/2 hours) Just que them up and go to sleep.
Click to expand...
Click to collapse
thanks for the info! so avi files dont need to be converted?
Encoding time depends on the source vs output somewhat, but normally it takes anywhere from 1/2 to 1:1 the time length of the video to encode, regardless of the encoding software (I've used Handbrake, DVD Catalyst 4, Videodub(mod), and a handful of others over the years).
My solution for this is just to batch queue a bunch of files to be re-encoded and do the encoding overnight when I'm sleeping
My settings (for any encoder, but I'll put them in order for Handbrake here):
Container: MP4 file, Ipod 5G support
Picture:
1. If source > 854x480 then set Width: 854, Anamorphic: Loose, Modulus: 16.
2. If source < 854x480 and the bitrate of the original file is high, can upvert to higher res, otherwise same settings.
3. If source< 854x480 and the bitrate of the original file is low, encode at the original resolution with the same settings as 1.
Video Filters: None
Video Codec: H.264
Framerate: Generally same as source, if you have issues force to 24 (or 23.976)
Regarding 1-pass vs 2-pass encoding, see below
Quality/Bitrates:
(Here's the tricky part for quality issues)
For high-action lots of changes animation / non-animated video I prefer:
1. - average bitrate of 1500 kbps
a) 2-pass encoding if I'm concerned about overall quality (I usually batch jobs overnight when I'm sleeping). *Caveat: This will increase encoding time to ~2x versus ~1:1*
b) 1-pass encoding if I'm in a hurry, it's good enough for many videos
For things that don't require a lot of movement and have large areas of flat color, like say, South Park*:
2. - (constant) RF:20 resulting in 1/2 the file size of the bitrate used in 1.
**** Out of all the parts of encoding a video, this is your most subjective part. If you want to find a sweet spot for yourself I would suggest setting the encoder to encode a small section of a sample video and play around with these settings to find what you like best. This is what works best for me ****
Caveat: RF:0 (lossless H.264) videos will not work on your Nook Color without resorting to software decoding, which currently does not work anywhere near as well or smoothly as hardware decoding. You will most likely get video stutter, audio desync, and other issues (plus the default movies android player won't play them at all.)
Audio:
- Source: Choose your desired (language) track.
- Audio codec: AAC encoding
- Mixdown: Stereo or your choice. Dolby Pro Logic II works fine on the Nook as well.
- Samplerate: Downsample the usual 48k to 44.1. 48k with high bitrates can cause issues on NC.
- Bitrate: 128 if you want to save space, 160 otherwise.
- DRC: 0
Subtitles:
- If you don't watch foreign language (that you don't speak) videos, you don't need to be concerned with this section.
In-depth explanation of subtitling in Handbrake: https://trac.handbrake.fr/wiki/Subtitles
1. Select the correct subtitle track, if it's included in the original file.
1a. If not, find and select the subtitle file (usually a .srt) to include as a track. Make sure this SRT is actually meant for the (original) video that you are encoding, or you will have desync issues with audio / video
2. The default video player in CM7 doesn't seem to support soft subs, and many players do not (Mobo is one that does but only for selective formats). If you find one that does and care about soft (can be turned on and off) subbing, then ignore 2a.
2a. Burned In is checked on. This hard-writes the subtitles track onto the actual images so they become part of the video. This means you cannot turn them off. This might be an issue if you decide to watch the video on a larger screen, e.g., 1080p tv (jagged edges from being upverted) , but why you would want to watch a low res non-HD video encoded for the Nook on there is beyond me
Forced Only and Default are not checked.
2b. If soft subbing, don't enable Burned In. Regarding Forced Only see the Handbrake guide linked above.
3. Handbrake specific: Click on Add to make sure it's actually added as a track to your encoding.
Chapters:
If you want to be able to move around your video the way you can on a regular DVD (divided into sections that you can >> to rather than manually dragging the bar), you can enable chapter markers. This may or may not be supported on your choice of video app for Android. What this also does is force the extension (.xyz) to change from .mp4 to m4v, which (in short) is the correct nomenclature anyway but we're used to the .mp4 extension thanks to Apple.
If your player is having issues with the m4v extension, keep Chapter Markers unchecked (also make sure that Handbrake is set to name the file as .mp4).
Advanced: (Handbrake) Leave as is.
Hope this helps. Let me know if you have any questions
* - I am not in any way endorsing the copying or re-encoding of copyrighted materials, even for personal use.
EverythingNook said:
thanks for the info! so avi files dont need to be converted?
Click to expand...
Click to collapse
It depends on the AVI file. If the bitrate is too high or the resolution is above the maximum that the Nook supports (854x480), or both, your video app may attempt to play it in software decoding mode, which at the moment isn't very good.
angomy said:
Encoding time depends on the source vs output somewhat, but normally it takes anywhere from 1/2 to 1:1 the time length of the video to encode, regardless of the encoding software (I've used Handbrake, DVD Catalyst 4, Videodub(mod), and a handful of others over the years).
My solution for this is just to batch queue a bunch of files to be re-encoded and do the encoding overnight when I'm sleeping
My settings (for any encoder, but I'll put them in order for Handbrake here):
Container: MP4 file, Ipod 5G support
Picture:
1. If source > 854x480 then set Width: 854, Anamorphic: Loose, Modulus: 16.
2. If source < 854x480 and the bitrate of the original file is high, can upvert to higher res, otherwise same settings.
3. If source< 854x480 and the bitrate of the original file is low, encode at the original resolution with the same settings as 1.
Video Filters: None
Video Codec: H.264
Framerate: Generally same as source, if you have issues force to 24 (or 23.976)
Regarding 1-pass vs 2-pass encoding, see below
Quality/Bitrates:
(Here's the tricky part for quality issues)
For high-action lots of changes animation / non-animated video I prefer:
1. - average bitrate of 1500 kbps
a) 2-pass encoding if I'm concerned about overall quality (I usually batch jobs overnight when I'm sleeping)
b) 1-pass encoding if I'm in a hurry, it's good enough for many videos
For things that don't require a lot of movement and have large areas of flat color, like say, South Park*:
2. - (constant) RF:20 resulting in 1/2 the file size of the bitrate used in 1.
**** Out of all the parts of encoding a video, this is your most subjective part. If you want to find a sweet spot for yourself I would suggest setting the encoder to encode a small section of a sample video and play around with these settings to find what you like best. This is what works best for me ****
Caveat: RF:0 (lossless H.264) videos will not work on your Nook Color without resorting to software decoding, which currently does not work anywhere near as well or smoothly as hardware decoding. You will most likely get video stutter, audio desync, and other issues (plus the default movies android player won't play them at all.)
Audio:
- Source: Choose your desired (language) track.
- Audio codec: AAC encoding
- Mixdown: Stereo or your choice. Dolby Pro Logic II works fine on the Nook as well.
- Samplerate: Downsample the usual 48k to 44.1. 48k with high bitrates can cause issues on NC.
- Bitrate: 128 if you want to save space, 160 otherwise.
- DRC: 0
Subtitles:
- If you don't watch foreign language (that you don't speak) videos, you don't need to be concerned with this section.
In-depth explanation of subtitling in Handbrake: https://trac.handbrake.fr/wiki/Subtitles
1. Select the correct subtitle track, if it's included in the original file.
1a. If not, find and select the subtitle file (usually a .srt) to include as a track. Make sure this SRT is actually meant for the (original) video that you are encoding, or you will have desync issues with audio / video
2. The default video player in CM7 doesn't seem to support soft subs, neither does either of my preferred video player apps (mobo and vitalplayer neon). If you find one that does and care about soft (can be turned on and off) subbing, then ignore 2a.
2a. Burned In is checked on. This hard-writes the subtitles track onto the actual images so they become part of the video. This means you cannot turn them off. This might be an issue if you decide to watch the video on a larger screen, e.g., 1080p tv (jagged edges from being upverted) , but why you would want to watch a low res non-HD video encoded for the Nook on there is beyond me
Forced Only and Default are not checked.
2b. If soft subbing, don't enable Burned In. Regarding Forced Only see the Handbrake guide linked above.
3. Handbrake specific: Click on Add to make sure it's actually added as a track to your encoding.
Chapters:
If you want to be able to move around your video the way you can on a regular DVD (divided into sections that you can >> to rather than manually dragging the bar), you can enable chapter markers. This may or may not be supported on your choice of video app for Android. What this also does is force the extension (.xyz) to change from .mp4 to m4v, which (in short) is the correct nomenclature anyway but we're used to the .mp4 extension thanks to Apple.
If your player is having issues with the m4v extension, keep Chapter Markers unchecked (also make sure that Handbrake is set to name the file as .mp4).
Advanced: (Handbrake) Leave as is.
Hope this helps. Let me know if you have any questions
* - I am not in any way endorsing the copying or re-encoding of copyrighted materials, even for personal use.
Click to expand...
Click to collapse
wow man thanks for the amazing info, i will try these out!
To add to this, I'm watching a 1-pass, 1500 kbps average bitrate (44.1/AAC/160kbps audio) hard subbed movie at the moment and tbqh I'm not sure if it's even worth it to 2-pass encode --- if you're really anal about any artifacting you may want to 2-pass, but for me it's not worth the extra time to encode unless I'm batching up for the night. To give you an idea of the size/time ratio, one minute of encoded video with these settings is ~12MB/min.
25 min episode: 300MB
2 hour movie: 1.44GB
If this is unacceptably large, I would suggest trying RF:20 fixed bitrate (which is roughly 1/2 the size) to see if you don't mind the occasionally visible artifacting.
Also, Mobo player doesn't seem to want to expand the videos edge-to-edge, but VitalPlayer and the default movie player both do. Unless I'm doing something wrong with Mobo, which is a possibility since I use VitalPlayer Neon the most. <-- never mind, I had clicked something in Mobo that prevented it from doing so initially, but they actually do display edge-to-edge by default.
angomy said:
It depends on the AVI file. If the bitrate is too high or the resolution is above the maximum that the Nook supports (854x480), or both, your video app may attempt to play it in software decoding mode, which at the moment isn't very good.
Click to expand...
Click to collapse
Using Moboplayer (free) software decoding, I have no issue watching 704x400 AVI(xvid with mp3 audio). No skipped frames. Total bitrate of 1.3mbits (including audio I believe).
Like I mentioned, I am using OC kernel at 1.1GHz though.
i used tool to converter my videos to mp4, h.264, 854*480 for playing on nook color, all are ok. i can play in full screen with high quality.
i also tried handbrake, and i think it is difficult to use, which takes me a lot of time to import my video.
Related
Is there an app which can play AVI files?
i think i will bump this as this is a most have and a down side to owning a hero !
Forward the notion.
I'm with you on this. Not being able to play .sci is a real pain.
I've also put some .mp4 files on which haven't played either for some reason. Does anyone know if there is a specific format for video on the hero? Is there a specific converter anyone is using ?
Cheers,
HP
Using something like Handbrake to convert your videos should work. If it has a setting for Apple iPods/iPhones just use that.
Or, it should support the following:
- MP4 container format
- MPEG-4 AVC (also known as h.264) video, max [email protected] (try main profile, try disabling CABAC and B-frames for more reliability)
- AAC (AAC-LC) audio, 48khz suggested sample rate
- Keep overall bitrate low, try from 800kbps to 2000kbps
like most mobile devices, ofcourse there is a limit on the codecs supported, and what levels and settings in the codec that work.
In the current state, all / most clips that are _above_ the native resolution won't play at all. And as a quick rule: H264 @ level 2.1 will work, maybe some 3.0 stuff also works, but I don't know.
Basicly, make sure the MP4's you have are iPhone compatible but 480x320 or lower resolution and the Hero will play them fine.
Any video converter tool (handbrake / Megui / Mediacoder / commercial tools) wil work if you give them the iPhone preset.
About playing AVI files, nobody has written anything yet. Don't really know why people didn't jump on the bandwagon for this kinda of thing. Mostly some sort of ffmpeg-based player will appear quickly on a platform. Maybe it's the java development thing.
Anyway, convert your video's to iphone compatibility at the moment and they should play fine.
Keep in mind that AVI is an older, inferior container format to MP4, and the MPEG-4 ASP (DivX) codec often used with AVI is inferior to MPEG-4 AVC (h.264) usually used with MP4. So you aren't being ripped off in terms of quality or technology. They just neglected to support the older format. Hopefully apps can bridge the gap in future (apps with native libraries that is, not the virtual machine). Given the lower system requirements, I'd say that it would probably be capable of playing an AVI/DivX file encoded up to 640x480x30fps (my old Nokia with a 369MHz CPU can come close).
For best results, however, use handbrake to convert from the original, or from your existing AVIs, to a nice ipod compatible, 480xsomething pixel MP4. Go direct from the original to MP4 (without AVI in between) for even better quality.
however, still after converting that video lags all the time (closed all apps either)
Did you update to the latest firmware? The original shipped firmware has a known issue that the video 'stutters' every second or so for a bit.
ah oaky, this might be the problem... waiting for donut released officially by htc for hero
After a lot of experimenting I've settled on Mediacoder as encoder: free, fast, from everything to everything. The only big disadventage is that it isn't very easy to use (altough the Web UI is ok).
These are the settings I use. I've chosen them because they produce the smallest file/quality compromise while retaining smooth plaback. Also you don't need a special player to view it, WM/the HTC player can do it (altough that might only be since the diamond2 since I use gen.Y's D2 rom)
Container: MP4
Video codec: H.264 (x.264 encoder)
Bitrate: 256 Kbps 2-Pass (target bitrate/average bitrate will produce same sized file faster altough with bit less video quality, since I usually only transcode short music clips etc. and have a fast computer I use 2-pass, but if you want to encode 6 hours of movies you might want to select average bitrate)
Resolution: 640x480
Profile: Baseline - Level 3.0
Audio codec: AAC (Nero encoder)
Bitrate: 96 Kbps
Profile: LC-AAC (make sure you use this, most players can't play HE-AAC yet, e.g. Apple can only do it since iTunes v9, iPhone OS 3.1 and the iPods of fall 2009)
As I said: smooth playback, small filesize and good quality...
Sometimes I have a file which doesn't play really smooth, but lowering the bitrate to 200 Kbps usually fixes that. That is also usually the bitrate I choose for video if I have a really large file and/or want to be sure the file (e.g. film) plays smooth. In my experience lowering the resolution helps a bit on smooth playback, but doesn't really help much. The only reason I use a lower resolution is because I like [email protected] Kbps better than [email protected] Kbps (200 Kbps differs a bit from case to case). Remember: the bitrate gets "divided" over all the pixels so more pixels => less bits per pixel. The only reason to use a higher resolution is because it's sharper but you don't usually see that on such a small screen and low bitrate.
Another thing: I really recommend using x.264 as an encoder rather than the nVidia CUDA encoder. Altough it is waaay faster it also produces worse quality results, especially at low bitrates. So if you have the time: use x.264. If you have the power and space: use the CUDA H.264 encoder.
What do you use?
try handbrake... its free
Pacman15 said:
try handbrake... its free
Click to expand...
Click to collapse
Well, that doesn't sound very good to me...
AVI: AVI is a rough beast. It is obsolete. It does not support modern container features like chapters, muxed-in subtitles, variable framerate video, or out of order frame display. Furthermore, HandBrake's AVI muxer is vanilla AVI 1.0 that doesn't even support large files. The code has not been actively maintained since 2005. Keeping it in the library while implementing new features means a very convoluted data pipeline, full of conditionals that make the code more difficult to read and maintain, and make output harder to predict. As such, it is now gone. It is not coming back, and good riddance.
OGG/OGM: HandBrake's OGM muxer is just as out of date. It hasn't been actively maintained in years either, and it too lacks support for HandBrake's best features. ... This one is not coming back either. ...
XviD: HandBrake, these days, is almost entirely about H.264 video,... Meanwhile, XviD's build system causes grief...
Click to expand...
Click to collapse
Ok, avi I can understand. Anyone who combines AVI with H.264 is just being stupid. But OGM? Xvid? Sound to me more like: we were to lazy to update our requirements and now they're out of date and awfull so we're just removing them...
Removing Vorbis and Xvid from your encoder... Whut?
As you may know, the Nook color has PowerVR SGX530 Graphics chip, which is also available on Droid 2 and Droid X.
This chip is pretty good when it comes to medium 3D performance and video playback. It can play videos quite nicely, but only the formats that it knows. Other formats will need to be played using software, which will give you medicore level playback.
If you have an MP4 files (which are encoded with H.264 Base level encoding), those files will play with hardware decoding great. However, if you have other video content (episodes, both in AVI/XVid or MKV/H.264 format), Nook will play them badly with 3rd party software (rock player, vplayer, etc).
Thats where FFMPEG could help a lot, if you're using Linux, all you need to do is install ffmpeg and run the following command:
Code:
ffmpeg -y -threads 8 -i myvideo.avi -b 800k -bt 1000k -vcodec libx264 -vpre default -vpre baseline -acodec libfaac -ac 2 -ar 44100 -ab 128k mynewvideo.mp4
the "myvideo.avi" is your original AVI file, and "mynewvideo.mp4" is the new MP4 file which could be played nicely on the Nook Color. Please note: if your video is bigger then 854x480, then you need to add the -s XxY where XxY is the width:height of the video (example: 640x352). If your video needs a new aspect ratio, you can use the -aspect parameter (example: -aspect 16:9)
If you're using a mac, then handbrake is your friend, as other tools which are based on ffmpeg.
On Windows you can either install FFMPEG for Windows, or you can use An application called "Any Video converter", and simply select your original file name, Select X264 as video codec, and convert. The output file should be played well.
No matter what conversion software you use, make sure that the H.264 profile that you use is set to base-level (or "base"). Anything higher cannot be played by the nook without frame skipping.
If you want to test if your video can be played with hardware acceleration, upload your video to your Nook (or to the Micro SD card), open any file manager and click on the mp4 file. Try to play the video with the "Movies" built in app. If the app will recognize your video, it will play it without any issues or frame skipping.
Good luck
Hetz
HandBrake can be used on Windows also
I read there are aspect ratio issues with the built in player. But I also read that even in mp4 base other video players can't take advantage of the hardware playback accel (proprietary drivers). Is that correct?
Handbrake doesn't work for windows?
triggrhaapi said:
Handbrake doesn't work for windows?
Click to expand...
Click to collapse
Handbrake works great on Windows. Encoded a few this week for the Nook and ran like buttah.
Out of curiosity, why not just use RockPlayer. I'm yet to get an NC so I may be missing something.
It runs kind of choppy on video files encoded with anything other H.264/MPEG4 and the audio seems to get out of sync quickly
Mikey1022 said:
HandBrake can be used on Windows also
Click to expand...
Click to collapse
And linux.
the latest version of rock player seems to have a lot better handle on audio sync...
we can never watch the avi videos without converting ?
Maybe
yemin88 said:
we can never watch the avi videos without converting ?
Click to expand...
Click to collapse
It really depends how the official Froyo update (coming in January) will improve performance.
rock player works fine... the problem is that you cant have above a 480p video. the reason is its not the audio thats lagging its the video studdering and thats whats causing the lagg
The topic title should read "how to watch videos on your nook if you run Linux"
You added all the settings you need for it, but not for the other operating systems lol You can run the file through any of these programs, (speaking Mac/Win) but just because you encode it with H.264 doesn't mean its going to play smoothly. If your source file is 1080p, this obviously isn't going to work.
My source file is:
H.264
Deinterlaced
720p
30fps
VBR 1 pass
AAC. 192kbps 48kHz, Stereo
So far Im at a video file @ 1024x576 at 15fps (tried to pull the Consistent Quality slider to 100%, but didn't see much differance) thats had the smoothest playback.
Now Im pretty much brand new to video editing and making, are there any settings I could be useing to make this file more smooth using Handbreak....or even more so In Adobe Premiere?
Im basically trying to see what the highest quality the Nook can take. Not to mention a continuous video of my coral reef while Im at work sitting next to me on my NC would b kinda epic
I use DropFolders. It uses HandBrake & you set it up with a watch folder & a destination folder. All you do is drop a video in the watch folder & it converts the file & puts it in your destination folder. You set up the HandBrake arguements in Drop Folders. Works like a charm.
Cheers,
kev
MrOtsKrad said:
The topic title should read "how to watch videos on your nook if you run Linux"
You added all the settings you need for it, but not for the other operating systems lol You can run the file through any of these programs, (speaking Mac/Win) but just because you encode it with H.264 doesn't mean its going to play smoothly. If your source file is 1080p, this obviously isn't going to work.
My source file is:
H.264
Deinterlaced
720p
30fps
VBR 1 pass
AAC. 192kbps 48kHz, Stereo
So far Im at a video file @ 1024x576 at 15fps (tried to pull the Consistent Quality slider to 100%, but didn't see much differance) thats had the smoothest playback.
Now Im pretty much brand new to video editing and making, are there any settings I could be useing to make this file more smooth using Handbreak....or even more so In Adobe Premiere?
Im basically trying to see what the highest quality the Nook can take. Not to mention a continuous video of my coral reef while Im at work sitting next to me on my NC would b kinda epic
Click to expand...
Click to collapse
According to the published specs for the NC, the default app will not play video above 854x480. If you want to use hardware decoding through the default app, you'll need to scale that down from 1024.
I have several videos encoded using one of the latest nightly builds of handbrake for NC, and with the constant quality set at 20, playback is flawless. You can use the "Apple Universal" setting to get the required baseline profile for MP4 and then adjust the video size as you like.
You can also use the "High Profile" and change some settings and per HERE. I was, however, able to set the max width above 720, unlike the third poster.
Innnnnnteresting! Thank you! I will give this a shot and see what I come up with
I posted a handbrake preset here. It works well for me.
Hi why can you try rockplayer for play video like divx
Sent from my LogicPD Zoom2 using XDA App
triggrhaapi said:
Handbrake doesn't work for windows?
Click to expand...
Click to collapse
Don't worry, I found an easy way to convert videos for nook color, read the article "Nook Color Video Converter Review – easy play any video on Nook Color"
from
Code:
icamcorder.net
Got a Nook Color over the weekend, and video looks great using the Handbrake preset posted here... I'm using Autonooter, and the built in Gallery app to play it. However, I'm curious, if I decided to try out Honeycomb, will other video player apps use hardware decoding with files encoded with the Handbrake preset, or is it limited to the stock Nook app? Thanks!
Hi!
I have been struggling with this topic for a few days now. Read most of the threads written here on this too. I know about the limitation of hardware accelleration, and understand it. I have created presets for Mediacoder (+CUDA) perfectly working so that I can quickly convert what I want to a video format being very well played by on nook with hw accelleration.
I am aware of the fact that videos encoded with xvid/divx can only be played with software decoders. It's been reported here such videos are pretty well handled by players like Rock-,Mobo-,YXplayer and so on; I assume nook's CPU has enough power not to have issues with ~620x350 XVid encoded video. Well, mine seems to have one.
I tried out a couple of different .avi's I have. Just one specific example:
an episode of some TV show:
Video: 310 MB, 1037 Kbps, 25.0 fps, 624*352 (16:9), XVID = XVID Mpeg-4
Audio: 38 MB, 130 Kbps, 48000 Hz, 2 channels, 0x55 = MPEG Layer-3
This one is being played fine even on my old PPC Axim 30 (Intel XScale PXA270 at 624MHzwith TCPMP), but with no means on the nook. Test results:
- RockPlayer -> slide show
- YXPlayer -> slide show
- YXPlayer Neon -> slide show
- MoboPlayer - almost the one. The only one which plays completely flawless video, but the sound is out of sync, about 1 sec behind the video
What am I missing/doing wrong? Such a file should be a walk in the park for a Cortex A8 at 800MHz, shoudlnt' it? Is it about me using a rooted stock nook? Would froyo did the trick?
Regards,
Maciej
So you're on stock? Have you overclocked your setup? If so do you have governor set to Interactive and the Min. Cpu set to atleast 800mhz?
Matchay said:
25.0 fps
Click to expand...
Click to collapse
Found your problem. I find that the nook can only do 24fps or 29.999999fps. You must be trying to play a European program. Re-encode in Handbrake and change the "Framerate" drop down box to the NTSC Video setting.
While you are at it, in Handbrake and all, you might as well re-encode using x264 to take advantage of the Nook's hardware decoding...
poofyhairguy said:
Found your problem. I find that the nook can only do 24fps or 29.999999fps.
Click to expand...
Click to collapse
Generally? Or in terms of software divx/xvid playback? I re-encoded the file to H.264 WITHOUT changing the framerate and it works smoothly. For the hardware accel the framerate is not an issue.
I wonder what the problem could be: the sound isn't stuttering, the video is smooth, they are simply not synchronized. It cant be due to lack of power,can it?
Regards,
Maciej
The NC supports hardware decoding of MPEG4 (i.e. Divx/Xvid) Simple Profile but it has to be in a MP4 rather than AVI container. Unfortunately MP3 audio is incompatible with MP4 containers so the typical AVI needs to have at least the audio re-encoded for hardware playback on the NC.
It's not unusual to have poorly muxed AVI files where the audio and video end up out of sync when re-encoded. I'm not sure about Mediacoder but Handbrake does not easily allow adjusting the audio offset to compensate for that. You might try aviDemux (open source) as it does allow adjustment of audio offset. Unfortunately, it's trial and error to figure out the proper offset. If your Divx file is MPEG4 SP then you could just set up aviDemux to copy the video, re-encode the audio to AAC and mux in an MP4 container with the appropriate audio offset.
Matchay said:
Generally? Or in terms of software divx/xvid playback?
Click to expand...
Click to collapse
For me just software divx playback. My 25 fps files just never play well.
For x264 you can do any framerate up to 39 fps I think, as long as the bitrate is low enough. For me in Handbrake the magic number is a Constant quality of 22
@razmajazz
Sorry for the confusion. I have no issues with any x264 re-encoded file, as mentioned in my first post - my Mediacoder preset does its job perfectly.
I mean MoboPlayer plays the original Xvid video and audio very smoothly, they are simply out of sync, which doesn't look like a CPU power issue to me. As poofyhairguy said, it must be about the framerate and some incompability.
Re-encoding doesn't bother me, I only wanted to avoid it if possible for lower quality divx/xvid films. And the MoboPlayer seemed to be only an inch far away from the right solution.
I will do some testing in the afternoon.
Thanks,
Maciej
Are You playing videos on stock, rooted Nooks?
Or Froyo/CM7?
rooted stock
Try summer player, I tried many movies with that player and all seem to work well
Sent from my HTC Glacier using XDA App
angel7000 said:
Try summer player
Click to expand...
Click to collapse
Interestingly, Summer player plays all my files in fast forward mode
DSP drivers/Hardware video decoding is critical for smooth playback.
I dont know why the CPU cannot do it fast enough. (software decoding)
Thats why I'm on nookie froyo
No sync issues or anything with normal res videos from the interweb, no recoding needed, any decent MPEG4 player plays smooth.
Matchay said:
@razmajazz
Sorry for the confusion. I have no issues with any x264 re-encoded file, as mentioned in my first post - my Mediacoder preset does its job perfectly.
I mean MoboPlayer plays the original Xvid video and audio very smoothly, they are simply out of sync, which doesn't look like a CPU power issue to me.
Click to expand...
Click to collapse
Indeed I was confused. I thought both the original and re-encoded files had audio sync issues. As long as the video stream is MPEG4 SP, you may still just want to copy the video, re-encode the audio to AAC and mux in a MP4 container. It's pretty fast since you only have to convert the audio, you don't lose quality from re-encoding video and it plays back with hardware decoding on the NC.
Success!
Yesterday I ran nookie froyo from SD. MoboPlayer plays all files perfectly, no out of sync! It was that simple...
Thank you all for your suggestions!
Cheers,
Maciej
What are the best settings to use in Handbrake for the Nexus 7?
I want to encode movies while keeping good quality but as the device has limited space I dont want to store any information that the device cant show.
Thanks,
Mento
I'm still a rookie on the forum so I can't post links, but do a Google search for "android video compatibility" and you will see the stock android video capabilities in the first link, address starts with "developer.android."
You'll see that it basically can handle good hi def in the form of mp4 and mkv. That being said, you can use less space by using avi files that are marginally smaller, but you will need a media player app like MX player, there are plenty of free ones that can get the hardware involved in the processing so you get great video.
Hope this helps.
Sent from my Nexus 7 using XDA Premium HD app
I've been looking for the same information since the Nexus 7 was released. I haven't been able to find a good resource that says what options in the H.264 spec are supported. However, I was able to play back some movies which I encoded for an iPod Touch using Handbrake. These videos were encoded basically using the iPhone profile with some minor changes. So, H.264, high-profile, using b-frames (I think 3).
I've been using DicePlayer, mostly because I couldn't get stable playback using MxPlayer or the stock player on my Touchpad. It seems like the Nexus 7 stock player is capable of playing those files back, but I still use Dice.
There are two presets in Handbrake under Devices, Android Mid and Android High.
ffmpeg settings
It's a shame there's no standard. Each Android device supports different features. Using ffmpeg If you want maximum compatibility you have to encode with baseline slow. However, the Nexus 7 seems to have excellent H.264 support.
Here's what I've successfully used to downconvert 1920x1080i video - it does crop the edges a bit but I think it's probably within the overscan area anyway. (Yeah, I know, LCDs don't actually have overscan.)
High quality, remove a logo, 24fps 'film' source :
ffmpeg -y -i <INPUTVIDEONAME> -r 24000/1001 -crf 20 -filter:v yadif,removelogo=<LOGOFILENAME>,scale=-1:800,crop=1280:800 -sws_flags spline -preset placebo -profile:v high -aq 90 -ac 2 <OUTPUTVIDEONAME>.mp4
Lower quality (crf=20 vs 30), no logo removal:
ffmpeg -y -i <INPUTVIDEONAME> -r 24000/1001 -crf 30 -filter:v yadif,scale=-1:800,crop=1280:800 -sws_flags spline -preset placebo -profile:v high -aq 90 -ac 2 <OUTPUTVIDEONAME>.mp4
Lower quality, 29.97fps video source:
ffmpeg -y -i <INPUTVIDEONAME> -r 30000/1001 -crf 30 -filter:v yadif,scale=-1:800,crop=1280:800 -sws_flags spline -preset placebo -profile:v high -aq 90 -ac 2 <OUTPUTVIDEONAME>.mp4
This works with CURRENT builds of ffmpeg as of this post. Earlier releases may not work.
Best bet is just choose the iPhone 4 preset and up the width to 1280 (depending on what you're encoding). If the source material is < 1280 pixels wide (SD content, etc) then just accept the default resolution the preset chooses (DVD content will play back at the correct aspect ratio). If the source material is = or > 1280 pixels wide, the preset will default to 960 pixels - change that to 1280 (for > 1280 wide) and it'll look fantastic.
Most likely you'll need to drop the audio down to simple 2-channel stereo, the recommendation is to use the AAC ffmpeg encoder at 160 Kbps or 128 Kbps if you want to save a few bytes (the size difference between a 128 Kbps and 160 Kbps audio stream will be fairly minimal; the 160 Kbps will offer better response so might as well just use that).
Or, if the material you want to encode already has AAC audio streams, just pass the audio through - that saves HandBrake the time and trouble of re-encoding already lossy audio and you end up with the exact audio stream taken from the source material but this only works if the source material HAS an AAC audio stream to begin with. There's an option to pass-thru MP3 audio streams as well.
Since the Nexus 7 isn't really designed to provide AC3/DTS capability for audio (5.1 or 7.1 soundtracks), there's no reason to encode or pass-thru such huge streams: encode it down to 128 or 160 Kbps AAC 2-channel stereo audio streams with the ffmpeg encoder.
MP4 or M4V is fine for the extension, either one will allow embedded captions/subtitles, or use MKV, doesn't really matter.
And the recommended media player for the Nexus 7 (at least my recommendation) is MX Player, there's nothing that can touch it.
These tips should get you some great looking videos. You can even make some minor adjustments like increasing the Reference frames to 5 and get slightly smaller video files in the long run as well.
But the basic iPhone 4 preset and adjusting the resolution to 1280 wide will give great results - you can of course just leave the resolution at the default of 960 pixels wide and it'll upscale beautifully on the Nexus 7 and you'll save a big chunk of space on the resulting encodes, like 25-35% in the end file size.
Hope this helps...
NOTE: HandBrake just updated again the other day, they're at 0.9.8 now so, if you're using an older build, it's a good idea to update to the most current one (the 0.9.7 release had some bugs they quashed pretty fast).
br0adband said:
Best bet is just choose the iPhone 4 preset and up the width to 1280 (depending on what you're encoding). If the source material is < 1280 pixels wide (SD content, etc) then just accept the default resolution the preset chooses (DVD content will play back at the correct aspect ratio). If the source material is = or > 1280 pixels wide, the preset will default to 960 pixels - change that to 1280 (for > 1280 wide) and it'll look fantastic.
Click to expand...
Click to collapse
Let me just add one general warning. The iPhone 4 preset, along with the Android-high profile, use b-frames and other optional features in the H.264 that aren't necessarily supported on all Android devices. The Nexus 7 appears to deal with them fine, but as a general rule the iPhone 4 preset is not going to work on all Android devices.
Correct, and I was about to launch a very long post earlier but decided it's not worth the time or trouble.
Android devices with high resolution screens and made in the last ~18 months or so can handle the iPhone 4 preset without issues. My alteration to the preset is to increase the overall compression (using 5 Reference frames instead of the default 3 for the iPhone 4 preset) and also to adjust the Adaptive B-Frames to Optimal, that's about it on the Advanced tab.
I don't use the Android High preset because it requires me to alter more of the possible options than the iPhone 4 preset does (easier to adjust 2-3 options than 12).
Rest assured, the quad core Nexus 7 with the latest hardware decoder can handle any x264/h.264 options at this point in time.
This thread and this subforum ain't about all Android devices, it's about the Nexus 7 and everything posted so far is relevant to that device.
br0adband said:
Correct, and I was about to launch a very long post earlier but decided it's not worth the time or trouble.
Android devices with high resolution screens and made in the last ~18 months or so can handle the iPhone 4 preset without issues. My alteration to the preset is to increase the overall compression (using 5 Reference frames instead of the default 3 for the iPhone 4 preset) and also to adjust the Adaptive B-Frames to Optimal, that's about it on the Advanced tab.
I don't use the Android High preset because it requires me to alter more of the possible options than the iPhone 4 preset does (easier to adjust 2-3 options than 12).
Rest assured, the quad core Nexus 7 with the latest hardware decoder can handle any x264/h.264 options at this point in time.
This thread and this subforum ain't about all Android devices, it's about the Nexus 7 and everything posted so far is relevant to that device.
Click to expand...
Click to collapse
Tegra 3 doesn't like hi10p.
Hi10p only proves beneficial for one specific thing: anime or cartoon-type video content, and in the big picture it's pretty much irrelevant. It has a small community behind it - again, specifically anime fans - and that's fine but, in reality it's not a big enough "draw" (no pun intended) to bother with.
8-bit encoding with x264 looks just fine on the Nexus 7 and has no issues at all.
As side from the benefits in anime, the file size savings is really nice.
Handbrake
Regular Normal profile
H.264 for video
1000 Video Bitrate kbps (If you're starting with HD this bitrate is sufficient. about a gig per 2 hour movie)
Audio AAC (faac)
Gain 10
DRC 2.0
You can either setup handbrake to name it an mp4 instead of m4v or manually rename it to mp4.
You will be able to play with stock player.
I have never bothered to encode video files since I always owned devices that support mSD. But ever since I recieved this Nexus 7 as a gift ( HATE the no msd slot!!!!!) I thought it'd be a good idea to start encoding video files. I used handbrake (latest version), converted a 720p 1 hour game of thrones tv show episode, and I'm not impressed! I changed the resolution to 960X720, bit rate 1000, AAC FAAC stereo 128, Refrence Frame 5, Adaptive B-frame optimal, and all I ended up with was a 10mb difference in size (442mb to 433mb)
Hemidroids said:
Handbrake
Regular Normal profile
H.264 for video
1000 Video Bitrate kbps (If you're starting with HD this bitrate is sufficient. about a gig per 2 hour movie)
Audio AAC (faac)
Gain 10
DRC 2.0
You can either setup handbrake to name it an mp4 instead of m4v or manually rename it to mp4.
You will be able to play with stock player.
Click to expand...
Click to collapse
Pretty much this, though I recommend changing horizontal pixels to 1280 and scale vertical accordingly. You can even scale down video bit rate on this device decently (if you're tight on space) because the high dpi helps hide compression artifacts.
Sent from my paranoid Nexus 7.
zolo111 said:
I have never bothered to encode video files since I always owned devices that support mSD. But ever since I recieved this Nexus 7 as a gift ( HATE the no msd slot!!!!!) I thought it'd be a good idea to start encoding video files. I used handbrake (latest version), converted a 720p 1 hour game of thrones tv show episode, and I'm not impressed! I changed the resolution to 960X720, bit rate 1000, AAC FAAC stereo 128, Refrence Frame 5, Adaptive B-frame optimal, and all I ended up with was a 10mb difference in size (442mb to 433mb)
Click to expand...
Click to collapse
The original file was probably already H.264 video.
Primary reasons to encode/transcode:
1) Reduce bitrate and resolution of 1080p Blu-Ray content
2) Change format of source files encoded in a way the device doesn't like
3) Use a more efficient codec than the source format while preserving the resolution (DVD encodes - H.264 is vastly superior to MPEG-2 so achieves major size reductions. Typically a 4.7GB DVD can be reduced to around 1GB of AVC+AAC at very high quality settings.)
On many devices, H.264 had better hardware acceleration than MPEG-4 ASP (aka DivX/Xvid) and most Android devices have far better support for the MPEG-4 container format than AVI - so it would be beneficial to transcode torrents that were ASP+MP3 AVIs.
However, many HD torrents are now AVC+AC3 MKVs. AC3 can be a problem, so can MKV, so usually when I do these transcodes I just transcode the audio using ffmpeg. Something like:
Code:
ffmpeg -i <infile.mkv> -acodec libfaac -ab 160k -ac 2 -vcodec copy <outfile.mp4>
Replaces AC-3 surround audio with 2-channel 160 kilobit AAC audio, and remuxes into an MPEG-4 stream.
Traditionally, 1 hour torrent releases were 700MB (1 CD) ASP+MP3 in an AVI container - However the scene seems to be moving from constant-size AVI encoding to constant-quality H.264+AAC MPEG-4 releases for standard definition content. 443MB for 1 hour sounds like one of these releases, which likely don't need any transcoding at all.
>ffmpeg -i <infile.mkv> -acodec libfaac -ab 160k -ac 2 -vcodec copy <outfile.mp4>
Has ffmpeg updated its AAC codec to be anything decent? I'm still using NeroAACenc.
Another ffmpeg issue is that last I checked (a year ago), it can mangle channel mapping for 5.1 audio, assuming you want 6ch AAC rather than stereo. I use ffmpeg for (some) demux, and straight x264 for video. There are better audio enc tools.
MPEG4-ASP isn't relevant any more, except to the few still stuck on obsolete playback hardware.
>the scene seems to be moving from constant-size AVI encoding to constant-quality H.264+AAC MPEG-4 releases for standard definition content.
I don't see that. Yes, peeps are moving to smaller-sized AVC encodes, but they're all still using 2-pass/fixed bitrate rather than 1-pass/fixed CRF.
BTW, for those with Win32 box and are interested in recoding/shrinking their vids, do try my x264 script below. Its forte is commandline efficiency with menu simplicity. It uses one-pass constant quality (CRF). You can vary the CRF.
http://forum.xda-developers.com/showthread.php?t=1102922
---------- Post added at 05:01 PM ---------- Previous post was at 04:35 PM ----------
>I used handbrake (latest version), converted a 720p 1 hour game of thrones tv show episode, and I'm not impressed! I changed the resolution to 960X720, bit rate 1000, AAC FAAC stereo 128, Refrence Frame 5, Adaptive B-frame optimal, and all I ended up with was a 10mb difference in size (442mb to 433mb)
The 720p 1-hr vid is already using a low bitrate to achieve the 442MB size. By using an arbitrary bitrate--why 1000, because it's an even number?--you're both increasing the bitrate and decreasing the quality, by re-encoding it again and at lower resolution.
BTW, most HDTV vids are 16:9, which at 960 is 960x540.
Videos can have wildly varying bitrate requirements, so it's advisable to use constant quality, and let the encoder determine the bitrate. HB uses a default of CRF 20, which is overly generous. Low-bitrate encodes such as the above has a CRF-equivalent of 24-27 (higher CRF = softer detail = lower bitrate), so don't bother recoding those. For biggies, suggest the x264 default of CRF 23 to start out.
AAC codec: Might be why if you use -acodec aac you get all sorts of warnings that you should really use libfaac instead - seems fine to me. That said my ears aren't particularly picky. NeroAACenc isn't really an option for me on a Linux box, and the above works fine for my use case.
Channel mapping: It seems to be downmixing fine, and as you see in my example, I told it to downmix to two channels. I haven't tested this in thorough detail, I need to find a good example of something with only rear channel audio to make sure the rear channels are getting mixed in. I don't encode to more than stereo AAC as I have nothing at all that can do anything useful with surround AAC - And there is no point in sending surround AAC to a Nexus 7 currently.
The "scene" using CBR 2-pass - I don't think they are any more for some newer releases - I'm seeing too much file size variance. It's not like the old days where files would be exactly 350MB or 700MB within a few kilobytes - I'm seeing up to 100MB of variation or more between releases even of the same show from the same group. That kinda screams CRF to me. Note that this is primarily TV shows from eztv - the movie "scene" may still be doing it oldskool.
Edit: Also, I find it highly unlikely that the person above actually had a 720p 1-hour episode. I've never seen a 720p TV release that small. Typically if it's around 440MB for a one hour video, that's a sign that it's a standard definition release.
NeroAACEnc is available for linux: ftp://ftp6.nero.com/tools/NeroDigitalAudio.zip
Re: Channel mapping - Yes, downmix works fine. The problem occurs when encoding to 6ch AAC, since AAC and AC3 (and DTS) all use different channel mapping, and ffmpeg doesn't remap them properly. You can try encoding the 5.1 AC3 test clip attached below. Each channel is verbalized out loud so you will know if it's correctly mapped.
Yes, it doesn't normally matter for tablets. But it would if you plug said tablet into a HDTV w/ hi-fi setup. OK, not the N7.
>The "scene" using CBR 2-pass
Admittedly I don't watch many vids nowaday, so you may be right. I usually do a mediainfo scan on stuff I watch to check their encoding params, and all the vids I see use 2-pass.
>unlikely that the person above actually had a 720p 1-hour episode. I've never seen a 720p TV release that small.
I've seen the Avengers 720p at 1.2GB, which is really low BR considering it's 2:22min long with lots of action scenes. Even at CRF 23 and just stereo AAC, my own 720p rip comes out to 1.8GB. It's typical for noobs to aim for a small fixed size and yet keeping the res high.
The result looks poor at close examination, but for casual viewing, it's actually fairly passable. At really low bitrates, the details are just softer rather than being pixellated as with ASP. For fast-motion scenes, it's hard to discern the detail loss. It's a testament to x264 encode quality.
Thanks Entropy512. You're right, I thought it'd be possible to further reduce the size since I wouldn't notice the picture quality difference on the 7" screen while I reduce the size by 20-25%. The scene already release a fantastic copy, size wise.
anyone had any luck encoding a video at 1080p 60fps for the nexus 7, and in that case what codecs/settings?