[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Multimedia containers remuxen



Op 09-10-12 17:42, Frans van Berckel schreef:

> Ik probeer op mijn Sony internet TV, video files af te spelen. Maar ik begrijp dat de TV het DivX HD Plus formaat in een matroska .mkv container niet ondersteund. Ik las dat mijn TV de volgende formaten kan afspelen. Als ik een en ander wil remuxen, voor welk container type kan ik dan het beste kiezen. En welke Debian (command-line) remuxer kies jij voor zo'n re-encoding klusje? Weet je misschien ook welke parameters er nodig zijn? Altijd tricky als je zoiets voor het eerst doet. 
> 
> MPEG-1 .mpg
> MPEG-2 (PS, TS) .mpg, .m2t
> MPEG-2, AVCHD .m2ts, .mts
> MPEG-4 (Part 2, 10), MP4 .mp4
> DivX SD (Home Theater 3.0) .divx, .avi
> Xvid .avi
> WMV, Asf .asf, .wmv
> 
> Met vriendelijke groet,
> 
> 
> Frans van Berckel
> 
> mkvinfo van de film:
> 
> |+ Segment tracks
> | + A track
> |  + Track number: 1
> |  + Track UID: 947532434
> |  + Track type: video
> |  + Enabled: 1
> |  + Default flag: 1
> |  + Forced flag: 0
> |  + Lacing flag: 0
> |  + MinCache: 1
> |  + Timecode scale: 1
> |  + Max BlockAddition ID: 0
> |  + Codec ID: V_MPEG4/ISO/AVC
> |  + Codec decode all: 1
> |  + CodecPrivate, length 39 (h.264 profile: High @L4.1)
> |  + Default duration: 41.708ms (23.976 fps for a video track)
> |  + Language: und
> |  + Video track
> |   + Pixel width: 1280
> |   + Pixel height: 528
> |   + Interlaced: 0
> |   + Display width: 1280
> |   + Display height: 528
> | + A track
> |  + Track number: 2
> |  + Track UID: 10238606
> |  + Track type: audio
> |  + Enabled: 1
> |  + Default flag: 1
> |  + Forced flag: 0
> |  + Lacing flag: 1
> |  + MinCache: 0
> |  + Timecode scale: 1
> |  + Max BlockAddition ID: 0
> |  + Codec ID: A_DTS
> |  + Codec decode all: 1
> |  + Language: und
> |  + Audio track
> |   + Sampling frequency: 48000
> |   + Channels: 6
> | + A track
> |  + Track number: 3
> |  + Track UID: 867880594
> |  + Track type: subtitles
> |  + Enabled: 1
> |  + Default flag: 1
> |  + Forced flag: 0
> |  + Lacing flag: 0
> |  + MinCache: 0
> |  + Timecode scale: 1
> |  + Max BlockAddition ID: 0
> |  + Codec ID: S_TEXT/UTF8
> |  + Codec decode all: 1
> |  + Language: eng
> 
> 

Ik gebruik de volgende scripts om .avi files in batches te remuxen naar
avc/mp4 met avidemux cli. Zou met enige aanpassingen geschikt moeten
zijn om .mkv files om te zetten (verander avi in mkv). Zet de files in
$INDIR en run het script vanuit ../$INDIR:

0avidemux.sh:

### BEGIN SCRIPT ###

#!/bin/bash

[ -d "avi" ] || mkdir -p avi
[ -d "avc" ] || mkdir -p avc
[ -d "done" ] || mkdir -p avc

INDIR="./avi"
OUTDIR="./avc"
DONEDIR="./done"

find "${INDIR}" -regex ".*.avi" ! -type d | sort -d | while read FILE ; do

    BASENAME="$(basename ${FILE} .avi)"

    avidemux2_cli --load "${INDIR}/${BASENAME}.avi" --run 0avidemux.js
--save "${OUTDIR}/${BASENAME}.mp4" --quit

    mv "${INDIR}/${BASENAME}.avi" "${DONEDIR}/${BASENAME}.avi"

done

echo -e "\nDone..."

read

exit

### EIND SCRIPT ###

0avidemux.js:

### BEGIN SCRIPT ###

//AD  <- Needed to identify//

var app = new Avidemux();

//** Postproc **
app.video.setPostProc(3,3,0);

app.video.fps1000 = 25000;

//** Filters **
//app.video.addFilter("crop","left=0","right=0","top=30","bottom=32");

//** Video Codec conf **
app.video.codecPlugin("32BCB447-21C9-4210-AE9A-4FCE6C8588AE", "x264",
"AQ=20", "<?xml
version='1.0'?><x264Config><presetConfiguration><name>&lt;default&gt;</name><type>default</type></presetConfiguration><x264Options><fastFirstPass>true</fastFirstPass><threads>0</threads><deterministic>true</deterministic><sliceThreading>false</sliceThreading><threadedLookahead>-1</threadedLookahead><idcLevel>-1</idcLevel><vui><sarAsInput>false</sarAsInput><sarHeight>1</sarHeight><sarWidth>1</sarWidth><overscan>undefined</overscan><videoFormat>undefined</videoFormat><fullRangeSamples>true</fullRangeSamples><colorPrimaries>undefined</colorPrimaries><transfer>undefined</transfer><colorMatrix>undefined</colorMatrix><chromaSampleLocation>0</chromaSampleLocation></vui><referenceFrames>16</referenceFrames><gopMaximumSize>250</gopMaximumSize><gopMinimumSize>0</gopMinimumSize><scenecutThreshold>40</scenecutThreshold><periodicIntraRefresh>false</periodicIntraRefresh><bFrames>4</bFrames><adaptiveBframeDecision>1</adaptiveBframeDecision><bFrameBias>0</bFrameBias><bFrameReferences>strict<
 /bFrameR
 e
ferences><loopFilter>true</loopFilter><loopFilterAlphaC0>-3</loopFilterAlphaC0><loopFilterBeta>-2</loopFilterBeta><cabac>true</cabac><openGop>disabled</openGop><interlaced>disabled</interlaced><constrainedIntraPrediction>false</constrainedIntraPrediction><cqmPreset>flat</cqmPreset><intra4x4Luma><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value></intra4x4Luma><intraChroma><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value></intraChroma><inter4x4Luma><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16
 </value>
 <
value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value></inter4x4Luma><interChroma><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value></interChroma><intra8x8Luma><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value>
 <value>1
 6
</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value></intra8x8Luma><inter8x8Luma><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><
 value>16
 <
/value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value><value>16</value></inter8x8Luma><analyse><partitionI4x4>true</partitionI4x4><partitionI8x8>true</partitionI8x8><partitionP8x8>true</partitionP8x8><partitionP4x4>false</partitionP4x4><partitionB8x8>true</partitionB8x8><dct8x8>true</dct8x8><weightedPredictionPframes>smart</weightedPredictionPframes><weig
 htedPred
 i
ction>true</weightedPrediction><directPredictionMode>auto</directPredictionMode><chromaLumaQuantiserDifference>0</chromaLumaQuantiserDifference><motionEstimationMethod>multi-hexagonal</motionEstimationMethod><motionVectorSearchRange>32</motionVectorSearchRange><motionVectorLength>-1</motionVectorLength><motionVectorThreadBuffer>-1</motionVectorThreadBuffer><subpixelRefinement>9</subpixelRefinement><chromaMotionEstimation>true</chromaMotionEstimation><mixedReferences>true</mixedReferences><trellis>allModeDecisions</trellis><fastPSkip>true</fastPSkip><dctDecimate>true</dctDecimate><psychoRdo>1</psychoRdo><psychoTrellis>0</psychoTrellis><noiseReduction>0</noiseReduction><interLumaDeadzone>21</interLumaDeadzone><intraLumaDeadzone>11</intraLumaDeadzone></analyse><rateControl><quantiserMinimum>10</quantiserMinimum><quantiserMaximum>51</quantiserMaximum><quantiserStep>4</quantiserStep><maximumConstantRateFactor>0</maximumConstantRateFactor><averageBitrateTolerance>1</averageBitrateT
 olerance
 >
<vbvMaximumBitrate>0</vbvMaximumBitrate><vbvBufferSize>0</vbvBufferSize><vbvInitialOccupancy>0.9</vbvInitialOccupancy><ipFrameQuantiser>1.4</ipFrameQuantiser><pbFrameQuantiser>1.3</pbFrameQuantiser><adaptiveQuantiserMode>variance</adaptiveQuantiserMode><adaptiveQuantiserStrength>1</adaptiveQuantiserStrength><mbTree>true</mbTree><frametypeLookahead>40</frametypeLookahead><quantiserCurveCompression>0.6</quantiserCurveCompression><reduceFluxBeforeCurveCompression>20</reduceFluxBeforeCurveCompression><reduceFluxAfterCurveCompression>0.5</reduceFluxAfterCurveCompression></rateControl><accessUnitDelimiters>false</accessUnitDelimiters><spsIdentifier>0</spsIdentifier><sliceMaxSize>0</sliceMaxSize><sliceMaxMacroblocks>0</sliceMaxMacroblocks><sliceCount>0</sliceCount><hrd>none</hrd></x264Options></x264Config>");

//** Audio **
app.audio.reset();
app.audio.codec("Faac",192,4,"c0 00 00 00 ");
app.audio.normalizeMode=1;
app.audio.normalizeValue=0;
app.audio.delay=0;
app.audio.mixer="STEREO";
app.setContainer("MP4");
setSuccess(1);
//app.Exit();

//End of script

### EIND SCRIPT ###

De 0avidemux.js kun je genereren met de avidemux gtk client.


Reply to: