Ticket #26454: patch-src-idvid.diff

File patch-src-idvid.diff, 4.6 KB (added by danielb@…, 14 years ago)
  • ./src/idvid

    old new  
    203203    # (ID_V(ideo), ID_A(udio), and ID_L(ength))
    204204    # Grep out special characters ()[
    205205    # # put the VARS in a file
    206     grep "^ID_[VAL]" < "$SCRATCH_FILE"   | grep -v "[()\[]" | sed 's/$/"/;s/=/="/' > "$SCRATCH_FILE".vars
     206    grep "^ID_[VAL]" < "$SCRATCH_FILE"   | grep -v "[()\[]" | gsed 's/$/"/;s/=/="/' > "$SCRATCH_FILE".vars
    207207    # source the file to set the variables
    208208    . "$SCRATCH_FILE".vars
    209209    # (If you've got a problem with eval, give me an alternative that
     
    237237    # Find out which channel is the video channel ( 1st )
    238238    # TODO Do we want to worry about videos with multiple channels of video ?
    239239    VIDEO_INFO=$(grep "Video:" "$SCRATCH_FILE")
    240     ID_VIDEO_TRACKS=( $(sed -r 's/.*Stream #([0-9]\.[0-9]+).*/\1/' <<< "$VIDEO_INFO") )
     240    ID_VIDEO_TRACKS=( $(gsed -r 's/.*Stream #([0-9]\.[0-9]+).*/\1/' <<< "$VIDEO_INFO") )
    241241    ID_VIDEO_TRACK="${ID_VIDEO_TRACKS[0]}"
    242242    # Find out what audio channels are available
    243243    if test -n "$ID_AUDIO_ID"; then
    244244        AUDIO_INFO=$(grep "Audio:" "$SCRATCH_FILE")
    245245        # ID_AUDIO_ID needs "TRACKS" var to remain in columns
    246         TRACKS=$(sed -r 's/.*Stream #([0-9]\.[0-9]+).*/\1/' <<< "$AUDIO_INFO")
     246        TRACKS=$(gsed -r 's/.*Stream #([0-9]\.[0-9]+).*/\1/' <<< "$AUDIO_INFO")
    247247        A_TRACKS=(${TRACKS//$'\n'/ })
    248248        # Get hexadecimal track IDs, if present
    249249        if grep -q "\[0x[0-9a-fA-F]*]" <<< $AUDIO_INFO; then
    250             HEX_TRACKS=$(sed -r 's/Stream .*\[0x([0-9a-fA-F]*)]:.*$/\1/' <<< "$AUDIO_INFO")
     250            HEX_TRACKS=$(gsed -r 's/Stream .*\[0x([0-9a-fA-F]*)]:.*$/\1/' <<< "$AUDIO_INFO")
    251251            HEX_TRACKS=(${HEX_TRACKS//$'\n'/ })
    252252            USE_HEX_TRACKS=:
    253253        else
     
    257257        for ((i=0; i<${#A_TRACKS[@]}; i++)); do
    258258            CUR_CHAN=$(grep "Stream #${A_TRACKS[i]}" <<< "$AUDIO_INFO")
    259259            A_SAMPRATES=("${A_SAMPRATES[@]}" "$(echo $CUR_CHAN | \
    260                 sed -r 's/.* ([0-9]+) Hz.*/\1/')")
     260                gsed -r 's/.* ([0-9]+) Hz.*/\1/')")
    261261            A_BITRATES=("${A_BITRATES[@]}" "$(echo $CUR_CHAN | \
    262                 sed -r 's/.* ([0-9]+) kb\/s.*/\1/')")
     262                gsed -r 's/.* ([0-9]+) kb\/s.*/\1/')")
    263263            # make sure the above is a number, else set  A_BITRATE to 0
    264264            if ! test_is_number ${A_BITRATES[i]}; then
    265265                A_BITRATES[i]=0
    266266            fi
    267267            A_CODECS=("${A_CODECS[@]}" "$(echo $CUR_CHAN | \
    268                 sed -r 's/.*Audio: ([^,]+),.*/\1/')")
     268                gsed -r 's/.*Audio: ([^,]+),.*/\1/')")
    269269                if $USE_HEX_TRACKS; then
    270270                MP_TRACKNUM=$((16#${HEX_TRACKS[i]}))
    271271            else
     
    296296                if grep -q 5:1 <<<  ${AUDIO_NCH[chn]}; then
    297297                    ID_AUDIO_NCH[chn]=6
    298298               elif grep -q channels <<< ${AUDIO_NCH[chn]}; then
    299                     ID_AUDIO_NCH[chn]=$(sed -r 's/.* ([0-9]+) channels.*/\1/' \
     299                    ID_AUDIO_NCH[chn]=$(gsed -r 's/.* ([0-9]+) channels.*/\1/' \
    300300                    <<< ${AUDIO_NCH[chn]})
    301301                else
    302302                    ID_AUDIO_NCH[chn]=2
     
    336336    else
    337337        # Infer aspect ratio from width/height of mplayer playback
    338338        MPLAYER_RES=$(grep '^VO:' "$SCRATCH_FILE" | \
    339             sed -e "s/..*=> *//g" -e "s/ .*$//g")
     339            gsed -e "s/..*=> *//g" -e "s/ .*$//g")
    340340        #PLAY_WIDTH=$(echo $MPLAYER_RES | awk -F 'x' '{print $1}')
    341341        #PLAY_HEIGHT=$(echo $MPLAYER_RES | awk -F 'x' '{print $2}')
    342342        # patch from ML:
     
    351351    fi
    352352    # Normalized aspect ratio
    353353    V_ASPECT_RATIO=$(echo $V_ASPECT_WIDTH | \
    354     sed -r -e 's/([0-9]*)([0-9][0-9])/\1.\2:1/g')
     354    gsed -r -e 's/([0-9]*)([0-9][0-9])/\1.\2:1/g')
    355355
    356356    NAV_LOG="${INFILE}.nav_log"
    357357    USE_NAVLOG=false
     
    414414    fi
    415415
    416416    # Use mplayer-reported length as a last resort (truncate floating-point)
    417     test -z $V_DURATION && V_DURATION=$(echo $ID_LENGTH | sed 's/\.[0-9]*//')
     417    test -z $V_DURATION && V_DURATION=$(echo $ID_LENGTH | gsed 's/\.[0-9]*//')
    418418
    419419    # TODO: WARN if video is less than one second!
    420420
     
    486486        echo "V_ASPECT_WIDTH=$V_ASPECT_WIDTH"
    487487        echo "ID_VIDEO_FRAMES=$ID_VIDEO_FRAMES"
    488488    elif $TABULAR; then
    489         FILE_SIZE=$(du -Dh "$INFILE" | awk '{print $1}')
     489        FILE_SIZE=$(gdu -Dh "$INFILE" | awk '{print $1}')
    490490        echo "$INFILE||$FILE_SIZE||${ID_VIDEO_WIDTH}x${ID_VIDEO_HEIGHT}||$ID_VIDEO_FPS||$ID_VIDEO_BITRATE||$ID_AUDIO_BITRATE" >> "$TABLE"
    491491    else
    492492        echo $SEPARATOR