Dimensione: 21019
Commento:
|
Dimensione: 21307
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 113: | Linea 113: |
Questo nuovo script in python (03/2007) contiene tutte le funzionalità sottocitate. Per il suo corretto funzionamento sono richesti ffmpeg e [apt://gpac]. Senza il pacchetto gpac la codifica fallirà esattamente al termine, vanificando così ore di lavoro. Di seguito viene proposta una "schermata": | Questo nuovo script in python (03/2007) contiene tutte le funzionalità sottocitate. Per il suo corretto funzionamento sono richesti ffmpeg e [apt://gpac gpac]. Senza il pacchetto gpac la codifica fallirà esattamente al termine, vanificando così ore di lavoro. Di seguito viene proposta una "schermata": |
Linea 193: | Linea 193: |
Salvarlo, ad esempio, nella cartella Home con il nome '''ipodvidenc''', quindi nel terminale, eseguire:Save as ipodvidenc in your present working directory (it will be moved, anyway). Back in the terminal, run: | Salvarlo, ad esempio, nella cartella Home con il nome '''ipodvidenc''', quindi nel terminale, eseguire: |
Linea 212: | Linea 212: |
If you would prefer to use a gui to encode video, then you can use thinliquidfilm. thinliquidfilm is a gui frontend for ffmpeg, specifically designed to encode ipod compatible videos. You can find it [[http://thinliquidfilm.org|here]]. It requires ffmpeg (compiled as set out above) and pyqt (which is installed as part of the '''kubuntu-desktop''' package). There are other non-essential dependencies for uploading to an ipod (see the [[iPodVideoTransferring|Guide to Transferring Video to the iPod Video]] for more details) and mplayer is required to preview encoded videos before encoding). thinliquidfilm will: * Batch process any number of files; * Display detailed information about source video files; * Change output settings for one or many files; * Save default settings for future sessions; * Configure output quality settings; * Choose between mpeg4 and h264 as output codec; * Choose between 320 and 640 output video width, while maintaining aspect ratio; * Choose between 1 or 2 pass encoding; * Preview encoded videos before encoding; * Progress bar to show encoding progress; * Uses ffmpeg as the encoding engine; * Upload encoded files to your ipod directly; * Set file information for upload to your ipod; * Add files to existing or new video playlists on your ipod; * Add pre-encoded videos to the transfer list; * Add files for encoding via the included servicemenu. |
Se si preferisce usare una gui per la codifica video, è possibile usare thinliquidfilm. thinliquidfilm è una interfaccia grafica per ffmpeg, specificamente concepita per la codifica di video in formato compatibile con iPod Video compatibile. È possibile scaricarla [http://thinliquidfilm.org qui]. È richiesto ffmpeg compilato come precedentemente descritto e pyqt che viene installato come parte del pacchetto '''kubuntu-desktop'''. Vi sono altre dipendenze non essenzialiper il caricamento sull'iPodThere are other non-essential dependencies for uploading to an ipod (vedere [[iPodVideoTransferring|Guide to Transferring Video to the iPod Video]] per maggiori dettagli) ee e richiesto mplayer per vedere l'anteprima del video in conversione. Caratteristiche di thinliquidfilm: * Processo Batch per qualsiasi numero di file; * Visualizzazione di informazioni dettagliate sul video sorgente; * Cambio delle impostazioni di produzione per uno o più file; * Salvataggio delle impostazioni predefinite per future sessioni; * Impostazioni della qualità del file prodotto; * Scelta tra mpeg4 e h264 quale codec per il video da produrre; * Scelta fra 320 e 640 quale ampiezza del video da produrre, mantenedo però la stessa proporzione altezza/larghezza; * Scelta tra 1 o 2 passaggi di codifica; * Anteprima del risultato prima della codifica; * Barra progresso che visualizza lo stato della codifica; * Utilizzo di ffmpeg quale motore di codifica; * Caricamento diretto dei file codificati sull'iPod; * Impostazione del file informativo per il caricamento sull'iPod; * Aggiunta di file ad una nuova o preesistente scaletta sull'iPod; * Aggiunta di video precodificati alla lista dei trasferimenti sull'iPod; * Aggiunta di file da codificare tramite l'incluso menu di servizio. |
BR Indice(depth=2 align=right)
Codifica video per iPod Video
Questa è una guida alla codifica in un formato video utilizzabile sugli iPod di 5° generazione, cioè gli iPod Video. Questo formato è compatibile anche con gli iPod di 6° generazione, gli iPhone, Apple TV e il riproduttore Quicktime per iTunes.I seguenti metodi sono stati testati con successo su varie versioni di Ubuntu. È richiesta l'aggiunta di nuovi archivi (per Ubuntu Feisty o più recenti) oppure la ricompilazione del ffmpeg di sistema per versioni antecedenti Feisty, si ricorda anche che le modifiche al sistema contenute in questa guida non sono ufficialmente supportate da Canonical.
Se sono necessarie ulteriori informazioni, consultare accuratamente la pagina iPod Video wiki page, così come Guide to Transferring Video to the iPod Video.
Siccome per la codifica dei video nel formato richiesto da iPod Video è necessaria la ricompilazione di ffmpeg, in modo che abbia la dovuta configurazione, in questa guida verrà spiegato come compilare, installare ed utilizzare ffmpeg correttamente.
Comunque è anche possibile scegliere uno strumento che faccia tutto ciò automaticamente.
Metodo mvPod (GUI su mencoder)
Questo nuovo metodo consente di convertire facilmente qualsiasi video in un formato iPod compatibile. Utilizzando la popolare applicazione mencoder per codificare e visualizzare tutte le informazioni, mvPod vuole essere un punto di riferimento per una facile codifica video.
Alcune caratteristiche di mvPod.
- Facile selezione del video da convertire e del file prodotto.
- Facile selezione dele opzioni di codifica con profili predefiniti.
- iPod H264
- iPod Xvid
- Selezione del flusso audio quando si codificano DVD o file video.
- Fornisce dettagliate informazioni sui video da convertire.
- Anteprima dei video.
- Gestisce video multipli (processo Batch).
- Cidifica diretta dei DVD video.
- Selezione della risoluzione del video (640x480, 320x240).
- Possibilità di cambiare il bitrate audio e video.
[http://mvpod.sourceforge.net/ Sito web ufficiale mvPod (http://mvpod.sourceforge.net/)]
Per l'esecuzione di questo programma è necessario installare le librerie [apt://gpac gpac]:
sudo aptitude install gpac
Metodo di Mark Pilgrim basato su mencoder
Questo script al contrario di altri, non usa ffmpeg, consentendo così di bypassare la problematica degli altri metodi che richiedono l'aggiunta di nuovi repository o addirittura la ricompilazione di ffmpeg. mencoder garantisce anche migliori risultati con formati proprietari quali WMV, Real Video, ed altri avantaggiandosi dell'uso di w32codecs. Come pypodconv, illustrato più avanti, consente di usare il codec video ad alta qualità H.264.
sudo aptitude install lsdvd mplayer gpac zenity mencoder sudo wget http://diveintomark.org/public/2007/06/podencoder.txt -O /usr/local/bin/podencoder sudo chmod +x /usr/local/bin/podencoder podencoder foo.mpg podencoder foo.avi podencoder foo.wmv podencoder podencoder --help
Compilazione di ffmpeg su Ubuntu
A partire dalla versione di Ubuntu 7.04 Feisty Fawn, ffmpeg nel repository Medibuntu contiene un ffmpeg "sbloccato". Abilitare il repository [http://wiki.ubuntu-it.org/Repository/NonUfficiali/Medibuntu Medibuntu] e saltare la seguente sezione.
Gli utenti di Edgy o Dapper, devono seguire queste istruzioni:
A causa di una litania di questioni legali, ffmpeg non viene fornito con tutti gli strumenti necessari alla codifica video per iPod Video. Ciò rende necessaria la compilazione da sorgente e l'installazione di altre librerie e programmi. Assicurarsi di avere abilitato i repository multiverse ed universe. Ci scusiamo se questa procedura necessaria può sembrare intimidatoria. Io, (johnDong) sto attualmente lavorando con Medibuntu per avere nel repository un pacchetto pronto all'uso da installare tramite APT.
Nel terminale, eseguire:
sudo apt-get build-dep ffmpeg sudo apt-get install ffmpeg sudo apt-get install liblame-dev libfaad2-dev libfaac-dev libxvidcore4-dev liba52-0.7.4 liba52-0.7.4-dev libx264-dev
Solamente per architetture a 64-bit (AMD64): È necessario forzare ffmpeg a linkare contro la versione PIC di ffmpeg. Lanciare il seguente comando:
sudo cp /usr/lib/libx264_pic.a /usr/lib/libx264.a
Per tutte le architetture: continuare con i seguente comandi:
apt-get source ffmpeg cd ffmpeg-*/ ./configure --enable-gpl --enable-pp --enable-pthreads \ --enable-libogg --enable-a52 --enable-dts \ --enable-dc1394 --enable-libgsm --disable-debug --enable-mp3lame \ --enable-faad --enable-faac --enable-xvid --enable-x264 make sudo make install Se si sta usando il sorgente di FFMPEG preleveto dai repository di Edgy, saltare il resto di questo blocco di istruzioni. Se si sta usando il sorgente di FFMPEG preleveto da un recente SVN (20070331), le opzioni di configurazione sono cambiate. Utilizzare queste linee in sostituzione delle precedenti e continuare con il comando make: ./configure --enable-gpl --enable-pp --enable-pthreads \ --enable-libogg --enable-liba52 --enable-libdts \ --enable-dc1394 --enable-libgsm --disable-debug --enable-libmp3lame \ --enable-libfaad --enable-libfaac --enable-xvid --enable-x264
L'installazione di ffmpeg prima del lancio di sudo make install consente una minor intrusività come checkinstall dato che sovrascriverà solamente i file posseduti da ffmpeg senza modificare il modo in cui la struttura del pacchetto è registrata in dpkg.
Solamente per architetture a 64-bit (AMD64): Ripristinare la modifica fatta in precedenza sul sistema:
sudo apt-get install --reinstall libx264-dev
Script 1: pypodconv
Questo nuovo script in python (03/2007) contiene tutte le funzionalità sottocitate. Per il suo corretto funzionamento sono richesti ffmpeg e [apt://gpac gpac]. Senza il pacchetto gpac la codifica fallirà esattamente al termine, vanificando così ore di lavoro. Di seguito viene proposta una "schermata":
jdong@severance:~/src/pypodconv$ pypodconv Usage: pypodconv [options] Options: -h, --help show this help message and exit -i INPUT, --input=INPUT Source file to encode --sd, --320, --standard-definition Encode to Standard Definition (that is, 320xNNN, native iPod screen resolution) [DEFAULT] --hd, --640, --high-definition Encode to High Definition (that is, 640xNNN, maximum iPod-supported resolution -c CODEC, --codec=CODEC Video Codec: h264 [DEFAULT], xvid, or mpeg4. -o OUTPUT, --output=OUTPUT Output file, with file extension. -b VBITRATE, --vbitrate=VBITRATE Video Bitrate, in kbit/s. (default: 200) -p PASSES, --passes=PASSES Number of passes. (Default: 2)
Per l'installazione, scaricare [http://web.mit.edu/~jdong/www/pypodconv/pypodconv pypodconv], salvarlo nella directory /tmp ed eseguire nel terminale:
sudo apt-get install gpac sudo mv /tmp/pypodconv /usr/local/bin/pypodconv sudo chmod +x /usr/local/bin/pypodconv
Per Gutsy e ffmpeg SVN, utilizzare [http://web.mit.edu/~jdong/www/pypodconv.ffmpegsvn/pypodconv questo pypodconv].
L'operazione basilare è::
pypodconv -i INPUT_FILE -o OUTPUT_FILE
Questo, in maniera predefinita, creerà un vodeo 200kbit/s 320xNNN 2-pass H.264, adatto alla visualizzazione su iPod. La stampata di help è utile per la configurazione di altri metodi dì utilizzo. Per esempio se si vuole una codifica ad alta definizione da 500Kbit/s:
pypodconv -i INPUT_FILE -o OUTPUT_FILE --hd -b 500
Script 2: ipodvidenc
Un'altro script per la conversione dei video in formato iPod Video. In un terminale digitare:
gedit
Si aprirà un nuovo documento nel quale copiare il seguente codice:
## ipodvidenc - The iPod Video Encoder for Linux. ## Created by Eric Hewitt, January 9, 2006. ## Released under the GPL. Go nuts. input_file=$1 echo "Inserire il nome del file codificato (senza estensione) " read output_file_name echo "$output_file_name sarà salvato in $PWD. Proseguire? [y/n]" read output_file_loc_permis if [ $output_file_loc_permis = 'n' ] || [ $output_file_loc_permis = 'N' ] then echo "Indicare dove salvare $output_file_name.mov:" read output_dir else output_dir=$PWD fi ffmpeg -i ${input_file} -f mp4 -vcodec mpeg4 -maxrate 1000k -b 700k -qmin 3 -qmax 5 -bufsize 4096k -g 300 -acodec aac -ab 192k -s 320x240 -aspect 4:3 ${output_dir}/${output_file_name}.mov
Salvarlo, ad esempio, nella cartella Home con il nome ipodvidenc, quindi nel terminale, eseguire:
chmod 755 ipodvidenc sudo mv ipodvidenc /usr/bin
Quindi per convertire il video in un formato valido per iPod Video, eseguire il comando:
ipodvidenc video.avi
Dopo alcune domande, inizierà la codifica e restituirà il file nel formato corretto.
Questo metodo funziona anche con file .vob grezzi, il che significa che non è necessaria la transcodifica dei DVD.
Un'alternativa con interfaccia grafica - thinliquidfilm
Se si preferisce usare una gui per la codifica video, è possibile usare thinliquidfilm. thinliquidfilm è una interfaccia grafica per ffmpeg, specificamente concepita per la codifica di video in formato compatibile con iPod Video compatibile. È possibile scaricarla [http://thinliquidfilm.org qui]. È richiesto ffmpeg compilato come precedentemente descritto e pyqt che viene installato come parte del pacchetto kubuntu-desktop. Vi sono altre dipendenze non essenzialiper il caricamento sull'iPodThere are other non-essential dependencies for uploading to an ipod (vedere Guide to Transferring Video to the iPod Video per maggiori dettagli) ee e richiesto mplayer per vedere l'anteprima del video in conversione.
Caratteristiche di thinliquidfilm:
- Processo Batch per qualsiasi numero di file;
- Visualizzazione di informazioni dettagliate sul video sorgente;
- Cambio delle impostazioni di produzione per uno o più file;
- Salvataggio delle impostazioni predefinite per future sessioni;
- Impostazioni della qualità del file prodotto;
- Scelta tra mpeg4 e h264 quale codec per il video da produrre;
- Scelta fra 320 e 640 quale ampiezza del video da produrre, mantenedo però la stessa proporzione altezza/larghezza;
- Scelta tra 1 o 2 passaggi di codifica;
- Anteprima del risultato prima della codifica;
- Barra progresso che visualizza lo stato della codifica;
- Utilizzo di ffmpeg quale motore di codifica;
- Caricamento diretto dei file codificati sull'iPod;
- Impostazione del file informativo per il caricamento sull'iPod;
- Aggiunta di file ad una nuova o preesistente scaletta sull'iPod;
- Aggiunta di video precodificati alla lista dei trasferimenti sull'iPod;
- Aggiunta di file da codificare tramite l'incluso menu di servizio.
Installation is very simple with the included installation script. The website has comprehensive documentation on installing and using thinliquidfilm, and therefore there is no point in repeating it here.
Using ffmpeg
If you would like to have more control than ipodvidenc or thinliquid film gives, and just use an ffmpeg command, and perhaps set it as an alias, the command is as follows:
ffmpeg -i input_file.avi -f mp4 -vcodec mpeg4 -maxrate 1000k -b 700k -qmin 3 -qmax 5 -bufsize 4096 -g 300 -acodec libfaac -ab 192k -s 320x240 -aspect 4:3 output_file.mov
This encodes a 700kbit MPEG-4 ASP (i.e. "xvid") format video using ffmpeg's mpeg4 encoder. Alternatively, you may use the xvid codec, which squeezes a bit more quality for the same bitrate than the above command, though it is slightly slower. Simply replace "mpeg4" with "xvid". Since Firmware 1.2 and higher, you can bump -maxrate and/or -b to 2500, and resolution (-s) to 640x480. Note that you will need to bump up the bitrate to at least 1000kbit if you want a good-looking 640x480 mpeg4-ASP video.
H.264 Encoding
H.264 (MPEG-4 AVC) is a newer codec that the iPod supports. It's able to deliver similar quality at half the bitrate of MPEG-4 ASP! However, it is an extremely slow and CPU-intensive encoder. Expect the encode to take 5x longer than mpeg4 or xvid. You also need ffmpeg compiled with x264 support. As of 20-Dec-2006 this guide has been updated to reflect that, but if you rebuilt your ffmpeg before then, you need to follow the "fixing ffmpeg" procedure again for x264 support.
Due to this enormous speed tradeoff, it's most practical to use H.264 for encoding high-resolution 640x480 video suitable for outputting to a TV (or also for viewing on your computer). Here's the ffmpeg command for doing a 500kbit 640x480 H.264 encode:
ffmpeg -y -i input_file.avi -an -v 1 -threads auto -vcodec h264 -b 500 -bt 175 -refs 1 -loop 1 -deblockalpha 0 -deblockbeta 0 -parti4x4 1 -partp8x8 1 -me full -subq 1 -me_range 21 -chroma 1 -slice 2 -max_b_frames 0 -level 30 -g 300 -keyint_min 30 -sc_threshold 40 -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.7 -qmax 51 -max_qdiff 4 -i_quant_factor 0.71428572 -rc_max_rate 768 -rc_buffer_size 244 -cmp 1 -s 640x480 -f mp4 -pass 1 /dev/null ffmpeg -y -i input_file.avi -v 1 -threads auto -vcodec h264 -b 500 -bt 175 -refs 1 -loop 1 -deblockalpha 0 -deblockbeta 0 -parti4x4 1 -partp8x8 1 -me full -subq 6 -me_range 21 -chroma 1 -slice 2 -max_b_frames 0 -level 30 -g 300 -keyint_min 30 -sc_threshold 40 -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.7 -qmax 51 -max_qdiff 4 -i_quant_factor 0.71428572 -rc_max_rate 768 -rc_buffer_size 244 -cmp 1 -s 640x480 -acodec aac -ab 96 -ar 48000 -ac 2 -f mp4 -pass 2 output_file.mp4
Due to the iPod's limited feature support for H.264, the command for doing the encode is that much more complex. You can also adjust the bitrate controls (-b is average bitrate, -rc_max_rate is the max instantaneous bitrate spike allowed). The iPod supports up to 1500kbit. Note that this is a 2-pass encode. Doing two passes allows for more accurate bitrate control and substantially better quality, but the encode will take twice as long as a one-pass. The resulting mp4 looks great on the iPod, on the TV, and even on a 1280x800 laptop screen.
You can also use H.264 to do 320x240 encodes if you are not interested in the ability to output the mp4 on your TV or your computer. Simply replace 640x480 with 320x240. You can also reduce the average bitrate (-b) to 175, and it still looks flawless. Quality is still "bearable" even down to around 130kbit. Try doing that with xvid!
Note that as of December 2006, the SVN version of ffmpeg has renamed several options and some options now use bits/s instead of kilobits. The following command is the same as above except modified to work with the new SVN version:
ffmpeg -y -i input_file.avi -an -v 1 -threads auto -vcodec libx264 -b 500k -bt 175k -refs 1 -loop 1 -deblockalpha 0 -deblockbeta 0 -parti4x4 1 -partp8x8 1 -me full -subq 1 -me_range 21 -chroma 1 -slice 2 -bf 0 -level 30 -g 300 -keyint_min 30 -sc_threshold 40 -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.7 -qmax 51 -qdiff 4 -i_qfactor 0.71428572 -maxrate 768k -bufsize 2M -cmp 1 -s 640x480 -f mp4 -pass 1 /dev/null ffmpeg -y -i input_file.avi -v 1 -threads auto -vcodec libx264 -b 500k -bt 175k -refs 1 -loop 1 -deblockalpha 0 -deblockbeta 0 -parti4x4 1 -partp8x8 1 -me full -subq 6 -me_range 21 -chroma 1 -slice 2 -bf 0 -level 30 -g 300 -keyint_min 30 -sc_threshold 40 -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.7 -qmax 51 -qdiff 4 -i_qfactor 0.71428572 -maxrate 768k -bufsize 2M -cmp 1 -s 640x480 -acodec libfaac -ab 96 -ar 48000 -ac 2 -f mp4 -pass 2 output_file.mp4
Another note. As of October, 2007 (or before), the syntax has changed slightly. The names of the codecs are now more generic (h264 vs. libx264, aac vs. libfaac):
ffmpeg -y -i input_file.avi -an -v 1 -threads auto -vcodec h264 -b 500k -bt 175k -refs 1 -loop 1 -deblockalpha 0 -deblockbeta 0 -parti4x4 1 -partp8x8 1 -me full -subq 1 -me_range 21 -chroma 1 -slice 2 -bf 0 -level 30 -g 300 -keyint_min 30 -sc_threshold 40 -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.7 -qmax 51 -qdiff 4 -i_qfactor 0.71428572 -maxrate 768k -bufsize 2M -cmp 1 -s 640x480 -f mp4 -pass 1 /dev/null ffmpeg -y -i input_file.avi -v 1 -threads auto -vcodec h264 -b 500k -bt 175k -refs 1 -loop 1 -deblockalpha 0 -deblockbeta 0 -parti4x4 1 -partp8x8 1 -me full -subq 6 -me_range 21 -chroma 1 -slice 2 -bf 0 -level 30 -g 300 -keyint_min 30 -sc_threshold 40 -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.7 -qmax 51 -qdiff 4 -i_qfactor 0.71428572 -maxrate 768k -bufsize 2M -cmp 1 -s 640x480 -acodec aac -ab 96 -ar 48000 -ac 2 -f mp4 -pass 2 output_file.mp4
Encoding from a DVD source
As mentioned, ffmpeg is able to take .VOB files from the video_ts directory of a dvd as a source. However, VOBs are usually split arbitrarily into 1GB pieces, sometimes even two titles are mixed together in one VOB, making it very inconvenient to use this method of encoding.
However, our good friend mplayer will come to the rescue. By instructing mplayer to play a particular title, you can dump the complete vob for that title directly to the hard disk. You will need mplayer installed (also from Multiverse)
mplayer dvd://1 -dumpstream -dumpfile dump.vob
This will output the first title of your DVD to dump.vob, which you can then give to ffmpeg as the input. Note that mplayer doesn't generate any progress indication and will appear to 'hang' during this process. Please be patient! If you are familiar with mplayer, you can fine-tune that command to dump a particular chapter, range of chapters, or many other modifications, too.
An alternate method is to do an ordinary DVD rip to an AVI or other format using your favorite DVD ripping tool, then feed that output to ffmpeg. The benefit to this approach is that there are many nice DVD-ripping GUI's to choose title/chapters, audio streams, cropping, and so on. The downsides are that you will suffer a slightly degraded quality and you have to wait for the dvd to rip to AVI format before being able to use ffmpeg to convert it to MP4.
Widescreen Resolutions
Your iPod supports a maximum of 640x480 or 320x240, but anything in that's below those specs would work. For widescreen, just adjust that ratio so that the width <= 640 and height <= 480. It's advisable to keep both dimensions a multiple of 16, else the encoder will not compress as efficiently.
Black Screen or iPod Resets When Trying to Play Video
The mp4's that ffmpeg generates are slightly nonstandard. Firmware 1.1 iPods had severe issues playing them back, typically marked by audio suddenly disappearing 15 seconds into the video. Firmware 1.2 fixes these issues, so for the large part ffmpeg's mp4's work perfectly on the iPod. However, on short clips encoded in h.264, the iPod still may show a black screen, freeze, or reset when trying to play it.
The pypodconv script already performs this workaround listed below. If you are using the pypodconv script, you should not encounter this issue
The solution is to use MP4Box to repack the mp4. You will need gpac installed from Multiverse:
MP4Box -add original.mp4 fixed.mp4
This repacks original.mp4 into fixed.mp4. After this is done, you may remove original.mp4. You may have seen some guides suggesting to -add original directly to original, and that'll pack it "in place". This is WRONG. It will just give you a double-sized mp4 file that still won't play on the iPod!
Since for larger video files, the repacking procedure could be quite time consuming, it's a good practice not to do it except for the rare portion of files that fail without repacking.
iTunes complains about these files, but GtkPod transfers them and the iPod plays fine
2007-11-20: There is now a fix for this issue. Upgrade to the latest gpac in Hardy (0.4.4) or soon to be in Gutsy Backports, then download the newest pypodconv.ffmpegsvn branch linked in the instructions. This allows MP4Box to output the iPod MP4 header.
This phenomenon mostly happens with the 640x480 H.264 encodes. iTunes expects to find a QuickTime-specific MP4 header and rejects the results from any other encoder. However, when the MP4's are transferred onto the iPod with another program (i.e. GtkPod), the iPod plays them back without a hitch.
This is a known issue, and there's been some patches and discussion over at the ffmpeg mailing list. If you're interested in learning more about this, see: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-September/045391.html
MythTV Recordings
You can export your MythTV recordings to h.264 or mpeg4 compatable video files using MythExport.