~scriptsmakeslideshowvideo
7 itemsDownload ./*

..
gentimestamps.html
makeslideshowvideo.sh
makeslideshowvideo_secondhalf.sh
mapslideshowdata.json
mapslideshowtest.sh
mapslideshowvideo8animations.txt
parsemapslideshowdata.html


makeslideshowvideomapslideshowtest.sh
2 KB• 2•  18 hours ago•  DownloadRawClose
18 hours ago•  2

{}
#!/bin/bash

JSONMAP=mapslideshowdata.json

#!/bin/bash

# Extract keys and sort them by their trailing numeric value
chunks=$(jq -r 'keys[]' $JSONMAP | sort -V)

for chunk in $chunks; do
    echo "=== Processing $chunk ==="

    # Safely evaluate and import the zoom and fade keys as true Bash arrays
    eval "$(jq -r --arg c "$chunk" '.[$c] | "zoom=(\(.zoom | map(@sh) | join(" ")))" , "fade=(\(.fade | map(@sh) | join(" ")))"' $JSONMAP)"

    # Print out the results to verify they are real arrays
    echo "Zoom array length: ${#zoom[@]}"
    echo "First zoom element: ${zoom[0]}"
    echo "All fade elements: ${fade[*]}"
    echo ""
done

CHUNK_SIZE=10
CHUNK_NAME=""
LAST_CHUNK_NAME=""
MAX_CHUNK_IDX=117
CHUNK_POS=0
for((count=0;count<1256;count++));do
    CHUNK_IDX=$(( $count/$CHUNK_SIZE ))
    CHUNK_NAME="chunk$CHUNK_IDX"

    echo "image $count : $CHUNK_NAME pos $CHUNK_POS"

    if [ "$LAST_CHUNK_NAME" != "$CHUNK_NAME" ]; then
        LAST_CHUNK_NAME=$CHUNK_NAME
        CHUNK_POS=0
    fi

    if [ $CHUNK_IDX -le $MAX_CHUNK_IDX ]; then
        if [ "$LAST_CHUNK_NAME" != "$CHUNK_NAME" ]; then
            eval "$(jq -r --arg c "$CHUNK_NAME" '.[$c] | "zoom=(\(.zoom | map(@sh) | join(" ")))" , "fade=(\(.fade | map(@sh) | join(" ")))"' $JSONMAP)"
        fi
        echo ""
        echo -n "zoom element:"
        for((i=0;i<${#zoom[@]};i++)); do
            if [ $i -eq $CHUNK_POS ]; then
                echo -n " ["${zoom[$i]}"]"
            else
                echo -n " "${zoom[$i]}
            fi
        done
        echo ""
        echo -n "fade element:"
        for((i=0;i<${#fade[@]};i++)); do
            if [ $i -eq $CHUNK_POS ]; then
                echo -n " ["${fade[$i]}"]"
            else
                echo -n " "${fade[$i]}
            fi
        done
        echo ""
    else
        echo "No eval, run random instead"
    fi
    CHUNK_POS=$(( CHUNK_POS+1 ))
done

Top
©twily.info 2013 - 2026
twily at twily dot info



2 817 113 visits
... ^ v